.arcade-app{--arcade-bg:#07101c;--arcade-panel:#102234;--arcade-line:rgba(152,214,231,.19);--arcade-muted:#abc1ce;--arcade-accent:#66efd0;--arcade-gold:#ffcc79;position:fixed;inset:0;z-index:40;isolation:isolate;color:#f1faff;background:var(--arcade-bg);font-family:var(--font-body),system-ui,sans-serif;overflow:hidden;color-scheme:dark}.arcade-app *{box-sizing:border-box}.arcade-app a,.arcade-app button,.arcade-app input,.arcade-app select{font:inherit;touch-action:manipulation}.arcade-app button{border:1px solid var(--arcade-line);background:#142b3e;color:inherit;min-height:44px;border-radius:13px;padding:10px 14px;cursor:pointer;font-weight:650;line-height:1.25}.arcade-app button:hover:not(:disabled){background:#204157;border-color:#78cecb}.arcade-app button:disabled{opacity:.48;cursor:not-allowed}.arcade-app a:focus-visible,.arcade-app button:focus-visible,.arcade-app canvas:focus-visible,.arcade-app input:focus-visible,.arcade-app select:focus-visible{outline:3px solid #ffe2a1;outline-offset:3px}.arcade-app button[aria-pressed=true]{background:#204c4e;border-color:var(--arcade-accent);color:#e7fff7}.arcade-app .arcade-primary{background:var(--arcade-accent);color:#062422;border-color:var(--arcade-accent);box-shadow:0 5px 25px #39d9c323}.arcade-app .arcade-primary:hover:not(:disabled){background:#95ffe2}.arcade-app a{color:#b7ffed;text-decoration:underline;text-underline-offset:4px}.arcade-app h1,.arcade-app h2,.arcade-app h3,.arcade-app p{margin:0}.arcade-app h1{font-size:clamp(30px,5vw,62px);line-height:1.06;letter-spacing:-.045em;font-weight:800}.arcade-app h2{font-size:22px;line-height:1.2}.arcade-app h3{font-size:16px}.arcade-app p{line-height:1.55}.arcade-app .arcade-muted{color:var(--arcade-muted)}.arcade-app .arcade-small{font-size:12px}.arcade-app .arcade-eyebrow{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--arcade-accent);font-weight:750}.arcade-app .arcade-icon-button{width:44px;height:44px;padding:10px;display:inline-grid;place-items:center;flex-shrink:0}.arcade-visually-hidden{position:absolute!important;clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}.arcade-entry{height:100%;overflow:auto;display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:clamp(24px,6vw,90px);padding:clamp(24px,7vw,100px);background:radial-gradient(ellipse at 24% 24%,#163d50 0,transparent 46%),radial-gradient(ellipse at 80% 90%,#322a54,transparent 42%),#07101c}.arcade-entry-art{position:relative;max-width:620px}.arcade-entry-art>svg{margin-bottom:28px;filter:drop-shadow(0 0 30px #5cd3c84d);transform:rotate(25deg)}.arcade-entry-art h1{margin:16px 0 22px}.arcade-entry-art p{max-width:420px;color:#b8d4de;font-size:18px}.arcade-entry-badges{display:flex;flex-wrap:wrap;gap:16px;margin-top:32px}.arcade-entry-badges>span{display:flex;align-items:center;gap:8px;font-size:13px;color:#d6ebef}.arcade-entry-card{width:100%;max-width:430px;justify-self:center;padding:28px;border-radius:24px;border:1px solid var(--arcade-line);background:linear-gradient(145deg,#173244dc,#0b192be8);box-shadow:0 24px 80px #0005}.arcade-entry-card h2{margin-bottom:20px}.arcade-field{display:grid;gap:7px;min-width:0}.arcade-field>span{font-size:12px;font-weight:700;color:#c7dce4}.arcade-app input,.arcade-app select{width:100%;min-height:46px;border:1px solid #486575;border-radius:12px;background:#081927;color:#effbff;padding:11px 12px}.arcade-entry-form{display:grid;gap:15px}.arcade-entry-join{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;padding-top:16px;margin-top:16px;border-top:1px solid var(--arcade-line)}.arcade-entry-footer{display:grid;gap:17px;margin-top:24px}.arcade-entry-footer>a{font-size:13px}.arcade-language{max-width:180px}.arcade-entry-resume{margin-bottom:16px;padding:10px 12px;border-radius:12px;background:#15514855;font-size:13px}.arcade-inline-error{border:1px solid #dba36b7a;border-radius:12px;background:#442e25;padding:12px;color:#ffe1bf;font-size:13px;margin-bottom:14px}.arcade-world{position:absolute;inset:0}.arcade-world canvas{width:100%;height:100%;display:block;touch-action:none}.arcade-world:after{content:"";inset:0;box-shadow:inset 0 0 180px #0207119c}.arcade-topbar,.arcade-world:after{position:absolute;pointer-events:none}.arcade-topbar{z-index:4;top:0;left:0;right:0;display:flex;align-items:center;gap:12px;padding:calc(12px + env(safe-area-inset-top)) 24px 12px;background:linear-gradient(#071321eb,#071321b0 75%,transparent)}.arcade-topbar>*{pointer-events:auto}.arcade-logo{display:flex;align-items:center;gap:9px;min-width:0;font-size:18px;font-weight:800;letter-spacing:-.04em;text-decoration:none!important;color:white!important}.arcade-logo span{color:var(--arcade-accent);font-size:10px;letter-spacing:.15em;text-transform:uppercase;margin-left:2px}.arcade-topbar-actions{display:flex;gap:7px;margin-left:auto;align-items:center}.arcade-role-switch{display:flex;gap:3px;background:#071624dd;padding:4px;border:1px solid var(--arcade-line);border-radius:16px}.arcade-role-switch button{display:flex;align-items:center;gap:7px;border-color:transparent;background:transparent;padding:8px 13px}.arcade-role-switch button[aria-pressed=true]{background:#164c49;color:#d8fff3}.arcade-status{position:absolute;z-index:3;top:calc(87px + env(safe-area-inset-top));left:24px;right:24px;gap:10px;pointer-events:none}.arcade-stat,.arcade-status{display:flex;align-items:center}.arcade-stat{gap:9px;border:1px solid var(--arcade-line);padding:10px 13px;background:#0b1c2bdb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:14px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:105px}.arcade-stat svg{color:var(--arcade-accent);flex-shrink:0}.arcade-stat>div{display:grid;gap:2px}.arcade-stat span{font-size:10px;color:var(--arcade-muted);font-weight:600}.arcade-stat strong{font-size:18px;line-height:1.1}.arcade-stat--time strong{color:#ffdc9c}.arcade-stat--score{margin-left:auto}.arcade-scoreboard{position:absolute;right:24px;top:155px;z-index:2;padding:12px;border-radius:16px;background:#081a29b3;border:1px solid var(--arcade-line);width:175px}.arcade-scoreboard>div{display:flex;gap:7px;align-items:center;margin:7px 0;font-size:12px}.arcade-player-dot{display:block;width:9px;height:9px;border:1px solid #ffffff77;border-radius:50%;flex-shrink:0}.arcade-player-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:110px}.arcade-player-role{margin-left:auto;color:var(--arcade-muted);display:flex}.arcade-objective{position:absolute;z-index:2;top:158px;left:24px;max-width:360px;pointer-events:none}.arcade-objective>span{display:inline-flex;gap:8px;align-items:center;padding:8px 12px;background:#0b1f30b8;border:1px solid #79b9bd33;border-radius:30px;font-size:12px;color:#d8eeee}.arcade-connection{position:absolute;z-index:10;left:50%;transform:translateX(-50%);top:calc(145px + env(safe-area-inset-top));width:min(90%,440px);border:1px solid #c5a66f88;background:#392e23ed;border-radius:16px;padding:14px;display:flex;gap:12px;align-items:center;box-shadow:0 8px 32px #0007}.arcade-connection>div{flex:1 1}.arcade-connection strong{font-size:13px}.arcade-connection p{font-size:12px;color:#f2d9b1}.arcade-toast{position:absolute;z-index:12;bottom:calc(175px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);max-width:min(90%,480px);padding:12px 17px;border:1px solid #e3b47b6b;background:#322d29f5;color:#ffe3bd;font-size:13px;border-radius:14px;display:flex;align-items:center;gap:12px}.arcade-toast button{min-height:28px;padding:3px;border:0;background:transparent}.arcade-flight-controls{position:absolute;inset:0;z-index:3;pointer-events:none}.arcade-joystick{position:absolute;bottom:calc(27px + env(safe-area-inset-bottom));left:30px;width:136px;height:136px;border:1px solid #7bb8cb77;border-radius:50%;background:radial-gradient(circle,#3b667847,#10253673);box-shadow:inset 0 0 30px #77b6d21a;touch-action:none;pointer-events:auto;display:grid;place-items:center}.arcade-joystick:after,.arcade-joystick:before{content:"";position:absolute;background:#7eb4c32e}.arcade-joystick:before{height:1px;width:100%}.arcade-joystick:after{width:1px;height:100%}.arcade-joystick-knob{width:54px;height:54px;border:1px solid #a6e8e7a8;border-radius:50%;background:linear-gradient(150deg,#5a989dc9,#213d51eb);box-shadow:0 4px 20px #0005;position:relative;z-index:1}.arcade-joystick-directions{position:absolute;inset:0;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr)}.arcade-app .arcade-joystick-directions button{min-width:44px;min-height:44px;padding:0;border:0;background:transparent;border-radius:50%;color:#b7e6e9;z-index:2;font-size:20px}.arcade-joystick-directions button:first-child{grid-area:1/2}.arcade-joystick-directions button:nth-child(2){grid-area:2/1}.arcade-joystick-directions button:nth-child(3){grid-area:2/3}.arcade-joystick-directions button:nth-child(4){grid-area:3/2}.arcade-flight-actions{position:absolute;right:30px;bottom:calc(36px + env(safe-area-inset-bottom));display:grid;gap:10px;justify-items:end;pointer-events:auto}.arcade-flight-actions .arcade-primary{display:flex;align-items:center;justify-content:center;gap:9px;min-width:145px;min-height:54px;font-size:15px;border-radius:18px}.arcade-flight-timer{font-size:12px;padding:7px 12px;background:#0a1c2bc9;border-radius:20px;display:flex;gap:7px;align-items:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.arcade-emote-bar{display:flex;gap:6px}.arcade-emote-bar button{font-size:19px;padding:8px;width:44px}.arcade-keyboard-hint{bottom:22px;transform:translateX(-50%);font-size:11px;color:#b5d0dc8f}.arcade-keyboard-hint,.arcade-return-arrow{position:absolute;left:50%;pointer-events:none}.arcade-return-arrow{top:50%;width:36px;height:36px;display:grid;place-items:center;background:#12464ed9;color:#98ffe3;border-radius:50%;border:1px solid #66efd066}.arcade-factory{position:absolute;z-index:3;top:153px;bottom:24px;left:50%;transform:translateX(-50%);width:min(700px,calc(100% - 48px));background:linear-gradient(145deg,#0b2033f2,#0c1828f0);border:1px solid #86c7d545;box-shadow:0 20px 70px #0009;border-radius:23px;display:flex;flex-direction:column;padding:18px;gap:12px;overflow:auto}.arcade-factory-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.arcade-factory-header h2{font-size:18px}.arcade-stock{display:flex;flex-wrap:wrap;gap:9px}.arcade-stock>span{display:flex;align-items:center;gap:5px;padding:5px 8px;background:#182f42;border-radius:8px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:12px}.arcade-stock svg{color:#9cd9d5}.arcade-factory-grid{display:grid;grid-template-columns:repeat(var(--arcade-columns,8),minmax(0,1fr));gap:4px;flex-shrink:0;background:#06111e;padding:6px;border-radius:12px;border:1px solid var(--arcade-line)}.arcade-app .arcade-tile{min-height:44px;min-width:0;aspect-ratio:1;padding:0;border-radius:7px;background:linear-gradient(135deg,#183448,#112636);border-color:#4b6b7a47;position:relative;display:grid;place-items:center}.arcade-app .arcade-tile--empty{background:#0d1f2d;border-style:dashed}.arcade-app .arcade-tile--source{background:#23605a;color:#baffd7}.arcade-app .arcade-tile--output{background:#49412d;color:#ffe0a3}.arcade-app .arcade-tile--smelter{background:#583c2d;color:#ffd4a3}.arcade-app .arcade-tile--press{background:#39345f;color:#ded3ff}.arcade-tile-arrow{position:absolute;bottom:2px;right:4px;font-size:13px;line-height:1;color:#c7efff}.arcade-tile-flow{position:absolute;width:5px;height:5px;background:#ffd294;box-shadow:0 0 8px #ffb44c;border-radius:2px;left:15%;top:48%;animation:arcade-material 1.2s linear infinite;pointer-events:none}.arcade-app .arcade-tile[aria-pressed=true]{outline:2px solid #c9ffae;outline-offset:-3px}.arcade-factory-tools{display:flex;align-items:stretch;gap:6px;flex-wrap:wrap}.arcade-factory-tools>button{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:10px;padding:8px 5px;min-width:48px}.arcade-factory-tools>button svg{width:21px;height:21px}.arcade-factory-controls{display:flex;gap:8px;align-items:center;justify-content:space-between}.arcade-factory-controls p{font-size:11px;color:var(--arcade-muted);max-width:70%}.arcade-build-summary{display:flex;gap:8px;align-items:center;font-size:11px;color:#cde4eb;min-height:20px}.arcade-upgrades{display:flex;gap:7px;flex-wrap:wrap}.arcade-upgrades button{display:flex;gap:7px;align-items:center;flex:1 1;padding:9px;min-width:100px;font-size:11px}.arcade-upgrades button span{display:grid;gap:3px}.arcade-upgrades button small{color:#b8cdd6;font-size:10px}.arcade-dialog{color:#f1faff;border:1px solid #54788a;border-radius:22px;background:linear-gradient(145deg,#153246,#0a1a2b);box-shadow:0 30px 100px #000a;width:min(470px,calc(100% - 28px));max-height:85dvh;padding:24px;margin:auto;overflow:auto}.arcade-dialog::backdrop{background:#030a17b3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.arcade-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.arcade-dialog h2{font-size:22px}.arcade-dialog-content{display:grid;gap:18px}.arcade-dialog button,.arcade-dialog input,.arcade-dialog select{font:inherit}.arcade-dialog .arcade-roster{display:grid;gap:10px}.arcade-roster>div{display:flex;gap:10px;align-items:center;font-size:14px}.arcade-roster>div small{margin-left:auto;color:var(--arcade-muted)}.arcade-code{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px;border-radius:13px;border:1px dashed #79b4ba80;background:#081b29;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.arcade-code strong{font-size:23px;letter-spacing:.16em}.arcade-help-section{display:grid;gap:8px}.arcade-help-section p{font-size:13px;color:#bad0db}.arcade-palette{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.arcade-app .arcade-color{min-width:44px;min-height:50px;padding:5px;position:relative;background:#0b1c2c;border:1px solid #7c9ba65c}.arcade-color>span{display:block;width:25px;height:25px;border-radius:50%;margin:auto;box-shadow:inset 0 0 0 2px #ffffff44}.arcade-color small{display:block;font-size:9px;margin-top:4px;color:#c8dde2}.arcade-color[aria-pressed=true]{outline:2px solid var(--arcade-accent)}.arcade-dialog-links{display:grid;gap:14px;font-size:13px}.arcade-result{position:absolute;inset:0;z-index:7;display:grid;place-items:center;padding:24px;background:#05101ae3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow:auto}.arcade-result-card{max-width:470px;width:100%;text-align:center;padding:30px;border-radius:28px;background:radial-gradient(ellipse at top,#1d4b50,transparent 65%),#102335;border:1px solid #75d9c56b;box-shadow:0 24px 100px #0008}.arcade-result-card>svg{margin:5px auto 15px}.arcade-result-card h1{font-size:36px;margin:8px 0 12px}.arcade-result-score{font-size:60px;font-weight:850;line-height:1.1;color:#a9ffe0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin:20px 0 4px}.arcade-result-stats{display:flex;justify-content:center;gap:30px;margin:25px 0}.arcade-result-stats>div{display:grid;gap:4px;font-size:12px;color:#bad7dd}.arcade-result-stats strong{font-size:24px;color:#f5feff}.arcade-result-actions{display:grid;gap:10px}.arcade-result-actions .arcade-primary{min-height:52px}.arcade-result-colors{display:flex;justify-content:center;gap:5px;margin:16px 0}.arcade-result-colors span{width:16px;height:16px;border-radius:50%;border:1px solid #ffffff66}@keyframes arcade-material{0%{transform:translateX(0)}to{transform:translateX(24px)}}@media(min-width:1100px){.arcade-joystick{opacity:.74}.arcade-factory{width:650px;left:45%}.arcade-factory-grid{max-height:calc(100vh - 420px)}.arcade-tile{max-height:70px}}@media(max-width:700px){.arcade-entry{grid-template-columns:1fr;gap:26px;align-content:start;padding:28px 22px}.arcade-entry-art{max-width:450px}.arcade-entry-art>svg{width:65px;height:65px;margin-bottom:6px}.arcade-entry-art h1{font-size:38px;margin:10px 0 13px;max-width:340px}.arcade-entry-art p{font-size:14px}.arcade-entry-badges{margin-top:16px;gap:15px}.arcade-entry-badges>span{font-size:11px}.arcade-entry-card{padding:22px;max-width:500px}.arcade-topbar{padding:calc(8px + env(safe-area-inset-top)) 12px 10px;gap:7px;flex-wrap:wrap}.arcade-logo{font-size:16px;gap:6px}.arcade-logo>svg{width:24px;height:24px}.arcade-logo span{font-size:8px}.arcade-topbar-actions{gap:5px}.arcade-topbar-actions .arcade-room-button{display:none}.arcade-role-switch{order:3;width:100%;padding:3px;justify-content:center}.arcade-role-switch button{flex:1 1;justify-content:center;padding:7px 12px;min-height:40px}.arcade-status{top:calc(115px + env(safe-area-inset-top));left:12px;right:12px;gap:5px}.arcade-stat{min-width:0;flex:1 1;padding:8px;gap:6px;border-radius:11px}.arcade-stat svg{width:17px;height:17px}.arcade-stat span{font-size:9px;white-space:nowrap}.arcade-stat strong{font-size:15px}.arcade-stat--score{margin-left:0}.arcade-scoreboard{display:none}.arcade-objective{top:calc(178px + env(safe-area-inset-top));left:12px;right:12px;max-width:none;text-align:center}.arcade-objective>span{font-size:10px;padding:6px 10px}.arcade-joystick{width:132px;height:132px;bottom:calc(24px + env(safe-area-inset-bottom));left:20px}.arcade-flight-actions{right:16px;bottom:calc(25px + env(safe-area-inset-bottom));gap:8px}.arcade-flight-actions .arcade-primary{min-width:135px;min-height:50px;font-size:13px;padding:11px;border-radius:15px}.arcade-flight-timer{font-size:10px;padding:6px 9px}.arcade-keyboard-hint{display:none}.arcade-emote-bar{gap:5px}.arcade-emote-bar button{width:44px;padding:8px;min-height:44px}.arcade-factory{top:calc(178px + env(safe-area-inset-top));bottom:calc(8px + env(safe-area-inset-bottom));width:calc(100% - 16px);padding:11px;border-radius:16px;gap:9px}.arcade-factory-header h2{font-size:14px}.arcade-factory-header{gap:5px}.arcade-stock{gap:4px}.arcade-stock>span{font-size:10px;padding:4px 5px;gap:3px}.arcade-stock svg{width:13px;height:13px}.arcade-factory-grid{gap:3px;padding:4px}.arcade-app .arcade-tile{min-height:38px;border-radius:5px}.arcade-tile>svg{width:20px;height:20px}.arcade-factory-tools{gap:4px}.arcade-factory-tools>button{font-size:9px;padding:6px 3px;min-width:42px;min-height:49px}.arcade-factory-controls p{font-size:10px}.arcade-factory-controls button{font-size:11px;min-height:44px;padding:8px 10px}.arcade-upgrades{gap:4px}.arcade-upgrades button{font-size:10px;min-width:88px;padding:7px 5px;gap:4px}.arcade-upgrades button small{font-size:9px}.arcade-upgrades button svg{width:16px}.arcade-dialog{padding:20px}.arcade-result{padding:16px}.arcade-result-card{padding:24px}.arcade-result-card h1{font-size:30px}.arcade-result-score{font-size:50px}.arcade-connection{top:calc(178px + env(safe-area-inset-top));padding:12px}.arcade-toast{bottom:calc(180px + env(safe-area-inset-bottom));font-size:12px}}@media(max-width:370px){.arcade-logo span{display:none}.arcade-topbar-actions{gap:3px}.arcade-status{gap:4px}.arcade-stat{padding:7px 5px;gap:4px}.arcade-stat strong{font-size:14px}.arcade-stat svg{width:14px}.arcade-joystick{left:14px}.arcade-flight-actions{right:12px}.arcade-factory-tools>button{min-width:38px}.arcade-app .arcade-tile{min-height:33px}}@media(prefers-reduced-motion:reduce){.arcade-app *{animation:none!important;scroll-behavior:auto!important}.arcade-entry-art>svg{transform:none}.arcade-world:after{box-shadow:inset 0 0 60px #02071166}}.arcade-app .arcade-fire{font-size:30px;line-height:1;color:#fff3d8;border-color:#e9b27588;background:#654731;touch-action:none;width:64px;height:51px}.arcade-shield-count{position:absolute;font-size:9px;bottom:2px;right:3px}.arcade-emote-bar>button{position:relative;display:grid;place-items:center}.arcade-tile-jam{position:absolute;right:3px;top:2px;color:#ffd399;font-weight:900;font-size:13px}.arcade-lobby{background:#05101a9e;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.arcade-lobby .arcade-result-card{background:linear-gradient(145deg,#1b414ded,#0c2236f5)}.arcade-app .arcade-entry-form>.arcade-role-switch{order:0}.arcade-app .arcade-entry-form>.arcade-role-switch button{flex:1 1;justify-content:center}