:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page:#f1f4f4;--surface:#fff;--stage:#e8eff1;--ink:#172e3e;--muted:#657a85;--line:#dce4e6;--accent:#087f86;--active:#d8eeec;--active-ink:#096b70;--changed:#2978db;--added:#459929;--removed:#d93b3b;--context:#bdc4cc;--outline:#5c6978;--ruler:#b9770e;color:var(--ink);background:var(--page);font-family:Inter,Segoe UI,system-ui,sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#0a1018;--surface:#121e2a;--stage:#0e161f;--ink:#e2eaf0;--muted:#9aafbd;--line:#2c3d4b;--accent:#52c8c5;--active:#234d54;--active-ink:#d4fffb;--changed:#4294ed;--added:#6bb840;--removed:#eb5454;--context:#545e6b;--outline:#9eabba;--ruler:#f0b445}*{box-sizing:border-box}body{margin:0}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.shell{flex-direction:column;gap:12px;height:100dvh;padding:14px;display:flex}.bar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.brand{color:var(--ink);font-size:15px;font-weight:600;text-decoration:none}.brand:hover{color:var(--accent)}.file{min-width:0;display:inline-flex}.file button{align-items:center;gap:6px;max-width:220px;display:inline-flex}.file button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pair{border:1px solid var(--line);background:var(--surface);border-radius:8px}.pair .file button{background:0 0;border:0}.swap{border:1px solid var(--line);background:var(--surface);width:28px;height:24px;color:var(--accent);border-radius:6px;flex:none;padding:0;font-size:14px;line-height:1}.swap:hover{border-color:var(--accent)}select#export:not(:disabled){border-color:var(--accent);background-color:var(--accent);color:#fff;font-weight:600}:root[data-theme=dark] select#export:not(:disabled){color:#06262a}select#export option{background:var(--surface);color:var(--ink);font-weight:400}.sheet{flex-direction:column;min-width:0;min-height:0;display:flex}.sheet>.list{flex:1}.grip{display:none}select.quiet{font:inherit;color:var(--ink);font-size:12.5px}select.quiet:disabled{color:var(--muted)}.notices{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:8px 12px;font-size:13px}.notices.partial{border-color:var(--ruler)}.notices summary{cursor:pointer;font-weight:600}.notices ul{color:var(--muted);margin:6px 0 2px;padding-left:20px;line-height:1.5}.bar .spacer{flex:1}.segmented{border:1px solid var(--line);background:var(--surface);border-radius:8px;display:flex;overflow:hidden}.segmented button{background:0 0;border:0;height:28px;padding:0 11px;font-size:12.5px}.segmented button+button{border-left:1px solid var(--line)}.segmented button[aria-pressed=true]{background:var(--active);color:var(--active-ink);font-weight:600}.quiet{border:1px solid var(--line);background:var(--surface);white-space:nowrap;border-radius:8px;height:30px;padding:0 10px;font-size:12.5px}.coverage{color:var(--ink);align-items:center;text-decoration:none;display:inline-flex}.pair,.actions{align-items:center;gap:12px;min-width:0;display:flex}.pair{gap:2px}#more{font-size:18px;line-height:1;display:none}[hidden]{display:none!important}.quiet:hover,.chip:is(button):hover{border-color:var(--muted)}.workspace{grid-template-columns:minmax(0, 1fr) 7px var(--side,clamp(250px, 30%, 350px));border:1px solid var(--line);background:var(--surface);border-radius:12px;flex:1;grid-template-rows:auto minmax(0,1fr);min-height:0;display:grid;overflow:hidden}dialog{border:1px solid var(--line);width:min(420px,100% - 28px);color:var(--ink);background:var(--surface);border-radius:12px;padding:20px}dialog::backdrop{background:#0007}.settings-head{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.settings-head h2{margin:0;font-size:18px}#settings-form>label{margin:14px 0 6px;font-size:14px;display:block}#settings-form>:is(input,select){width:100%;min-height:40px;font:inherit;color:var(--ink);background:var(--page);border:1px solid var(--line);border-radius:6px;padding:8px}#settings-form p,.selection-note{color:var(--muted);font-size:12px;line-height:1.5}#settings-form>button{min-height:40px;margin-top:12px}.scene{flex-direction:column;min-width:0;min-height:0;display:flex}.caption{border-bottom:1px solid var(--line);align-items:center;gap:12px;min-height:44px;padding:6px 12px;font-size:13px;display:flex}.caption p{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;margin:0;font-weight:600;overflow:hidden}.note{z-index:3;border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 92%, transparent);max-width:min(420px,100% - 24px);color:var(--ink);pointer-events:none;border-radius:8px;margin:0;padding:6px 10px;font-size:12.5px;line-height:1.45;position:absolute;top:12px;left:12px}.note b{font-weight:600}.note span{font-variant-numeric:tabular-nums;display:block}.note span:empty{display:none}.stage{background:var(--stage);flex:1;min-height:280px;position:relative}.viewer-card,.canvas-wrap{position:absolute;inset:0}.viewer-card>header strong{display:none}.viewer-card .preview-notice{z-index:1;color:var(--muted);pointer-events:none;margin:0;font-size:11.5px;position:absolute;bottom:8px;left:12px;right:12px}.viewer-card .viewer-state{z-index:1;color:var(--muted);font-size:12.5px;position:absolute;top:12px;right:12px}.drop{z-index:4;border:2px dashed var(--accent);background:color-mix(in srgb, var(--surface) 88%, transparent);pointer-events:none;border-radius:10px;place-items:center;font-size:14px;font-weight:600;display:grid;position:absolute;inset:10px}x3d-canvas{--x_ite-background-color:transparent;width:100%;height:100%;display:block}.chips{border-top:1px solid var(--line);min-height:44px;color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;padding:7px 12px;font-size:13px;display:flex}.chip{border:1px solid var(--line);background:var(--surface);white-space:nowrap;border-radius:999px;align-items:center;gap:7px;height:28px;padding:0 10px;font-size:12.5px;display:inline-flex}.chip[aria-pressed=false]{color:var(--muted);border-style:dashed}.chip[aria-pressed=false] .dot{opacity:.25}.dot{background:var(--context);border-radius:3px;flex:none;width:10px;height:10px}.dot.changed{background:var(--changed)}.dot.added{background:var(--added)}.dot.removed{background:var(--removed)}.list{min-height:0;overflow:auto}.list h2{color:var(--muted);margin:0;padding:14px 16px 6px;font-size:12px;font-weight:600}.swatch{border:1px solid var(--line);vertical-align:-2px;border-radius:3px;width:12px;height:12px;display:inline-block}.quiet.icon{align-items:center;gap:6px;display:inline-flex}.glyph{color:var(--muted);place-items:center;font-size:14px;line-height:1;display:grid}.glyph svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.cards{gap:8px;padding:0 12px 4px;display:grid}.filter{flex-wrap:wrap;gap:6px;padding:12px 12px 8px;display:flex}.filter-chip{border:1px solid var(--line);background:var(--surface);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:6px;height:26px;padding:0 10px;font-size:12.5px;display:inline-flex}.filter-chip:hover{border-color:var(--muted)}.filter-chip[aria-pressed=true]{border-color:var(--accent);background:var(--active);color:var(--active-ink);font-weight:600}.search{border:1px solid var(--line);background:var(--surface);width:calc(100% - 24px);height:32px;font:inherit;color:var(--ink);border-radius:8px;margin:0 12px 2px;padding:0 10px;font-size:13px;display:block}.search::placeholder{color:var(--muted)}.empty{color:var(--muted);margin:0;padding:18px 16px;font-size:13px}.parts{margin:-4px 0 2px;padding:0 4px;font-size:12.5px}.parts summary{cursor:pointer;color:var(--accent);padding:2px 4px}.part-list{flex-wrap:wrap;gap:5px;padding:6px 0 4px;display:flex}.part{border:1px solid var(--line);background:var(--surface);text-align:left;overflow-wrap:anywhere;border-radius:7px;max-width:100%;padding:3px 9px;font-size:12px}.part:hover{border-color:var(--muted)}.part[aria-pressed=true]{border-color:var(--accent);background:var(--active);color:var(--active-ink)}.card{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:10px;align-items:flex-start;gap:10px;width:100%;padding:10px 12px;font-size:13.5px;display:flex}.card:hover{border-color:var(--muted)}.card[aria-pressed=true]{border-color:var(--accent);background:var(--active)}.sym{width:26px;height:26px;color:var(--muted);background:color-mix(in srgb, var(--context) 35%, transparent);border-radius:7px;flex:none;place-items:center;font-size:16px;font-weight:600;line-height:1;display:grid}.sym.changed{color:var(--changed);background:color-mix(in srgb, var(--changed) 16%, transparent)}.sym.added{color:var(--added);background:color-mix(in srgb, var(--added) 18%, transparent)}.sym.removed{color:var(--removed);background:color-mix(in srgb, var(--removed) 16%, transparent)}.card-body{flex:1;gap:3px;min-width:0;display:grid}.card-head{align-items:baseline;gap:8px;min-width:0;display:flex}.card-head b{overflow-wrap:anywhere;min-width:0;font-weight:600}.math.where{color:var(--muted);overflow-wrap:anywhere}.math{overflow-wrap:anywhere;min-width:0}.count{font-variant-numeric:tabular-nums;color:var(--muted);margin-left:auto;font-size:12.5px}.math{font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:2px 8px;font-size:12.5px;line-height:1.5;display:flex}.math .what{color:var(--muted)}.math.pair:not(.sign) .what{font-weight:600}.math.pair:not(.sign) .value{border-left:2px solid var(--line);padding-left:8px}.math .delta{color:var(--changed);font-weight:600}.math.pair{flex-wrap:nowrap;align-items:baseline}.math.pair .what{flex:none;max-width:45%}.cards{container-type:inline-size}@container (width<=420px){.math.pair:not(.sign){flex-direction:column;align-items:stretch;gap:0}.math.pair:not(.sign) .what{max-width:none;font-size:11.5px}.math.pair:not(.sign) .value{margin-top:2px}.math.pair:not(.sign)+.math{margin-top:6px}}.math .value{min-width:0;font-size:11.5px;line-height:1.55}.math .was{color:var(--removed);background:color-mix(in srgb, var(--removed) 14%, transparent);border-radius:3px;padding:0 2px;text-decoration:line-through}.math .now{color:var(--added);background:color-mix(in srgb, var(--added) 16%, transparent);border-radius:3px;padding:0 2px;text-decoration:none}.math.more{color:var(--muted)}.card:not([aria-pressed=true]) .extra,.card[aria-pressed=true] .more{display:none}.flat.split.rows{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:minmax(0,1fr)}.list .foot{border-top:1px solid var(--line);color:var(--muted);margin:8px 0 0;padding:12px 16px;font-size:12.5px}.splitter{cursor:col-resize;touch-action:none;border-left:1px solid var(--line);background:var(--surface);position:relative}.splitter:after{content:"";background:var(--line);border-radius:2px;width:3px;height:36px;margin-top:-18px;position:absolute;top:50%;left:1px}.splitter:hover,.splitter:focus-visible,.splitter.dragging{background:var(--active);outline:none}.splitter:hover:after,.splitter:focus-visible:after,.splitter.dragging:after{background:var(--accent)}.tabs{border-bottom:1px solid var(--line);grid-column:1/-1;gap:4px;padding:8px 10px 0;display:flex;overflow-x:auto}.tabs button{color:var(--muted);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:8px 12px 10px;font-size:13.5px}.tabs button:focus-visible{outline-offset:-2px}.tabs button[aria-selected=true]{border-bottom-color:var(--accent);color:var(--ink);font-weight:600}.tools{flex-wrap:wrap;flex:1;justify-content:flex-end;align-items:center;gap:6px;display:flex}.flat{z-index:2;background:var(--stage);place-items:center;padding:24px;display:grid;position:absolute;inset:0}.flat[hidden]{display:none}.flat.split{background:var(--line);grid-template-columns:repeat(2,minmax(0,1fr));place-items:stretch stretch;gap:1px;padding:0}.slice-pane{background:var(--stage);min-width:0;min-height:0;padding:30px 12px 12px;display:flex;position:relative}.slice-title{z-index:1;color:var(--muted);text-align:right;margin:0;font-size:12.5px;font-weight:600;position:absolute;top:10px;right:12px}.slice-title small{color:var(--muted);font-weight:400;display:block}.slice-3d{position:absolute;inset:0}.slice-3d canvas{cursor:grab;display:block}svg.section{cursor:crosshair;flex:1;min-width:0;min-height:0}svg.section path{fill:none;stroke-width:2.5px;stroke-linecap:round;vector-effect:non-scaling-stroke}svg.section .before{stroke:var(--outline);stroke-dasharray:7 5}svg.section .after{stroke:var(--changed)}svg.section .ruler{stroke:var(--ruler);stroke-width:2px}svg.section .ruler-point{fill:var(--ruler)}svg.section text{fill:var(--muted)}.dot.ruler{background:var(--ruler)}.list>.quiet{margin:0 16px 8px}.limits{border-top:1px solid var(--line);color:var(--muted);margin-top:10px;padding:10px 16px 12px;font-size:12.5px}.limits summary{cursor:pointer;color:var(--muted);list-style:none}.limits p{margin:6px 0 0;line-height:1.5}.field{color:var(--muted);grid-template-columns:92px minmax(0,1fr);align-items:center;gap:10px;padding:4px 16px;font-size:12.5px;display:grid}.field select,.field input{width:100%;font:inherit;color:var(--ink);font-size:13px}.field select{border:1px solid var(--line);background:var(--surface);border-radius:7px;height:30px;padding:0 6px}.field input[type=range]{accent-color:var(--accent)}.facts{grid-template-columns:1fr auto;gap:8px 12px;margin:0;padding:4px 16px 8px;font-size:13.5px;display:grid}.facts dt{color:var(--muted);align-items:center;gap:8px;display:flex}.facts dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.gap-chart{cursor:crosshair;touch-action:none;width:calc(100% - 24px);margin:4px 12px 0;display:block}.gap-chart line,.gap-chart path{vector-effect:non-scaling-stroke}.gap-chart text{font-variant-numeric:tabular-nums;fill:var(--muted);font-size:10.5px}.gap-chart .axis{stroke:var(--line);stroke-width:1px}.gap-chart .area{fill:color-mix(in srgb, var(--changed) 22%, transparent)}.gap-chart .trace{fill:none;stroke:var(--changed);stroke-width:1.5px}.gap-chart .mean{stroke:var(--muted);stroke-width:1px;stroke-dasharray:4 3}.gap-chart line.pass{stroke-width:1px;stroke-dasharray:2 3}.gap-chart line.pass.a{stroke:var(--outline)}.gap-chart line.pass.b{stroke:var(--changed)}.gap-chart text.pass.a{fill:var(--outline)}.gap-chart text.pass.b{fill:var(--changed)}.gap-chart .peak{fill:var(--surface);stroke:var(--changed);stroke-width:1.5px}.gap-chart .cursor{stroke:var(--ink);stroke-width:1px}.gap-chart .here{fill:var(--ink)}.readout{margin:0;padding:2px 16px 6px;font-size:13px}.scale{border-radius:5px;flex:1;max-width:240px;height:10px}.dot.unchanged{background:var(--context)}.dot.outline{background:var(--outline)}.dot.round{border-radius:50%}@media (width<=900px){.shell{gap:8px;height:auto;padding:8px}.bar{gap:8px}.bar .spacer{display:none}#example{flex:1 1 0;min-width:0}#more{justify-content:center;align-items:center;min-width:40px;display:inline-flex}.pair{flex:100%;order:3;gap:2px}.pair .file{flex:1 1 0}.pair .file button{width:100%;max-width:none}.actions{flex-wrap:wrap;flex:100%;order:4;gap:6px;display:none}.actions.open{display:flex}.actions>*{flex:auto;justify-content:center}.workspace{grid-template-columns:minmax(0,1fr)}.scene{border-bottom:1px solid var(--line)}.splitter{display:none}.stage{flex:none;height:min(50vh,460px);min-height:260px}.caption{flex-wrap:wrap;gap:6px 12px}.tools{justify-content:flex-start}.tools:empty{display:none}.tabs{padding:0}.chips{flex-wrap:nowrap;overflow-x:auto}.flat.split~.note{display:none}.note{max-width:calc(100% - 16px);top:8px;left:8px}}@media (pointer:coarse){.quiet,.field select{height:40px}.segmented button,.chip{height:38px}.tabs button{padding:12px 12px 14px}.field{padding:6px 16px}}@media (width<=640px){.tabs{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:0;display:grid;overflow:visible}.tabs button{text-align:center;padding:12px 2px 11px;font-size:0}.tabs button:after{content:attr(data-short);font-size:12.5px}.tools{flex-wrap:nowrap;gap:6px}.caption{flex-wrap:nowrap;padding:6px 8px}.segmented{flex:none;order:-1;margin-right:auto}.segmented button{min-width:44px;font-size:0}.segmented button:after{content:attr(data-short);font-size:15px}.quiet.icon{flex-direction:column;justify-content:center;gap:1px;min-width:48px;height:40px;padding:0 6px}.quiet.icon .word{font-size:0;line-height:1}.quiet.icon .word:after{content:attr(data-short);color:var(--muted);font-size:10px}.shell{padding-bottom:calc(36dvh + 8px)}.scene{border-bottom:0}.stage{height:min(42dvh,380px)}.sheet{z-index:20;border-top:1px solid var(--line);background:var(--surface);border-radius:14px 14px 0 0;height:36dvh;transition:height .18s;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 22px #0000001a}.sheet.open{height:78dvh}.grip{background:0 0;border:0;flex:none;width:100%;height:22px;display:block}.grip:before{content:"";background:var(--line);border-radius:2px;width:40px;height:4px;margin:0 auto;display:block}}@media (width<=640px) and (prefers-reduced-motion:reduce){.sheet{transition:none}}
