:root{--bg:#071319;--bg-deep:#040d12;--panel:#0c1d24;--panel-2:#10272f;--ink:#f3f1e8;--ink-dim:#93a8aa;--ink-faint:#5f7579;--line:#bedbd821;--line-strong:#bedbd83d;--accent:#efb858;--accent-strong:#ffd16f;--accent-soft:#efb85821;--accent-line:#efb8586b;--accent-shadow:#b3702452;--good:#59c59b;--good-soft:#59c59b24;--danger:#f07167;--danger-soft:#f0716721;--stress-0:#59c59b;--stress-1:#efb858;--stress-2:#f07167;--m-deck:#e4e8e1;--m-wood:#c98b52;--m-cable:#9eb2b6;--m-steel:#6fb8c4;--display:"Bricolage Grotesque", sans-serif;--serif:"Instrument Serif", serif;--game:"Fredoka", sans-serif;--mono:"Martian Mono", monospace}*{box-sizing:border-box}html{background:var(--bg-deep);scroll-behavior:smooth;min-height:100%}body,#root{min-height:100%;margin:0}body{color:var(--ink);font-family:var(--game);-webkit-font-smoothing:antialiased;overscroll-behavior-x:none;background:radial-gradient(70rem 36rem at 78% -12%, #2a646938, transparent 65%), radial-gradient(42rem 30rem at -8% 32%, #efb8580e, transparent 68%), var(--bg)}body:before{content:"";pointer-events:none;z-index:50;opacity:.032;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.75'/%3E%3C/svg%3E");position:fixed;inset:0}::selection{background:var(--accent);color:var(--bg-deep)}button,a{font-family:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--accent-strong);outline-offset:3px}button:disabled{cursor:not-allowed}.shell{width:min(100%,1240px);min-height:100dvh;margin:0 auto;padding-inline:28px}.topbar{justify-content:space-between;align-items:center;height:72px;display:flex}.wordmark{font:700 15px/1 var(--mono);letter-spacing:.035em;color:var(--ink)}.wordmark span,.game-brand b{color:var(--accent)}.linkbtn{color:var(--ink-dim);font:500 11px/1 var(--mono);letter-spacing:.08em;background:0 0;border:0;padding:8px 0;text-decoration:none;transition:color .2s}.linkbtn:hover{color:var(--ink)}.footer{color:var(--ink-faint);font:500 10px/1.5 var(--mono);letter-spacing:.04em;justify-content:space-between;gap:20px;padding:32px 0 38px;display:flex}.menu{padding:28px 0 0}.menu-hero{grid-template-columns:minmax(0,.88fr) minmax(460px,1.12fr);align-items:center;gap:clamp(52px,7vw,108px);min-height:620px;padding:26px 0 88px;display:grid}.hero-copy{z-index:2;position:relative}.kicker,.section-index,.mission-index,.result-kicker{color:var(--accent);font:700 10px/1.2 var(--mono);letter-spacing:.18em;text-transform:uppercase}.kicker{align-items:center;gap:9px;margin-bottom:23px;display:flex}.kicker span{font-size:18px;transform:translateY(-1px)}.title{max-width:9ch;font:720 clamp(50px, 5.9vw, 78px)/.88 var(--display);letter-spacing:-.065em;text-wrap:balance;margin:0}.title em{color:var(--accent-strong);font-family:var(--serif);font-weight:400}.lede{max-width:46ch;color:var(--ink-dim);text-wrap:pretty;margin:26px 0 29px;font-size:16px;line-height:1.65}.hero-actions{align-items:center;gap:22px;display:flex}.btn{border:1px solid var(--line);background:var(--panel);min-height:44px;color:var(--ink);border-radius:9px;padding:11px 18px;font-size:14px;font-weight:600;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s}.btn:hover:not(:disabled){border-color:var(--line-strong);background:var(--panel-2);transform:translateY(-2px)}.btn:active:not(:disabled){transform:translateY(0)scale(.985)}.btn-primary{border-color:var(--accent);background:var(--accent);color:#152025;box-shadow:0 10px 26px -16px var(--accent-shadow)}.btn-primary:hover:not(:disabled){border-color:var(--accent-strong);background:var(--accent-strong);box-shadow:0 13px 32px -15px var(--accent-shadow)}.btn-primary:disabled{border-color:var(--line);background:var(--panel);color:var(--ink-faint);box-shadow:none}.btn-ghost{background:0 0}.btn-large{min-height:57px;padding:10px 18px}.hero-actions .btn-large{flex-direction:column;justify-content:center;align-items:flex-start;min-width:226px;display:flex}.hero-actions .btn-large span{opacity:.72;font-size:10px;font-weight:600}.hero-actions .btn-large b{font-size:14px}.text-action{border:0;border-bottom:1px solid var(--line-strong);color:var(--ink-dim);background:0 0;padding:7px 0;font-size:13px;font-weight:500;transition:color .2s,border-color .2s}.text-action:hover{border-color:var(--accent);color:var(--ink)}.menu-stats{gap:38px;margin:39px 0 0;display:flex}.menu-stats div{gap:2px;display:grid}.menu-stats dt{font:700 25px/1 var(--mono);letter-spacing:-.08em}.menu-stats dt span{color:var(--ink-faint);letter-spacing:-.04em;font-size:12px}.menu-stats dd{color:var(--ink-dim);margin:0;font-size:11px}.hero-art{position:relative;transform:rotate(1.2deg)}.hero-art:before{content:"";z-index:-1;border:1px solid var(--accent-line);border-radius:34px;position:absolute;inset:9% -6% -8% 7%;transform:rotate(-4deg)}.hero-bridge{filter:drop-shadow(0 36px 55px #00000057);width:100%;display:block}.hero-art-note{color:var(--ink-faint);font:500 9px/1 var(--mono);letter-spacing:.05em;align-items:center;gap:7px;margin:15px 0 0 22px;display:flex}.hero-art-note i{background:var(--good);width:6px;height:6px;box-shadow:0 0 0 4px var(--good-soft);border-radius:50%}.campaign{border-top:1px solid var(--line);padding:93px 0 34px}.section-heading{grid-template-columns:1fr 240px;align-items:end;gap:36px;margin-bottom:48px;display:grid}.section-heading h2,.sandbox-strip h2{font:700 clamp(31px, 4vw, 48px)/1 var(--display);letter-spacing:-.045em;margin:9px 0 3px}.section-heading p,.sandbox-strip p{color:var(--ink-dim);margin:0;font-size:14px}.campaign-progress{background:var(--line);height:3px;margin-bottom:9px;position:relative;overflow:hidden}.campaign-progress span{background:var(--accent);transition:width .4s;position:absolute;inset:0 auto 0 0}.chapter-list{gap:4px;display:grid}.chapter{border-top:1px solid var(--line);grid-template-columns:162px 1fr;gap:20px;padding:28px 0 30px;display:grid}.chapter-heading{grid-template-columns:auto 1fr;align-content:start;gap:5px 10px;padding:9px 12px 0 0;display:grid}.chapter-heading>span{color:var(--accent);font:700 10px/1 var(--mono)}.chapter-heading h3{font:600 17px/1.15 var(--display);margin:-2px 0 0}.chapter-heading small{color:var(--ink-faint);font:500 9px/1 var(--mono);grid-column:2}.level-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:9px;display:grid}.level-card{border:1px solid var(--line);min-height:143px;color:var(--ink);text-align:left;background:#0c1d2499;border-radius:10px;flex-direction:column;justify-content:space-between;gap:12px;padding:16px;transition:transform .2s,border-color .2s,background .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.level-card:after{content:"";border:1px solid var(--line);width:74px;height:74px;position:absolute;bottom:-31px;right:-17px;transform:rotate(45deg)}.level-card:hover:not(:disabled){z-index:2;border-color:var(--accent-line);background:var(--panel-2);box-shadow:0 17px 38px -27px var(--accent-shadow);transform:translateY(-4px)}.level-card.current{border-color:var(--accent-line);background:var(--accent-soft)}.level-card.current:before{content:"";background:var(--accent);width:3px;position:absolute;inset:0 auto 0 0}.level-card.complete{background:#0d2325ad}.level-card.locked{opacity:.38;filter:saturate(.35)}.level-card-top,.level-meta{justify-content:space-between;align-items:center;gap:8px;display:flex}.level-num{color:var(--ink-faint);font:700 10px/1 var(--mono);letter-spacing:.08em}.level-card.current .level-num{color:var(--accent)}.level-current{color:var(--accent);font:700 7px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase}.level-lock{color:var(--ink-faint);font:400 18px/1 var(--mono)}.level-check{background:var(--good-soft);width:18px;height:18px;color:var(--good);border-radius:50%;place-items:center;font-size:11px;display:grid}.level-name{max-width:12ch;font:600 16px/1.13 var(--display);text-wrap:balance}.level-stars{gap:2px;display:flex}.level-stars i{color:var(--line-strong);font-size:11px;font-style:normal}.level-stars i.on{color:var(--accent)}.level-meta small{color:var(--ink-faint);font:500 8px/1 var(--mono)}.sandbox-strip{border:1px solid var(--line);background:var(--panel);border-radius:14px;grid-template-columns:94px 1fr auto;align-items:center;gap:28px;margin:94px 0 38px;padding:27px 30px;display:grid}.sandbox-strip h2{font-size:26px}.sandbox-mark{color:var(--accent);font:400 68px/.8 var(--serif);text-align:center}.game-shell{width:min(100%,1190px)}.game-topbar{height:60px}.game-brand{color:var(--ink);font:700 12px/1 var(--mono);letter-spacing:.03em;background:0 0;border:0;align-items:center;gap:8px;padding:8px 0;display:flex}.brand-mark{color:var(--accent);font-size:18px}.topbar-actions{align-items:center;gap:20px;display:flex}.icon-action{width:34px;height:34px;color:var(--ink-dim);background:0 0;border:0;border-radius:50%;place-items:center;padding:0;transition:color .2s,background .2s;display:grid}.icon-action:hover{background:var(--panel);color:var(--ink)}.icon-action svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px}.icon-action svg path:first-child{fill:currentColor;stroke:none}.exit-link{align-items:center;gap:11px;display:flex}.exit-link span{font-size:19px;font-weight:300}.play{padding:12px 0 28px}.mission-row{grid-template-columns:1fr auto;align-items:end;gap:24px;margin:0 3px 20px;display:grid}.mission-row h1{font:700 clamp(27px, 3.4vw, 38px)/1 var(--display);letter-spacing:-.04em;margin:6px 0 2px}.mission-row p{max-width:67ch;color:var(--ink-dim);text-wrap:pretty;margin:0;font-size:13px;line-height:1.45}.mission-target{border-left:1px solid var(--line);grid-template-columns:1fr auto;align-items:baseline;gap:1px 12px;min-width:175px;padding:10px 0 5px 18px;display:grid}.mission-target span{color:var(--ink-dim);font-size:10px}.mission-target strong{color:var(--accent);font:700 21px/1 var(--mono)}.mission-target small{color:var(--ink-faint);grid-column:1/-1;font-size:9px}.canvas-frame{transition:transform .2s;position:relative}.canvas-frame:before{content:"";border:1px solid var(--line);pointer-events:none;border-radius:16px;position:absolute;inset:7px -7px -7px 7px}.canvas-frame.impact{animation:.4s cubic-bezier(.36,.07,.19,.97) impact}@keyframes impact{0%,to{transform:translate(0,0)}18%{transform:translate(-5px,2px)rotate(-.16deg)}38%{transform:translate(4px,-2px)rotate(.13deg)}58%{transform:translate(-2px,1px)}}.canvas-wrap{aspect-ratio:28/16;background:#0b2129;border:1px solid #c0ddda40;border-radius:14px;width:100%;position:relative;overflow:hidden;box-shadow:0 28px 70px -46px #000c}.canvas-wrap canvas{touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.canvas-hint,.canvas-tag{z-index:3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#becdca;max-width:calc(100% - 32px);font:600 10px/1.3 var(--mono);letter-spacing:.015em;background:#051015cc;border:1px solid #c9dcd933;border-radius:7px;align-items:center;gap:8px;padding:8px 11px;display:flex;position:absolute;top:16px;left:16px}.canvas-hint i,.drive-dot{border:1px solid var(--accent);width:7px;height:7px;box-shadow:0 0 0 3px var(--accent-soft);border-radius:50%;flex:none}.canvas-hint.warn{color:var(--accent-strong);border-color:var(--accent-line)}.canvas-hint.success{color:#9ee5c8;border-color:#59c59b61}.canvas-hint.success i{border-color:var(--good);background:var(--good);box-shadow:0 0 0 3px var(--good-soft)}.canvas-tag{color:var(--ink);left:50%;transform:translate(-50%)}.drive-dot{background:var(--good);box-shadow:0 0 0 4px var(--good-soft);border:0;animation:1s ease-in-out infinite drivepulse}@keyframes drivepulse{50%{opacity:.45;transform:scale(.72)}}.canvas-corner{color:#d6e5e159;font:500 8px/1 var(--mono);letter-spacing:.07em;text-transform:uppercase;position:absolute;bottom:10px;right:13px}.game-notice{z-index:5;color:#ffc2bc;background:#311315eb;border:1px solid #f0716773;border-radius:8px;width:max-content;max-width:calc(100% - 34px);padding:10px 14px;font-size:12px;animation:.24s both notice-in;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.game-notice.good{color:#afe9d2;background:#0f2e26eb;border-color:#59c59b66}@keyframes notice-in{0%{opacity:0;transform:translate(-50%,8px)}}.budgetbar{grid-template-columns:190px 1fr;align-items:center;gap:20px;margin:15px 2px 10px;display:grid}.budgetbar-head{grid-template-columns:auto auto 1fr;align-items:baseline;gap:8px;display:grid}.budgetbar-head>span{color:var(--ink-faint);font:700 8px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase}.budgetbar-head strong{font:700 13px/1 var(--mono)}.budgetbar-head strong i{color:var(--ink-faint);font-size:9px;font-style:normal}.budgetbar-head small{color:var(--ink-dim);justify-self:end;font-size:10px}.budgetbar-track{background:var(--line);height:5px;overflow:hidden}.budgetbar-track span{background:var(--accent);height:100%;transition:width .28s,background .28s;display:block}.budgetbar.tight .budgetbar-track span{background:var(--danger)}.budgetbar.tight .budgetbar-head small{color:var(--danger)}.build-dock{border:1px solid var(--line);background:#08181ed1;border-radius:12px;grid-template-columns:1fr auto;align-items:stretch;gap:12px;margin-top:12px;padding:10px;display:grid}.materials{align-items:stretch;gap:7px;min-width:0;display:flex}.dock-label{flex:none;align-content:center;width:75px;padding:0 7px;display:grid}.dock-label span{color:var(--accent);font:700 9px/1 var(--mono);letter-spacing:.15em}.dock-label small{color:var(--ink-faint);margin-top:5px;font-size:9px;line-height:1.1}.mat{min-width:132px;color:var(--ink-dim);text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;flex:150px;grid-template-rows:auto auto;grid-template-columns:19px 1fr auto;align-items:center;gap:3px 8px;padding:10px 9px;transition:background .18s,border-color .18s,transform .18s,color .18s;display:grid;position:relative}.mat:hover{background:var(--panel);color:var(--ink)}.mat:active{transform:scale(.985)}.mat.sel{border-color:var(--accent-line);background:var(--accent-soft);color:var(--ink)}.mat-key{border:1px solid var(--line-strong);width:18px;height:18px;color:var(--ink-faint);font:700 8px/1 var(--mono);border-radius:4px;grid-row:1/3;place-items:center;display:grid}.mat.sel .mat-key{border-color:var(--accent-line);color:var(--accent)}.mat-swatch{background:var(--m-deck);border-radius:2px;grid-area:1/2;align-self:end;width:29px;height:4px;box-shadow:0 2px #00000040}.mat-wood .mat-swatch{background:var(--m-wood)}.mat-steel .mat-swatch{background:var(--m-steel);height:5px}.mat-cable .mat-swatch{background:var(--m-cable);height:2px}.mat-copy{grid-area:2/2;align-self:start;display:grid}.mat-copy b{text-transform:capitalize;font-size:12px;font-weight:600;line-height:1}.mat-copy small{color:var(--ink-faint);white-space:nowrap;margin-top:3px;font-size:8px;line-height:1;display:none}.strength{grid-area:1/3;align-self:end;gap:2px;display:flex}.strength i{background:var(--line-strong);border-radius:1px;width:3px;height:8px}.strength i:nth-child(2){height:11px;transform:translateY(-3px)}.strength i:nth-child(3){height:14px;transform:translateY(-6px)}.strength i.on{background:var(--accent)}.action-rack{border-left:1px solid var(--line);align-items:stretch;gap:9px;padding-left:10px;display:flex}.edit-tools{align-items:center;gap:4px;display:flex}.btn-icon{width:37px;height:42px;color:var(--ink-dim);background:0 0;border:0;border-radius:7px;place-items:center;padding:0;font-size:19px;transition:color .18s,background .18s,transform .18s;display:grid}.btn-icon:hover:not(:disabled){background:var(--panel);color:var(--ink)}.btn-icon:active:not(:disabled){transform:scale(.96)}.btn-icon:disabled{opacity:.23}.btn-icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:18px}.btn-icon.erase.sel{background:var(--danger-soft);color:var(--danger)}.text-tool{color:var(--ink-faint);text-underline-offset:3px;background:0 0;border:0;padding:8px;font-size:10px;text-decoration:underline}.text-tool:hover{color:var(--danger)}.test-button{place-content:center;gap:2px;min-width:112px;display:grid}.test-button span{font:700 13px/1 var(--mono);letter-spacing:.05em}.test-button small{opacity:.58;font-size:8px}.run-dock{border:1px solid var(--good-soft);background:#091f1fbd;border-radius:10px;justify-content:space-between;align-items:center;gap:18px;margin-top:16px;padding:12px 14px 12px 18px;display:flex}.run-dock>div{align-items:center;gap:9px;display:flex}.run-dock b{font-size:13px}.run-dock small{color:var(--ink-faint);font-size:10px}.speed-button{min-width:74px}.speed-button small{margin-left:3px}.shortcut-line{color:var(--ink-faint);font:500 8px/1 var(--mono);letter-spacing:.035em;text-align:right;margin:9px 3px 0}.backdrop{z-index:20;-webkit-backdrop-filter:blur(12px)saturate(.8);backdrop-filter:blur(12px)saturate(.8);background:#030b0fbd;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow:auto}.modal{border:1px solid var(--line-strong);text-align:center;background:#0c1c23;border-radius:15px;width:min(100%,430px);padding:34px;animation:.32s cubic-bezier(.2,.8,.2,1) both modal-in;box-shadow:0 40px 100px -45px #000000e6}@keyframes modal-in{0%{opacity:0;transform:translateY(15px)scale(.97)}}.modal h2{font:700 31px/1.05 var(--display);letter-spacing:-.04em;text-wrap:balance;margin:8px 0}.modal>p{max-width:38ch;color:var(--ink-dim);margin:0 auto 19px;font-size:13px;line-height:1.45}.result-kicker{color:var(--ink-faint)}.result-icon{background:var(--good-soft);width:52px;height:52px;color:var(--good);font:500 26px/1 var(--mono);border:1px solid #59c59b61;border-radius:50%;place-items:center;margin:22px auto 14px;display:grid}.result-icon.fail{background:var(--danger-soft);color:var(--danger);border-color:#f0716761}.modal-stars{justify-content:center;gap:8px;margin:4px 0 19px;display:flex}.modal-stars span{color:var(--line-strong);font-size:31px;transform:scale(.8)}.modal-stars span.on{color:var(--accent);animation:.45s cubic-bezier(.2,1.4,.3,1) both star-in}.modal-stars span.on:nth-child(2){animation-delay:90ms}.modal-stars span.on:nth-child(3){animation-delay:.18s}@keyframes star-in{0%{opacity:0;transform:scale(.3)rotate(-20deg)}}.result-score{grid-template-columns:auto auto 1px auto auto;justify-content:center;align-items:baseline;gap:6px;margin:0 auto 11px;display:grid}.result-score strong{font:700 17px/1 var(--mono)}.result-score span{color:var(--ink-faint);font-size:9px}.result-score i{background:var(--line);width:1px;height:19px;margin:0 7px}.par-note{color:var(--ink-faint);font-size:9px;display:block}.modal-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:9px 12px;margin-top:27px;display:flex}.modal-actions .text-action{margin-left:3px}.lose-modal{border-color:#f0716742}.lose-modal .result-kicker{color:var(--danger)}.tutorial-modal{text-align:left;width:min(100%,640px);padding:36px}.tutorial-modal h2{margin:9px 0 25px;font-size:38px}.tutorial-steps{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.tutorial-step{border:1px solid var(--line);background:#10272f85;border-radius:10px;min-height:190px;padding:15px}.tutorial-glyph{border-bottom:1px solid var(--line);height:75px;color:var(--accent);font:400 42px/1 var(--mono);place-items:center;margin-bottom:14px;display:grid}.glyph-1{color:var(--good)}.glyph-2{color:var(--ink)}.tutorial-step b{font:600 14px/1 var(--display);align-items:center;gap:6px;display:flex}.tutorial-step b i{color:var(--ink-faint);font:700 8px/1 var(--mono);font-style:normal}.tutorial-step p{color:var(--ink-dim);margin:7px 0 0;font-size:11px;line-height:1.45}.tutorial-modal>.btn{align-items:center;margin:24px 0 0 auto;display:flex}@media (width>=1100px){.mat-copy small{display:block}.mat{min-width:145px}}@media (width<=980px){.shell{padding-inline:20px}.menu-hero{grid-template-columns:1fr;min-height:auto;padding:60px 0 100px}.hero-copy{width:min(100%,620px)}.hero-art{justify-self:center;width:min(100%,700px)}.title{max-width:10ch;font-size:clamp(58px,10vw,82px)}.chapter{grid-template-columns:120px 1fr}.build-dock{grid-template-columns:1fr}.action-rack{border-top:1px solid var(--line);border-left:0;justify-content:space-between;padding:9px 0 0}.materials{padding-bottom:2px;overflow-x:auto}.mat{flex:0 0 128px;min-width:128px}}@media (width<=680px){.shell{padding-inline:13px}.topbar{height:58px}.menu{padding-top:4px}.menu-hero{gap:65px;padding:45px 5px 74px}.title{font-size:clamp(49px,15.8vw,68px)}.lede{margin-top:22px;font-size:14px}.hero-actions{flex-direction:column;align-items:flex-start;gap:14px}.hero-actions .btn-large{width:100%}.menu-stats{margin-top:31px}.hero-art:before{inset:7% -2% -6% 5%}.campaign{padding-top:66px}.section-heading{grid-template-columns:1fr;gap:24px;margin-bottom:34px}.chapter{grid-template-columns:1fr;gap:15px;padding-block:24px}.chapter-heading{grid-template-columns:auto 1fr auto}.chapter-heading small{grid-column:3}.level-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.level-card{min-height:132px;padding:13px}.sandbox-strip{grid-template-columns:56px 1fr;gap:16px;margin-top:65px;padding:22px 18px}.sandbox-strip .btn{grid-column:1/-1}.footer{flex-direction:column;align-items:flex-start}.mission-row{grid-template-columns:1fr;align-items:start;margin-bottom:13px}.mission-row h1{font-size:27px}.mission-row p{font-size:11px}.mission-target{display:none}.canvas-frame:before{inset:4px -4px -4px 4px}.canvas-wrap{aspect-ratio:28/16}.canvas-hint{max-width:calc(100% - 18px);padding:6px 8px;font-size:8px;top:9px;left:9px}.canvas-corner{display:none}.budgetbar{grid-template-columns:1fr;gap:7px;margin-top:13px}.materials{margin-right:-10px}.dock-label{width:59px;padding-left:3px}.dock-label small{display:none}.mat{flex-basis:112px;min-width:112px}.action-rack{gap:5px}.test-button{min-width:98px}.shortcut-line{display:none}.run-dock{align-items:flex-start}.run-dock>div:first-child{flex-wrap:wrap;align-items:flex-start}.run-dock>div:first-child small{display:none}.run-dock .btn{padding-inline:12px}.tutorial-modal{padding:26px 20px}.tutorial-modal h2{font-size:31px}.tutorial-steps{grid-template-columns:1fr}.tutorial-step{grid-template-columns:72px 1fr;align-items:center;gap:14px;min-height:0;display:grid}.tutorial-glyph{border:0;border-right:1px solid var(--line);height:62px;margin:0;font-size:32px}.modal{padding:28px 21px}.result-score{grid-template-columns:auto auto}.result-score i{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
