:root{color:#1d2a2a;font-synthesis:none;text-rendering:optimizelegibility;--ink:#1d2a2a;--muted-ink:#586563;--surface:#fffdfa;--surface-soft:#f6f1df;--line:#d7d5c8;--brand:#11644d;--brand-dark:#0b4637;--accent:#f2c94e;--accent-soft:#f9e7a4;--active-tab:#f78145;--disabled:#d8d4b1;--block-event:#11644d;--block-motor:#b3471b;--block-control:#65489a;--block-sensor:#65bcc2;--shadow:0 12px 32px #1e39321a;background:#f5f2e8;font-family:Inter,ui-rounded,Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif}*{box-sizing:border-box}html{background:#f5f2e8;min-width:320px;min-height:100%}body{min-width:320px;min-height:100vh;margin:0}button,summary{font:inherit}button:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #176f9b}button:disabled{cursor:not-allowed;opacity:.58}.app-shell{min-height:100vh}.app-header{color:#fff;background:var(--brand-dark);justify-content:space-between;align-items:center;gap:24px;min-height:76px;padding:14px clamp(18px,4vw,56px);display:flex}.app-header h1,.app-header p{margin:0}.app-header h1{margin-top:2px;font-size:clamp(1.2rem,2.2vw,1.75rem);line-height:1.15}.app-header__product{color:#bde1d5;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:800}.app-header__status{color:#e3f0eb;flex-wrap:wrap;justify-content:flex-end;gap:8px;font-size:.8rem;display:flex}.app-header__actions{justify-items:end;gap:7px;display:grid}.project-file-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;max-width:680px;display:flex}.project-file-controls>button,.project-file-controls__import,.project-reset-confirm button{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff5c;border-radius:8px;min-height:30px;padding:5px 9px;font-size:.72rem;font-weight:800}.project-file-controls>button:hover,.project-file-controls__import:hover,.project-reset-confirm button:hover{background:#ffffff2e}.project-file-controls__import{place-items:center;display:inline-grid}.project-file-controls__import input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.project-file-controls__import:focus-within{outline-offset:2px;outline:3px solid #8fd4f4}.project-save-state{color:#e3f0eb;align-items:center;gap:6px;margin-right:3px;font-size:.72rem;font-weight:750;display:flex}.project-save-state__dot{background:#68c5a7;border-radius:50%;width:8px;height:8px}.project-save-state__dot--saving{background:#f2c94e}.project-save-state__dot--error{background:#ff8f7e}.project-reset-confirm{color:#ffe8df;border-left:1px solid #ffffff38;align-items:center;gap:5px;padding-left:7px;font-size:.7rem;font-weight:750;display:flex}.project-reset-confirm__confirm{background:#8b3025!important;border-color:#ff9d8c!important}.project-file-notice{color:#cce8de;text-align:right;flex-basis:100%;font-size:.68rem;font-weight:700}.project-file-notice--error{color:#ffd2ca}.app-header__status span{border:1px solid #ffffff3d;border-radius:999px;padding:5px 9px}.project-navigation{background:var(--brand-dark);grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;padding:3px clamp(12px,3vw,40px) 0;display:grid}.project-navigation__tab{min-height:64px;color:var(--ink);background:var(--accent-soft);cursor:pointer;text-align:left;border:0;border-radius:10px 10px 0 0;padding:10px 14px;font-weight:800;transition:background .12s,transform .12s}.project-navigation__tab:hover:not(:disabled){background:#ffe687}.project-navigation__tab[data-active]{color:#321a08;background:var(--active-tab)}.project-navigation__tab small{color:#595a4f;margin-top:3px;font-size:.7rem;font-weight:600;display:block}.project-navigation__tab:disabled{color:#4e514a;background:var(--disabled)}.app-main{width:min(1500px,100%);margin:0 auto;padding:clamp(14px,2.5vw,34px)}.screen-panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:20px;overflow:hidden}.loading-panel{min-height:420px;color:var(--muted-ink);place-items:center;font-weight:800;display:grid}.screen-panel__heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;min-height:88px;padding:18px 22px;display:flex}.screen-panel__heading h2,.screen-panel__heading p{margin:0}.screen-panel__heading h2{margin:2px 0 4px;font-size:clamp(1.4rem,2.6vw,2rem)}.screen-panel__heading p:not(.eyebrow){color:var(--muted-ink);font-size:.94rem}.eyebrow{color:var(--brand);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:900}.status-pill{color:var(--brand-dark);background:#d8eee5;border-radius:999px;flex:none;padding:7px 11px;font-size:.78rem;font-weight:800}.status-pill--needs-work{color:#6f241a;background:#f8d7cf}.builder-layout,.code-layout{grid-template-columns:minmax(220px,280px) minmax(0,1fr);min-height:clamp(440px,100vh - 290px,690px);display:grid}.parts-palette,.block-library{border-right:1px solid var(--line);background:#faf0e2;padding:18px}.panel-title-row{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:16px;display:flex}.panel-title-row h3,.panel-title-row span{margin:0}.panel-title-row h3{font-size:1rem}.panel-title-row span{color:var(--muted-ink);font-size:.7rem}.parts-palette__list{gap:9px;display:grid}.part-card{background:#fffaf2;border:1px solid #e4cfae;border-radius:12px;align-items:center;gap:11px;min-height:54px;padding:8px 10px;font-size:.88rem;font-weight:750;display:flex}.part-card--button{width:100%;color:var(--ink);cursor:grab;text-align:left}.part-card--button:hover{background:#fff3df;border-color:#b67a3e}.part-card--button:active{cursor:grabbing}.part-card[data-part-kind=wire] .part-card__icon{background:#176f9b}.part-card__icon{color:#fff;background:var(--brand);border-radius:10px;flex:0 0 38px;place-items:center;width:38px;height:38px;font-size:.7rem;font-weight:900;display:grid}.part-card[data-part-kind=wheel] .part-card__icon{background:#2c3433;border-radius:50%}.part-card[data-part-kind=motor] .part-card__icon{color:#1f2625;background:#a8b0ae}.part-card[data-part-kind=caster] .part-card__icon{color:#1f2625;background:#c7cfcd;border-radius:50% 50% 12px 12px}.part-card[data-part-kind=distance-sensor] .part-card__icon{color:#fff;background:#176f9b}.part-card[data-part-kind=battery] .part-card__icon{color:#271c05;background:#f2c94e}.part-card[data-part-kind=microcontroller] .part-card__icon{background:#4e4280}.part-card[data-part-kind=can] .part-card__icon{background:#f24e4e;border-radius:50%}.part-card[data-part-kind=wall] .part-card__icon{background:#3a4241;border-radius:6px}.part-card[data-part-kind=balloon] .part-card__icon{background:#ef4f86;border-radius:50%}.part-card[data-part-kind=ball] .part-card__icon{background:#fff;border-radius:50%;box-shadow:inset 0 0 0 2px #1f2426}.part-card[data-part-kind=goal] .part-card__icon{color:#3a4241;background:#eef1f0;border:3px solid #2f3b45;border-left:3px dashed #2f9d62;border-radius:4px}.part-card[data-part-kind=spawn] .part-card__icon{color:#176f9b;background:#dfeff7;border-radius:50%;box-shadow:inset 0 0 0 2px #176f9b}.part-card[data-part-kind=race] .part-card__icon{color:#fff;text-shadow:0 0 3px #1f2426;background:repeating-conic-gradient(#1f2426 0 25%, #fff 0 50%) 0 0 / 8px 8px;border-radius:4px}.part-card[data-part-kind=ice] .part-card__icon{color:#2d6a85;background:#d3ecf7;border-radius:6px;box-shadow:inset 0 0 0 2px #8cc4dc}.part-card[data-part-kind=gravel] .part-card__icon{background:radial-gradient(circle at 30% 40%,#6f6555 0 2px,#0000 2.5px) 0 0/8px 8px,#9c907d;border-radius:6px}.part-card[data-part-kind=gap] .part-card__icon{background:radial-gradient(#120e0b 35%,#4a3c30 100%);border-radius:6px}.parts-palette__note{color:var(--muted-ink);margin:14px 0 0;font-size:.72rem;line-height:1.4}.design-workspace,.code-workspace{background-color:#fbfaf2;background-image:radial-gradient(#d9d8ce 1px,#0000 1px);background-size:22px 22px;flex-direction:column;min-width:0;display:flex;position:relative}.workspace-toolbar{border-bottom:1px solid var(--line);background:#fffdfaed;align-items:center;gap:7px;min-height:48px;padding:8px 12px;display:flex}.workspace-toolbar button,.simulation-controls button{min-height:32px;color:var(--ink);background:#fff;border:1px solid #b7bcb9;border-radius:8px;padding:6px 10px;font-size:.78rem;font-weight:800}.workspace-toolbar button:not(:disabled){cursor:pointer}.workspace-toolbar button:not(:disabled):hover{border-color:var(--brand);background:#eef7f3}.simulation-controls button:not(:disabled){border-color:var(--brand);color:#fff;background:var(--brand);cursor:pointer}.simulation-controls button:not(:disabled):hover{background:var(--brand-dark)}.toolbar-spacer{flex:1}.workspace-pan-hint{color:var(--muted-ink);font-size:.72rem;font-weight:700}.design-workspace__canvas{flex:1;place-items:center;min-height:350px;padding:26px;display:grid}.robot-diagram{filter:drop-shadow(0 14px 14px #1e322c24);width:min(440px,75%);max-height:430px;display:block}.robot-diagram__chassis{fill:#ddd0a2;stroke:#574f36;stroke-width:1.2px}.robot-diagram__wheel{fill:#303736}.robot-diagram__wheel-tread{stroke:#f4f1e6;stroke-width:1.4px;stroke-linecap:round;stroke-dasharray:2.2 2.2}.robot-diagram__wheel-tread--forward{animation:.7s linear infinite wheel-tread-scroll-forward}.robot-diagram__wheel-tread--backward{animation:.7s linear infinite reverse wheel-tread-scroll-forward}.robot-diagram__wheel-tread--stopped{opacity:.5}.robot-diagram__wheel-tread--skidding{stroke:#e0a23a;stroke-dasharray:1 3;animation:.12s steps(2,jump-none) infinite wheel-tread-skid}@keyframes wheel-tread-scroll-forward{0%{stroke-dashoffset:0}to{stroke-dashoffset:-8.8px}}@keyframes wheel-tread-skid{0%,to{transform:translate(-.7px)}50%{transform:translate(.7px)}}@media (prefers-reduced-motion:reduce){.robot-diagram__wheel-tread--forward,.robot-diagram__wheel-tread--backward,.robot-diagram__wheel-tread--skidding{animation:none}}.robot-diagram__motor{fill:#a7afad;stroke:#49504f;stroke-width:.9px}.robot-diagram__microcontroller{fill:#4e4280}.robot-diagram__distance-sensor{fill:#176f9b;stroke:#0d5277;stroke-width:.9px}.robot-diagram__port{fill:var(--accent)}.robot-diagram__wire,.robot-diagram__power-wire{fill:none;stroke-width:1.2px;stroke-linecap:round}.robot-diagram__wire--motor{stroke:#2e9d83}.robot-diagram__battery{fill:#f2c94e;stroke:#554718;stroke-width:.9px}.robot-diagram__wire--power{stroke:#303736}.robot-diagram__wire--sensor{stroke:#176f9b}.robot-diagram__caster-arm{stroke:#a7afad;stroke-width:2.5px}.robot-diagram__caster{fill:#3d4544;stroke:#bac2bf;stroke-width:1.4px}.robot-diagram__label{fill:#52605d;font-size:17px;font-weight:800}.robot-diagram__part-label{fill:#fff;pointer-events:none;font-size:3px;font-weight:900}.robot-diagram__part--battery .robot-diagram__part-label{fill:#2d250d}.robot-diagram--compact{filter:drop-shadow(0 7px 7px #1e322c29);width:100%;max-height:none}.prototype-message{color:#5a625f;text-align:center;background:#eeebd8eb;margin:0;padding:8px 14px;font-size:.75rem}.block-category+.block-category{margin-top:18px}.block-category h4{color:#4b5653;align-items:center;gap:7px;margin:0 0 8px;font-size:.78rem;display:flex}.category-dot{border-radius:50%;width:10px;height:10px}.category-dot--event{background:var(--block-event)}.category-dot--motor{background:var(--block-motor)}.category-dot--control{background:var(--block-control)}.code-block{border-radius:8px;width:min(520px,100%);padding:13px 16px;font-size:clamp(.78rem,1.4vw,.92rem);font-weight:750;line-height:1.35;box-shadow:inset 0 -3px #00000026}.code-block strong{color:#1b2422;background:#ffffffb8;border:1px solid #0000003b;border-radius:5px;padding:1px 6px;display:inline-block}.code-block--small{padding:10px 11px;font-size:.72rem}.code-block--small+.code-block--small{margin-top:7px}.code-block--event{color:#fff;background:var(--block-event)}.code-block--hat{border-radius:22px 10px 7px 7px}.code-block--motor{color:#fff;background:var(--block-motor)}.code-block--control{color:#fff;background:var(--block-control)}.program-stack{flex-direction:column;align-items:flex-start;width:min(540px,100% - 44px);margin:clamp(32px,8vh,72px) auto auto;display:flex}.program-stack .code-block{margin-top:-2px}.code-editor-layout{grid-template-columns:minmax(0,1fr) minmax(240px,300px);min-height:clamp(520px,100vh - 286px,720px);display:grid}.code-editor-layout .code-workspace{border-right:1px solid var(--line);min-height:520px}.blockly-editor{flex:1;min-width:0;min-height:470px;position:relative}.blockly-editor .blocklyText{fill:#fff;font-weight:700}.blockly-editor .blocklyToolboxDiv{border-right:1px solid #e4cfae}.blockly-editor .blocklyTreeRow{border-radius:9px;height:auto;min-height:40px;margin:4px 7px;padding:9px 10px}.blockly-editor .blocklyTreeLabel{color:var(--ink);font-size:.8rem;font-weight:800}.blockly-editor .blocklyFlyoutLabelText{fill:var(--ink)}.program-feedback{background:#fffaf2;padding:18px}.program-feedback__heading{border-bottom:1px solid #e4d7c1;justify-content:space-between;align-items:baseline;gap:10px;padding-bottom:12px;display:flex}.program-feedback__heading strong{font-size:.95rem}.program-feedback__heading span{color:var(--muted-ink);font-size:.67rem}.hardware-feedback{color:#70281d;background:#fff2ee;border:1px solid #d99485;border-radius:10px;margin-top:14px;padding:11px}.hardware-feedback strong,.hardware-feedback p{margin:0}.hardware-feedback p{margin-top:5px;font-size:.75rem;line-height:1.4}.builder-layout--interactive{grid-template-columns:minmax(185px,215px) minmax(480px,1fr) minmax(245px,285px);min-height:clamp(560px,100vh - 270px,760px)}.builder-layout--interactive .parts-palette{padding:14px}.builder-layout--interactive .part-card{min-height:49px}.design-workspace__canvas--interactive{touch-action:none;-webkit-user-select:none;user-select:none;min-height:500px;padding:0;display:block;position:relative;overflow:hidden}.robot-snap-target{z-index:1;color:#726b60;text-align:center;background:#fffdfac2;border:2px dashed #b6aea0;border-radius:50%;place-items:center;width:30px;height:30px;font-size:.48rem;font-weight:800;line-height:1.05;transition:scale .12s,border-color .12s,background .12s;display:grid;position:absolute;translate:-50% -50%}.robot-snap-target[data-slot-type=external]{background:#fff6e2d1;border-color:#826f54}.robot-snap-target[data-slot-type=internal]{background:#e8f6f2d1;border-color:#718b86}.robot-snap-target[data-slot-type=dedicated]{background:#f0edfae0;border-style:solid;border-color:#675b8d}.robot-snap-target[data-occupied]{opacity:0}.robot-snap-target[data-compatible]:not([data-occupied]){z-index:7;color:#0d5277;background:#dff3fc;border-color:#176f9b;scale:1.25;box-shadow:0 0 0 5px #176f9b26}.robot-wires{z-index:6;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.robot-wire{fill:none;stroke-width:5px;stroke-linecap:round;vector-effect:non-scaling-stroke;pointer-events:stroke;cursor:pointer}.robot-wire--motor{stroke:#16876c}.robot-wire--power{stroke:#303736}.robot-wire[data-selected]{stroke:#176f9b;stroke-width:9px}.robot-part{z-index:4;color:#1e2927;cursor:grab;background:#a7afad;border:2px solid #49504f;border-radius:9px;outline:0;place-items:center;display:grid;position:absolute;box-shadow:0 6px 12px #1b302a29}.robot-part:active{cursor:grabbing}.robot-part:focus-visible,.robot-part[data-selected]{outline-offset:3px;outline:4px solid #176f9b;box-shadow:0 0 0 8px #176f9b21}.robot-part--chassis{z-index:3;background:#ddd0a2;border-color:#574f36;border-radius:24px;width:42%;height:50%}.robot-part--wheel{color:#fff;background:#303736;border-color:#151b1a;border-radius:14px;width:6%;min-width:34px;height:14%;min-height:66px}.robot-part--motor{width:7%;min-width:44px;height:10%;min-height:54px}.robot-part--distance-sensor{color:#fff;background:#176f9b;border-color:#0d5277;width:10%;min-width:58px;height:7%;min-height:42px}.robot-part--caster{aspect-ratio:1;color:#fff;background:#3d4544;border:5px solid #bac2bf;border-radius:50%;width:8%;min-width:45px}.robot-part--battery{background:#f2c94e;border-color:#554718;width:12%;min-width:70px;height:7%;min-height:42px}.robot-part--microcontroller{color:#fff;background:#4e4280;width:18%;min-width:104px;height:14%;min-height:72px}.robot-part--microcontroller .robot-part__label{display:none}.robot-part__symbol{pointer-events:none;font-size:.8rem;font-weight:950}.robot-part__label{width:max-content;max-width:110px;color:var(--ink);pointer-events:none;background:#fffdfae6;border-radius:5px;padding:2px 5px;font-size:.58rem;font-weight:800;position:absolute;top:calc(100% + 5px);left:50%;transform:translate(-50%)}.robot-port{z-index:8;cursor:crosshair;background:#16876c;border:3px solid #fff;border-radius:50%;width:16px;height:16px;padding:0;position:absolute;translate:-50% -50%;box-shadow:0 0 0 2px #0c5b49}.robot-port--sensor{background:#2d91bd;box-shadow:0 0 0 2px #0d5277}.robot-port--power{background:#303736;box-shadow:0 0 0 2px #111817}.robot-port[data-used]{border-color:#f2c94e}.robot-port[data-selected],.robot-port[data-compatible]{scale:1.45;box-shadow:0 0 0 5px #176f9b47}.robot-port[data-compatible]{background:#2fcba4}.robot-port-label{z-index:8;color:#303736;letter-spacing:.02em;pointer-events:none;white-space:nowrap;background:#ffffffd9;border-radius:3px;padding:0 2px;font-size:6px;font-weight:800;line-height:1.3;position:absolute}.robot-port-label--output{translate:-50% -140%}.robot-port-label--input{translate:-50% 25%}.robot-port-label--side{translate:6px -50%}.robot-inspector{background:#fffaf2;min-width:0;padding:14px}.inspector-section{background:#fff;border:1px solid #e4d7c1;border-radius:12px;padding:12px}.inspector-section+.inspector-section{margin-top:11px}.inspector-section h4,.inspector-section p{margin:0}.inspector-section h4{font-size:.88rem}.inspector-section p{color:var(--muted-ink);margin-top:5px;font-size:.72rem;line-height:1.4}.inspector-section__eyebrow{letter-spacing:.09em;text-transform:uppercase;font-weight:900;color:var(--brand)!important;font-size:.62rem!important}.inspector-section--empty{border-style:dashed}.inspector-actions{grid-template-columns:1fr 1fr;gap:6px;margin-top:11px;display:grid}.inspector-actions button,.inspector-wide-button,.wire-list button{min-height:32px;color:var(--ink);cursor:pointer;background:#fff;border:1px solid #b7bcb9;border-radius:8px;font-size:.68rem;font-weight:800}.inspector-actions button:hover,.inspector-wide-button:hover,.wire-list button:hover{border-color:var(--brand);background:#eef7f3}.danger-button{color:#7a291f!important;background:#fff4f1!important;border-color:#d9a095!important}.inspector-wide-button{width:100%;margin-top:10px}.drive-channel-status{color:#4b5653;background:#eef5f2;border-radius:8px;gap:4px;margin-top:11px;padding:8px;font-size:.68rem;font-weight:800;display:grid}.drive-channel-status strong{color:var(--brand-dark);font-size:.78rem}.drive-channel-status small{color:var(--muted-ink);font-size:.64rem;font-weight:650;line-height:1.35}.inspector-heading-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.inspector-heading-row span{color:var(--muted-ink);font-size:.65rem;font-weight:800}.wire-list,.robot-check ul{gap:6px;margin:9px 0 0;padding:0;list-style:none;display:grid}.wire-list li{grid-template-columns:minmax(0,1fr) 32px;gap:5px;display:grid}.wire-list li>button:first-child{text-align:left;text-overflow:ellipsis;white-space:nowrap;padding:5px 7px;overflow:hidden}.wire-list__delete{color:#7a291f!important;padding:0!important;font-size:1rem!important}.robot-check ul{gap:8px}.robot-check li{color:#4d5956;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:6px;font-size:.69rem;line-height:1.35;display:grid}.robot-check__success{font-weight:750;color:#315e4f!important}.program-feedback ul,.simulation-program-errors ul{gap:10px;margin:14px 0 0;padding:0;list-style:none;display:grid}.program-feedback li{color:#46524f;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;font-size:.78rem;line-height:1.4;display:grid}.diagnostic-badge{text-align:center;text-transform:uppercase;border-radius:999px;min-width:38px;padding:2px 5px;font-size:.63rem;font-weight:900}.diagnostic-badge--error{color:#70281d;background:#f5c9c0}.diagnostic-badge--warning{color:#5f4310;background:#f6dfa3}.program-feedback__success,.program-feedback__note{color:#315e4f;margin:14px 0 0;font-size:.8rem;font-weight:750;line-height:1.45}.program-feedback__note{color:var(--muted-ink);font-weight:650}.screen-panel__heading--test{align-items:flex-end}.simulation-controls{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.test-layout{background:#f4efcc;padding:clamp(14px,2vw,24px)}.simulation-status{color:#4f5c59;background:#fffdfa;border:1px solid #cbc7ae;border-radius:12px;grid-template-columns:minmax(100px,auto) minmax(180px,1fr) auto;align-items:center;gap:12px;margin-bottom:10px;padding:9px 12px;font-size:.74rem;display:grid}.simulation-debug{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-bottom:10px;display:grid}.motor-indicator,.path-trail-status{color:#4f5c59;background:#fffdfa;border:1px solid #cbc7ae;border-radius:11px;align-items:center;gap:9px;min-height:48px;padding:7px 10px;display:flex}.motor-indicator__wheel{color:#fff;background:#56615e;border-radius:9px;flex:0 0 31px;place-items:center;width:31px;height:31px;font-weight:950;display:grid}.motor-indicator[data-direction=forward] .motor-indicator__wheel{background:#14795b}.motor-indicator[data-direction=backward] .motor-indicator__wheel{background:#b3471b}.motor-indicator>span:nth-child(2),.path-trail-status>span:last-child{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.motor-indicator small,.path-trail-status small{color:var(--muted-ink);font-size:.62rem}.motor-indicator strong,.path-trail-status strong{color:var(--ink);font-size:.76rem}.motor-indicator output{min-width:26px;color:var(--ink);text-align:right;font-size:.78rem;font-weight:900}.path-trail-status__line{background:#176f9b;border-radius:999px;flex:0 0 38px;width:38px;height:4px;box-shadow:8px 7px 0 -1px #176f9b}.simulation-status>div{color:var(--ink);align-items:center;gap:7px;display:flex}.simulation-status__dot{background:#77817e;border-radius:50%;width:10px;height:10px}.simulation-status__dot--running{background:#16805f;box-shadow:0 0 0 4px #16805f24}.simulation-status__dot--paused{background:#c87722}.simulation-status__dot--complete{background:#65489a}.simulation-status__command{color:#2e3a37;text-overflow:ellipsis;white-space:nowrap;font-weight:750;overflow:hidden}.simulation-program-errors{color:#70281d;background:#fff2ee;border:1px solid #d99485;border-radius:12px;margin-bottom:10px;padding:12px 14px;font-size:.8rem}.simulation-program-errors ul{gap:4px;margin-top:6px;padding-left:18px;list-style:outside}.simulation-wheel-notice{color:#6b4c12;background:#fef8e9;border:1px solid #e0c27a;border-radius:12px;align-items:center;gap:8px;margin-bottom:10px;padding:10px 14px;font-size:.78rem;display:flex}.simulation-wheel-notice__icon{flex:none}.simulation-stage{cursor:grab;touch-action:none;background-color:#d8dad8;border:2px solid #dad6c8;border-radius:16px;justify-content:center;align-items:center;height:clamp(330px,100vh - 400px,560px);transition:border-color .18s,box-shadow .18s;display:flex;position:relative;overflow:hidden}.simulation-stage:active{cursor:grabbing}.simulation-field{z-index:0;outline-offset:-6px;background-color:#fefefe;background-image:linear-gradient(#2c4b4338 2px,#0000 2px),linear-gradient(90deg,#2c4b4338 2px,#0000 2px);background-size:10% 10%;outline:12px solid #1b201f;flex-shrink:0;position:relative}.zoom-control{z-index:1;background:#fffdfad9;border-radius:999px;flex-direction:column;align-items:center;gap:6px;padding:10px 7px;display:flex;position:absolute;top:50%;right:14px;transform:translateY(-50%);box-shadow:0 4px 10px #1e322c1f}.zoom-control__label{color:#52605d;-webkit-user-select:none;user-select:none;font-size:.85rem;font-weight:900;line-height:1}.zoom-control__slider{writing-mode:vertical-lr;accent-color:#176f9b;cursor:pointer;direction:rtl;width:18px;height:120px}.simulation-stage__hint{z-index:1;color:#52605d;pointer-events:none;background:#fffdfad1;border-radius:999px;margin:0;padding:3px 9px;font-size:.68rem;font-weight:700;position:absolute;bottom:10px;left:12px}.simulation-path-trail{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.simulation-path-trail polyline{fill:none;stroke:#176f9b;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round;opacity:.55;vector-effect:non-scaling-stroke}.can,.simulation-robot,.field-goal,.simulation-success{z-index:1}.simulation-stage[data-status=running]{border-color:#67a995;box-shadow:inset 0 0 0 2px #16805f1a}.simulation-stage[data-status=complete]{border-color:#6d55a3}.field-goal{color:#46605a;background:#e2f1eae6;border-radius:8px;padding:6px 9px;font-size:.75rem;font-weight:800;position:absolute;top:12px;right:12px}.can{background:#f24e4e;border:5px solid #be3d32;width:44px;height:44px;position:absolute;translate:-50% -50%;box-shadow:0 7px 9px #4a29222e}.can--standing{border-radius:50%}.can--knocked-over{border-radius:8px;width:66px;height:34px}.simulation-wall{background:#3a4241;border:2px solid #151b1a;border-radius:3px;position:absolute;translate:-50% -50%;box-shadow:0 5px 8px #141a1938}.simulation-robot{pointer-events:none;width:0;height:0;position:absolute}.simulation-field__canvas{width:100%;height:100%;position:absolute;inset:0}.simulation-success{color:#fff;text-align:center;background:#4e4280f0;border:3px solid #4e4280;border-radius:16px;min-width:min(320px,100% - 40px);padding:18px 24px;font-size:clamp(1.2rem,3vw,2rem);font-weight:900;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 14px 34px #29224847}.environment-settings{background:#fffaf2;border:1px solid #c8c5b1;border-radius:12px;align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;display:flex}.environment-settings small{color:var(--muted-ink);font-size:.74rem}.environment-canvas-frame{flex:1;justify-content:center;align-items:center;min-height:500px;padding:20px;display:flex;position:relative}.environment-canvas{aspect-ratio:1;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:12px;width:min(100%,640px);position:relative;overflow:hidden}.environment-robot-start{z-index:1;opacity:.55;pointer-events:none;position:absolute}.environment-object{z-index:2;cursor:grab;outline:0;place-items:center;display:grid;position:absolute;translate:-50% -50%}.environment-object:active{cursor:grabbing}.environment-object:focus-visible,.environment-object[data-selected]{outline-offset:2px;outline:3px solid #176f9b}.environment-object--can{width:calc(8% * var(--arena-scale,1));aspect-ratio:1;background:#f24e4e;border:4px solid #be3d32;border-radius:50%;box-shadow:0 6px 9px #4a29222e}.environment-object--balloon{width:calc(9% * var(--arena-scale,1));aspect-ratio:1;background:radial-gradient(circle at 32% 30%,#ffb3cd 0 12%,#ef4f86 50%,#b52a5c 100%);border:3px solid #b52a5c;border-radius:50%;box-shadow:0 8px 10px #b52a5c38}.environment-object--ball{width:calc(7.5% * var(--arena-scale,1));aspect-ratio:1;background:radial-gradient(circle,#1f2426 0 18%,#0000 19%),radial-gradient(circle at 50% 4%,#1f2426 0 12%,#0000 13%),radial-gradient(circle at 92% 38%,#1f2426 0 12%,#0000 13%),radial-gradient(circle at 76% 92%,#1f2426 0 12%,#0000 13%),radial-gradient(circle at 24% 92%,#1f2426 0 12%,#0000 13%),radial-gradient(circle at 8% 38%,#1f2426 0 12%,#0000 13%),#fff;border:2px solid #1f2426;border-radius:50%;box-shadow:0 6px 9px #1f242638}.environment-object--ball .environment-object__label{display:none}.environment-object--goal{z-index:1;background:repeating-linear-gradient(0deg,#58656359 0 1px,#0000 1px 7px),repeating-linear-gradient(90deg,#58656359 0 1px,#0000 1px 7px),#ffffffb3;border:4px solid #2f3b45}.environment-object--goal[data-facing=up]{border-top:4px dashed #2f9d62}.environment-object--goal[data-facing=right]{border-right:4px dashed #2f9d62}.environment-object--goal[data-facing=down]{border-bottom:4px dashed #2f9d62}.environment-object--goal[data-facing=left]{border-left:4px dashed #2f9d62}.environment-object--goal .environment-object__label{color:#3a4241;text-shadow:none}.environment-object--start-line{z-index:1;background:#2f9d62;border-radius:2px}.environment-object__label--sideways{writing-mode:vertical-rl}.environment-object--start-line .environment-object__label,.environment-object--finish-line .environment-object__label{white-space:nowrap}.environment-object--finish-line{z-index:1;background:repeating-conic-gradient(#1f2426 0 25%, #fff 0 50%) 0 0 / 8px 8px;border:1px solid #1f2426}.environment-object--finish-line .environment-object__label{color:#fff;background:#1f2426;border-radius:4px;padding:1px 3px}.goal-time-popover{z-index:5;background:#fff;border:1px solid #b7bcb9;border-radius:10px;padding:8px 10px;position:absolute;box-shadow:0 8px 22px #141a1933}.goal-time-field{white-space:nowrap;align-items:center;gap:6px;font-size:.8rem;font-weight:700;display:flex}.goal-time-field input{width:5em;font:inherit;border:1px solid #b7bcb9;border-radius:6px;padding:4px 6px}.environment-object--spawn{z-index:3;width:calc(5% * var(--arena-scale,1));aspect-ratio:1;background:#dfeff7d9;border:3px solid #176f9b;border-radius:50%}.environment-object--spawn .environment-object__label{color:#176f9b;text-shadow:none;font-size:.9rem}.environment-robot-start.does-not-fit{outline-offset:2px;outline:3px dashed #d0482f}.environment-spawn-error{color:#8f2412;background:#fff1ed;border:1px solid #d0482f;border-radius:8px;margin:8px 0 0;padding:8px 12px;font-size:.85rem;font-weight:700}.environment-object--wall{background:#3a4241;border:2px solid #151b1a;border-radius:3px;box-shadow:0 6px 9px #141a1938}.environment-object--gap{z-index:1;background:repeating-linear-gradient(135deg,#ffffff0d 0 6px,#0000 6px 12px),radial-gradient(#120e0b 35%,#3a2f26 100%);border:2px solid #2a211a;border-radius:4px;box-shadow:inset 0 0 12px #000000b3}.environment-object--ice{z-index:0;background:repeating-linear-gradient(135deg,#0000 0 14px,#ffffffd9 14px 17px,#0000 17px 30px),#d3ecf7;border:2px solid #8cc4dc;border-radius:4px}.environment-object--ice .environment-object__label{color:#2d6a85;text-shadow:none}.environment-object--gravel{z-index:0;background:radial-gradient(circle at 30% 40%,#8a7f6e 0 2px,#0000 2.5px) 0 0/9px 9px,radial-gradient(circle at 70% 75%,#9c907d 0 1.5px,#0000 2px) 0 0/7px 7px,#bcb1a0;border:2px solid #8f8472;border-radius:4px}.environment-area-preview{z-index:3;pointer-events:none;background:#2a211a59;border:2px dashed #2a211a;border-radius:4px;position:absolute}.environment-area-preview--ice{background:#a0d6ec80;border-color:#4f9cbf}.environment-area-preview--gravel{background:#a0948080;border-color:#7a6f5e}.environment-canvas.is-drawing-area{cursor:crosshair}.part-card.is-drawing{background:#efe6d6;border-color:#2a211a;box-shadow:inset 0 0 0 2px #2a211a}.environment-object__label{color:#fff;text-shadow:0 1px 2px #00000059;font-size:.55rem;font-weight:900}.environment-trash{z-index:3;background:#fffdfae0;border:2px dashed #b6aea0;border-radius:12px;place-items:center;width:52px;height:52px;font-size:1.3rem;transition:background-color .12s,border-color .12s,scale .12s;display:grid;position:absolute;bottom:30px;right:30px}.environment-trash[data-compatible]{border-color:#826f54}.environment-trash[data-active]{background:#b3471b29;border-color:#b3471b;scale:1.12}.prototype-message--test{border-top:1px solid var(--line)}@media (width<=760px){.app-header,.screen-panel__heading,.screen-panel__heading--test{flex-direction:column;align-items:flex-start}.app-header__status,.simulation-controls{justify-content:flex-start}.app-header__actions{justify-items:start;width:100%}.project-file-controls{justify-content:flex-start}.project-file-notice{text-align:left}.project-navigation{grid-template-columns:repeat(2,minmax(0,1fr))}.project-navigation__tab{border-radius:8px}.builder-layout,.code-layout,.builder-layout--interactive,.code-editor-layout{grid-template-columns:1fr}.code-editor-layout .code-workspace{border-right:0;border-bottom:1px solid var(--line)}.workspace-pan-hint{display:none}.parts-palette,.block-library{border-right:0;border-bottom:1px solid var(--line)}.parts-palette__list{grid-template-columns:repeat(2,minmax(0,1fr))}.simulation-status{grid-template-columns:1fr 1fr}.simulation-debug{grid-template-columns:1fr}.simulation-status__command{grid-area:2/1/auto/-1}}@media (width>=761px) and (width<=1120px){.builder-layout--interactive{grid-template-columns:190px minmax(0,1fr)}.robot-inspector{border-top:1px solid var(--line);grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.robot-inspector>.panel-title-row{grid-column:1/-1;margin-bottom:0}.inspector-section+.inspector-section{margin-top:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.builder{--magic:#7b5cd6;--magic-soft:#ece4ff;grid-template-columns:150px minmax(0,1fr) 250px;gap:12px;height:clamp(440px,100vh - 290px,690px);padding:12px;display:grid}.builder button,.builder__heading-actions button{cursor:pointer;background:var(--surface);color:var(--ink);touch-action:none;border:1px solid #b7bcb9;border-radius:8px;padding:7px 10px}.builder button:hover:not(:disabled),.builder__heading-actions button:hover:not(:disabled){border-color:var(--muted-ink)}.builder button.is-on{background:var(--accent);border-color:#c9a22e;font-weight:700}.builder__heading-actions{align-items:center;gap:8px;display:flex}.builder__heading-actions .builder__primary{background:var(--accent);border-color:#c9a22e;font-weight:700}.builder__tools,.builder__panel{flex-direction:column;gap:6px;min-height:0;display:flex;overflow-y:auto}.builder__tool{text-align:left}.builder__tool-row{gap:6px;display:flex}.builder__tool-row:first-of-type{margin-top:8px}.builder__tool-row button{flex:1;padding-inline:4px}.builder__box-switch{border-bottom:1px solid var(--line);flex-direction:column;gap:4px;margin-bottom:8px;padding-bottom:10px;display:flex}.builder__box-switch button.is-magic{background:var(--magic-soft);border-color:var(--magic);color:var(--magic);box-shadow:0 0 10px #a98bff99}.builder__stage{min-width:0;min-height:0;position:relative}.builder__canvas{border:1px solid var(--line);background:var(--surface);touch-action:none;cursor:crosshair;border-radius:10px;width:100%;height:100%;display:block}.builder__canvas--select{cursor:grab}.builder__canvas--run{cursor:default}.builder__message{background:var(--ink);color:#fff;border-radius:8px;margin:0;padding:8px 14px;font-size:.9rem;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.builder__heading-actions .builder__balance-toggle.is-on{color:#17603a;background:#dff2e6;border-color:#2f9d62;font-weight:700}.builder__crash{color:#8f2412;white-space:nowrap;background:#fff1ed;border:2px solid #d0482f;border-radius:10px;margin:0;padding:10px 18px;font-size:1.1rem;font-weight:800;position:absolute;top:16px;left:50%;transform:translate(-50%);box-shadow:0 6px 18px #d0482f38}.builder__balance-target{color:#1f9d55}.builder__balance-verdict{color:#17603a;margin-bottom:0;font-weight:700}.builder__balance-verdict.is-tipping{color:#b2361f}.builder__balance-verdict.is-floating{color:#6346c4}.builder__panel section{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:12px}.builder__panel h3{margin:0 0 6px;font-size:1rem}.builder__panel p{margin:0 0 8px;font-size:.9rem;line-height:1.35}.builder__inspector{flex-direction:column;gap:6px;display:flex}.builder__name{color:var(--muted-ink);flex-direction:column;gap:3px;font-size:.8rem;font-weight:600;display:flex}.builder__name input{font:inherit;color:var(--ink);border:1px solid #b7bcb9;border-radius:8px;padding:6px 8px;font-size:.95rem;font-weight:400}.builder__checks ul{margin:0;padding-left:18px;font-size:.85rem;line-height:1.35}.builder__from.is-magic{color:var(--magic);font-weight:600}.builder__small,.builder__panel .builder__small{color:var(--muted-ink);font-size:.8rem}.builder__danger{color:#b3471b}.builder__note{color:var(--muted-ink);font-size:.9rem}.builder__motors,.builder__sensors{flex-direction:column;gap:6px;margin:0 0 8px;padding:0;list-style:none;display:flex}.builder__motors li,.builder__sensors li{align-items:center;gap:6px;display:flex}.builder__motor-name{flex:1;font-weight:700}.builder__sensors output{font-variant-numeric:tabular-nums;color:#176f9b;font-weight:700}.builder__motor-name em{color:#b3471b;font-size:.8rem;font-weight:600}.builder__motors kbd{border:1px solid var(--line);background:var(--surface-soft);border-radius:4px;padding:0 4px;font:.75rem ui-monospace,monospace}.builder__events{margin:0;padding-left:18px;font-size:.85rem}.robot-preview{width:100%;height:100%;display:block}.code-workspace__load-error{color:#6f241a;background:#f8d7cf;margin:0;padding:8px 12px;font-size:.9rem}.simulation-success.simulation-crash{white-space:nowrap;color:#8f2412;background:#fff1ed;border-width:2px;border-color:#d0482f;min-width:0;padding:8px 16px;font-size:1rem;top:16px;transform:translate(-50%);box-shadow:0 8px 22px #d0482f38}.simulation-controls .simulation-controls__balance:not(:disabled){color:var(--brand);background:#fff}.simulation-controls .simulation-controls__balance:not(:disabled):hover{background:#f0f9f3}.simulation-controls .simulation-controls__balance[aria-pressed=true]:not(:disabled){color:#17603a;background:#dff2e6;border-color:#2f9d62}.simulation-balance-legend{z-index:1;color:#17603a;background:#f0f9f3f0;border:1px solid #9fd0b4;border-radius:10px;max-width:min(360px,100% - 90px);padding:8px 12px;font-size:.78rem;position:absolute;bottom:12px;left:12px}.simulation-balance-legend strong{color:#1f9d55}.race-timer{z-index:1;color:var(--ink);font-variant-numeric:tabular-nums;background:#fffffff0;border:1px solid #b7bcb9;border-radius:10px;padding:6px 12px;font-size:1.1rem;font-weight:800;display:grid;position:absolute;top:12px;left:12px}.race-timer small{font-size:.72rem;font-weight:600}.race-timer.is-met{color:#17603a;background:#eef9f2;border-color:#2f9d62}.race-timer.is-missed{color:#8f2412;background:#fff1ed;border-color:#d0482f}.simulation-stage.simulation-stage--fill{height:100%}.test-status--running{color:#17603a;background:#e2f1ea;border-color:#67a995}.test-status--paused{background:#fff4d6}.test-motor{color:var(--muted-ink);align-items:center;gap:8px;font-size:.85rem;font-weight:700;display:flex}.test-motor[data-direction=forward]{color:#17603a}.test-motor[data-direction=backward]{color:#b3471b}.test-motor output{text-align:right;font-variant-numeric:tabular-nums;min-width:2.5ch}.test-goals h3{font-size:.95rem}.test-goals .test-goals__missed{color:#b2361f}.test-problems{background:#fff1ed!important;border-color:#e3a08f!important}.test-problems h3{color:#8f2412;font-size:.95rem}.builder.builder--code{grid-template-columns:330px minmax(0,1fr) 240px}.test-run-buttons button{font-weight:700}.program-viewer{border:1px solid var(--line);background-color:#fbfaf2;background-image:radial-gradient(#d9d8ce 1px,#0000 1px);background-size:14px 14px;border-radius:10px;flex-direction:column;flex:1;min-height:240px;display:flex;overflow:hidden}.program-viewer__blocks{flex:1;min-height:0;position:relative}.program-viewer__blocks .blocklyScrollbarHorizontal,.program-viewer__blocks .blocklyScrollbarVertical{display:none}.program-viewer__blocks .blocklyMainBackground{stroke:none;fill:#0000!important}.program-viewer__blocks .blocklyHighlighted>.blocklyPath{filter:none;stroke:#ffc61a;stroke-width:5px}.program-viewer__loading{color:var(--muted-ink);margin:12px;font-size:.85rem}.program-viewer__step{border-top:1px solid var(--line);background:var(--surface);color:var(--muted-ink);margin:0;padding:6px 10px;font-size:.8rem;font-weight:700}.simulation-success.simulation-failed{color:#8f2412;background:#fff1ed;border-color:#d0482f;flex-direction:column;align-items:center;gap:4px;display:flex}.simulation-failed small{opacity:.85;font-size:.8rem;font-weight:700}.arena-size-field input{width:4em}.environment-line-handle{z-index:4;touch-action:none;background:#fff;border:3px solid #176f9b;border-radius:50%;width:16px;height:16px;position:absolute;translate:-50% -50%;box-shadow:0 2px 6px #14283c4d}.environment-line-handle--vertical{cursor:ns-resize}.environment-line-handle--horizontal{cursor:ew-resize}.inspector-hint{color:var(--muted-ink);margin:4px 0 0;font-size:.75rem}.test-color{align-items:center;gap:6px;display:inline-flex}.test-color__swatch{border:1px solid #1d1712;border-radius:50%;width:14px;height:14px;display:inline-block}.test-tool-state{color:var(--muted-ink);font-size:.75rem;font-weight:600;display:block}.builder__choice{flex-wrap:wrap;gap:4px;display:flex}.builder__choice button{flex:1;padding-inline:6px}.builder__ink button{text-transform:capitalize;border-left-width:6px}.builder__ink .builder__ink-black{border-left-color:#24292b}.builder__ink .builder__ink-red{border-left-color:#d0312d}.builder__ink .builder__ink-green{border-left-color:#1f8a4c}.builder__ink .builder__ink-purple{border-left-color:#7b3fb5}.builder__toggle{cursor:pointer;align-items:flex-start;gap:8px;font-weight:700;display:flex}.builder__toggle input{margin-top:3px}.builder__toggle small{color:var(--muted-ink);font-size:.78rem;font-weight:500;line-height:1.3;display:block}.builder__sensors .test-reset{padding:2px 8px;line-height:1.2}.blocklyDialog{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:14px;padding:18px 20px;font-family:inherit;box-shadow:0 14px 34px #1e322c38}.blocklyDialog::backdrop{background:#141e1c40}.blocklyDialogPrompt{margin-bottom:8px;font-weight:800;display:block}.blocklyDialogInput{box-sizing:border-box;width:100%;font:inherit;border:1px solid #b7bcb9;border-radius:8px;padding:7px 9px}.blocklyDialogButtonRow{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.blocklyDialogButtonRow button{background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;border:1px solid #b7bcb9;border-radius:8px;padding:7px 14px;font-weight:700}.blocklyDialogButtonRow .blocklyDialogConfirmButton{background:var(--accent);border-color:#c9a22e}.environment-object--maze{z-index:1;background:#4b5c580f;border:2px dashed #4b5c58;border-radius:4px}.environment-object--maze.is-too-tight{background:#d0482f1a;border-color:#d0482f}.environment-maze__preview{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.environment-maze__preview rect{fill:#3a424173}.environment-maze__label{color:#3a4241;text-shadow:none;position:absolute;top:4px;left:6px}.environment-object.is-left-out{opacity:.35}.environment-notice{z-index:20;background:#141e1c40;place-items:center;display:grid;position:absolute;inset:0}.environment-notice__box{background:var(--surface);border-radius:14px;max-width:360px;padding:18px 20px;box-shadow:0 14px 34px #1e322c38}.environment-notice__box h4{margin:0 0 8px}.environment-notice__box button{background:var(--accent);font:inherit;cursor:pointer;border:1px solid #c9a22e;border-radius:8px;padding:7px 16px;font-weight:700}.inspector-maze{flex-direction:column;gap:8px;margin:8px 0;display:flex}.inspector-hint.is-warning{color:#b2361f;font-weight:700}.part-card--button:disabled{opacity:.45;cursor:not-allowed}.test-maze{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex-direction:column;gap:6px;margin-top:6px;padding:10px;display:flex}.test-maze h3{margin:0;font-size:1rem}.test-maze__state{color:var(--muted-ink);margin:0;font-size:.8rem;line-height:1.3}.test-maze__state.is-fresh{color:#17603a;font-weight:700}.test-maze__replay{gap:4px;display:flex}.test-maze__replay input{width:100%;min-width:0;font:inherit;border:1px solid #b7bcb9;border-radius:8px;padding:5px 7px}.simulation-success.simulation-practice{color:#5c4708;background:#fff6d6;border-color:#c9a22e;flex-direction:column;align-items:center;gap:4px;display:flex}.simulation-practice small{max-width:340px;font-size:.8rem;font-weight:700}.environment-object--drop-zone{background:#176f9b1f;border:2px dashed #176f9b;border-radius:6px}.environment-drop-zone__label{color:#0f4e6f;text-shadow:none}.inspector-zone{margin:8px 0}.robot-inspector .builder__choice button{background:var(--surface);font:inherit;cursor:pointer;border:1px solid #b7bcb9;border-radius:8px;padding:6px 8px;font-weight:600}.robot-inspector .builder__choice button.is-on{background:var(--accent);border-color:#c9a22e;font-weight:800}.site{flex-direction:column;min-height:100vh;display:flex}.site-header{background:var(--brand-dark);align-items:center;min-height:64px;padding:12px clamp(18px,4vw,56px);display:flex}.site-header__brand{color:#bde1d5;letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.85rem;font-weight:800;text-decoration:none}a.site-header__brand:hover{color:#fff}.site-footer{color:var(--muted-ink);margin-top:auto;padding:18px clamp(18px,4vw,56px);font-size:.8rem}.landing{width:min(1120px,100%);margin:0 auto;padding:clamp(28px,5vw,56px) clamp(16px,4vw,40px) 24px}.landing__intro{max-width:720px;margin-bottom:clamp(24px,4vw,40px)}.landing__intro h1{color:var(--brand-dark);margin:0 0 10px;font-size:clamp(2.2rem,5vw,3.4rem);line-height:1.05}.landing__intro p{color:var(--muted-ink);margin:0;font-size:clamp(1rem,1.6vw,1.15rem);line-height:1.5}.landing__cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,24px);display:grid}.landing-card{--tone:var(--brand);--tone-soft:#e2f1ea;border:1px solid var(--line);min-height:260px;color:var(--ink);background:var(--surface);box-shadow:var(--shadow);border-radius:18px;flex-direction:column;gap:10px;padding:26px 24px 22px;text-decoration:none;transition:transform .16s,box-shadow .16s,border-color .16s;display:flex;position:relative;overflow:hidden}.landing-card:before{background:var(--tone);content:"";height:8px;position:absolute;inset:0 0 auto}.landing-card:hover{border-color:var(--tone);transform:translateY(-3px);box-shadow:0 18px 40px #1e393229}.landing-card:focus-visible{outline:3px solid var(--tone);outline-offset:3px}.landing-card--demo{--tone:#11644d;--tone-soft:#e2f1ea}.landing-card--tutorial{--tone:#176f9b;--tone-soft:#e1eff7}.landing-card--challenges{--tone:#d0802a;--tone-soft:#fbecd9}.landing-card__icon{background:var(--tone-soft);border-radius:16px;place-items:center;width:56px;height:56px;font-size:1.8rem;display:grid}.landing-card__title{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;font-size:1.45rem;font-weight:850;display:flex}.landing-card__soon{color:var(--tone);background:var(--tone-soft);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:3px 8px;font-size:.7rem;font-weight:800}.landing-card__description{color:var(--muted-ink);font-size:.95rem;line-height:1.45}.landing-card__action{color:var(--tone);margin-top:auto;padding-top:8px;font-weight:800}.landing__about{border:1px solid var(--line);background:var(--surface-soft);border-radius:16px;margin-top:clamp(32px,5vw,56px);padding:22px 24px}.landing__about h2{color:var(--brand-dark);margin:0 0 10px;font-size:1.15rem}.landing__about ul{color:var(--muted-ink);grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;font-size:.92rem;line-height:1.45;list-style:none;display:grid}.landing__about strong{color:var(--ink);display:block}@media (width<=860px){.landing__cards,.landing__about ul{grid-template-columns:1fr}.landing-card{min-height:0}}.simple-page{width:min(720px,100%);color:var(--muted-ink);flex-direction:column;align-items:flex-start;margin:0 auto;padding:clamp(40px,8vw,80px) clamp(16px,4vw,40px);font-size:1.05rem;line-height:1.5;display:flex}.simple-page__icon{font-size:2.6rem}.simple-page h1{color:var(--brand-dark);margin:8px 0 12px;font-size:clamp(2rem,4vw,2.8rem)}.simple-page p{margin:0 0 10px}.simple-page a{color:var(--brand);font-weight:700}.simple-page .simple-page__back{margin-top:18px;text-decoration:none}.app-header__home{text-decoration:none;display:inline-block}.app-header__home:hover{color:#fff}.site-brand{color:#bde1d5;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.site-brand__icon{width:36px;height:36px;display:block}.site-brand__name{letter-spacing:.14em;text-transform:uppercase;font-size:.9rem;font-weight:800}.site-brand:hover .site-brand__name{color:#fff}.site-brand:focus-visible{outline:3px solid var(--accent);outline-offset:4px;border-radius:6px}.app-header__home{align-items:center;gap:6px}.app-header__logo{vertical-align:-4px;width:18px;height:18px}.landing__logo{width:auto;height:clamp(84px,11vw,120px);margin-bottom:18px;display:block}
