:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#070a10;--panel:#111827;--panel-2:#162034;--panel-3:#202c45;--line:#2c3850;--text:#eef5ff;--muted:#93a3bc;--accent:#f8c84c;--accent-2:#4fd1a5;--danger:#ff5d73;--blue:#70b7ff;--purple:#a78bfa;--road:#202842;--grid:#303957;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Trebuchet MS,Avenir Next,system-ui,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 8% 0,#f8c84c29,#0000 24rem),radial-gradient(circle at 92% 10%,#4fd1a524,#0000 28rem),linear-gradient(145deg,#05070d,#101521 62%,#05070d);min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{border:1px solid var(--line);color:var(--text);background:var(--panel-3);cursor:pointer;border-radius:12px;padding:10px 13px;font-weight:800}button:hover:not(:disabled){border-color:var(--blue);transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.48}button.primary{color:#111827;background:var(--accent);border-color:#0000}button.danger{color:#fff;background:var(--danger);border-color:#0000}input,select,textarea{border:1px solid var(--line);width:100%;color:var(--text);background:#0a0f19;border-radius:12px;outline:none;padding:10px 12px}textarea{resize:vertical;min-height:120px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.5}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #70b7ff29}label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;gap:7px;font-size:12px;font-weight:800;display:grid}h1,h2,h3,p{margin-top:0}h1,h2,h3{margin-bottom:0}h1{letter-spacing:-.055em;max-width:820px;font-family:Georgia,Times New Roman,serif;font-size:clamp(34px,3.8vw,52px);line-height:.96}h2{font-size:22px}h3{font-size:16px}code,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}code{color:var(--accent)}.app-shell{width:min(1500px,100vw - 28px);margin:0 auto;padding:24px 0}.hero-panel,.panel{border:1px solid var(--line);background:#111827e6;border-radius:26px;box-shadow:0 28px 90px #00000061}.hero-panel{grid-template-columns:minmax(0,1fr) minmax(280px,340px);align-items:stretch;gap:22px;margin-bottom:16px;padding:20px 24px;display:grid}.hero-intro{flex-direction:column;min-width:0;display:flex}.hero-intro-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;display:flex}.eyebrow,.section-kicker{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:900}.hero-intro .eyebrow{margin:0}.lede{max-width:820px;color:var(--muted);margin:12px 0 0;font-size:14px;line-height:1.45}.hero-card{border:1px solid var(--line);background:#070a108f;border-radius:18px;gap:12px;min-width:0;padding:16px;display:grid}.hero-card-status{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.hero-card-label{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:900}.hero-card-program{min-width:0;max-width:100%;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:16px;line-height:1.25;display:block;overflow:hidden}.hero-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.hero-stats span{border:1px solid var(--line);color:var(--muted);text-align:center;text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap;background:#080d16;border-radius:12px;padding:8px 10px;font-size:12px;font-weight:900;overflow:hidden}.mode-tabs{border:1px solid var(--line);background:#070a107a;border-radius:22px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:0 0 18px;padding:8px;display:grid}.mode-tab{text-align:left;background:0 0;border:1px solid #0000;border-radius:14px;justify-items:start;gap:4px;padding:12px 16px;display:grid}.mode-tab span{font-size:16px;line-height:1.15}.mode-tab small{color:var(--muted);font-size:11px;font-weight:800;line-height:1.3}.mode-tab:hover:not(.active){border-color:var(--line);background:#ffffff0a;transform:none}.mode-tab.active{color:#111827;background:var(--accent);border-color:#0000}.mode-tab.active small{color:#111827b8}.status-pill{width:fit-content;color:var(--muted);text-transform:uppercase;background:#080d16;border-radius:999px;flex:none;align-items:center;gap:8px;padding:6px 9px;font-size:12px;font-weight:900;display:inline-flex}.status-pill span{background:var(--danger);border-radius:999px;width:10px;height:10px}.status-pill.connected span{background:var(--accent-2)}.status-pill.connecting span{background:var(--accent)}.training-layout,.competition-layout{grid-template-columns:minmax(0,1.18fr) minmax(420px,.82fr);align-items:start;gap:18px;display:grid}.competition-stack{gap:18px;display:grid}.panel{overflow:hidden}.panel-header{border-bottom:1px solid var(--line);background:#ffffff08;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;padding:18px 20px;display:flex}.panel-header>div{min-width:0}.panel-header h2{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.button-row,.run-controls{flex-wrap:wrap;gap:10px;display:flex}.program-name-row{padding:18px 20px 0}.scratch-editor{grid-template-columns:240px minmax(0,1fr);gap:16px;padding:20px;display:grid}.toolbox,.workspace{border:1px solid var(--line);background:#070a1075;border-radius:20px;min-width:0}.toolbox{align-self:start;padding:16px;position:sticky;top:16px}.toolbox p,.workspace-title p{color:var(--muted);margin:6px 0 0;font-size:13px;line-height:1.45}.toolbox-category{margin-top:16px}.toolbox-category h4{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;font-size:11px;font-weight:900}.toolbox-grid{gap:8px;display:grid}.toolbox-block{text-align:left;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:manipulation;border:1px solid #0000;border-radius:14px 14px 14px 6px;justify-items:start;gap:4px;width:100%;padding:10px 12px;transition:transform .12s,border-color .12s;display:grid}.toolbox-block:active{cursor:grabbing}.toolbox-block span{font-size:13px;font-weight:900;line-height:1.2}.toolbox-block small{text-transform:none;letter-spacing:0;opacity:.8;font-size:11px;font-weight:700}.toolbox-block:hover:not(:disabled){transform:translateY(-1px)}.tone-motion{--tone-fg:#052116;--tone-bg:linear-gradient(135deg, var(--accent-2), #75e7c0);--tone-border:#4fd1a58c;--tone-meta:#052116b3}.tone-turn{--tone-fg:#1a103e;--tone-bg:linear-gradient(135deg, var(--purple), #c4b5fd);--tone-border:#a78bfa8c;--tone-meta:#1a103eb8}.tone-stop{--tone-fg:#fff;--tone-bg:linear-gradient(135deg, #b83249, var(--danger));--tone-border:#ff5d738c;--tone-meta:#ffffffc7}.tone-state{--tone-fg:#1f1300;--tone-bg:linear-gradient(135deg, var(--accent), #ffe08a);--tone-border:#f8c84c99;--tone-meta:#1f1300b3}.tone-control{--tone-fg:#062035;--tone-bg:linear-gradient(135deg, var(--blue), #a4d2ff);--tone-border:#70b7ff99;--tone-meta:#062035b8}.toolbox-block.tone-motion,.toolbox-block.tone-turn,.toolbox-block.tone-stop,.toolbox-block.tone-state,.toolbox-block.tone-control{color:var(--tone-fg);border-color:var(--tone-border);background:var(--tone-bg)}.toolbox-block.tone-motion small,.toolbox-block.tone-turn small,.toolbox-block.tone-stop small,.toolbox-block.tone-state small,.toolbox-block.tone-control small{color:var(--tone-meta)}.workspace{min-width:0;min-height:620px}.workspace-title{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding:16px;display:flex}.workspace-title span,.mini-stat{color:var(--muted);letter-spacing:.04em;text-align:right;white-space:nowrap;font-size:12px;font-weight:900}.block-stack{gap:12px;min-width:0;max-height:720px;padding:16px;display:grid;overflow:auto}.scratch-block-host{min-width:0;position:relative}.scratch-block-host.is-drop-target:before{content:"";background:var(--blue);pointer-events:none;z-index:2;border-radius:4px;height:5px;position:absolute;top:-10px;left:0;right:0;box-shadow:0 0 18px #70b7ffa6}.scratch-block{border:1px solid var(--tone-border,var(--line));background:var(--bg);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:manipulation;border-radius:18px 18px 18px 6px;min-width:0;overflow:hidden;box-shadow:0 12px 28px #00000047}.scratch-block.is-dragging{cursor:grabbing;opacity:.45}.scratch-block select,.scratch-block input,.scratch-block textarea,.scratch-block label{cursor:auto;-webkit-user-select:text;user-select:text}.scratch-block button{cursor:pointer;-webkit-user-select:none;user-select:none}.block-number{width:30px;height:30px;color:var(--tone-fg);background:#ffffff8c;border-radius:10px;place-items:center;font-size:13px;font-weight:900;display:inline-grid}.block-copy{gap:2px;min-width:0;display:grid}.block-copy strong{font-size:14px;line-height:1.25}.block-copy span{color:var(--tone-meta,#070a10b8);font-size:12px;font-weight:700;line-height:1.4}.drag-grip{min-width:22px;height:22px;color:var(--tone-fg);letter-spacing:-.05em;pointer-events:none;-webkit-user-select:none;user-select:none;opacity:.85;background:#ffffff52;border-radius:6px;justify-content:center;align-items:center;font-size:14px;font-weight:900;display:inline-flex}.block-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.block-actions button{color:var(--text);background:#070a10c7;border-color:#0000;padding:0}.smart-block-head{color:var(--tone-fg);background:var(--tone-bg,var(--panel-3));border-bottom:1px solid var(--tone-border,var(--line));grid-template-columns:36px minmax(0,1fr) auto;grid-template-areas:"num title grip""actions actions actions";align-items:center;gap:10px 12px;padding:10px 12px;display:grid}.smart-block-head .block-number{grid-area:num}.smart-block-head .block-copy{grid-area:title}.smart-block-head .drag-grip{grid-area:grip}.smart-block-head .block-actions{border-color:#00000029;border-top-style:solid;border-top-width:1px;grid-area:actions;margin:0;padding-top:8px}.tone-stop .block-number{color:#fff;background:#ffffff47}.tone-stop .drag-grip{color:#fff;background:#ffffff38}.tone-stop .smart-block-head .block-actions{border-color:#ffffff38}.icon-button{border-radius:9px;place-items:center;min-width:32px;height:28px;font-size:11px;font-weight:800;line-height:1;display:inline-grid}.smart-block-controls{color:var(--text);background:#080c169e;gap:12px;padding:14px 14px 16px;display:grid}.smart-block-controls>label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;gap:6px;font-size:11px;font-weight:800;display:grid}.smart-block-controls input,.smart-block-controls select{color:var(--text);border-color:var(--line);background:#060910d9}.condition-editor{border:1px solid var(--line);background:#70b7ff14;border-radius:12px;grid-template-columns:minmax(0,1.4fr) minmax(120px,1fr);align-items:end;gap:10px;padding:12px;display:grid}.condition-editor label{color:var(--blue);letter-spacing:.08em;text-transform:uppercase;gap:4px;font-size:11px;font-weight:900;display:grid}.condition-editor select,.condition-editor input{color:var(--text);background:#060910e6}.nested-slot{border:1.5px dashed var(--tone-border,#70b7ff66);background:#ffffff05;border-radius:14px;gap:8px;padding:12px 12px 14px;display:grid}.nested-slot h4{letter-spacing:.1em;text-transform:uppercase;color:var(--tone-meta,var(--muted));margin:0;font-size:11px;font-weight:900}.nested-slot.slot-then h4{color:var(--accent-2)}.nested-slot.slot-else h4{color:var(--danger)}.nested-slot.slot-body h4{color:var(--blue)}.nested-stack{gap:8px;display:grid}.nested-stack .scratch-block{box-shadow:0 8px 18px #00000038}.nested-stack .smart-block-head{padding:8px 10px}.nested-stack .smart-block-controls{padding:12px}.nested-stack .block-number{width:26px;height:26px;font-size:11px}.nested-stack .block-copy strong{font-size:13px}.workspace-empty,.nested-slot-empty{color:#70b7ffd9;letter-spacing:.06em;text-transform:uppercase;text-align:center;background:#70b7ff0f;border:1.5px dashed #70b7ff73;border-radius:14px;place-items:center;min-height:56px;padding:14px 16px;font-size:12px;font-weight:900;transition:border-color .15s,background .15s,color .15s;display:grid}.workspace-empty.is-over,.nested-slot-empty.is-over{border-color:var(--blue);color:var(--blue);background:#70b7ff38;box-shadow:0 0 24px #70b7ff73}.workspace-end,.nested-slot-end{color:#0000;border:1px dashed #0000;border-radius:12px;place-items:center;min-height:8px;font-size:0;transition:min-height .15s,border-color .15s,background .15s,color .15s,font-size .15s;display:grid}.scratch-editor.is-drag-active .workspace-end,.scratch-editor.is-drag-active .nested-slot-end{color:#70b7ffd9;letter-spacing:.08em;text-transform:uppercase;background:#70b7ff14;border-color:#70b7ff8c;min-height:44px;font-size:11px;font-weight:900}.scratch-editor.is-drag-active .workspace-end:before,.scratch-editor.is-drag-active .nested-slot-end:before{content:"Drop at end of list"}.scratch-editor.is-drag-active .workspace-end.is-over,.scratch-editor.is-drag-active .nested-slot-end.is-over{border-color:var(--blue);min-height:56px;color:var(--blue);background:#70b7ff38;box-shadow:0 0 24px #70b7ff80}.scratch-editor.is-drag-active .workspace-end.is-over:before,.scratch-editor.is-drag-active .nested-slot-end.is-over:before{content:"Drop here"}.drag-preview{border:1px solid var(--tone-border,var(--line));background:var(--tone-bg,var(--panel-3));color:var(--tone-fg,var(--text));letter-spacing:.02em;cursor:grabbing;pointer-events:none;border-radius:18px;align-items:center;padding:12px 18px;font-size:14px;font-weight:900;display:inline-flex;box-shadow:0 18px 40px #00000073}.toolbox-block.is-dragging{opacity:.4}@media (width<=820px){.smart-block-head{grid-template-columns:30px minmax(0,1fr) auto;grid-template-areas:"num title grip""actions actions actions"}.condition-editor{grid-template-columns:1fr}}.scratch-block.is-current{outline:3px solid var(--accent);outline-offset:4px;animation:1.6s ease-in-out infinite block-current-pulse;box-shadow:0 0 24px #f8c84c8c,0 12px 28px #00000047}@keyframes block-current-pulse{0%,to{box-shadow:0 0 18px #f8c84c73,0 12px 28px #00000047}50%{box-shadow:0 0 30px #f8c84cbf,0 12px 28px #00000047}}.helper-copy{color:var(--muted);margin:0;font-size:13px;line-height:1.45}.training-status{border:1px solid var(--line);color:var(--text);background:#070a108c;border-radius:12px;margin:14px 20px 0;padding:10px 14px;font-size:13px;font-weight:700;line-height:1.45;animation:.18s ease-out training-status-in}.training-status.tone-success{background:#4fd1a524;border-color:#4fd1a58c}.training-status.tone-error{background:#ff5d7329;border-color:#ff5d738c}@keyframes training-status-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.validation,.preview-summary,.simulation-steps,.timeline,.drawer,.log-panel,.code-panel{margin:0 20px 20px}.validation{border-radius:14px;padding:12px 14px;font-weight:800}.validation.valid{color:#052116;background:var(--accent-2)}.validation.invalid{color:#fff;background:#ff5d7338}.drawer{border:1px solid var(--line);background:#070a1057;border-radius:18px}.drawer summary{cursor:pointer;color:var(--text);padding:14px 16px;font-weight:900}.drawer-grid{grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);gap:16px;padding:0 16px 16px;display:grid}.saved-list,.transfer-panel{gap:12px;display:grid}.saved-card{border:1px solid var(--line);background:#0a0f19;border-radius:16px;justify-content:space-between;gap:14px;padding:12px;display:flex}.saved-card div:first-child{gap:4px;display:grid}.saved-card span{color:var(--muted);font-size:13px}.saved-routes-drawer summary{text-transform:uppercase;letter-spacing:.08em;font-size:14px}.saved-routes-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:16px;padding:0 16px 16px;display:grid}.saved-routes-step{border:1px solid var(--line);background:#070a1066;border-radius:18px;gap:12px;padding:14px 16px;display:grid}.saved-routes-step-primary{background:linear-gradient(135deg,#f8c84c1a,#f8c84c05);border-color:#f8c84c66}.saved-routes-step:first-child{grid-row:span 2}.saved-routes-step-header{align-items:flex-start;gap:12px;display:flex}.saved-routes-step-header h3{margin:0 0 4px;font-size:15px}.saved-routes-step-header p{margin:0}.saved-routes-step-index{background:var(--accent);color:#111827;border-radius:999px;flex:none;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:900;display:inline-flex}.saved-routes-step-primary .saved-routes-step-index{background:var(--accent);color:#111827}.submit-button{justify-self:start;padding:12px 18px;font-size:14px}.saved-routes-import{gap:8px;display:grid}@media (width<=1180px){.saved-routes-grid{grid-template-columns:1fr}.saved-routes-step:first-child{grid-row:auto}}.empty-state{border:1px dashed var(--line);color:var(--muted);text-align:center;border-radius:16px;padding:18px}.auto-score-panel .panel-header .score-headline{background:var(--accent);color:#111827;letter-spacing:.02em;border-radius:999px;padding:6px 14px;font-size:22px;font-weight:900}.auto-score-panel .panel-header .score-headline.negative{background:var(--danger);color:#fff}.auto-score-section.auto-score-timed{border-color:#f8c84c66}.auto-score-section.auto-score-summary{background:#f8c84c0a;border-color:#f8c84c99}.auto-score-summary-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.auto-score-chip{border:1px solid var(--line);background:#ffffff05;border-radius:14px;gap:4px;padding:12px 14px;display:grid}.auto-score-chip.is-official{border-color:var(--accent);background:#f8c84c1a}.auto-score-chip.is-warning{border-color:var(--danger)}.auto-score-chip-label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:800}.auto-score-chip-value{color:var(--accent);font-size:22px;font-weight:900}.auto-score-chip-value.negative{color:var(--danger)}.auto-score-chip-sub{color:var(--muted);font-size:12px}.auto-score-chip-sub strong{color:var(--text)}.auto-score-chip-badge{color:var(--accent);background:#f8c84c26;border-radius:999px;align-self:flex-start;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.auto-score-chip-note{color:var(--muted);font-size:11px;font-style:italic}.auto-score-section{border:1px solid var(--line);background:#070a1066;border-radius:16px;gap:10px;margin:0 20px 16px;padding:14px 16px;display:grid}.auto-score-section h3{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:12px;font-weight:900}.auto-score-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.auto-score-row{color:var(--text);background:#0a0f19;border-radius:12px;justify-content:space-between;align-items:baseline;gap:10px;padding:8px 12px;font-size:13px;font-weight:700;display:flex}.auto-score-row .auto-score-label{color:var(--muted)}.auto-score-row .auto-score-detail{color:var(--accent-2);font-weight:900}.auto-score-row.penalty .auto-score-detail{color:var(--danger)}.auto-score-row.total{color:var(--text);background:#f8c84c1a}.auto-score-row.total .auto-score-label{color:var(--text)}.auto-score-row.total.penalty{background:#ff5d731f}.auto-score-empty{color:var(--muted);margin:0;font-style:italic}.auto-score-note{color:var(--muted);letter-spacing:.04em;margin:4px 0 0;font-size:12px;font-weight:700}.auto-score-final .auto-score-formula{color:var(--muted);margin:0;font-size:14px;line-height:1.6}.auto-score-final .auto-score-formula strong{color:var(--accent);margin-left:4px;font-size:22px}.auto-score-final .auto-score-formula strong.negative{color:var(--danger)}.auto-score-warnings{color:var(--muted);margin:0;padding-left:18px;font-size:12px;line-height:1.55}.empty-state.small{color:#111827b3;border-color:#11182752;padding:12px}.simulation-panel{position:sticky;top:16px}.simulation-controls{flex-wrap:wrap;align-items:center;gap:10px;padding:12px 20px 0;display:flex}.simulation-controls span{color:var(--muted);font-size:13px;font-weight:900}.realtime-toggle{color:var(--muted);letter-spacing:.02em;cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid var(--line);background:#0a0f19;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:13px;font-weight:700;transition:border-color .12s,color .12s;display:inline-flex}.realtime-toggle:hover{border-color:var(--accent);color:var(--accent)}.realtime-toggle input{accent-color:var(--accent);width:14px;height:14px;margin:0}.heat-countdown{border:1px solid var(--line);color:var(--accent);font-variant-numeric:tabular-nums;letter-spacing:.04em;background:#0f172a;border-radius:999px;align-items:center;gap:4px;padding:6px 10px;font-size:13px;font-weight:800;display:inline-flex}.heat-countdown.warning{color:#fbbf24;border-color:#d97706}.heat-countdown.expired{border-color:var(--danger);color:var(--danger);background:#ef44441a}.preview-summary{color:var(--muted);padding:0 20px;line-height:1.55}.preview-summary p{color:var(--accent);margin:8px 0 0}.preview-summary-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.state-pill,.delivered-chip{border:1px solid var(--line);color:var(--text);letter-spacing:.06em;text-transform:uppercase;background:#0a0f19;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:12px;font-weight:900;display:inline-flex}.state-pill-label,.delivered-chip-label{color:var(--muted)}.state-pill-value,.delivered-chip-value{color:var(--text)}.state-pill.state-seek{background:#70b7ff1a;border-color:#70b7ff66}.state-pill.state-seek .state-pill-value{color:var(--blue)}.state-pill.state-carry{background:#f8c84c24;border-color:#f8c84c8c}.state-pill.state-carry .state-pill-value{color:var(--accent)}.state-pill.state-delivered{background:#4fd1a524;border-color:#4fd1a58c}.state-pill.state-delivered .state-pill-value{color:var(--accent-2)}.delivered-chip-value{color:var(--accent-2);background:#4fd1a52e;border-radius:999px;padding:0 8px}.diagnostics-row{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.diag-chip{border:1px solid var(--line);color:var(--muted);letter-spacing:.06em;text-transform:uppercase;background:#0a0f19;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:11px;font-weight:900;display:inline-flex}.diag-chip-value{min-width:18px;color:var(--text);text-align:center;background:#ffffff0f;border-radius:999px;padding:0 6px}.diag-chip.tripped{color:var(--text);background:#ff5d731f;border-color:#ff5d7380}.diag-chip.tripped .diag-chip-value{background:var(--danger);color:#fff}.preview-summary p.warnings{color:var(--danger);white-space:pre-wrap}.simulation-steps{gap:8px;max-height:260px;padding:0 20px 20px;display:grid;overflow:auto}.sim-step{border:1px solid var(--line);background:#0a0f19;border-radius:14px;grid-template-columns:32px minmax(0,1fr);gap:10px;padding:10px;display:grid}.sim-step>span{color:#111827;background:var(--blue);border-radius:10px;place-items:center;width:28px;height:28px;font-weight:900;display:inline-grid}.sim-step p{color:var(--muted);margin:4px 0 0;font-size:13px;line-height:1.45}.offroad-pill{background:var(--danger);color:#fff;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;margin-left:10px;padding:2px 8px;font-size:11px;font-weight:900;display:inline-block}.carrying-chip{border:1px solid var(--line);color:var(--text);letter-spacing:.06em;text-transform:uppercase;background:#0a0f19;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:12px;font-weight:900;display:inline-flex}.carrying-chip-label{color:var(--muted)}.carrying-chip-dots{align-items:center;gap:4px;display:inline-flex}.carrying-dot{border:1px solid #ffffff2e;border-radius:999px;width:12px;height:12px}.carrying-dot.empty{background:0 0;border-color:#ffffff2e}.carrying-dot.tier-yellow{background:#f6c945;border-color:#00000073}.carrying-dot.tier-orange{background:#f59e0b;border-color:#00000073}.carrying-dot.tier-purple{background:#a855f7;border-color:#00000073}.offroad-fill{opacity:.55}.offroad-cutout{fill:#0000;stroke:#ff5d7373;stroke-dasharray:6 6;stroke-width:1.5px}.offroad-hatch-line{stroke:#ff5d7373;stroke-width:4px}.offroad-flag-ring{fill:none;stroke:var(--danger);stroke-width:3px;stroke-dasharray:4 4}.offroad-flag-text{fill:var(--danger);letter-spacing:.06em;font-size:12px;font-weight:900}.map-canvas.is-offroad{filter:drop-shadow(0 0 12px #ff5d7359)}.map-layout{grid-template-columns:minmax(0,1.05fr) minmax(440px,.95fr);align-items:start;gap:18px;display:grid}.map-editor{gap:16px;padding-bottom:18px;display:grid}.map-editor .panel-header .mini-stat{letter-spacing:.08em;color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.map-editor-meta{grid-template-columns:minmax(220px,2fr) minmax(220px,2fr) repeat(3,minmax(0,1fr));gap:10px;padding:0 20px;display:grid}.map-editor-toolbar{flex-wrap:wrap;gap:8px;padding:0 20px;display:flex}.map-tool{background:var(--panel-2);border-radius:14px;padding:8px 12px;font-size:12px;font-weight:800}.map-tool.active{color:#111827;background:var(--accent);border-color:#0000}.map-editor-actions{flex-wrap:wrap;gap:8px;padding:0 20px;display:flex}.map-canvas-shell{border:1px solid var(--line);background:#070a1094;border-radius:18px;margin:0 20px;padding:12px}.map-canvas{background:radial-gradient(circle,#69b7ff14,#0000 80%),#060910;border-radius:14px;width:100%;height:auto;display:block;overflow:visible}.axis-label{fill:var(--muted);text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;font-weight:700}.map-cell{fill:#070a1000;stroke:#30395733;stroke-width:1px;pointer-events:none}.danger-node-layer{pointer-events:none}.danger-node-zone{fill:#ff5d7352;pointer-events:none}.segment-line{stroke:var(--text);stroke-width:8px;stroke-linecap:round;pointer-events:none;opacity:.85}.segment-hit{stroke:#0000;stroke-width:22px;stroke-linecap:round;cursor:pointer}.map-segment.has-cop .segment-line{stroke:var(--danger)}.map-canvas.tool-cop .map-segment:hover .segment-line,.map-canvas.tool-erase .map-segment.has-cop:hover .segment-line{stroke:var(--accent)}.map-canvas.readonly .segment-hit{pointer-events:none;cursor:default}.cop-marker .cop-octagon{fill:var(--danger);stroke:#fff;stroke-width:2.5px;paint-order:stroke fill}.cop-marker .cop-text{fill:#fff;letter-spacing:.06em;font-size:9px;font-weight:900}.map-node .node-bg{fill:#0b1020;stroke:#70b7ff80;stroke-width:2px;cursor:pointer;transition:stroke .12s}.map-node.is-danger .node-bg{fill:#ff5d73d9;stroke:#fff;stroke-width:2.5px}.map-node.is-start .node-bg{fill:#4fd1a55c;stroke:var(--accent-2);stroke-width:3px}.map-node.is-vault .node-bg{fill:var(--accent);stroke:#fff8e2;stroke-width:3px}.map-canvas.readonly .map-node .node-bg{cursor:default}.map-canvas.tool-coin .map-node:hover .node-bg,.map-canvas.tool-start .map-node:hover .node-bg,.map-canvas.tool-vault .map-node:hover .node-bg,.map-canvas.tool-zone .map-node:hover .node-bg,.map-canvas.tool-erase .map-node:hover .node-bg{stroke:var(--accent)}.vault-halo{fill:none;stroke:var(--accent);stroke-width:3px;opacity:.55;pointer-events:none;transform-box:fill-box;transform-origin:50%;animation:2.4s ease-in-out infinite vault-pulse}.vault-callout{fill:var(--accent);letter-spacing:.18em;text-transform:uppercase;pointer-events:none;font-size:10px;font-weight:900}@keyframes vault-pulse{0%,to{opacity:.55;transform:scale(1)}50%{opacity:.85;transform:scale(1.08)}}.start-label,.vault-label,.node-label{fill:#1a1305;pointer-events:none;font-size:11px;font-weight:900}.map-node.is-start .node-label,.map-node.is-start .start-label{fill:#052116}.coin-marker{pointer-events:none}.coin-marker .coin-disc{stroke:#0000008c;stroke-width:1px}.coin-marker.tier-yellow .coin-disc{fill:#f6c945}.coin-marker.tier-orange .coin-disc{fill:#f59e0b}.coin-marker.tier-purple .coin-disc{fill:#a855f7}.coin-marker .coin-value{fill:#1a0a0f;pointer-events:none;font-size:9px;font-weight:900}.coin-marker.picked .coin-disc{opacity:.45;stroke-dasharray:3 3}.coin-marker.delivered .coin-disc{opacity:.18}.route-layer .route-path{fill:none;stroke:var(--blue);stroke-width:4px;stroke-linecap:round;stroke-linejoin:round;opacity:.9;filter:drop-shadow(0 0 6px #70b7ff73)}.route-layer .route-path.route-ghost{stroke:var(--muted);stroke-width:3px;stroke-dasharray:6 6;opacity:.4;filter:none}.route-layer .route-path.route-live{stroke:var(--accent);stroke-width:5px;filter:drop-shadow(0 0 8px #f8c84c8c)}.car-marker .car-arrow{fill:var(--blue);stroke:#0b1020;stroke-width:2px}.car-marker.car-live .car-arrow{fill:var(--accent);stroke:#1a1305}.map-canvas.live-set-position .map-node.interactive{cursor:crosshair}.map-canvas.live-set-position .map-node.interactive .node-bg{stroke:var(--accent);stroke-width:2.5px}.map-canvas .map-node.interactive:hover .node-bg{stroke:var(--accent);stroke-width:3px}.live-pill{background:var(--accent);color:#1a1305;letter-spacing:.14em;text-transform:uppercase;border-radius:999px;align-items:center;padding:4px 10px;font-size:11px;font-weight:900;display:inline-flex}.map-editor-summary{color:var(--muted);flex-wrap:wrap;gap:14px;padding:0 20px;font-size:13px;font-weight:800;display:flex}.map-editor-summary span:last-child{color:var(--accent)}.map-editor-import-export{gap:10px;padding:0 20px;display:grid}.map-editor-import-export textarea{min-height:100px}.judge-section h3{letter-spacing:.08em;color:var(--muted);text-transform:uppercase;margin:0 0 8px;font-size:13px}.judge-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.judge-action.judge-coin-yellow span{color:#f6c945}.judge-action.judge-coin-orange span{color:#f59e0b}.judge-action.judge-coin-purple span{color:#a855f7}.judge-action.judge-cop-hit span,.judge-action.judge-danger-entry span,.judge-action.judge-off-road span{color:var(--danger)}.judge-action.judge-trip-complete span{color:var(--accent-2)}.score-grid-secondary{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:6px}.score-stat.highlight strong{color:var(--accent);font-size:28px}@media (width<=1100px){.map-layout{grid-template-columns:minmax(0,1fr)}.map-editor-meta{grid-template-columns:repeat(2,minmax(0,1fr))}}.drive-layout{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:start;gap:18px;display:grid}.connection-strip{grid-template-columns:minmax(220px,1.4fr) minmax(0,1fr);align-items:end;gap:14px;padding:0 20px 16px;display:grid}.drive-pad-panel{gap:14px;padding:0 20px 16px;display:grid}.drive-pad-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.drive-pad-header strong{color:var(--muted);font-size:13px;display:block}.burst-slider{text-transform:none;letter-spacing:0;min-width:240px;color:var(--text);flex:1;gap:6px;font-size:13px;display:grid}.burst-slider input[type=range]{appearance:none;background:var(--panel-3);border:none;border-radius:999px;width:100%;height:6px;padding:0}.burst-slider input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--accent);border:2px solid var(--panel);cursor:pointer;border-radius:999px;width:18px;height:18px}.burst-slider input[type=range]::-moz-range-thumb{background:var(--accent);border:2px solid var(--panel);cursor:pointer;border-radius:999px;width:18px;height:18px}.drive-pad{border:none;grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:"sl fw sr""tl stop tr"".bw.";gap:10px;max-width:460px;margin:0;padding:0;display:grid}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.drive-pad-btn{background:var(--panel-3);text-align:center;border-radius:18px;place-items:center;gap:4px;min-height:84px;padding:12px 10px;font-weight:900;display:grid}.drive-pad-btn.area-sl{grid-area:sl}.drive-pad-btn.area-fw{grid-area:fw}.drive-pad-btn.area-sr{grid-area:sr}.drive-pad-btn.area-tl{grid-area:tl}.drive-pad-btn.area-tr{grid-area:tr}.drive-pad-btn.area-bw{grid-area:bw}.drive-pad-btn.area-stop{grid-area:stop}.drive-pad-glyph{font-size:24px;line-height:1}.drive-pad-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:800}.drive-pad-btn.area-stop .drive-pad-label{color:#ffffffd9}.drive-pad-btn:hover:not(:disabled) .drive-pad-label{color:var(--text)}.drive-pad-btn.area-stop:hover:not(:disabled) .drive-pad-label{color:#ffffffd9}.drive-pad-hint{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.sensor-strip{background:var(--panel);border:1px solid var(--line);border-radius:18px;gap:10px;padding:16px 20px 20px;display:grid}.sensor-strip-header{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.sensor-strip-header span{color:var(--muted);font-size:12px;font-weight:700}.sensor-tiles{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.sensor-tile{border:1px solid var(--line);background:#0a0f19;border-radius:14px;gap:8px;padding:12px;display:grid}.sensor-tile.placeholder{opacity:.78;border-style:dashed}.sensor-tile-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.sensor-tile-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:11px;font-weight:900}.sensor-tile-status{text-transform:uppercase;letter-spacing:.1em;background:var(--panel-3);color:var(--muted);border-radius:999px;padding:2px 8px;font-size:10px;font-weight:900}.sensor-tile-status.live{color:#052116;background:var(--accent-2)}.sensor-tile-status.pending{color:#ffffffd9;background:#ff5d7373}.sensor-tile-meta{color:var(--muted);font-size:12px;font-weight:600}@media (width<=1180px){.drive-layout,.connection-strip{grid-template-columns:1fr}}.calibration-panel-v2{gap:14px;padding:0 20px 16px;display:grid}.calibration-panel-v2>.helper-copy{margin:0}.calibration-rows{gap:12px;display:grid}.cal-row{background:var(--panel-3);border:1px solid var(--line);border-radius:14px;gap:8px;padding:12px 14px;display:grid}.cal-row-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.cal-row-label{color:var(--text);text-transform:uppercase;letter-spacing:.04em;font-size:13px;font-weight:800}.cal-row-value{font-variant-numeric:tabular-nums;color:var(--accent);font-size:14px}.cal-row input[type=range]{appearance:none;background:var(--panel-2,var(--panel));border:none;border-radius:999px;width:100%;height:6px;padding:0}.cal-row input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--accent);border:2px solid var(--panel);cursor:pointer;border-radius:999px;width:18px;height:18px}.cal-row input[type=range]::-moz-range-thumb{background:var(--accent);border:2px solid var(--panel);cursor:pointer;border-radius:999px;width:18px;height:18px}.cal-row-foot{grid-template-columns:1fr auto;align-items:center;gap:14px;display:grid}.cal-row-hint{color:var(--muted);font-size:12px;line-height:1.4}.cal-row-tests{gap:8px;display:flex}.cal-row-tests button{text-transform:uppercase;letter-spacing:.06em;min-width:90px;padding:6px 12px;font-size:12px;font-weight:800}.calibration-actions{justify-content:flex-end;display:flex}.manual-drive-panel{gap:14px;padding:16px 20px 20px;display:grid}.manual-drive-panel>.panel-header{padding:0}.manual-drive-grid{grid-template-columns:minmax(0,1.4fr) auto minmax(180px,.8fr);align-items:start;gap:18px;display:grid}.manual-drive-sticks{grid-template-columns:repeat(2,auto);align-items:start;gap:14px;display:grid}.manual-drive-stick-wrap{justify-items:center;gap:6px;display:grid}.manual-drive-stick-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:11px;font-weight:800}.manual-drive-help{gap:10px;display:grid}.manual-drive-help p{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.manual-drive-help ul{color:var(--muted);gap:4px;margin:0;padding-left:18px;font-size:13px;display:grid}.manual-drive-help strong{color:var(--text)}.manual-drive-stick{width:120px;height:120px}.manual-drive-readout{gap:8px;font-size:12px;display:grid}.manual-drive-readout-row{gap:2px;display:grid}.manual-drive-readout-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:11px;font-weight:800}.manual-drive-readout-value code,.manual-drive-readout-value strong{font-family:var(--mono,ui-monospace, "SF Mono", Menlo, monospace);color:var(--text);font-size:13px}.manual-drive-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.manual-drive-dryrun-toggle{border:1px solid var(--line);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:12px;font-weight:800;display:inline-flex}.manual-drive-dryrun-toggle input[type=checkbox]{accent-color:var(--accent,#f8c84c)}.manual-drive-dryrun-banner{border:1px solid var(--accent,#f8c84c);color:var(--accent,#f8c84c);letter-spacing:.04em;text-transform:uppercase;background:#f8c84c1f;border-radius:12px;margin:0 20px 12px;padding:10px 14px;font-size:12px;font-weight:800}.manual-drive-hint{color:var(--muted);margin:0;font-size:12px}@media (width<=720px){.manual-drive-grid{grid-template-columns:1fr;justify-items:start}.manual-drive-sticks{justify-self:center}}.live-run-bar.compact{padding:12px 20px}.live-run-bar.compact .live-run-bar-grid{grid-template-columns:minmax(220px,1.4fr) minmax(0,1fr)}.live-run-bar-url-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);align-items:center;gap:10px;font-size:11px;font-weight:800;display:flex}@media (width<=720px){.live-run-bar.compact .live-run-bar-grid{grid-template-columns:1fr}}.log-level-selector{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);align-items:center;gap:6px;margin-left:auto;font-size:11px;font-weight:700;display:inline-flex}.log-level-selector-label{opacity:.8}.log-level-selector select{color:var(--text,#e8edf6);text-transform:none;letter-spacing:0;cursor:pointer;background:#0f162699;border:1px solid #8498bc52;border-radius:6px;padding:4px 8px;font-size:12px}.log-level-selector select:hover{border-color:#8498bc99}.scope{border:1px solid var(--line);background:#070a106b;border-radius:18px;margin:0 20px 16px;overflow:hidden}.scope>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;list-style:none;display:flex}.scope>summary::-webkit-details-marker{display:none}.scope-summary-title{letter-spacing:.04em;text-transform:uppercase;color:var(--text);font-size:14px;font-weight:900}.scope-summary-pill{text-transform:uppercase;letter-spacing:.1em;background:var(--panel-3);color:var(--muted);border-radius:999px;padding:4px 10px;font-size:11px;font-weight:900}.scope-summary-pill.good{background:var(--accent-2);color:#052116}.scope-summary-pill.ok{color:var(--blue);background:#70b7ff52}.scope-summary-pill.warn{color:var(--accent);background:#f8c84c47}.scope-summary-pill.alert{color:var(--purple);background:#a78bfa52}.scope-summary-pill.waiting{color:var(--danger);background:#ff5d7347}.scope-body{gap:12px;padding:0 16px 16px;display:grid}.scope-visual{grid-template-columns:minmax(220px,240px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.scope-dial{width:100%;height:auto;display:block}.scope-sensor{transition:fill 80ms ease-out,stroke 80ms ease-out}.scope-sensor.dark{fill:#141c2ef2;stroke:#8498bc73;stroke-width:1.5px}.scope-sensor.lit{fill:var(--accent);stroke:#ffe089f2;stroke-width:2px;filter:drop-shadow(0 0 6px #f8c84ca6)}.scope-sensor-label{pointer-events:none;font-size:12px;font-weight:900}.scope-sensor-label.dark{fill:#eef5ffd9}.scope-sensor-label.lit{fill:#1f1503}.scope-dial-label{fill:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:800}.scope-readouts{align-content:start;gap:10px;display:grid}.scope-readout{grid-template-columns:96px minmax(0,1fr);align-items:baseline;gap:10px;display:grid}.scope-readout-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:900}.scope-readout-value{color:var(--text);flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.scope-pattern{letter-spacing:.18em;color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:14px}.scope-pattern-hex{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px}.scope-popcount{color:var(--text);font-size:18px;font-weight:900}.scope-thresholds{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px}.scope-class{background:var(--panel-3);color:var(--text);border-radius:999px;padding:3px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;font-weight:900}.scope-class.angle-ERROR,.scope-class.offset-ERROR{color:var(--danger);background:#ff5d7340}.scope-class.angle-0,.scope-class.offset-0{color:var(--accent-2);background:#4fd1a538}.scope-phase{background:var(--panel-3);color:var(--muted);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:800}.scope-phase.good{background:var(--accent-2);color:#052116}.scope-phase.alert{color:var(--purple);background:#a78bfa52}.scope-phase.warn{color:var(--accent);background:#f8c84c47}.scope-phase.waiting{color:var(--danger);background:#ff5d7347}.scope-phase.ok{color:var(--blue);background:#70b7ff47}.scope-hz{color:var(--text);font-size:13px;font-weight:900}.scope-hz-meta{color:var(--muted);font-size:11px}.scope-spark{border:1px solid var(--line);background:#060911;border-radius:14px;padding:6px}.scope-spark.empty{text-align:center;color:var(--muted);padding:18px;font-size:12px}.scope-spark svg{width:100%;height:80px;display:block}.scope-spark-line{stroke-width:1px;stroke-dasharray:4 4}.scope-spark-line.app{stroke:var(--accent-2)}.scope-spark-line.arrive{stroke:var(--purple)}.scope-spark-line.leave{stroke:#8498bc99}.scope-spark-label{fill:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:9px;font-weight:800}.scope-spark-trace{fill:none;stroke:var(--accent);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.scope-warning{color:var(--text);background:#ff5d7324;border:1px solid #ff5d7373;border-radius:12px;margin:0;padding:10px 12px;font-size:12px;line-height:1.5}.scope-warning.subtle{background:#f8c84c1f;border-color:#f8c84c66}.scope-warning code{background:#00000052;border-radius:6px;padding:1px 5px;font-size:11px}@media (width<=720px){.scope-visual{grid-template-columns:1fr}.scope-dial{max-width:240px;margin:0 auto}}.checklist{border:1px solid var(--line);background:#070a106b;border-radius:18px;margin:0 20px 16px;overflow:hidden}.checklist>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;list-style:none;display:flex}.checklist>summary::-webkit-details-marker{display:none}.checklist-summary-title{letter-spacing:.04em;text-transform:uppercase;color:var(--text);font-size:14px;font-weight:900}.checklist-summary-pill{text-transform:uppercase;letter-spacing:.1em;background:var(--panel-3);color:var(--muted);border-radius:999px;padding:4px 10px;font-size:11px;font-weight:900}.checklist-summary-pill.good{background:var(--accent-2);color:#052116}.checklist-summary-pill.warn{color:var(--accent);background:#f8c84c47}.checklist-body{gap:12px;padding:0 16px 16px;display:grid}.checklist-steps{gap:10px;margin:0;padding:0;list-style:none;display:grid}.checklist-row{border:1px solid var(--line);background:#0a0f19;border-radius:14px;gap:6px;padding:12px 14px;display:grid}.checklist-row.status-passed{background:#4fd1a50f;border-color:#4fd1a58c}.checklist-row.status-failed{background:#ff5d7312;border-color:#ff5d738c}.checklist-row-head{align-items:center;gap:10px;display:flex}.checklist-row-head h3{color:var(--text);flex:1;margin:0;font-size:14px;font-weight:900}.checklist-status-dot{background:var(--muted);border-radius:999px;width:10px;height:10px}.checklist-row.status-passed .checklist-status-dot{background:var(--accent-2);box-shadow:0 0 8px #4fd1a599}.checklist-row.status-failed .checklist-status-dot{background:var(--danger);box-shadow:0 0 8px #ff5d738c}.checklist-status-pill{letter-spacing:.1em;text-transform:uppercase;background:var(--panel-3);color:var(--muted);border-radius:999px;padding:3px 8px;font-size:10px;font-weight:900}.checklist-status-pill.status-passed{background:var(--accent-2);color:#052116}.checklist-status-pill.status-failed{background:var(--danger);color:#fff}.checklist-why,.checklist-watch,.checklist-hint{color:var(--text);margin:0;font-size:13px;line-height:1.45}.checklist-watch{color:var(--text)}.checklist-hint{color:var(--muted);font-size:12px}.checklist-live{background:var(--panel-3);width:fit-content;color:var(--muted);border-radius:999px;padding:4px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;font-weight:900}.checklist-live.good{background:var(--accent-2);color:#052116}.checklist-live.ok{color:var(--blue);background:#70b7ff47}.checklist-live.warn{color:var(--accent);background:#f8c84c4d}.checklist-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.checklist-footer{justify-content:space-between;align-items:center;gap:12px;padding-top:4px;display:flex}.checklist-footer .checklist-hint{margin:0}.operator-grid{grid-template-columns:minmax(260px,.75fr) minmax(0,1fr);gap:14px;padding:0 16px 16px;display:grid}.sensor-pill{color:#dce8fb;background:#172033;border-radius:999px;width:fit-content;padding:6px 10px;font-weight:950;display:inline-flex}.sensor-pill.red{color:#fff;background:var(--danger)}.sensor-pill.green{color:#052116;background:var(--accent)}.sensor-pill.waiting,.sensor-pill.unknown{color:var(--muted);background:#111827}.timeline{gap:8px;display:grid}.timeline-row{border:1px solid var(--line);color:var(--muted);background:#0a0f19;border-radius:12px;justify-content:space-between;gap:14px;padding:10px 12px;display:flex}.timeline-row.running,.timeline-row.selected{color:var(--text);border-color:var(--accent)}.timeline-row.done{color:var(--accent-2)}.timeline-row.cancelled{color:var(--danger)}.compiled-list{color:var(--muted);gap:8px;margin:0;padding:0 16px 16px 42px;display:grid}.code-panel,.log-panel{color:#dce8fb;white-space:pre-wrap;background:#060910;border-radius:14px;max-height:320px;padding:14px;font-size:12px;line-height:1.55;overflow:auto}.judge-grid,.heat-panel,.run-summary{gap:12px;padding:0 16px 16px;display:grid}.judge-action{border:1px solid var(--line);background:#0a0f19;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.judge-action span{color:var(--muted);font-weight:900}.heat-stats,.score-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.heat-stats span,.score-stat{border:1px solid var(--line);color:var(--muted);background:#0a0f19;border-radius:14px;padding:10px 12px;font-weight:900}.score-stat{gap:4px;display:grid}.score-stat strong{color:var(--text);font-size:20px}.run-log{gap:8px;max-height:260px;display:grid;overflow:auto}.run-log-row{border:1px solid var(--line);background:#0a0f19;border-radius:12px;gap:4px;padding:10px 12px;display:grid}.run-log-row strong{color:var(--accent);text-transform:uppercase}.run-log-row span{color:var(--muted)}.runbook-list{color:var(--muted);gap:8px;margin:0;padding:0 16px 16px 38px;display:grid}.runbook-list li{line-height:1.45}.heat-replay{gap:12px;padding:0 16px 16px;display:grid}.heat-replay-controls{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.heat-replay-scrubber{align-items:center;gap:12px;display:flex}.heat-replay-scrubber input[type=range]{background:0 0;flex:1;padding:0}.heat-replay-scrubber span{min-width:100px;color:var(--muted);text-align:right;font-size:12px;font-weight:800}.heat-replay-score{border:1px solid var(--line);color:var(--muted);letter-spacing:.06em;text-transform:uppercase;background:#0a0f19;border-radius:12px;flex-wrap:wrap;gap:12px;padding:10px 12px;font-size:12px;font-weight:900;display:flex}.heat-replay-events{gap:6px;max-height:200px;display:grid;overflow:auto}.heat-replay-event{border:1px solid var(--line);background:#0a0f19;border-radius:10px;grid-template-columns:50px minmax(0,1fr);gap:8px 12px;padding:8px 10px;font-size:12px;display:grid}.heat-replay-event strong{color:var(--accent);font-weight:900}.heat-replay-event span{color:var(--text);font-weight:700}.heat-replay-event small{color:var(--muted);grid-column:2/-1;font-size:11px}.runner-debug-strip{border:1px solid var(--line);background:#060910c7;border-radius:14px;gap:6px;margin:0 16px 16px;padding:12px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.5;display:grid}.runner-debug-strip.is-running{border-color:var(--accent);box-shadow:0 0 0 1px #f8c84c52}.runner-debug-strip .debug-row{grid-template-columns:80px minmax(0,1fr);align-items:baseline;gap:12px;display:grid}.runner-debug-strip .debug-label{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:900}.runner-debug-strip .debug-now{color:var(--accent)}.runner-debug-strip .debug-state{color:var(--text)}.runner-debug-strip .debug-telemetry{color:var(--blue)}.audit-shell{border:1px solid var(--line);background:#111827e6;border-radius:26px;gap:18px;padding:18px 22px 28px;display:grid;box-shadow:0 28px 90px #00000061}.audit-header{grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:start;gap:18px;display:grid}.audit-lede{max-width:720px;color:var(--muted);margin:10px 0 0;font-size:14px;line-height:1.5}.audit-snapshot{border:1px solid var(--line);background:#070a108f;border-radius:18px;padding:14px}.audit-snapshot h3{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin:0 0 10px;font-size:12px;font-weight:900}.audit-snapshot ul{grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;list-style:none;display:grid}.audit-snapshot li{border:1px solid var(--line);background:var(--panel-2);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.audit-snapshot-count{color:var(--text);font-size:18px;font-weight:900}.audit-snapshot-note{color:var(--muted);margin:10px 0 0;font-size:11px;line-height:1.4}.audit-tabs{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;display:grid}.audit-tab{text-align:left;border:1px solid var(--line);background:var(--panel-2);border-radius:14px;gap:4px;padding:12px 14px;display:grid}.audit-tab.active{border-color:var(--accent);background:linear-gradient(135deg,#f8c84c2e,#f8c84c0a)}.audit-tab span{letter-spacing:.02em;font-weight:900}.audit-tab small{color:var(--muted);font-size:11px;font-weight:600;line-height:1.35}.audit-section{gap:16px;display:grid}.audit-explainer{border:1px solid var(--line);color:var(--muted);background:#070a1066;border-radius:14px;margin:0;padding:12px 14px;font-size:13px;line-height:1.5}.audit-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.audit-card{border:1px solid var(--line);background:var(--panel-2);border-radius:16px;gap:10px;padding:14px;display:grid}.audit-card h3{margin:0;font-size:14px}.audit-card p{color:var(--muted);margin:4px 0 0;font-size:12px;line-height:1.4}.audit-card-bar{background:#ffffff0f;border-radius:999px;align-items:stretch;height:10px;display:flex;overflow:hidden}.audit-bar{height:100%}.audit-card-counts{grid-template-columns:repeat(2,1fr);gap:6px;margin:0;padding:0;font-size:12px;list-style:none;display:grid}.audit-card-counts li{justify-content:space-between;align-items:center;gap:8px;display:flex}.audit-key{border:1px dashed var(--line);background:#070a1057;border-radius:14px;padding:10px 14px}.audit-key summary{cursor:pointer;color:var(--text);font-weight:900}.audit-key-list{gap:8px;margin:10px 0 0;padding:0;list-style:none;display:grid}.audit-key-list li{color:var(--muted);grid-template-columns:120px minmax(0,1fr);align-items:center;gap:10px;font-size:13px;line-height:1.45;display:grid}.audit-callout{background:linear-gradient(135deg,#f8c84c1a,#f8c84c05);border:1px solid #f8c84c66;border-radius:16px;padding:14px}.audit-callout h3{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;font-size:13px;font-weight:900}.audit-callout ol{color:var(--text);margin:0;padding-left:18px;font-size:13px;line-height:1.55}.audit-callout li+li{margin-top:8px}.audit-callout code{color:var(--accent);background:#070a1080;border-radius:5px;padding:1px 5px;font-size:12px}.audit-group{border:1px solid var(--line);background:#070a1057;border-radius:16px;overflow:hidden}.audit-group>summary{cursor:pointer;color:var(--text);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-weight:900;display:flex}.audit-group-count{color:var(--blue);background:#70b7ff2e;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:900}.audit-table{border-collapse:collapse;width:100%;font-size:12px}.audit-table thead{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;background:#070a1080;font-size:11px}.audit-table th,.audit-table td{vertical-align:top;border-top:1px solid var(--line);text-align:left;padding:12px 14px;line-height:1.45}.audit-table thead th{border-top:none;font-weight:900}.audit-table strong{color:var(--text);font-size:13px}.audit-table p{color:var(--muted);margin:4px 0 0;font-size:12px;line-height:1.45}.audit-table ul{color:var(--muted);margin:0;padding-left:16px}.audit-table ul li+li{margin-top:4px}.audit-table code{color:var(--accent);word-break:break-word;background:#070a1080;border-radius:5px;padding:1px 5px;font-size:11px;display:inline-block}.audit-status{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:900;display:inline-flex}.status-ready{color:#052116;background:var(--accent-2)}.status-partial{color:#2b1505;background:var(--accent)}.status-judge{color:#fff;background:#a78bfaa6}.status-missing{color:#fff;background:var(--danger)}.audit-bar.segment-ready{background:var(--accent-2)}.audit-bar.segment-partial{background:var(--accent)}.audit-bar.segment-judge{background:#a78bfad9}.audit-bar.segment-missing{background:var(--danger)}.audit-carry{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:900;display:inline-flex}.carry-matches{color:#052116;background:var(--accent-2)}.carry-renamed{color:#02132a;background:var(--blue)}.carry-different-values{color:#2b1505;background:var(--accent)}.carry-not-applicable{color:#fff;background:var(--danger)}.audit-note{color:var(--muted);margin:4px 0 0;font-size:11px;line-height:1.45}.audit-gap{color:var(--text);font-size:12px;line-height:1.5;display:block}.audit-na{color:#ffffff52}@media (width<=900px){.audit-header{grid-template-columns:minmax(0,1fr)}.audit-table{font-size:11px}.audit-table th,.audit-table td{padding:10px}}.howto-shell{border:1px solid var(--line);background:#111827e6;border-radius:26px;gap:16px;padding:22px;display:grid;box-shadow:0 28px 90px #00000061}.howto-header{padding:6px 4px 0}.howto-lede{max-width:720px;color:var(--muted);margin:10px 0 0;font-size:15px;line-height:1.55}.howto-card{border:1px solid var(--line);background:#070a1066;border-radius:18px;padding:18px 20px}.howto-card h3{letter-spacing:.01em;margin:0 0 10px;font-size:18px}.howto-card h4{color:var(--accent);letter-spacing:.1em;text-transform:uppercase;margin:16px 0 8px;font-size:13px;font-weight:900}.howto-card-cta{background:linear-gradient(135deg,#f8c84c1a,#f8c84c05);border-color:#f8c84c66}.howto-card-cta p{color:var(--text);margin:0 0 8px;font-size:14px;line-height:1.55}.howto-card-pickup-call{background:linear-gradient(135deg,#70b7ff1f,#70b7ff05);border-color:#70b7ff66}.howto-card-pickup-call h3{color:var(--blue)}.howto-card-pickup-call p{color:var(--text);margin:0 0 8px;font-size:14px;line-height:1.55}.howto-card-pickup-call code{color:var(--accent);background:#070a1080;border-radius:6px;padding:1px 6px;font-size:12px}.howto-list{color:var(--text);margin:0;padding-left:20px;font-size:14px;line-height:1.55}.howto-list-spaced li+li{margin-top:8px}.howto-note{color:var(--muted);margin:10px 0 0;font-size:13px;line-height:1.55}.howto-note code,.howto-list code,.howto-card-cta code{color:var(--accent);background:#070a1080;border-radius:6px;padding:1px 6px;font-size:12px}.howto-block-group{margin-top:8px}.howto-table{border-collapse:collapse;width:100%;margin-top:4px;font-size:13px}.howto-table thead{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px}.howto-table th,.howto-table td{border-top:1px solid var(--line);text-align:left;vertical-align:top;padding:8px 10px;line-height:1.5}.howto-table thead th{border-top:none;font-weight:900}.howto-table td code{color:var(--accent);background:#070a1080;border-radius:6px;padding:1px 6px;font-size:12px;display:inline-block}.howto-examples{gap:14px;display:grid}.howto-example{border:1px solid var(--line);background:var(--panel-2);border-radius:14px;padding:12px 14px}.howto-example h4{color:var(--text);letter-spacing:0;text-transform:none;margin:0 0 8px;font-size:14px}.howto-code{border:1px solid var(--line);color:var(--text);white-space:pre-wrap;word-break:normal;background:#0a0f19;border-radius:12px;margin:0;padding:12px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.55}.howto-penalty{background:var(--danger);color:#fff;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:900;display:inline-block}.howto-bonus{background:var(--accent-2);color:#052116;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:900;display:inline-block}@media (width<=700px){.howto-shell{padding:16px}.howto-card{padding:14px}.howto-table{font-size:12px}}.admin-gate,.admin-gate-form{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.admin-gate-form input{border:1px solid var(--line);color:var(--text);background:#070a108c;border-radius:10px;min-width:180px;padding:6px 10px;font-size:13px}.admin-gate-button{border:1px solid var(--line);color:var(--text);letter-spacing:.04em;cursor:pointer;background:#070a1073;border-radius:10px;padding:6px 12px;font-size:12px;font-weight:700}.admin-gate-button.primary{background:var(--accent);color:#111827;border-color:#0000}.admin-gate-button:hover{background:#f8c84c26}.admin-chip{background:var(--accent);color:#111827;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;align-items:center;padding:4px 10px;font-size:11px;font-weight:900;display:inline-flex}.admin-gate-error{color:var(--danger);font-size:12px;font-weight:700}.course-chip{border:1px solid var(--line);color:var(--text);background:#070a1073;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:12px;font-weight:700;display:inline-flex}.course-chip-label{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:10px}.active-course-picker{border:1px solid var(--line);background:#070a1066;border-radius:14px;flex-wrap:wrap;align-items:center;gap:12px;margin:16px 20px 0;padding:10px 14px;display:flex}.active-course-picker label{letter-spacing:.08em;color:var(--muted);align-items:center;gap:8px;margin:0;font-size:11px;display:inline-flex}.active-course-picker select{border:1px solid var(--line);width:auto;color:var(--text);text-transform:none;letter-spacing:0;background:#070a1099;border-radius:10px;padding:6px 10px;font-size:13px}.active-course-picker .helper-copy{font-size:12px}.live-run-bar-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1.6fr) minmax(0,1fr);align-items:center;gap:14px;padding:14px 20px 18px;display:grid}.live-run-bar-url{color:var(--muted);flex-direction:column;gap:6px;font-size:12px;display:flex}.live-run-bar-url input{border:1px solid var(--line);color:var(--text);background:#070a1099;border-radius:10px;padding:8px 10px;font-size:13px}.admin-gate.is-error input{border-color:var(--danger)}@media (width<=900px){.live-run-bar-grid{grid-template-columns:1fr}}.loaded-program-panel header.panel-header{padding:16px 20px}.loaded-program-stats{flex-wrap:wrap;gap:24px;padding:14px 20px 6px;display:flex}.loaded-program-stats>div{flex-direction:column;gap:2px;display:flex}.loaded-program-stats .stat-label{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:10px}.loaded-program-stats strong{color:var(--text);font-size:18px}.loaded-program-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;padding:14px 20px 10px;display:grid}.loaded-program-actions label{color:var(--muted);flex-direction:column;gap:6px;font-size:12px;display:flex}.loaded-program-actions select,.loaded-program-actions input[type=file]{border:1px solid var(--line);color:var(--text);background:#070a1099;border-radius:10px;padding:8px 10px;font-size:13px}.loaded-program-run{padding:8px 20px 20px}.loaded-program-run>button{min-height:44px;padding:10px 18px}.loaded-program-errors{color:var(--danger);background:#ff5d7314;border:1px solid #ff5d7366;border-radius:12px;margin:0 20px 16px;padding:10px 14px;font-size:12px;list-style:inside}.drawer-body{padding:0 16px 16px}.loaded-program-blocks{margin:4px 0 0;padding:0;list-style:none}.loaded-program-blocks.nested{margin-top:6px}.loaded-block-row{grid-template-columns:22px minmax(0,1fr);align-items:start;gap:10px;padding:6px 0;display:grid}.loaded-block-index{background:var(--blue);color:#111827;border-radius:8px;place-items:center;width:22px;height:22px;font-size:11px;font-weight:900;display:inline-grid}.loaded-block-children{border-left:2px solid var(--line);flex-direction:column;gap:6px;margin-top:4px;padding-left:14px;display:flex}.loaded-block-label{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-bottom:2px;font-size:10px;display:inline-block}.empty-state.inline-empty{padding:4px 8px;font-size:12px}.code-panel.inline{margin:0}@media (width<=700px){.loaded-program-actions{grid-template-columns:1fr}}.run-shell{gap:18px;display:grid}.run-mode-tabs{border:1px solid var(--line);background:#070a1066;border-radius:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;padding:8px;display:grid}.run-mode-tab{color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;gap:4px;padding:12px 16px;font-size:14px;font-weight:800;line-height:1.2;display:grid}.run-mode-tab small{color:var(--muted);letter-spacing:.02em;font-size:11px;font-weight:600}.run-mode-tab:hover:not(.active){border-color:var(--line);color:var(--text);background:#ffffff0a;transform:none}.run-mode-tab.active{border-color:var(--accent);color:var(--text);background:#f8c84c24}.run-mode-tab.active small{color:#eef5ffc7}.run-mode-body{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start;gap:18px;display:grid}.run-mode-stack,.run-mode-side{gap:16px;min-width:0;display:grid}@media (width<=1100px){.run-mode-body{grid-template-columns:1fr}}@media (width<=1180px){.hero-panel,.training-layout,.competition-layout,.drawer-grid,.operator-grid{grid-template-columns:1fr}.simulation-panel,.toolbox{position:static}}@media (width<=820px){.app-shell{width:min(100% - 18px,1500px);padding:12px 0}.hero-panel,.panel-header,.scratch-editor{grid-template-columns:1fr}.hero-panel{padding:16px}.panel-header,.workspace-title,.saved-card{flex-direction:column;align-items:stretch}.scratch-editor{padding:14px}.block-actions{justify-content:flex-start}}
