:root{--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--ribbon-height:68px;--keyboard-height:0px}
body{min-height:100dvh;overscroll-behavior-y:none}.shell.app-shell{min-height:100dvh;padding-top:max(16px,var(--safe-top));padding-right:max(16px,var(--safe-right));padding-bottom:calc(var(--ribbon-height) + max(16px,var(--safe-bottom)));padding-left:max(16px,var(--safe-left))}.app-sidebar{top:max(16px,var(--safe-top));height:calc(100dvh - max(32px,var(--safe-top) + var(--safe-bottom) + 16px))}.app-main{padding-bottom:20px}.workspace{scroll-margin-top:20px}.bottom-ribbon{position:fixed;z-index:35;left:calc(280px + max(16px,var(--safe-left)));right:max(16px,var(--safe-right));bottom:max(12px,var(--safe-bottom));height:58px;display:grid;grid-template-columns:repeat(5,minmax(64px,1fr));align-items:center;padding:5px 8px;border:1px solid rgba(255,255,255,.64);border-radius:18px;background:rgba(243,246,250,.82);box-shadow:0 18px 48px rgba(18,34,55,.18),inset 0 1px 0 white;backdrop-filter:blur(24px) saturate(1.25);transition:transform .2s ease,opacity .2s ease}.bottom-ribbon a,.bottom-ribbon button,.bottom-ribbon label{height:46px;min-width:0;display:flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:12px;background:transparent;color:#697689;font:650 11px/1 -apple-system,BlinkMacSystemFont,"SF Pro Text",sans-serif;text-decoration:none;cursor:pointer}.bottom-ribbon a:hover,.bottom-ribbon button:hover,.bottom-ribbon label:hover{background:rgba(32,57,87,.07);color:#182a43}.bottom-ribbon .active{color:#182a43;background:rgba(32,57,87,.08)}.bottom-ribbon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.bottom-ribbon a:first-child svg{fill:currentColor;stroke:none}.ribbon-main{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#172a43;color:white;box-shadow:0 7px 14px rgba(19,41,67,.22)}.bottom-ribbon .ribbon-main+span{display:none}.install-side{margin-top:7px!important;background:transparent!important;color:#354b65!important;border:1px solid rgba(35,59,88,.13)!important;box-shadow:none!important}.install-side.ready{border-color:#547a67!important;color:#345e4d!important}.bottom-ribbon .installed{color:#3f6f5b}.install-dialog{text-align:center}.install-dialog>img{width:76px;height:76px;border-radius:18px;box-shadow:0 12px 27px rgba(17,28,47,.22);margin:2px auto 18px}.install-dialog .notice{text-align:left}.install-dialog .primary-button{margin-top:20px}.keyboard-open .bottom-ribbon{transform:translateY(calc(100% + var(--safe-bottom) + 20px));opacity:0;pointer-events:none}.keyboard-open .selection-bar{bottom:12px}input,select,textarea,button{scroll-margin-block:calc(var(--safe-top) + 16px) calc(var(--safe-bottom) + 82px)}dialog{max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 24px);overflow:auto;margin-top:max(12px,var(--safe-top));margin-bottom:max(12px,var(--safe-bottom))}.selection-bar{bottom:calc(var(--ribbon-height) + max(18px,var(--safe-bottom)))}
@media(max-width:820px){:root{--ribbon-height:76px}.shell.app-shell{padding-top:max(10px,var(--safe-top));padding-right:max(10px,var(--safe-right));padding-left:max(10px,var(--safe-left));padding-bottom:calc(var(--ribbon-height) + max(10px,var(--safe-bottom)))}.app-sidebar{position:sticky;z-index:32;top:max(8px,var(--safe-top));height:auto;margin-top:0}.bottom-ribbon{left:max(10px,var(--safe-left));right:max(10px,var(--safe-right));bottom:max(8px,var(--safe-bottom));height:64px;border-radius:19px;padding:5px}.bottom-ribbon a,.bottom-ribbon button,.bottom-ribbon label{height:52px;flex-direction:column;gap:4px;font-size:9px}.bottom-ribbon svg{width:19px;height:19px}.bottom-ribbon .ribbon-main{width:38px;height:38px;border-radius:13px;margin-top:-18px;border:4px solid #eef2f6}.bottom-ribbon .ribbon-main+span{display:inline}.selection-bar{bottom:calc(var(--ribbon-height) + max(14px,var(--safe-bottom)));max-width:calc(100vw - var(--safe-left) - var(--safe-right) - 20px)}}
@media(max-width:420px){.bottom-ribbon{grid-template-columns:repeat(5,1fr)}.bottom-ribbon a,.bottom-ribbon button,.bottom-ribbon label{min-width:0}.bottom-ribbon span{max-width:56px;overflow:hidden;text-overflow:ellipsis}.app-topbar{padding-top:max(12px,var(--safe-top))}.summary-row{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-row article{min-width:0}.summary-row article:nth-child(3){grid-column:1/-1}.action-buttons>*{min-width:0}.filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.filters .search{grid-column:1/-1;width:100%}.filters select,.filters .outline-button{width:100%;min-width:0}.workspace-heading h2{font-size:22px}.empty-state{padding:46px 14px}}
@media(display-mode:standalone){body{user-select:none;-webkit-user-select:none}.media-name,.search input,.top-search input,dialog{user-select:text;-webkit-user-select:text}.install-side,#installPwa{display:none}.shell.app-shell{padding-top:max(12px,var(--safe-top))}}
@media(orientation:landscape) and (max-height:520px){.app-sidebar{overflow:auto}.device-card,.side-privacy{display:none}.app-topbar{height:58px}.action-strip{padding-block:10px}.summary-row{display:none}.workspace{min-height:calc(100dvh - 160px)}}
