:root{--ink:#050806;--deep:#07100d;--green:#142820;--green-2:#203a2f;--cream:#f4dfaa;--paper:#d9c58f;--amber:#ffbe3d;--red:#e6382f;--red-dark:#711d1a;--cyan:#5de8df;--line:#ffbe3d6b;--font-display:"Arial Narrow", "Bahnschrift Condensed", Impact, sans-serif;--font-mono:Consolas, "Courier New", monospace}*{box-sizing:border-box}html,body,#scene{width:100%;height:100%;margin:0;overflow:hidden}body{color:var(--cream);font-family:var(--font-mono);overscroll-behavior:none;background:radial-gradient(circle at 50% 30%,#173127 0,#07100d 46%,#020403 100%)}#scene,#scene canvas{display:block;position:fixed;inset:0}button{font:inherit}button:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.hud{z-index:10;-webkit-user-select:none;user-select:none;position:fixed}.topbar{pointer-events:none;background:linear-gradient(#020705e0,#0000);grid-template-columns:1fr auto;align-items:start;min-height:76px;padding:16px 18px;display:grid;top:0;left:0;right:0}.brand-mini{font:700 13px var(--font-display);letter-spacing:3px;color:#d9c58f;align-items:center;gap:10px;padding-top:11px;display:flex}.brand-dot{background:var(--red);width:9px;height:9px;box-shadow:0 0 12px var(--red);border-radius:50%}.counters{gap:8px;display:none}.counter{text-align:center;border:1px solid var(--line);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);background:linear-gradient(#12261ff0,#050c09f0);min-width:92px;padding:8px 14px 9px;box-shadow:inset 0 0 16px #ffbe3d0d}.counter span{color:#7f978c;letter-spacing:2px;font-size:9px;display:block}.counter strong{color:var(--amber);text-shadow:0 0 14px #ffbe3d7a;margin-top:1px;font-size:24px;line-height:1;display:block}.win-counter strong{color:var(--cyan);text-shadow:0 0 14px #5de8df80}.counter.bump strong{animation:.35s counter-bump}@keyframes counter-bump{50%{filter:brightness(1.5);transform:scale(1.32)}}.top-actions{pointer-events:auto;justify-self:end;gap:8px;display:flex}.icon-btn{border:1px solid var(--line);width:42px;height:42px;color:var(--cream);cursor:pointer;background:#07120ee0;border-radius:3px;padding:0;font-weight:700;transition:all .18s;box-shadow:inset 0 0 0 1px #e6382f1f}.icon-btn:hover{color:#fff;border-color:var(--amber);background:#711d1abf;box-shadow:0 0 18px #e6382f40}.overlay-screen{z-index:20;isolation:isolate;background:linear-gradient(90deg,#020503d6 0,#02050370 27%,#0000 58%),radial-gradient(at 50% 42%,#0000 44%,#0205036b 100%);justify-content:flex-start;align-items:center;padding:84px clamp(20px,3vw,48px) 52px;transition:opacity .65s,visibility .65s;display:flex;position:fixed;inset:0}.overlay-screen:before{content:"";pointer-events:none;opacity:.08;background:repeating-linear-gradient(0deg,#0000 0 5px,#ffffff0b 5px 6px);position:absolute;inset:0}body:not(.attract-mode) #attract{opacity:0;visibility:hidden;pointer-events:none}.attract-passport{text-align:left;border:1px solid #ffbe3d4d;border-left:4px solid var(--red);clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,0 100%);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:linear-gradient(135deg,#0a1812e8,#030806bd);width:min(350px,34vw);padding:22px 23px 24px;position:relative;box-shadow:0 22px 60px #00000057,inset 0 0 0 1px #ffffff06}.attract-seal{color:#ef6756b8;font:700 8px/1.3 var(--font-mono);letter-spacing:1.2px;border:1px solid #e6382f73;margin-bottom:24px;padding:5px 8px;display:inline-block}.tour-caption{color:var(--cyan);letter-spacing:1.8px;margin:0 0 9px;font-size:9px;transition:opacity .18s}.eyebrow{color:var(--amber);letter-spacing:2.1px;text-shadow:0 0 16px #ffbe3d6b;margin:0 0 8px;font-size:8px;line-height:1.5}.attract-passport h1{color:#f6e7be;font:700 clamp(38px, 3.5vw, 50px)/.9 var(--font-display);letter-spacing:clamp(1px,.2vw,2px);white-space:nowrap;text-shadow:0 3px #6c211b,0 0 28px #ffbe3d4d;margin:0}.attract-passport h1 span{color:var(--red)}.lead{color:#a9bbb1;letter-spacing:1.4px;margin:13px 0 23px;font-size:12px;line-height:1.5}.key-hint{color:#61766b;letter-spacing:1px;margin:15px 0 0;font-size:8px;line-height:1.5}.primary-btn,.secondary-btn{border:1px solid var(--amber);color:#24130b;cursor:pointer;letter-spacing:2px;background:linear-gradient(#ffcf64,#d98a22);border-radius:3px;padding:13px 24px;font-weight:800;transition:all .18s;position:relative;box-shadow:0 0 28px #ffbe3d3d,inset 0 1px #ffffff73}.primary-btn:hover{filter:brightness(1.12);transform:translateY(-2px);box-shadow:0 0 36px #ffbe3d61}.secondary-btn{color:var(--cream);box-shadow:none;background:0 0;margin-top:16px}.secondary-btn:hover{background:#e6382f29}.bottom{left:18px;right:18px;bottom:max(18px, env(safe-area-inset-bottom));pointer-events:none;grid-template-columns:1fr minmax(280px,520px) 1fr;align-items:end;gap:16px;display:grid}.coin-btn,.spin-btn{pointer-events:auto;cursor:pointer;border:1px solid var(--line);width:max-content;min-height:48px;color:var(--cream);letter-spacing:1px;background:linear-gradient(#173026f5,#050c09f5);border-radius:4px;padding:10px 16px;font-weight:700;transition:all .16s;box-shadow:inset 0 0 14px #ffbe3d14}.coin-btn:hover{border-color:var(--amber);box-shadow:0 0 18px #ffbe3d2e}.coin-btn span{color:var(--amber);font-size:18px}kbd{color:#889b91;font:600 9px var(--font-mono);background:#00000040;border:1px solid #d9c58f57;border-radius:2px;padding:2px 5px;display:inline-block}.spin-btn{color:#fff;background:linear-gradient(#a92721,#5f1615);border-color:#f07255;justify-self:end;min-width:160px;box-shadow:inset 0 1px #fff3,0 0 24px #e6382f38}.spin-btn:hover{filter:brightness(1.18);transform:translateY(-1px)}.spin-btn:disabled{filter:grayscale(.65);cursor:not-allowed;opacity:.68;transform:none}.spin-btn kbd{color:#e6b4a5;margin-left:8px}.spin-led{background:var(--amber);width:8px;height:8px;box-shadow:0 0 12px var(--amber);border-radius:50%;margin-right:9px;display:inline-block}body.spinning .spin-led{animation:.18s linear infinite alternate blink}@keyframes blink{to{opacity:.2}}.status-wrap{text-align:center;background:linear-gradient(90deg,#0000,#060f0b80,#0000);border-top:1px solid #6a827524;align-self:center;padding:5px 13px 3px}.status{color:#9bada3;letter-spacing:1.25px;text-shadow:0 1px #000;min-height:18px;font-size:10px}.status.win{color:var(--amber);text-shadow:0 0 14px #ffbe3db3;font-weight:700}.status.error{color:#ff8378}.meter{background:#69827421;width:100%;height:4px;margin-top:7px;overflow:hidden}.meter i{background:linear-gradient(90deg, var(--red), var(--amber), var(--cyan));width:0;height:100%;box-shadow:0 0 9px var(--amber);transition:width .1s linear;display:block}.drawer{z-index:35;border-left:1px solid var(--line);background:linear-gradient(160deg,#122920fb,#040907fc);width:min(390px,94vw);padding:26px 24px;transition:transform .28s;position:fixed;top:0;bottom:0;right:0;overflow:auto;transform:translate(105%);box-shadow:-24px 0 70px #0000008c,inset 1px 0 #e6382f2e}.drawer:not(.open){visibility:hidden}.drawer.open{visibility:visible;transform:translate(0)}.drawer-head{justify-content:space-between;align-items:flex-start;margin-bottom:22px;display:flex}.drawer-head small,.modal-card>small{color:var(--red);letter-spacing:2px;font-size:9px}.drawer h2,.modal-card h2{color:var(--cream);font:700 28px var(--font-display);letter-spacing:2px;margin:4px 0 0}.drawer-note{color:#7f9589;font-size:11px;line-height:1.65}.payout-rows{gap:7px;margin:8px 0 22px;display:grid}.payline-guide{grid-template-columns:1fr 1fr;gap:7px;margin-bottom:10px;display:grid}.payline-guide-title{background:#5de8df0f;border:1px solid #5de8df47;grid-column:1/-1;justify-content:space-between;gap:12px;padding:10px 11px;display:flex}.payline-guide-title b{color:var(--cyan);font:700 12px var(--font-display);letter-spacing:1.5px}.payline-guide-title span{color:#71897d;text-align:right;font-size:8px}.payline-guide-item{border:1px solid color-mix(in srgb, var(--payline-color) 38%, transparent);background:#0000002b;align-items:center;gap:8px;min-width:0;padding:7px;display:flex}.payline-guide-item svg{flex:0 0 52px;width:52px;height:25px;overflow:visible}.payline-guide-item polyline{fill:none;stroke:var(--payline-color);stroke-width:2.4px;filter:drop-shadow(0 0 3px var(--payline-color))}.payline-guide-item circle{fill:var(--payline-color)}.payline-guide-item span{min-width:0}.payline-guide-item b,.payline-guide-item small{display:block}.payline-guide-item b{color:var(--cream);font:600 10px var(--font-display);letter-spacing:.7px}.payline-guide-item small{color:#71897d;text-overflow:ellipsis;white-space:nowrap;font-size:7px;overflow:hidden}.payout-row{background:#0000002e;border:1px solid #ffbe3d2b;grid-template-columns:48px 1fr auto;align-items:center;gap:12px;padding:9px;display:grid}.payout-icon{object-fit:cover;background:#f1dfaa;border-radius:4px;width:44px;height:44px}.payout-row b{font:600 15px var(--font-display);letter-spacing:1px;display:block}.payout-row small{color:#779085;font-size:9px}.payout-value{color:var(--amber);font-size:18px;font-weight:700}.toggle-row{cursor:pointer;border-bottom:1px solid #ffbe3d1f;justify-content:space-between;align-items:center;gap:18px;padding:15px 0;display:flex}.toggle-row span{gap:4px;display:grid}.toggle-row strong{font:600 15px var(--font-display);letter-spacing:1px}.toggle-row small{color:#71897d;font-size:9px;line-height:1.45}.toggle-row input{opacity:0;position:absolute}.toggle-row i{background:#07100d;border:1px solid #52695e;border-radius:2px;flex:none;width:44px;height:22px;position:relative}.toggle-row i:after{content:"";background:#65786e;width:14px;height:14px;transition:all .16s;position:absolute;top:3px;left:3px}.toggle-row input:checked+i{border-color:var(--amber);background:#711d1a80}.toggle-row input:checked+i:after{background:var(--amber);box-shadow:0 0 9px var(--amber);left:25px}.settings-section-title{color:#667d71;letter-spacing:2px;margin:23px 0 4px;font-size:8px}.select-row{border-bottom:1px solid #ffbe3d1f;justify-content:space-between;align-items:center;gap:16px;padding:15px 0;display:flex}.select-row>span{gap:4px;display:grid}.select-row strong{font:600 15px var(--font-display);letter-spacing:1px}.select-row small{color:#71897d;font-size:9px;line-height:1.45}.select-row select{min-width:108px;color:var(--cream);font:700 10px var(--font-mono);letter-spacing:1px;cursor:pointer;background:#07100d;border:1px solid #ffbe3d61;border-radius:2px;padding:8px 28px 8px 10px}.select-row select:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.graphics-summary{color:#789387;letter-spacing:.65px;background:#5de8df0a;border-left:2px solid #5de8df80;margin:12px 0 2px;padding:9px 10px;font-size:8px;line-height:1.55}.range-row{border-bottom:1px solid #ffbe3d1f;gap:11px;padding:15px 0;display:grid}.range-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.range-head>span{gap:4px;display:grid}.range-head strong{font:600 15px var(--font-display);letter-spacing:1px}.range-head small{color:#71897d;font-size:9px;line-height:1.45}.range-head output{min-width:54px;color:var(--amber);font:700 18px var(--font-mono);text-align:right}.range-row input[type=range]{width:100%;height:18px;accent-color:var(--amber);cursor:pointer;margin:0}.math-summary{color:#8ba69a;letter-spacing:.6px;background:#5de8df0b;border:1px solid #5de8df38;margin:13px 0 2px;padding:10px 11px;font-size:9px;line-height:1.55}.modal-wrap{z-index:40;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;visibility:hidden;background:#010402c2;place-items:center;padding:18px;transition:all .22s;display:grid;position:fixed;inset:0}.modal-wrap.open{opacity:1;visibility:visible}.modal-card{text-align:center;border:1px solid var(--line);clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);background:linear-gradient(145deg,#163127,#050b08);width:min(570px,96vw);padding:30px;position:relative;box-shadow:0 28px 90px #000000a6,inset 0 0 0 1px #e6382f2e}.modal-card .modal-close{position:absolute;top:12px;right:12px}.modal-card>p{color:#93a99e;font-size:12px;line-height:1.65}.help-grid{grid-template-columns:1fr 1fr;gap:8px;margin:22px 0;display:grid}.help-grid div{background:#0003;border:1px solid #ffbe3d24;padding:16px 8px}.help-grid kbd{color:var(--amber);font-size:12px}.help-grid p{color:#82988d;margin:8px 0 0;font-size:10px}.modal-card .primary-btn{margin-top:12px}.toast{opacity:0;pointer-events:none;color:#aebfb5;border-left:3px solid var(--amber);letter-spacing:.8px;background:linear-gradient(90deg,#07120ef0,#07120e9e);width:min(290px,100vw - 36px);padding:9px 12px;font-size:9px;line-height:1.45;transition:all .25s;top:84px;left:18px;transform:translate(-12px)}.toast:before{content:"СИГНАЛ КОНТУРА";color:#71887c;letter-spacing:1.5px;margin-bottom:3px;font-size:7px;display:block}.toast.show{opacity:1;transform:translate(0)}.toast.big{color:#f6dfaa;border-left-color:var(--red);font:700 11px/1.45 var(--font-mono);letter-spacing:1px;box-shadow:12px 0 30px #e6382f17}.fps-counter{opacity:0;visibility:hidden;color:#849a8f;font-variant-numeric:tabular-nums;pointer-events:none;background:#040b08d1;border:1px solid #ffbe3d33;grid-template-columns:auto auto;align-items:baseline;gap:0 7px;min-width:92px;padding:7px 9px;transition:opacity .2s;display:grid;top:72px;right:18px}.fps-counter.visible{opacity:1;visibility:visible}.fps-counter span{color:#657b70;letter-spacing:1.4px;font-size:7px}.fps-counter strong{color:var(--cyan);font:700 20px/1 var(--font-mono);text-align:right;grid-area:1/2/3}.fps-counter small{letter-spacing:.6px;font-size:7px}.fps-counter[data-tone=warn] strong{color:var(--amber)}.fps-counter[data-tone=bad] strong{color:#ff7568}#buildTag{z-index:5;color:#78918466;letter-spacing:1px;pointer-events:none;font-size:8px;position:fixed;bottom:4px;right:9px}body.attract-mode .topbar,body.attract-mode .bottom,body.attract-mode #buildTag{opacity:0;pointer-events:none}.topbar,.bottom,#buildTag{transition:opacity .35s}body.panel-open .bottom{opacity:.22;pointer-events:none}@media (width<=760px){.topbar{grid-template-columns:1fr auto;padding:10px}.brand-mini{display:none}.counters{justify-self:start;gap:5px;display:none}.counter{min-width:67px;padding:7px 7px 8px}.counter span{letter-spacing:1px;font-size:7px}.counter strong{font-size:19px}.top-actions{grid-column:2}.icon-btn{width:38px;height:38px}.bottom{grid-template-columns:auto 1fr auto;gap:7px;left:10px;right:10px}.coin-btn,.spin-btn{min-width:0;min-height:44px;padding:9px 11px;font-size:11px}.coin-btn kbd,.spin-btn kbd{display:none}.status{letter-spacing:.5px;font-size:9px}.spin-led{margin-right:5px}.overlay-screen{padding:80px 14px max(26px, env(safe-area-inset-bottom));background:linear-gradient(0deg,#020503f0 0,#0205038f 34%,#0000 68%);justify-content:center;align-items:flex-end}.attract-passport{text-align:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);width:100%;max-width:430px;padding:17px 18px 19px}.attract-seal{margin-bottom:13px}.tour-caption{font-size:8px}.eyebrow{letter-spacing:1.5px;font-size:7px}.attract-passport h1{font-size:clamp(38px,13vw,55px)}.lead{margin-bottom:18px}.key-hint{display:none}.toast{width:min(260px,100vw - 20px);top:58px;left:10px}.fps-counter{min-width:82px;top:58px;right:10px}}@media (width<=430px){.help-grid{grid-template-columns:1fr 1fr}.modal-card{padding:26px 18px 22px}.coin-btn{font-size:0}.coin-btn span{font-size:18px}.status-wrap{min-width:0}.payline-guide{grid-template-columns:1fr}.payline-guide-title{grid-column:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}
