.sky-context-menu{position:absolute;z-index:30;box-sizing:border-box;width:min(19rem,calc(100% - 1rem));max-height:min(calc(100% - 1rem),28rem);overflow:auto;padding:.85rem;border:1px solid var(--sky-glass-border);border-radius:var(--radius-lg);background:var(--sky-glass-bg);color:var(--sky-ink);box-shadow:0 8px 32px #00000073;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font-size:.8rem}.sky-context-menu__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:var(--sky-accent);font-family:var(--mono);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.sky-context-menu__close{border:0;background:transparent;color:var(--sky-muted);font-size:1.25rem;line-height:1;cursor:pointer}.sky-context-menu__close:hover,.sky-context-menu__close:focus-visible{color:var(--sky-ink)}.sky-context-menu__coordinates,.sky-context-menu__radius,.sky-context-menu__status,.sky-context-menu__error{margin:.45rem 0 .7rem;color:var(--sky-muted);font-family:var(--mono);font-variant-numeric:tabular-nums}.sky-context-menu__radius{margin-top:-.35rem;color:var(--sky-faint);font-size:.72rem}.sky-context-menu__search{width:100%;padding:.5rem .7rem;border:1px solid var(--sky-accent);border-radius:var(--radius-md);background:var(--sky-accent);color:var(--sky-bg);font:inherit;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.sky-context-menu__search:hover:not(:disabled),.sky-context-menu__search:focus-visible{filter:brightness(1.12)}.sky-context-menu__search:disabled{opacity:.65;cursor:progress}.sky-context-menu__error{color:var(--sky-danger)}.sky-context-menu__results,.sky-context-menu__results ul{display:grid;gap:.4rem;margin:.55rem 0 0;padding:0;list-style:none}.sky-context-menu__results>li>strong{display:block;margin-bottom:.25rem;color:var(--sky-warm);font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.sky-context-menu__results ul li{display:flex;justify-content:space-between;gap:.5rem;padding:.32rem .4rem;border-radius:var(--radius-sm);background:var(--sky-raised)}.sky-context-menu__source-coordinates{color:var(--sky-muted);font-family:var(--mono);white-space:nowrap;font-variant-numeric:tabular-nums}.sky-context-menu__hint{display:block;margin-top:.75rem;color:var(--sky-faint);font-family:var(--mono);font-size:10px;letter-spacing:.04em}@media(prefers-reduced-motion:no-preference){.sky-context-menu__search{transition:filter .12s ease}}.sky-search-origin{position:absolute;z-index:20;width:32px;height:32px;transform:translate(-50%,-50%);pointer-events:none;color:var(--sky-ink)}.sky-search-origin svg{display:block;width:32px;height:32px;fill:var(--sky-bg);stroke:currentColor;stroke-width:2;stroke-linecap:round}.sky-search-origin .sky-search-origin__outline{stroke:var(--sky-bg);stroke-width:5}.sky-search-origin>span{position:absolute;bottom:100%;left:50%;transform:translate(-50%);padding:2px 5px;border:1px solid var(--sky-line-strong);border-radius:var(--radius-sm);background:var(--sky-bg);color:var(--sky-ink);font-family:var(--mono);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}.sky-context-menu__legend{display:flex;flex-wrap:wrap;gap:.35rem .75rem;margin:.65rem 0;color:var(--sky-muted);font-size:.72rem}.sky-context-menu__legend>span{display:inline-flex;align-items:center;gap:.3rem}.sky-context-menu__legend svg{width:18px;height:18px;fill:none;stroke:var(--sky-ink);stroke-width:1.5}.sky-context-menu__legend span:last-child svg{stroke:#f5b041}@keyframes nearby-panel-reveal{0%{opacity:.65;clip-path:inset(0 0 6px 0 round var(--radius-lg))}to{opacity:1;clip-path:inset(0 round var(--radius-lg))}}@media(prefers-reduced-motion:no-preference){.sky-context-menu,.sky-context-menu__results{animation:nearby-panel-reveal .18s cubic-bezier(.16,1,.3,1)}.sky-context-menu__close{transition:color .12s ease}}@media(prefers-reduced-motion:reduce){.sky-context-menu,.sky-context-menu__results{animation:none}}.spectral-estimated-line{fill:none;stroke-dasharray:5 4;stroke-width:2.5;opacity:.9}.spectral-estimated-marker{fill:var(--sky-panel);stroke-width:2;stroke-dasharray:2 1}.spectral-estimate-legend{display:flex;flex-wrap:wrap;gap:.9rem;align-items:center;margin:.15rem 0 .4rem 4rem;color:var(--sky-muted);font-size:.78rem}.spectral-estimate-legend span{display:inline-flex;align-items:center;gap:.4rem}.spectral-estimate-legend i{display:inline-block;width:1.2rem;height:0;border-top:2px solid currentColor}.spectral-estimate-legend .spectral-interpolated-key{height:.8rem;border-top:0;background:linear-gradient(currentColor,currentColor) center / 100% 0 no-repeat,repeating-linear-gradient(90deg,currentColor 0 4px,transparent 4px 7px) center / 100% 3px no-repeat}.spectral-estimate-legend .spectral-single-estimate-key{width:.7rem;height:.7rem;border:2px dashed currentColor;border-radius:50%}.spectral-estimate-legend .spectral-observed-key:after{content:"";display:block;width:.35rem;height:.35rem;margin:-.22rem auto 0;border-radius:50%;background:currentColor}.spectral-lab,.spectral-main,.spectral-chart{min-width:0}.spectral-lab{overflow:hidden}.spectral-sidebar{box-sizing:border-box;transition:width .3s cubic-bezier(.22,1,.36,1),padding .3s cubic-bezier(.22,1,.36,1),border-right-width .3s ease,opacity .22s ease,visibility 0s linear 0s}.spectral-sidebar>*{min-width:268px;transition:opacity .2s ease,transform .3s cubic-bezier(.22,1,.36,1)}.spectral-lab.sidebar-collapsed .spectral-sidebar{width:0;padding-inline:0;border-right-width:0;opacity:0;visibility:hidden;transition:width .3s cubic-bezier(.22,1,.36,1),padding .3s cubic-bezier(.22,1,.36,1),border-right-width .3s ease,opacity .22s ease 60ms,visibility 0s linear .3s}.spectral-lab.sidebar-collapsed .spectral-sidebar>*{opacity:0;transform:translate(-16px)}.spectral-sidebar-toggle{z-index:2;display:flex;flex:0 0 34px;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;min-height:64px;padding:.5rem .2rem;border:1px solid var(--sky-line);border-top:0;border-bottom:0;background:var(--sky-raised);color:var(--sky-muted);font-size:.62rem;cursor:pointer}.spectral-sidebar-toggle:hover,.spectral-sidebar-toggle:focus-visible{background:var(--sky-hover);color:var(--sky-ink)}.spectral-sidebar-toggle svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}.spectral-sidebar-toggle{transition:background-color .15s ease,color .15s ease}.spectral-sidebar-toggle svg{transition:transform .3s cubic-bezier(.22,1,.36,1)}.spectral-sidebar-toggle[aria-expanded=false] svg{transform:rotate(180deg)}@keyframes spectral-item-in{0%{opacity:0;transform:translateY(-4px)}}.spectral-legend li{animation:spectral-item-in .22s cubic-bezier(.22,1,.36,1)}.spectral-legend-text{transition:opacity .2s ease}.spectral-legend .spectral-swatch{transition:opacity .2s ease,transform .2s ease}.spectral-legend li.is-hidden .spectral-swatch{opacity:.4;transform:scale(.85)}.spectral-catalog button,.spectral-toggle,.spectral-icon-btn,.spectral-coords button{transition:background-color .15s ease,border-color .15s ease,color .15s ease,opacity .2s ease,transform .12s ease}.spectral-catalog button:active:not(:disabled),.spectral-toggle:active:not(:disabled),.spectral-coords button:active{transform:scale(.98)}@keyframes spectral-fade{0%{opacity:0}}.spectral-chart{animation:spectral-fade .26s ease}.spectral-controls{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem 1rem}.spectral-chart-zoom{display:flex;align-items:center;gap:.35rem;padding:.35rem .5rem;border-bottom:1px solid var(--sky-line);font-size:.78rem;color:var(--sky-muted)}.spectral-chart-zoom .spectral-toggle:disabled{opacity:.5;cursor:default}.spectral-chart-hint{margin-left:auto}.spectral-chart svg{max-width:100%;touch-action:none;cursor:crosshair}.spectral-chart svg.is-panning{cursor:grabbing;-webkit-user-select:none;user-select:none}.spectral-loading{display:inline-flex;align-items:center;gap:.4rem;color:var(--sky-accent-strong)}.spectral-loading:before{content:"";width:.65rem;height:.65rem;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spectral-loading-spin .8s linear infinite}@keyframes spectral-loading-spin{to{transform:rotate(360deg)}}@media(max-width:760px){.spectral-controls{gap:.45rem}.spectral-chart-zoom{flex-wrap:wrap}.spectral-chart-hint{flex-basis:100%;margin-left:0}.spectral-sidebar{max-width:min(300px,70vw)}}@media(prefers-reduced-motion:reduce){.spectral-loading:before{animation:none}.spectral-sidebar,.spectral-lab.sidebar-collapsed .spectral-sidebar,.spectral-sidebar>*,.spectral-sidebar-toggle svg{transition:none}.spectral-legend li,.spectral-chart{animation:none}.spectral-catalog button:active,.spectral-toggle:active,.spectral-coords button:active{transform:none}}.spectral-main>*{flex-shrink:0}.spectral-switch{display:inline-flex;align-items:center;gap:.5rem;padding:.2rem .1rem;border:0;background:none;color:var(--sky-muted);font:inherit;font-size:.85rem;cursor:pointer}.spectral-switch-track{position:relative;width:2.1rem;height:1.2rem;border:1px solid var(--sky-line-strong);border-radius:999px;background:var(--sky-bg);transition:background-color .18s ease,border-color .18s ease}.spectral-switch-thumb{position:absolute;top:50%;left:.15rem;width:.8rem;height:.8rem;border-radius:50%;background:var(--sky-muted);transform:translateY(-50%);transition:transform .18s ease,background-color .18s ease}.spectral-switch[aria-checked=true]{color:var(--sky-ink)}.spectral-switch[aria-checked=true] .spectral-switch-track{border-color:var(--sky-accent);background:var(--sky-accent-soft)}.spectral-switch[aria-checked=true] .spectral-switch-thumb{background:var(--sky-accent);transform:translate(.9rem,-50%)}.spectral-switch:hover .spectral-switch-track{border-color:var(--sky-accent)}.spectral-switch:focus-visible{outline:2px solid var(--sky-accent);outline-offset:3px;border-radius:var(--radius-sm)}.spectral-table-title{margin:0;color:var(--sky-muted);font-size:.9rem;font-weight:600}@media(prefers-reduced-motion:reduce){.spectral-switch-track,.spectral-switch-thumb{transition:none}}.spectral-table-scroll{border:1px solid var(--sky-line);border-radius:var(--radius-md);background:var(--sky-surface)}.spectral-table table{width:100%}.spectral-table th:first-child,.spectral-table td:first-child{padding-left:14px}.spectral-table th:last-child,.spectral-table td:last-child{padding-right:14px}.spectral-table tbody tr:last-child td{border-bottom:0}.spectral-table tbody tr:hover td{background:var(--sky-hover)}:root{--sky-bg: #000000;--sky-surface: #18181b;--sky-raised: #222226;--sky-hover: #2a2a2f;--sky-line: #2a2a2f;--sky-line-strong: #3f3f46;--sky-ink: #f4f4f5;--sky-muted: #b4b4bc;--sky-faint: #8e8e98;--sky-accent: #f4f4f5;--sky-accent-strong: #ffffff;--sky-accent-soft: rgba(244, 244, 245, .1);--signal: var(--sky-warm);--signal-strong: #e09a2c;--sky-warm: #f5b041;--sky-danger: #ff6b5b;--sky-glass-bg: rgba(24, 24, 27, .94);--sky-glass-border: #3f3f46;--sky-panel: #18181b;--sky-border: #3f3f46;--plate-paper: #f4f4f5;--plate-panel: #ffffff;--plate-raised: #ffffff;--plate-ink: #18181b;--plate-muted: #52525b;--plate-faint: #71717a;--plate-rule: #d4d4d8;--plate-rule-strong: #a1a1aa;--plate-rust: #d63a27;--plate-rust-soft: rgba(214, 58, 39, .1);--plate-teal: #18181b;--plate-teal-soft: rgba(24, 24, 27, .06);--plate-matte: #0b0b0d;--sans: "Public Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--serif: var(--sans);--mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0;background-color:var(--sky-bg);color:var(--sky-ink);font-family:var(--sans);font-size:13px;line-height:1.5;-webkit-font-smoothing:antialiased}button,input,select{font:inherit;color:inherit}button{cursor:pointer;border:none;background:none}button:disabled{cursor:not-allowed;opacity:.45}:focus-visible{outline:2px solid var(--sky-accent);outline-offset:2px}.num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.planet-app-shell{display:flex;flex-direction:column;height:100vh;height:100svh;overflow:hidden}.workspace-container{flex:1;position:relative;min-height:0}.workspace-layer{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.layer-hidden{display:none!important}.layer-active{display:flex;flex-direction:column}.app-topbar{height:56px;min-height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;background-color:var(--sky-surface);border-bottom:1px solid var(--sky-line);z-index:50}.topbar-left{display:flex;align-items:center;gap:16px}.brand{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.brand-logo{display:inline-flex;color:var(--sky-warm)}.sky-icon{display:block;width:18px;height:18px;flex:none}.brand-logo .sky-icon{width:20px;height:20px}.brand-name{font-size:15px;font-weight:700;letter-spacing:-.01em;color:var(--sky-ink)}.brand-sub{font-size:12px;color:var(--sky-muted)}.provenance-chip{display:inline-flex;align-items:center;padding:3px 9px;background:#ffb27a1f;border:1px solid rgba(255,178,122,.3);border-radius:999px;color:var(--sky-warm);font-size:11px;font-weight:600;letter-spacing:.03em}.workspace-switch{display:flex;background:var(--sky-bg);padding:3px;border-radius:var(--radius-md);border:1px solid var(--sky-line-strong)}.switch-btn{padding:5px 16px;border-radius:var(--radius-sm);font-size:12px;font-weight:600;color:var(--sky-muted);transition:all .15s ease}.switch-btn:hover:not(:disabled){color:var(--sky-ink)}.switch-btn.active{background:var(--sky-raised);color:var(--sky-accent);box-shadow:0 1px 3px #0000004d}.topbar-right{display:flex;align-items:center;gap:12px}.data-notes-wrap{position:relative}.data-notes-badge{display:inline-flex;align-items:center;gap:7px;padding:5px 12px;border:1px solid var(--sky-line-strong);border-radius:999px;background:var(--sky-surface);color:var(--sky-muted);font-size:12px;font-weight:500;transition:all .15s ease}.data-notes-badge:hover,.data-notes-badge[aria-expanded=true]{color:var(--sky-ink);border-color:var(--sky-faint);background:var(--sky-raised)}.data-notes-badge .dot{width:6px;height:6px;border-radius:50%;background-color:var(--sky-warm)}.data-notes-popover{position:absolute;top:calc(100% + 8px);right:0;width:330px;padding:14px 16px;background:var(--sky-raised);border:1px solid var(--sky-line-strong);border-radius:var(--radius-lg);box-shadow:0 14px 36px #0000008c;color:var(--sky-ink);z-index:100}.popover-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:12px;font-weight:600;color:var(--sky-accent);text-transform:uppercase;letter-spacing:.05em}.popover-close{font-size:18px;color:var(--sky-muted);line-height:1}.popover-close:hover{color:var(--sky-ink)}.popover-body{margin:0;font-size:12.5px;line-height:1.6;color:var(--sky-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:6px 14px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;transition:all .15s ease}.btn-primary{background:var(--sky-accent);color:#05080e;font-weight:600}.btn-primary:hover:not(:disabled){background:var(--sky-accent-strong)}.btn-secondary{background:var(--sky-raised);border:1px solid var(--sky-line-strong);color:var(--sky-ink)}.btn-secondary:hover:not(:disabled){background:var(--sky-hover)}.float{background:var(--sky-glass-bg);border:1px solid var(--sky-glass-border);border-radius:var(--radius-lg);box-shadow:0 8px 32px #00000073}.sky-workspace{display:grid;grid-template-columns:280px 1fr;width:100%;height:100%;position:relative;background-color:var(--sky-bg)}.mobile-rail-toggle{display:none}.sky-rail{width:280px;background-color:var(--sky-surface);border-right:1px solid var(--sky-line);display:flex;flex-direction:column;gap:20px;padding:16px;overflow-y:auto;z-index:20}.rail-section{display:flex;flex-direction:column;gap:8px}.rail-label{font-family:var(--mono);font-size:10.5px;font-weight:500;text-transform:uppercase;letter-spacing:.22em;color:var(--sky-muted);margin:0}.rail-help{margin:0;color:var(--sky-muted);font-size:11.5px;line-height:1.45}.sky-rail>.rail-section+.rail-section{padding-top:18px;border-top:1px solid var(--sky-line)}.recent-shortcuts{display:flex;flex-direction:column;gap:8px;margin-top:6px;padding-top:12px;border-top:1px solid var(--sky-line)}.search-box{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:10px;font-size:12px;pointer-events:none;opacity:.6}.rail-input{width:100%;height:34px;padding:0 10px;background:var(--sky-bg);border:1px solid var(--sky-line-strong);border-radius:var(--radius-sm);color:var(--sky-ink);font-size:12.5px}.search-input{padding-left:30px}.rail-input:focus-visible{border-color:var(--sky-accent)}.catalog-list{display:flex;flex-direction:column;gap:2px;max-height:220px;overflow-y:auto}.catalog-layers-section{padding-bottom:12px}.catalog-layer-list{display:flex;flex-direction:column;gap:4px}.catalog-group-label{margin:8px 0 2px;color:var(--sky-faint);font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.catalog-layer-toggle{display:flex;align-items:center;gap:9px;min-height:36px;cursor:pointer}.catalog-layer-toggle input{width:14px;height:14px;margin:0;accent-color:var(--sky-accent)}.catalog-layer-swatch{width:9px;height:9px;flex:0 0 9px}.catalog-layer-swatch.featured{background:#ffd36e;border:1px solid #fff0c2;transform:rotate(45deg)}.catalog-layer-swatch.simbad{background:#73d9f5;border-radius:50%}.catalog-layer-swatch.gaia{background:#b8e66e;border:1px solid #ecffc9;border-radius:50%}.catalog-layer-swatch.catwise{background:#f2a3d2;border:1px solid #ffe1f2;transform:rotate(45deg)}.catalog-layer-copy{display:flex;flex-direction:column;line-height:1.3}.catalog-layer-copy>span{color:var(--sky-ink);font-size:12px;font-weight:600}.catalog-layer-copy small{color:var(--sky-muted);font-size:10.5px}.catalog-layer-status{margin:2px 0 7px 32px;color:var(--sky-muted);font-size:10.5px;line-height:1.4}.catalog-row{display:flex;flex-direction:column;gap:2px;padding:7px 10px;border-radius:var(--radius-sm);text-align:left;transition:background .12s ease}.catalog-row:hover{background:var(--sky-hover)}.catalog-row-top{display:flex;justify-content:space-between;align-items:center}.object-name{font-size:13px;font-weight:600;color:var(--sky-ink)}.chip-precomputed{font-size:10px;font-weight:600;text-transform:uppercase;padding:1px 5px;background:var(--sky-accent-soft);color:var(--sky-accent);border-radius:4px}.catalog-row-bottom{display:flex;justify-content:space-between;font-size:11.5px;color:var(--sky-muted)}.rail-empty{padding:12px 6px;color:var(--sky-faint);font-size:12px;margin:0}.recent-list{display:flex;flex-wrap:wrap;gap:6px}.recent-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;background:var(--sky-raised);border:1px solid var(--sky-line-strong);border-radius:var(--radius-sm);font-size:11.5px;color:var(--sky-muted)}.recent-chip:hover{color:var(--sky-ink);border-color:var(--sky-accent)}.recent-name{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recent-meta{color:var(--sky-faint)}.coord-form{display:flex;flex-direction:column;gap:10px}.coord-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.coord-grid label{display:flex;flex-direction:column;gap:4px;font-size:11px;color:var(--sky-muted)}.coord-grid .span-2{grid-column:span 2}.coord-error{margin:0;font-size:11.5px;color:var(--sky-danger)}.btn-goto{width:100%;height:34px;background:var(--sky-raised);border:1px solid var(--sky-line-strong);color:var(--sky-ink)}.btn-goto:hover:not(:disabled){border-color:var(--sky-accent);color:var(--sky-accent-strong)}.sky-stage-container{flex:1;position:relative;height:100%;min-height:0;overflow:hidden}.aladin-shell{width:100%;height:100%;position:relative;background:#04060a;touch-action:none}.aladin-shell.mode-region{cursor:crosshair}#aladin-view{width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0}#aladin-view .aladin-popup-container.popup-below .aladin-popup-arrow{position:absolute;top:-23px;left:calc(50% - 12px);margin:0;transform:rotate(180deg)}#aladin-view .aladin-popup-container.popup-right .aladin-popup-arrow,#aladin-view .aladin-popup-container.popup-left .aladin-popup-arrow{position:absolute;top:calc(50% - 12px);margin:0}#aladin-view .aladin-popup-container.popup-right .aladin-popup-arrow{left:-23px;transform:rotate(90deg)}#aladin-view .aladin-popup-container.popup-left .aladin-popup-arrow{right:-23px;transform:rotate(-90deg)}#aladin-view .aladin-closeBtn:focus-visible{outline:2px solid var(--sky-accent);outline-offset:2px}.selection-box-overlay{position:absolute;border:2px dashed var(--sky-accent);background:#f4f4f526;pointer-events:none;z-index:25}.region-banner-alert{position:absolute;top:16px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:10px 16px;color:var(--sky-warm);font-size:13px;font-weight:500;border-color:#ffb27a59;z-index:40}.banner-close{color:var(--sky-warm);font-size:16px;font-weight:700}.sky-floating-toolbar{position:absolute;top:16px;right:16px;display:flex;align-items:center;padding:4px;gap:2px;z-index:30}.tool-group{display:flex;gap:2px}.tool-divider{width:1px;height:20px;background:var(--sky-line-strong);margin:0 4px}.tool-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--sky-muted);font-size:15px;font-weight:700;transition:all .15s ease}.tool-btn:hover:not(:disabled){background:var(--sky-hover);color:var(--sky-ink)}.tool-btn.active{background:var(--sky-accent-soft);color:var(--sky-accent)}.sky-data-card{position:absolute;bottom:84px;left:16px;width:250px;padding:12px 14px;display:flex;flex-direction:column;gap:6px;z-index:30}.data-card-row{display:flex;justify-content:space-between;font-size:12px}.card-label{color:var(--sky-faint)}.card-val{color:var(--sky-ink);font-weight:500}.highlight-lambda{color:var(--sky-accent);font-weight:600}.data-card-scale{display:flex;flex-direction:column;align-items:flex-start;margin-top:4px}.scale-line{width:80px;height:4px;border:1px solid var(--sky-accent);border-top:none}.scale-text{font-size:10px;color:var(--sky-muted);margin-top:2px}.status-caption{font-size:10.5px;color:var(--sky-faint);margin-top:4px;border-top:1px solid var(--sky-line);padding-top:4px}.sky-bottom-stack{position:absolute;bottom:16px;left:50%;transform:translate(-50%);width:min(520px,calc(100% - 32px));display:flex;flex-direction:column;align-items:center;gap:8px;z-index:30;pointer-events:none}.sky-bottom-stack>*{pointer-events:auto}.sky-channel-dock{position:relative;width:100%;padding:10px 18px;display:flex;flex-direction:column;gap:8px;z-index:30}.dock-header{display:flex;justify-content:space-between;align-items:center}.dock-channel-info{display:flex;align-items:center;gap:8px;font-size:12.5px}.dock-badge{font-weight:700;color:var(--sky-ink)}.dock-dot{color:var(--sky-faint)}.dock-lambda{color:var(--sky-accent);font-weight:600}.dock-detector{font-weight:600;color:var(--sky-warm)}.dock-band-badge{font-size:10.5px;padding:1px 6px;background:var(--sky-hover);border-radius:4px;color:var(--sky-muted)}.dock-nav-btns{display:flex;gap:4px}.dock-step-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--sky-raised);border:1px solid var(--sky-line-strong);border-radius:var(--radius-sm);color:var(--sky-ink);font-size:14px}.dock-step-btn:hover{background:var(--sky-hover)}.dock-slider-row{display:flex;align-items:center;gap:12px}.slider-edge{font-size:11px;color:var(--sky-faint)}.channel-slider{flex:1;accent-color:var(--sky-accent);height:6px;cursor:pointer}.preparing-card{position:absolute;top:64px;right:16px;width:310px;padding:16px;display:flex;flex-direction:column;gap:12px;z-index:35}.preparing-card.embedded{position:relative;inset:auto;width:100%;z-index:auto;box-sizing:border-box;border-radius:0;border-width:0 0 1px;box-shadow:none;background:var(--sky-surface);border-color:var(--sky-line)}.preparing-retry-note{margin:0;color:var(--sky-accent);font-size:11.5px;font-variant-numeric:tabular-nums}.plate-poll-alert{padding:12px 14px;background:var(--sky-surface);color:var(--sky-ink);border-bottom:1px solid var(--sky-line);font-size:11.5px}.plate-poll-alert p{margin:5px 0;overflow-wrap:anywhere}.plate-poll-alert button{color:var(--sky-accent);text-decoration:underline}.preparing-card.ready{border-color:#f4f4f566}.preparing-card.failed{border-color:#ff8b7b66}.preparing-header{display:flex;justify-content:space-between;align-items:flex-start}.preparing-title{margin:0;font-size:13.5px;font-weight:600;color:var(--sky-ink)}.preparing-sub{margin:2px 0 0;font-size:11.5px;color:var(--sky-muted)}.card-close-btn{font-size:16px;color:var(--sky-muted)}.progress-section{display:flex;flex-direction:column;gap:4px}.progress-bar-track{width:100%;height:6px;background:var(--sky-bg);border-radius:3px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--sky-accent),var(--sky-warm));width:100%;transform-origin:left;transition:transform .3s ease}.progress-info{display:flex;justify-content:space-between;font-size:11.5px}.stage-text{color:var(--sky-muted)}.progress-pct{color:var(--sky-accent);font-weight:600}.stage-checklist{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.checklist-item{display:flex;align-items:center;gap:8px;font-size:12px}.checklist-item.pending{color:var(--sky-faint)}.checklist-item.active{color:var(--sky-accent);font-weight:600}.checklist-item.completed{color:var(--sky-ink)}.checklist-item.error{color:var(--sky-danger)}.stage-icon{width:16px;text-align:center;font-size:11px}.error-box{display:flex;flex-direction:column;gap:8px}.preparing-trace{min-width:0;color:var(--sky-muted);font-size:11px}.preparing-trace summary{cursor:pointer;color:var(--sky-muted);line-height:1.5}.preparing-trace summary:hover{color:var(--sky-ink)}.preparing-trace-list{max-height:132px;margin:8px 0 0;padding:0;display:grid;gap:7px;overflow-y:auto;list-style:none}.preparing-trace-event{min-width:0;display:grid;grid-template-columns:58px minmax(0,1fr);gap:8px;font-size:10.5px}.preparing-trace-time{color:var(--sky-faint);font-variant-numeric:tabular-nums}.preparing-trace-copy{min-width:0;display:grid;gap:2px;color:var(--sky-muted);overflow-wrap:anywhere}.preparing-trace-event.started .preparing-trace-copy{color:var(--sky-accent)}.preparing-trace-event.failed .preparing-trace-copy,.discovery-attempt-failure{color:var(--sky-danger)}.preparing-trace-detail{color:var(--sky-muted)}.discovery-attempt-failure{margin:0;font-size:11.5px;font-weight:600}.error-detail{margin:0;font-size:12px;color:var(--sky-danger)}.btn-retry{align-self:flex-start;padding:4px 12px;background:#ff8b7b26;border:1px solid rgba(255,139,123,.3);color:var(--sky-danger)}.ready-actions{display:flex;justify-content:flex-end}.btn-open-plate{width:100%;padding:8px 16px;font-weight:600}.plate-workspace{display:flex;flex-direction:column;width:100%;height:100%;background-color:var(--plate-paper);color:var(--plate-ink);font-family:var(--sans)}.plate-ribbon{height:38px;min-height:38px;background:#11141c;border-bottom:1px solid #232a38;display:flex;align-items:center;justify-content:space-between;padding:0 16px;color:#cdd2de;font-size:12px;z-index:10}.ribbon-left{display:flex;align-items:center;gap:14px}.ribbon-back-btn{color:var(--sky-accent);font-weight:600;display:flex;align-items:center;gap:4px;padding:4px 8px;border-radius:var(--radius-sm);background:#f4f4f51a;transition:all .15s ease}.ribbon-back-btn:hover{background:#f4f4f533;color:#fff}.ribbon-plate-id{font-family:var(--mono);font-size:11px;color:#8c94a6}.ribbon-collection{font-size:11.5px;letter-spacing:.04em;color:#a4abbd}.ribbon-status-badge{font-family:var(--mono);font-size:10.5px;padding:2px 7px;background:#ffffff14;border-radius:4px;color:var(--sky-accent)}.plate-columns-layout{flex:1;display:grid;grid-template-columns:260px 1fr 300px;min-height:0;overflow:hidden}.plate-sheet{width:260px;background:var(--plate-panel);border-right:1px solid var(--plate-rule);display:flex;flex-direction:column;gap:14px;padding:16px 14px;overflow-y:auto}.sheet-header{display:flex;justify-content:space-between;align-items:baseline;border-bottom:2px solid var(--plate-ink);padding-bottom:6px}.sheet-title{margin:0;font-family:var(--serif);font-size:18px;font-weight:700;color:var(--plate-ink);letter-spacing:-.01em}.sheet-badge{font-family:var(--mono);font-size:12px;font-weight:700;color:var(--plate-rust)}.sheet-section{display:flex;flex-direction:column;gap:6px;padding-bottom:10px;border-bottom:1px dashed var(--plate-rule)}.section-label{margin:0 0 2px;font-family:var(--serif);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--plate-rust)}.meta-pair{display:flex;justify-content:space-between;align-items:baseline;font-size:12px}.meta-key{color:var(--plate-muted)}.meta-val{color:var(--plate-ink);font-family:var(--mono);font-weight:500}.text-truncate{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip-source{padding:1px 5px;background:var(--plate-teal-soft);color:var(--plate-teal);border-radius:3px;text-transform:uppercase;font-size:10px}.sheet-notice-box{background:#fbf7ec;border-left:1px solid var(--plate-rust);padding:8px 10px;font-size:11px;line-height:1.45;color:#4a3e2a}.notice-text{margin:0}.flag-legend-list{display:flex;flex-direction:column;gap:8px;max-height:160px;overflow-y:auto}.flag-legend-item{font-size:11.5px}.flag-item-header{display:flex;gap:6px;align-items:center}.flag-bit-index{font-family:var(--mono);font-size:10.5px;color:var(--plate-muted)}.flag-bit-name{font-family:var(--mono);color:var(--plate-ink)}.flag-bit-desc{margin:2px 0 0;font-size:10.5px;color:var(--plate-muted)}.sheet-provenance-details{background:#ede9df;border:1px solid var(--plate-rule);border-radius:var(--radius-sm);padding:8px 10px;font-size:11.5px}.provenance-summary{font-family:var(--serif);font-weight:600;cursor:pointer;color:var(--plate-teal)}.provenance-content{margin-top:8px;display:flex;flex-direction:column;gap:6px}.manifest-fields{display:flex;flex-direction:column;gap:4px}.manifest-notes{margin-top:4px;font-size:10.5px;color:var(--plate-muted)}.manifest-notes ul{margin:2px 0 0;padding-left:16px}.plate-stage{display:flex;flex-direction:column;min-width:0;min-height:0;background:#1e1e1e;position:relative}.stage-controls-bar{height:44px;min-height:44px;background:#252528;border-bottom:1px solid #36363a;display:flex;align-items:center;justify-content:space-between;padding:0 16px;gap:16px;z-index:10}.stage-product-tabs{display:flex;gap:16px}.product-tab{font-family:var(--serif);font-size:13px;font-weight:600;letter-spacing:.05em;color:#9e9ea6;padding:10px 0;border-bottom:2px solid transparent;transition:all .15s ease}.product-tab:hover{color:#e5e5ec}.product-tab.active{color:#fff;border-bottom-color:var(--sky-accent)}.tab-action{font-family:var(--sans);font-size:11px;color:#b3b3bf;border-bottom:none}.stage-mode-switches{display:flex;align-items:center;gap:14px}.switch-group{display:flex;background:#17171a;border-radius:var(--radius-sm);padding:2px;border:1px solid #34343a}.mode-btn{padding:4px 10px;font-size:11.5px;border-radius:2px;color:#9e9ea6}.mode-btn.active{background:#34343d;color:#fff;font-weight:500}.stretch-select-wrap{display:flex;align-items:center;gap:6px;font-size:11.5px;color:#9e9ea6}.stretch-select{background:#17171a;border:1px solid #34343a;color:#fff;border-radius:var(--radius-sm);padding:3px 6px;font-size:11.5px}.stage-zoom-controls{display:flex;gap:4px}.zoom-btn{width:26px;height:26px;background:#17171a;border:1px solid #34343a;border-radius:var(--radius-sm);color:#e5e5ec;font-size:14px;font-weight:700}.zoom-btn:hover{background:#34343a}.reset-btn{width:auto;padding:0 8px;font-size:11px;font-weight:400}.plate-viewport-matte{flex:1;background:var(--plate-matte);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;cursor:crosshair}.viewport-fov-label{position:absolute;top:14px;left:14px;padding:3px 8px;background:#000000b3;border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-sm);font-family:var(--mono);font-size:12px;color:#fff;z-index:20;pointer-events:none}.plate-loading-skeleton{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#101010d9;z-index:30}.skeleton-box{width:280px;height:280px;background:#1c1c1f;border:1px solid #333338;border-radius:var(--radius-md);animation:pulse 1.4s ease-in-out infinite}.skeleton-label{color:#a4abbd;font-size:13px}@media(prefers-reduced-motion:reduce){.skeleton-box{animation:none}}@keyframes pulse{0%{opacity:.5}50%{opacity:.9}to{opacity:.5}}.plate-channel-error{position:absolute;top:16px;padding:10px 18px;background:#8a3b2ee6;border:1px solid #d45946;border-radius:var(--radius-md);color:#fff;font-size:12.5px;display:flex;align-items:center;gap:12px;z-index:30}.cutout-transform-container{position:relative;width:440px;height:440px;max-width:90%;max-height:90%;transform-origin:center center;transition:transform .05s linear;box-shadow:0 10px 40px #000000e6}.cutout-img{width:100%;height:100%;object-fit:contain;image-rendering:pixelated;image-rendering:-moz-crisp-edges;display:block}.invert-plate{filter:invert(1) grayscale(1)}.split-overlay-container{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.split-divider-line{position:absolute;top:0;bottom:0;width:2px;background:var(--sky-warm);transform:translate(-50%);pointer-events:none}.split-handle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--sky-warm);color:#000;padding:2px 4px;font-size:10px;font-weight:700;border-radius:3px}.split-slider-dock{position:absolute;bottom:12px;left:50%;transform:translate(-50%);background:#141414d9;border:1px solid #3a3a40;border-radius:999px;padding:6px 16px;display:flex;align-items:center;gap:12px;color:#fff;font-size:12px;z-index:20}.split-slider-dock input[type=range]{width:180px;accent-color:var(--sky-warm)}.probe-crosshair{position:absolute;transform:translate(-50%,-50%);width:24px;height:24px;pointer-events:none;z-index:15}.crosshair-ch-h{position:absolute;top:50%;left:0;right:0;height:1.5px;background:var(--sky-accent);transform:translateY(-50%)}.crosshair-ch-v{position:absolute;left:50%;top:0;bottom:0;width:1.5px;background:var(--sky-accent);transform:translate(-50%)}.crosshair-ring{position:absolute;top:4px;right:4px;bottom:4px;left:4px;border:1.5px solid var(--sky-accent);border-radius:50%}.probe-crosshair.pinned .crosshair-ring{border-color:var(--sky-warm)}.probe-crosshair.pinned .crosshair-ch-h,.probe-crosshair.pinned .crosshair-ch-v{background:var(--sky-warm)}.stage-epoch-strip{height:48px;min-height:48px;background:#1b1b1e;border-top:1px solid #2d2d32;display:flex;align-items:center;padding:0 16px;z-index:10}.epoch-single-note{font-size:12px;color:#8c8c94;font-style:italic}.epoch-multi-controls{display:flex;align-items:center;gap:12px;width:100%}.epoch-strip-label{font-size:11.5px;color:#8c8c94;text-transform:uppercase}.epoch-chips-list{display:flex;gap:6px;flex:1}.epoch-chip{padding:4px 10px;border-radius:var(--radius-sm);background:#28282c;color:#b4b4bd;font-family:var(--mono);font-size:11.5px;border:1px solid #3a3a42}.epoch-chip.active{background:#3c3c46;border-color:var(--sky-accent);color:#fff}.epoch-actions{display:flex;gap:6px}.btn-epoch-toggle{padding:4px 10px;border-radius:var(--radius-sm);background:#28282c;border:1px solid #3a3a42;color:#b4b4bd;font-size:11.5px}.btn-epoch-toggle.active{background:var(--sky-accent-soft);border-color:var(--sky-accent);color:var(--sky-accent);font-weight:600}.spectral-rail{width:300px;background:var(--plate-panel);border-left:1px solid var(--plate-rule);display:flex;flex-direction:column;min-height:0;outline:none}.rail-header{padding:12px 14px 8px;border-bottom:1px solid var(--plate-rule);display:flex;justify-content:space-between;align-items:baseline}.rail-title{margin:0;font-family:var(--serif);font-size:14px;font-weight:700;color:var(--plate-ink)}.rail-instructions{font-size:11px;color:var(--plate-muted)}.channel-vertical-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;padding:4px 0}.channel-rail-item{display:grid;grid-template-columns:28px 1fr 34px 34px;align-items:center;padding:5px 12px;font-size:12px;text-align:left;border-left:3px solid transparent;transition:all .12s ease}.channel-rail-item:hover:not(:disabled){background:#ede9df}.channel-rail-item.selected{background:#e6e0d2;border-left-color:var(--plate-rust);font-weight:600}.channel-rail-item.blank{opacity:.4;cursor:not-allowed}.ch-index{color:var(--plate-muted);font-family:var(--mono)}.ch-wave{font-family:var(--mono);color:var(--plate-ink)}.channel-rail-item.selected .ch-wave{color:var(--plate-rust)}.ch-det{font-family:var(--mono);color:var(--plate-teal);font-size:11px}.ch-band{font-family:var(--mono);font-size:10.5px;color:var(--plate-muted)}.ch-blank-badge{font-size:10px;color:var(--plate-muted);font-style:italic}.pixel-readout-card{border-top:2px solid var(--plate-rule-strong);background:#ede9e1;padding:12px 14px;display:flex;flex-direction:column;gap:8px}.readout-header{display:flex;justify-content:space-between;align-items:baseline}.readout-title{margin:0;font-family:var(--serif);font-size:13px;font-weight:700;color:var(--plate-teal);text-transform:uppercase;letter-spacing:.04em}.readout-coords{font-family:var(--mono);font-size:12px;font-weight:600}.pinned-badge{margin-left:6px;font-size:10px;padding:1px 4px;background:var(--plate-rust);color:#fff;border-radius:3px;text-transform:uppercase}.readout-empty-hint{font-size:11px;color:var(--plate-muted);font-style:italic}.pixel-readout-skeleton{font-size:11.5px;color:var(--plate-muted);padding:8px 0}.readout-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px}.readout-item{display:flex;flex-direction:column;gap:2px}.readout-item.span-2{grid-column:span 2}.item-label{font-size:10.5px;color:var(--plate-muted);text-transform:uppercase}.item-val{font-family:var(--mono);font-size:12px;color:var(--plate-ink)}.item-val.highlight{color:var(--plate-rust);font-weight:600}.in-window-badge{margin-left:6px;font-size:9.5px;padding:1px 5px;background:var(--plate-teal);color:#fff;border-radius:3px;text-transform:uppercase}.out-window-badge{margin-left:6px;font-size:9.5px;padding:1px 5px;background:#888;color:#fff;border-radius:3px;text-transform:uppercase}.active-flag-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:3px}.flag-chip{font-family:var(--mono);font-size:10px;padding:1px 5px;background:#ded7c8;border-radius:3px;color:var(--plate-ink)}.readout-placeholder{margin:0;font-size:11.5px;color:var(--plate-muted);line-height:1.4}.readout-footer-note{margin-top:4px;padding-top:6px;border-top:1px dashed var(--plate-rule);font-size:10px;color:var(--plate-muted);line-height:1.35}@media(max-width:900px){.sky-workspace{grid-template-columns:1fr}.mobile-rail-toggle{display:block;position:absolute;top:12px;left:12px;z-index:45;padding:6px 12px;background:var(--sky-glass-bg);border:1px solid var(--sky-glass-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-sm);color:var(--sky-ink);font-size:12px;font-weight:600}.sky-rail{position:absolute;top:0;left:0;bottom:0;width:290px;transform:translate(-100%);transition:transform .25s ease;box-shadow:4px 0 24px #0009}.sky-rail.open{transform:translate(0)}.plate-columns-layout{grid-template-columns:1fr;grid-template-rows:auto auto auto;overflow-y:auto}.plate-stage{order:1;height:55vh;min-height:360px}.plate-sheet{order:2;width:100%;border-right:none;border-bottom:1px solid var(--plate-rule)}.spectral-rail{order:3;width:100%;border-left:none}.channel-vertical-list{max-height:240px}}@media(max-width:560px){.app-topbar{padding:0 12px}.brand-sub{display:none}.sky-bottom-stack{width:calc(100% - 20px);bottom:10px}.sky-data-card{display:none}.stage-controls-bar{padding:0 8px;gap:8px}}.job-create-error-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 18px;background:#8a3b2eeb;border-bottom:1px solid #d45946;color:#fff;font-size:13px}.job-create-error-banner .banner-close{background:transparent;border:none;color:#fff;font-size:18px;line-height:1;cursor:pointer}.muted-text{margin:6px 0 0;color:var(--plate-muted);font-size:12px;line-height:1.45}.rail-source{flex-basis:100%;margin-top:2px;font-family:var(--mono);font-size:10px;letter-spacing:.02em;color:var(--plate-faint)}.rail-source.error{color:var(--plate-rust)}.plate-lvf-warning{position:absolute;top:14px;left:50%;transform:translate(-50%);width:min(560px,calc(100% - 40px));padding:10px 14px;background:#141414eb;border:1px solid rgba(255,178,122,.5);border-radius:var(--radius-md);color:#f4e6d8;font-size:12px;line-height:1.5;z-index:25}.plate-lvf-warning strong{color:#ffb27a}.plate-cutout-missing{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;max-width:420px;padding:28px;text-align:center;color:#d7dbe4}.plate-cutout-missing h3{margin:0;font-size:16px;letter-spacing:.01em}.plate-cutout-missing p{margin:0;font-size:12.5px;line-height:1.55;color:#a4abbd}#aladin-view .aladin-location,#aladin-view .aladin-fov{display:none!important}.persistent-region{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:4}.persistent-region polygon{fill:#f4f4f50f;stroke:var(--sky-accent);stroke-width:1.5;pointer-events:visiblePainted}.persistent-region foreignObject{pointer-events:auto;opacity:0}.persistent-region:hover foreignObject,.persistent-region:focus-within foreignObject{opacity:1}@media(max-width:1200px){.sky-data-card{bottom:100px}}@media(hover:none){.persistent-region foreignObject{opacity:1}}.sky-projection{position:absolute;right:16px;top:66px;z-index:31;display:flex;align-items:center;gap:8px;padding:7px 10px;background:var(--sky-panel);border:1px solid var(--sky-border);font-size:12px}.sky-projection select{background:var(--sky-bg);max-width:140px}.plate-open-quiet{position:absolute;right:16px;bottom:18px;z-index:30;padding:9px 13px;background:var(--sky-panel);border:1px solid var(--sky-border)}.persistent-region foreignObject{opacity:1}.persistent-region .region-clear{display:flex;align-items:center;justify-content:center;width:28px;height:28px;margin:2px;padding:0;border:2px solid var(--sky-accent);border-radius:50%;background:var(--sky-bg);color:#fff;cursor:pointer;transition:background .15s,border-color .15s}.persistent-region .region-clear:hover,.persistent-region .region-clear:focus-visible{background:var(--sky-accent);color:var(--sky-bg);border-color:#fff}.persistent-region .region-clear svg{width:12px;height:12px;stroke:currentColor;stroke-width:2;stroke-linecap:round;fill:none}.persistent-region .region-body{pointer-events:none}.persistent-region .region-move-handle{pointer-events:all;cursor:move;touch-action:none}.persistent-region .region-move-handle rect{fill:var(--sky-bg);stroke:var(--sky-accent);stroke-width:2}.persistent-region .region-move-handle circle{fill:var(--sky-accent);pointer-events:none}.persistent-region .region-move-handle:hover rect{fill:var(--sky-hover);stroke:var(--sky-accent-strong)}.persistent-region .region-handle{fill:var(--sky-bg);stroke:var(--sky-accent);stroke-width:2;pointer-events:all;touch-action:none}.persistent-region .handle-nwse{cursor:nwse-resize}.persistent-region .handle-nesw{cursor:nesw-resize}.region-confirm-bar{position:relative;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;max-width:100%;padding:8px 44px 8px 18px;background:var(--sky-panel);border:1px solid var(--sky-border);font-size:12px;color:var(--sky-ink)}.region-confirm-hint{color:var(--sky-muted)}.region-confirm-btn{padding:5px 14px;border:1px solid var(--sky-accent);border-radius:var(--radius-md);background:var(--sky-accent);color:var(--sky-bg);font-size:11px;font-weight:700;cursor:pointer;transition:filter .15s}.region-confirm-btn:hover,.region-confirm-btn:focus-visible{filter:brightness(1.12)}@media(max-width:640px){.region-confirm-hint{display:none}}.spectral-layer.layer-active{flex-direction:row;overflow:hidden}.spectral-lab{display:flex;flex:1;min-height:0;background:var(--sky-bg)}.spectral-sidebar{width:300px;flex-shrink:0;overflow-x:hidden;overflow-y:auto;padding:16px;border-right:1px solid var(--sky-line);background:var(--sky-surface);display:flex;flex-direction:column;gap:20px}.spectral-heading{margin:0 0 8px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--sky-muted)}.spectral-muted{color:var(--sky-muted);margin:0}.spectral-catalog,.spectral-legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.spectral-catalog button{width:100%;display:flex;justify-content:space-between;gap:8px;padding:7px 10px;border:1px solid var(--sky-line);border-radius:var(--radius-sm);background:var(--sky-raised);color:var(--sky-ink);cursor:pointer;text-align:left}.spectral-catalog button:hover:not(:disabled){background:var(--sky-hover);border-color:var(--sky-line-strong)}.spectral-catalog button:disabled{opacity:.55;cursor:default}.spectral-catalog-type{color:var(--sky-faint);font-size:11px;white-space:nowrap}.spectral-coords{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:end;margin-top:12px}.spectral-coords label{min-width:0;display:flex;flex-direction:column;gap:4px;font-size:11px;color:var(--sky-muted)}.spectral-coords input{min-width:0;padding:6px 8px;border:1px solid var(--sky-line-strong);border-radius:var(--radius-sm);background:var(--sky-bg);color:var(--sky-ink);font-family:var(--mono)}.spectral-coords button{padding:6px 12px;border:1px solid var(--sky-accent);border-radius:var(--radius-sm);background:var(--sky-accent-soft);color:var(--sky-accent-strong);cursor:pointer}.spectral-form-error{margin:8px 0 0;color:var(--sky-danger)}.spectral-legend li{display:flex;align-items:center;gap:8px;padding:6px 4px;border-bottom:1px solid var(--sky-line)}.spectral-legend li.is-hidden .spectral-legend-text{opacity:.5}.spectral-legend-text{flex:1;min-width:0;display:flex;flex-direction:column}.spectral-legend-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spectral-legend-text .spectral-muted{font-size:11px}.spectral-swatch{width:12px;height:12px;border-radius:3px;flex-shrink:0;display:inline-block}.spectral-icon-btn{padding:2px 8px;border:1px solid var(--sky-line-strong);border-radius:var(--radius-sm);background:transparent;color:var(--sky-muted);cursor:pointer}.spectral-icon-btn:hover:not(:disabled){color:var(--sky-ink);background:var(--sky-hover)}.spectral-main{flex:1;min-width:0;overflow-y:auto;padding:20px 24px;display:flex;flex-direction:column;gap:12px}.spectral-main-header h1{margin:0;font-size:18px}.spectral-disclaimer{margin:0;padding:8px 12px;border:1px solid var(--sky-line-strong);background:var(--sky-raised);color:var(--sky-muted)}.spectral-chart{position:relative;width:100%;min-height:380px;border:1px solid var(--sky-line);border-radius:var(--radius-md);background:var(--sky-surface)}.spectral-chart svg{display:block;touch-action:none}.spectral-chart-empty{display:flex;align-items:center;justify-content:center}.spectral-grid{stroke:var(--sky-line);stroke-width:1}.spectral-axis{stroke:var(--sky-line-strong);stroke-width:1}.spectral-tick{fill:var(--sky-faint);font-size:11px;font-family:var(--mono)}.spectral-axis-title{fill:var(--sky-muted);font-size:11px}.spectral-line{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.spectral-crosshair{stroke:var(--sky-muted);stroke-width:1;stroke-dasharray:3 3}.spectral-marker{stroke:var(--sky-surface);stroke-width:2}.spectral-tooltip{position:absolute;width:208px;padding:8px 10px;border:1px solid var(--sky-glass-border);border-radius:var(--radius-md);background:var(--sky-glass-bg);color:var(--sky-ink);pointer-events:none;font-size:12px;display:flex;flex-direction:column;gap:4px}.spectral-tooltip-row{display:grid;grid-template-columns:12px 1fr auto;gap:6px;align-items:center}.spectral-tooltip-row span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spectral-tooltip-value{font-family:var(--mono);color:var(--sky-muted)}.spectral-table-scroll{max-height:320px;overflow:auto;margin-top:8px}.spectral-table table{border-collapse:collapse;font-family:var(--mono);font-size:12px}.spectral-table th,.spectral-table td{padding:3px 10px;border-bottom:1px solid var(--sky-line);text-align:right;white-space:nowrap}.spectral-table th{position:sticky;top:0;background:var(--sky-surface);color:var(--sky-muted);font-family:var(--sans)}@media(max-width:760px){.spectral-lab{flex-direction:column;overflow-y:auto}.spectral-sidebar{width:100%;border-right:none;border-bottom:1px solid var(--sky-line)}.spectral-main{padding:16px;overflow:visible}}@media(max-width:520px){.switch-label-long{display:none}.switch-btn{padding:5px 10px}}.spectral-toolbar{display:flex;align-items:center;gap:6px}.spectral-toolbar .spectral-muted{margin-right:4px;font-size:12px}.spectral-toggle{padding:4px 12px;border:1px solid var(--sky-line-strong);border-radius:var(--radius-sm);background:transparent;color:var(--sky-muted);font-size:12px;cursor:pointer}.spectral-toggle.active{border-color:var(--sky-accent);background:var(--sky-accent-soft);color:var(--sky-accent-strong)}.spectral-chart-note{margin:0;padding:6px 12px 10px;color:var(--sky-muted);font-size:12px}.dock-mode-switch{display:flex;gap:4px;align-self:center;padding:2px;border:1px solid var(--sky-line-strong);border-radius:var(--radius-md);background:var(--sky-bg)}.dock-mode-btn{padding:3px 12px;border-radius:var(--radius-sm);font-size:11px;font-weight:600;color:var(--sky-muted)}.dock-mode-btn.active{background:var(--sky-raised);color:var(--sky-accent)}.dock-rgb{display:flex;flex-direction:column;gap:8px}.dock-rgb-presets{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.dock-preset-btn{padding:3px 10px;border:1px solid var(--sky-line-strong);border-radius:999px;font-size:11px;color:var(--sky-ink)}.dock-preset-btn:hover{background:var(--sky-hover)}.dock-rgb-selects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.dock-rgb-select{display:flex;align-items:center;gap:6px;min-width:0;font-size:11px;font-weight:700}.dock-rgb-select span{display:inline-flex;align-items:center;gap:6px;color:var(--sky-ink)}.dock-rgb-select span:before{content:"";width:8px;height:8px;background:var(--band-hue)}.dock-rgb-select.band-r{--band-hue: #e66767}.dock-rgb-select.band-g{--band-hue: #0ca30c}.dock-rgb-select.band-b{--band-hue: #3987e5}.dock-rgb-select select{min-width:0;width:100%;padding:3px 4px;border:1px solid var(--sky-line-strong);border-radius:var(--radius-sm);background:var(--sky-bg);color:var(--sky-ink);font-family:var(--mono);font-size:11px}.dock-rgb-note,.dock-rgb-error{margin:0;font-size:11px;text-align:center;color:var(--sky-muted)}.dock-rgb-error{color:var(--sky-danger)}@media(max-width:520px){.dock-rgb-selects{grid-template-columns:1fr}}.records-layer{background:var(--sky-bg);color:var(--sky-ink);overflow-y:auto}.records-workspace{width:100%;max-width:1200px;margin:0 auto;padding:24px 16px 48px;box-sizing:border-box}.records-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.records-header h2{margin:0;font-size:1.25rem}.records-sub,.records-empty{margin:4px 0 0;color:var(--sky-muted)}.records-error{margin:0 0 12px;padding:10px 12px;border:1px solid var(--sky-danger);border-radius:6px;color:var(--sky-danger)}.records-table{width:100%;border-collapse:collapse;font-size:.875rem}.records-table th,.records-table td{padding:8px 10px;border-bottom:1px solid var(--sky-line);text-align:left;vertical-align:middle}.records-table th{color:var(--sky-faint);font-weight:500;white-space:nowrap}.records-table tbody tr:hover{background:var(--sky-hover)}.records-mono{font-variant-numeric:tabular-nums;white-space:nowrap}.records-muted{color:var(--sky-muted)}.records-name{display:flex;align-items:center;gap:6px;min-width:140px;position:relative}.records-name-text{padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:text;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.records-name-text.records-muted{color:var(--sky-muted);font-weight:400}.records-name-edit{padding:2px 6px;border:1px solid transparent;border-radius:6px;color:var(--sky-muted);cursor:pointer;opacity:.6}tr:hover .records-name-edit,.records-name-edit:focus-visible{opacity:1}.records-name-edit:hover{border-color:var(--sky-line-strong);color:var(--sky-ink)}.records-name-input{position:absolute;top:0;right:0;bottom:0;left:0;box-sizing:border-box;width:100%;min-width:0;height:100%;padding:0 8px;border:1px solid var(--sky-line-strong);border-radius:var(--radius-sm);background:var(--sky-bg);color:var(--sky-ink);font:inherit;font-weight:600}.records-name-input:focus{outline:2px solid var(--sky-accent);outline-offset:1px}.records-name-error{position:absolute;top:100%;left:0;z-index:1;background:var(--sky-bg);margin:0;color:var(--sky-danger);font-size:.75rem}.records-status.status-ready{color:var(--sky-accent-strong)}.records-status.status-failed{color:var(--sky-danger)}.records-actions{white-space:nowrap}.records-actions-inner{display:flex;gap:6px;justify-content:flex-end}.records-btn{padding:5px 10px;border:1px solid var(--sky-line-strong);border-radius:6px;background:var(--sky-raised);color:var(--sky-ink);font:inherit;cursor:pointer}.records-btn:hover:not(:disabled){border-color:var(--sky-accent)}.records-btn:disabled{opacity:.45;cursor:not-allowed}.records-btn.danger:hover:not(:disabled){border-color:var(--sky-danger);color:var(--sky-danger)}.records-more{margin-top:16px}@media(max-width:760px){.records-table thead{display:none}.records-table tr{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;padding:10px 0;border-bottom:1px solid var(--sky-line)}.records-table td{padding:0;border:0}.records-actions{grid-column:1 / -1}.records-actions-inner{justify-content:flex-start}}.records-status-error{margin:4px 0 0;max-width:36ch;color:var(--sky-muted);font-size:.8rem;line-height:1.3}.records-status-error summary{width:fit-content;color:var(--sky-accent);cursor:pointer}.records-status-error summary:hover{color:var(--sky-accent-strong)}.records-status-error summary:focus-visible{outline:2px solid var(--sky-accent);outline-offset:2px;border-radius:2px}.records-status-error .when-open,.records-status-error[open] .when-closed{display:none}.records-status-error[open] .when-open{display:inline}.records-failure{margin-top:4px}.records-failure-meta{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;margin:0 0 4px}.records-failure-meta dt{color:var(--sky-faint)}.records-failure-meta dd{margin:0;color:var(--sky-ink);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.records-failure-message{margin:0;max-height:12em;overflow-y:auto;overflow-wrap:anywhere}.records-failure-timeline{margin:6px 0 0;padding-left:1.2em}.records-failure-trace{margin-top:6px}.records-failure-trace summary{width:fit-content;color:var(--sky-accent);cursor:pointer}.records-failure-trace pre{margin:4px 0 0;max-height:16em;max-width:60ch;overflow:auto;padding:8px;border:1px solid var(--sky-line);border-radius:4px;background:var(--sky-bg);color:var(--sky-ink);font-size:.75rem;white-space:pre}.sky-selection-actions{position:absolute;right:16px;bottom:84px;z-index:30;display:flex;flex-direction:column;align-items:stretch;gap:6px}.selection-action-btn{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--sky-panel);border:1px solid var(--sky-border);border-radius:var(--radius-sm);color:var(--sky-ink);font-size:13px;font-weight:600}.selection-action-btn:hover{background:var(--sky-hover);border-color:var(--sky-muted)}.selection-action-btn:focus-visible{outline:2px solid var(--sky-ink);outline-offset:2px}.selection-action-icon{width:15px;height:15px;flex:none;fill:none;stroke:var(--sky-muted);stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}.selection-action-label{flex:1;text-align:left}.selection-action-arrow{width:13px;height:13px;flex:none;fill:none;stroke:var(--sky-muted);stroke-width:1.8;transition:transform .15s ease,stroke .15s ease}.selection-action-btn:hover .selection-action-arrow{transform:translate(2px);stroke:var(--sky-ink)}.assistant-launcher{position:fixed;right:20px;bottom:calc(20px + var(--consent-bar-height, 0px));z-index:80;display:grid;place-items:center;width:52px;height:52px;padding:0;border:1px solid var(--sky-glass-border);border-radius:50%;background:var(--sky-accent);color:var(--sky-bg);box-shadow:0 8px 28px #00000080;cursor:pointer;transition:transform .15s,filter .15s,bottom .35s cubic-bezier(.22,1,.36,1)}.assistant-launcher:hover,.assistant-launcher:focus-visible{transform:translateY(-1px);filter:brightness(1.1)}.assistant-launcher.is-open{background:var(--sky-raised);color:var(--sky-ink)}.assistant-launcher svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.assistant-panel{position:fixed;right:20px;bottom:calc(84px + var(--consent-bar-height, 0px));z-index:80;transition:bottom .35s cubic-bezier(.22,1,.36,1);display:flex;flex-direction:column;width:min(380px,calc(100vw - 40px));height:min(560px,calc(100svh - 120px));background:var(--sky-glass-bg);border:1px solid var(--sky-glass-border);border-radius:var(--radius-lg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 12px 40px #0000008c;color:var(--sky-ink);font-size:13px;overflow:hidden}.assistant-header{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--sky-line)}.assistant-tabs{display:flex;gap:2px;margin-left:auto;padding:2px;border:1px solid var(--sky-line-strong);border-radius:var(--radius-md);background:var(--sky-bg)}.assistant-tabs button,.assistant-reset,.assistant-activity-bar button{padding:3px 10px;border-radius:var(--radius-sm);color:var(--sky-muted);font-size:11px;font-weight:600;cursor:pointer}.assistant-tabs button[aria-selected=true]{background:var(--sky-raised);color:var(--sky-accent)}.assistant-reset{border:1px solid var(--sky-line-strong)}.assistant-messages,.assistant-activity{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:10px}.assistant-msg{max-width:88%;padding:8px 11px;border-radius:var(--radius-md);line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.assistant-msg p{margin:0}.assistant-msg.user{align-self:flex-end;background:var(--sky-accent);color:var(--sky-bg)}.assistant-msg.assistant{min-width:0;align-self:flex-start;background:var(--sky-raised);border:1px solid var(--sky-line)}.assistant-markdown{min-width:0;white-space:normal}.assistant-markdown>*+*,.assistant-markdown>p+p{margin-top:.75em}.assistant-markdown :is(h1,h2,h3,h4,h5,h6){margin:.9em 0 .4em;color:var(--sky-ink);font-size:1.05em;line-height:1.3}.assistant-markdown>:first-child{margin-top:0}.assistant-markdown>:last-child{margin-bottom:0}.assistant-markdown :is(ul,ol){padding-left:1.5em;margin-bottom:0}.assistant-markdown li+li{margin-top:.3em}.assistant-markdown li>p+p{margin-top:.5em}.assistant-markdown a{color:var(--sky-accent-strong);text-decoration:underline;text-underline-offset:2px}.assistant-markdown blockquote{margin-left:0;margin-right:0;padding:.2em .75em;border-left:2px solid var(--sky-accent);color:var(--sky-muted)}.assistant-markdown code{padding:.1em .3em;border-radius:var(--radius-sm);background:var(--sky-bg);font-family:var(--mono);font-size:.9em}.assistant-markdown pre{max-width:100%;overflow-x:auto;padding:10px;border:1px solid var(--sky-line);border-radius:var(--radius-sm);background:var(--sky-bg);white-space:pre;overflow-wrap:normal}.assistant-markdown pre code{padding:0;background:transparent}.assistant-markdown table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;font-size:.9em}.assistant-markdown :is(th,td){padding:6px 8px;border:1px solid var(--sky-line);text-align:left}.assistant-markdown th{background:var(--sky-bg)}.assistant-markdown img{max-width:100%;height:auto}.assistant-markdown hr{border:0;border-top:1px solid var(--sky-line)}.assistant-actions{margin:6px 0 0;padding:0;list-style:none;font-size:11px;color:var(--sky-accent)}.assistant-actions li:before{content:"→ "}.assistant-actions li.failed{color:var(--sky-danger)}.assistant-badge{display:inline-block;margin-top:6px;padding:1px 7px;border:1px solid var(--sky-line-strong);border-radius:999px;color:var(--sky-muted);font-size:10px}.assistant-notice{margin:0;color:var(--sky-muted);font-size:12px}.assistant-error{margin:0 12px;color:var(--sky-danger);font-size:12px}.assistant-input{display:flex;gap:8px;align-items:flex-end;padding:10px 12px;border-top:1px solid var(--sky-line)}.assistant-input textarea{flex:1;resize:none;padding:7px 9px;border:1px solid var(--sky-line-strong);border-radius:var(--radius-md);background:var(--sky-bg);color:var(--sky-ink);font:inherit}.assistant-input textarea:focus{outline:2px solid var(--sky-accent);outline-offset:1px}.assistant-input button{padding:7px 14px;border:1px solid var(--sky-accent);border-radius:var(--radius-md);background:var(--sky-accent);color:var(--sky-bg);font-weight:700;cursor:pointer}.assistant-input button:disabled,.assistant-input textarea:disabled{opacity:.5;cursor:not-allowed}.assistant-activity-bar{display:flex;align-items:center;justify-content:space-between;color:var(--sky-muted);font-size:11px}.assistant-activity-bar button{border:1px solid var(--sky-line-strong)}.assistant-log{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px;font-size:11px}.assistant-log li{display:grid;grid-template-columns:auto 1fr;gap:8px;padding-bottom:6px;border-bottom:1px solid var(--sky-line);overflow-wrap:anywhere}.assistant-log time{color:var(--sky-muted);font-variant-numeric:tabular-nums}.assistant-log .log-guardrail span,.assistant-log .log-error span{color:var(--sky-danger)}.assistant-log .log-cache_hit span{color:var(--sky-accent)}@media(max-width:520px){.assistant-panel{right:10px;left:10px;width:auto;bottom:calc(80px + var(--consent-bar-height, 0px))}}.name-suggestion-source{padding:1px 6px;border:1px solid var(--sky-line-strong);border-radius:999px;color:var(--sky-accent-strong);font-size:10px;font-weight:600;letter-spacing:.04em;white-space:nowrap}p.name-suggestion{margin:0;padding:7px 10px;font-size:12px;color:var(--sky-muted);overflow-wrap:anywhere}p.name-suggestion-error{color:var(--sky-danger)}.spectral-main-header h1,.records-header h2,.sheet-title{font-family:var(--sans);font-weight:800;letter-spacing:-.02em;color:var(--sky-ink)}.spectral-main-header h1,.records-header h2{font-size:30px;line-height:1.1}.sheet-title{color:var(--plate-ink);font-size:22px}.brand-name{font-size:18px;font-weight:800;letter-spacing:-.01em}.num,.card-val,.dock-badge,.dock-lambda,.object-coords{font-family:var(--mono);font-variant-numeric:tabular-nums}.provenance-chip{background:transparent;border:1px solid var(--sky-line-strong);color:var(--sky-muted);font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase}.switch-btn{font-weight:600}.switch-btn.active{background:var(--sky-raised);color:var(--sky-ink);box-shadow:inset 0 -2px 0 var(--signal)}.btn-primary,.btn-goto:not(:disabled),.region-confirm-btn{background:var(--signal);border-color:var(--signal);color:#18181b}.btn-primary:hover:not(:disabled),.btn-goto:hover:not(:disabled),.region-confirm-btn:hover{background:var(--signal-strong);border-color:var(--signal-strong);color:#18181b;filter:none}.workspace-switch{gap:22px;padding:0;background:transparent;border:none;border-radius:0}.switch-btn{position:relative;padding:8px 0;border-radius:0;background:transparent;font-size:14px;font-weight:600;color:var(--sky-faint)}.switch-btn:hover:not(:disabled){color:var(--sky-ink);background:transparent}.switch-btn.active{background:transparent;color:var(--sky-ink);font-weight:700;box-shadow:none}.switch-btn.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:2px;background:var(--signal)}.switch-btn:focus-visible{outline:2px solid var(--sky-ink);outline-offset:4px}@media(max-width:520px){.workspace-switch{gap:14px}.switch-btn{font-size:13px}}.landing{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;overflow-y:auto;overflow-x:hidden;background:#000;color:var(--sky-ink);--landing-scroll: 0;scroll-behavior:smooth}.landing-stars{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.landing>:not(.landing-stars){position:relative}.landing-nav{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:20px clamp(16px,5vw,64px);background:linear-gradient(#000 40%,transparent)}.landing-brand{display:inline-flex;align-items:center;gap:10px;font-size:20px;font-weight:800;letter-spacing:-.01em}.landing-nav nav{display:flex;gap:24px}.landing-nav nav button{padding:6px 0;font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--sky-muted)}.landing-nav nav button:hover{color:var(--sky-ink)}.landing-hero{min-height:calc(100vh - 72px);display:flex;flex-direction:column;justify-content:flex-start;padding:clamp(40px,14vh,150px) clamp(16px,8vw,128px) 32px;opacity:calc(1 - var(--landing-scroll) * 1.4);transform:translateY(calc(var(--landing-scroll) * -60px))}.landing-eyebrow{margin:0 0 20px;font-family:var(--mono);font-size:11.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--sky-warm)}.landing-hero h1{margin:0;max-width:14ch;font-size:clamp(44px,8.5vw,104px);font-weight:800;line-height:.98;letter-spacing:-.035em;text-wrap:balance}.landing-lede{max-width:56ch;margin:28px 0 0;font-size:clamp(16px,1.6vw,20px);line-height:1.55;color:var(--sky-muted)}.landing-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:40px}.landing-cta,.landing-secondary{display:inline-flex;align-items:center;gap:10px;height:48px;padding:0 22px;border-radius:var(--radius-sm);font-size:15px;font-weight:700}.landing-cta{background:var(--signal);color:#18181b;transition:background .15s ease}.landing-cta:hover{background:var(--signal-strong)}.landing-cta svg,.landing-link svg,.landing-hero-foot svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}.landing-secondary{border:1px solid var(--sky-line-strong);color:var(--sky-ink);cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.landing-secondary:hover{border-color:var(--sky-muted);background:#f4f4f50f}.landing-secondary:focus-visible{outline:2px solid var(--sky-ink);outline-offset:4px}.landing-cta:focus-visible,.landing-nav nav button:focus-visible,.landing-hero-foot button:focus-visible,.landing a:focus-visible{outline:2px solid var(--sky-ink);outline-offset:4px}.landing-hero-foot{display:flex;justify-content:space-between;gap:16px;margin-top:auto;padding-top:64px;font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--sky-faint)}.landing-hero-foot button{display:inline-flex;align-items:center;gap:8px;color:var(--sky-muted);letter-spacing:inherit;text-transform:inherit;font-size:inherit}.landing-context{padding:120px clamp(16px,8vw,128px) 96px;background:linear-gradient(transparent,#000 160px)}.landing-context h2,.landing-footer h2{margin:0 0 40px;font-size:clamp(28px,3.4vw,44px);font-weight:800;letter-spacing:-.025em}.landing-context-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:64px}.landing-context-grid article{display:grid;grid-template-columns:56px 1fr;gap:8px;padding:28px 0;border-top:1px solid var(--sky-line-strong)}.landing-index{font-family:var(--mono);font-size:22px;color:var(--sky-faint)}.landing-context h3{margin:2px 0 10px;font-size:20px;font-weight:700;letter-spacing:-.01em}.landing-context p{margin:0;max-width:52ch;line-height:1.6;color:var(--sky-muted)}.landing-link{display:inline-flex;align-items:center;gap:8px;margin-top:14px;font-weight:700;color:var(--sky-ink);text-decoration:none}.landing-link svg{width:18px;height:18px;padding:3px;border-radius:50%;background:var(--signal);color:#18181b;stroke-width:2.2}.landing-link:hover{text-decoration:underline;text-underline-offset:4px}.landing-cta-end{margin-top:48px}.landing-footer{padding:72px clamp(16px,8vw,128px) 48px;background:var(--sky-surface);border-top:1px solid var(--sky-line)}.landing-footer h2{font-size:13px;margin-bottom:24px;font-family:var(--mono);font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--sky-muted)}.landing-footer ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0;padding:0;list-style:none}.landing-footer li{display:flex;flex-direction:column;gap:4px}.landing-footer a{font-weight:700;color:var(--sky-ink);text-decoration:underline;text-decoration-color:var(--sky-line-strong);text-underline-offset:4px}.landing-footer a:hover{text-decoration-color:var(--signal)}.landing-footer li span{font-size:12.5px;color:var(--sky-faint)}.landing-disclaimer{margin:48px 0 0;padding-top:24px;border-top:1px solid var(--sky-line);font-size:12.5px;color:var(--sky-faint)}@media(max-width:760px){.landing-context-grid{grid-template-columns:1fr}.landing-footer ul{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-hero-foot span{display:none}}@media(prefers-reduced-motion:reduce){.landing{scroll-behavior:auto}.landing-hero{opacity:1;transform:none}}.brand:focus-visible{outline:2px solid var(--sky-ink);outline-offset:4px;border-radius:2px}@keyframes landing-rise{0%{opacity:0;transform:translateY(14px);filter:blur(6px)}}@keyframes landing-unmask{0%{clip-path:inset(0 0 100% 0);transform:translateY(24px)}to{clip-path:inset(0 0 -12% 0)}}.landing-eyebrow{animation:landing-rise .6s cubic-bezier(.16,1,.3,1) 80ms both}.landing-hero h1{animation:landing-unmask .8s cubic-bezier(.16,1,.3,1) .16s both}.landing-lede{animation:landing-rise .6s cubic-bezier(.16,1,.3,1) .38s both}.landing-actions{animation:landing-rise .6s cubic-bezier(.16,1,.3,1) .5s both}.landing-hero-foot,.landing-nav{animation:landing-rise .7s ease-out .65s both}.landing-cta svg{transition:transform .2s cubic-bezier(.16,1,.3,1)}.landing-cta:hover svg{transform:translate(2px,-2px)}.landing-nav,.landing-hero,.landing-context,.landing-footer{transition:opacity .45s ease-in,filter .45s ease-in,transform .45s ease-in}.landing-warping .landing-nav,.landing-warping .landing-hero,.landing-warping .landing-context,.landing-warping .landing-footer{opacity:0;filter:blur(8px);transform:scale(1.04);pointer-events:none}.landing-warping{cursor:progress}@media(prefers-reduced-motion:reduce){.landing-eyebrow,.landing-hero h1,.landing-lede,.landing-actions,.landing-hero-foot,.landing-nav{animation:none}.landing-nav,.landing-hero,.landing-context,.landing-footer{transition:none}}@keyframes iris-fade{0%{opacity:0}}@keyframes iris-rise{0%{opacity:0;transform:translateY(6px)}}@keyframes iris-pop{0%{opacity:0;transform:translateY(-4px) scale(.98)}}.layer-active{animation:iris-fade .18s ease-out}.switch-btn.active:after{animation:iris-underline .22s cubic-bezier(.16,1,.3,1)}@keyframes iris-underline{0%{transform:scaleX(0)}}.btn,.tool-btn,.switch-btn,.recent-chip,.catalog-row,.dock-step-btn,.zoom-btn,.selection-action-btn,.region-confirm-btn,.landing-cta{transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .12s ease,box-shadow .15s ease}.btn:active:not(:disabled),.tool-btn:active:not(:disabled),.recent-chip:active,.dock-step-btn:active,.zoom-btn:active,.selection-action-btn:active,.region-confirm-btn:active,.landing-cta:active{transform:scale(.97)}.catalog-row:active{background:var(--sky-hover)}.region-confirm-bar,.sky-selection-actions,.job-create-error-banner,.data-notes-popover{animation:iris-rise .22s cubic-bezier(.16,1,.3,1)}.region-banner-alert{animation:iris-rise-centred .22s cubic-bezier(.16,1,.3,1)}@keyframes iris-rise-centred{0%{opacity:0;transform:translate(-50%,6px)}to{transform:translate(-50%)}}.name-suggestion{animation:iris-pop .2s cubic-bezier(.16,1,.3,1)}.tool-btn.active{animation:iris-tool .2s cubic-bezier(.16,1,.3,1)}@keyframes iris-tool{0%{transform:scale(.88)}}@media(prefers-reduced-motion:reduce){.layer-active,.switch-btn.active:after,.region-confirm-bar,.sky-selection-actions,.region-banner-alert,.job-create-error-banner,.data-notes-popover,.name-suggestion,.tool-btn.active{animation:none}.btn:active,.tool-btn:active,.recent-chip:active,.dock-step-btn:active,.zoom-btn:active,.selection-action-btn:active,.region-confirm-btn:active,.landing-cta:active{transform:none}}.workspace-switch{position:relative}.switch-btn.active:after{display:none}.switch-indicator{position:absolute;left:0;bottom:0;height:2px;border-radius:2px;background:var(--signal);pointer-events:none;opacity:0}.switch-indicator[data-visible=true]{opacity:1}.switch-indicator.ready{transition:transform .32s cubic-bezier(.65,0,.35,1),width .32s cubic-bezier(.65,0,.35,1),opacity .15s ease}@media(prefers-reduced-motion:reduce){.switch-indicator.ready{transition:none}}.landing.landing-leaving{opacity:0;transition:opacity .65s cubic-bezier(.4,0,.2,1);pointer-events:none}@media(prefers-reduced-motion:reduce){.landing.landing-leaving{transition:none}}@keyframes app-arrive-view{0%{filter:brightness(0) blur(10px)}60%{filter:brightness(.6) blur(3px)}to{filter:none}}@keyframes app-arrive-bar{0%{opacity:0}}.app-arriving .workspace-container{animation:app-arrive-view .9s cubic-bezier(.22,1,.36,1) both}.app-arriving .app-topbar{animation:app-arrive-bar .5s ease-out .35s both}@media(prefers-reduced-motion:reduce){.app-arriving .workspace-container,.app-arriving .app-topbar{animation:none}}.tour-help-btn{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--sky-line-strong);border-radius:50%;color:var(--sky-muted);font-family:var(--mono);font-size:13px;font-weight:500}.tour-help-btn:hover{color:var(--sky-ink);border-color:var(--sky-muted)}.tour-help-btn:focus-visible{outline:2px solid var(--sky-ink);outline-offset:3px}#react-joyride-portal,.react-joyride__tooltip{font-family:var(--sans)}.react-joyride__tooltip h1,.react-joyride__tooltip h4{font-weight:800;letter-spacing:-.01em}.react-joyride__tooltip button[data-action=primary]{color:#18181b!important;font-weight:700}.landing-secondary:active{transform:scale(.97)}@media(prefers-reduced-motion:reduce){.landing-secondary:active{transform:none}}.region-discard-btn{position:absolute;top:6px;right:6px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--sky-muted);transition:background-color .15s ease,color .15s ease}.region-discard-btn:hover{background:var(--sky-hover);color:var(--sky-ink)}.region-discard-btn:focus-visible{outline:2px solid var(--sky-ink);outline-offset:2px}.region-discard-btn svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.dock-preset-btn{transition:background-color .15s ease,border-color .15s ease,color .15s ease}.dock-preset-btn.active{background:var(--sky-ink);border-color:var(--sky-ink);color:#18181b;font-weight:700}.dock-preset-btn.active:hover{background:var(--sky-ink)}.dock-preset-btn:focus-visible{outline:2px solid var(--sky-ink);outline-offset:2px}.spectral-subheading{margin:4px 0 0;font-size:13px;font-weight:700;color:var(--sky-ink)}.spectral-subheading-note{margin:2px 0 10px;font-size:11.5px;color:var(--sky-faint)}.spectral-subheading-coords{margin-top:18px;margin-bottom:8px;padding-top:14px;border-top:1px solid var(--sky-line)}.spectral-catalog button{align-items:center;text-align:left}.spectral-catalog-names{display:flex;flex-direction:column;gap:1px;min-width:0}.spectral-catalog-title{font-size:13px;font-weight:700;color:var(--sky-ink)}.spectral-catalog-subtitle{font-size:11px;color:var(--sky-faint)}.spectral-catalog-type{align-self:flex-start;padding-top:2px}.spectral-catalog button{padding:5px 9px}.spectral-catalog-title{font-size:12.5px}.spectral-catalog-subtitle,.spectral-catalog-type{font-size:10.5px}.consent-bar{position:fixed;right:0;bottom:0;left:0;z-index:90;display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;justify-content:space-between;padding:12px 16px;border-top:1px solid var(--sky-glass-border);background:var(--sky-glass-bg);color:var(--sky-ink);box-shadow:0 -8px 28px #00000073}.consent-bar-text{flex:1 1 420px;margin:0;color:var(--sky-muted);font-size:.9rem;line-height:1.45}.consent-bar-error{flex-basis:100%;margin:0;color:var(--sky-danger);font-size:.85rem}.consent-bar-actions{display:flex;flex-wrap:wrap;gap:8px}.consent-bar-primary{border-color:var(--sky-accent);background:var(--sky-accent);color:var(--sky-bg)}.records-consent{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:14px 16px;border:1px solid var(--sky-line-strong);border-radius:8px;color:var(--sky-muted)}.records-consent p{flex:1 1 320px;margin:0}@media(prefers-reduced-motion:reduce){.assistant-launcher,.assistant-panel{transition:none}}.workspace-error{max-width:34rem;margin:12vh auto 0;padding:1.5rem;border:1px solid var(--sky-line-strong);border-radius:var(--radius-md);background:var(--sky-surface);color:var(--sky-ink)}.workspace-error h2{margin:0 0 .5rem;font-size:1.1rem}.workspace-error p{margin:0 0 .75rem;color:var(--sky-muted)}.workspace-error-message{font-family:var(--mono);font-size:.85rem;color:var(--sky-danger)!important;overflow-wrap:anywhere}.workspace-error-actions{display:flex;gap:.5rem;flex-wrap:wrap}.workspace-error-actions button{padding:.45rem .9rem;border:1px solid var(--sky-line-strong);border-radius:var(--radius-sm);background:var(--sky-raised);color:var(--sky-ink);cursor:pointer}.workspace-error-actions button:first-child{border-color:var(--sky-accent);color:var(--sky-accent)}.workspace-error-actions button:hover{background:var(--sky-hover)}.assistant-guide{position:fixed;top:0;right:0;bottom:0;left:0;z-index:85;pointer-events:none}.assistant-guide-ring{position:fixed;box-sizing:border-box;border:2px solid var(--sky-warm);border-radius:10px;box-shadow:0 0 #f5b0418c;animation:assistant-guide-in .25s ease-out both,assistant-guide-pulse .9s ease-out .25s 2,assistant-guide-out .3s ease-in 1.5s forwards}.assistant-guide-reticle{position:fixed;width:64px;height:64px;color:var(--sky-warm);transform:translate(-50%,-50%);animation:assistant-guide-close .6s cubic-bezier(.22,1,.36,1) both,assistant-guide-out .3s ease-in 1.5s forwards}.assistant-guide-reticle svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round}.assistant-guide-reticle circle{fill:currentColor}.assistant-guide-label{position:fixed;padding:4px 10px;border:1px solid var(--sky-warm);border-radius:999px;background:var(--sky-glass-bg);color:var(--sky-ink);font-size:12px;white-space:nowrap;transform:translate(-50%);animation:assistant-guide-in .25s ease-out both,assistant-guide-out .3s ease-in 1.5s forwards}.assistant-guide-label.above{transform:translate(-50%,-100%)}@keyframes assistant-guide-in{0%{opacity:0}to{opacity:1}}@keyframes assistant-guide-out{to{opacity:0}}@keyframes assistant-guide-pulse{0%{box-shadow:0 0 #f5b0418c}to{box-shadow:0 0 0 12px #f5b04100}}@keyframes assistant-guide-close{0%{opacity:0;transform:translate(-50%,-50%) scale(2.2)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@media(prefers-reduced-motion:reduce){.assistant-guide-ring,.assistant-guide-reticle,.assistant-guide-label{animation:none}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-corner{background:transparent}::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:999px;background:var(--sky-line-strong) padding-box}::-webkit-scrollbar-thumb:hover{background:#71717a padding-box}::-webkit-scrollbar-thumb:active{background:var(--sky-muted) padding-box}::-webkit-scrollbar-button{display:none;width:0;height:0}@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:var(--sky-line-strong) transparent}}
