/* MLiglon IGL Laboratory 2.0.1 — local, responsive application styles. */
@font-face{font-family:'Lab Sans';src:url('fonts/noto-sans-regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'Lab Sans';src:url('fonts/noto-sans-bold.ttf') format('truetype');font-weight:600 900;font-display:swap}
@font-face{font-family:'Lab Serif';src:url('fonts/noto-serif-regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'Lab Serif';src:url('fonts/noto-serif-bold.ttf') format('truetype');font-weight:600 900;font-display:swap}
@font-face{font-family:'Lab Mono';src:url('fonts/noto-mono-regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'Lab Mono';src:url('fonts/noto-mono-bold.ttf') format('truetype');font-weight:600 900;font-display:swap}
:root{color-scheme:dark;--bg:#10181f;--panel:#15212b;--panel-alt:#1a2833;--field:#101b24;--hover:#243642;--ink:#e5edf0;--muted:#9cabb7;--faint:#6e8394;--line:#2b3b47;--accent:#7de4c3;--accent-strong:#9cf1d4;--accent-ink:#0d3529;--accent-wash:#213e39;--gold:#f0c77c;--danger:#f09b9b;--scene-bg:#0d1c29;--scene-grid:#334b5a;--scene-text:#d6e7ee;--scene-label-bg:rgba(13,28,41,.85);--chart-curve:#86e5c7;--marker-0:#63b8ef;--marker-1:#eeb860;--marker-2:#bba0ed;--marker-3:#f292a5;--chart-live:#f4faff;--shadow:0 18px 80px #0006;--font:'IBM Plex Sans','Lab Sans',sans-serif;--mono:'IBM Plex Mono','Lab Mono',monospace;--text-size:14px;--left-width:294px;--right-width:316px;--analysis-height:265px}
:root[data-theme=midnight]{--bg:#101326;--panel:#171c32;--panel-alt:#202844;--field:#12172c;--hover:#2d3554;--line:#313a58;--accent:#8bb8ff;--accent-strong:#bed5ff;--accent-ink:#102449;--accent-wash:#203759;--scene-bg:#10182b;--scene-grid:#37465f;--chart-curve:#8bb8ff}
:root[data-theme=cobalt]{--bg:#081938;--panel:#0e2246;--panel-alt:#122e59;--field:#081b38;--hover:#1d3b65;--line:#24486b;--accent:#70dfff;--accent-strong:#b2ecff;--accent-ink:#12334c;--accent-wash:#123d59;--scene-bg:#0a2140;--scene-grid:#305778;--chart-curve:#70dfff}
:root[data-theme=plum]{--bg:#201629;--panel:#2a1f35;--panel-alt:#342842;--field:#23192e;--hover:#493453;--line:#4a3b55;--accent:#e1a9ea;--accent-strong:#f2d3f5;--accent-ink:#432a4d;--accent-wash:#49334e;--scene-bg:#221a30;--scene-grid:#51435d;--chart-curve:#e1a9ea}
:root[data-theme=contrast]{--bg:#000;--panel:#080808;--panel-alt:#171717;--field:#000;--hover:#303030;--ink:#fff;--muted:#eee;--faint:#ccc;--line:#999;--accent:#ffed74;--accent-strong:#fff2a2;--accent-ink:#000;--accent-wash:#37311c;--scene-bg:#000;--scene-grid:#8b8b8b;--scene-text:#fff;--scene-label-bg:#000;--chart-curve:#ffed74}
:root[data-theme=terminal]{--bg:#0e1913;--panel:#14241c;--panel-alt:#1c3025;--field:#0d1b14;--hover:#284737;--line:#2e4a3b;--ink:#dcf6e5;--muted:#a0baa8;--accent:#91ed99;--accent-strong:#c4fac8;--accent-ink:#123117;--accent-wash:#28462e;--scene-bg:#0e2116;--scene-grid:#36553d;--chart-curve:#91ed99}
:root[data-theme=ocean],:root[data-theme=forest],:root[data-theme=sand],:root[data-theme=steel],:root[data-theme=ivory],:root[data-theme=rose],:root[data-theme=paper]{color-scheme:light;--bg:#edf2f5;--panel:#fff;--panel-alt:#f3f6f8;--field:#f8fafb;--hover:#e8f0f4;--ink:#1b3040;--muted:#516575;--faint:#687d8b;--line:#d3dfe5;--accent:#087ba6;--accent-strong:#08698b;--accent-ink:#fff;--accent-wash:#e0f0f6;--gold:#9a6100;--danger:#ae3a48;--scene-bg:#eaf2f6;--scene-grid:#bacbd6;--scene-text:#253e50;--scene-label-bg:rgba(243,248,251,.92);--chart-curve:#087ba6;--marker-0:#087caf;--marker-1:#ac6900;--marker-2:#8053b4;--marker-3:#be4165;--chart-live:#153448;--shadow:0 18px 80px #1e3c4b2b}
:root[data-theme=forest]{--bg:#edf3ef;--panel-alt:#f2f7f3;--field:#f6faf7;--hover:#e5f0e8;--ink:#193b2a;--muted:#526d5e;--line:#cfdfd4;--accent:#28764d;--accent-strong:#185e38;--accent-wash:#e2f2e7;--scene-bg:#e7f1eb;--scene-grid:#b5cebf;--scene-text:#234833;--chart-curve:#28764d}
:root[data-theme=sand]{--bg:#f3ede3;--panel:#fffdf9;--panel-alt:#f6f1e9;--field:#fcf8f1;--hover:#eee5d7;--ink:#453527;--muted:#79624c;--line:#dfd4c2;--accent:#996334;--accent-strong:#774820;--accent-wash:#f2e4d1;--scene-bg:#eee6d9;--scene-grid:#cbbca7;--scene-text:#59432e;--chart-curve:#996334}
:root[data-theme=steel]{--bg:#e9edf2;--panel-alt:#f0f3f7;--field:#f6f8fb;--hover:#e2e8f0;--ink:#2e3f56;--muted:#576b83;--line:#cbd6e4;--accent:#3d6492;--accent-strong:#294d79;--accent-wash:#e0eaf6;--scene-bg:#e3ebf4;--scene-grid:#abbdd3;--chart-curve:#3d6492}
:root[data-theme=ivory]{--bg:#f4f1e7;--panel:#fffef9;--panel-alt:#f8f6ee;--field:#fcfbf5;--hover:#f2ecd9;--ink:#413c29;--muted:#746a4b;--line:#dfd7bd;--accent:#867014;--accent-strong:#6b570b;--accent-wash:#f4edcf;--scene-bg:#f1eddd;--scene-grid:#c9c09c;--chart-curve:#867014}
:root[data-theme=rose]{--bg:#f5eff1;--panel:#fffafb;--panel-alt:#faf1f4;--field:#fff8fa;--hover:#f2e4ea;--ink:#51313e;--muted:#7e5b69;--line:#e4ccd5;--accent:#ae4d76;--accent-strong:#8c3459;--accent-wash:#fae4ed;--scene-bg:#f0e4eb;--scene-grid:#cfb6c5;--chart-curve:#ae4d76}
:root[data-theme=paper]{--bg:#eae9e4;--panel:#fff;--panel-alt:#f6f5f1;--field:#fafaf7;--hover:#eae9e4;--ink:#252823;--muted:#555b50;--line:#d1d3ca;--accent:#4f6456;--accent-strong:#304639;--accent-wash:#e5ece5;--scene-bg:#f3f2ed;--scene-grid:#c5c7bc;--chart-curve:#426850}
:root[data-font=condensed]{--font:'IBM Plex Sans Condensed','Arial Narrow','Lab Sans',sans-serif}
:root[data-font=serif]{--font:'IBM Plex Serif','Lab Serif',serif}
:root[data-font=mono]{--font:'IBM Plex Mono','Lab Mono',monospace}
:root[data-font=system]{--font:system-ui,-apple-system,'Segoe UI',sans-serif}
:root[data-font=arial]{--font:Arial,Helvetica,'Lab Sans',sans-serif}
:root[data-font=noto]{--font:'Lab Sans',sans-serif}
:root[data-font=noto-serif]{--font:'Lab Serif',serif}
:root[data-font=noto-mono]{--font:'Lab Mono',monospace}
:root[data-font=georgia]{--font:Georgia,'Lab Serif',serif}
:root[data-size=xsmall]{--text-size:12px}
:root[data-size=small]{--text-size:13px}
:root[data-size=large]{--text-size:16px}
:root[data-size=xlarge]{--text-size:18px}
:root[data-size=xxlarge]{--text-size:20px}
*{box-sizing:border-box}
html,body{margin:0;width:100%;min-height:100%;font-family:var(--font);font-size:var(--text-size);background:var(--bg);color:var(--ink)}
button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea,summary{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--line);background:var(--panel-alt);border-radius:6px;padding:.55em .8em;line-height:1.25;font-size:.86rem;font-weight:600;transition:background .12s,border-color .12s;color:var(--ink)}button:hover{background:var(--hover);border-color:var(--faint)}button:active{transform:translateY(1px)}button:disabled{opacity:.43;cursor:not-allowed;transform:none}button.active,button[aria-pressed=true]{background:var(--accent-wash);border-color:var(--accent);color:var(--accent)}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}button.primary:hover{background:var(--accent-strong)}button.danger{color:var(--danger);border-color:var(--danger)}button.quiet{background:transparent;border-color:transparent;color:var(--muted)}button.quiet:hover{background:var(--hover);color:var(--ink)}button.icon-button{padding:.3em;width:2.2em;height:2.2em;font-size:1.1rem;display:inline-flex;align-items:center;justify-content:center;background:transparent;color:var(--muted);flex-shrink:0}a{color:var(--accent);text-underline-offset:3px}a:hover{color:var(--accent-strong)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}input,select,textarea{border:1px solid var(--line);border-radius:5px;background:var(--field)}select{padding:.5em 1.7em .5em .55em;min-width:0;max-width:100%;font-size:.86rem}input[type=number]{padding:.4em .5em;min-width:0;font-size:.9rem;font-family:var(--mono);font-variant-numeric:tabular-nums}input[type=range]{appearance:none;-webkit-appearance:none;width:100%;height:20px;background:transparent;border:0;cursor:pointer;margin:4px 0}input[type=range]::-webkit-slider-runnable-track{height:4px;background:var(--line);border-radius:4px}input[type=range]::-moz-range-track{height:4px;background:var(--line);border-radius:4px}input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:13px;height:13px;margin-top:-4.5px;border-radius:50%;background:var(--accent);border:2px solid var(--panel);box-shadow:0 0 0 1px var(--accent)}input[type=range]::-moz-range-thumb{width:10px;height:10px;border-radius:50%;background:var(--accent);border:2px solid var(--panel);box-shadow:0 0 0 1px var(--accent)}input[type=checkbox]{accent-color:var(--accent);width:1em;height:1em;flex-shrink:0}h1,h2,h3,p{margin:0}h2{font-size:1rem;font-weight:600}h3{font-size:.92rem;font-weight:600}p{line-height:1.65}small{font-size:.8em}svg text{font-family:var(--font)}[hidden]{display:none!important}.sr-only{position:absolute!important;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden;white-space:nowrap}.skip-link{position:fixed;top:-80px;left:15px;z-index:10000;padding:12px;background:var(--accent);color:var(--accent-ink)}.skip-link:focus{top:10px}.noscript{padding:25px;background:#ffe1b3;color:#34210a}.app-shell{height:100vh;height:100dvh;min-height:660px;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;overflow:hidden}.app-header{min-height:66px;display:flex;align-items:center;gap:26px;border-bottom:1px solid var(--line);padding:10px 22px;background:var(--panel)}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-size:1.3rem;line-height:1.15;font-weight:600;flex-shrink:0}.brand-sub{display:block;font-size:.55rem;letter-spacing:.16em;color:var(--muted);font-weight:400;margin-top:5px}.app-title{display:flex;align-items:center;gap:10px;flex:1;border-left:1px solid var(--line);padding-left:25px}.app-title h1{font-size:1.25rem;letter-spacing:-.025em}.version{font-family:var(--mono);font-size:.65rem;color:var(--accent);border:1px solid var(--line);padding:3px 5px;border-radius:4px}.app-tagline{font-size:.78rem;color:var(--muted);margin-left:7px}.header-actions{display:flex;align-items:center;gap:6px}.experiment-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:7px 20px;min-height:43px;border-bottom:1px solid var(--line);background:var(--bg);font-size:.8rem}.experiment-summary{display:flex;align-items:center;gap:9px;min-width:0}.experiment-summary strong{font-weight:600;color:var(--accent);white-space:nowrap}.subtle{color:var(--muted)}.experiment-summary .subtle{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0}.bar-actions{display:flex;align-items:center;gap:3px;flex-shrink:0}.bar-actions button{font-size:.8rem}.bar-divider{height:16px;border-left:1px solid var(--line);margin:0 5px}.workspace{display:grid;grid-template-columns:var(--left-width) 5px minmax(360px,1fr) 5px var(--right-width);min-height:0;overflow:hidden;outline:none}.control-sidebar,.inspector-sidebar{background:var(--panel);min-width:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.side-section{padding:19px 18px;border-bottom:1px solid var(--line)}.section-heading{display:flex;align-items:center;gap:7px;margin-bottom:14px}.section-heading h2{flex:1;font-size:.94rem}.section-number{font-family:var(--mono);color:var(--faint);font-size:.68rem;border:1px solid var(--line);padding:3px 4px;border-radius:4px;line-height:1}.help-dot{width:18px;height:18px;min-width:18px;line-height:1;display:inline-flex;justify-content:center;align-items:center;border-radius:50%;padding:0;background:transparent;color:var(--faint);font-size:.7rem;font-weight:600}.minor-heading{font-size:.62rem;letter-spacing:.1em;font-weight:600;color:var(--muted);display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}.minor-heading span{letter-spacing:0;font-weight:400;font-size:.7rem;color:var(--faint)}.preset-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.preset-grid button{position:relative;text-align:center;font-size:.71rem;min-height:36px;padding:5px 3px;font-weight:600}.preset-grid button .gate-bits{display:block;font-size:.56rem;font-family:var(--mono);letter-spacing:.13em;color:var(--faint);margin-top:3px;font-weight:400}.preset-grid button.active .gate-bits{color:var(--accent)}.graded-details{margin-top:12px}.graded-details summary{font-size:.75rem;color:var(--muted)}.graded-details summary span{float:right;font-size:.65rem;color:var(--faint)}.graded-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:9px}.graded-grid button{font-size:.75rem}summary{cursor:pointer;line-height:1.6;color:var(--muted)}summary:hover{color:var(--ink)}.parameter{margin-bottom:13px}.label-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.85rem}.label-row label{color:var(--muted)}.label-row label b{color:var(--ink);font-weight:600;margin-left:4px}.label-row input{width:89px;text-align:right}.range-labels{display:flex;justify-content:space-between;font-size:.65rem;line-height:1.2;font-family:var(--mono);color:var(--faint)}.range-labels [data-ratio]{color:var(--muted)}.field-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:11px}.field-pair .select-field{margin:0}.select-field{font-size:.78rem;color:var(--muted);display:block;margin:0 0 14px;line-height:1.4}.select-field select,.select-field>input:not([type=checkbox]){display:block;width:100%;margin-top:7px;min-height:34px;color:var(--ink)}.select-field .help-dot{margin-left:4px;vertical-align:middle}.field-label{display:block;font-size:.78rem;color:var(--muted);margin-bottom:8px}.segmented{display:flex}.segmented button{width:50%;border-radius:0;font-size:.78rem;min-height:34px}.segmented button:first-child{border-radius:5px 0 0 5px}.segmented button:last-child{border-radius:0 5px 5px 0;margin-left:-1px}.check-line{display:flex;align-items:center;gap:6px;font-size:.76rem;color:var(--muted);margin:12px 0}.muted-note{color:var(--muted);font-size:.73rem;line-height:1.65;margin-top:10px}.live-input-row{display:flex;gap:10px;align-items:center}.xy-pad-wrap{flex:1;min-width:0}.xy-pad-wrap canvas{width:100%;height:120px;display:block;touch-action:none;cursor:crosshair}.xy-readouts{width:92px;flex-shrink:0;display:flex;flex-direction:column;gap:9px}.xy-readouts label{display:flex;align-items:center;gap:4px;font-size:.75rem;color:var(--muted)}.xy-readouts input{width:72px;padding:.4em .2em;font-size:.78rem}.input-slider{display:flex;align-items:center;gap:8px}.input-slider label{font-size:.75rem;color:var(--muted);width:18px}.sidebar-bottom{display:flex;justify-content:space-between;align-items:center;padding:12px 12px;font-size:.75rem}.sidebar-bottom a{font-size:.75rem;text-decoration:none}.splitter{position:relative;background:var(--bg);touch-action:none}.splitter:hover,.splitter:focus{background:var(--accent-wash)}.splitter:after{content:'';position:absolute;background:var(--line);border-radius:6px}.splitter.vertical{cursor:col-resize}.splitter.vertical:after{width:2px;height:35px;top:50%;left:1px}.splitter.horizontal{height:6px;cursor:row-resize}.splitter.horizontal:after{height:2px;width:35px;left:50%;top:2px}.center-workspace{min-width:0;min-height:0;display:grid;grid-template-rows:minmax(260px,1fr) 6px var(--analysis-height);background:var(--bg)}.scene-panel{display:flex;flex-direction:column;min-height:0;background:var(--panel);overflow:hidden}.scene-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:17px 22px 12px}.eyebrow{font-size:.6rem;letter-spacing:.16em;color:var(--faint);font-weight:600;margin-bottom:5px}.scene-heading h2{font-size:1.05rem;letter-spacing:-.02em}.renderer-badge{font-size:.58rem;letter-spacing:.04em;border:1px solid var(--line);padding:4px 6px;border-radius:4px;color:var(--muted);white-space:nowrap}.scene-toolbar{display:flex;align-items:center;gap:10px;padding:0 20px 12px;flex-wrap:wrap}.camera-group{display:flex;gap:3px}.camera-group button{font-size:.73rem;padding:.44em .68em;background:transparent;border-color:transparent;color:var(--muted)}.camera-group button.active{background:var(--accent-wash);color:var(--accent)}.scene-toolbar select{font-size:.72rem;max-width:150px;background:transparent}.scene-toolbar .quiet{font-size:.72rem}.scene-tools{margin-left:auto;display:flex;gap:3px}.surface-frame{position:relative;flex:1;min-height:180px;background:var(--scene-bg);overflow:hidden;border-top:1px solid var(--line)}#surface-viewport{position:absolute;inset:0;overflow:hidden}.surface-canvas,.surface-overlay{position:absolute;inset:0;display:block;width:100%;height:100%}.surface-overlay{pointer-events:none}.surface-fallback{position:absolute;top:9px;left:12px;max-width:calc(100% - 125px);padding:6px 9px;background:var(--scene-label-bg);color:var(--scene-text);font-size:.7rem;line-height:1.5;border:1px solid var(--line);border-radius:5px;pointer-events:none;z-index:4}.scene-readout{position:absolute;top:18px;left:22px;pointer-events:none;display:flex;flex-direction:column;color:var(--scene-text);text-shadow:0 1px 12px var(--scene-bg)}.scene-readout>span:first-child{font-size:.58rem;letter-spacing:.13em;opacity:.75}.scene-readout strong{font-size:2rem;font-family:var(--mono);font-weight:400;line-height:1.55;letter-spacing:-.06em}.scene-readout>span:last-child{font-size:.56rem;letter-spacing:.12em;opacity:.8}.scene-hint{position:absolute;bottom:12px;left:18px;right:55px;text-align:center;pointer-events:none;font-size:.59rem;color:var(--scene-text);opacity:.65}.scene-hint span{padding:0 5px}.scene-colorbar{position:absolute;right:15px;top:44%;transform:translateY(-30%);width:22px;display:flex;flex-direction:column;align-items:center;gap:5px;pointer-events:none;color:var(--scene-text);font-family:var(--mono);font-size:.58rem}.scene-colorbar div{height:90px;width:6px;border-radius:5px;background:linear-gradient(to top,#1f64c2,#29b5c8,#4dcc75,#fcb83c,#ed4f3d)}.scene-colorbar small{font-family:var(--font);font-size:.57rem}.scene-status{display:flex;justify-content:space-between;gap:10px;padding:8px 16px;font-size:.61rem;color:var(--muted);border-top:1px solid var(--line);min-height:30px}.scene-status #hover-status{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scene-status #mesh-status{white-space:nowrap;color:var(--faint)}.analysis-panel{background:var(--panel);min-height:0;overflow:hidden;display:flex;flex-direction:column}.analysis-tabs{display:flex;align-items:center;gap:16px;padding:0 20px;border-bottom:1px solid var(--line);height:43px;flex-shrink:0}.analysis-tabs [role=tab]{height:43px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;padding:0 2px;font-size:.76rem;color:var(--muted)}.analysis-tabs [aria-selected=true]{color:var(--accent);border-bottom-color:var(--accent)}.analysis-help{margin-left:auto}.analysis-content{flex:1;min-height:0;display:flex;flex-direction:column;overflow:auto;padding:8px 18px 10px}.analysis-content svg{display:block;width:100%;height:100%;min-height:100px;flex:1}.chart-caption{display:flex;justify-content:space-between;align-items:center;font-size:.62rem;color:var(--muted);gap:10px}.chart-legend{display:flex;gap:12px}.mark:before{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:4px;background:var(--marker-0)}.m1:before{background:var(--marker-1)}.m2:before{background:var(--marker-2)}.m3:before{background:var(--marker-3)}.mlive:before{background:var(--chart-live);border-radius:0;transform:rotate(45deg)}.chart-options{display:flex;align-items:center;gap:12px;font-size:.64rem;color:var(--muted)}.chart-options label{display:flex;align-items:center;gap:5px;white-space:nowrap}.chart-options select{font-size:.7rem;padding:4px 20px 4px 5px}.precision-content{display:grid;grid-template-columns:minmax(140px,1fr) minmax(160px,1fr);gap:16px;align-items:stretch;padding-top:12px}.precision-content canvas{display:block;min-width:0;width:100%;height:100%;min-height:125px;cursor:crosshair;touch-action:none}.precision-info{font-size:.72rem;align-self:center}.precision-info h3{font-size:.82rem;margin-bottom:5px}.precision-info p{font-size:.68rem;line-height:1.45;color:var(--muted)}.precision-info dl{margin:8px 0}.precision-info dl div{display:flex;justify-content:space-between;gap:10px;margin:3px 0}.precision-info dt{color:var(--muted)}.precision-info dd{margin:0;font-family:var(--mono);font-size:.72rem}.precision-info .muted-note{font-size:.62rem}.inspector-sidebar{display:flex;flex-direction:column;overflow:hidden}.inspector-tabs{display:flex;flex-shrink:0;border-bottom:1px solid var(--line);height:45px;padding:0 13px;gap:5px}.inspector-tabs button{flex:1;border:0;border-bottom:2px solid transparent;background:transparent;border-radius:0;padding:0 8px;font-size:.8rem;color:var(--muted)}.inspector-tabs [aria-selected=true]{color:var(--accent);border-bottom-color:var(--accent)}.tool-panel{min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent;flex:1}.node-diagram{display:flex;align-items:center;gap:5px;margin-bottom:20px;justify-content:space-between}.node-inputs{display:flex;flex-direction:column;gap:13px;font-size:.7rem;color:var(--muted);font-family:var(--mono)}.node-inputs span{background:var(--field);border:1px solid var(--line);padding:5px 5px;border-radius:4px}.node-arrows{font-size:1.2rem;line-height:1.7;color:var(--faint)}.node-gate{width:65px;height:65px;border:1px solid var(--accent);border-radius:14px;background:var(--accent-wash);display:flex;align-items:center;justify-content:center;flex-direction:column;color:var(--accent);font-weight:600;font-size:1.1rem;transform:perspective(220px) rotateY(-12deg);box-shadow:5px 4px 0 var(--field)}.node-gate small{font-family:var(--mono);font-weight:400;font-size:.55rem;margin-top:5px}.node-arrow{color:var(--faint)}.node-output{font-family:var(--mono);font-size:.9rem;color:var(--accent)}.live-value{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap}.live-value>span:first-child{font-size:.75rem;color:var(--muted);width:100%}.live-value strong{font-family:var(--mono);font-size:1.7rem;font-weight:400;letter-spacing:-.04em}.region-pill{font-size:.62rem;color:var(--accent);background:var(--accent-wash);border:1px solid var(--line);padding:3px 5px;border-radius:4px}.trace-steps{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:15px}.trace-steps div{background:var(--field);border:1px solid var(--line);border-radius:5px;padding:8px;min-width:0}.trace-steps span{display:block;font-size:.6rem;color:var(--muted);margin-bottom:4px}.trace-steps strong{font-size:.88rem;font-family:var(--mono);font-weight:400;word-break:break-word}.trace-details{margin-top:12px;font-size:.75rem}.equation{font-family:var(--mono);font-size:.7rem;line-height:1.75;white-space:pre-line;overflow-wrap:anywhere;margin-top:10px;background:var(--field);padding:9px;border-radius:5px}.classification{display:inline-block;color:var(--accent);font-size:.7rem;background:var(--accent-wash);padding:4px 7px;border-radius:4px;margin-bottom:10px}.table-wrap{overflow-x:auto}.truth-table{width:100%;border-collapse:collapse;text-align:left;font-size:.73rem}.truth-table th{font-weight:400;font-size:.62rem;color:var(--muted);padding:8px 4px;border-bottom:1px solid var(--line)}.truth-table td{padding:9px 4px;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:.76rem}.truth-table th:last-child,.truth-table td:last-child{text-align:right}.truth-table tr[data-row]{cursor:pointer}.truth-table tr[data-row]:hover{background:var(--hover)}.truth-table tr.selected{background:var(--accent-wash)}.truth-dot{width:6px;height:6px;border-radius:50%;display:inline-block;margin-right:7px}.truth-table td:last-child{font-family:var(--font);font-size:.68rem;color:var(--muted)}.truth-vector{font-family:var(--mono);font-size:.7rem;letter-spacing:.02em;border-left:2px solid var(--accent);padding:5px 9px;margin-top:10px;color:var(--ink)}.full-width{width:100%}#baseline-values{font-size:.73rem;color:var(--muted);line-height:1.8;margin-top:9px;overflow-wrap:anywhere}#baseline-info button{font-size:.7rem}.intro-copy{font-size:.83rem;color:var(--muted);margin-bottom:12px}.scope-badge{font-family:var(--mono);font-size:.62rem;background:var(--accent-wash);color:var(--accent);padding:9px;border-radius:4px;margin-bottom:18px;line-height:1.6}.training-start{display:flex;gap:6px;margin:13px 0 8px}.training-start button{flex:1;font-size:.72rem;padding:8px 4px}.training-actions{display:flex;gap:6px;flex-wrap:wrap}.training-actions button{font-size:.76rem;padding:.65em .7em}#train-run,#train-stop{flex:1}.loss-readout{display:flex;flex-direction:column;align-items:center;margin-top:20px;padding:14px 5px 5px}.loss-readout span:first-child{font-size:.58rem;letter-spacing:.15em;color:var(--muted)}.loss-readout strong{font-family:var(--mono);font-size:2.05rem;font-weight:400;color:var(--accent);margin:6px 0}.loss-readout span:last-child{font-size:.7rem;color:var(--muted)}#training-chart{width:100%;height:125px;display:block}.train-metrics{display:flex;justify-content:space-between;gap:6px;font-size:.6rem;text-align:center;color:var(--muted)}.train-metrics strong{font-family:var(--mono);font-size:.9rem;font-weight:400;display:block;color:var(--ink);margin-bottom:4px}.training-log{margin-top:15px;background:var(--field);border:1px solid var(--line);border-radius:5px;padding:10px;font-size:.73rem;line-height:1.7;color:var(--muted);min-height:56px}.guide-panel p{font-size:.8rem;color:var(--muted);margin:10px 0}.guide-panel h2{font-size:1.14rem;line-height:1.5}.guide-steps{padding-left:21px;margin-bottom:0}.guide-steps li{padding:4px 0;color:var(--accent);font-size:.8rem}.guide-steps button{background:transparent;border:0;padding:0;color:var(--ink);font-size:.85rem;text-align:left}.guide-steps button:hover{color:var(--accent)}.guide-steps p{font-size:.75rem;margin:5px 0 9px}.piecewise{margin:12px 0;background:var(--field);padding:9px;border-radius:5px;font-size:.72rem}.piecewise div{display:flex;gap:10px;align-items:baseline;line-height:2.1}.piecewise b{width:20px;color:var(--accent);font-weight:400}.piecewise span{flex:1;color:var(--muted)}.piecewise strong{font-family:var(--mono);font-weight:400}.guide-panel details{font-size:.8rem;border-top:1px solid var(--line);padding:10px 0}.guide-panel details p{font-size:.75rem}.reference-note a{display:block;font-size:.75rem;margin-top:10px}.status-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line);padding:6px 18px;font-size:.6rem;color:var(--muted);background:var(--panel);min-height:25px}.status-footer>span:first-child{display:flex;align-items:center;gap:7px}.footer-separator{color:var(--line);margin:0 3px}dialog{background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:0;width:min(600px,calc(100vw - 24px));max-height:calc(100dvh - 32px);overflow:auto}dialog::backdrop{background:#050d16a8;backdrop-filter:blur(3px)}.dialog-header{display:flex;align-items:center;gap:18px;justify-content:space-between;padding:22px 24px 18px;border-bottom:1px solid var(--line)}.dialog-header h2{font-size:1.2rem}.dialog-header .icon-button{font-size:1.5rem}.dialog-body{padding:23px 24px}.dialog-body .field-pair{margin-bottom:14px}.dialog-body .select-field{font-size:.85rem}.dialog-body .muted-note{margin-bottom:17px}.dialog-body .check-line{font-size:.85rem}.checkbox-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.checkbox-grid label{display:flex;gap:7px;align-items:center;font-size:.83rem}.export-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.export-grid button{text-align:left;padding:14px;line-height:1.6;font-size:.8rem;font-weight:400}.export-grid strong{display:block;font-weight:600;color:var(--ink)}.export-grid span{font-size:.7rem;color:var(--muted);display:block;margin-top:4px}.browser-save{display:flex;gap:10px;margin-top:20px}.browser-save button{flex:1;font-size:.8rem}#copy-text{padding:12px;font-family:var(--mono);width:100%;resize:vertical;font-size:.8rem;line-height:1.8}.dialog-body>p{margin-bottom:12px;font-size:.85rem}#help-tooltip{position:fixed;z-index:10001;max-width:min(340px,calc(100vw - 20px));background:var(--panel);border:1px solid var(--accent);color:var(--ink);border-radius:7px;padding:13px 15px;box-shadow:var(--shadow);font-size:.8rem;line-height:1.65;pointer-events:none}.toast{position:fixed;bottom:42px;left:50%;transform:translateX(-50%);padding:12px 18px;border:1px solid var(--accent);background:var(--panel);color:var(--ink);font-size:.8rem;border-radius:7px;box-shadow:var(--shadow);max-width:calc(100vw - 40px);z-index:10002;line-height:1.5}.focus-mode .workspace{grid-template-columns:minmax(0,1fr)}.focus-mode .control-sidebar,.focus-mode .inspector-sidebar,.focus-mode .splitter.vertical,.focus-mode .analysis-panel,.focus-mode .splitter.horizontal{display:none}.focus-mode .center-workspace{grid-template-rows:minmax(0,1fr)}.focus-mode .scene-heading{padding-left:28px}.focus-mode .scene-readout strong{font-size:3rem}.focus-mode .scene-readout{top:25px;left:30px}.focus-mode .surface-frame{min-height:300px}.focus-mode .scene-hint{font-size:.7rem}.reduced-motion *{transition:none!important;scroll-behavior:auto!important}
@media(min-width:1900px){:root{--left-width:320px;--right-width:350px;--analysis-height:290px}.side-section{padding:21px}.scene-heading{padding-top:22px;padding-bottom:16px}.scene-heading h2{font-size:1.2rem}.scene-readout strong{font-size:2.4rem}.scene-readout{top:24px;left:28px}.scene-colorbar div{height:130px}}
@media(max-width:1380px){.app-tagline{display:none}.workspace{grid-template-columns:var(--left-width) 5px minmax(300px,1fr) 5px var(--right-width)}.app-header{gap:18px;padding:10px 16px}.app-title{padding-left:18px}.scene-heading{padding:15px 16px 10px}.scene-heading h2{font-size:.95rem}.scene-toolbar{padding:0 12px 10px;gap:5px}.scene-toolbar select{max-width:125px}.scene-readout{left:15px}.renderer-badge{font-size:.52rem}.side-section{padding:17px 14px}.analysis-tabs{gap:12px;padding:0 14px}.chart-caption>span{display:none}.scene-hint{font-size:.53rem}.scene-hint span{padding:0 2px}.scene-status #mesh-status{font-size:.56rem}.precision-content{gap:9px}.precision-info .muted-note{display:none}}
@media(max-width:1100px){.app-shell{height:auto;min-height:100dvh;overflow:visible}.workspace{grid-template-columns:270px minmax(0,1fr);overflow:visible;min-height:0;align-items:start}.splitter.vertical{display:none}.control-sidebar{grid-column:1;grid-row:1 / span 2;overflow:visible;border-right:1px solid var(--line)}.center-workspace{grid-column:2;grid-row:1;min-height:760px;grid-template-rows:490px 6px var(--analysis-height);align-self:start}.inspector-sidebar{grid-column:2;grid-row:2;overflow:visible;border-top:1px solid var(--line)}.inspector-tabs{position:sticky;top:0;z-index:3;background:var(--panel)}.tool-panel{overflow:visible}.tool-panel#panel-inspect{display:grid;grid-template-columns:1fr 1fr;align-items:start}.tool-panel#panel-inspect>.side-section:last-child{grid-column:1 / -1}.tool-panel#panel-train,.tool-panel#panel-guide{max-width:700px;align-self:stretch}.scene-toolbar select{max-width:160px}.scene-hint{font-size:.59rem}.experiment-description{display:none}.focus-mode .workspace{display:block}.focus-mode .center-workspace{height:calc(100dvh - 150px);min-height:420px;grid-template-rows:minmax(0,1fr)}.focus-mode .scene-panel{height:100%}.focus-mode .inspector-sidebar{display:none}.scene-heading h2{font-size:1rem}}
@media(max-width:760px){.app-header{padding:11px 12px;gap:12px;flex-wrap:wrap}.brand{font-size:1.1rem}.brand img{width:30px;height:30px}.brand-sub{font-size:.46rem}.app-title{gap:6px;padding-left:12px}.app-title h1{font-size:1.05rem}.header-actions{gap:3px}.header-actions .quiet{font-size:.7rem}.header-actions .quiet span{display:none}.header-actions .quiet{font-size:1.2rem;padding:2px 6px}.header-actions .icon-button{font-size:.9rem}.version{font-size:.55rem}.experiment-bar{padding:7px 10px;gap:5px}.experiment-summary .subtle{display:none}.bar-actions button{font-size:.7rem;padding:5px}.bar-actions #redo{display:none}.bar-divider{display:none}.workspace{display:flex;flex-direction:column}.center-workspace{order:0;width:100%;min-height:700px;grid-template-rows:425px 6px var(--analysis-height)}.control-sidebar{order:1;width:100%;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-right:0}.control-sidebar>.side-section{min-width:0}.control-sidebar>.side-section:nth-child(2){grid-column:2;grid-row:1 / span 2;border-left:1px solid var(--line)}.control-sidebar>.live-section{grid-column:1}.sidebar-bottom{grid-column:1 / -1}.inspector-sidebar{order:2;width:100%}.tool-panel#panel-inspect{grid-template-columns:1fr 1fr}.side-section{padding:17px 14px}.scene-readout strong{font-size:1.8rem}.scene-heading h2{font-size:1rem}.scene-heading{padding:15px 15px 10px}.scene-toolbar{padding:0 12px 10px}.scene-hint{font-size:.55rem}.scene-status #mesh-status{display:none}.status-footer{flex-wrap:wrap;font-size:.55rem;padding:7px 12px;gap:5px}.status-footer #footer-note{margin-left:auto}.focus-mode .center-workspace{min-height:400px}.focus-mode .control-sidebar{display:none}.dialog-body{padding:20px}.dialog-header{padding:20px}.precision-content{grid-template-columns:minmax(150px,1fr) minmax(160px,1fr)}}
@media(max-width:480px){.brand{font-size:1rem}.brand img{width:27px;height:27px}.brand-sub{font-size:.43rem}.app-title{padding-left:10px}.app-title h1{font-size:.9rem}.app-title .version{font-size:.5rem}.app-header{gap:8px}.header-actions #help-open{display:none}.bar-actions #focus-view span,.bar-actions #fullscreen span{display:none}.bar-actions #focus-view,.bar-actions #fullscreen{font-size:1rem}.control-sidebar{display:block}.control-sidebar>.side-section:nth-child(2){border-left:0}.preset-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.tool-panel#panel-inspect{display:block}.scene-heading h2{font-size:.87rem}.renderer-badge{font-size:.48rem}.scene-toolbar{gap:5px}.scene-toolbar select{max-width:125px}.scene-toolbar .quiet{font-size:.68rem;padding:6px}.scene-tools{margin-left:0}.scene-tools .icon-button{font-size:.9rem}.camera-group button{font-size:.68rem;padding:5px}.center-workspace{grid-template-rows:410px 6px var(--analysis-height);min-height:691px}.scene-readout{left:13px;top:14px}.scene-readout strong{font-size:1.55rem}.scene-readout>span:first-child{font-size:.52rem}.scene-readout>span:last-child{font-size:.5rem}.scene-hint{font-size:.5rem;right:15px;left:15px}.analysis-tabs{gap:14px;height:42px}.analysis-tabs [role=tab]{font-size:.72rem}.analysis-content{padding:8px 10px 10px}.precision-content{gap:8px;grid-template-columns:1fr 1fr}.precision-info h3{font-size:.72rem}.precision-info p{font-size:.62rem}.precision-info dl{font-size:.6rem}.precision-info dd{font-size:.61rem}.chart-options{gap:7px;font-size:.6rem;flex-wrap:wrap}.chart-options .subtle{font-size:.57rem}.chart-options select{font-size:.65rem}.export-grid{grid-template-columns:1fr}.dialog-body .field-pair{grid-template-columns:1fr}.dialog-body .field-pair .select-field{margin-bottom:14px}.checkbox-grid{gap:13px;font-size:.78rem}.checkbox-grid label{font-size:.75rem}.focus-mode .scene-readout strong{font-size:2.3rem}.scene-colorbar{right:9px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media print{.app-shell{height:auto;display:block;overflow:visible}.app-header,.experiment-bar,.workspace,.center-workspace{display:block}.header-actions,.bar-actions,.control-sidebar,.splitter,.status-footer,.scene-toolbar,.scene-hint{display:none}.surface-frame{height:450px}.scene-panel{break-inside:avoid}.analysis-panel{height:280px}.inspector-sidebar{display:block;overflow:visible}.tool-panel{overflow:visible}.side-section{break-inside:avoid}.inspector-tabs{display:none}}

.restart-setting{margin-top:13px}
