:root{color-scheme:dark light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.35;font-weight:450;color:#edf2f1;background:#12181c;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--panel: #1d262b;--panel-2: #243036;--ink: #edf2f1;--muted: #9eb1b5;--line: #36454d;--accent: #e4b968;--accent-2: #79c7a3;--danger: #e97770;--warning: #e8c66f;--info: #7fb5e8;--focus: #f3d98b}*{box-sizing:border-box}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}body{margin:0;min-width:320px;min-height:100vh;overflow:hidden}button,input,select{font:inherit}button,select,input{border:1px solid var(--line);border-radius:6px;background:#172024;color:var(--ink)}button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:2rem;padding:.35rem .58rem;cursor:pointer}button:hover:not(:disabled),button.active{border-color:#6e8790;background:#26333a}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--focus);outline-offset:2px}input,select{width:100%;min-height:2rem;padding:.32rem .45rem}h1,h2,h3,p{margin-top:0}h2{font-size:.96rem;letter-spacing:0}h3{margin:.9rem 0 .45rem;color:#d5dfdf;font-size:.78rem;text-transform:uppercase}.app-shell{display:grid;grid-template-rows:auto 1fr auto;width:100vw;height:100vh}.toolbar,.statusbar{display:flex;align-items:center;gap:.45rem;padding:.5rem .7rem;background:#141c20;border-bottom:1px solid var(--line)}.toolbar{min-height:3.25rem;flex-wrap:wrap;row-gap:.35rem}.statusbar{min-height:2rem;border-top:1px solid var(--line);border-bottom:0;color:var(--muted);font-size:.78rem}.statusbar span{white-space:nowrap}.segmented{display:inline-grid;grid-auto-flow:column;gap:.15rem;padding:.16rem;background:#0f1619;border:1px solid var(--line);border-radius:8px}.segmented button{border:0;min-width:4.5rem}.divider{width:1px;height:1.65rem;background:var(--line);flex:0 0 auto}.spacer{flex:1 1 auto}.speed-control{display:inline-flex;align-items:center;gap:.35rem;min-width:6.5rem}.speed-control.compact{min-width:5.2rem}.speed-control.compact input{width:3.2rem}.workspace{position:relative;display:grid;grid-template-columns:minmax(14rem,18rem) minmax(20rem,1fr) minmax(18rem,22rem);min-height:0}.panel,.right-rail,.help-panel{background:var(--panel);border-color:var(--line)}.panel{position:relative;min-height:0;padding:.75rem;overflow:auto;border-right:1px solid var(--line)}.library.collapsed{width:2.75rem;padding:.4rem}.inspector.collapsed{min-height:2.6rem;overflow:hidden}.panel-toggle{width:100%;margin-bottom:.6rem}.right-rail{display:flex;flex-direction:column;min-height:0;border-left:1px solid var(--line);overflow-y:auto}.right-rail>*{flex:0 0 auto;border-bottom:1px solid var(--line)}.viewport-wrap{position:relative;min-width:0;min-height:0;background:#0c1114}.viewport-loading{display:grid;place-items:center;height:100%;color:var(--muted);background:#0c1114}.orientation-aid{position:absolute;right:1rem;bottom:1rem;display:grid;grid-auto-flow:column;gap:.25rem;padding:.35rem;background:#0f1619d1;border:1px solid var(--line);border-radius:6px;color:var(--muted);font-size:.72rem}.box-selection{position:fixed;z-index:1000;pointer-events:none;border:1px solid var(--accent);background:#e4b96829;box-shadow:0 0 0 1px #0000004d inset}.part-grid,.starter-list,.saved-list,.marble-list,.inspector-stack,.settings-grid,.shortcut-grid{display:grid;gap:.48rem}.part-tile{display:grid;grid-template-columns:2.3rem 1fr auto;align-items:center;width:100%;min-height:3.1rem;text-align:left}.thumb{display:inline-grid;place-items:center;width:2rem;height:2rem;border-radius:5px;background:#36434a;color:var(--accent);font-weight:700}.inspector-stack label,.marble-row label,.project-panel label{display:grid;gap:.28rem;color:var(--muted);font-size:.78rem}.selection-summary{margin:0;color:var(--accent-2);font-size:.82rem}.row{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.vec-input{display:grid;grid-template-columns:repeat(3,1fr);gap:.35rem;margin:0;padding:.55rem;border:1px solid var(--line);border-radius:8px}.vec-input legend{color:var(--muted);padding:0 .25rem}.toggle-line{grid-template-columns:auto 1fr;align-items:center}.toggle-line input{width:auto}.toggle-line span{display:inline-flex;align-items:center;gap:.35rem}.settings-panel{display:grid;gap:.55rem}.help-panel-header{display:flex;align-items:center;gap:.3rem;margin-bottom:.75rem;padding-bottom:.6rem;border-bottom:1px solid var(--line)}.help-panel-header button[role=tab]{border:0;background:transparent;color:var(--muted)}.help-panel-header button[role=tab].active{background:#26333a;color:var(--ink)}.outliner,.marbles-panel,.validation-panel,.replay-panel,.challenge-panel,.project-panel{padding:.75rem;overflow:auto}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.6rem}.panel-heading h2{margin:0}.marble-row{display:grid;gap:.55rem;padding:.55rem;border:1px solid var(--line);border-radius:8px;background:#192227}.marble-row-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:end;gap:.45rem}.marble-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.marble-fields label:last-child{grid-column:1 / -1}.marble-swatch{width:1.3rem;height:1.3rem;align-self:center;border:1px solid rgb(255 255 255 / 45%);border-radius:50%;box-shadow:0 0 0 1px #00000059}.marble-position{grid-template-columns:repeat(3,minmax(0,1fr));padding:.45rem}.icon-button{width:2rem;min-width:2rem;padding:0}input[type=color]{min-height:2rem;padding:.18rem}.challenge-panel h2{display:flex;align-items:center;gap:.35rem}.score-grid,.race-row{display:grid;grid-template-columns:1fr auto;gap:.25rem .6rem;align-items:center;font-size:.82rem}.score-grid span,.race-row span{color:var(--muted)}.race-row{grid-template-columns:auto 1fr auto;padding:.25rem 0;border-top:1px solid var(--line)}.race-row span:nth-child(2){display:grid}.race-row small{color:var(--muted);font-size:.7rem}.race-warning{margin:.5rem 0 0;color:var(--warning);font-size:.78rem}.outliner-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.outliner-header span{color:var(--accent-2);font-size:.72rem}.outliner-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem;margin-bottom:.65rem}.outliner-actions button{min-width:0}.outliner-list{display:grid;gap:.3rem}.outliner-group{display:grid;gap:.25rem;padding:.25rem;border:1px solid #2f3c43;border-radius:7px;background:#192227}.outliner-group-items{display:grid;gap:.25rem;padding-left:.55rem;border-left:1px solid #405159}.outliner-list button{display:grid;justify-items:start;width:100%;text-align:left}.outliner-list button.group-heading{background:#202b30;color:var(--accent)}.outliner-list button.selected{border-color:var(--accent);background:#332b1a}.outliner-list small{color:var(--muted)}.issue{display:grid;gap:.2rem;margin-bottom:.4rem;padding:.5rem;border:1px solid var(--line);border-left-width:4px;border-radius:6px;color:#dce6e8;font-size:.82rem}.graph-summary{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:.5rem}.graph-summary span{padding:.18rem .38rem;border:1px solid var(--line);border-radius:5px;color:var(--muted);font-size:.72rem}.issue.error{border-left-color:var(--danger)}.issue.warning{border-left-color:var(--warning)}.issue.info{border-left-color:var(--info)}.help-panel{position:absolute;top:.75rem;right:23rem;z-index:20;width:min(26rem,calc(100vw - 4rem));max-height:calc(100% - 1.5rem);padding:.9rem;overflow:auto;border:1px solid var(--line);border-radius:8px;box-shadow:0 20px 60px #00000059}.shortcut-grid{grid-template-columns:1fr 1fr;font-size:.8rem}.shortcut-grid div{display:flex;align-items:center;gap:.45rem}kbd{min-width:2.8rem;padding:.15rem .35rem;border:1px solid var(--line);border-radius:4px;background:#11171a;color:var(--accent);text-align:center}.saved-row{display:grid;grid-template-columns:1fr auto;gap:.3rem}.empty{color:var(--muted);font-size:.86rem}.viewport-fallback,.fatal{display:grid;place-content:center;min-height:100%;padding:2rem;color:var(--ink);background:#172024}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.stats-overlay{top:auto!important;bottom:2.6rem!important;left:19rem!important;right:auto!important}@media(max-width:980px){body{overflow:auto}.app-shell{min-height:100vh;height:auto}.workspace{grid-template-columns:1fr;grid-template-rows:auto minmax(28rem,65vh) auto}.help-panel{position:fixed;inset:1rem;width:auto}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important}}
