:root{--font-geist-sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-geist-mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--font-delta:0px;--ink:#14261e;--text:#344b40;--muted:#52685d;--faint:#73847b;--line:#d5dfda;--line-strong:#b7c8bf;--panel:#f8faf9;--canvas:#eef3f0;--topbar:#fafcfbf5;--raised:#fff;--button:#f0f5f2;--hover:#e5f1eb;--green:#087d58;--accent-soft:#dceee6;--overlay:#f9fcfae0;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.theme-dark{--ink:#f2f8f5;--text:#d7e4dd;--muted:#acbbb3;--faint:#82958b;--line:#324039;--line-strong:#45584f;--panel:#111714;--canvas:#090d0c;--topbar:#0f1412f7;--raised:#151d19;--button:#18211d;--hover:#1b2a23;--green:#69efb5;--accent-soft:#20392e;--overlay:#0d1410e0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--canvas);min-height:100%;margin:0}body{color:var(--ink);font-family:var(--font-geist-sans), Arial, Helvetica, sans-serif;overflow:hidden}button{color:inherit;font:inherit}.app-shell{background:var(--canvas);flex-direction:column;height:100vh;min-height:100vh;display:flex;overflow:hidden}.app-shell.font-size-0{--font-delta:-1px}.app-shell.font-size-1{--font-delta:0px}.app-shell.font-size-2{--font-delta:2px}.app-shell.font-size-3{--font-delta:4px}.app-shell.font-size-4{--font-delta:6px}.topbar{z-index:10;border-bottom:1px solid var(--line);background:var(--topbar);flex:0 0 58px;grid-template-columns:1fr auto 1fr;align-items:center;height:58px;padding:0 18px;display:grid}.brand-lockup,.file-status,.top-actions{align-items:center;display:flex}.brand-lockup{gap:10px}.brand-mark{align-items:end;gap:2px;width:22px;display:flex}.brand-mark i{background:var(--green);border-radius:1px;width:5px;display:block}.brand-mark i:first-child{opacity:.6;height:8px}.brand-mark i:nth-child(2){height:16px}.brand-mark i:nth-child(3){opacity:.8;height:11px}.brand-name{color:var(--ink);font-size:calc(13px + var(--font-delta));letter-spacing:.16em;font-weight:720}.brand-divider{background:var(--line-strong);width:1px;height:17px}.product-name{color:var(--muted);font-size:calc(10px + var(--font-delta));letter-spacing:.15em;font-weight:650}.file-status{min-width:0;max-width:45vw;color:var(--text);font-size:calc(12px + var(--font-delta));gap:8px}.file-status>span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;max-width:330px;overflow:hidden}.status-dot,.live-dot{background:var(--green);border-radius:50%;width:6px;height:6px;box-shadow:0 0 9px #61e8ada6}.muted{color:var(--faint)}.top-actions{justify-content:flex-end;gap:7px}.font-size-controls{border:1px solid var(--line);background:var(--button);border-radius:6px;display:flex;overflow:hidden}.font-size-controls button{border:0;border-right:1px solid var(--line);width:31px;height:29px;color:var(--text);cursor:pointer;font-size:calc(10px + var(--font-delta));background:0 0;font-weight:700}.font-size-controls button:last-child{border-right:0}.font-size-controls button:hover:not(:disabled){background:var(--hover);color:var(--green)}.font-size-controls button:disabled{color:var(--faint);cursor:default;opacity:.45}.quiet-button,.icon-button{border:1px solid var(--line);background:var(--button);cursor:pointer}.quiet-button{color:var(--muted);font-size:calc(11px + var(--font-delta));border-radius:6px;padding:7px 10px}.theme-button{align-items:center;gap:5px;display:inline-flex}.theme-button span{color:var(--green);font-size:calc(13px + var(--font-delta))}.icon-button{width:31px;height:31px;color:var(--muted);letter-spacing:1px;border-radius:6px}.demo-notice{z-index:9;border-bottom:1px solid color-mix(in srgb,var(--green) 30%,var(--line));background:color-mix(in srgb,var(--accent-soft) 72%,var(--raised));min-height:44px;color:var(--text);font-size:calc(11px + var(--font-delta));flex:none;justify-content:center;align-items:center;gap:9px;padding:7px 18px;display:flex}.demo-notice strong{color:var(--ink);font-weight:700}.demo-notice code{color:var(--green);font-family:var(--font-geist-mono),monospace;font-size:calc(10px + var(--font-delta));font-weight:700}.demo-notice-badge{border:1px solid color-mix(in srgb,var(--green) 45%,var(--line));background:var(--raised);color:var(--green);font-size:calc(8px + var(--font-delta));letter-spacing:.13em;border-radius:4px;padding:3px 6px;font-weight:800}.demo-notice button{border:1px solid var(--green);background:var(--green);color:var(--raised);cursor:pointer;font-size:calc(9px + var(--font-delta));white-space:nowrap;border-radius:5px;padding:5px 9px;font-weight:750}.theme-dark .demo-notice button{color:#07110c}.workspace{flex:1;grid-template-columns:300px minmax(0,1fr) 292px;min-height:0;display:grid;overflow:hidden}.side-panel{z-index:3;overscroll-behavior:contain;scrollbar-gutter:stable;border-right:1px solid var(--line);background:var(--panel);min-height:0;padding:28px 22px;overflow:auto}.panel-heading .eyebrow,.analysis-heading .eyebrow{color:var(--green);font-size:calc(9px + var(--font-delta));letter-spacing:.18em;margin:0 0 11px;font-weight:700}.panel-heading h1{font-size:calc(23px + var(--font-delta));letter-spacing:-.04em;margin:0;font-weight:590}.panel-heading p:not(.eyebrow){color:var(--muted);font-size:calc(12px + var(--font-delta));margin:10px 0 0;line-height:1.55}.drop-zone{border:1px dashed var(--line-strong);background:var(--raised);cursor:pointer;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:132px;margin:24px 0 27px;transition:border-color .2s,background .2s,transform .2s;display:flex}.drop-zone:hover{border-color:var(--green);background:var(--hover);transform:translateY(-1px)}.drop-zone.is-dragging{border-color:var(--green);background:var(--accent-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--green) 20%,transparent), 0 0 24px #32be8214}.upload-glyph{border:1px solid var(--line-strong);width:30px;height:30px;color:var(--green);font-size:calc(17px + var(--font-delta));border-radius:50%;place-items:center;margin-bottom:10px;display:grid}.drop-zone strong{font-size:calc(12px + var(--font-delta));font-weight:600}.drop-zone span:last-child{color:var(--faint);font-size:calc(10px + var(--font-delta));margin-top:4px}.data-section,.legend-block{border-top:1px solid var(--line);padding-top:19px}.section-label{color:var(--muted);font-size:calc(9px + var(--font-delta));letter-spacing:.15em;justify-content:space-between;align-items:center;margin-bottom:14px;font-weight:700;display:flex}.metric-grid{background:var(--line);grid-template-columns:1fr 1fr;gap:1px;margin:0;display:grid}.metric-grid div{background:var(--panel);padding:10px 0}.metric-grid div:nth-child(2n){padding-left:16px}.metric-grid dt{color:var(--muted);font-size:calc(9px + var(--font-delta));margin-bottom:4px}.metric-grid dd{color:var(--ink);font-family:var(--font-geist-mono), monospace;font-size:calc(13px + var(--font-delta));margin:0}.metric-grid dd span{color:var(--faint);font-size:calc(8px + var(--font-delta))}.legend-block{margin-top:24px}.legend-row{color:var(--text);font-size:calc(10px + var(--font-delta));grid-template-columns:auto 1fr auto;align-items:center;gap:9px;display:grid}.legend-row b{color:var(--faint);font-size:calc(9px + var(--font-delta));font-weight:500}.legend-swatch{background:var(--green);border-radius:2px;width:7px;height:7px;box-shadow:0 0 7px #61e8ad66}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.error-banner{color:#d79a93;font-size:calc(10px + var(--font-delta));background:#5d231e2e;border-left:2px solid #e47d72;flex-direction:column;gap:4px;margin:-10px 0 22px;padding:9px 11px;line-height:1.4;display:flex}.error-banner b{color:#f0b1aa;font-weight:600}.file-meta{color:var(--faint);font-size:calc(9px + var(--font-delta));flex-direction:column;gap:4px;margin-top:13px;display:flex}.file-meta span:first-child{color:var(--text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.display-section{border-top:1px solid var(--line);margin-top:24px;padding-top:19px}.range-row,.toggle-row,.check-row{color:var(--text);font-size:calc(10px + var(--font-delta));justify-content:space-between;align-items:center;display:flex}.range-row{grid-template-columns:82px 1fr;gap:12px;display:grid}.range-row input{width:100%;accent-color:var(--green)}.toggle-row,.check-row{margin-top:12px}.segmented{border:1px solid var(--line);background:var(--raised);border-radius:4px;padding:2px;display:flex}.segmented button{color:var(--faint);cursor:pointer;font-size:calc(8px + var(--font-delta));background:0 0;border:0;border-radius:3px;padding:5px 7px}.segmented button.active{background:var(--accent-soft);color:var(--green)}.check-row input{width:13px;height:13px;accent-color:var(--green)}.grid-readout{border-left:2px solid var(--line-strong);color:var(--faint);font-family:var(--font-geist-mono),monospace;font-size:calc(8px + var(--font-delta));gap:4px;margin-top:10px;padding-left:9px;display:grid}.grid-readout span{justify-content:space-between;gap:8px;display:flex}.grid-readout b{color:var(--muted);white-space:nowrap;font-weight:550}.radius-key{color:var(--faint);font-family:var(--font-geist-mono), monospace;font-size:calc(8px + var(--font-delta));grid-template-columns:auto 1fr auto;align-items:center;gap:7px;margin-top:13px;display:grid}.radius-key i{background:linear-gradient(90deg,#59dbb0,#bedb62);border-radius:3px;height:3px}.demo-link{border:0;border-bottom:1px solid var(--line-strong);color:var(--muted);cursor:pointer;font-size:calc(9px + var(--font-delta));background:0 0;margin-top:22px;padding:0 0 3px}.demo-link:hover{border-color:var(--green);color:var(--text)}.viewer-stage{background:var(--canvas);min-width:0;position:relative;overflow:hidden}.viewport-canvas{position:absolute;inset:0}.viewport-canvas canvas{cursor:crosshair;outline:none;width:100%;height:100%;display:block}.view-badge{border:1px solid var(--line);background:var(--overlay);color:var(--text);font-size:calc(8px + var(--font-delta));letter-spacing:.15em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:4px;align-items:center;gap:7px;padding:7px 9px;font-weight:700;display:flex;position:absolute;top:17px;left:18px}.top-instructions{border:1px solid var(--line);background:var(--overlay);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:6px;align-items:center;gap:3px;padding:4px;display:flex;position:absolute;top:13px;left:50%;transform:translate(-50%);box-shadow:0 5px 18px #0000000f}.top-instructions span{border-right:1px solid var(--line);white-space:nowrap;align-items:center;gap:5px;padding:5px 8px;display:flex}.top-instructions span:last-child{border-right:0}.top-instructions kbd{border:1px solid var(--line-strong);background:var(--button);color:var(--text);font-family:var(--font-geist-sans),sans-serif;font-size:calc(8px + var(--font-delta));border-bottom-width:2px;border-radius:3px;padding:2px 4px;font-weight:600}.top-instructions b{color:var(--muted);font-size:calc(8px + var(--font-delta));font-weight:570}.view-tools{gap:5px;display:flex;position:absolute;top:17px;right:18px}.view-tools button{border:1px solid var(--line);background:var(--overlay);color:var(--text);cursor:pointer;font-size:calc(8px + var(--font-delta));letter-spacing:.1em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:4px;padding:7px 9px;font-weight:700}.interaction-hint{color:var(--faint);font-size:calc(9px + var(--font-delta));gap:18px;display:flex;position:absolute;bottom:17px;left:18px}.interaction-hint b{color:var(--text);font-weight:550}.scale-bar{color:var(--muted);font-family:var(--font-geist-mono), monospace;font-size:calc(9px + var(--font-delta));pointer-events:none;align-items:center;gap:9px;display:flex;position:absolute;bottom:17px;right:18px}.scale-bar i{border-right:1px solid var(--faint);border-bottom:1px solid var(--faint);border-left:1px solid var(--faint);height:7px;transition:width 80ms linear;display:block}.axis-cue{pointer-events:none;width:80px;height:80px;position:absolute;bottom:47px;right:17px;overflow:visible}.axis-cue line{stroke:currentColor;stroke-width:1.5px;vector-effect:non-scaling-stroke}.axis-cue text{fill:currentColor;font-family:var(--font-geist-mono),monospace;font-size:calc(9px + var(--font-delta));text-anchor:middle;dominant-baseline:central;font-weight:650}.axis-origin{fill:var(--muted)}.drop-overlay{border:1px dashed var(--green);background:var(--overlay);color:var(--ink);pointer-events:none;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:14px}.drop-overlay strong{font-size:calc(18px + var(--font-delta));letter-spacing:-.02em;font-weight:520}.drop-overlay span{color:var(--muted);font-size:calc(10px + var(--font-delta));margin-top:5px}.help-card{border:1px solid var(--line);background:var(--topbar);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:7px;width:230px;padding:14px;position:absolute;top:56px;right:18px;box-shadow:0 14px 40px #0000002e}.help-card>div{color:var(--green);font-size:calc(8px + var(--font-delta));letter-spacing:.16em;justify-content:space-between;align-items:center;margin-bottom:10px;font-weight:700;display:flex}.help-card button{color:var(--muted);cursor:pointer;font-size:calc(17px + var(--font-delta));background:0 0;border:0;line-height:1}.help-card p{color:var(--muted);font-size:calc(9px + var(--font-delta));grid-template-columns:52px 1fr;margin:7px 0;display:grid}.help-card p b{color:var(--text);font-weight:560}.analysis-panel{z-index:3;overscroll-behavior:contain;scrollbar-gutter:stable;border-left:1px solid var(--line);background:var(--panel);min-height:0;padding:27px 20px;overflow:auto}.analysis-heading h2{color:var(--ink);font-size:calc(18px + var(--font-delta));letter-spacing:-.035em;margin:0;font-weight:590}.analysis-heading p:not(.eyebrow){color:var(--muted);font-size:calc(10px + var(--font-delta));margin:8px 0 0;line-height:1.5}.histogram{margin-top:23px}.histogram-plot{border-bottom:1px solid var(--line-strong);background:linear-gradient(to top,var(--line) 1px,transparent 1px);background-size:100% 38px;align-items:flex-end;gap:3px;height:152px;padding:0 3px;display:flex}.histogram-column{min-width:2px;height:100%;color:inherit;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;justify-content:flex-end;align-items:center;padding:0;display:flex}.histogram-column span{height:18px;color:var(--muted);font-family:var(--font-geist-mono),monospace;font-size:calc(7px + var(--font-delta));writing-mode:vertical-rl;display:block}.histogram-column i{background:linear-gradient(180deg,#77e9b9,var(--green));opacity:.88;border-radius:2px 2px 0 0;width:100%;min-height:2px;transition:opacity .15s,filter .15s;display:block}.histogram-column:hover i{filter:brightness(1.12);opacity:1}.histogram-column.active i{opacity:1;background:linear-gradient(#b9a8ff,#6550d8);box-shadow:0 0 0 1px #6550d852,0 0 10px #6550d852}.histogram-column:focus-visible{outline-offset:2px;border-radius:2px;outline:2px solid #6550d8}.histogram-axis{color:var(--faint);font-family:var(--font-geist-mono),monospace;font-size:calc(8px + var(--font-delta));grid-template-columns:1fr auto 1fr;margin-top:7px;display:grid}.histogram-axis b{color:var(--muted);font-family:var(--font-geist-sans),sans-serif;font-size:calc(8px + var(--font-delta));letter-spacing:.08em;font-weight:600}.histogram-axis span:last-child{text-align:right}.range-selection{border:1px solid color-mix(in srgb,#6550d8 35%,var(--line));background:color-mix(in srgb,#6550d8 8%,var(--raised));border-radius:6px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:8px;margin-top:12px;padding:9px;display:grid}.range-selection-swatch{background:#6550d8;border-radius:2px;width:8px;height:8px;box-shadow:0 0 8px #6550d873}.theme-dark .range-selection-swatch{background:#b9a8ff}.range-selection div{flex-direction:column;gap:2px;min-width:0;display:flex}.range-selection div span{color:var(--faint);font-size:calc(7px + var(--font-delta));letter-spacing:.1em;font-weight:700}.range-selection div strong{color:var(--text);font-family:var(--font-geist-mono),monospace;font-size:calc(8px + var(--font-delta));text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.range-selection>b{color:var(--muted);font-size:calc(8px + var(--font-delta));white-space:nowrap;font-weight:600}.range-selection>button{color:var(--faint);cursor:pointer;font-size:calc(15px + var(--font-delta));background:0 0;border:0;line-height:1}.analysis-stats{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:1fr 1fr;margin:20px 0 0;display:grid}.analysis-stats div{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px}.analysis-stats dt{color:var(--muted);font-size:calc(8px + var(--font-delta));margin-bottom:5px}.analysis-stats dd{color:var(--ink);font-family:var(--font-geist-mono),monospace;font-size:calc(11px + var(--font-delta));margin:0}.analysis-stats dd span{color:var(--faint);font-size:calc(8px + var(--font-delta))}.selection-section{border-top:1px solid var(--line);margin-top:25px;padding-top:19px}.selection-section .section-label button{color:var(--green);cursor:pointer;font-size:calc(8px + var(--font-delta));letter-spacing:.1em;background:0 0;border:0;font-weight:700}.selection-empty{border:1px dashed var(--line-strong);background:var(--raised);text-align:center;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;min-height:178px;padding:22px;display:flex}.selection-target{border:1px solid var(--line-strong);width:34px;height:34px;color:var(--green);font-size:calc(16px + var(--font-delta));border-radius:50%;place-items:center;margin-bottom:11px;display:grid}.selection-empty strong{color:var(--text);font-size:calc(11px + var(--font-delta));font-weight:600}.selection-empty p{max-width:190px;color:var(--faint);font-size:calc(9px + var(--font-delta));margin:6px 0 0;line-height:1.45}.pillar-inspector{border:1px solid var(--line);background:var(--raised);border-radius:7px;overflow:hidden}.selection-id{border-bottom:1px solid var(--line);background:var(--accent-soft);align-items:center;gap:10px;padding:12px;display:flex}.selection-swatch{border:2px solid var(--raised);background:#ce4c26;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 1px #ce4c26}.theme-dark .selection-swatch{background:#fff1a3;box-shadow:0 0 0 1px #fff1a3}.selection-id div{flex-direction:column;gap:2px;min-width:0;display:flex}.selection-id strong{color:var(--ink);font-size:calc(11px + var(--font-delta));font-weight:650}.selection-id span:last-child{max-width:190px;color:var(--muted);font-family:var(--font-geist-mono),monospace;font-size:calc(8px + var(--font-delta));text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pillar-inspector dl{margin:0;padding:6px 12px 9px}.pillar-inspector dl div{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:baseline;padding:8px 0;display:grid}.pillar-inspector dl div:last-child{border-bottom:0}.pillar-inspector dt{color:var(--muted);font-size:calc(9px + var(--font-delta))}.pillar-inspector dd{color:var(--ink);font-family:var(--font-geist-mono),monospace;font-size:calc(10px + var(--font-delta));margin:0}.pillar-inspector dd span{color:var(--faint);font-size:calc(8px + var(--font-delta))}@media (width<=1120px){.workspace{grid-template-columns:270px minmax(0,1fr) 250px}.side-panel{padding-inline:18px}.analysis-panel{padding-inline:16px}.top-instructions{top:55px}}@media (width<=760px){body{overflow:auto}.app-shell{height:auto;overflow:visible}.topbar{grid-template-columns:1fr auto}.file-status{display:none}.demo-notice{justify-content:flex-start;padding-inline:12px}.demo-notice>span:nth-child(2){flex:1}.demo-notice>span:nth-child(2) strong{display:block}.workspace{grid-template-rows:auto 64vh auto;grid-template-columns:1fr;min-height:calc(100vh - 58px)}.side-panel{border-right:0;border-bottom:1px solid var(--line);padding:20px}.analysis-panel{border-top:1px solid var(--line);border-left:0;padding:22px 20px 36px}.top-instructions{grid-template-columns:1fr 1fr;display:grid;left:14px;right:14px;transform:none}.top-instructions span:nth-child(2){border-right:0}.top-instructions span{justify-content:center}.drop-zone{min-height:90px;margin:18px 0}.metric-grid,.display-section,.legend-block,.interaction-hint,.demo-link{display:none}}
