:root{--color-brand: #005d8a;--color-white: #ffffff;--color-scene-background: #0c002b;--color-element-base: #eaf4f4;--color-element-window: #ffce54;--color-element-edge: #013049;--color-result-shell: #f4fffa;--color-result-glass: #005d8a;--color-room-floor: #ffffff;--color-space-default: #ffffff;--color-floor-highlight: #00ff66;--color-roof-grid: #005d8a;--color-glazing-outline: #005d8a;--color-section-box: var(--color-secondary);--color-section-box-hover: var(--color-floor-highlight);--color-north-compass: var(--color-secondary-light);--color-context-roof: #ff00ff;--color-context-slab: #00ffff;--color-context-wall: #ffff00;--color-context-fallback: #ff0000;--color-wall-extrusion: #808080;--color-midnight: #0c002b;--chrome-dropzone-bg-hover: rgba(0, 214, 122, .12);--chrome-dropzone-fg: var(--chrome-fg);--chrome-pill-bg: var(--color-midnight);--chrome-pill-text: var(--color-white);--chrome-on-accent: var(--color-midnight);--chrome-fg: var(--color-white);--chrome-muted: rgba(255, 255, 255, .55);--chrome-border: rgba(255, 255, 255, .16);--chrome-logo-filter: brightness(0) invert(1);--chrome-chip-bg: var(--color-midnight);--chrome-chip-fg: var(--color-white);--chrome-panel-bg: rgba(255, 255, 255, .08);--panel-surface: var(--chrome-panel-bg);--panel-surface-solid: rgba(12, 0, 43, .86);--panel-item-bg: rgba(255, 255, 255, .07);--panel-ink: var(--chrome-fg);--panel-ink-muted: var(--chrome-muted);--panel-border: var(--chrome-border);--panel-accent: var(--color-secondary);--color-primary: #180057;--color-primary-light: #4e378a;--color-primary-dark: #0d0030;--color-secondary: #00d67a;--color-secondary-light: #99efca;--color-secondary-dark: #00a35e;--color-compliance-pass: #00ff66;--color-compliance-pass-bg: transparent;--color-compliance-fail: #ff3c3c;--color-compliance-unknown: #808080;--color-heatmap-isoline: #ffffff;--color-apartment-outline: #180057;--color-label-background: #0d0030;--color-label-text: #ffffff;--color-accent: #00ff66;--color-brand-blue: #0ea5e9;--color-space-blue: #005d8a;--color-text-light: #f4fffa;--color-text-dark: #000000;--color-text-muted: #666666;--color-bg-light: #f4fffa;--color-bg-white: #ffffff;--color-bg-overlay: rgba(0, 0, 0, .5);--color-border: #e5e5e5;--color-border-dark: #cccccc;--font-automate: "AUTOMATE", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-weight-light: 300;--font-weight-medium: 500;--font-weight-bold: 700;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--lang-selector-clearance: 88px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--z-help: 100;--z-top-controls: 1050;--z-side-sheet: 1100}:root[data-theme=light]{--chrome-pill-bg: #4e3582;--chrome-pill-text: var(--color-white);--chrome-fg: var(--color-midnight);--chrome-muted: rgba(12, 0, 43, .55);--chrome-border: rgba(12, 0, 43, .24);--chrome-logo-filter: brightness(0);--chrome-chip-bg: var(--color-white);--chrome-chip-fg: var(--color-midnight);--chrome-panel-bg: rgba(12, 0, 43, .08);--panel-item-bg: rgba(12, 0, 43, .05);--panel-surface-solid: rgba(255, 255, 255, .9);--color-compliance-pass: var(--color-secondary-dark)}html,body,#root{height:100%;margin:0}body{background:var(--color-scene-background);color:var(--chrome-fg);font-family:var(--font-automate)}.full-screen{width:100%;height:100%}.certify-shell{display:flex;flex-direction:column;height:100%}.certify-shell__header{position:relative;display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md)}.certify-shell__icon{height:34px;width:auto;display:block}.certify-shell__header-right{display:flex;align-items:center;gap:var(--spacing-sm)}.language-toggle{display:flex;align-items:center;gap:4px;font-family:var(--font-automate);font-weight:var(--font-weight-bold);font-size:13px}.language-toggle__option{padding:2px;background:none;border:none;color:var(--chrome-muted);cursor:pointer;transition:color .2s ease}.language-toggle__option:hover{color:var(--chrome-fg)}.language-toggle__option--active{color:var(--color-secondary)}.language-toggle__divider{color:var(--chrome-muted)}.docs-link{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-lg);background-color:var(--chrome-panel-bg);border:1px solid var(--chrome-border);color:var(--chrome-fg);font-family:var(--font-automate);font-weight:var(--font-weight-bold);font-size:14px;text-decoration:none;white-space:nowrap;transition:background-color .2s ease,color .2s ease}.docs-link:hover{background-color:var(--color-secondary);color:var(--chrome-on-accent)}.docs-link__icon{width:16px;height:16px;display:flex;flex-shrink:0}.docs-link__icon svg{width:100%;height:100%}.certify-shell__main{flex:1;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.certify-shell__placeholder{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);z-index:1;color:var(--chrome-muted)}.viewer,.viewer__scene{position:absolute;inset:0}.top-controls{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-xs);border-radius:var(--radius-lg);background-color:var(--chrome-panel-bg);border:1px solid var(--chrome-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-lg)}.control-btn{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);background-color:transparent;color:var(--chrome-fg);border:none;border-radius:var(--radius-md);font-family:var(--font-automate);font-weight:var(--font-weight-bold);font-size:14px;white-space:nowrap;cursor:pointer;transition:background-color .2s ease,color .2s ease}.control-btn:hover,.control-btn.active{background-color:var(--color-secondary);color:var(--chrome-on-accent)}.control-btn .btn-icon{width:18px;height:18px;display:flex;flex-shrink:0}.control-btn .btn-icon svg{width:100%;height:100%}.control-btn .btn-label{line-height:1}.control-btn:disabled{opacity:.5;cursor:not-allowed}.control-btn:disabled:hover{background-color:transparent;color:var(--chrome-fg)}.view-switch{--vs-h: 36px;--vs-pad: 3px;--vs-radius: 999px;--vs-duration: .28s;--vs-ease: cubic-bezier(.25, .8, .25, 1);--vs-track-bg: var(--panel-item-bg);--vs-thumb-bg: var(--chrome-chip-bg);--vs-thumb-shadow: 0 1px 3px rgba(0, 0, 0, .3);--vs-fg: var(--panel-ink-muted);--vs-fg-hover: var(--panel-ink);--vs-fg-active: var(--chrome-chip-fg);--vs-mark-edge: var(--panel-border);--vs-mark-muted: saturate(.85) opacity(.9);--vs-pos: 0;--vs-lean: 0px;--vs-drag: 0px;--vs-offset: calc(var(--vs-lean) + var(--vs-drag));position:relative;display:grid;grid-template-columns:1fr 1fr;box-sizing:border-box;height:var(--vs-h);margin-bottom:var(--spacing-sm);padding:var(--vs-pad);border-radius:var(--vs-radius);background:var(--vs-track-bg);isolation:isolate;font-family:var(--font-automate);font-size:13px;font-weight:var(--font-weight-bold);line-height:1;-webkit-user-select:none;user-select:none;touch-action:pan-y}.view-switch__labels{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr;padding:var(--vs-pad);pointer-events:none}.view-switch__cell{position:relative;display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;padding:0 10px}.view-switch__text{min-width:0;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.view-switch__labels--track{z-index:1;color:var(--vs-fg)}.view-switch__labels--track .view-switch__mark{filter:var(--vs-mark-muted);transition:filter .18s ease}.view-switch__labels--thumb{z-index:3;color:var(--vs-fg-active);clip-path:inset(var(--vs-pad) calc(50% - var(--vs-pos) * (50% - var(--vs-pad)) - var(--vs-offset)) var(--vs-pad) calc(var(--vs-pad) + var(--vs-pos) * (50% - var(--vs-pad)) + var(--vs-offset)) round var(--vs-radius));transition:clip-path var(--vs-duration) var(--vs-ease)}.view-switch__mark{flex:0 0 auto;width:18px;height:18px;border-radius:4px;background-size:100% 100%;image-rendering:pixelated;box-shadow:inset 0 0 0 1px var(--vs-mark-edge)}.view-switch__mark--icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:0;box-shadow:none;image-rendering:auto}.view-switch__mark--icon svg{width:16px;height:16px;fill:currentColor}.view-switch--header{flex:1;min-width:0;margin-bottom:0}.view-switch__thumb{position:absolute;z-index:2;top:var(--vs-pad);bottom:var(--vs-pad);left:var(--vs-pad);width:calc(50% - var(--vs-pad));border-radius:var(--vs-radius);background:var(--vs-thumb-bg);box-shadow:var(--vs-thumb-shadow);transform:translate(calc(var(--vs-pos) * 100% + var(--vs-offset)));transition:transform var(--vs-duration) var(--vs-ease),box-shadow .15s ease;pointer-events:none}.view-switch__option{position:relative;z-index:4;min-width:0;margin:0;padding:0;border:none;border-radius:var(--vs-radius);background:none;color:transparent;font:inherit;cursor:pointer}.view-switch__option[aria-checked=true]{cursor:default}.view-switch__option:focus{outline:none}.view-switch:has(.view-switch__option:focus-visible){outline:2px solid var(--color-secondary);outline-offset:2px}.view-switch:not([data-dragging]):has(.view-switch__option:nth-of-type(2)[aria-checked=false]:hover){--vs-lean: 2px}.view-switch:not([data-dragging]):has(.view-switch__option:nth-of-type(1)[aria-checked=false]:hover){--vs-lean: -2px}.view-switch:has(.view-switch__option:nth-of-type(1)[aria-checked=false]:hover) .view-switch__labels--track .view-switch__cell:nth-child(1),.view-switch:has(.view-switch__option:nth-of-type(2)[aria-checked=false]:hover) .view-switch__labels--track .view-switch__cell:nth-child(2){color:var(--vs-fg-hover)}.view-switch:has(.view-switch__option:nth-of-type(1)[aria-checked=false]:hover) .view-switch__labels--track .view-switch__cell:nth-child(1) .view-switch__mark,.view-switch:has(.view-switch__option:nth-of-type(2)[aria-checked=false]:hover) .view-switch__labels--track .view-switch__cell:nth-child(2) .view-switch__mark{filter:none}.view-switch:has(.view-switch__option:active) .view-switch__thumb{box-shadow:0 1px 1px #18005729}.view-switch[data-dragging] .view-switch__thumb,.view-switch[data-dragging] .view-switch__labels--thumb{transition:none}.view-switch[data-dragging],.view-switch[data-dragging] .view-switch__option{cursor:grabbing}.view-switch[aria-disabled=true]{opacity:.5}.view-switch[aria-disabled=true] .view-switch__option{cursor:not-allowed}@media(prefers-reduced-motion:reduce){.view-switch{--vs-duration: 1ms}.view-switch:not([data-dragging]){--vs-lean: 0px}}.legend{margin:0 0 var(--spacing-sm);padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--spacing-xs)}.legend__row{display:flex;align-items:center;gap:var(--spacing-xs)}.legend__swatch-btn{width:12px;height:12px;border-radius:var(--radius-sm);border:1px solid var(--panel-border);background:transparent;flex-shrink:0;padding:0;cursor:pointer}.legend__swatch-btn--hidden{background:transparent!important;border-color:var(--panel-ink-muted)}.legend__swatch-btn--pass{background:var(--color-compliance-pass);border-color:var(--color-compliance-pass);cursor:default}.legend__swatch-btn--fail{background:var(--color-compliance-fail);border-color:var(--color-compliance-fail);cursor:default}.legend__swatch-btn--unknown{background:var(--color-compliance-unknown);border-color:var(--color-compliance-unknown);cursor:default}.legend__row--caption .legend__label{color:var(--panel-ink-muted)}.legend__name{flex:1;min-width:0;padding:2px 4px;border:1px solid transparent;border-radius:var(--radius-sm);background:none;color:var(--panel-ink);font-family:var(--font-automate);font-size:.85rem;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.legend__name:hover,.legend__name:focus-visible{color:var(--panel-accent);outline:none}.legend__name--filter{flex:0 1 auto;display:inline-flex;align-items:baseline;gap:var(--spacing-xs);font-size:.75rem}.legend__name--hidden,.legend__unit--hidden .legend__name,.legend__filter--hidden .legend__name{color:var(--panel-ink-muted)}.legend__name-input{flex:1;min-width:0;font-family:var(--font-automate);font-size:.85rem;padding:2px 4px;border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--panel-ink)}.legend__name-input:hover,.legend__name-input:focus{border-color:var(--panel-border);background:var(--panel-item-bg);outline:none}.legend__row--hidden .legend__name-input{color:var(--panel-ink-muted)}.legend__value{color:var(--panel-ink-muted);font-size:.8rem;font-variant-numeric:tabular-nums;flex-shrink:0}.legend__bulk{margin-bottom:var(--spacing-xs)}.legend__bulk-btn{justify-self:end;padding:0;border:none;background:none;color:var(--panel-ink-muted);font-family:var(--font-automate);font-size:.7rem;letter-spacing:.02em;text-decoration:underline;text-underline-offset:2px;cursor:pointer;transition:color .15s ease}.legend__bulk-btn:hover,.legend__bulk-btn:focus-visible{color:var(--panel-ink);outline:none}.legend__swatch-btn--glass{opacity:.5}.legend__opening{display:flex;flex-direction:column;gap:var(--spacing-xs)}.legend__opening-toggle{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;padding:2px;border:none;background:transparent;cursor:pointer}.legend__opening-chevron{display:inline-flex;width:14px;height:14px;color:var(--panel-ink-muted);transition:transform .2s ease}.legend__opening-chevron svg{width:14px;height:14px}.legend__opening--open .legend__opening-chevron{transform:rotate(180deg)}.legend__opening .legend{margin:0 0 var(--spacing-xs) 18px}.legend__category{color:var(--panel-ink-muted);font-size:.75rem;flex:0 0 6.5em;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.legend--groups{gap:var(--spacing-sm)}.legend__group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.legend__group>.legend{margin:0 0 0 var(--spacing-sm)}.legend__group-header{display:flex;align-items:center;gap:var(--spacing-xs)}.legend__group-btn{display:flex;align-items:baseline;gap:var(--spacing-xs);padding:0;background:none;border:none;color:var(--panel-ink);font-family:var(--font-automate);font-weight:var(--font-weight-bold);font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;text-align:left;cursor:pointer}.legend__group-btn:hover{color:var(--panel-accent)}.legend__group-btn--hidden{color:var(--panel-ink-muted)}.legend__group-count{color:var(--panel-ink-muted);font-weight:400;font-size:.75rem}.legend__group .legend__group .legend__group-btn{font-size:.75rem;text-transform:none;letter-spacing:.02em}.legend__toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-xs) var(--spacing-sm);margin:var(--spacing-sm) 0 var(--spacing-xs)}.legend__filter,.legend__unit{display:flex;align-items:center;gap:var(--spacing-xs)}.legend__unit{width:100%}.legend__dot-btn{display:inline-flex;flex-shrink:0;padding:2px;border:none;background:none;cursor:pointer}.legend__dot{width:10px;height:10px;border-radius:50%;border:1px solid var(--legend-dot-color);background:var(--legend-dot-color);flex-shrink:0}.legend__dot--pass{--legend-dot-color: var(--color-compliance-pass)}.legend__dot--fail{--legend-dot-color: var(--color-compliance-fail)}.legend__dot--unknown,.legend__dot--neutral{--legend-dot-color: var(--panel-ink)}.legend__dot--partial{background:linear-gradient(90deg,var(--legend-dot-color) 50%,transparent 50%)}.legend__dot--hidden{background:transparent;border-color:var(--panel-ink-muted)}.legend-gradient{display:flex;flex-direction:column;gap:var(--spacing-xs)}.legend-gradient__track{position:relative;height:34px}.legend-gradient__bar{position:absolute;inset:20px 0 4px;border-radius:var(--radius-sm)}.legend-gradient__marker{position:absolute;top:16px;bottom:0;width:3px;margin-left:-1.5px;border-radius:2px;background:var(--color-heatmap-isoline);box-shadow:0 0 0 1px var(--color-label-background);pointer-events:none}.legend-gradient__track--isoline-off .legend-gradient__marker,.legend-gradient__track--isoline-off .legend-gradient__marker-label{opacity:.35}.legend__swatch-btn--isoline{background:var(--color-heatmap-isoline);border-color:var(--panel-ink-muted)}.legend-gradient__slider{position:absolute;inset:0;width:100%;margin:0;opacity:0;cursor:ew-resize}.legend-gradient__labels{display:flex;justify-content:space-between;color:var(--panel-ink-muted);font-size:.8rem}.legend-gradient__marker-label{position:absolute;top:0;transform:translate(-50%);color:var(--panel-ink);font-size:.75rem;line-height:1;font-variant-numeric:tabular-nums;pointer-events:none}.viewer__bottom-nav{position:absolute;bottom:var(--spacing-md);left:50%;transform:translate(-50%);z-index:1;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.top-controls--row{flex-direction:row}.control-btn--icon-only{width:auto;padding:var(--spacing-sm)}.control-btn--icon-only .btn-icon{margin:0}.viewer__floor-picker{position:absolute;left:calc(100% + var(--spacing-xs));top:50%;transform:translateY(-50%);width:160px}.viewer__floor-picker .lux-dropdown{margin-bottom:0}.viewer__floor-picker .lux-dropdown-list{position:absolute;bottom:100%;left:0;right:0;margin:0 0 4px}.handoff-notice{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:var(--color-scene-background)}.handoff-notice__card{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);max-width:320px;padding:var(--spacing-lg);border:1px solid var(--chrome-border);border-radius:var(--radius-md);background:var(--chrome-panel-bg);text-align:center}.handoff-notice__icon{height:32px}.handoff-notice__text{margin:0;font-weight:600}.handoff-notice__hint{margin:0;color:var(--chrome-muted)}.handoff-notice__button{padding:var(--spacing-xs) var(--spacing-md);border:1px solid var(--chrome-border);border-radius:var(--radius-sm);background:transparent;color:inherit;font:inherit;cursor:pointer}.handoff-notice__button:hover{border-color:var(--color-secondary)}.viewer-splash{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;background:var(--color-scene-background)}.viewer-splash-dots{display:flex;gap:12px}.viewer-splash-dots span{width:16px;height:16px;border-radius:50%;animation:viewerPulse 1.1s ease-in-out infinite}.viewer-splash-dots span:nth-child(1){background:var(--color-primary-dark);animation-delay:0s}.viewer-splash-dots span:nth-child(2){background:var(--color-primary);animation-delay:.14s}.viewer-splash-dots span:nth-child(3){background:var(--color-secondary);animation-delay:.28s}.viewer-splash-dots span:nth-child(4){background:var(--color-primary-light);animation-delay:.42s}.viewer-splash-text{max-width:320px;font-size:14px;font-weight:600;color:var(--chrome-muted);text-align:center;letter-spacing:.02em}.viewer-splash-text--error{color:var(--color-compliance-fail);max-width:420px;font-family:monospace;white-space:pre-wrap}.viewer-splash-error-dot{width:16px;height:16px;border-radius:50%;background:var(--color-compliance-fail)}@keyframes viewerPulse{0%,to{transform:scale(.55);opacity:.45}50%{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){.viewer-splash-dots span{animation:none;opacity:1;transform:none}}.auth-gate{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:var(--spacing-sm)}.auth-gate__button{font-family:var(--font-automate);font-weight:var(--font-weight-medium);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);border:1px solid var(--chrome-border);background:var(--chrome-panel-bg);color:var(--chrome-fg);cursor:pointer}.auth-gate__error{color:#ff5c5c}.auth-gate__title{margin:0;font-family:var(--font-automate);font-size:1.25rem;color:var(--chrome-fg);text-align:center}.auth-gate__email,.auth-gate__detail{margin:0;max-width:32rem;padding:0 var(--spacing-md);color:var(--chrome-fg);text-align:center}.auth-gate__actions{display:flex;gap:var(--spacing-sm)}.account-menu{position:relative}.account-menu__pill{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm);border-radius:var(--radius-lg);background-color:var(--chrome-panel-bg);border:1px solid var(--chrome-border);color:var(--chrome-fg);cursor:pointer;transition:background-color .2s ease,color .2s ease}.account-menu__pill:hover,.account-menu.open .account-menu__pill{background-color:var(--color-secondary);color:var(--chrome-on-accent)}.account-menu__icon,.account-menu__chevron{width:16px;height:16px;display:flex;flex-shrink:0}.account-menu__icon svg,.account-menu__chevron svg{width:100%;height:100%}.account-menu__dropdown{position:absolute;top:calc(100% + var(--spacing-xs));right:0;z-index:3;display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);min-width:220px;border-radius:var(--radius-md);background:var(--panel-surface);border:1px solid var(--panel-border);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.account-menu__email{color:var(--panel-ink-muted);font-size:.85rem;word-break:break-all}.account-menu__logout{font-family:var(--font-automate);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);border:1px solid var(--panel-border);background:transparent;color:var(--panel-ink);cursor:pointer}.account-menu__logout:hover{background:var(--chrome-panel-bg)}.lux-dropdown{position:relative;width:100%;margin-bottom:16px;font-family:var(--font-automate)}.lux-dropdown-button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);padding:8px 12px;background:var(--panel-item-bg);color:var(--panel-ink);border:1px solid var(--panel-border);border-radius:var(--radius-sm);font-family:inherit;font-size:.9rem;text-align:left;cursor:pointer;transition:border-color .2s ease,background-color .2s ease}.lux-dropdown-button:hover{background:var(--chrome-panel-bg)}.lux-dropdown-button:focus-visible{outline:2px solid var(--panel-accent);outline-offset:1px}.lux-dropdown-button:disabled{opacity:.5;cursor:not-allowed}.lux-dropdown.open .lux-dropdown-button{border-color:var(--panel-accent)}.lux-dropdown-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lux-dropdown-chevron{flex-shrink:0;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid currentColor;transition:transform .2s ease}.lux-dropdown.open .lux-dropdown-chevron{transform:rotate(180deg)}.lux-dropdown-list{list-style:none;margin:4px 0 0;padding:4px;background:var(--panel-surface);border:1px solid var(--panel-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);max-height:200px;overflow-y:auto}.lux-dropdown .lux-dropdown-list[hidden]{display:none}.lux-dropdown-option{padding:8px 10px;border-radius:var(--radius-sm);color:var(--panel-ink);font-size:.9rem;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lux-dropdown-option:hover,.lux-dropdown-option.active{background:var(--panel-accent);color:var(--chrome-on-accent)}.lux-dropdown-option[aria-selected=true]{font-weight:var(--font-weight-bold)}.collapsible-section{display:flex;flex-direction:column;min-height:0;overflow:hidden;background:var(--panel-surface);border:1px solid var(--panel-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--panel-ink);font-family:var(--font-automate)}.collapsible-section__header{flex-shrink:0;padding:var(--spacing-sm) var(--spacing-md);display:flex;align-items:center;gap:var(--spacing-sm)}.collapsible-section__title{flex:1;margin:0;font-size:14px;font-weight:var(--font-weight-bold);color:var(--panel-ink)}.collapsible-section__actions{display:flex;align-items:center;gap:var(--spacing-xs);flex-shrink:0}.collapsible-section__collapse-btn{background:transparent;border:none;color:var(--panel-ink);cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:background-color .2s ease}.collapsible-section__collapse-btn:hover{background-color:var(--chrome-panel-bg)}.collapsible-section__chevron{width:16px;height:16px;color:var(--panel-ink);transition:transform .25s ease}.collapsible-section:not(.collapsed) .collapsible-section__chevron{transform:rotate(180deg)}.collapsible-section__body{flex:1 1 auto;min-height:0;padding:0 var(--spacing-md) var(--spacing-md);overflow-y:auto}.collapsible-section.collapsed .collapsible-section__body{display:none}.collapsible-section--detached{gap:var(--spacing-sm);background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;overflow:visible}.collapsible-section--detached .collapsible-section__header{padding:0}.right-sidebar .collapsible-section--detached .collapsible-section__header{justify-content:flex-end}.right-sidebar .collapsible-section--detached .collapsible-section__header .collapsible-section__title{flex:0 0 auto}.collapsible-section--detached.collapsed .collapsible-section__panel{display:none}.collapsible-section__panel{display:flex;flex-direction:column;min-height:0;overflow:hidden;position:relative;background:var(--panel-surface-solid);border:1px solid var(--panel-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.collapsible-section__panel-header{flex-shrink:0;display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-sm) var(--spacing-sm) var(--spacing-md)}.collapsible-section__panel-header--bare{position:absolute;top:var(--spacing-xs);right:var(--spacing-xs);z-index:1}.collapsible-section__panel-header--bare~.collapsible-section__body{padding-top:var(--spacing-md)}.collapsible-section__close-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--panel-ink-muted);cursor:pointer;transition:background-color .2s ease}.collapsible-section__close-btn:hover{color:var(--panel-ink);background-color:var(--chrome-panel-bg)}.collapsible-section__close-icon{display:flex;width:18px;height:18px}.collapsible-section__close-icon svg{width:100%;height:100%;fill:currentColor}.collapsible-section__body{scrollbar-width:thin;scrollbar-color:transparent transparent;scrollbar-gutter:stable}.collapsible-section__body:hover{scrollbar-color:var(--panel-border) transparent}.collapsible-section__body::-webkit-scrollbar{width:6px}.collapsible-section__body::-webkit-scrollbar-track{background:transparent}.collapsible-section__body::-webkit-scrollbar-thumb{background:transparent;border-radius:3px}.collapsible-section__body:hover::-webkit-scrollbar-thumb{background:var(--panel-border)}.collapsible-section__body::-webkit-scrollbar-thumb:hover{background:var(--panel-ink-muted)}.snapshot-selector__row .snapshot-selector__inline-input{flex:1;min-width:0}.snapshot-selector__icon-btn{flex:0 0 36px;width:36px;display:inline-flex;align-items:center;justify-content:center;padding:0;border-radius:var(--radius-sm);border:1px solid var(--panel-border);background:var(--panel-item-bg);color:var(--panel-ink);cursor:pointer;transition:background-color .2s ease}.snapshot-selector__icon-btn svg{width:18px;height:18px}.snapshot-selector__icon-btn:hover:not(:disabled){background:var(--chrome-panel-bg)}.snapshot-selector__icon-btn:disabled{opacity:.4;cursor:not-allowed}.snapshot-selector__icon-btn--danger{color:#ff5c5c}.snapshot-selector__icon-btn--danger:hover:not(:disabled){border-color:#ff5c5c80}.snapshot-selector__action-btn{flex:1;font-family:var(--font-automate);font-size:.85rem;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);border:1px solid var(--panel-border);background:var(--panel-item-bg);color:var(--panel-ink);cursor:pointer;transition:background-color .2s ease}.snapshot-selector__action-btn:hover{background:var(--chrome-panel-bg)}.snapshot-selector__action-btn--danger{border-color:#ff5c5c80;color:#ff5c5c}.snapshot-selector__inline-form{display:flex;align-items:center;gap:var(--spacing-xs);flex-wrap:wrap}.snapshot-selector__inline-input{flex:1 1 100%;font-family:var(--font-automate);font-size:.9rem;padding:6px 10px;border-radius:var(--radius-sm);border:1px solid var(--panel-border);background:var(--panel-item-bg);color:var(--panel-ink)}.snapshot-selector__confirm-text{flex:1 1 100%;color:var(--panel-ink);font-size:.85rem}.left-sidebar{position:absolute;top:var(--spacing-md);left:var(--spacing-md);z-index:2;width:320px;max-height:calc(100% - 2 * var(--spacing-md));display:flex;flex-direction:column;gap:var(--spacing-sm)}.right-sidebar{position:absolute;top:var(--spacing-md);right:var(--spacing-md);z-index:2;max-height:calc(100% - 2 * var(--spacing-md));display:flex;flex-direction:column;align-items:flex-end;gap:var(--spacing-sm)}.right-sidebar--wide{width:520px;align-items:stretch}.left-sidebar>*,.right-sidebar>*{min-height:0}.action-error{margin:var(--spacing-xs) 0 0;color:#ff5c5c;font-size:.8rem}.action-error--banner{margin:0;padding:0 var(--spacing-md) var(--spacing-xs);text-align:center}.right-sidebar__hint{margin:0;padding:var(--spacing-sm) var(--spacing-md);background:var(--panel-surface);border:1px solid var(--panel-border);border-radius:var(--radius-lg);color:var(--panel-ink-muted);font-family:var(--font-automate);font-size:.85rem}.report-field{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm)}.report-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-sm) var(--spacing-md);align-items:start;margin-bottom:var(--spacing-sm)}.report-field-grid .report-field{margin-bottom:0;min-width:0}.report-field .lux-dropdown{margin-bottom:0}.report-field-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--spacing-md);align-items:start}.report-field-column{display:flex;flex-direction:column;min-width:0}.report-field__hint-link{color:var(--color-secondary)}.report-field__toggle{display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--panel-ink-muted);cursor:pointer}.report-field__toggle:hover{background:var(--chrome-panel-bg);color:var(--panel-ink)}.report-field__toggle-icon{display:flex;width:16px;height:16px;transition:transform .2s ease}.report-field__toggle-icon svg{width:100%;height:100%;fill:currentColor}.report-field__toggle--open .report-field__toggle-icon{transform:rotate(180deg)}.report-field__group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.report-field__label{color:var(--panel-ink-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}.report-field__input{font-family:var(--font-automate);font-size:.9rem;padding:6px 10px;border-radius:var(--radius-sm);border:1px solid var(--panel-border);background:var(--panel-item-bg);color:var(--panel-ink);resize:vertical}.report-field__input::placeholder{color:var(--panel-ink-muted);opacity:.7}.report-field__input--multiline{min-height:80px;line-height:1.4}.report-field__header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--spacing-xs)}.report-field__tag{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-secondary)}.report-field__actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm)}.report-field__action{border:none;background:none;padding:0;font-family:var(--font-automate);font-size:.75rem;color:var(--panel-ink-muted);text-decoration:underline;cursor:pointer}.report-field__action:hover{color:var(--color-secondary)}.report-field__fixed-value{font-family:var(--font-automate);font-size:.9rem;padding:2px 0;color:var(--panel-ink)}.export-section__group{margin:var(--spacing-md) 0 var(--spacing-xs);font-size:.75rem;font-weight:var(--font-weight-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--panel-ink-muted)}.export-section__group:first-child{margin-top:0}.export-section__footer{margin-top:var(--spacing-md);padding-top:var(--spacing-sm);border-top:1px solid var(--panel-border)}.export-section__footer-row{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-md)}.collapsible-section__panel-header .help-hint{flex:0 0 auto;margin-left:auto}.collapsible-section__panel-header .export-section__checkbox{margin:0}.collapsible-section__panel-header .help-hint{position:relative}.collapsible-section__panel-header .help-hint__text{position:absolute;top:100%;right:0;width:max-content;max-width:340px;z-index:1;line-height:1.5;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);background:var(--panel-surface-solid);border:1px solid var(--panel-border)}.export-section__icon-button{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:30px;height:30px;padding:0;border-radius:var(--radius-sm);border:1px solid var(--panel-border);background:var(--panel-item-bg);color:var(--panel-ink-muted);cursor:pointer}.export-section__icon-button:hover:not(:disabled){color:var(--panel-ink);border-color:var(--color-secondary)}.export-section__icon-button:disabled{opacity:.55;cursor:progress}.export-section__icon{display:flex;width:18px;height:18px}.export-section__icon svg{width:100%;height:100%;fill:currentColor}.export-section__head{display:flex;align-items:center}.export-section__head .export-section__button{margin-bottom:0;border-top-right-radius:0;border-bottom-right-radius:0}.export-section__split-button{display:flex;align-items:center;justify-content:center;flex-shrink:0;align-self:stretch;width:34px;padding:0;margin-left:-1px;border:1px solid var(--color-secondary);border-left-color:color-mix(in srgb,var(--chrome-on-accent) 35%,var(--color-secondary));border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--color-secondary);color:var(--chrome-on-accent);cursor:pointer;transition:opacity .2s ease}.export-section__split-button:hover{opacity:.85}.export-section__head .section-badge{margin-left:var(--spacing-xs)}.export-section__button{width:auto;flex-shrink:0;font-family:var(--font-automate);font-weight:var(--font-weight-bold);font-size:.9rem;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);border:1px solid var(--color-secondary);background:var(--color-secondary);color:var(--chrome-on-accent);cursor:pointer;margin-bottom:var(--spacing-sm);transition:opacity .2s ease}.export-section__button:hover{opacity:.85}.export-section__button:disabled{opacity:.55;cursor:not-allowed}.export-section__status{margin:var(--spacing-xs) 0 0;font-size:.8rem;color:var(--panel-ink-muted)}.export-section__link{padding:0;border:0;background:none;font:inherit;color:var(--panel-accent);text-decoration:underline;text-align:left;cursor:pointer;overflow-wrap:anywhere}.help-hint{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:var(--spacing-sm)}.help-hint--trailing{grid-template-columns:1fr auto auto}.help-hint__button{width:16px;height:16px;padding:0;border-radius:50%;border:1px solid var(--panel-border);background:var(--panel-item-bg);color:var(--panel-ink-muted);font-family:var(--font-automate);font-size:.65rem;font-weight:var(--font-weight-bold);line-height:1;cursor:help;transition:color .15s ease,border-color .15s ease}.help-hint__button:hover,.help-hint__button:focus-visible{color:var(--panel-ink);border-color:var(--panel-ink-muted);outline:none}.help-hint__text{grid-column:1 / -1;max-height:0;margin:0;overflow:hidden;opacity:0;color:var(--panel-ink-muted);font-family:var(--font-automate);font-size:.7rem;line-height:1.4;transition:max-height .2s ease,opacity .2s ease,margin-top .2s ease}.help-hint__button:hover~.help-hint__text,.help-hint__button:focus-visible~.help-hint__text,.help-hint__text:hover{max-height:10rem;margin-top:var(--spacing-xs);opacity:1}.export-section__checkbox{position:relative;display:flex;align-items:center;gap:var(--spacing-sm);color:var(--panel-ink);font-family:var(--font-automate);font-size:.85rem;cursor:pointer}.export-section__checkbox-input{position:absolute;width:1px;height:1px;margin:0;opacity:0;pointer-events:none}.export-section__checkbox-box{flex:0 0 auto;width:16px;height:16px;margin-top:1px;border-radius:var(--radius-sm);border:1px solid var(--panel-border);background:var(--panel-item-bg);transition:background-color .15s ease,border-color .15s ease}.export-section__checkbox-box:after{content:"";display:block;width:4px;height:8px;margin:1px auto 0;border:solid var(--chrome-on-accent);border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform .15s ease}.export-section__checkbox:hover .export-section__checkbox-box{border-color:var(--panel-ink-muted)}.export-section__checkbox-input:checked+.export-section__checkbox-box{background:var(--color-secondary);border-color:var(--color-secondary)}.export-section__checkbox-input:checked+.export-section__checkbox-box:after{transform:rotate(45deg) scale(1)}.export-section__checkbox-input:focus-visible+.export-section__checkbox-box{outline:2px solid var(--color-secondary);outline-offset:2px}.export-section__checkbox-text{min-width:0}.section-badge{margin-left:var(--spacing-xs);color:var(--color-compliance-fail)}.report-field__input--missing{border-color:var(--color-compliance-fail)}.header-project{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:var(--spacing-sm);max-width:min(60vw,640px);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-lg);border:1px solid var(--chrome-border);background:var(--chrome-panel-bg);color:var(--chrome-fg);font-family:var(--font-automate);font-size:14px;cursor:pointer;transition:border-color .2s ease,background-color .2s ease}.header-project:hover{border-color:var(--color-secondary);background:var(--chrome-dropzone-bg-hover)}.header-project__project{color:var(--chrome-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-project__separator{color:var(--chrome-muted)}.header-project__snapshot{font-weight:var(--font-weight-bold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-project--empty .header-project__snapshot{color:var(--color-secondary)}.header-project__chevron{width:18px;height:18px;display:flex;flex-shrink:0;color:var(--color-secondary)}.project-selector{position:absolute;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg);background:#0a081e8c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.project-selector__window{display:flex;flex-direction:column;width:min(1040px,100%);max-height:100%;border-radius:var(--radius-xl);border:1px solid var(--panel-border);background:var(--color-midnight);color:var(--panel-ink);box-shadow:0 24px 64px #00000073;overflow:hidden}.project-selector__head{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--panel-border)}.project-selector__title{margin:0;font-family:var(--font-automate);font-size:1.1rem;font-weight:var(--font-weight-bold)}.project-selector__wordmark{margin-left:auto;font-family:var(--font-automate);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-secondary)}.project-selector__close{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border-radius:var(--radius-sm);border:1px solid var(--panel-border);background:var(--panel-item-bg);color:var(--panel-ink);cursor:pointer}.project-selector__close svg{width:18px;height:18px}.project-selector__body{display:grid;grid-template-columns:280px 1fr;min-height:0;flex:1}.project-selector__projects{display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-md);border-right:1px solid var(--panel-border);overflow-y:auto}.project-selector__search{width:100%;box-sizing:border-box;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);border:1px solid var(--panel-border);background:var(--panel-item-bg);color:var(--panel-ink);font:inherit}.project-selector__list,.project-selector__run-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--spacing-xs)}.project-selector__project{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--panel-ink);font:inherit;text-align:left;cursor:pointer}.project-selector__project:hover{background:var(--panel-item-bg)}.project-selector__project--active{border-color:var(--color-secondary);background:var(--panel-item-bg)}.project-selector__project-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-selector__count{font-size:.75rem;color:var(--panel-ink-muted)}.project-selector__runs{display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);overflow-y:auto}.project-selector__project-title{margin:0;font-family:var(--font-automate);font-size:1.2rem;font-weight:var(--font-weight-bold)}.project-selector__project-meta{margin:var(--spacing-xs) 0 0;font-size:.85rem;color:var(--panel-ink-muted)}.project-selector__empty{margin:0;padding:var(--spacing-lg);color:var(--panel-ink-muted);text-align:center}.run-row{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);border:1px solid var(--panel-border);background:var(--panel-item-bg)}.run-row--selected{border-color:var(--color-secondary)}.run-row__main{flex:1;min-width:0}.run-row__line{display:flex;align-items:center;gap:var(--spacing-sm);min-width:0}.run-row__line--muted{margin-top:2px;font-size:.8rem;color:var(--panel-ink-muted)}.run-row__time{font-variant-numeric:tabular-nums;color:var(--panel-ink-muted);white-space:nowrap}.run-row__name{font-weight:var(--font-weight-bold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.run-row__input{flex:1;min-width:0;padding:2px var(--spacing-sm);border-radius:var(--radius-sm);border:1px solid var(--color-secondary);background:var(--color-midnight);color:var(--panel-ink);font:inherit}.run-row__chip{padding:1px var(--spacing-sm);border-radius:999px;border:1px solid var(--panel-border);font-size:.7rem;letter-spacing:.04em;text-transform:uppercase;color:var(--panel-ink-muted);white-space:nowrap}.run-row__chip--open{border-color:var(--color-secondary);color:var(--color-secondary)}.run-row__confirm{display:flex;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-sm);font-size:.85rem}.run-row__actions{display:flex;align-items:center;gap:var(--spacing-xs);flex-shrink:0}.run-row__view{padding:0 var(--spacing-md);height:36px;border-radius:var(--radius-sm);border:1px solid var(--color-secondary);background:var(--color-secondary);color:var(--chrome-on-accent);font-family:var(--font-automate);font-weight:var(--font-weight-bold);font-size:.85rem;cursor:pointer}.run-row__view:hover{opacity:.85}.sim-settings__toggle{display:inline-flex;align-items:center;margin-left:var(--spacing-xs);padding:0;border:0;background:none;color:var(--panel-ink-muted);cursor:pointer;vertical-align:middle}.sim-settings__toggle:hover,.sim-settings__toggle--open{color:var(--color-secondary)}.sim-settings__toggle-icon{width:14px;height:14px;fill:currentColor}.sim-settings__list{display:flex;flex-direction:column;gap:2px;margin:var(--spacing-xs) 0 0;padding:var(--spacing-xs) 0 0;border-top:1px solid var(--chrome-border)}.sim-settings__row{display:flex;justify-content:space-between;gap:var(--spacing-sm);font-size:.75rem}.sim-settings__key{color:var(--panel-ink-muted);flex:0 0 auto}.sim-settings__value{margin:0;color:var(--panel-ink);font-family:var(--font-automate);text-align:right;overflow-wrap:anywhere}.viewer__compass{position:absolute;right:var(--spacing-md);bottom:var(--spacing-md);z-index:1;width:64px;height:64px;pointer-events:none}.viewer__compass svg{width:100%;height:100%;overflow:visible}.viewer__compass-ring{fill:var(--chrome-panel-bg);stroke:var(--chrome-border);stroke-width:2}.viewer__compass-needle{transform-box:view-box;transform-origin:0 0;transition:transform 80ms linear}.viewer__compass-north{fill:var(--color-north-compass)}.viewer__compass-south{fill:var(--chrome-muted)}.viewer__compass-label{fill:var(--color-north-compass);font-family:var(--font-automate);font-size:22px;font-weight:700}
