:root{--color-accent:#4da6ff;--color-accent-hover:#6ab8ff;--color-accent-dark:#06c;--color-accent-darker:#0052a3;--color-bg:#0d0d12;--color-surface:#ffffff0f;--color-surface-alt:#ffffff0a;--color-surface-hover:#ffffff1f;--color-surface-active:#ffffff26;--color-surface-border:#ffffff1a;--color-surface-border-subtle:#ffffff14;--color-text:#e8eaf0;--color-text-secondary:#bbb;--color-text-muted:#999;--color-text-dim:#888;--color-text-faint:#666;--color-success:#22c55e;--color-success-soft:#6dc96d;--color-error:#ef4444;--color-error-soft:#ff6b6b;--color-warning:#fc6;--facet-color-category-content:#5cc8c8;--facet-color-format-medium:#c486f7;--facet-color-time:#f59f4a;--facet-color-quality-availability:#6dc96d;--glass-bg:#0d0d12eb;--glass-bg-light:#0d0d12e0;--glass-blur:blur(calc(12px * var(--ui-scale)));--radius-xs:calc(3px * var(--ui-scale));--radius-sm:calc(4px * var(--ui-scale));--radius-md:calc(6px * var(--ui-scale));--radius-lg:calc(8px * var(--ui-scale));--radius-xl:calc(10px * var(--ui-scale));--radius-2xl:calc(12px * var(--ui-scale));--radius-pill:calc(999px * var(--ui-scale));--touch-min:max(44px, calc(44px * var(--ui-scale)));--ui-scale:1;--accent-o05:#4da6ff0d;--accent-o08:#4da6ff14;--accent-o12:#4da6ff1f;--accent-o15:#4da6ff26;--accent-o18:#4da6ff2e;--accent-o20:#4da6ff33;--accent-o25:#4da6ff40;--accent-o30:#4da6ff4d;--accent-o35:#4da6ff59;--accent-o40:#4da6ff66;--accent-o50:#4da6ff80;--accent-o70:#4da6ffb3;--white-o05:#ffffff0d;--white-o08:#ffffff14;--white-o10:#ffffff1a;--white-o12:#ffffff1f;--white-o15:#ffffff26;--white-o20:#fff3;--white-o30:#ffffff4d;--white-o50:#ffffff80;--white-o70:#ffffffb3;--component-browse-panel-width:calc(420px * var(--ui-scale));--component-browse-panel-max-height:100vh;--component-browse-card-padding:calc(.875rem * var(--ui-scale));--component-browse-card-radius:calc(8px * var(--ui-scale));--component-browse-card-gap:calc(.75rem * var(--ui-scale));--component-browse-thumb-size:calc(64px * var(--ui-scale));--component-browse-thumb-size-expanded:calc(96px * var(--ui-scale));--component-browse-thumb-radius:calc(4px * var(--ui-scale));--component-browse-grid-col-min:calc(260px * var(--ui-scale));--component-browse-grid-gap:calc(.75rem * var(--ui-scale));--component-browse-title-size:calc(.8rem * var(--ui-scale));--component-browse-title-weight:600;--component-browse-desc-size:calc(.7rem * var(--ui-scale));--component-browse-keyword-size:calc(.58rem * var(--ui-scale));--component-browse-keyword-radius:calc(3px * var(--ui-scale));--component-browse-chip-size:calc(.7rem * var(--ui-scale));--component-browse-chip-radius:calc(999px * var(--ui-scale));--component-browse-search-size:calc(.875rem * var(--ui-scale));--component-browse-search-radius:calc(6px * var(--ui-scale));--component-browse-chat-btn-size:calc(36px * var(--ui-scale));--component-chat-panel-width:calc(380px * var(--ui-scale));--component-chat-panel-max-height:calc(100vh - calc(8rem * var(--ui-scale)));--component-chat-panel-radius:calc(10px * var(--ui-scale));--component-chat-trigger-height:max(44px, calc(44px * var(--ui-scale)));--component-chat-trigger-width-collapsed:max(44px, calc(44px * var(--ui-scale)));--component-chat-msg-font-size:calc(.73rem * var(--ui-scale));--component-chat-msg-line-height:1.55;--component-chat-msg-radius:calc(8px * var(--ui-scale));--component-chat-msg-max-width:88%;--component-chat-input-font-size:calc(.78rem * var(--ui-scale));--component-chat-input-radius:calc(6px * var(--ui-scale));--component-chat-input-min-height:calc(1.8rem * var(--ui-scale));--component-chat-input-max-height:calc(6rem * var(--ui-scale));--component-chat-send-btn-min-size:calc(34px * var(--ui-scale));--component-chat-send-btn-radius:calc(6px * var(--ui-scale));--component-chat-header-title-size:calc(.75rem * var(--ui-scale));--component-chat-header-title-weight:600;--component-chat-suggestion-size:calc(.65rem * var(--ui-scale));--component-chat-suggestion-radius:calc(999px * var(--ui-scale));--component-chat-action-title-size:calc(.68rem * var(--ui-scale));--component-chat-action-title-weight:600;--component-chat-action-btn-radius:calc(6px * var(--ui-scale));--component-playback-transport-btn-min-width:calc(28px * var(--ui-scale));--component-playback-transport-btn-font-size:calc(.7rem * var(--ui-scale));--component-playback-home-btn-min-width:calc(36px * var(--ui-scale));--component-playback-home-btn-min-height:calc(36px * var(--ui-scale));--component-playback-home-btn-font-size:calc(.85rem * var(--ui-scale));--component-playback-time-label-font-size:calc(.8rem * var(--ui-scale));--component-playback-time-label-font-weight:500;--component-playback-time-label-radius:calc(6px * var(--ui-scale));--component-playback-range-height:calc(20px * var(--ui-scale));--component-tools-menu-btn-min-height:calc(34px * var(--ui-scale));--component-tools-menu-btn-font-size:calc(.72rem * var(--ui-scale));--component-tools-menu-btn-radius:calc(999px * var(--ui-scale));--component-tools-menu-toggle-min-width:calc(34px * var(--ui-scale));--component-tools-menu-popover-min-width:calc(240px * var(--ui-scale));--component-tools-menu-popover-radius:calc(10px * var(--ui-scale));--component-tools-menu-item-font-size:calc(.75rem * var(--ui-scale));--component-tools-menu-item-radius:calc(6px * var(--ui-scale));--component-tools-menu-layout-btn-min-height:calc(30px * var(--ui-scale));--component-tools-menu-layout-btn-font-size:calc(.7rem * var(--ui-scale));--component-tools-menu-layout-btn-radius:calc(5px * var(--ui-scale));--component-tools-menu-section-title-size:calc(.6rem * var(--ui-scale));--component-tools-menu-section-title-weight:600;--glass-border:1px solid var(--color-surface-border-subtle);--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px)}.mobile-native{--radius-lg:calc(10px * var(--ui-scale));--radius-xl:calc(14px * var(--ui-scale));--touch-min:max(48px, calc(48px * var(--ui-scale)))}.mobile-native button,.mobile-native [role=button],.mobile-native select,.mobile-native input[type=checkbox],.mobile-native .transport-btn,.mobile-native .chat-action-btn{min-width:var(--touch-min);min-height:var(--touch-min)}@media (width<=768px){:root{--component-browse-chat-btn-size:max(40px, calc(40px * var(--ui-scale)));--component-chat-panel-width:calc(100vw - calc(1.5rem * var(--ui-scale)));--component-chat-panel-max-height:60vh;--component-chat-trigger-height:max(48px, calc(48px * var(--ui-scale)));--component-chat-trigger-width-collapsed:max(48px, calc(48px * var(--ui-scale)));--component-chat-send-btn-min-size:max(44px, calc(44px * var(--ui-scale)));--component-playback-transport-btn-min-width:max(40px, calc(40px * var(--ui-scale)));--component-playback-transport-btn-font-size:calc(1rem * var(--ui-scale));--component-playback-home-btn-min-width:max(44px, calc(44px * var(--ui-scale)));--component-playback-home-btn-min-height:max(44px, calc(44px * var(--ui-scale)));--component-playback-home-btn-font-size:calc(1rem * var(--ui-scale));--component-playback-range-height:calc(28px * var(--ui-scale));--component-tools-menu-btn-min-height:calc(38px * var(--ui-scale));--component-tools-menu-btn-font-size:calc(.78rem * var(--ui-scale));--component-tools-menu-toggle-min-width:calc(38px * var(--ui-scale));--component-tools-menu-popover-min-width:calc(260px * var(--ui-scale));--component-tools-menu-item-font-size:calc(.82rem * var(--ui-scale));--component-tools-menu-layout-btn-min-height:calc(36px * var(--ui-scale));--component-tools-menu-layout-btn-font-size:calc(.78rem * var(--ui-scale))}}@media (width<=600px) and (orientation:portrait){:root{--component-browse-panel-width:100%;--component-browse-panel-max-height:70vh;--component-chat-panel-width:100%;--component-chat-panel-max-height:75vh}}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--color-bg);width:100%;height:100%;color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.hidden{display:none!important}button{background:var(--color-accent-dark);color:#fff;padding:calc(.5rem * var(--ui-scale)) calc(1rem * var(--ui-scale));border-radius:calc(6px * var(--ui-scale));cursor:pointer;font-size:calc(.875rem * var(--ui-scale));border:none;transition:background .2s,color .15s,border-color .15s}button:hover{background:var(--color-accent-darker)}#app{width:100%;height:100%}#container{width:100%;height:100%;position:relative;overflow:hidden}canvas{touch-action:none;width:100%;height:100%;display:block}#map-grid{top:0;inset-inline:0;background:#000;grid-template:"a"/1fr;gap:1px;display:grid;position:absolute;bottom:0}.map-viewport{outline-offset:-1px;background:#000;outline:1px solid #0000;width:100%;min-width:0;height:100%;min-height:0;transition:outline-color .15s;position:relative;overflow:hidden}.map-viewport.is-primary{outline-color:var(--accent-o50)}.map-viewport.out-of-range:after{content:"No data for current time";top:calc(.5rem * var(--ui-scale));z-index:4;padding:calc(.25rem * var(--ui-scale)) calc(.6rem * var(--ui-scale));font-size:calc(.65rem * var(--ui-scale));letter-spacing:.03em;color:var(--color-warning);-webkit-backdrop-filter:var(--glass-blur);border-radius:calc(12px * var(--ui-scale));white-space:nowrap;pointer-events:none;background:#0d0d12d9;border:1px solid #ffcc6659;font-weight:500;position:absolute;left:50%;transform:translate(-50%)}.map-viewport.out-of-range>.maplibregl-map{opacity:.55;transition:opacity .2s}.panel-legend{inset-inline-end:calc(.5rem * var(--ui-scale));bottom:calc(.5rem * var(--ui-scale));z-index:6;padding:calc(.4rem * var(--ui-scale));max-width:calc(180px * var(--ui-scale));max-height:calc(110px * var(--ui-scale));-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--white-o12);border-radius:calc(6px * var(--ui-scale));cursor:zoom-in;pointer-events:auto;background:#0d0d12d9;transition:border-color .15s,background .15s;position:absolute}.panel-legend:hover{background:#0d0d12f2;border-color:#4da6ff73}.panel-legend img{max-width:100%;max-height:calc(102px * var(--ui-scale));object-fit:contain;width:auto;height:auto;display:block}.panel-legend.hidden{display:none}.panel-loading{z-index:7;justify-content:center;align-items:center;gap:calc(.6rem * var(--ui-scale));pointer-events:none;background:#0000008c;flex-direction:column;display:flex;position:absolute;inset:0}.panel-loading.hidden{display:none}.panel-loading-spinner{width:calc(28px * var(--ui-scale));height:calc(28px * var(--ui-scale));border:3px solid var(--white-o15);border-top-color:var(--color-accent);border-radius:50%;animation:.8s linear infinite panel-spin}@keyframes panel-spin{to{transform:rotate(360deg)}}.panel-loading-label{font-size:calc(.7rem * var(--ui-scale));color:var(--white-o70);letter-spacing:.03em;font-weight:500}@media (prefers-reduced-motion:reduce){.panel-loading-spinner{animation:none}}.map-viewport:last-child .panel-legend{bottom:calc(6rem * var(--ui-scale))}.viewport-indicator{top:calc(.5rem * var(--ui-scale));z-index:5;min-width:calc(26px * var(--ui-scale));height:calc(26px * var(--ui-scale));padding:0 calc(.5rem * var(--ui-scale));font-size:calc(.7rem * var(--ui-scale));font-variant-numeric:tabular-nums;-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--white-o12);color:var(--color-text-secondary);border-radius:calc(13px * var(--ui-scale));cursor:pointer;pointer-events:auto;background:#0d0d12d1;font-weight:600;transition:background .15s,color .15s,border-color .15s;position:absolute;inset-inline-start:calc(3.75rem * var(--ui-scale))}.viewport-indicator:hover{background:var(--glass-bg);color:var(--color-text);border-color:var(--accent-o40)}.viewport-indicator.is-primary{background:var(--accent-o20);color:var(--color-accent);border-color:var(--color-accent);cursor:default}.viewport-indicator:focus-visible{outline:2px solid var(--accent-o70);outline-offset:2px}#ui{top:0;inset-inline:0;pointer-events:none;position:absolute;bottom:0}.ui-panel{pointer-events:auto;background:var(--glass-bg-light);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--white-o08);border-radius:calc(8px * var(--ui-scale));font-size:calc(.8rem * var(--ui-scale))}#loading-screen{top:0;background:var(--color-bg);z-index:1000;opacity:1;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .8s;display:flex;position:fixed;inset-inline-start:0}#loading-screen.fade-out{opacity:0;pointer-events:none}.loading-globe{width:calc(88px * var(--ui-scale));height:calc(88px * var(--ui-scale));margin-bottom:calc(2rem * var(--ui-scale));position:relative}.loading-globe-inner{width:calc(64px * var(--ui-scale));height:calc(64px * var(--ui-scale));top:calc(12px * var(--ui-scale));background:radial-gradient(circle at 35% 35%,#1e3a6e,#08111f);border-radius:50%;animation:2.4s ease-in-out infinite globe-pulse;position:absolute;inset-inline-start:calc(12px * var(--ui-scale));box-shadow:0 0 40px #1e50c859,inset 0 0 24px #000a28e6}.loading-ring{top:0;width:calc(88px * var(--ui-scale));height:calc(88px * var(--ui-scale));border:1.5px solid #0000;border-top-color:var(--color-accent);border-inline-end-color:var(--accent-o25);border-radius:50%;animation:1.6s linear infinite ring-spin;position:absolute;inset-inline-start:0}.loading-ring-2{top:calc(8px * var(--ui-scale));width:calc(72px * var(--ui-scale));height:calc(72px * var(--ui-scale));border:1px solid #0000;border-bottom-color:var(--accent-o40);border-inline-start-color:var(--accent-o15);border-radius:50%;animation:2.4s linear infinite reverse ring-spin;position:absolute;inset-inline-start:calc(8px * var(--ui-scale))}@keyframes ring-spin{to{transform:rotate(360deg)}}@keyframes globe-pulse{0%,to{box-shadow:0 0 40px #1e50c859,inset 0 0 24px #000a28e6}50%{box-shadow:0 0 64px #1e50c899,inset 0 0 24px #000a28e6}}.loading-title{font-size:calc(1.4rem * var(--ui-scale));letter-spacing:.25em;color:var(--color-text);margin-bottom:calc(.4rem * var(--ui-scale));text-transform:uppercase;font-weight:300}.loading-subtitle{font-size:calc(.65rem * var(--ui-scale));color:var(--color-accent);letter-spacing:.2em;text-transform:uppercase;margin-bottom:calc(2.5rem * var(--ui-scale));opacity:.8}.loading-progress-track{width:calc(180px * var(--ui-scale));height:calc(1.5px * var(--ui-scale));background:var(--white-o08);margin-bottom:calc(1.25rem * var(--ui-scale));border-radius:1px;overflow:hidden}.loading-progress-fill{background:linear-gradient(90deg, #1a4a99, var(--color-accent));border-radius:1px;width:0%;height:100%;transition:width .6s;box-shadow:0 0 8px #4da6ff99}#loading-status{font-size:calc(.7rem * var(--ui-scale));color:var(--color-text-muted);letter-spacing:.08em;min-height:1.2em;transition:opacity .3s}#info-panel{bottom:calc(.75rem * var(--ui-scale));max-width:calc(340px * var(--ui-scale));transition:max-height .3s;position:absolute;inset-inline-start:calc(.75rem * var(--ui-scale));overflow:hidden}#info-header{padding:calc(.5rem * var(--ui-scale)) calc(.75rem * var(--ui-scale));cursor:pointer;justify-content:space-between;align-items:center;gap:calc(.5rem * var(--ui-scale));-webkit-user-select:none;user-select:none;display:flex}#info-header:hover{background:var(--white-o05);border-radius:calc(8px * var(--ui-scale))}#info-title{font-weight:600;font-size:calc(.8rem * var(--ui-scale));white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}#info-toggle{font-size:calc(.65rem * var(--ui-scale));color:var(--color-text-muted);flex-shrink:0}#info-panel-picker{padding:0 calc(.75rem * var(--ui-scale)) calc(.4rem * var(--ui-scale));border-top:1px solid var(--color-surface);padding-top:calc(.4rem * var(--ui-scale))}#info-panel-picker.hidden{display:none}#info-selector{width:100%;padding:calc(.3rem * var(--ui-scale)) calc(.5rem * var(--ui-scale));font:inherit;font-size:calc(.72rem * var(--ui-scale));color:#ddd;background:var(--color-surface);border:1px solid var(--white-o12);border-radius:calc(5px * var(--ui-scale));cursor:pointer}#info-selector:hover{background:var(--white-o10);border-color:var(--accent-o40)}#info-selector:focus-visible{outline:2px solid var(--accent-o70);outline-offset:2px}#info-selector option{background:var(--color-bg);color:#ddd}#info-body{max-height:0;padding:0 calc(.75rem * var(--ui-scale));transition:max-height .3s,padding .3s;overflow:hidden}#info-panel.expanded #info-body{max-height:60vh;padding:0 calc(.75rem * var(--ui-scale)) calc(.75rem * var(--ui-scale));overflow-y:auto}#info-panel.expanded #info-toggle{transform:rotate(180deg)}.info-source{font-size:calc(.7rem * var(--ui-scale));color:#aaa;margin-top:calc(.25rem * var(--ui-scale))}.info-description{font-size:calc(.75rem * var(--ui-scale));margin-top:calc(.5rem * var(--ui-scale));color:#ddd;line-height:1.5}.info-categories{font-size:calc(.65rem * var(--ui-scale));color:var(--color-text-muted);margin-top:calc(.5rem * var(--ui-scale))}.info-keywords{gap:calc(.2rem * var(--ui-scale));margin-top:calc(.5rem * var(--ui-scale));flex-wrap:wrap;display:flex}.info-keyword{background:var(--accent-o12);color:var(--color-accent-hover);padding:calc(.15rem * var(--ui-scale)) calc(.35rem * var(--ui-scale));border-radius:calc(3px * var(--ui-scale));font-size:calc(.6rem * var(--ui-scale))}.info-section-label{font-size:calc(.6rem * var(--ui-scale));text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);margin-top:calc(.75rem * var(--ui-scale));margin-bottom:calc(.25rem * var(--ui-scale))}.info-related{margin:0;padding:0;list-style:none}.info-related li{margin-bottom:calc(.2rem * var(--ui-scale))}.info-related a,.info-catalog-link{color:var(--color-accent);font-size:calc(.7rem * var(--ui-scale));cursor:pointer;text-decoration:none}.info-related a:hover,.info-catalog-link:hover{text-decoration:underline}.info-related-offcatalog{color:var(--color-text-muted);font-size:calc(.7rem * var(--ui-scale))}.info-captions-badge{align-items:center;gap:calc(.4rem * var(--ui-scale));margin-top:calc(.5rem * var(--ui-scale));font-size:calc(.7rem * var(--ui-scale));color:var(--color-text-secondary);display:inline-flex}.info-captions-badge-glyph{min-width:2em;padding:calc(.05rem * var(--ui-scale)) calc(.3rem * var(--ui-scale));font-size:calc(.6rem * var(--ui-scale));letter-spacing:.04em;color:var(--color-text);background:var(--white-o12);border:1px solid var(--white-o12);border-radius:calc(3px * var(--ui-scale));justify-content:center;align-items:center;font-weight:700;display:inline-flex}.info-description-wrap{margin-top:calc(.5rem * var(--ui-scale))}.info-description-wrap .info-description{margin-top:0}.info-description-toggle{appearance:none;color:var(--color-accent);cursor:pointer;font-size:calc(.7rem * var(--ui-scale));margin-top:calc(.25rem * var(--ui-scale));background:0 0;border:none;padding:0;text-decoration:underline}.info-description-toggle:hover,.info-description-toggle:focus-visible{color:var(--color-accent-hover);outline:none}.info-credits{column-gap:calc(.6rem * var(--ui-scale));row-gap:calc(.2rem * var(--ui-scale));font-size:calc(.7rem * var(--ui-scale));grid-template-columns:max-content 1fr;margin:0;padding:0;display:grid}.info-credit-row{display:contents}.info-credit-label{color:var(--color-text-muted);white-space:nowrap}.info-credit-value{color:var(--color-text);overflow-wrap:anywhere;margin:0}.info-credit-value a{color:var(--color-accent);text-decoration:none}.info-credit-value a:hover,.info-credit-value a:focus-visible{outline:none;text-decoration:underline}.info-thumbnail-download{margin-top:calc(.6rem * var(--ui-scale));color:var(--color-text);text-decoration:none;display:block;position:relative}.info-thumbnail{border-radius:calc(4px * var(--ui-scale));background:var(--color-surface-alt);width:100%;display:block}.info-thumbnail-download-label{margin-top:calc(.25rem * var(--ui-scale));font-size:calc(.65rem * var(--ui-scale));color:var(--color-accent);text-decoration:underline;display:inline-block}.info-thumbnail-download:hover .info-thumbnail-download-label,.info-thumbnail-download:focus-visible .info-thumbnail-download-label{color:var(--color-accent-hover)}.info-legend-thumb{width:100%;max-height:calc(120px * var(--ui-scale));object-fit:contain;border-radius:calc(4px * var(--ui-scale));margin:calc(.5rem * var(--ui-scale)) 0;cursor:zoom-in;background:#ffffff0f}.info-legend-thumb:hover{outline:1px solid var(--color-accent)}.legend-modal-overlay{z-index:10000;cursor:zoom-out;background:#000000d9;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.legend-modal-overlay.hidden{display:none}.legend-modal-img{object-fit:contain;border-radius:calc(6px * var(--ui-scale));max-width:90vw;max-height:90vh;box-shadow:0 4px 40px #0009}.legend-modal-close{top:calc(1rem * var(--ui-scale));color:var(--color-text);font-size:calc(1.5rem * var(--ui-scale));width:calc(2.5rem * var(--ui-scale));height:calc(2.5rem * var(--ui-scale));cursor:pointer;background:#ffffff26;border:1px solid #ffffff4d;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;inset-inline-end:calc(1rem * var(--ui-scale))}.legend-modal-close:hover,.legend-modal-close:focus-visible{outline:2px solid var(--color-accent);background:#ffffff4d}@media (width<=768px){#info-panel{max-width:calc(100vw - calc(1.5rem * var(--ui-scale)))}#info-panel.expanded #info-body{-webkit-overflow-scrolling:touch;max-height:40vh;overflow-y:scroll}}.transport-btn{min-width:var(--component-playback-transport-btn-min-width);padding:calc(.3rem * var(--ui-scale)) calc(.4rem * var(--ui-scale));font-size:var(--component-playback-transport-btn-font-size);line-height:1;background:var(--color-surface)!important;border:1px solid var(--white-o10)!important;color:#ccc!important}.transport-btn:hover{background:var(--white-o12)!important;color:var(--color-text)!important;border-color:var(--accent-o40)!important}#time-label{font-size:var(--component-playback-time-label-font-size);font-weight:var(--component-playback-time-label-font-weight);letter-spacing:.03em;padding:calc(.4rem * var(--ui-scale)) calc(.7rem * var(--ui-scale));top:calc(.75rem * var(--ui-scale));background:var(--glass-bg-light);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--white-o08);border-radius:var(--component-playback-time-label-radius);position:absolute;inset-inline-end:calc(6rem * var(--ui-scale))}body.browse-open #time-label{inset-inline-end:calc(.75rem * var(--ui-scale))}#home-btn:hover{background:var(--white-o10)!important;color:var(--color-text)!important;border-color:#ffffff59!important}@media (width<=768px){#home-btn{min-width:var(--component-playback-home-btn-min-width);min-height:var(--component-playback-home-btn-min-height);font-size:var(--component-playback-home-btn-font-size)}.transport-btn{min-width:var(--component-playback-transport-btn-min-width);min-height:var(--component-playback-transport-btn-min-width);padding:calc(.4rem * var(--ui-scale)) calc(.6rem * var(--ui-scale));font-size:var(--component-playback-transport-btn-font-size)}#playback-controls input[type=range]{height:var(--component-playback-range-height)}}#tour-controls{bottom:calc(.75rem * var(--ui-scale));pointer-events:auto;align-items:center;gap:calc(.35rem * var(--ui-scale));padding:calc(.45rem * var(--ui-scale)) calc(.7rem * var(--ui-scale));background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--white-o08);border-radius:calc(8px * var(--ui-scale));z-index:700;display:flex;position:absolute;left:50%;transform:translate(-50%)}#tour-controls .transport-btn{min-width:calc(32px * var(--ui-scale));min-height:calc(32px * var(--ui-scale))}#tour-step-counter{font-size:calc(.7rem * var(--ui-scale));color:var(--color-text-muted);letter-spacing:.04em;font-variant-numeric:tabular-nums;text-align:center;-webkit-user-select:none;user-select:none;min-width:3.5em}#tour-stop-btn{margin-inline-start:calc(.25rem * var(--ui-scale));color:var(--color-error-soft)!important;border-color:#ff6b6b40!important}#tour-stop-btn:hover{background:#ff6b6b26!important;border-color:#ff6b6b80!important}.tour-textbox{box-shadow:0 4px 24px #00000080}.tour-textbox-close{top:calc(.4rem * var(--ui-scale));font-size:calc(.65rem * var(--ui-scale));width:calc(1.5rem * var(--ui-scale));height:calc(1.5rem * var(--ui-scale));cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;line-height:1;display:flex;position:absolute;inset-inline-end:calc(.4rem * var(--ui-scale));background:var(--white-o08)!important;border:1px solid var(--white-o15)!important;color:#aaa!important}.tour-textbox-close:hover{background:var(--white-o20)!important;color:var(--color-text)!important}@keyframes tour-box-fadein{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.tour-question-btn{min-width:max(44px, calc(44px * var(--ui-scale)));min-height:max(44px, calc(44px * var(--ui-scale)));padding:calc(.5rem * var(--ui-scale)) calc(1rem * var(--ui-scale));font-size:calc(1rem * var(--ui-scale));border-radius:calc(8px * var(--ui-scale));cursor:pointer;font-weight:600;transition:background .15s,border-color .15s;background:var(--white-o08)!important;border:1px solid var(--white-o15)!important;color:#ddd!important}.tour-question-btn:hover:not(:disabled){background:var(--accent-o20)!important;border-color:var(--color-accent)!important;color:var(--color-text)!important}.tour-question-btn:disabled{cursor:default;opacity:.7}.tour-question-correct{border-color:var(--color-success)!important;color:var(--color-success)!important;background:#22c55e4d!important}.tour-question-wrong{border-color:var(--color-error)!important;color:var(--color-error)!important;background:#ef44444d!important}.tour-question-continue{margin-top:calc(1rem * var(--ui-scale));padding:calc(.5rem * var(--ui-scale)) calc(1.5rem * var(--ui-scale));font-size:calc(.85rem * var(--ui-scale));border-radius:calc(6px * var(--ui-scale));cursor:pointer;background:var(--accent-o20)!important;border:1px solid var(--color-accent)!important;color:var(--color-accent)!important}.tour-question-continue:hover{background:var(--accent-o35)!important}@media (width<=768px){#tour-controls .transport-btn{min-width:max(40px, calc(40px * var(--ui-scale)));min-height:max(40px, calc(40px * var(--ui-scale)))}}@media (width<=600px) and (orientation:portrait){body.tour-active #playback-controls:not(.hidden){bottom:calc(3rem * var(--ui-scale))!important;max-width:none!important;padding:calc(.3rem * var(--ui-scale)) calc(.5rem * var(--ui-scale))!important;inset-inline-start:calc(.5rem * var(--ui-scale))!important;inset-inline-end:calc(.5rem * var(--ui-scale))!important}}.tour-glass{pointer-events:auto;background:var(--glass-bg-light);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--color-surface);border-radius:var(--radius-xl);animation:.35s tour-box-fadein;position:absolute;overflow:hidden;box-shadow:0 4px 24px #00000080}.tour-overlay-container{z-index:600;pointer-events:none;position:absolute;inset:0}.tour-caption{font-size:calc(.75rem * var(--ui-scale));color:var(--color-text-muted);text-align:center;margin-top:calc(.5rem * var(--ui-scale))}.tour-legend{top:calc(3rem * var(--ui-scale));z-index:5;pointer-events:auto;padding:calc(.3rem * var(--ui-scale));background:var(--glass-bg-light);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--white-o08);border-radius:var(--radius-lg);animation:.3s tour-box-fadein;position:absolute;inset-inline-start:calc(.5rem * var(--ui-scale))}.tour-legend img{border-radius:calc(4px * var(--ui-scale));max-width:40vw;max-height:15vh;display:block}@supports (padding-bottom:env(safe-area-inset-bottom)){#tour-controls{bottom:calc(calc(.75rem * var(--ui-scale)) + env(safe-area-inset-bottom))}}#error-message{padding:calc(2rem * var(--ui-scale));border-radius:calc(8px * var(--ui-scale));text-align:center;max-width:calc(400px * var(--ui-scale));z-index:9000;pointer-events:auto;background:#c00;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#error-dismiss{margin:calc(1rem * var(--ui-scale)) auto 0;background:var(--white-o15);border:1px solid var(--white-o30);color:var(--color-text);border-radius:calc(4px * var(--ui-scale));padding:calc(.5rem * var(--ui-scale)) calc(1.5rem * var(--ui-scale));cursor:pointer;font-size:calc(.9rem * var(--ui-scale));min-height:max(44px, calc(44px * var(--ui-scale)));min-width:max(44px, calc(44px * var(--ui-scale)));display:block}#error-dismiss:hover{background:#ffffff40}#browse-overlay{top:0;inset-inline-end:0;width:var(--component-browse-panel-width);z-index:500;background:var(--glass-bg-light);-webkit-backdrop-filter:var(--glass-blur);border-inline-start:1px solid var(--white-o08);flex-direction:column;transition:transform .3s;display:flex;position:fixed;bottom:0;overflow:visible}#browse-overlay.collapsed{transform:translate(100%)}:root[dir=rtl] #browse-overlay.collapsed{transform:translate(-100%)}#browse-inner{width:100%;height:100%;padding:calc(1.5rem * var(--ui-scale));box-sizing:border-box;flex-direction:column;display:flex;position:relative;overflow:hidden}#browse-header{margin-bottom:calc(1.25rem * var(--ui-scale));flex-shrink:0;padding-inline-end:calc(2.25rem * var(--ui-scale));position:relative}.browse-title{font-size:calc(1.4rem * var(--ui-scale));letter-spacing:.15em;text-transform:uppercase;color:var(--color-text);font-weight:300}.browse-subtitle{font-size:calc(.7rem * var(--ui-scale));color:var(--color-accent);margin-top:calc(.2rem * var(--ui-scale));opacity:.8;letter-spacing:.05em}body.browse-view-graph #browse-header,body.browse-view-timeline #browse-header,body.browse-view-map #browse-header{margin-bottom:calc(.5rem * var(--ui-scale))}body.browse-view-graph .browse-subtitle,body.browse-view-timeline .browse-subtitle,body.browse-view-map .browse-subtitle{display:none}body.browse-view-graph .browse-title,body.browse-view-timeline .browse-title,body.browse-view-map .browse-title{font-size:calc(1rem * var(--ui-scale));letter-spacing:.12em}.browse-search-wrap{margin-bottom:calc(.875rem * var(--ui-scale));flex-shrink:0;margin-inline-end:calc(3rem * var(--ui-scale));position:relative}#browse-search{background:var(--color-surface);border:1px solid var(--white-o12);border-radius:var(--component-browse-search-radius);width:100%;padding:calc(.6rem * var(--ui-scale)) calc(2rem * var(--ui-scale)) calc(.6rem * var(--ui-scale)) calc(.875rem * var(--ui-scale));color:var(--color-text);font-size:var(--component-browse-search-size);box-sizing:border-box;font-family:inherit;transition:border-color .2s;display:block}#browse-search::-webkit-search-cancel-button{-webkit-appearance:none}.browse-search-clear{inset-inline-end:calc(.4rem * var(--ui-scale));color:var(--color-text-dim);font-size:calc(1.1rem * var(--ui-scale));cursor:pointer;padding:calc(.2rem * var(--ui-scale)) calc(.3rem * var(--ui-scale));border-radius:calc(3px * var(--ui-scale));background:0 0;border:none;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.browse-search-clear:hover{color:var(--color-text);background:var(--white-o10)}.browse-chat-btn{inset-inline-end:calc(-3rem * var(--ui-scale));width:var(--component-browse-chat-btn-size);height:var(--component-browse-chat-btn-size);-webkit-backdrop-filter:var(--glass-blur);font-size:calc(1rem * var(--ui-scale));cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%);background:var(--glass-bg)!important;border:1px solid var(--white-o12)!important;color:var(--color-text-secondary)!important;padding:0!important}.browse-chat-btn:hover{border-color:var(--accent-o40)!important;color:var(--color-accent)!important;background:#1e1e28f2!important}.browse-chat-btn.chat-trigger-active{box-shadow:0 0 12px var(--accent-o30);border-color:var(--color-accent)!important;color:var(--color-accent)!important}#browse-search::placeholder{color:var(--color-text-dim)}#browse-search:focus{border-color:var(--accent-o50);background:var(--white-o08)}#browse-filter-rail{gap:calc(.35rem * var(--ui-scale)) calc(.75rem * var(--ui-scale));padding-bottom:calc(.75rem * var(--ui-scale));flex-shrink:0;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.browse-filter-section{gap:calc(.35rem * var(--ui-scale));flex-direction:column;min-width:0;display:flex}.browse-filter-section:not(.collapsed),.browse-filter-clear-wrap{grid-column:1/-1}@media (width<=600px){#browse-filter-rail{grid-template-columns:1fr}}.browse-filter-section-header{align-items:center;gap:calc(.4rem * var(--ui-scale));width:100%;padding:calc(.25rem * var(--ui-scale)) calc(.1rem * var(--ui-scale));color:var(--color-text-muted);font-family:inherit;font-size:calc(.6rem * var(--ui-scale));letter-spacing:.08em;text-transform:uppercase;text-align:start;cursor:pointer;border-radius:calc(.25rem * var(--ui-scale));background:0 0;border:none;font-weight:600;display:flex}.browse-filter-section-header:hover{color:var(--color-text);background:var(--white-o05)}.browse-filter-section-header:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.browse-filter-section-indicator{width:calc(.7rem * var(--ui-scale));font-size:calc(.55rem * var(--ui-scale));text-align:center;color:var(--color-text-muted);display:inline-block}.browse-filter-section-header:hover .browse-filter-section-indicator{color:var(--color-text)}.browse-filter-section-title{flex:1}.browse-filter-section-badge{min-width:calc(1.1rem * var(--ui-scale));padding:calc(.05rem * var(--ui-scale)) calc(.4rem * var(--ui-scale));border-radius:calc(999px * var(--ui-scale));background:var(--color-accent-dark);color:var(--color-text);font-size:calc(.55rem * var(--ui-scale));letter-spacing:0;text-transform:none;text-align:center;flex-shrink:0;font-weight:600}.browse-filter-section-body{gap:calc(.25rem * var(--ui-scale));flex-direction:column;display:flex}.browse-filter-section.collapsed .browse-filter-section-body{display:none}.browse-filter-group{gap:calc(.25rem * var(--ui-scale));flex-direction:column;display:flex}.browse-filter-label{font-size:calc(.65rem * var(--ui-scale));color:var(--color-text-muted)}.browse-chip-row{gap:calc(.35rem * var(--ui-scale));flex-wrap:wrap;display:flex}.browse-chip{padding:calc(.3rem * var(--ui-scale)) calc(.75rem * var(--ui-scale));border-radius:var(--component-browse-chip-radius);border:1px solid var(--white-o15);background:var(--white-o05);color:#aaa;font-size:var(--component-browse-chip-size);cursor:pointer;white-space:nowrap;flex-shrink:0;font-family:inherit;transition:background .15s,color .15s,border-color .15s}.browse-chip:hover{background:var(--white-o10);color:#ddd}.browse-chip.active{background:var(--color-accent-dark);border-color:var(--color-accent-dark);color:var(--color-text)}.browse-toggle-row{gap:calc(.4rem * var(--ui-scale));flex-wrap:wrap;display:flex}.browse-toggle-chip{padding:calc(.3rem * var(--ui-scale)) calc(.75rem * var(--ui-scale));border-radius:calc(999px * var(--ui-scale));border:1px solid var(--accent-o20);background:var(--accent-o08);color:var(--color-accent-hover);font-size:calc(.7rem * var(--ui-scale));cursor:pointer;white-space:nowrap;flex-shrink:0;font-family:inherit;transition:background .15s,color .15s,border-color .15s}.browse-toggle-chip:hover{background:var(--accent-o18);color:var(--color-text)}.browse-toggle-chip.active{background:var(--accent-o30);border-color:var(--color-accent);color:var(--color-text)}.browse-toggle-chip:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.browse-range-row{align-items:center;gap:calc(.4rem * var(--ui-scale));display:flex}.browse-range-input{width:calc(5.5rem * var(--ui-scale));padding:calc(.25rem * var(--ui-scale)) calc(.5rem * var(--ui-scale));border-radius:calc(.25rem * var(--ui-scale));border:1px solid var(--white-o15);background:var(--white-o05);color:var(--color-text);font-size:calc(.75rem * var(--ui-scale));font-family:inherit}.browse-range-input:focus{border-color:var(--accent-o50);background:var(--white-o08);outline:none}.browse-range-sep{color:var(--color-text-muted)}.browse-filter-clear-wrap{justify-content:flex-end;display:flex}.browse-filter-clear{padding:calc(.25rem * var(--ui-scale)) calc(.6rem * var(--ui-scale));border-radius:calc(.25rem * var(--ui-scale));color:var(--color-text-muted);font-size:calc(.65rem * var(--ui-scale));cursor:pointer;background:0 0;border:1px solid #0000;font-family:inherit}.browse-filter-clear:hover{color:var(--color-text);border-color:var(--white-o15)}.browse-filter-clear:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}#browse-toolbar{margin-bottom:calc(.5rem * var(--ui-scale));justify-content:space-between;align-items:center;gap:calc(.5rem * var(--ui-scale));flex-shrink:0;display:flex}#browse-count{font-size:calc(.65rem * var(--ui-scale));color:var(--color-text-muted);letter-spacing:.05em;white-space:nowrap}.browse-filters-btn{align-items:center;gap:calc(.35rem * var(--ui-scale));padding:calc(.25rem * var(--ui-scale)) calc(.55rem * var(--ui-scale));border-radius:calc(4px * var(--ui-scale));border:1px solid var(--white-o15);background:var(--color-surface-alt);color:var(--color-text-secondary);font-size:calc(.6rem * var(--ui-scale));letter-spacing:.05em;cursor:pointer;white-space:nowrap;font-family:inherit;display:none}.browse-filters-btn:hover{background:var(--white-o08);color:var(--color-text)}.browse-filters-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}#browse-overlay.filter-drawer-open .browse-filters-btn{background:var(--accent-o15);border-color:var(--accent-o40);color:var(--color-accent)}.browse-filters-btn-badge{min-width:calc(1.1rem * var(--ui-scale));padding:0 calc(.3rem * var(--ui-scale));border-radius:calc(999px * var(--ui-scale));background:var(--color-accent);color:var(--color-bg);font-size:calc(.55rem * var(--ui-scale));text-align:center;font-weight:600;line-height:1.2;display:inline-block}.browse-filters-btn-badge.hidden{display:none}#browse-active-filters{gap:calc(.3rem * var(--ui-scale));scrollbar-width:thin;flex:1;align-items:center;min-width:0;display:none;overflow-x:auto}.browse-active-filter-chip{align-items:center;gap:calc(.3rem * var(--ui-scale));padding:calc(.15rem * var(--ui-scale)) calc(.45rem * var(--ui-scale));border-radius:calc(999px * var(--ui-scale));border:1px solid var(--accent-o40);background:var(--accent-o15);color:var(--color-accent);font-size:calc(.6rem * var(--ui-scale));cursor:pointer;white-space:nowrap;flex-shrink:0;font-family:inherit;display:inline-flex}.browse-active-filter-chip:hover{background:var(--accent-o30)}.browse-active-filter-chip:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.browse-active-filter-chip-x{color:var(--color-text-secondary);font-size:calc(.7rem * var(--ui-scale));line-height:1}@media (width<=1024px){body.browse-view-graph .browse-filters-btn,body.browse-view-timeline .browse-filters-btn,body.browse-view-map .browse-filters-btn{display:inline-flex}body.browse-view-graph #browse-active-filters:not(.empty),body.browse-view-timeline #browse-active-filters:not(.empty),body.browse-view-map #browse-active-filters:not(.empty){display:flex}body.browse-view-graph #browse-filter-rail,body.browse-view-timeline #browse-filter-rail,body.browse-view-map #browse-filter-rail{display:none}body.browse-view-graph #browse-overlay.filter-drawer-open #browse-filter-rail,body.browse-view-timeline #browse-overlay.filter-drawer-open #browse-filter-rail,body.browse-view-map #browse-overlay.filter-drawer-open #browse-filter-rail{top:var(--browse-drawer-top,calc(9.5rem * var(--ui-scale)));inset-inline:calc(1.5rem * var(--ui-scale));z-index:50;padding:calc(.75rem * var(--ui-scale));background:var(--glass-bg);border:1px solid var(--white-o15);border-radius:calc(8px * var(--ui-scale));-webkit-backdrop-filter:blur(8px);max-height:calc(100% - var(--browse-drawer-top,calc(9.5rem * var(--ui-scale))) - calc(1.5rem * var(--ui-scale)));display:grid;position:absolute;overflow-y:auto;box-shadow:0 8px 24px #00000073}}#browse-sort{gap:calc(.2rem * var(--ui-scale));display:flex}.browse-sort-btn{padding:calc(.2rem * var(--ui-scale)) calc(.5rem * var(--ui-scale));border-radius:calc(4px * var(--ui-scale));border:1px solid var(--white-o10);background:var(--color-surface-alt);color:var(--color-text-dim);font-size:calc(.6rem * var(--ui-scale));cursor:pointer;white-space:nowrap;font-family:inherit;transition:background .15s,color .15s,border-color .15s}.browse-sort-btn:hover{background:var(--white-o08);color:#ccc}.browse-sort-btn.active{background:var(--accent-o15);border-color:var(--accent-o40);color:var(--color-accent)}.browse-sort-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}#browse-grid{grid-template-columns:repeat(auto-fill, minmax(var(--component-browse-grid-col-min), 1fr));gap:var(--component-browse-grid-gap);flex:1;align-content:start;display:grid;overflow-y:auto}#browse-grid.hidden{display:none}#browse-view-mode{gap:calc(.2rem * var(--ui-scale));display:flex}#browse-view-mode.hidden{display:none}.browse-view-mode-btn{padding:calc(.2rem * var(--ui-scale)) calc(.55rem * var(--ui-scale));border-radius:calc(4px * var(--ui-scale));border:1px solid var(--white-o10);background:var(--color-surface-alt);color:var(--color-text-dim);font-size:calc(.6rem * var(--ui-scale));cursor:pointer;white-space:nowrap;font-family:inherit;transition:background .15s,color .15s,border-color .15s}.browse-view-mode-btn:hover{background:var(--white-o08);color:#ccc}.browse-view-mode-btn.active{background:var(--accent-o15);border-color:var(--accent-o40);color:var(--color-accent)}.browse-view-mode-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}#browse-graph{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}#browse-graph.hidden{display:none}.browse-graph-host{gap:calc(.5rem * var(--ui-scale));flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.browse-graph-toolbar{align-items:center;gap:calc(.75rem * var(--ui-scale));padding:calc(.4rem * var(--ui-scale)) calc(.6rem * var(--ui-scale));background:var(--color-surface-alt);border:1px solid var(--white-o08);border-radius:calc(6px * var(--ui-scale));font-size:calc(.65rem * var(--ui-scale));color:var(--color-text-dim);flex-wrap:wrap;display:flex}.browse-graph-show-format{align-items:center;gap:calc(.35rem * var(--ui-scale));cursor:pointer;-webkit-user-select:none;user-select:none;display:flex}.browse-graph-show-format-input{accent-color:var(--color-accent);margin:0}.browse-graph-legend-dot-format-toggle{opacity:.35}.browse-graph-host-show-format .browse-graph-legend-dot-format-toggle{opacity:1}.browse-graph-recenter{padding:calc(.2rem * var(--ui-scale)) calc(.55rem * var(--ui-scale));border-radius:calc(4px * var(--ui-scale));border:1px solid var(--white-o10);background:var(--color-surface-alt);color:var(--color-text-secondary);font-size:calc(.6rem * var(--ui-scale));cursor:pointer;font-family:inherit}.browse-graph-recenter:hover{background:var(--white-o08);color:var(--color-text)}.browse-graph-recenter:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.browse-graph-legend{align-items:center;gap:calc(.4rem * var(--ui-scale));font-size:calc(.6rem * var(--ui-scale));color:var(--color-text-muted);margin-inline-start:auto;display:flex}.browse-graph-legend-dot{width:calc(10px * var(--ui-scale));height:calc(10px * var(--ui-scale));border-radius:50%;margin-inline-end:calc(.15rem * var(--ui-scale));display:inline-block}.browse-graph-legend-dot-category{background:var(--facet-color-category-content)}.browse-graph-legend-dot-format{background:var(--facet-color-format-medium)}.browse-graph-legend-dot-keyword{background:var(--facet-color-category-content);opacity:.6;border-radius:calc(2px * var(--ui-scale))}.browse-graph-legend-dot-dataset{background:var(--color-text-faint)}.browse-graph-canvas{min-height:calc(320px * var(--ui-scale));background:var(--color-surface-alt);border:1px solid var(--white-o08);border-radius:calc(6px * var(--ui-scale));flex:1;overflow:hidden}.browse-graph-canvas.hidden{display:none}.browse-graph-status{padding:calc(1.5rem * var(--ui-scale));text-align:center;color:var(--color-text-muted);font-size:calc(.75rem * var(--ui-scale))}.browse-graph-status-error{color:var(--color-error)}.browse-graph-empty{padding:calc(1.5rem * var(--ui-scale));text-align:center;color:var(--color-text-muted);font-size:calc(.75rem * var(--ui-scale))}.browse-graph-empty.hidden{display:none}.browse-graph-tooltip{pointer-events:none;background:var(--glass-bg);border:1px solid var(--white-o15);border-radius:calc(4px * var(--ui-scale));padding:calc(.4rem * var(--ui-scale)) calc(.6rem * var(--ui-scale));color:var(--color-text);font-size:calc(.65rem * var(--ui-scale));max-width:calc(240px * var(--ui-scale));z-index:10;-webkit-backdrop-filter:blur(var(--glass-blur));line-height:1.4;position:absolute}.browse-graph-tooltip.hidden{display:none}.browse-graph-tooltip-count{color:var(--color-text-muted)}.browse-graph-tooltip-cooc{color:var(--color-text-secondary)}#browse-timeline{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}#browse-timeline.hidden{display:none}.browse-timeline-host{gap:calc(.5rem * var(--ui-scale));flex-direction:column;flex:1;min-height:0;display:flex}.browse-timeline-toolbar{align-items:center;gap:calc(.75rem * var(--ui-scale));padding:calc(.4rem * var(--ui-scale)) calc(.6rem * var(--ui-scale));background:var(--color-surface-alt);border:1px solid var(--white-o08);border-radius:calc(6px * var(--ui-scale));font-size:calc(.65rem * var(--ui-scale));color:var(--color-text-dim);flex-wrap:wrap;display:flex}.browse-timeline-legend{align-items:center;gap:calc(.4rem * var(--ui-scale));font-size:calc(.6rem * var(--ui-scale));color:var(--color-text-muted);display:flex}.browse-timeline-legend-dot{width:calc(10px * var(--ui-scale));height:calc(10px * var(--ui-scale));border-radius:50%;margin-inline-end:calc(.15rem * var(--ui-scale));display:inline-block}.browse-timeline-legend-dot-coverage{background:var(--facet-color-category-content)}.browse-timeline-legend-dot-realtime{background:var(--color-success)}.browse-timeline-brush-summary{font-size:calc(.6rem * var(--ui-scale));color:var(--color-text-secondary);font-variant-numeric:tabular-nums;margin-inline-start:auto}.browse-timeline-brush-clear{padding:calc(.2rem * var(--ui-scale)) calc(.55rem * var(--ui-scale));border-radius:calc(4px * var(--ui-scale));border:1px solid var(--white-o10);background:var(--color-surface-alt);color:var(--color-text-secondary);font-size:calc(.6rem * var(--ui-scale));cursor:pointer;font-family:inherit}.browse-timeline-brush-clear.hidden{display:none}.browse-timeline-brush-clear:hover{background:var(--white-o08);color:var(--color-text)}.browse-timeline-brush-clear:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.browse-timeline-chart{min-height:calc(320px * var(--ui-scale));background:var(--color-surface-alt);border:1px solid var(--white-o08);border-radius:calc(6px * var(--ui-scale));flex:1;position:relative;overflow:auto}.browse-timeline-chart.hidden{display:none}.browse-timeline-axis{background:var(--color-bg);z-index:2;border-block-end:1px solid var(--white-o08);position:sticky;inset-block-start:0}.browse-timeline-axis-svg{display:block}.browse-timeline-axis-ticks text{fill:var(--color-text-muted);font-size:calc(10px * var(--ui-scale));font-variant-numeric:tabular-nums}.browse-timeline-axis-ticks .domain,.browse-timeline-axis-ticks line{stroke:var(--white-o15)}.browse-timeline-brush .overlay{fill:var(--facet-color-time);fill-opacity:.06;stroke:var(--facet-color-time);stroke-opacity:.35;stroke-width:1px;stroke-dasharray:3 3;cursor:crosshair;transition:fill-opacity .15s,stroke-opacity .15s}.browse-timeline-brush:hover .overlay{fill-opacity:.12;stroke-opacity:.55}.browse-timeline-axis-svg.browse-timeline-has-brush .browse-timeline-brush .overlay{fill-opacity:0;stroke-opacity:0}.browse-timeline-brush-hint{fill:var(--facet-color-time);font-size:calc(10px * var(--ui-scale));letter-spacing:.04em;opacity:.7;pointer-events:none;font-weight:500;transition:opacity .15s}.browse-timeline-axis-svg.browse-timeline-has-brush .browse-timeline-brush-hint{opacity:0}.browse-timeline-brush .selection{fill:var(--facet-color-time);fill-opacity:.25;stroke:var(--facet-color-time);stroke-width:1px}.browse-timeline-brush .handle{fill:var(--facet-color-time);fill-opacity:.7}.browse-timeline-now-marker{stroke:var(--color-text-muted);stroke-width:1px;stroke-dasharray:2 2;opacity:.6}.browse-timeline-rows-svg{display:block}.browse-timeline-row{cursor:pointer}.browse-timeline-row:hover .browse-timeline-bar{fill-opacity:1}.browse-timeline-row:focus-visible{outline:none}.browse-timeline-row:focus-visible .browse-timeline-bar{stroke:var(--color-accent);stroke-width:1.5px}.browse-timeline-row-label{fill:var(--color-text-secondary);font-size:calc(11px * var(--ui-scale));pointer-events:none}.browse-timeline-row:hover .browse-timeline-row-label{fill:var(--color-text)}.browse-timeline-bar{fill:var(--facet-color-category-content);fill-opacity:.75;rx:2}.browse-timeline-bar[data-group=format-medium]{fill:var(--facet-color-format-medium)}.browse-timeline-bar[data-group=time]{fill:var(--facet-color-time)}.browse-timeline-bar[data-group=quality-availability]{fill:var(--facet-color-quality-availability)}.browse-timeline-realtime-marker{fill:var(--color-success);stroke:var(--color-bg);stroke-width:1px}.browse-timeline-empty{padding:calc(1.5rem * var(--ui-scale));text-align:center;color:var(--color-text-muted);font-size:calc(.75rem * var(--ui-scale))}.browse-timeline-empty.hidden{display:none}.browse-timeline-footnote{padding:calc(.5rem * var(--ui-scale)) calc(.7rem * var(--ui-scale));color:var(--color-text-muted);font-size:calc(.65rem * var(--ui-scale));border-block-start:1px solid var(--white-o08);font-style:italic}.browse-timeline-footnote.hidden{display:none}#browse-map{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}#browse-map.hidden{display:none}.browse-map-host{gap:calc(.5rem * var(--ui-scale));flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.browse-map-toolbar{align-items:center;gap:calc(.75rem * var(--ui-scale));padding:calc(.4rem * var(--ui-scale)) calc(.6rem * var(--ui-scale));background:var(--color-surface-alt);border:1px solid var(--white-o08);border-radius:calc(6px * var(--ui-scale));font-size:calc(.65rem * var(--ui-scale));color:var(--color-text-dim);flex-wrap:wrap;display:flex}.browse-map-legend{align-items:center;gap:calc(.4rem * var(--ui-scale));font-size:calc(.6rem * var(--ui-scale));color:var(--color-text-muted);display:flex}.browse-map-legend-dot{width:calc(10px * var(--ui-scale));height:calc(10px * var(--ui-scale));border-radius:50%;margin-inline-end:calc(.15rem * var(--ui-scale));display:inline-block}.browse-map-legend-dot-coverage{background:var(--facet-color-category-content)}.browse-map-legend-dot-realtime{background:var(--color-success)}.browse-map-include-global{align-items:center;gap:calc(.35rem * var(--ui-scale));cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--color-text-secondary);display:flex}.browse-map-include-global-input{accent-color:var(--color-accent);margin:0}.browse-map-draw-toggle{padding:calc(.2rem * var(--ui-scale)) calc(.55rem * var(--ui-scale));border-radius:calc(4px * var(--ui-scale));border:1px solid var(--white-o10);background:var(--color-surface-alt);color:var(--color-text-secondary);font-size:calc(.6rem * var(--ui-scale));cursor:pointer;margin-inline-start:auto;font-family:inherit}.browse-map-draw-toggle:hover{background:var(--white-o08);color:var(--color-text)}.browse-map-draw-toggle.active{background:var(--accent-o15);border-color:var(--accent-o40);color:var(--color-accent)}.browse-map-draw-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.browse-map-clear-region{padding:calc(.2rem * var(--ui-scale)) calc(.55rem * var(--ui-scale));border-radius:calc(4px * var(--ui-scale));border:1px solid var(--white-o10);background:var(--color-surface-alt);color:var(--color-text-secondary);font-size:calc(.6rem * var(--ui-scale));cursor:pointer;font-family:inherit}.browse-map-clear-region.hidden{display:none}.browse-map-clear-region:hover{background:var(--white-o08);color:var(--color-text)}.browse-map-clear-region:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.browse-map-banner{padding:calc(.5rem * var(--ui-scale)) calc(.7rem * var(--ui-scale));color:var(--color-text-secondary);font-size:calc(.65rem * var(--ui-scale));background:var(--accent-o15);border-inline-start:2px solid var(--color-accent);border-radius:calc(4px * var(--ui-scale));flex-shrink:0;line-height:1.45}.browse-map-banner.hidden{display:none}.browse-map-canvas{min-height:calc(320px * var(--ui-scale));background:var(--color-surface-alt);border:1px solid var(--white-o08);border-radius:calc(6px * var(--ui-scale));flex:1;position:relative;overflow:hidden}.browse-map-canvas.hidden{display:none}.browse-map-canvas.browse-map-canvas-draw{box-shadow:inset 0 0 0 1px var(--facet-color-time,#f59f4a)}.browse-map-canvas.browse-map-canvas-draw canvas{cursor:crosshair}.browse-map-draw-box{border:1px dashed var(--facet-color-time,#f59f4a);pointer-events:none;z-index:5;background:#f59f4a2e;position:absolute}.browse-map-status{padding:calc(1.5rem * var(--ui-scale));text-align:center;color:var(--color-text-muted);font-size:calc(.75rem * var(--ui-scale))}.browse-map-status-error{color:var(--color-error)}.browse-map-empty{padding:calc(1.5rem * var(--ui-scale));text-align:center;color:var(--color-text-muted);font-size:calc(.75rem * var(--ui-scale))}.browse-map-empty.hidden{display:none}.browse-map-footnote{padding:calc(.5rem * var(--ui-scale)) calc(.7rem * var(--ui-scale));color:var(--color-text-muted);font-size:calc(.65rem * var(--ui-scale));border-block-start:1px solid var(--white-o08);font-style:italic}.browse-map-footnote.hidden{display:none}.browse-map-tooltip{pointer-events:none;background:var(--glass-bg);border:1px solid var(--white-o15);border-radius:calc(4px * var(--ui-scale));padding:calc(.4rem * var(--ui-scale)) calc(.6rem * var(--ui-scale));color:var(--color-text);font-size:calc(.65rem * var(--ui-scale));max-width:calc(260px * var(--ui-scale));z-index:10;-webkit-backdrop-filter:blur(var(--glass-blur));line-height:1.4;position:absolute}.browse-map-tooltip.hidden{display:none}.browse-map-tooltip-row{gap:calc(.1rem * var(--ui-scale));padding-block:calc(.15rem * var(--ui-scale));flex-direction:column;display:flex}.browse-map-tooltip-row+.browse-map-tooltip-row{border-block-start:1px solid var(--white-o08);margin-block-start:calc(.15rem * var(--ui-scale));padding-block-start:calc(.3rem * var(--ui-scale))}.browse-map-tooltip-title{color:var(--color-text);font-weight:500}.browse-map-tooltip-bounds{color:var(--color-text-muted);font-size:calc(.6rem * var(--ui-scale));font-variant-numeric:tabular-nums}.browse-map-tooltip-realtime{color:var(--color-success);font-size:calc(.6rem * var(--ui-scale))}.browse-map-tooltip-more{color:var(--color-text-muted);margin-block-start:calc(.25rem * var(--ui-scale));font-style:italic}.browse-card{background:var(--color-surface-alt);border:1px solid var(--white-o08);border-radius:var(--component-browse-card-radius);padding:var(--component-browse-card-padding);cursor:pointer;gap:var(--component-browse-card-gap);transition:background .15s,border-color .15s,transform .1s;display:flex}.browse-card-thumb{width:var(--component-browse-thumb-size);height:var(--component-browse-thumb-size);border-radius:var(--component-browse-thumb-radius);object-fit:cover;background:var(--color-surface-alt);flex-shrink:0}.browse-card.expanded .browse-card-thumb{width:var(--component-browse-thumb-size-expanded);height:var(--component-browse-thumb-size-expanded)}.browse-card-body{flex:1;min-width:0}.browse-card:hover{background:var(--white-o08);border-color:var(--accent-o40);transform:translateY(-1px)}.browse-card.expanded{background:var(--white-o08);border-color:var(--accent-o50);grid-column:1/-1;transform:none}.browse-card-header{justify-content:space-between;align-items:flex-start;gap:calc(.5rem * var(--ui-scale));margin-bottom:calc(.4rem * var(--ui-scale));display:flex}.browse-card-title{font-size:var(--component-browse-title-size);font-weight:var(--component-browse-title-weight);color:var(--color-text);-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;line-height:1.3;display:-webkit-box;overflow:hidden}.browse-card.expanded .browse-card-title{-webkit-line-clamp:unset;display:block}.browse-card-details{display:none}.browse-card.expanded .browse-card-details{margin-top:calc(.6rem * var(--ui-scale));border-top:1px solid var(--white-o08);padding-top:calc(.6rem * var(--ui-scale));display:block}.browse-card-full-desc{font-size:calc(.72rem * var(--ui-scale));color:var(--color-text-secondary);margin-bottom:calc(.6rem * var(--ui-scale));line-height:1.55}.browse-card-meta{font-size:calc(.65rem * var(--ui-scale));color:var(--color-text-muted);margin-bottom:calc(.2rem * var(--ui-scale))}.browse-card-meta strong{color:#aaa}.browse-card-scrubber{margin-block:calc(.4rem * var(--ui-scale)) calc(.3rem * var(--ui-scale));font-size:calc(.6rem * var(--ui-scale));color:var(--color-text-muted)}.browse-card-scrubber-pure{font-size:calc(.65rem * var(--ui-scale))}.browse-card-scrubber-label{justify-content:space-between;align-items:baseline;margin-block-end:calc(.18rem * var(--ui-scale));display:flex}.browse-card-scrubber-count{color:#aaa;font-weight:600}.browse-card-scrubber-now{opacity:.85;font-style:italic}.browse-card-scrubber-track{block-size:.5rem;inline-size:100%;display:block;overflow:visible}.browse-card-scrubber-bar{fill:#ffffff1f}.browse-card-scrubber-dot{fill:#4da6ff}.browse-card-scrubber-dot-outside{fill:#4da6ff73}.browse-card-scrubber-ends{font-size:calc(.55rem * var(--ui-scale));opacity:.7;justify-content:space-between;margin-block-start:calc(.18rem * var(--ui-scale));display:flex}.browse-card-keywords{gap:calc(.2rem * var(--ui-scale));margin:calc(.5rem * var(--ui-scale)) 0;flex-wrap:wrap;display:flex}.browse-card-keyword{font-size:var(--component-browse-keyword-size);background:var(--accent-o12);color:var(--color-accent-hover);padding:calc(.12rem * var(--ui-scale)) calc(.35rem * var(--ui-scale));border-radius:var(--component-browse-keyword-radius);cursor:pointer;transition:background .15s,color .15s}.browse-card-keyword:hover{background:var(--accent-o25);color:var(--color-text)}.browse-card-load{border-radius:calc(4px * var(--ui-scale));flex-shrink:0;line-height:1;padding:calc(.2rem * var(--ui-scale)) calc(.55rem * var(--ui-scale))!important;font-size:calc(.65rem * var(--ui-scale))!important}.browse-card-type{font-size:calc(.6rem * var(--ui-scale));padding:calc(.15rem * var(--ui-scale)) calc(.4rem * var(--ui-scale));border-radius:calc(3px * var(--ui-scale));letter-spacing:.03em;flex-shrink:0;font-weight:600}.browse-card-type.video{background:var(--accent-o15);color:var(--color-accent);border:1px solid var(--accent-o30)}.browse-card-type.image{color:var(--color-success-soft);background:#64c8641f;border:1px solid #64c86440}.browse-card-cats{gap:calc(.2rem * var(--ui-scale));margin-bottom:calc(.35rem * var(--ui-scale));flex-wrap:wrap;display:flex}.browse-card-cat{font-size:calc(.6rem * var(--ui-scale));color:var(--color-text-muted);background:var(--color-surface);padding:calc(.1rem * var(--ui-scale)) calc(.35rem * var(--ui-scale));border-radius:calc(3px * var(--ui-scale))}.browse-card-desc{font-size:var(--component-browse-desc-size);color:var(--color-text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;line-height:1.4;display:-webkit-box;overflow:hidden}.browse-no-results{text-align:center;color:var(--color-text-muted);font-size:calc(.85rem * var(--ui-scale));padding:calc(3rem * var(--ui-scale)) 0;grid-column:1/-1}.browse-docent-hint{margin-top:calc(.6rem * var(--ui-scale));color:var(--color-accent);font-size:calc(.75rem * var(--ui-scale));cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline;display:inline-block}@media (width<=600px) and (orientation:portrait){#browse-overlay{inset-inline:0;width:var(--component-browse-panel-width);height:auto;max-height:var(--component-browse-panel-max-height);border-inline-start:none;border-top:1px solid var(--white-o08);border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding-bottom:env(safe-area-inset-bottom,0px);bottom:0;top:auto!important}#browse-overlay.collapsed{transform:translateY(100%)}#browse-grid{max-height:calc(70vh - calc(10rem * var(--ui-scale)));overflow-y:auto}}body.catalog-empty #map-grid{visibility:hidden}body.catalog-empty #browse-overlay{background:var(--color-bg,#0a0a0a);-webkit-backdrop-filter:none;border-inline-start:none;width:100%;inset-inline:0}@media (width>=769px){body.catalog-empty #browse-filter-rail{column-gap:calc(1.5rem * var(--ui-scale));row-gap:calc(.5rem * var(--ui-scale));grid-template-columns:repeat(2,minmax(0,1fr));display:grid}body.catalog-empty .browse-filter-clear-wrap{grid-column:1/-1}}body.catalog-empty #browse-close,body.catalog-empty #home-btn,body.catalog-empty #map-controls{display:none}@media (width<=600px) and (orientation:portrait){body.catalog-empty #browse-overlay{border-top:none;border-radius:0;height:100vh;max-height:100vh;bottom:0;top:0!important}body.catalog-empty #browse-grid{max-height:none}body.catalog-empty #browse-header .browse-title{display:none}body.catalog-empty #browse-header{padding-top:calc(2.5rem * var(--ui-scale))}}.catalog-tabs{top:calc(1rem * var(--ui-scale));z-index:600;padding:calc(.25rem * var(--ui-scale));background:var(--glass-bg-light);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--white-o12);border-radius:calc(999px * var(--ui-scale));pointer-events:auto;gap:0;display:inline-flex;position:fixed;left:50%;transform:translate(-50%)}.catalog-tabs.hidden{display:none}.catalog-tab{appearance:none;color:var(--color-text-secondary);font-size:calc(.8rem * var(--ui-scale));letter-spacing:.03em;padding:calc(.4rem * var(--ui-scale)) calc(1rem * var(--ui-scale));border-radius:calc(999px * var(--ui-scale));cursor:pointer;min-height:calc(36px * var(--ui-scale));min-width:calc(80px * var(--ui-scale));background:0 0;border:none;font-weight:500;transition:background .15s,color .15s}.catalog-tab:hover,.catalog-tab:focus-visible{color:var(--color-text);background:var(--white-o08);outline:none}.catalog-tab.active{background:var(--color-accent,var(--white-o15));color:var(--color-bg,#0a0a0a)}.catalog-tab.active:hover,.catalog-tab.active:focus-visible{background:var(--color-accent,var(--white-o15));color:var(--color-bg,#0a0a0a);filter:brightness(1.1)}@media (width<=600px) and (orientation:portrait){.catalog-tabs{top:calc(.5rem * var(--ui-scale))}.catalog-tab{font-size:calc(.7rem * var(--ui-scale));padding:calc(.35rem * var(--ui-scale)) calc(.75rem * var(--ui-scale));min-width:calc(64px * var(--ui-scale))}}.browse-continue{margin-block-end:calc(1rem * var(--ui-scale))}.browse-continue-heading{margin:0 0 calc(.5rem * var(--ui-scale));font-size:calc(.8rem * var(--ui-scale));letter-spacing:.02em;text-transform:uppercase;color:var(--color-text-secondary);font-weight:600}.browse-continue-row{gap:calc(.6rem * var(--ui-scale));padding-block-end:calc(.25rem * var(--ui-scale));display:flex;overflow-x:auto}.browse-continue-card{align-items:center;gap:calc(.5rem * var(--ui-scale));max-inline-size:calc(220px * var(--ui-scale));padding:calc(.45rem * var(--ui-scale)) calc(.7rem * var(--ui-scale));background:var(--color-surface-alt);border:1px solid var(--white-o08);border-radius:calc(8px * var(--ui-scale));color:var(--color-text);cursor:pointer;text-align:start;min-height:max(44px, calc(44px * var(--ui-scale)));flex:none;transition:background .15s,border-color .15s,transform .1s;display:flex}.browse-continue-card:hover,.browse-continue-card:focus-visible{background:var(--white-o15);border-color:var(--white-o30)}.browse-continue-card-thumb{inline-size:calc(32px * var(--ui-scale));block-size:calc(32px * var(--ui-scale));border-radius:calc(4px * var(--ui-scale));object-fit:cover;background:var(--color-surface-alt);flex-shrink:0}.browse-continue-card-title{text-overflow:ellipsis;white-space:nowrap;font-size:calc(.8rem * var(--ui-scale));overflow:hidden}.tools-menu-browse{position:relative}.browse-new-badge{min-inline-size:calc(16px * var(--ui-scale));block-size:calc(16px * var(--ui-scale));padding-inline:calc(4px * var(--ui-scale));border-radius:calc(8px * var(--ui-scale));background:var(--color-accent);color:#fff;font-size:calc(.65rem * var(--ui-scale));pointer-events:none;justify-content:center;align-items:center;font-weight:700;line-height:1;display:inline-flex;position:absolute;inset-block-start:calc(-4px * var(--ui-scale));inset-inline-end:calc(-4px * var(--ui-scale))}.hero-panel{z-index:700;margin-block-end:calc(1rem * var(--ui-scale));position:relative}.hero-panel.hidden{display:none}.hero-panel-inner{position:relative}.hero-panel-card{align-items:stretch;gap:calc(.85rem * var(--ui-scale));inline-size:100%;padding:calc(.85rem * var(--ui-scale));background:linear-gradient(135deg, var(--white-o15), var(--white-o08));border:1px solid var(--white-o15);border-radius:calc(12px * var(--ui-scale));color:var(--color-text);cursor:pointer;text-align:start;min-height:max(64px, calc(64px * var(--ui-scale)));transition:background .15s,border-color .15s,transform .1s;display:flex}.hero-panel-card:hover,.hero-panel-card:focus-visible{border-color:var(--white-o30);transform:translateY(-1px)}.hero-panel-thumb{inline-size:calc(72px * var(--ui-scale));block-size:calc(72px * var(--ui-scale));border-radius:calc(8px * var(--ui-scale));object-fit:cover;background:var(--color-surface-alt);flex-shrink:0}.hero-panel-text{justify-content:center;gap:calc(.2rem * var(--ui-scale));flex-direction:column;min-inline-size:0;display:flex}.hero-panel-eyebrow{font-size:calc(.68rem * var(--ui-scale));letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent);font-weight:700}.hero-panel-title{font-size:calc(1.05rem * var(--ui-scale));text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.hero-panel-badge{font-size:calc(.65rem * var(--ui-scale));color:var(--color-text-secondary);padding:calc(.1rem * var(--ui-scale)) calc(.45rem * var(--ui-scale));border:1px solid var(--white-o15);border-radius:calc(999px * var(--ui-scale));align-self:start;font-weight:600}.hero-panel-dismiss{z-index:1;inline-size:calc(24px * var(--ui-scale));block-size:calc(24px * var(--ui-scale));background:var(--white-o08);border:1px solid var(--white-o08);color:var(--color-text-secondary);font-size:calc(.7rem * var(--ui-scale));cursor:pointer;border-radius:50%;justify-content:center;align-items:center;line-height:1;transition:background .15s,color .15s;display:inline-flex;position:absolute;inset-block-start:calc(.4rem * var(--ui-scale));inset-inline-end:calc(.4rem * var(--ui-scale))}.hero-panel-dismiss:hover,.hero-panel-dismiss:focus-visible{background:var(--white-o15);color:var(--color-text)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{top:-100%;z-index:10000;padding:calc(.5rem * var(--ui-scale)) calc(1rem * var(--ui-scale));background:var(--color-accent-dark);color:var(--color-text);border-radius:0 0 calc(6px * var(--ui-scale)) calc(6px * var(--ui-scale));font-size:calc(.875rem * var(--ui-scale));text-decoration:none;transition:top .2s;position:absolute;inset-inline-start:calc(1rem * var(--ui-scale))}.skip-link:focus{top:0}:focus-visible{outline:2px solid var(--accent-o70);outline-offset:2px;box-shadow:0 0 8px var(--accent-o40)}.transport-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px;box-shadow:0 0 12px var(--accent-o50)}.browse-card:focus-visible{box-shadow:0 0 12px var(--accent-o40);border-color:#4da6ff99;outline:none}.browse-chip:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}#caption-overlay{bottom:calc(5.5rem * var(--ui-scale));text-align:center;max-width:80%;font-size:clamp(calc(1rem * var(--ui-scale)), 1.8vw, calc(1.4rem * var(--ui-scale)));color:#fff;text-shadow:0 1px 3px #000000e6,0 0 10px #000c;padding:calc(.35rem * var(--ui-scale)) calc(.9rem * var(--ui-scale));border-radius:calc(4px * var(--ui-scale));pointer-events:none;white-space:pre-line;background:#000000d9;font-weight:500;line-height:1.45;display:none;position:absolute;left:50%;transform:translate(-50%)}@media (width<=768px){#browse-overlay{border-inline-start:none;width:100%}#browse-inner{padding:calc(1rem * var(--ui-scale)) calc(1rem * var(--ui-scale)) 0}#browse-header{margin-bottom:calc(.75rem * var(--ui-scale))}.browse-title{font-size:calc(1.1rem * var(--ui-scale))}.browse-subtitle{display:none}.browse-search-wrap{margin-bottom:calc(.5rem * var(--ui-scale))}.browse-chip-row,.browse-toggle-row{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 .5rem calc(100% - 1rem),#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 .5rem calc(100% - 1rem),#0000 100%)}.browse-chip-row::-webkit-scrollbar{display:none}.browse-toggle-row::-webkit-scrollbar{display:none}.browse-toggle-chip{padding:calc(.3rem * var(--ui-scale)) calc(.65rem * var(--ui-scale))}#browse-toolbar{margin-bottom:calc(.35rem * var(--ui-scale));flex-wrap:wrap}#browse-grid{gap:calc(.5rem * var(--ui-scale));grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.browse-card{padding:calc(.625rem * var(--ui-scale))}}@media (width<=600px) and (orientation:portrait){.browse-card-header{gap:calc(.35rem * var(--ui-scale));flex-direction:column}.browse-card-title{-webkit-line-clamp:3}.browse-card-load{align-self:flex-start}}.browse-card-download{border-radius:calc(4px * var(--ui-scale));color:var(--color-success-soft);cursor:pointer;background:#64c8641f;border:1px solid #64c86440;flex-shrink:0;line-height:1;transition:background .15s;padding:calc(.2rem * var(--ui-scale)) calc(.45rem * var(--ui-scale))!important;font-size:calc(.6rem * var(--ui-scale))!important}.browse-card-download:hover{background:#64c86440}.browse-card-download.downloaded{color:#5a5;cursor:default;background:#64c86414;border-color:#64c86426}.browse-card-download.downloading{color:#aaa;cursor:default;animation:1.5s ease-in-out infinite pulse-download}@keyframes pulse-download{0%,to{opacity:.6}50%{opacity:1}}#download-manager{bottom:calc(5.5rem * var(--ui-scale));width:calc(320px * var(--ui-scale));max-height:calc(400px * var(--ui-scale));-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--white-o08);border-radius:calc(10px * var(--ui-scale));padding:calc(.75rem * var(--ui-scale));z-index:50;pointer-events:auto;background:#0f0f14eb;position:absolute;inset-inline-end:calc(.75rem * var(--ui-scale));overflow-y:auto}#download-manager.hidden{display:none}.dl-mgr-title{font-size:calc(.75rem * var(--ui-scale));color:#ccc;margin-bottom:calc(.5rem * var(--ui-scale));justify-content:space-between;align-items:center;font-weight:600;display:flex}.dl-mgr-size{font-size:calc(.6rem * var(--ui-scale));color:var(--color-text-dim);font-weight:400}.dl-mgr-empty{font-size:calc(.65rem * var(--ui-scale));color:var(--color-text-faint);text-align:center;padding:calc(1rem * var(--ui-scale)) 0}.dl-mgr-item{align-items:center;gap:calc(.5rem * var(--ui-scale));padding:calc(.4rem * var(--ui-scale)) 0;border-bottom:1px solid var(--white-o05);display:flex}.dl-mgr-item:last-child{border-bottom:none}.dl-mgr-thumb{width:calc(36px * var(--ui-scale));height:calc(36px * var(--ui-scale));border-radius:calc(4px * var(--ui-scale));object-fit:cover;flex-shrink:0}.dl-mgr-info{flex:1;min-width:0}.dl-mgr-name{font-size:calc(.65rem * var(--ui-scale));color:#ddd;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dl-mgr-meta{font-size:calc(.55rem * var(--ui-scale));color:var(--color-text-dim)}.dl-mgr-progress{width:100%;height:calc(3px * var(--ui-scale));background:var(--white-o10);border-radius:calc(2px * var(--ui-scale));margin-top:calc(.2rem * var(--ui-scale))}.dl-mgr-progress-bar{background:var(--color-accent);border-radius:calc(2px * var(--ui-scale));height:100%;transition:width .3s}.dl-mgr-delete{color:var(--color-text-faint);cursor:pointer;font-size:calc(.8rem * var(--ui-scale));padding:calc(.2rem * var(--ui-scale));background:0 0;border:none;flex-shrink:0;line-height:1}.dl-mgr-delete:hover{color:#e55}#playlist-manager{bottom:calc(5.5rem * var(--ui-scale));width:calc(360px * var(--ui-scale));max-height:70vh;-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--white-o08);border-radius:calc(10px * var(--ui-scale));padding:calc(.75rem * var(--ui-scale));z-index:1000;pointer-events:auto;color:#ddd;font-size:calc(.7rem * var(--ui-scale));background:#0f0f14f0;position:fixed;inset-inline-end:calc(.75rem * var(--ui-scale));overflow-y:auto}#playlist-manager.hidden{display:none}.pl-mgr-header{justify-content:space-between;align-items:center;margin-block-end:calc(.4rem * var(--ui-scale));display:flex}.pl-mgr-title{font-size:calc(.8rem * var(--ui-scale));color:#eee;font-weight:600}.pl-mgr-close{color:var(--color-text-faint);cursor:pointer;font-size:calc(.85rem * var(--ui-scale));padding:calc(.2rem * var(--ui-scale));background:0 0;border:none;line-height:1}.pl-mgr-close:hover{color:#fff}.pl-mgr-warning{font-size:calc(.55rem * var(--ui-scale));color:var(--color-text-dim);margin-block:0 calc(.5rem * var(--ui-scale));line-height:1.4}.pl-mgr-actions{gap:calc(.4rem * var(--ui-scale));flex-wrap:wrap;margin-block-end:calc(.6rem * var(--ui-scale));display:flex}.pl-mgr-btn{padding:calc(.3rem * var(--ui-scale)) calc(.55rem * var(--ui-scale));font-size:calc(.6rem * var(--ui-scale));background:var(--color-accent,#4a8);border:1px solid var(--white-o08);color:#fff;border-radius:calc(4px * var(--ui-scale));cursor:pointer;line-height:1}.pl-mgr-btn:hover{filter:brightness(1.1)}.pl-mgr-btn:disabled{opacity:.4;cursor:not-allowed}.pl-mgr-btn-secondary{background:var(--white-o05);color:#ccc}.pl-mgr-empty{font-size:calc(.65rem * var(--ui-scale));color:var(--color-text-faint);text-align:center;padding:calc(1.2rem * var(--ui-scale)) 0}.pl-mgr-search{margin-block-end:calc(.5rem * var(--ui-scale))}.pl-mgr-search-input{background:var(--white-o05);border:1px solid var(--white-o08);color:#ddd;width:100%;padding:calc(.35rem * var(--ui-scale)) calc(.55rem * var(--ui-scale));border-radius:calc(5px * var(--ui-scale));font-size:calc(.65rem * var(--ui-scale));box-sizing:border-box;line-height:1.2}.pl-mgr-search-input::placeholder{color:var(--color-text-faint)}.pl-mgr-search-input:focus-visible{outline:2px solid var(--color-accent,#4a8);outline-offset:0;border-color:#0000}.pl-mgr-list{margin:0;padding:0;list-style:none}.pl-mgr-row{border-top:1px solid var(--white-o05);padding-block:calc(.5rem * var(--ui-scale))}.pl-mgr-row.active{background:#64c8640a}.pl-mgr-row:first-child{border-top:none}.pl-mgr-row-header{align-items:center;gap:calc(.4rem * var(--ui-scale));margin-block-end:calc(.3rem * var(--ui-scale));display:flex}.pl-mgr-row-play{background:var(--color-accent,#4a8);color:#fff;font-size:calc(.7rem * var(--ui-scale));cursor:pointer;padding:calc(.2rem * var(--ui-scale)) calc(.4rem * var(--ui-scale));border-radius:calc(3px * var(--ui-scale));border:none;flex-shrink:0;line-height:1}.pl-mgr-row-play:hover{filter:brightness(1.1)}.pl-mgr-row-play:disabled{opacity:.4;cursor:not-allowed}.pl-mgr-row-play.active{background:#c44}.pl-mgr-row-toggle{align-items:center;gap:calc(.35rem * var(--ui-scale));text-align:start;color:#eee;min-width:0;font-size:calc(.72rem * var(--ui-scale));cursor:pointer;padding:calc(.2rem * var(--ui-scale));border-radius:calc(3px * var(--ui-scale));background:0 0;border:none;flex:1;font-weight:500;display:inline-flex}.pl-mgr-row-toggle:hover{background:var(--white-o05)}.pl-mgr-row-chevron{color:var(--color-text-faint);font-size:calc(.6rem * var(--ui-scale));flex-shrink:0;line-height:1}.pl-mgr-row-name-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.pl-mgr-row-rename{color:var(--color-text-faint);cursor:pointer;font-size:calc(.7rem * var(--ui-scale));padding:calc(.2rem * var(--ui-scale));background:0 0;border:none;flex-shrink:0;line-height:1}.pl-mgr-row-rename:hover{color:#fff}.pl-mgr-row-count{font-size:calc(.55rem * var(--ui-scale));color:var(--color-text-dim);white-space:nowrap}.pl-mgr-row-delete{color:var(--color-text-faint);cursor:pointer;font-size:calc(.75rem * var(--ui-scale));padding:calc(.2rem * var(--ui-scale));background:0 0;border:none;flex-shrink:0;line-height:1}.pl-mgr-row-delete:hover{color:#e55}.pl-mgr-entries{margin:0;padding-inline-start:calc(.5rem * var(--ui-scale));list-style:none}.pl-mgr-entry{align-items:center;gap:calc(.3rem * var(--ui-scale));padding-block:calc(.2rem * var(--ui-scale));font-size:calc(.6rem * var(--ui-scale));display:flex}.pl-mgr-entry-title{text-overflow:ellipsis;white-space:nowrap;color:#ccc;flex:1;overflow:hidden}.pl-mgr-entry-duration-field{align-items:center;gap:calc(.25rem * var(--ui-scale));color:var(--color-text-dim);font-size:calc(.55rem * var(--ui-scale));letter-spacing:.01em;flex-shrink:0;line-height:1;display:inline-flex}.pl-mgr-entry-duration-prefix,.pl-mgr-entry-duration-suffix{white-space:nowrap}.pl-mgr-entry-duration{width:calc(40px * var(--ui-scale));background:var(--white-o05);border:1px solid var(--white-o08);color:#ddd;padding:calc(.15rem * var(--ui-scale)) calc(.25rem * var(--ui-scale));border-radius:calc(3px * var(--ui-scale));font-size:calc(.55rem * var(--ui-scale));font-variant-numeric:tabular-nums;text-align:end}.pl-mgr-entry-move,.pl-mgr-entry-remove{color:var(--color-text-faint);cursor:pointer;font-size:calc(.55rem * var(--ui-scale));padding:calc(.15rem * var(--ui-scale));background:0 0;border:none;flex-shrink:0;line-height:1}.pl-mgr-entry-move:hover,.pl-mgr-entry-remove:hover{color:#fff}.pl-mgr-entry-move:disabled{opacity:.3;cursor:not-allowed}.pl-mgr-entry-remove:hover{color:#e55}.pl-mgr-entry-empty{font-size:calc(.55rem * var(--ui-scale));color:var(--color-text-faint);padding-block:calc(.3rem * var(--ui-scale));list-style:none}.pl-mgr-row-loop,.pl-mgr-entry-pause{height:calc(20px * var(--ui-scale));padding-inline:calc(.3rem * var(--ui-scale));border-radius:calc(3px * var(--ui-scale));color:var(--color-text-faint);border:1px solid var(--white-o08);cursor:pointer;font-size:calc(.55rem * var(--ui-scale));justify-content:center;align-items:center;gap:calc(.2rem * var(--ui-scale));flex-shrink:0;line-height:1;display:inline-flex}.pl-mgr-row-loop>span:first-of-type,.pl-mgr-entry-pause>span:first-of-type{font-size:calc(.7rem * var(--ui-scale))}.pl-mgr-toggle-label{font-size:calc(.55rem * var(--ui-scale));letter-spacing:.01em;line-height:1}.pl-mgr-row-loop:hover,.pl-mgr-entry-pause:hover{color:#fff;background:var(--white-o05)}.pl-mgr-row-loop-input,.pl-mgr-entry-pause-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}:is(.pl-mgr-row-loop:has(.pl-mgr-row-loop-input:checked),.pl-mgr-entry-pause:has(.pl-mgr-entry-pause-input:checked)){color:var(--color-accent,#4a8);background:#64c8641f}:is(.pl-mgr-row-loop:has(.pl-mgr-row-loop-input:focus-visible),.pl-mgr-entry-pause:has(.pl-mgr-entry-pause-input:focus-visible)){outline:2px solid var(--color-accent,#4a8);outline-offset:1px}#playlist-continue-prompt{bottom:calc(6.5rem * var(--ui-scale));align-items:center;gap:calc(.45rem * var(--ui-scale));padding:calc(.55rem * var(--ui-scale)) calc(.95rem * var(--ui-scale));background:var(--color-accent,#4a8);color:#fff;border-radius:calc(999px * var(--ui-scale));font-size:calc(.8rem * var(--ui-scale));cursor:pointer;z-index:60;pointer-events:auto;box-shadow:0 calc(4px * var(--ui-scale)) calc(20px * var(--ui-scale)) #0006;border:1px solid #ffffff26;font-weight:600;animation:2s ease-in-out infinite pl-continue-pulse;display:inline-flex;position:fixed;inset-inline-start:50%;transform:translate(-50%)}#playlist-continue-prompt.hidden{display:none}#playlist-continue-prompt:hover{filter:brightness(1.15)}:root[dir=rtl] #playlist-continue-prompt{transform:translate(50%)}.pl-continue-icon{font-size:calc(1rem * var(--ui-scale));line-height:1}.pl-continue-label{line-height:1}@keyframes pl-continue-pulse{0%,to{box-shadow:0 calc(4px * var(--ui-scale)) calc(20px * var(--ui-scale)) #0006}50%{box-shadow:0 calc(4px * var(--ui-scale)) calc(20px * var(--ui-scale)) #0006, 0 0 0 calc(8px * var(--ui-scale)) #64c8642e}}@media (prefers-reduced-motion:reduce){#playlist-continue-prompt{animation:none}}#playlist-add-popover{width:calc(220px * var(--ui-scale));max-height:calc(280px * var(--ui-scale));-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--white-o08);border-radius:calc(8px * var(--ui-scale));padding:calc(.4rem * var(--ui-scale));z-index:1100;pointer-events:auto;color:#ddd;font-size:calc(.65rem * var(--ui-scale));background:#0f0f14f5;position:fixed;overflow-y:auto}#playlist-add-popover.hidden{display:none}.pl-add-header{border-block-end:1px solid var(--white-o05);justify-content:space-between;align-items:center;margin-block-end:calc(.3rem * var(--ui-scale));padding-block-end:calc(.3rem * var(--ui-scale));display:flex}.pl-add-title{font-size:calc(.7rem * var(--ui-scale));font-weight:600}.pl-add-close{color:var(--color-text-faint);cursor:pointer;font-size:calc(.7rem * var(--ui-scale));background:0 0;border:none;line-height:1}.pl-add-list{margin:0;padding:0;list-style:none}.pl-add-option{text-align:start;color:#ddd;width:100%;padding:calc(.3rem * var(--ui-scale)) calc(.4rem * var(--ui-scale));cursor:pointer;border-radius:calc(4px * var(--ui-scale));justify-content:space-between;align-items:center;gap:calc(.4rem * var(--ui-scale));font-size:calc(.65rem * var(--ui-scale));background:0 0;border:none;display:flex}.pl-add-option:hover{background:var(--white-o05)}.pl-add-option-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.pl-add-option-check{color:var(--color-success-soft)}.pl-add-empty{font-size:calc(.6rem * var(--ui-scale));color:var(--color-text-faint);padding-block:calc(.4rem * var(--ui-scale));text-align:center;list-style:none}.pl-add-new{width:100%;padding:calc(.35rem * var(--ui-scale));background:var(--white-o05);border:1px solid var(--white-o08);color:#ddd;border-radius:calc(4px * var(--ui-scale));cursor:pointer;font-size:calc(.6rem * var(--ui-scale));margin-block-start:calc(.3rem * var(--ui-scale))}.pl-add-new:hover{background:var(--white-o08)}.add-to-playlist-btn{background:var(--white-o05);border:1px solid var(--white-o08);color:#ccc;padding:calc(.2rem * var(--ui-scale)) calc(.45rem * var(--ui-scale));border-radius:calc(4px * var(--ui-scale));font-size:calc(.6rem * var(--ui-scale));cursor:pointer;flex-shrink:0;line-height:1}.add-to-playlist-btn:hover{background:var(--white-o08);color:#fff}#zip-download-dialog{bottom:calc(5.5rem * var(--ui-scale));width:calc(360px * var(--ui-scale));max-width:calc(100vw - 1.5rem);max-height:70vh;-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--white-o08);border-radius:calc(10px * var(--ui-scale));padding:calc(.75rem * var(--ui-scale));z-index:1200;pointer-events:auto;color:#ddd;font-size:calc(.7rem * var(--ui-scale));background:#0f0f14f0;position:fixed;inset-inline-end:calc(.75rem * var(--ui-scale));overflow-y:auto}#zip-download-dialog.hidden{display:none}.zip-dl-header{justify-content:space-between;align-items:center;margin-block-end:calc(.4rem * var(--ui-scale));display:flex}.zip-dl-title{font-size:calc(.8rem * var(--ui-scale));color:#eee;font-weight:600}.zip-dl-close{color:var(--color-text-faint);cursor:pointer;font-size:calc(.85rem * var(--ui-scale));padding:calc(.2rem * var(--ui-scale));background:0 0;border:none;line-height:1}.zip-dl-close:hover{color:#fff}.zip-dl-dataset{font-size:calc(.72rem * var(--ui-scale));color:#eee;margin-block:0 calc(.3rem * var(--ui-scale));font-weight:500;line-height:1.3}.zip-dl-source-note{font-size:calc(.55rem * var(--ui-scale));color:var(--color-text-dim);margin-block:0 calc(.55rem * var(--ui-scale));line-height:1.45}.zip-dl-loading{font-size:calc(.65rem * var(--ui-scale));color:var(--color-text-faint);text-align:center;padding:calc(1rem * var(--ui-scale)) 0}.zip-dl-assets{gap:calc(.25rem * var(--ui-scale));margin-block:calc(.5rem * var(--ui-scale));flex-direction:column;display:flex}.zip-dl-asset-row{align-items:center;gap:calc(.5rem * var(--ui-scale));padding-block:calc(.2rem * var(--ui-scale));padding-inline:calc(.3rem * var(--ui-scale));border-radius:calc(3px * var(--ui-scale));cursor:pointer;line-height:1.2;display:flex}.zip-dl-asset-row:hover{background:var(--white-o05)}.zip-dl-asset-row.disabled{opacity:.65;cursor:not-allowed}.zip-dl-asset-row input[type=checkbox]{cursor:pointer;accent-color:var(--color-accent,#4a8);flex-shrink:0}.zip-dl-asset-name{color:#eee;min-width:0;font-size:calc(.68rem * var(--ui-scale));text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.zip-dl-asset-size{color:var(--color-text-faint);font-size:calc(.55rem * var(--ui-scale));white-space:nowrap;flex-shrink:0}.zip-dl-size{font-size:calc(.65rem * var(--ui-scale));color:#ddd;margin-block:calc(.4rem * var(--ui-scale));text-align:end}.zip-dl-size.over-warn{color:#e6a04a}.zip-dl-size.over-cap{color:#e64a4a}.zip-dl-warning{font-size:calc(.6rem * var(--ui-scale));color:#e6a04a;padding:calc(.4rem * var(--ui-scale)) calc(.55rem * var(--ui-scale));border-radius:calc(3px * var(--ui-scale));background:#e6a04a14;border-inline-start:2px solid #e6a04a;margin-block-end:calc(.4rem * var(--ui-scale));line-height:1.4}.zip-dl-size.over-cap+.zip-dl-warning{color:#e64a4a;background:#e64a4a14;border-inline-start-color:#e64a4a}.zip-dl-error{font-size:calc(.65rem * var(--ui-scale));color:#e64a4a;padding:calc(.4rem * var(--ui-scale)) calc(.55rem * var(--ui-scale));border-radius:calc(3px * var(--ui-scale));margin-block:calc(.4rem * var(--ui-scale));background:#e64a4a14;border-inline-start:2px solid #e64a4a;line-height:1.4}.zip-dl-actions{justify-content:flex-end;gap:calc(.4rem * var(--ui-scale));margin-block-start:calc(.5rem * var(--ui-scale));display:flex}.zip-dl-btn-primary,.zip-dl-btn-secondary{padding:calc(.4rem * var(--ui-scale)) calc(.8rem * var(--ui-scale));font-size:calc(.65rem * var(--ui-scale));border:1px solid var(--white-o08);border-radius:calc(4px * var(--ui-scale));cursor:pointer;line-height:1}.zip-dl-btn-primary{background:var(--color-accent,#4a8);color:#fff}.zip-dl-btn-primary:hover:not(:disabled){filter:brightness(1.1)}.zip-dl-btn-primary:disabled{opacity:.4;cursor:not-allowed}.zip-dl-btn-secondary{background:var(--white-o05);color:#ccc}.zip-dl-btn-secondary:hover{background:var(--white-o08);color:#fff}.zip-dl-progress{margin-block:calc(.55rem * var(--ui-scale))}.zip-dl-progress-bar{width:100%;height:calc(.4rem * var(--ui-scale));background:var(--white-o05);border-radius:calc(2px * var(--ui-scale));overflow:hidden}.zip-dl-progress-fill{background:var(--color-accent,#4a8);height:100%;transition:width .15s linear}.zip-dl-progress-label{font-size:calc(.55rem * var(--ui-scale));color:var(--color-text-dim);text-align:center;margin-block-start:calc(.2rem * var(--ui-scale))}@media (width<=600px) and (orientation:portrait){#zip-download-dialog{bottom:calc(6.5rem * var(--ui-scale));width:auto;inset-inline-start:calc(.5rem * var(--ui-scale));inset-inline-end:calc(.5rem * var(--ui-scale))}}.browse-card-zip{border-radius:calc(4px * var(--ui-scale));background:var(--white-o05);color:#ccc;border:1px solid var(--white-o08);cursor:pointer;flex-shrink:0;line-height:1;transition:background .15s;padding:calc(.2rem * var(--ui-scale)) calc(.45rem * var(--ui-scale))!important;font-size:calc(.6rem * var(--ui-scale))!important}.browse-card-zip:hover{background:var(--white-o08);color:#fff}.info-zip-download{margin-block-start:calc(.35rem * var(--ui-scale))}#map-controls{bottom:calc(3.2rem * var(--ui-scale));gap:calc(.4rem * var(--ui-scale));pointer-events:auto;z-index:10;padding:0;display:flex;position:absolute;inset-inline-end:calc(.75rem * var(--ui-scale))}#map-controls.hidden{display:none}.tools-menu-btn{align-items:center;gap:calc(.3rem * var(--ui-scale));min-height:var(--component-tools-menu-btn-min-height);padding:calc(.35rem * var(--ui-scale)) calc(.7rem * var(--ui-scale));font:inherit;font-size:var(--component-tools-menu-btn-font-size);letter-spacing:.02em;color:#ccc;background:var(--glass-bg-light);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--white-o12);border-radius:var(--component-tools-menu-btn-radius);cursor:pointer;white-space:nowrap;font-weight:500;line-height:1;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.tools-menu-btn:hover{color:var(--color-text);background:#1e1e28f2;border-color:#4da6ff73}.tools-menu-btn[aria-expanded=true],.tools-menu-btn[aria-pressed=true]{background:var(--accent-o18);color:var(--color-accent);border-color:var(--color-accent)}.tools-menu-btn:focus-visible{outline:2px solid var(--accent-o70);outline-offset:2px;box-shadow:0 0 8px var(--accent-o40)}@keyframes tools-menu-pulse{0%{border-color:var(--accent-o70);box-shadow:0 0 #4da6ff8c}70%{box-shadow:0 0 0 12px var(--accent-o05);border-color:var(--accent-o70)}to{box-shadow:0 0 0 0 var(--accent-o05);border-color:var(--white-o12)}}.tools-menu-btn.pulse-attention{animation:1.2s ease-out 2 tools-menu-pulse}@media (prefers-reduced-motion:reduce){.tools-menu-btn.pulse-attention{animation:none}}.tools-menu-btn-icon{font-size:calc(.95rem * var(--ui-scale));line-height:1}.tools-menu-btn-label{font-size:calc(.72rem * var(--ui-scale))}.tools-menu-toggle{min-width:var(--component-tools-menu-toggle-min-width);padding:calc(.35rem * var(--ui-scale)) calc(.55rem * var(--ui-scale))}.tools-menu-popover{bottom:calc(100% + calc(.5rem * var(--ui-scale)));min-width:var(--component-tools-menu-popover-min-width);max-width:calc(100vw - calc(1.5rem * var(--ui-scale)));padding:calc(.75rem * var(--ui-scale));-webkit-backdrop-filter:blur(14px);border:1px solid var(--white-o12);border-radius:var(--component-tools-menu-popover-radius);color:#ddd;font-size:calc(.75rem * var(--ui-scale));z-index:11;background:#0d0d12f0;position:absolute;inset-inline-end:0;box-shadow:0 6px 32px #00000073}.tools-menu-popover.hidden{display:none}.tools-menu-popover-header{margin-bottom:calc(.5rem * var(--ui-scale));padding-bottom:calc(.4rem * var(--ui-scale));border-bottom:1px solid var(--white-o08);justify-content:space-between;align-items:center;display:flex}.tools-menu-popover-title{font-size:calc(.72rem * var(--ui-scale));letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary);font-weight:600}.tools-menu-close{min-width:calc(22px * var(--ui-scale));height:calc(22px * var(--ui-scale));font-size:calc(.85rem * var(--ui-scale));color:var(--color-text-muted);cursor:pointer;border-radius:calc(4px * var(--ui-scale));background:0 0;border:none;padding:0;line-height:1}.tools-menu-close:hover{color:var(--color-text);background:var(--white-o08)}.tools-menu-section{margin-bottom:calc(.75rem * var(--ui-scale))}.tools-menu-section:last-child{margin-bottom:0}.tools-menu-section-title{margin:0 0 calc(.35rem * var(--ui-scale));font-size:var(--component-tools-menu-section-title-size);font-weight:var(--component-tools-menu-section-title-weight);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-dim);padding:0}.tools-menu-item{align-items:center;gap:calc(.55rem * var(--ui-scale));width:100%;padding:calc(.5rem * var(--ui-scale)) calc(.6rem * var(--ui-scale));font:inherit;font-size:var(--component-tools-menu-item-font-size);color:#ddd;text-align:start;border-radius:var(--component-tools-menu-item-radius);cursor:pointer;background:0 0;border:1px solid #0000;transition:background .12s,color .12s,border-color .12s;display:flex}.tools-menu-item:hover{background:var(--color-surface);color:var(--color-text);border-color:var(--white-o08)}.tools-menu-item.active{color:var(--color-accent);background:var(--accent-o08);border-color:var(--accent-o35)}.tools-menu-item:focus-visible{outline:2px solid var(--accent-o70);outline-offset:2px}.tools-menu-item-check{width:calc(14px * var(--ui-scale));height:calc(14px * var(--ui-scale));border-radius:calc(3px * var(--ui-scale));border:1px solid #ffffff47;flex-shrink:0;display:inline-block;position:relative}.tools-menu-item.active .tools-menu-item-check{background:var(--color-accent);border-color:var(--color-accent)}.tools-menu-item.active .tools-menu-item-check:after{content:"✓";font-size:calc(.7rem * var(--ui-scale));color:var(--color-bg);font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#tools-menu-clear .tools-menu-item-check,#tools-menu-orbit-settings .tools-menu-item-check,#tools-menu-meet-orbit .tools-menu-item-check,#tools-menu-privacy .tools-menu-item-check{display:none}.tools-menu-item-link,.tools-menu-item-link:visited{color:#ddd;text-decoration:none}.tools-menu-item-link:hover{color:var(--color-text)}.tools-menu-subsep{height:1px;margin:calc(.35rem * var(--ui-scale)) calc(.4rem * var(--ui-scale));background:var(--white-o08)}.tools-menu-language-row{align-items:center;display:flex}.tools-menu-language-select{min-width:0;padding:calc(.4rem * var(--ui-scale)) calc(1.6rem * var(--ui-scale)) calc(.4rem * var(--ui-scale)) calc(.55rem * var(--ui-scale));font:inherit;font-size:calc(.78rem * var(--ui-scale));color:var(--color-text);background-color:var(--color-surface);border:1px solid var(--white-o12);border-radius:calc(4px * var(--ui-scale));cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23999'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right calc(.55rem * var(--ui-scale)) center;background-size:calc(10px * var(--ui-scale)) calc(6px * var(--ui-scale));flex:1}.tools-menu-language-select:focus{border-color:var(--accent-o50);outline:none}.tools-menu-language-select option{color:var(--color-text);background:#1a1a24}.tools-menu-uiscale-row{gap:calc(.25rem * var(--ui-scale));display:flex}.tools-menu-uiscale-btn{min-width:0;min-height:var(--component-tools-menu-layout-btn-min-height);padding:calc(.35rem * var(--ui-scale)) calc(.2rem * var(--ui-scale));font:inherit;font-size:calc(.72rem * var(--ui-scale));color:#ccc;background:var(--color-surface-alt);border:1px solid var(--white-o10);border-radius:var(--component-tools-menu-layout-btn-radius);cursor:pointer;white-space:normal;text-align:center;flex:1;line-height:1.15;transition:background .12s,color .12s,border-color .12s}.tools-menu-uiscale-btn:hover{background:var(--white-o10);color:var(--color-text);border-color:var(--accent-o40)}.tools-menu-uiscale-btn.active{color:var(--color-accent);border-color:var(--color-accent);background:var(--accent-o12)}.tools-menu-uiscale-btn:focus-visible{outline:2px solid var(--accent-o70);outline-offset:2px}.tools-menu-layout-row{gap:calc(.25rem * var(--ui-scale));display:flex}.tools-menu-layout-btn{min-width:0;min-height:var(--component-tools-menu-layout-btn-min-height);padding:calc(.35rem * var(--ui-scale)) calc(.2rem * var(--ui-scale));font:inherit;font-size:var(--component-tools-menu-layout-btn-font-size);color:#ccc;background:var(--color-surface-alt);border:1px solid var(--white-o10);border-radius:var(--component-tools-menu-layout-btn-radius);cursor:pointer;flex:1;line-height:1;transition:background .12s,color .12s,border-color .12s}.tools-menu-layout-btn:hover{background:var(--white-o10);color:var(--color-text);border-color:var(--accent-o40)}.tools-menu-layout-btn.active{color:var(--color-accent);border-color:var(--color-accent);background:var(--accent-o12)}.tools-menu-layout-btn:focus-visible{outline:2px solid var(--accent-o70);outline-offset:2px}@media (width<=768px){.tools-menu-btn{min-height:var(--component-tools-menu-btn-min-height);padding:calc(.4rem * var(--ui-scale)) calc(.8rem * var(--ui-scale));font-size:var(--component-tools-menu-btn-font-size)}.tools-menu-toggle{min-width:var(--component-tools-menu-toggle-min-width);padding:calc(.4rem * var(--ui-scale)) calc(.6rem * var(--ui-scale))}.tools-menu-popover{min-width:var(--component-tools-menu-popover-min-width)}.tools-menu-item{padding:calc(.6rem * var(--ui-scale)) calc(.7rem * var(--ui-scale));font-size:var(--component-tools-menu-item-font-size)}.tools-menu-layout-btn{min-height:var(--component-tools-menu-layout-btn-min-height);font-size:var(--component-tools-menu-layout-btn-font-size)}}@supports (padding-bottom:env(safe-area-inset-bottom)){#map-controls{bottom:calc(calc(3.2rem * var(--ui-scale)) + env(safe-area-inset-bottom))}}.chat-degraded-badge{margin:calc(.5rem * var(--ui-scale)) calc(.5rem * var(--ui-scale)) 0;padding:calc(.4rem * var(--ui-scale)) calc(.6rem * var(--ui-scale));font-size:calc(.75rem * var(--ui-scale));color:var(--white-o80,#fffc);background:var(--white-o06,#ffffff0f);border:1px solid var(--white-o12,#ffffff1f);border-radius:calc(6px * var(--ui-scale));border-inline-start:3px solid #f0a25b;line-height:1.3}#chat-trigger{bottom:calc(4rem * var(--ui-scale));pointer-events:auto;z-index:400;height:var(--component-chat-trigger-height);border-radius:calc(999px * var(--ui-scale));-webkit-backdrop-filter:var(--glass-blur);justify-content:center;align-items:center;gap:calc(.35rem * var(--ui-scale));cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;display:none;position:absolute;inset-inline-start:calc(.75rem * var(--ui-scale));background:var(--glass-bg)!important;border:1px solid var(--white-o12)!important;color:var(--color-text-secondary)!important;padding:0 calc(.9rem * var(--ui-scale)) 0 calc(.7rem * var(--ui-scale))!important}.chat-trigger-icon{font-size:calc(1.2rem * var(--ui-scale));line-height:1}.chat-trigger-label{font-size:calc(.75rem * var(--ui-scale));letter-spacing:.01em;font-weight:500}#chat-trigger.visible{display:flex}#chat-trigger.collapsed{width:var(--component-chat-trigger-width-collapsed);border-radius:50%;padding:0!important}#chat-trigger.collapsed .chat-trigger-label{display:none}#chat-trigger:hover{border-color:var(--accent-o40)!important;color:var(--color-accent)!important;background:#1e1e28f2!important}#chat-trigger.chat-trigger-active{box-shadow:0 0 12px var(--accent-o30);border-color:var(--color-accent)!important;color:var(--color-accent)!important}#chat-dataset-prompt{bottom:calc(8.25rem * var(--ui-scale));pointer-events:auto;z-index:400;background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--accent-o30);border-radius:calc(8px * var(--ui-scale));color:var(--color-accent-hover);font-size:calc(.72rem * var(--ui-scale));padding:calc(.45rem * var(--ui-scale)) calc(.7rem * var(--ui-scale));cursor:pointer;white-space:nowrap;max-width:calc(100vw - calc(1.5rem * var(--ui-scale)));animation:.25s ease-out chat-prompt-slide-in;position:absolute;inset-inline-start:calc(.75rem * var(--ui-scale))}#chat-dataset-prompt.hidden{display:none}@keyframes chat-prompt-slide-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes chat-trigger-pulse{0%{box-shadow:0 0 0 0 var(--accent-o50)}70%{box-shadow:0 0 0 8px var(--accent-o05)}to{box-shadow:0 0 0 0 var(--accent-o05)}}#chat-trigger.visible.pulse{animation:1.2s ease-out 2 chat-trigger-pulse}#chat-panel{bottom:calc(7.25rem * var(--ui-scale));width:var(--component-chat-panel-width);max-height:var(--component-chat-panel-max-height);pointer-events:auto;z-index:600;background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--white-o08);border-radius:var(--component-chat-panel-radius);flex-direction:column;display:flex;position:fixed;inset-inline-start:calc(.75rem * var(--ui-scale));overflow:hidden;box-shadow:0 8px 32px #0006}.chat-header{padding:calc(.6rem * var(--ui-scale)) calc(.75rem * var(--ui-scale));border-bottom:1px solid var(--color-surface);align-items:center;gap:calc(.4rem * var(--ui-scale));flex-shrink:0;display:flex}.chat-header-title{font-size:var(--component-chat-header-title-size);font-weight:var(--component-chat-header-title-weight);color:var(--color-text);letter-spacing:.04em;flex:1}.chat-header-subtitle{font-weight:400;font-size:calc(.65rem * var(--ui-scale));color:var(--color-text-faint);letter-spacing:.02em}.chat-header-btn{font-size:calc(.8rem * var(--ui-scale));cursor:pointer;border-radius:calc(4px * var(--ui-scale));min-width:auto;line-height:1;color:var(--color-text-muted)!important;padding:calc(.2rem * var(--ui-scale)) calc(.35rem * var(--ui-scale))!important;background:0 0!important;border:none!important}.chat-header-btn:hover{background:var(--white-o08)!important;color:var(--color-text)!important}#chat-messages{padding:calc(.75rem * var(--ui-scale));min-height:calc(80px * var(--ui-scale));flex:1;overflow-y:auto}.chat-msg{margin-bottom:calc(.6rem * var(--ui-scale));max-width:var(--component-chat-msg-max-width)}.chat-msg-user{margin-inline-start:auto}.chat-msg-docent{margin-inline-end:auto}.chat-msg-text{max-width:100%;padding:calc(.45rem * var(--ui-scale)) calc(.65rem * var(--ui-scale));border-radius:var(--component-chat-msg-radius);font-size:var(--component-chat-msg-font-size);line-height:var(--component-chat-msg-line-height);color:#e0e0e0;word-break:break-word;display:inline-block}.chat-msg-user .chat-msg-text{background:var(--accent-o18);border:1px solid var(--accent-o30);border-radius:calc(8px * var(--ui-scale)) calc(8px * var(--ui-scale)) calc(2px * var(--ui-scale)) calc(8px * var(--ui-scale))}.chat-msg-docent .chat-msg-text{background:var(--color-surface);border:1px solid var(--white-o08);border-radius:calc(8px * var(--ui-scale)) calc(8px * var(--ui-scale)) calc(8px * var(--ui-scale)) calc(2px * var(--ui-scale))}.chat-actions{gap:calc(.3rem * var(--ui-scale));margin-top:calc(.35rem * var(--ui-scale));flex-direction:column;display:flex}.chat-action-btn{align-items:center;gap:calc(.5rem * var(--ui-scale));text-align:start;border-radius:var(--component-chat-action-btn-radius);cursor:pointer;width:100%;transition:background .15s,border-color .15s;display:flex;background:var(--color-surface-alt)!important;border:1px solid var(--white-o08)!important;padding:calc(.4rem * var(--ui-scale)) calc(.55rem * var(--ui-scale))!important}.chat-action-inline{margin:calc(.25rem * var(--ui-scale)) 0}.chat-action-status{font-size:calc(.68rem * var(--ui-scale));color:#ffffff73;padding:calc(.15rem * var(--ui-scale)) calc(.4rem * var(--ui-scale));margin:calc(.15rem * var(--ui-scale)) 0;font-style:italic;display:block}.chat-action-status-err{color:#ffa064b3}.chat-action-loaded{cursor:default;opacity:.5}.chat-action-loaded .chat-action-load{color:#64c864cc}.chat-action-btn:hover{background:var(--white-o08)!important;border-color:var(--accent-o40)!important}.chat-action-title{font-size:var(--component-chat-action-title-size);font-weight:var(--component-chat-action-title-weight);color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.chat-action-load{font-size:calc(.58rem * var(--ui-scale));color:var(--color-accent);flex-shrink:0;font-weight:500}.chat-feedback{gap:calc(.3rem * var(--ui-scale));margin-top:calc(.2rem * var(--ui-scale));display:flex}.chat-feedback-btn{color:var(--white-o30);font-size:calc(.7rem * var(--ui-scale));cursor:pointer;padding:calc(.1rem * var(--ui-scale)) calc(.25rem * var(--ui-scale));border-radius:calc(4px * var(--ui-scale));background:0 0;border:none;line-height:1;transition:color .15s,background .15s}.chat-feedback-btn:hover{color:var(--white-o70);background:var(--white-o08)}.chat-feedback-btn.chat-feedback-rated{color:#4da6ffe6;background:var(--accent-o12);animation:.3s ease-out feedback-pop}.chat-feedback-btn.chat-feedback-success{color:#64c864e6;background:#64c8641f}.chat-feedback-btn.chat-feedback-disabled{opacity:.25;cursor:default}@keyframes feedback-pop{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.chat-feedback-expand{background:var(--color-surface-alt);border:1px solid var(--white-o08);border-radius:calc(8px * var(--ui-scale));padding:calc(.6rem * var(--ui-scale));margin:calc(.25rem * var(--ui-scale)) 0 calc(.4rem * var(--ui-scale)) 0;animation:.2s ease-out feedback-expand-in}@keyframes feedback-expand-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.chat-feedback-tags{gap:calc(.3rem * var(--ui-scale));margin-bottom:calc(.4rem * var(--ui-scale));flex-wrap:wrap;display:flex}.chat-feedback-tag{background:var(--color-surface);border:1px solid var(--white-o10);border-radius:calc(12px * var(--ui-scale));color:var(--white-o70);font-size:calc(.65rem * var(--ui-scale));padding:calc(.2rem * var(--ui-scale)) calc(.5rem * var(--ui-scale));cursor:pointer;font-family:inherit;line-height:1.3;transition:all .15s}.chat-feedback-tag:hover{border-color:var(--accent-o25);color:var(--color-accent-hover);background:#4da6ff1a}.chat-feedback-tag:focus-visible{outline:2px solid var(--accent-o50);outline-offset:1px}.chat-feedback-tag-selected,.chat-feedback-tag[aria-pressed=true]{background:var(--accent-o15);border-color:var(--accent-o50);color:var(--color-accent)}.chat-feedback-comment{width:100%;min-height:calc(38px * var(--ui-scale));max-height:calc(80px * var(--ui-scale));background:var(--white-o05);border:1px solid var(--white-o10);border-radius:calc(6px * var(--ui-scale));padding:calc(.35rem * var(--ui-scale)) calc(.5rem * var(--ui-scale));color:var(--color-text);font-size:calc(.7rem * var(--ui-scale));resize:vertical;font-family:inherit;line-height:1.4}.chat-feedback-comment:focus{border-color:var(--accent-o50);background:#ffffff12;outline:none}.chat-feedback-expand-actions{gap:calc(.4rem * var(--ui-scale));margin-top:calc(.35rem * var(--ui-scale));justify-content:flex-end;display:flex}.chat-feedback-send,.chat-feedback-dismiss{font-size:calc(.65rem * var(--ui-scale));padding:calc(.25rem * var(--ui-scale)) calc(.6rem * var(--ui-scale));border-radius:calc(5px * var(--ui-scale));cursor:pointer;border:none;font-family:inherit}.chat-feedback-send{background:var(--color-accent-dark);color:var(--color-text)}.chat-feedback-send:hover{background:var(--color-accent-darker)}.chat-feedback-send:disabled{opacity:.5;cursor:default}.chat-feedback-dismiss{background:var(--color-surface);color:#fff9}.chat-feedback-dismiss:hover{background:var(--white-o12)}.chat-feedback-sheet{bottom:0;z-index:10;-webkit-backdrop-filter:var(--glass-blur);border-top:1px solid var(--white-o10);border-radius:calc(12px * var(--ui-scale)) calc(12px * var(--ui-scale)) 0 0;padding:calc(.5rem * var(--ui-scale)) calc(.75rem * var(--ui-scale)) calc(.75rem * var(--ui-scale));background:#0d0d12f2;transition:transform .25s ease-out;position:absolute;inset-inline:0;transform:translateY(100%)}.chat-feedback-sheet-open{transform:translateY(0)}.chat-feedback-sheet-handle{width:calc(2rem * var(--ui-scale));height:calc(3px * var(--ui-scale));background:var(--white-o20);border-radius:calc(2px * var(--ui-scale));margin:0 auto calc(.5rem * var(--ui-scale))}.chat-typing{padding:calc(.3rem * var(--ui-scale)) calc(.75rem * var(--ui-scale));font-size:calc(.68rem * var(--ui-scale));color:var(--color-text-muted)}.chat-typing-dots{gap:calc(.2rem * var(--ui-scale));display:inline-flex}.chat-typing-dots span{width:calc(4px * var(--ui-scale));height:calc(4px * var(--ui-scale));background:#999;border-radius:50%;animation:1.2s ease-in-out infinite chat-dot-pulse}.chat-typing-dots span:nth-child(2){animation-delay:.15s}.chat-typing-dots span:nth-child(3){animation-delay:.3s}@keyframes chat-dot-pulse{0%,60%,to{opacity:.3;transform:scale(.8)}30%{opacity:1;transform:scale(1)}}.chat-input-wrap{gap:calc(.35rem * var(--ui-scale));padding:calc(.5rem * var(--ui-scale)) calc(.75rem * var(--ui-scale)) calc(.6rem * var(--ui-scale));border-top:1px solid var(--color-surface);flex-shrink:0;align-items:flex-end;display:flex}#chat-input{background:var(--color-surface);border:1px solid var(--white-o12);border-radius:var(--component-chat-input-radius);padding:calc(.45rem * var(--ui-scale)) calc(.65rem * var(--ui-scale));color:var(--color-text);font-size:var(--component-chat-input-font-size);resize:none;min-height:var(--component-chat-input-min-height);max-height:var(--component-chat-input-max-height);flex:1;font-family:inherit;line-height:1.4;overflow-y:auto}#chat-input::placeholder{color:var(--color-text-dim)}#chat-input:focus{border-color:var(--accent-o50);background:var(--white-o08);outline:none}#chat-send{border-radius:var(--component-chat-send-btn-radius);min-width:var(--component-chat-send-btn-min-size);min-height:var(--component-chat-send-btn-min-size);cursor:pointer;flex-shrink:0;padding:calc(.4rem * var(--ui-scale)) calc(.6rem * var(--ui-scale))!important;font-size:calc(.8rem * var(--ui-scale))!important;background:var(--color-accent-dark)!important;color:var(--color-text)!important;border:none!important}#chat-send:hover{background:var(--color-accent-darker)!important}#chat-send:disabled{opacity:.5;cursor:default}.chat-vision-btn{width:calc(32px * var(--ui-scale));height:calc(32px * var(--ui-scale));border-radius:calc(6px * var(--ui-scale));color:var(--color-text-dim);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;transition:color .2s,border-color .2s,background .2s;display:flex;border:1px solid var(--white-o15)!important;background:0 0!important;padding:0!important}.chat-vision-btn:hover{color:#ccc;border-color:var(--white-o30)!important}.chat-vision-btn[aria-pressed=true]{color:var(--color-accent);border-color:var(--accent-o50)!important;background:#4da6ff1a!important}.chat-vision-btn svg{pointer-events:none}.chat-vision-hint{padding:calc(.3rem * var(--ui-scale)) calc(.6rem * var(--ui-scale));font-size:calc(.6rem * var(--ui-scale));color:#9cc5ea;background:var(--accent-o08);border-top:1px solid var(--accent-o15);line-height:1.4;display:none}.chat-vision-hint.visible{display:block}.chat-vision-hint strong{color:#b8d9f2;font-weight:600}.chat-welcome{text-align:center;padding:calc(1.5rem * var(--ui-scale)) calc(1rem * var(--ui-scale));color:var(--color-text-secondary);font-size:calc(.73rem * var(--ui-scale));line-height:1.55}.chat-welcome-icon{font-size:calc(2rem * var(--ui-scale));margin-bottom:calc(.5rem * var(--ui-scale))}.chat-suggestions{gap:calc(.3rem * var(--ui-scale));margin-top:calc(.75rem * var(--ui-scale));flex-wrap:wrap;justify-content:center;display:flex}.chat-suggestion{border-radius:var(--component-chat-suggestion-radius);cursor:pointer;transition:background .15s;padding:calc(.3rem * var(--ui-scale)) calc(.65rem * var(--ui-scale))!important;font-size:var(--component-chat-suggestion-size)!important;background:var(--accent-o12)!important;border:1px solid var(--accent-o25)!important;color:var(--color-accent-hover)!important}.chat-suggestion:hover{color:var(--color-text)!important;background:#4da6ff38!important}.chat-welcome-hint{color:#777;font-size:calc(.68rem * var(--ui-scale));margin-top:calc(.35rem * var(--ui-scale));line-height:1.4}.chat-browse-link{width:100%;margin-top:calc(.5rem * var(--ui-scale));cursor:pointer;text-align:start;display:block;padding:calc(.35rem * var(--ui-scale)) 0!important;font-size:calc(.65rem * var(--ui-scale))!important;color:var(--color-accent)!important;background:0 0!important;border:none!important}.chat-browse-link:hover{text-decoration:underline}#chat-settings{padding:calc(.6rem * var(--ui-scale)) calc(.75rem * var(--ui-scale));border-bottom:1px solid var(--color-surface);font-size:calc(.68rem * var(--ui-scale))}.chat-settings-row{margin-bottom:calc(.4rem * var(--ui-scale))}.chat-settings-row label{color:var(--color-text-muted);font-size:calc(.6rem * var(--ui-scale));text-transform:uppercase;letter-spacing:.05em;margin-bottom:calc(.15rem * var(--ui-scale));display:block}.chat-settings-row input[type=text],.chat-settings-row input[type=password],.chat-settings-row select{background:var(--color-surface);border:1px solid var(--white-o12);border-radius:calc(4px * var(--ui-scale));width:100%;padding:calc(.35rem * var(--ui-scale)) calc(.5rem * var(--ui-scale));color:var(--color-text);font-size:calc(.7rem * var(--ui-scale));font-family:inherit}.chat-settings-row input:focus,.chat-settings-row select:focus{border-color:var(--accent-o50);outline:none}.chat-settings-row select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23999'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right calc(.5rem * var(--ui-scale)) center;padding-inline-end:calc(1.5rem * var(--ui-scale))}.chat-settings-row select option{color:var(--color-text);background:#1a1a24}.chat-settings-row select:disabled{opacity:.5;cursor:default}.chat-settings-check{align-items:center;gap:calc(.4rem * var(--ui-scale));color:var(--color-text-secondary);font-size:calc(.68rem * var(--ui-scale));display:flex}.chat-settings-check input[type=checkbox]{accent-color:var(--color-accent)}.chat-settings-actions{gap:calc(.3rem * var(--ui-scale));margin-top:calc(.5rem * var(--ui-scale));align-items:center;display:flex}.chat-settings-actions button{border-radius:calc(4px * var(--ui-scale));min-width:auto;padding:calc(.25rem * var(--ui-scale)) calc(.55rem * var(--ui-scale))!important;font-size:calc(.62rem * var(--ui-scale))!important}.chat-settings-status{font-size:calc(.62rem * var(--ui-scale));color:var(--color-text-muted);margin-inline-start:calc(.4rem * var(--ui-scale))}.chat-settings-status-ok{color:#4caf50}.chat-settings-status-err{color:#f44336}@media (width<=768px){#chat-panel{width:var(--component-chat-panel-width);max-height:var(--component-chat-panel-max-height);bottom:calc(.75rem * var(--ui-scale))}#chat-trigger.visible{width:var(--component-chat-trigger-width-collapsed);height:var(--component-chat-trigger-height);border-radius:50%;padding:0!important}#chat-trigger.visible .chat-trigger-label{display:none}.browse-chat-btn{width:max(40px, calc(40px * var(--ui-scale)));height:max(40px, calc(40px * var(--ui-scale)));font-size:calc(1.1rem * var(--ui-scale));inset-inline-end:calc(-3.25rem * var(--ui-scale))}.browse-search-wrap{margin-inline-end:calc(3.25rem * var(--ui-scale))}.chat-action-btn{padding:calc(.5rem * var(--ui-scale)) calc(.65rem * var(--ui-scale))!important}#chat-send{min-width:var(--component-chat-send-btn-min-size);min-height:var(--component-chat-send-btn-min-size)}}@media (width<=600px) and (orientation:portrait){#chat-panel{inset-inline:0;width:var(--component-chat-panel-width);max-height:var(--component-chat-panel-max-height);border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding-bottom:env(safe-area-inset-bottom,0px);border-bottom:none;bottom:0}#chat-input-area{padding-bottom:calc(.5rem * var(--ui-scale))}}@supports (padding-bottom:env(safe-area-inset-bottom)){#chat-trigger{bottom:calc(calc(4rem * var(--ui-scale)) + env(safe-area-inset-bottom))}#chat-dataset-prompt{bottom:calc(calc(8.25rem * var(--ui-scale)) + env(safe-area-inset-bottom))}#chat-panel{padding-bottom:env(safe-area-inset-bottom)}}#help-trigger{top:calc(.75rem * var(--ui-scale));z-index:600;align-items:center;gap:calc(.35rem * var(--ui-scale));padding:calc(.35rem * var(--ui-scale)) calc(.7rem * var(--ui-scale));background:var(--glass-bg-light);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--white-o08);border-radius:calc(18px * var(--ui-scale));color:var(--color-text-secondary);font-size:calc(.78rem * var(--ui-scale));letter-spacing:.03em;cursor:pointer;min-height:calc(36px * var(--ui-scale));pointer-events:auto;transition:color .15s,border-color .15s;display:inline-flex;position:fixed;inset-inline-end:calc(.75rem * var(--ui-scale))}#help-trigger:hover,#help-trigger:focus-visible{color:var(--color-text);border-color:var(--white-o20)}#help-trigger .help-trigger-icon{font-weight:600;font-size:calc(.95rem * var(--ui-scale));line-height:1}body.browse-open #help-trigger,body.tour-authoring-open #help-trigger{display:none}#help-trigger-browse{top:calc(.25rem * var(--ui-scale));width:calc(28px * var(--ui-scale));height:calc(28px * var(--ui-scale));background:var(--color-surface);border:1px solid var(--white-o12);color:var(--color-text-secondary);font-weight:600;font-size:calc(.85rem * var(--ui-scale));cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:color .15s,border-color .15s;display:inline-flex;position:absolute;inset-inline-end:0}#help-trigger-browse:hover,#help-trigger-browse:focus-visible{color:var(--color-text);border-color:#ffffff40}#browse-close{top:calc(.25rem * var(--ui-scale));width:calc(28px * var(--ui-scale));height:calc(28px * var(--ui-scale));background:var(--color-surface);border:1px solid var(--white-o12);color:var(--color-text-secondary);font-weight:600;font-size:calc(.85rem * var(--ui-scale));cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:color .15s,border-color .15s,background .15s;display:inline-flex;position:absolute;inset-inline-end:calc(2.25rem * var(--ui-scale))}#browse-close:hover,#browse-close:focus-visible{color:var(--color-text);background:var(--white-o12);border-color:#ffffff40}#help-panel{width:min(calc(640px * var(--ui-scale)), calc(100vw - calc(3rem * var(--ui-scale))));max-height:min(80vh, calc(100vh - calc(4rem * var(--ui-scale))));z-index:650;background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--white-o08);border-radius:calc(8px * var(--ui-scale));color:var(--color-text);pointer-events:auto;flex-direction:column;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 24px 64px #00000080}#help-panel.hidden{display:none}#help-backdrop{z-index:640;pointer-events:auto;background:#00000080;position:fixed;inset:0}#help-backdrop.hidden{display:none}#help-header{padding:calc(.75rem * var(--ui-scale)) calc(1rem * var(--ui-scale));border-bottom:1px solid var(--color-surface);flex-shrink:0;align-items:center;display:flex}#help-title{font-size:calc(.9rem * var(--ui-scale));letter-spacing:.05em;text-transform:uppercase;color:var(--color-text);flex:1;font-weight:500}#help-close{width:calc(36px * var(--ui-scale));height:calc(36px * var(--ui-scale));border:1px solid var(--white-o08);border-radius:calc(4px * var(--ui-scale));color:var(--color-text-secondary);font-size:calc(.9rem * var(--ui-scale));cursor:pointer;background:0 0;justify-content:center;align-items:center;display:none}#help-close:hover,#help-close:focus-visible{color:var(--color-text);border-color:var(--white-o20)}.help-tablist{padding:0 calc(1rem * var(--ui-scale));border-bottom:1px solid var(--color-surface);flex-shrink:0;gap:0;display:flex}.help-tab{padding:calc(.6rem * var(--ui-scale)) calc(.75rem * var(--ui-scale));color:var(--color-text-dim);font-size:calc(.78rem * var(--ui-scale));letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;transition:color .15s,border-color .15s}.help-tab:hover{color:#ccc}.help-tab.active,.help-tab[aria-selected=true]{color:var(--color-text);border-bottom-color:var(--color-accent)}.help-tabpanel{padding:calc(1rem * var(--ui-scale)) calc(1.25rem * var(--ui-scale));font-size:calc(.85rem * var(--ui-scale));flex:1;line-height:1.5;overflow-y:auto}.help-tabpanel.hidden{display:none}.help-guide-section{margin:0 0 calc(1.25rem * var(--ui-scale))}.help-guide-section:last-child{margin-bottom:0}.help-guide-section h3{font-size:calc(.8rem * var(--ui-scale));letter-spacing:.05em;text-transform:uppercase;color:var(--color-accent);margin:0 0 calc(.4rem * var(--ui-scale));font-weight:600}.help-guide-section ul{color:#c8ccd4;margin:0;padding-inline-start:calc(1.1rem * var(--ui-scale))}.help-guide-section li{margin-bottom:calc(.25rem * var(--ui-scale))}.help-guide-section p{color:#c8ccd4;margin:0}.help-guide-section kbd{padding:calc(.1rem * var(--ui-scale)) calc(.4rem * var(--ui-scale));background:var(--white-o08);border:1px solid var(--white-o15);border-radius:calc(3px * var(--ui-scale));font-family:inherit;font-size:calc(.75rem * var(--ui-scale));color:var(--color-text);display:inline-block}#help-feedback-form{gap:calc(.6rem * var(--ui-scale));flex-direction:column;display:flex}.help-form-kind{gap:calc(.5rem * var(--ui-scale));border:none;margin:0;padding:0;display:flex}.help-kind-option{justify-content:center;align-items:center;gap:calc(.3rem * var(--ui-scale));padding:calc(.45rem * var(--ui-scale)) calc(.5rem * var(--ui-scale));background:var(--color-surface-alt);border:1px solid var(--white-o10);border-radius:calc(4px * var(--ui-scale));font-size:calc(.78rem * var(--ui-scale));color:#c8ccd4;cursor:pointer;flex:1;transition:background .15s,border-color .15s;display:flex;position:relative}.help-kind-option:has(input:checked){background:var(--accent-o15);border-color:var(--accent-o40);color:var(--color-text)}.help-kind-option input{opacity:0;pointer-events:none;position:absolute}.help-form-label{font-size:calc(.75rem * var(--ui-scale));color:var(--color-text-dim);letter-spacing:.03em;text-transform:uppercase;margin-top:calc(.25rem * var(--ui-scale))}#help-feedback-form textarea,#help-feedback-form input[type=text]{width:100%;padding:calc(.55rem * var(--ui-scale)) calc(.65rem * var(--ui-scale));background:var(--color-surface);border:1px solid var(--white-o12);border-radius:calc(4px * var(--ui-scale));color:var(--color-text);font-family:inherit;font-size:calc(.85rem * var(--ui-scale));box-sizing:border-box;resize:vertical}#help-feedback-form textarea:focus,#help-feedback-form input[type=text]:focus{border-color:var(--accent-o50);outline:none}.help-form-meta{text-align:end;font-size:calc(.7rem * var(--ui-scale));color:var(--color-text-faint);margin-top:calc(-.35rem * var(--ui-scale))}.help-form-check{align-items:center;gap:calc(.5rem * var(--ui-scale));font-size:calc(.8rem * var(--ui-scale));color:#c8ccd4;cursor:pointer;display:flex}.help-form-status{min-height:1.2em;font-size:calc(.78rem * var(--ui-scale));color:var(--color-text-dim)}.help-form-status.error{color:#f28e8e}.help-form-status.success{color:var(--color-success-soft)}.help-form-actions{padding-top:calc(.25rem * var(--ui-scale));justify-content:flex-end;display:flex}.help-btn-primary{padding:calc(.5rem * var(--ui-scale)) calc(1rem * var(--ui-scale));background:var(--accent-o20);border:1px solid var(--accent-o40);border-radius:calc(4px * var(--ui-scale));color:var(--color-text);font-size:calc(.82rem * var(--ui-scale));cursor:pointer;min-height:calc(36px * var(--ui-scale));transition:background .15s}.help-btn-primary:hover:not(:disabled){background:var(--accent-o35)}.help-btn-primary:disabled{opacity:.5;cursor:default}@media (width<=768px){#help-trigger{width:max(48px, calc(48px * var(--ui-scale)));height:max(48px, calc(48px * var(--ui-scale)));border-radius:50%;justify-content:center;padding:0}#help-trigger .help-trigger-label{display:none}#help-trigger-browse{width:max(40px, calc(40px * var(--ui-scale)));height:max(40px, calc(40px * var(--ui-scale)));font-size:calc(1rem * var(--ui-scale))}#browse-close{width:max(40px, calc(40px * var(--ui-scale)));height:max(40px, calc(40px * var(--ui-scale)));font-size:calc(1rem * var(--ui-scale));inset-inline-end:calc(3rem * var(--ui-scale))}#help-panel{top:calc(3.5rem * var(--ui-scale));width:calc(100vw - calc(1.5rem * var(--ui-scale)));max-height:70vh;box-shadow:none;inset-inline-start:auto;inset-inline-end:calc(.75rem * var(--ui-scale));transform:none}#help-backdrop{display:none}#help-feedback-form textarea,#help-feedback-form input[type=text],.help-btn-primary{min-height:max(44px, calc(44px * var(--ui-scale)))}#time-label{inset-inline-end:calc(4.5rem * var(--ui-scale))}}@media (width<=600px) and (orientation:portrait){#help-trigger{top:calc(.5rem * var(--ui-scale));width:max(40px, calc(40px * var(--ui-scale)));height:max(40px, calc(40px * var(--ui-scale)));inset-inline-end:calc(.5rem * var(--ui-scale))}#time-label{inset-inline-end:calc(3.5rem * var(--ui-scale));top:calc(.5rem * var(--ui-scale))}#help-panel{top:0;inset-inline:0;width:100vw;height:100dvh;max-height:none;box-shadow:none;border:none;border-radius:0;bottom:0;transform:none}#help-close{display:inline-flex}.help-tabpanel{flex:1;overflow-y:auto}.help-form-actions{margin:0 calc(-1.25rem * var(--ui-scale)) calc(-1rem * var(--ui-scale));padding:calc(.75rem * var(--ui-scale)) calc(1.25rem * var(--ui-scale));background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border-top:1px solid var(--color-surface);position:sticky;bottom:0}}@supports (padding-bottom:env(safe-area-inset-bottom)){#help-panel{padding-bottom:env(safe-area-inset-bottom)}}.privacy-ui-backdrop{-webkit-backdrop-filter:blur(2px);z-index:900;background:#00000073;position:fixed;inset:0}.privacy-ui-backdrop.hidden{display:none}.privacy-ui-panel{width:min(calc(480px * var(--ui-scale)), calc(100vw - calc(2rem * var(--ui-scale))));max-height:calc(100vh - calc(2rem * var(--ui-scale)));padding:calc(1.25rem * var(--ui-scale)) calc(1.4rem * var(--ui-scale)) calc(1.1rem * var(--ui-scale));background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:var(--glass-border);border-radius:var(--radius-xl);color:var(--color-text);font-size:calc(.85rem * var(--ui-scale));z-index:901;line-height:1.45;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 20px 60px #0000008c}.privacy-ui-panel.hidden{display:none}.privacy-ui-header{margin-bottom:calc(.5rem * var(--ui-scale));justify-content:space-between;align-items:center;display:flex}.privacy-ui-header h2{font-size:calc(.95rem * var(--ui-scale));letter-spacing:.01em;color:var(--color-text);margin:0;font-weight:600}.privacy-ui-close{min-width:calc(28px * var(--ui-scale));height:calc(28px * var(--ui-scale));font-size:calc(.95rem * var(--ui-scale));color:var(--color-text-muted);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:1px solid #0000;padding:0;line-height:1}.privacy-ui-close:hover{color:var(--color-text);background:var(--white-o08);border-color:var(--white-o12)}.privacy-ui-close:focus-visible{outline:2px solid var(--accent-o70);outline-offset:2px}.privacy-ui-desc{margin:0 0 calc(.85rem * var(--ui-scale));color:var(--color-text-secondary);font-size:calc(.8rem * var(--ui-scale))}.privacy-ui-tiers{gap:calc(.4rem * var(--ui-scale));margin:0 0 calc(.9rem * var(--ui-scale));border:0;flex-direction:column;padding:0;display:flex}.privacy-ui-tier{align-items:flex-start;gap:calc(.6rem * var(--ui-scale));padding:calc(.6rem * var(--ui-scale)) calc(.7rem * var(--ui-scale));background:var(--color-surface-alt);border:1px solid var(--color-surface-border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:background .12s,border-color .12s;display:flex}.privacy-ui-tier:hover{background:var(--color-surface);border-color:var(--color-surface-border)}.privacy-ui-tier input[type=radio]{margin-top:calc(.2rem * var(--ui-scale));accent-color:var(--color-accent);flex-shrink:0}.privacy-ui-tier:has(input:checked){background:var(--accent-o08);border-color:var(--accent-o35)}.privacy-ui-tier:focus-within{outline:2px solid var(--accent-o70);outline-offset:2px}.privacy-ui-tier-body{gap:calc(.15rem * var(--ui-scale));flex-direction:column;display:flex}.privacy-ui-tier-label{color:var(--color-text);font-weight:600}.privacy-ui-tier-desc{font-size:calc(.78rem * var(--ui-scale));color:var(--color-text-secondary)}.privacy-ui-meta{gap:calc(.6rem * var(--ui-scale));padding-top:calc(.6rem * var(--ui-scale));border-top:1px solid var(--color-surface-border-subtle);flex-direction:column;display:flex}.privacy-ui-session{align-items:center;gap:calc(.4rem * var(--ui-scale)) calc(.6rem * var(--ui-scale));font-size:calc(.75rem * var(--ui-scale));color:var(--color-text-secondary);flex-wrap:wrap;display:flex}.privacy-ui-session-label{color:var(--color-text);font-weight:600}.privacy-ui-session-id{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:calc(.72rem * var(--ui-scale));padding:calc(.1rem * var(--ui-scale)) calc(.35rem * var(--ui-scale));background:var(--color-surface);border:1px solid var(--color-surface-border-subtle);border-radius:var(--radius-sm);color:var(--color-text);overflow-wrap:anywhere}.privacy-ui-session-hint{font-size:calc(.7rem * var(--ui-scale));color:var(--color-text-muted)}.privacy-ui-policy-link{color:var(--color-accent);font-size:calc(.8rem * var(--ui-scale));font-weight:500;text-decoration:none}.privacy-ui-policy-link:hover{color:var(--color-accent-hover);text-decoration:underline}.privacy-ui-policy-link:focus-visible{outline:2px solid var(--accent-o70);outline-offset:2px;border-radius:var(--radius-sm)}.privacy-ui-actions{margin-block-start:calc(.5rem * var(--ui-scale))}.privacy-ui-clear-visits{background:var(--white-o08);border:1px solid var(--white-o15);color:var(--color-text);border-radius:var(--radius-sm);padding:calc(.4rem * var(--ui-scale)) calc(.85rem * var(--ui-scale));font-size:calc(.78rem * var(--ui-scale));cursor:pointer;min-height:max(36px, calc(36px * var(--ui-scale)));transition:background .15s,border-color .15s}.privacy-ui-clear-visits:hover:not(:disabled){background:var(--white-o15);border-color:var(--white-o30)}.privacy-ui-clear-visits:focus-visible{outline:2px solid var(--accent-o70);outline-offset:2px}.privacy-ui-clear-visits:disabled{opacity:.5;cursor:default}.privacy-ui-status{margin-top:calc(.5rem * var(--ui-scale));min-height:1.2em;font-size:calc(.75rem * var(--ui-scale));color:var(--color-success-soft)}.credits-section{margin:0 0 calc(.85rem * var(--ui-scale))}.credits-section:last-of-type{margin-bottom:0}.credits-section-title{margin:0 0 calc(.35rem * var(--ui-scale));font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:calc(.7rem * var(--ui-scale));letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);font-weight:700}.credits-list{gap:calc(.25rem * var(--ui-scale));flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.credits-list li{font-size:calc(.82rem * var(--ui-scale));color:var(--color-text-secondary);line-height:1.45}.credits-dataset{font-size:calc(.82rem * var(--ui-scale));color:var(--color-text-secondary);margin:0;line-height:1.45}.credits-empty{font-size:calc(.78rem * var(--ui-scale));color:var(--color-text-muted);margin:0;font-style:italic}.disclosure-banner{top:calc(calc(.5rem * var(--ui-scale)) + var(--safe-top));max-width:min(calc(640px * var(--ui-scale)), calc(100vw - calc(1rem * var(--ui-scale))));align-items:center;gap:calc(.6rem * var(--ui-scale)) calc(.9rem * var(--ui-scale));padding:calc(.7rem * var(--ui-scale)) calc(1rem * var(--ui-scale));background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:var(--glass-border);border-radius:var(--radius-lg);color:var(--color-text);font-size:calc(.8rem * var(--ui-scale));z-index:850;flex-wrap:wrap;line-height:1.45;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #00000073}.disclosure-banner-text{color:var(--color-text-secondary);flex:260px;margin:0}.disclosure-banner-actions{align-items:center;gap:calc(.4rem * var(--ui-scale));flex-wrap:wrap;display:flex}.disclosure-banner-btn{min-height:calc(32px * var(--ui-scale));padding:calc(.35rem * var(--ui-scale)) calc(.7rem * var(--ui-scale));font:inherit;font-size:calc(.78rem * var(--ui-scale));border-radius:var(--radius-md);cursor:pointer;font-weight:500;transition:background .12s,color .12s,border-color .12s}.disclosure-banner-btn:focus-visible{outline:2px solid var(--accent-o70);outline-offset:2px}.disclosure-banner-btn-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-surface-border)}.disclosure-banner-btn-secondary:hover{background:var(--color-surface-hover);border-color:var(--accent-o35)}.disclosure-banner-btn-primary{background:var(--color-accent-dark);color:var(--color-text);border:1px solid var(--color-accent-dark)}.disclosure-banner-btn-primary:hover{background:var(--color-accent);border-color:var(--color-accent)}.disclosure-banner-link{color:var(--color-accent);font-size:calc(.78rem * var(--ui-scale));font-weight:500;text-decoration:none}.disclosure-banner-link:hover{text-decoration:underline}.disclosure-banner-link:focus-visible{outline:2px solid var(--accent-o70);outline-offset:2px;border-radius:var(--radius-sm)}@media (width<=600px){.disclosure-banner{max-width:none;inset-inline-start:calc(.5rem * var(--ui-scale));inset-inline-end:calc(.5rem * var(--ui-scale));transform:none}.disclosure-banner-actions{justify-content:flex-end;width:100%}}.disclosure-badge{top:calc(calc(.5rem * var(--ui-scale)) + var(--safe-top));width:max(44px, calc(44px * var(--ui-scale)));height:max(44px, calc(44px * var(--ui-scale)));background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:var(--glass-border);color:var(--color-accent);cursor:pointer;z-index:850;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:transform .15s,background .15s;display:flex;position:fixed;inset-inline-start:calc(calc(.5rem * var(--ui-scale)) + var(--safe-left));box-shadow:0 4px 14px #0006}.disclosure-badge svg{width:calc(24px * var(--ui-scale));height:calc(24px * var(--ui-scale));display:block}.disclosure-badge:hover,.disclosure-badge:focus-visible{background:var(--color-surface-hover);transform:scale(1.08)}.disclosure-badge:focus-visible{outline:2px solid var(--accent-o70);outline-offset:2px}@keyframes disclosure-badge-pulse{0%{box-shadow:0 0 #4da6ff8c,0 4px 14px #0006}70%{box-shadow:0 0 0 14px #4da6ff00,0 4px 14px #0006}to{box-shadow:0 0 #4da6ff00,0 4px 14px #0006}}.disclosure-badge--pulse{animation:1.8s ease-out infinite disclosure-badge-pulse}@media (prefers-reduced-motion:reduce){.disclosure-badge--pulse{animation:none}}#vr-enter-btn{top:calc(.75rem * var(--ui-scale));z-index:600;align-items:center;gap:calc(.4rem * var(--ui-scale));padding:calc(.4rem * var(--ui-scale)) calc(.85rem * var(--ui-scale));background:var(--glass-bg-light);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--color-accent);border-radius:calc(18px * var(--ui-scale));color:var(--color-accent);font-size:calc(.78rem * var(--ui-scale));letter-spacing:.04em;cursor:pointer;min-height:calc(36px * var(--ui-scale));pointer-events:auto;font-weight:500;transition:background .15s,color .15s,border-color .15s;display:inline-flex;position:fixed;inset-inline-end:calc(5rem * var(--ui-scale))}#vr-enter-btn:hover,#vr-enter-btn:focus-visible{background:var(--color-accent);color:#fff}#vr-enter-btn.pending{opacity:.6;cursor:wait}#vr-enter-btn .vr-btn-icon{font-size:calc(1rem * var(--ui-scale));line-height:1}body.browse-open #vr-enter-btn{display:none}@media (width<=600px){#vr-enter-btn{padding:calc(.4rem * var(--ui-scale)) calc(.55rem * var(--ui-scale));inset-inline-end:calc(4.25rem * var(--ui-scale))}#vr-enter-btn .vr-btn-label{display:none}}.vr-zoom-overlay{top:50%;align-items:center;gap:calc(.45rem * var(--ui-scale));padding:calc(.6rem * var(--ui-scale)) calc(.45rem * var(--ui-scale));background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:var(--glass-border);border-radius:var(--radius-lg);color:var(--color-text);z-index:950;pointer-events:auto;min-width:max(44px, calc(44px * var(--ui-scale)));flex-direction:column;display:flex;position:fixed;inset-inline-end:calc(.75rem * var(--ui-scale));transform:translateY(-50%);box-shadow:0 8px 28px #00000080}.vr-zoom-overlay-label{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:calc(.65rem * var(--ui-scale));letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);font-weight:700}.vr-zoom-overlay-slider{appearance:slider-vertical;writing-mode:vertical-lr;width:calc(24px * var(--ui-scale));height:calc(200px * var(--ui-scale));accent-color:var(--color-accent);cursor:ns-resize;direction:rtl;background:0 0;margin:0}.vr-zoom-overlay-slider:focus-visible{outline:2px solid var(--accent-o70);outline-offset:4px;border-radius:var(--radius-sm)}@media (height<=480px){.vr-zoom-overlay-slider{height:calc(140px * var(--ui-scale))}}.tour-authoring-dock{z-index:50;max-block-size:calc(100vh - 2rem);inline-size:18rem;max-inline-size:calc(100vw - 2rem);padding:calc(.75rem * var(--ui-scale)) calc(1rem * var(--ui-scale)) calc(1rem * var(--ui-scale));border-radius:calc(.65rem * var(--ui-scale));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#e8eef6;font-size:calc(.8rem * var(--ui-scale));background:#141c28eb;border:1px solid #ffffff14;position:fixed;inset-block-start:calc(1rem * var(--ui-scale));inset-inline-end:calc(1rem * var(--ui-scale));overflow-y:auto;box-shadow:0 4px 20px #00000073}.tour-authoring-dock-header{justify-content:space-between;align-items:center;margin-block-end:calc(.5rem * var(--ui-scale));display:flex}.tour-authoring-dock-title{font-weight:600;font-size:calc(.85rem * var(--ui-scale));color:#fff}.tour-authoring-dock-title-input{border-radius:calc(.3rem * var(--ui-scale));color:#fff;inline-size:100%;font-size:calc(.85rem * var(--ui-scale));padding:calc(.3rem * var(--ui-scale)) calc(.5rem * var(--ui-scale));background:#ffffff0a;border:1px solid #ffffff1a;font-weight:500}.tour-authoring-dock-title-input:hover,.tour-authoring-dock-title-input:focus-visible{background:#ffffff14;border-color:#fff3;outline:none}.tour-authoring-dock-title-input::placeholder{color:#fff6}.tour-authoring-dock-metadata-errormsg{color:#ff8a8a;font-size:calc(.7rem * var(--ui-scale));padding-block:calc(.2rem * var(--ui-scale)) calc(.4rem * var(--ui-scale));padding-inline:calc(.1rem * var(--ui-scale));line-height:1.3}.tour-authoring-dock-metadata{gap:calc(.35rem * var(--ui-scale));flex-direction:column;margin-block-end:calc(.5rem * var(--ui-scale));display:flex}.tour-authoring-dock-description{border-radius:calc(.3rem * var(--ui-scale));color:#fff;font-size:calc(.75rem * var(--ui-scale));padding:calc(.3rem * var(--ui-scale)) calc(.45rem * var(--ui-scale));resize:vertical;background:#ffffff0a;border:1px solid #ffffff1a;min-block-size:2.4rem;font-family:inherit}.tour-authoring-dock-description:hover,.tour-authoring-dock-description:focus-visible{background:#ffffff14;border-color:#fff3;outline:none}.tour-authoring-dock-description::placeholder{color:#fff6}.tour-authoring-dock-visibility-label{align-items:center;gap:calc(.4rem * var(--ui-scale));font-size:calc(.7rem * var(--ui-scale));color:#b8c0cc;display:flex}.tour-authoring-dock-visibility{border-radius:calc(.3rem * var(--ui-scale));color:#fff;font-size:calc(.7rem * var(--ui-scale));padding:calc(.2rem * var(--ui-scale)) calc(.35rem * var(--ui-scale));background:#ffffff0a;border:1px solid #ffffff1a;flex:1}.tour-authoring-dock-visibility:focus-visible{background:#ffffff14;border-color:#fff3;outline:none}.tour-authoring-dock-close{color:#b8c0cc;font-size:calc(1.25rem * var(--ui-scale));cursor:pointer;padding:calc(.1rem * var(--ui-scale)) calc(.4rem * var(--ui-scale));border-radius:calc(.3rem * var(--ui-scale));background:0 0;border:none;line-height:1}.tour-authoring-dock-status{font-size:calc(.65rem * var(--ui-scale));padding:calc(.1rem * var(--ui-scale)) calc(.4rem * var(--ui-scale));border-radius:calc(.3rem * var(--ui-scale));text-align:end;color:#8b94a4;flex:1;margin-inline-start:calc(.5rem * var(--ui-scale))}.tour-authoring-dock-status-saving{color:#d8b06b}.tour-authoring-dock-status-saved{color:#79c98a}.tour-authoring-dock-status-error{color:#ff8a8a}.tour-authoring-dock-preview{color:#d6eaff;border-radius:calc(.35rem * var(--ui-scale));padding:calc(.18rem * var(--ui-scale)) calc(.55rem * var(--ui-scale));font-size:calc(.7rem * var(--ui-scale));cursor:pointer;background:#4da6ff2e;border:1px solid #4da6ff66;margin-inline-end:calc(.35rem * var(--ui-scale))}.tour-authoring-dock-preview:hover,.tour-authoring-dock-preview:focus-visible{background:#4da6ff52}.tour-authoring-dock-preview:disabled{cursor:not-allowed;opacity:.45}.tour-authoring-dock-publish{color:#d6f1dd;border-radius:calc(.35rem * var(--ui-scale));padding:calc(.18rem * var(--ui-scale)) calc(.55rem * var(--ui-scale));font-size:calc(.7rem * var(--ui-scale));cursor:pointer;background:#79c98a2e;border:1px solid #79c98a66;margin-inline-end:calc(.4rem * var(--ui-scale))}.tour-authoring-dock-publish:hover,.tour-authoring-dock-publish:focus-visible{background:#79c98a52}.tour-authoring-dock-publish:disabled{cursor:progress;opacity:.7}.tour-authoring-dock-publish-errormsg{color:#ff8a8a;font-size:calc(.7rem * var(--ui-scale));padding-block:calc(.25rem * var(--ui-scale)) calc(.5rem * var(--ui-scale));padding-inline:calc(.1rem * var(--ui-scale));border-block-start:1px solid #ff8a8a40;margin-block-end:calc(.3rem * var(--ui-scale));line-height:1.3}.tour-authoring-dock-close:hover,.tour-authoring-dock-close:focus-visible{color:#fff;background:#ffffff14}.tour-authoring-dock-actions{gap:calc(.35rem * var(--ui-scale));flex-direction:column;margin-block-end:calc(.65rem * var(--ui-scale));display:flex}.tour-authoring-action{color:#e8eef6;border-radius:calc(.35rem * var(--ui-scale));padding:calc(.4rem * var(--ui-scale)) calc(.6rem * var(--ui-scale));text-align:start;cursor:pointer;font-size:calc(.78rem * var(--ui-scale));background:#4da6ff2e;border:1px solid #4da6ff59}.tour-authoring-action:hover,.tour-authoring-action:focus-visible{background:#4da6ff52}.tour-authoring-task-list{border-block-start:1px solid #ffffff14;max-block-size:14rem;margin:0;padding:0;padding-block-start:calc(.5rem * var(--ui-scale));list-style:none;overflow-y:auto}.tour-authoring-task{gap:calc(.4rem * var(--ui-scale));padding-block:calc(.2rem * var(--ui-scale));font-size:calc(.72rem * var(--ui-scale));color:#c8d0dc;align-items:baseline;display:flex}.tour-authoring-task-index{color:#8b94a4;flex-shrink:0;inline-size:1.4rem}.tour-authoring-task-label{word-break:break-word}.tour-authoring-task-empty{padding-block:calc(.5rem * var(--ui-scale));color:#8b94a4;font-style:italic;font-size:calc(.72rem * var(--ui-scale));text-align:center}.tour-authoring-task{cursor:grab;align-items:center}.tour-authoring-task[draggable=true]:active{cursor:grabbing}.tour-authoring-task-dragging{opacity:.4}.tour-authoring-task-handle{color:#8b94a4;inline-size:.9rem;font-size:calc(.7rem * var(--ui-scale));-webkit-user-select:none;user-select:none;flex-shrink:0;line-height:1}.tour-authoring-task-label{flex:1}.tour-authoring-task-btn{color:#8b94a4;cursor:pointer;font-size:calc(.8rem * var(--ui-scale));padding:calc(.1rem * var(--ui-scale)) calc(.35rem * var(--ui-scale));border-radius:calc(.25rem * var(--ui-scale));background:0 0;border:none;flex-shrink:0;line-height:1}.tour-authoring-task-btn:hover,.tour-authoring-task-btn:focus-visible{color:#fff;background:#ffffff14}.tour-authoring-task-editing{border-radius:calc(.3rem * var(--ui-scale));padding-block:calc(.25rem * var(--ui-scale));background:#4da6ff0f}.tour-authoring-task-editor{gap:calc(.3rem * var(--ui-scale));flex-direction:column;flex-basis:100%;margin-block-start:calc(.4rem * var(--ui-scale));padding-inline-start:calc(1.4rem * var(--ui-scale));display:flex}.tour-authoring-task-editor-input{color:#e8eef6;border-radius:calc(.3rem * var(--ui-scale));padding:calc(.4rem * var(--ui-scale)) calc(.5rem * var(--ui-scale));font-family:var(--font-mono,monospace);font-size:calc(.7rem * var(--ui-scale));resize:vertical;background:#0006;border:1px solid #ffffff1f;min-block-size:6rem}.tour-authoring-task-editor-input:focus-visible{outline-offset:0;outline:1px solid #4da6ff99}.tour-authoring-task-editor-actions{gap:calc(.3rem * var(--ui-scale));justify-content:flex-end;align-items:center;display:flex}.tour-authoring-task-editor-error{color:#ff8a8a;font-size:calc(.7rem * var(--ui-scale));text-align:start;flex:1;line-height:1.3;display:none}.tour-authoring-task-editor-error-visible{display:block}.tour-authoring-dock-group{border-block-start:1px solid #ffffff0f;margin-block-end:calc(.55rem * var(--ui-scale));padding-block-start:calc(.45rem * var(--ui-scale))}.tour-authoring-dock-group-label{font-size:calc(.7rem * var(--ui-scale));text-transform:uppercase;letter-spacing:.04em;color:#8b94a4;margin-block-end:calc(.3rem * var(--ui-scale));display:block}.tour-authoring-dock-chiprow{gap:calc(.3rem * var(--ui-scale));flex-wrap:wrap;display:flex}.tour-authoring-dock-envrow{gap:calc(.3rem * var(--ui-scale));align-items:center;margin-block-end:calc(.25rem * var(--ui-scale));display:flex}.tour-authoring-dock-envrow-label{font-size:calc(.74rem * var(--ui-scale));color:#c8d0dc;flex:1}.tour-authoring-chip{color:#e8eef6;border-radius:calc(.35rem * var(--ui-scale));padding:calc(.22rem * var(--ui-scale)) calc(.55rem * var(--ui-scale));cursor:pointer;font-size:calc(.72rem * var(--ui-scale));background:#ffffff14;border:1px solid #ffffff1f;line-height:1.2}.tour-authoring-chip:hover,.tour-authoring-chip:focus-visible{background:#4da6ff38;border-color:#4da6ff61}.tour-authoring-dock-inputrow{gap:calc(.3rem * var(--ui-scale));align-items:center;display:flex}.tour-authoring-input{color:#e8eef6;border-radius:calc(.3rem * var(--ui-scale));padding:calc(.25rem * var(--ui-scale)) calc(.4rem * var(--ui-scale));font-size:calc(.74rem * var(--ui-scale));background:#0000004d;border:1px solid #ffffff1f;flex:1;min-inline-size:0}.tour-authoring-input:focus-visible{outline-offset:0;outline:1px solid #4da6ff99}
