:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;--bg:#07131f;--surface:#0c202b;--surface-raised:#102d37;--surface-soft:#153844;--line:#28515a;--text:#effffb;--muted:#9db7bb;--mint:#56dfbf;--mint-dark:#143e39;--amber:#ffd26b;--danger:#ff6570;--shadow:0 16px 50px #00000047;background:var(--bg);color:var(--text);font-family:Inter,ui-rounded,SF Pro Rounded,Segoe UI,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}html,body,#app{background:radial-gradient(circle at 50% -10%, #337e8440, transparent 44%), var(--bg);width:100%;min-width:320px;height:100%;min-height:100%;margin:0;overflow:hidden}body{overscroll-behavior:none;-webkit-tap-highlight-color:transparent}button,select,input{font:inherit}button{touch-action:manipulation}button:focus-visible,select:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--amber);outline-offset:3px}[hidden]{display:none!important}.screen{width:min(100%,920px);height:100dvh;min-height:100%;padding:max(14px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));margin-inline:auto;position:relative}.eyebrow{color:var(--mint);letter-spacing:.14em;text-transform:uppercase;margin:0 0 4px;font-size:clamp(.67rem,2vw,.78rem);font-weight:800}h1,h2,p{margin-block-start:0}h1{letter-spacing:-.045em;margin-block-end:8px;font-size:clamp(1.75rem,7vw,3rem);line-height:1}h2{margin-block-end:8px;font-size:clamp(1.4rem,5vw,2rem)}.button,.icon-button,.tool-button,.component-chip,.text-button{border:1px solid var(--line);min-width:48px;min-height:48px;color:var(--text);cursor:pointer;border-radius:14px;transition:transform .12s,background-color .12s,border-color .12s}.button:active,.icon-button:active,.tool-button:active,.component-chip:active{transform:translateY(2px)scale(.985)}.button:disabled,.tool-button:disabled,.component-chip:disabled{cursor:not-allowed;opacity:.38}.button{background:var(--surface-raised);padding:12px 20px;font-weight:750}.button--primary{color:#06211d;background:linear-gradient(145deg,#6ee9cb,#3fc7ab);border-color:#76f2d5;box-shadow:0 9px 24px #44dab93d}.button--large{border-radius:18px;min-height:62px;font-size:1.12rem}.button--ghost,.text-button{background:0 0}.button--danger{color:#ffabb1;background:#ff65701c;border-color:#ff65708c}.icon-button{background:var(--surface);place-items:center;padding:0;font-size:1.2rem;font-weight:850;display:grid}.text-button{min-height:44px;color:var(--mint);border-color:#0000;padding:6px 10px;font-size:.82rem}.loading-screen{color:var(--muted);place-content:center;justify-items:center;display:grid}.beta-notice-screen{place-items:center;max-width:560px;display:grid}.beta-notice-panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:24px;padding:clamp(22px,6vw,42px)}.beta-notice-panel .button{width:100%;margin-block-start:18px}.diagnostics-screen{overflow-y:auto}.diagnostics-list{border:1px solid var(--line);background:var(--line);border-radius:16px;grid-template-columns:minmax(110px,.8fr) minmax(0,1.5fr);gap:1px;display:grid;overflow:hidden}.diagnostics-list dt,.diagnostics-list dd{overflow-wrap:anywhere;background:var(--surface);min-width:0;margin:0;padding:10px 12px}.diagnostics-list dt{color:var(--muted);font-size:.8rem}.diagnostics-actions{gap:10px;margin-block-start:16px;display:grid}.loading-machine{border:2px solid var(--line);background:var(--surface);border-radius:18px;justify-content:space-around;align-items:center;width:112px;height:52px;margin-block-end:18px;display:flex}.loading-machine span{background:var(--mint);border-radius:7px;width:22px;height:22px;animation:.9s ease-in-out infinite package-shift}.loading-machine span:nth-child(2){animation-delay:.15s}.loading-machine span:nth-child(3){animation-delay:.3s}@keyframes package-shift{0%,to{opacity:.45;transform:translateY(0)}50%{opacity:1;transform:translateY(-9px)}}.home-screen{grid-template-rows:minmax(250px,1fr) auto auto;gap:22px;max-width:520px;display:grid}.home-hero{text-align:center;flex-direction:column;justify-content:end;align-items:center;display:flex}.brand-mark{border:2px solid var(--line);width:132px;height:112px;box-shadow:var(--shadow);background:linear-gradient(160deg,#123640,#091a22);border-radius:30px;grid-template-columns:repeat(3,1fr);align-items:end;gap:8px;margin-block-end:24px;padding:12px;display:grid;position:relative}.brand-mark:before,.brand-mark:after{content:"";background:#0a1c24;border:2px solid #32636b;border-radius:8px;height:8px;position:absolute;left:-15px;right:-15px}.brand-mark:before{top:25px}.brand-mark:after{bottom:25px}.brand-mark span{z-index:1;aspect-ratio:1;background:var(--mint);border:2px solid #d9fff6;border-radius:8px;position:relative;box-shadow:0 7px #238d7a}.brand-mark span:nth-child(2){background:var(--amber);box-shadow:0 7px #aa7924}.brand-mark span:nth-child(3){background:#5caeff;box-shadow:0 7px #256aab}.home-subtitle{max-width:300px;color:var(--muted);margin-block-end:12px;font-size:1.02rem}.home-progress{color:var(--amber);font-weight:800}.home-actions{gap:10px;display:grid}.home-footer{color:#66828a;text-align:center;font-size:.72rem}.screen-header{align-items:center;gap:14px;min-height:62px;display:flex}.screen-header h1{margin:0;font-size:clamp(1.45rem,6vw,2.2rem)}.level-select-screen,.settings-screen{overflow:auto}.level-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-block:18px 28px;display:grid}.tutorial-accordion{border:1px solid var(--line);background:var(--surface);border-radius:20px;margin-top:18px}.tutorial-accordion__summary{min-height:52px;color:var(--text);cursor:pointer;padding:14px 18px;font-weight:780}.tutorial-accordion__summary:focus-visible{outline:3px solid var(--mint);outline-offset:3px}.tutorial-level-grid{padding:0 14px 14px}.level-card{border:1px solid var(--line);background:linear-gradient(150deg, var(--surface-raised), var(--surface));min-height:132px;color:var(--text);cursor:pointer;text-align:left;border-radius:20px;flex-direction:column;align-items:start;padding:14px;display:flex}.level-card:disabled{filter:grayscale(.6);opacity:.5}.level-number{color:var(--mint);font-family:ui-monospace,monospace;font-size:.75rem;font-weight:800}.level-name{flex:1;padding-block:9px;font-size:1rem;font-weight:780}.level-meta{color:var(--amber);letter-spacing:.08em;font-size:.82rem}.settings-panel{gap:10px;padding-block:18px 30px;display:grid}.setting-row{border:1px solid var(--line);background:var(--surface);border-radius:16px;justify-content:space-between;align-items:center;gap:20px;min-height:60px;padding:12px 16px;display:flex}.setting-row--stacked{flex-direction:column;align-items:stretch;gap:10px}.setting-row input[type=checkbox]{width:48px;height:28px;accent-color:var(--mint)}.setting-row input[type=range]{width:100%;accent-color:var(--mint)}.setting-row select{border:1px solid var(--line);background:var(--surface-raised);min-height:44px;color:var(--text);border-radius:11px;padding-inline:12px}.gameplay-screen{grid-template-rows:auto auto auto auto minmax(190px,1fr) auto auto auto;gap:6px;display:grid;overflow:hidden}.gameplay-header{grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:10px;display:grid}.gameplay-title{text-align:center;min-width:0}.gameplay-title h1{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:clamp(1.08rem,4.5vw,1.55rem);overflow:hidden}.gameplay-status{min-height:28px;color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:6px;font-size:clamp(.68rem,2.5vw,.8rem);display:flex}.gameplay-status span:last-child{color:var(--amber);letter-spacing:.06em}.orders-panel{border:1px solid var(--line);background:#0c202bdb;border-radius:13px;min-height:38px;padding:4px 9px 7px}.orders-panel summary{min-height:44px;color:var(--muted);cursor:pointer;text-transform:uppercase;font-size:.72rem;font-weight:750;line-height:44px}.orders-list{scrollbar-width:none;gap:6px;display:flex;overflow-x:auto}.order-chip{min-width:max-content;min-height:44px;color:var(--text);background:#0d2832;border:1px solid #31545c;border-radius:10px;align-items:center;gap:6px;padding:4px 9px;font-size:.72rem;display:flex}.order-chip--delivered{opacity:.55;border-color:#3ec89f}.order-symbol,.order-destination{font-size:1.1rem}.color-red{color:#ff6671}.color-blue{color:#58adff}.color-amber{color:#ffc457}.color-green{color:#62d68b}.color-violet{color:#bd8cff}.color-cyan{color:#4bdada}.color-orange{color:#ff945a}.objective-strip{color:#c3d9dc;text-overflow:ellipsis;white-space:nowrap;min-height:22px;font-size:.72rem;overflow:hidden}.game-mount{background:#07151b;border:1px solid #20434c;border-radius:18px;min-height:190px;position:relative;overflow:hidden;box-shadow:inset 0 0 30px #00000042}.game-mount canvas{display:block}.tutorial-callout,.hint-callout{color:#ddfff7;background:#0f3838;border:1px solid #56dfbf8c;border-radius:13px;align-items:center;gap:9px;min-height:44px;padding:7px 11px;font-size:.78rem;display:flex;box-shadow:0 8px 26px #00000026}.tutorial-callout p{flex:1;margin:0}.tutorial-pointer{font-size:1.3rem;animation:.8s ease-in-out infinite tutorial-tap}@keyframes tutorial-tap{0%,to{transform:translateY(0)}50%{transform:translateY(4px)scale(.96)}}.hint-callout{color:#fff0c4;background:#3b321b;border-color:#ffd26b8c}.editable-controls{scrollbar-width:none;gap:6px;display:flex;overflow-x:auto}.component-chip{background:var(--surface);color:#cbe7e4;min-width:max-content;min-height:44px;padding:5px 10px;font-size:.7rem}.component-chip--highlighted{border-color:var(--amber);color:var(--amber);box-shadow:0 0 0 2px #ffd26b2e}.gameplay-toolbar{grid-template-columns:repeat(4,minmax(46px,1fr)) minmax(98px,1.65fr);gap:6px;display:grid}.execution-toolbar{grid-template-columns:repeat(3,minmax(0,1fr))}.tool-button{background:var(--surface-raised);color:#d4e8e8;min-height:48px;padding:4px 7px;font-size:clamp(.62rem,2.4vw,.76rem);font-weight:720}.tool-button--hint{color:var(--amber)}.start-button{text-transform:uppercase;padding-inline:10px;font-size:clamp(.82rem,3vw,1rem)}.result-panel{z-index:20;text-align:center;background:#0a1d26f7;border:1px solid #40616a;border-radius:24px;width:min(100% - 32px,440px);padding:22px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 28px 90px #0009}.result-icon{color:var(--amber);margin-block-end:4px;font-size:2.2rem}.result-panel p{color:var(--muted)}.result-stats{font-size:.82rem;font-weight:760;color:var(--amber)!important}.result-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.replay-controls{justify-content:center;gap:8px;margin-block:4px 12px;display:flex}.developer-controls{justify-content:center;gap:6px;display:flex}.panel-copy{max-width:540px;color:var(--muted)}.system-banner-stack{z-index:100;right:max(12px, env(safe-area-inset-right));bottom:max(12px, env(safe-area-inset-bottom));left:max(12px, env(safe-area-inset-left));pointer-events:none;gap:8px;max-width:520px;margin-inline:auto;display:grid;position:fixed}.system-banner{border:1px solid var(--mint);width:100%;min-height:48px;box-shadow:var(--shadow);color:var(--text);pointer-events:auto;background:#0a252bf7;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;font-size:.8rem;display:flex}.system-banner__actions{flex:none;align-items:center;gap:8px;display:flex}.text-button--subtle{color:var(--muted)}.system-banner--offline{border-color:var(--amber);justify-content:center}@media (min-width:620px){.level-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.gameplay-screen{padding-inline:max(24px, env(safe-area-inset-left))}.gameplay-toolbar{width:100%;max-width:660px;margin-inline:auto}}@media (max-height:720px){.screen{padding-top:max(8px, env(safe-area-inset-top));padding-bottom:max(8px, env(safe-area-inset-bottom))}.gameplay-screen{grid-template-rows:auto auto auto auto minmax(160px,1fr) auto auto auto;gap:4px}.orders-panel{padding-block:2px 4px}.orders-panel summary{min-height:44px;line-height:44px}.order-chip{min-height:44px}.tutorial-callout,.hint-callout{min-height:38px;padding-block:4px}.editable-controls,.tool-button,.start-button{min-height:44px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.reduced-motion *,.reduced-motion :before,.reduced-motion :after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.color-blind .order-symbol,.color-blind .order-destination{text-shadow:0 0 3px #000;border-bottom:2px solid}
