@font-face{font-family:Lilita One;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/LilitaOne-Regular-latin.woff2)format("woff2")}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/NunitoSans-400-latin.woff2)format("woff2")}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/NunitoSans-700-latin.woff2)format("woff2")}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../fonts/NunitoSans-800-latin.woff2)format("woff2")}:root{--ink:#203247;--panel:#f4f7fb;--panel-2:#e6edf5;--line:#c8d3e0;--muted:#5b6b80;--go:#22a356;--go-dark:#157a3e;--blue:#399aef;--blue-dark:#1f6fb8;--warn:#b42318;--charge:#ffb627;--pa:#3b82f6;--pb:#f59e0b;--pc:#10b981;--head:"Lilita One", "Arial Rounded MT Bold", Arial, sans-serif;--body:"Nunito Sans", "Segoe UI", Arial, sans-serif}*{box-sizing:border-box}html,body{background:var(--ink);height:100%;color:var(--ink);font-family:var(--body);margin:0;font-size:16px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}#app{grid-template:"top top"56px"field rail"minmax(0,1fr)"bottom rail"minmax(56px,auto)/minmax(0,1fr) 280px;height:100vh;display:grid}@media (width<=1279px){#app{grid-template-rows:48px minmax(0,1fr) minmax(48px,auto);grid-template-columns:minmax(0,1fr) 216px}}#top{background:var(--panel);border-bottom:3px solid var(--ink);grid-area:top;align-items:center;gap:18px;padding:0 14px;display:flex}#field{background:#16263a;grid-area:field;min-width:0;min-height:0;position:relative}#game{position:absolute;inset:0}#rail{background:var(--panel);border-left:3px solid var(--ink);grid-area:rail;padding:10px 12px 16px;overflow-y:auto}#bottom{background:var(--panel);border-top:3px solid var(--ink);grid-area:bottom;align-items:center;gap:14px;padding:0 12px;display:flex}.stat{align-items:center;gap:6px;font-size:16px;display:flex}.stat b{font-size:22px;font-weight:800}.stat small{color:var(--muted)}.stat.mode{color:var(--muted);font-weight:700}.spacer{flex:1}.icon svg,.price svg,.btn svg{vertical-align:-4px;width:20px;height:20px}.heart svg{fill:#e5484d}.bolt svg,.price svg,.btn svg{fill:#f2a900}.btn{font-family:var(--head);letter-spacing:.3px;color:#fff;cursor:pointer;background:var(--blue);border:2px solid var(--ink);box-shadow:0 4px 0 var(--blue-dark);border-radius:8px;min-height:44px;padding:6px 12px;font-size:18px;position:relative;top:0}.btn:active:not(:disabled){box-shadow:0 2px 0 var(--blue-dark);top:2px}.btn:disabled{cursor:not-allowed;color:#f0f4f8;background:#a9b6c6;box-shadow:0 4px #7f8ea3}.btn:focus-visible,.tray:focus-visible{outline-offset:2px;outline:3px solid #ffb627}.btn.small{min-height:36px;padding:4px 9px;font-size:15px}.btn.ghost{color:var(--ink);box-shadow:0 4px 0 var(--line);background:#fff}.btn.on{background:var(--ink);color:#fff;box-shadow:0 4px #0c1622}.btn.start{background:var(--go);box-shadow:0 4px 0 var(--go-dark);font-size:20px}.btn.start:disabled{background:#a9b6c6;box-shadow:0 4px #7f8ea3}.btn.buy{background:var(--go);box-shadow:0 4px 0 var(--go-dark);flex:1}.btn.sell{color:var(--warn);box-shadow:0 4px 0 var(--line);background:#fff;width:100%;margin-top:12px}.btn.sell.confirm{background:var(--warn);color:#fff;box-shadow:0 4px #7a1710}.btn.relay-btn{background:var(--charge);color:var(--ink);box-shadow:0 4px #c27c00}.btn.relay-btn:disabled{color:#8a7a5a;background:#e9dcc0;box-shadow:0 4px #cbb88f}h1,h2{font-family:var(--head);margin:4px 0 6px;font-weight:400}h2{font-size:24px}.muted{color:var(--muted)}.small{font-size:14px}p{margin:6px 0}.tray-list{flex-direction:column;gap:8px;display:flex}.tray{text-align:left;width:100%;font-family:var(--body);color:var(--ink);cursor:pointer;border:2px solid var(--ink);box-shadow:0 3px 0 var(--line);background:#fff;border-radius:10px;grid-template-rows:auto auto;grid-template-columns:50px 1fr auto;align-items:center;column-gap:8px;padding:6px 8px;display:grid;position:relative}.tray .portrait{grid-row:1/3}.tray .name{font-family:var(--head);flex-direction:column;font-size:19px;display:flex}.tray .name small{font-family:var(--body);color:var(--muted);font-size:14px;line-height:1.2}.tray .price{flex-direction:column;align-items:flex-end;font-size:17px;font-weight:800;display:flex}.tray .price small{color:var(--warn);font-size:14px;font-weight:700}.tray kbd{color:var(--muted);font-size:12px;position:absolute;top:4px;right:6px}.tray .price{grid-area:1/3/3;margin-top:12px}.tray.picked{border-color:var(--blue-dark);box-shadow:0 3px 0 var(--blue);background:#e7f4ff}.tray.poor{background:#fbf6f6}.tray .dev,.dev-note .dev{font-family:var(--body);letter-spacing:.03em;color:#7a3b00;vertical-align:middle;background:#ffe7b3;border:1.5px dashed #b45309;border-radius:5px;padding:0 4px;font-size:11px;font-style:normal;font-weight:800}.dev-note{margin-top:8px}.tray:hover .portrait{transform:scale(1.03)}.portrait{--c:#888;background:var(--c);border:2px solid var(--ink);border-radius:12px;width:40px;height:40px;display:inline-block;position:relative}.portrait i:before,.portrait i:after{content:"";background:var(--ink);border-radius:50%;width:7px;height:10px;position:absolute;top:12px}.portrait i:before{left:9px}.portrait i:after{right:9px}.portrait.big i:before,.portrait.big i:after{width:10px;height:15px;top:20px}.portrait.big i:before{left:15px}.portrait.big i:after{right:15px}.back{margin-bottom:8px}.robot-head{align-items:center;gap:10px;display:flex}.robot-head h2{margin:0}.vector{color:var(--muted);font-weight:800}.modes{gap:4px;margin:8px 0;display:flex}.modes .btn{flex:1;padding:4px 2px;font-size:14px}.stats{border:2px solid var(--line);background:#fff;border-radius:8px;margin:6px 0 10px;padding:4px 8px}.stats .row{justify-content:space-between;gap:8px;padding:2px 0;font-size:14px;display:flex}.stats dt{color:var(--muted)}.stats dd{text-align:right;margin:0;font-weight:700}.stats .row.changed dd b{color:var(--go-dark)}.path{border:2px solid var(--line);border-left:6px solid var(--pa);background:#fff;border-radius:8px;margin-bottom:8px;padding:6px 8px}.path.p1{border-left-color:var(--pb)}.path.p2{border-left-color:var(--pc)}.path.preview{border-color:var(--ink);box-shadow:0 0 0 2px #ffb627}.path header,.relay header{justify-content:space-between;align-items:center;display:flex}.pname{font-family:var(--head);font-size:16px}.nodes{gap:2px;display:flex}.node{border:2px solid var(--ink);background:#fff;border-radius:50%;place-items:center;width:20px;height:20px;font-size:12px;font-weight:800;display:grid}.node.bought{background:var(--ink);color:#fff}.node.next{background:#d6f5e1}.node.blocked{background:#fde2e1}.node.research{color:#9ca3af;background:#e5e7eb;border-style:dashed}.next{font-size:14px}.buyrow{gap:6px;display:flex}.why{color:var(--warn);font-size:14px;font-weight:700}.relay{background:#fff8e6;border:2px solid #e8c56a;border-radius:8px;padding:6px 8px}.relay .btn{width:100%}.tag{background:var(--charge);border:2px solid var(--ink);border-radius:6px;padding:0 4px;font-size:12px;font-weight:800}#bottom .preview{flex:1;max-height:76px;padding:4px 0;font-size:14px;line-height:1.25;overflow:hidden}#bottom .preview em{color:var(--warn);font-style:normal;font-weight:700;display:block}#bottom .preview .hid{color:#6d28d9;font-style:normal;font-weight:800}#bottom .notice{color:var(--blue-dark);max-width:300px;font-size:15px;font-weight:700;line-height:1.2}.charge{white-space:nowrap;align-items:center;gap:8px;font-size:15px;display:flex}.battery{border:3px solid var(--ink);background:#fff;border-radius:6px;width:90px;height:24px;position:relative;overflow:hidden}.battery:after{content:"";background:var(--ink);width:4px;height:8px;position:absolute;top:5px;right:-1px}.battery .fill{background:var(--charge);height:100%}.charge.full .battery{box-shadow:0 0 0 3px #ffe39b}#overlay{z-index:10;background:#101c2c99;place-items:center;display:grid;position:fixed;inset:0}#overlay[hidden]{display:none}.card{background:var(--panel);border:3px solid var(--ink);text-align:center;max-width:520px;box-shadow:0 8px 0 var(--ink);border-radius:16px;padding:24px 32px}.card h1{font-size:40px}.card.win h1{color:var(--go-dark)}.card.lose h1{color:var(--warn)}.fatal{color:#fff;padding:20px}.portrait.art{background:#e8f1fb;overflow:hidden}.portrait.art i,.portrait .bust{display:none}.portrait.art .bust{object-fit:contain;object-position:center bottom;width:calc(100% - 2px);height:calc(100% - 2px);display:block;position:absolute;inset:1px}.tray .portrait.art{width:48px;height:48px}.portrait.big{width:64px;height:64px}#overlay.title{background:#101c2cb8}.title-card{max-width:640px}.title-card .logo{width:min(560px,100%);height:auto;margin:0 auto 8px;display:block}.title-card .lead{font-size:18px}.btn.big{margin:10px 0 4px;padding:8px 40px;font-size:26px}#overlay.results{--sky:77, 162, 247;--seam:calc(100% - 37.21vw);background-color:rgb(var(--sky));background-image:linear-gradient(to bottom, rgb(var(--sky)) var(--seam), rgba(var(--sky), 0) calc(var(--seam) + 6vw)), var(--art);background-position:50%,bottom;background-repeat:no-repeat;background-size:100% 100%,100%;place-items:center start;padding-left:4vw}#overlay.results.defeat{--sky:101, 171, 252}#overlay.results .card{max-width:min(520px,36vw)}
