@font-face{font-family:Anton;src:url(../fonts/Anton.ttf) format("truetype");font-display:swap}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;height:100%;overflow:hidden;background:#0b0612;color:#fff;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;touch-action:none;user-select:none;-webkit-user-select:none;overscroll-behavior:none}
canvas#game{position:fixed;inset:0;display:block}
#hud{position:fixed;inset:0;pointer-events:none;z-index:2}
#minimap{position:absolute;left:calc(10px + env(safe-area-inset-left));top:calc(10px + env(safe-area-inset-top));width:118px;height:118px;border-radius:50%;border:3px solid #a855f7;box-shadow:0 0 0 2px #000,0 4px 14px rgba(0,0,0,.6);background:#111}
#topr{position:absolute;right:calc(12px + env(safe-area-inset-right));top:calc(10px + env(safe-area-inset-top));text-align:right}
#cash{font:30px Anton,Impact,sans-serif;color:#c4f542;text-shadow:2px 2px 0 #000,0 0 8px rgba(0,0,0,.8);letter-spacing:1px}
#stars{font-size:20px;letter-spacing:2px;color:rgba(255,255,255,.25);text-shadow:1px 1px 0 #000}#stars .on{color:#fff;text-shadow:0 0 6px #fff,1px 1px 0 #000}
.bars{display:flex;gap:4px;justify-content:flex-end;margin-top:4px}.bar{width:70px;height:7px;background:rgba(0,0,0,.6);border:1px solid #000}.bar i{display:block;height:100%;background:#22c55e;width:100%}.bar.ar i{background:#38bdf8}
#objective{position:absolute;left:50%;transform:translateX(-50%);bottom:calc(14px + env(safe-area-inset-bottom));max-width:min(52vw,620px);text-align:center;font-size:15px;line-height:1.3;background:rgba(10,5,18,.72);padding:7px 14px;border-radius:10px;border-left:3px solid #c4f542;text-shadow:1px 1px 0 #000}
#objective:empty{display:none}
#timer{position:absolute;right:calc(14px + env(safe-area-inset-right));top:calc(110px + env(safe-area-inset-top));font:26px Anton,Impact,sans-serif;color:#facc15;text-shadow:2px 2px 0 #000}
#speedo{position:absolute;left:calc(140px + env(safe-area-inset-left));top:calc(20px + env(safe-area-inset-top));font:24px Anton,Impact,sans-serif;text-shadow:2px 2px 0 #000}#speedo small{font-size:12px;font-family:sans-serif}
#fps{position:absolute;left:10px;bottom:4px;font-size:11px;opacity:.6}
#toasts{position:absolute;left:calc(10px + env(safe-area-inset-left));top:calc(140px + env(safe-area-inset-top));display:flex;flex-direction:column;gap:6px;max-width:60vw}
.toast{background:rgba(10,5,18,.85);border-left:3px solid #a855f7;padding:6px 10px;border-radius:6px;font-size:13px;transition:opacity .4s,transform .4s}.toast.out{opacity:0;transform:translateX(-20px)}
#banner{position:absolute;left:0;right:0;top:28%;text-align:center;opacity:0}
#banner.show{animation:ban 3s ease forwards}#banner .bt{font:clamp(34px,8vw,64px) Anton,Impact,sans-serif;letter-spacing:2px;text-shadow:3px 3px 0 #000}#banner .bs{font-size:16px;text-shadow:1px 1px 0 #000;margin-top:4px}
@keyframes ban{0%{opacity:0;transform:scale(1.4)}10%{opacity:1;transform:scale(1)}80%{opacity:1}100%{opacity:0}}
#joyzone{position:fixed;left:0;top:25%;bottom:0;width:50%;z-index:3}
#joy{position:fixed;width:120px;height:120px;border-radius:50%;border:2px solid rgba(255,255,255,.35);background:rgba(168,85,247,.12);display:none;z-index:4;pointer-events:none}
#knob{position:absolute;left:35px;top:35px;width:50px;height:50px;border-radius:50%;background:rgba(196,245,66,.55);border:2px solid #c4f542}
#btns{position:fixed;right:calc(10px + env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));z-index:5;display:grid;grid-template-columns:auto auto;grid-template-areas:"spr atk" ". act";gap:8px;align-items:center}
.tb{pointer-events:auto;border:2px solid rgba(255,255,255,.3);background:rgba(20,10,30,.6);color:#fff;border-radius:50%;width:54px;height:54px;font:13px Anton,Impact,sans-serif;letter-spacing:.5px;line-height:1;touch-action:none}
.tb.big{width:74px;height:74px;font-size:15px;border-color:#a855f7;background:rgba(126,34,206,.45)}.tb.lime{border-color:#c4f542;background:rgba(132,204,22,.35)}.tb small{font-size:9px}
.tb.down{transform:scale(.92);filter:brightness(1.5)}
#btnPh,#btnMap{position:fixed;top:calc(10px + env(safe-area-inset-top));font-size:20px;width:46px;height:46px}#btnPh,#btnMap,#btnMus,#btnNet{position:fixed;top:calc(10px + env(safe-area-inset-top));font-size:20px;width:46px;height:46px}#btnPh{right:calc(170px + env(safe-area-inset-right))}#btnMap{right:calc(222px + env(safe-area-inset-right))}#btnMus{right:calc(274px + env(safe-area-inset-right))}#btnNet{right:calc(326px + env(safe-area-inset-right))}#btnMus.off{opacity:.6;border-color:#ef4444}#btnNet.on{border-color:#c4f542;background:rgba(132,204,22,.35)}#btnAtk{grid-area:atk}#btnAct{grid-area:act}#btnSpr{grid-area:spr}
body.pad #btns,body.pad #joyzone{display:none}
@media (hover:hover) and (pointer:fine){#joyzone{display:none}#btns{opacity:.5}}
.overlay{touch-action:pan-y;position:fixed;inset:0;z-index:10;display:none;align-items:center;justify-content:center;background:rgba(5,2,10,.7);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);padding:12px;padding-top:calc(12px + env(safe-area-inset-top))}
.overlay.open{display:flex}
#menu .mhead,#menu .mbody{width:min(560px,96vw)}
#menu{flex-direction:column}
.mhead{display:flex;align-items:center;gap:12px;background:linear-gradient(90deg,#3b0764,#1a0b2e);padding:10px 12px;border-radius:14px 14px 0 0;border:1px solid #6b21a8;border-bottom:3px solid #c4f542}
.mhead img{width:46px;height:46px;border-radius:10px;object-fit:cover;background:#000}.mt{font:24px Anton,Impact,sans-serif;letter-spacing:1px}.ms{font-size:12px;opacity:.8}
.mhead .x{margin-left:auto;background:none;border:1px solid rgba(255,255,255,.3);color:#fff;border-radius:8px;width:36px;height:36px;font-size:16px}
.mbody{background:rgba(16,8,26,.97);border:1px solid #3b0764;border-top:0;border-radius:0 0 14px 14px;max-height:72vh;overflow:auto;padding:8px;touch-action:pan-y;-webkit-overflow-scrolling:touch}
.item{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px;text-align:left;background:#1d1030;color:#fff;border:1px solid #2e1a47;border-radius:10px;padding:11px 12px;margin:0 0 6px;font-size:15px}
.item small{display:block;font-size:12px;opacity:.65;margin-top:2px}.item .ir{font:15px Anton,Impact,sans-serif;color:#c4f542;white-space:nowrap}.item.dis{opacity:.45}
.item:focus,.gp:focus{outline:3px solid #c4f542;outline-offset:1px}
.grid .mbody{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.grid .item{flex-direction:column;justify-content:center;text-align:center;margin:0;padding:14px 4px;font-size:13px}.grid .ai{font-size:28px;display:block;margin-bottom:4px}
@media (max-width:380px){.grid .mbody{grid-template-columns:repeat(3,1fr)}}
.sw{display:inline-block;width:14px;height:14px;border-radius:4px;margin-right:8px;vertical-align:-2px;border:1px solid rgba(255,255,255,.3)}
#bigmap{width:100%;max-width:528px;aspect-ratio:1;display:block;margin:0 auto;border-radius:10px;touch-action:none}
.legend{display:flex;flex-wrap:wrap;gap:10px;font-size:12px;padding:8px 2px}
.stats{display:grid;grid-template-columns:1fr 1fr;gap:6px}.stats div{background:#1d1030;border-radius:8px;padding:8px 10px;display:flex;justify-content:space-between;font-size:13px}.stats b{color:#c4f542}
.ctl{font-size:14px;line-height:1.45}.ctl h3{margin:10px 0 4px;color:#c4f542;font-family:Anton,Impact,sans-serif;font-weight:normal;letter-spacing:1px}.ctl table{width:100%;border-collapse:collapse;font-size:13px}.ctl td{padding:4px 6px;border-bottom:1px solid #2e1a47}.ctl td:first-child{color:#d8b4fe;white-space:nowrap}
#dialog{align-items:flex-end;background:rgba(0,0,0,.35);backdrop-filter:none}
.dbox{width:min(720px,98vw);display:flex;gap:12px;background:rgba(16,8,26,.96);border:2px solid #a855f7;border-radius:16px;padding:14px;margin-bottom:calc(10px + env(safe-area-inset-bottom));font-size:16px;line-height:1.4;cursor:pointer}
.dav{flex:0 0 58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;font:22px Anton,Impact,sans-serif;color:#000;border:3px solid #fff}
.dn{font:18px Anton,Impact,sans-serif;letter-spacing:1px;margin-bottom:2px}.dh{font-size:11px;opacity:.55;margin-top:6px}
#start{background:radial-gradient(ellipse at top,#3b0764 0%,#0b0612 70%);overflow:auto;align-items:flex-start}
.sbox{width:min(460px,96vw);margin:auto;text-align:center;display:flex;flex-direction:column;gap:10px;padding:10px 0}
.slogo{width:110px;height:110px;margin:0 auto;border-radius:22px;box-shadow:0 0 40px rgba(168,85,247,.6)}
.sbox h1{font:clamp(40px,11vw,60px) Anton,Impact,sans-serif;margin:0;letter-spacing:2px;line-height:1}.sbox h2{font:32px Anton,Impact,sans-serif;margin:0}
.tag{font:20px Anton,Impact,sans-serif;color:#c4f542;letter-spacing:6px;margin-top:-6px}
.sbox button,.sbox a{font:20px Anton,Impact,sans-serif;letter-spacing:1px;padding:14px;border-radius:12px;border:2px solid #a855f7;background:#7e22ce;color:#fff;text-decoration:none}
.sbox .big small{display:block;font:12px system-ui,sans-serif;opacity:.8;letter-spacing:0;margin-top:3px}
.sbox .alt{background:#c4f542;color:#111;border-color:#c4f542}.sbox .ghost{background:transparent;font-size:15px;padding:10px;border-color:rgba(255,255,255,.25)}
.tiny{font-size:12px;opacity:.6}
.choose{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sbox .card{background:#1d1030;border:2px solid #3b0764;font-size:18px;padding:12px 8px}.sbox .card small{display:block;font:12px system-ui,sans-serif;opacity:.75;margin-top:4px;letter-spacing:0}.sbox .card.sel{border-color:#c4f542;background:#2e1065}
#custom{display:flex;flex-direction:column;gap:8px;font-size:14px}#custom input{font-size:16px;padding:8px;border-radius:8px;border:1px solid #6b21a8;background:#1d1030;color:#fff;width:60%;margin-left:6px}
.row{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap}.sbox .sk{width:34px;height:34px;padding:0;border-radius:50%;border:3px solid #333}.sbox .sk.sel{border-color:#c4f542}
.sbox .hr{font-size:14px;padding:6px 12px;background:#1d1030;border-color:#3b0764}.sbox .hr.sel{border-color:#c4f542}
#rotate{display:none;position:fixed;left:50%;top:40%;transform:translate(-50%,-50%);z-index:20;background:#1d1030;border:2px solid #a855f7;border-radius:12px;padding:12px 16px;text-align:center;font-size:14px;width:80vw}
#rotate button{display:block;margin:8px auto 0;background:#c4f542;border:0;border-radius:8px;padding:6px 18px;font-weight:bold}
@media (orientation:portrait) and (max-width:600px){#toasts{top:calc(196px + env(safe-area-inset-top))}#objective{font-size:13px;bottom:auto;top:calc(136px + env(safe-area-inset-top));max-width:94vw}}
@media (max-height:520px){.slogo{width:60px;height:60px;border-radius:14px}.sbox h1{font-size:38px}.sbox{gap:6px}.sbox button,.sbox a{padding:9px;font-size:17px}.tag{font-size:16px}.mbody{max-height:62vh}}
@media (orientation:portrait){#btnPh{right:auto;left:calc(140px + env(safe-area-inset-left))}#btnMap{right:auto;left:calc(192px + env(safe-area-inset-left))}#btnMus{right:auto;left:calc(140px + env(safe-area-inset-left));top:calc(62px + env(safe-area-inset-top))}#btnNet{right:auto;left:calc(192px + env(safe-area-inset-left));top:calc(62px + env(safe-area-inset-top))}#speedo{top:calc(114px + env(safe-area-inset-top));left:calc(140px + env(safe-area-inset-left))}}

#btnMus,#btnNet{pointer-events:auto}body.pad #btnMus,body.pad #btnNet{display:block}
.netlist div{display:flex;justify-content:space-between;background:#1d1030;border-radius:8px;padding:8px 10px;margin-bottom:6px;font-size:14px}.netst{font-size:13px;opacity:.85;margin:0 0 8px}

.dfpromo{display:flex;align-items:center;gap:10px;background:#fff;border-radius:12px;padding:6px 10px;color:#111;font-size:13px;font-weight:700;text-align:left}.dfpromo img{width:54px;height:54px;object-fit:contain}@media (max-height:520px){.dfpromo img{width:34px;height:34px}}
/* ===== BUILD 7 ===== */
:root{--gold:#facc15;--gold2:#fde68a;--pur:#a855f7;--pur2:#3b0764;--ink:#07030d}
@keyframes b7in{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}
@keyframes b7pulse{0%,100%{box-shadow:0 0 0 0 rgba(250,204,21,.55),0 8px 30px rgba(250,204,21,.35)}50%{box-shadow:0 0 0 10px rgba(250,204,21,0),0 8px 30px rgba(250,204,21,.5)}}
.overlay.open>*{animation:b7in .28s cubic-bezier(.2,.8,.2,1) both}
.overlay.open .item,.overlay.open .b7card,.overlay.open .b7crew,.overlay.open .b7row{animation:b7in .3s both}
.item:active,.gp:active{transform:scale(.97)}
.mhead{background:linear-gradient(90deg,#1a0633,#3b0764 60%,#1a0633);border-color:#6b21a8;border-bottom:3px solid var(--gold)}.mt{color:var(--gold2);text-shadow:0 2px 0 #000}
.mbody{background:linear-gradient(180deg,rgba(18,8,32,.98),rgba(8,3,16,.98))}
.item{background:linear-gradient(90deg,#1d1030,#140a22);border-color:#33204d}.item .ir{color:var(--gold)}
#start.b7{background:radial-gradient(ellipse at 50% 30%,#3b0764 0%,#14061f 55%,#050208 100%);padding:0;align-items:stretch;overflow:auto}
.b7lobby{width:min(520px,100vw);margin:0 auto;min-height:100%;display:flex;flex-direction:column;gap:10px;padding:calc(10px + env(safe-area-inset-top)) 14px calc(14px + env(safe-area-inset-bottom));text-align:center}
.b7top{display:flex;justify-content:space-between;align-items:center}
.b7me{display:flex;gap:8px;align-items:center;text-align:left;background:rgba(0,0,0,.35);border:1px solid rgba(250,204,21,.35);border-radius:12px;padding:5px 10px 5px 5px}.b7me img{width:36px;height:36px;border-radius:8px}.b7me b{display:block;font:16px Anton,Impact,sans-serif;letter-spacing:.5px}.b7me small{font-size:10px;color:var(--gold);letter-spacing:1px}
.b7money{font:22px Anton,Impact,sans-serif;color:var(--gold);background:rgba(0,0,0,.4);border:1px solid rgba(250,204,21,.4);border-radius:12px;padding:6px 12px;text-shadow:0 0 10px rgba(250,204,21,.4)}
.b7brand h1{margin:4px 0 0;font:clamp(44px,13vw,70px) Anton,Impact,sans-serif;letter-spacing:2px;line-height:.95;background:linear-gradient(180deg,#fff 0%,#e9d5ff 45%,#a855f7 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 4px 0 #000)}
.b7brand h1 span{background:linear-gradient(180deg,#fef3c7,#facc15 55%,#b45309);-webkit-background-clip:text;background-clip:text}
.b7sub{font:15px Anton,Impact,sans-serif;letter-spacing:7px;color:var(--gold2);opacity:.9}
.b7stage{position:relative;flex:1 1 auto;min-height:240px;max-height:380px}#b7cv{position:absolute;inset:0;width:100%;height:100%}
.b7arrow{position:absolute;top:45%;width:44px;height:44px;border-radius:50%;border:2px solid rgba(250,204,21,.5);background:rgba(0,0,0,.45);color:var(--gold);font-size:26px;line-height:1}.b7arrow.l{left:0}.b7arrow.r{right:0}
.b7nm{position:absolute;left:0;right:0;bottom:0}.b7nm b{display:block;font:24px Anton,Impact,sans-serif;letter-spacing:1px;text-shadow:0 2px 0 #000}.b7nm small{font-size:12px;color:var(--gold2);opacity:.85}
.b7tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.b7tile{position:relative;font:14px Anton,Impact,sans-serif;letter-spacing:1px;color:#fff;background:linear-gradient(180deg,rgba(59,7,100,.85),rgba(20,6,31,.9));border:1px solid rgba(168,85,247,.6);border-radius:12px;padding:10px 4px;box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}.b7tile i{display:block;font-style:normal;font-size:24px;margin-bottom:2px}
.b7tile.dot::after{content:"";position:absolute;top:6px;right:8px;width:10px;height:10px;border-radius:50%;background:#ef4444;box-shadow:0 0 8px #ef4444}
.b7df{margin:0}
.b7play{font:34px Anton,Impact,sans-serif;letter-spacing:4px;color:#1a0b00;border:0;border-radius:16px;padding:14px;background:linear-gradient(180deg,#fef08a,#facc15 50%,#d97706);animation:b7pulse 2.2s infinite}.b7play small{display:block;font:12px system-ui,sans-serif;letter-spacing:0;color:#3b2300;margin-top:2px}
.b7foot{display:flex;gap:8px}.b7foot>*{flex:1;font:14px Anton,Impact,sans-serif;letter-spacing:1px;padding:10px;border-radius:10px;border:1px solid rgba(255,255,255,.22);background:transparent;color:#fff;text-decoration:none}
#start.b7out{transition:opacity .28s,transform .28s;opacity:0;transform:scale(1.06)}
.b7sec{font:13px Anton,Impact,sans-serif;letter-spacing:2px;color:var(--gold);margin:8px 2px 6px}
.b7card{display:flex;align-items:center;gap:10px;background:linear-gradient(90deg,#1f0f35,#120820);border:1px solid #33204d;border-left:4px solid var(--pur);border-radius:12px;padding:9px 10px;margin-bottom:6px;text-align:left}
.b7card.done{border-left-color:#22c55e;opacity:.8}.b7card.active{border-left-color:var(--gold);box-shadow:0 0 16px rgba(250,204,21,.15)}.b7card.locked{opacity:.5}
.b7av{flex:0 0 42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;font:18px Anton,Impact,sans-serif;color:#000;border:2px solid rgba(255,255,255,.7)}
.b7ct{flex:1;min-width:0}.b7ct b{display:block;font-size:14px}.b7ct small{font-size:12px;opacity:.7}
.b7tag{font:12px Anton,Impact,sans-serif;letter-spacing:1px;padding:4px 8px;border-radius:6px;background:#334155}.b7tag.done{background:#166534}.b7tag.active{background:var(--gold);color:#111}
.b7grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.b7crew{background:linear-gradient(180deg,color-mix(in srgb,var(--c) 35%,#120820),#120820);border:1px solid color-mix(in srgb,var(--c) 60%,#000);border-radius:14px;padding:12px 8px;text-align:center}.b7crew b{display:block;font:16px Anton,Impact,sans-serif;letter-spacing:.5px;margin-top:6px}.b7crew small{font-size:11px;opacity:.75}
.b7cav{width:56px;height:56px;margin:0 auto;border-radius:50%;background:var(--c);display:flex;align-items:center;justify-content:center;font:22px Anton,Impact,sans-serif;color:#000;border:3px solid #fff;box-shadow:0 0 18px var(--c)}
.b7passhd{display:flex;justify-content:space-between;align-items:center;padding:4px 2px 8px}.b7passhd b{font:22px Anton,Impact,sans-serif;color:var(--gold);letter-spacing:1px;display:block}.b7passhd small{font-size:11px;opacity:.75;letter-spacing:1px}
.b7lvl{font:20px Anton,Impact,sans-serif;text-align:right}.b7lvl small{display:block;font:11px system-ui;opacity:.7}
.b7bar{height:6px;background:rgba(0,0,0,.5);border-radius:4px;overflow:hidden;margin-top:6px}.b7bar.big{height:10px;margin:0 0 10px;border:1px solid #3b0764}.b7bar i{display:block;height:100%;background:linear-gradient(90deg,var(--pur),var(--gold))}
.b7track{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 10px;touch-action:pan-x}
.b7tier{flex:0 0 92px;display:flex;flex-direction:column;align-items:center;gap:4px;background:#160a26;border:1px solid #33204d;border-radius:12px;padding:8px 4px;color:#fff;opacity:.6}
.b7tier .n{font:14px Anton,Impact,sans-serif;color:var(--gold2)}.b7tier .ic{font-size:26px}.b7tier .rw{font-size:11px;min-height:28px}.b7tier .st{font:12px Anton,Impact,sans-serif;letter-spacing:1px}
.b7tier.open{opacity:1;border-color:var(--gold);box-shadow:0 0 14px rgba(250,204,21,.35)}.b7tier.open .st{background:var(--gold);color:#111;border-radius:6px;padding:2px 8px}.b7tier.got{opacity:.9;border-color:#22c55e}.b7tier.gold{background:linear-gradient(180deg,#3a2a05,#160a26)}
.b7daily{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.b7day{position:relative;background:#160a26;border:1px solid #33204d;border-radius:12px;padding:8px 4px;text-align:center}.b7day small{font:11px Anton,Impact,sans-serif;letter-spacing:1px;opacity:.75}.b7day b{display:block;font-size:24px}.b7day span{font:14px Anton,Impact,sans-serif;color:var(--gold)}
.b7day.gold{grid-column:span 2;background:linear-gradient(180deg,#3a2a05,#160a26);border-color:#b45309}.b7day.now{border-color:var(--gold);box-shadow:0 0 16px rgba(250,204,21,.4)}.b7day.got{opacity:.55}.b7day i{position:absolute;top:4px;right:6px;font-style:normal;color:#22c55e;font-weight:bold}
.b7claim{display:block;width:100%;margin-top:10px;font:20px Anton,Impact,sans-serif;letter-spacing:2px;padding:12px;border:0;border-radius:12px;background:linear-gradient(180deg,#fef08a,#facc15 55%,#d97706);color:#1a0b00}.b7claim:disabled{background:#33204d;color:#aaa}
.b7tabs{display:flex;gap:6px;margin-bottom:8px}.b7tabs button{flex:1;font:13px Anton,Impact,sans-serif;letter-spacing:1px;padding:8px;border-radius:10px;border:1px solid #33204d;background:#160a26;color:#fff}.b7tabs button.on{background:var(--gold);color:#111;border-color:var(--gold)}
.b7row{display:flex;align-items:center;gap:10px;background:#160a26;border:1px solid #2a173f;border-radius:10px;padding:9px 10px;margin-bottom:5px;font-size:14px}.b7row .rk{font:18px Anton,Impact,sans-serif;width:24px;text-align:center;opacity:.8}.b7row .dot{width:10px;height:10px;border-radius:50%}.b7row .nm{flex:1;text-align:left}.b7row .sc{font:15px Anton,Impact,sans-serif;color:var(--gold)}
.b7row.top1{border-color:var(--gold);background:linear-gradient(90deg,#3a2a05,#160a26)}.b7row.top1 .rk{color:var(--gold)}.b7row.top2 .rk{color:#e5e7eb}.b7row.top3 .rk{color:#d97706}.b7row.me{outline:2px solid var(--pur)}
/* HUD */
#minimap{width:128px;height:128px;border:3px solid var(--gold);box-shadow:0 0 0 2px #000,0 0 18px rgba(168,85,247,.55),0 4px 14px rgba(0,0,0,.6)}
#topr{background:linear-gradient(270deg,rgba(7,3,13,.75),rgba(7,3,13,0));padding:6px 4px 8px 26px;border-radius:12px}
#cash{color:var(--gold);font-size:32px;text-shadow:0 2px 0 #000,0 0 12px rgba(250,204,21,.35)}
#stars{font-size:22px}#stars em{font:12px Anton,Impact,sans-serif;font-style:normal;letter-spacing:2px;color:#fff;background:#dc2626;padding:2px 6px;border-radius:4px;margin-right:6px;vertical-align:4px;animation:b7pulse 1s infinite}#stars .on{color:var(--gold);text-shadow:0 0 8px var(--gold),1px 1px 0 #000}
.bars{flex-direction:column;align-items:flex-end;gap:5px;margin-top:6px}.bar{position:relative;width:132px;height:11px;border-radius:6px;overflow:hidden;background:rgba(0,0,0,.65);border:1px solid rgba(255,255,255,.18);padding-left:0}.bar b{position:absolute;left:-18px;top:-3px;font-size:11px;color:#fff}
.bar i{background:linear-gradient(90deg,#16a34a,#4ade80);border-radius:6px;transition:width .25s}.bar.ar i{background:linear-gradient(90deg,#0284c7,#7dd3fc)}
.bars .bar{overflow:visible}.bars .bar i{position:relative;z-index:1}
/* big thumb controls */
#joy{width:150px;height:150px;border:3px solid rgba(250,204,21,.45);background:radial-gradient(circle,rgba(168,85,247,.25),rgba(20,10,30,.35))}
#knob{left:44px;top:44px;width:62px;height:62px;background:radial-gradient(circle at 35% 30%,#fef08a,#facc15 60%,#b45309);border:2px solid #fff;box-shadow:0 0 16px rgba(250,204,21,.6)}
#btns{gap:12px;right:calc(14px + env(safe-area-inset-right));bottom:calc(22px + env(safe-area-inset-bottom))}
.tb{background:radial-gradient(circle at 50% 35%,rgba(59,7,100,.75),rgba(10,4,18,.75));border:2px solid rgba(250,204,21,.35);box-shadow:0 4px 14px rgba(0,0,0,.5);width:62px;height:62px}
.tb.big{width:92px;height:92px;font-size:17px;border:3px solid var(--pur);background:radial-gradient(circle at 50% 35%,rgba(168,85,247,.8),rgba(59,7,100,.8));box-shadow:0 0 18px rgba(168,85,247,.45)}
.tb.lime{border-color:var(--gold);background:radial-gradient(circle at 50% 35%,rgba(250,204,21,.85),rgba(180,83,9,.8));color:#1a0b00}
#btnSpr{width:70px;height:70px}
.tb.down{transform:scale(.9);filter:brightness(1.4)}
@media (orientation:portrait){#btnPh,#btnMap,#btnMus,#btnNet{top:calc(148px + env(safe-area-inset-top));width:42px;height:42px;font-size:18px}
#btnPh{left:calc(10px + env(safe-area-inset-left))}#btnMap{left:calc(58px + env(safe-area-inset-left))}#btnMus{left:calc(106px + env(safe-area-inset-left))}#btnNet{left:calc(154px + env(safe-area-inset-left))}
#speedo{top:calc(150px + env(safe-area-inset-top));left:auto;right:calc(14px + env(safe-area-inset-right))}
#objective{top:calc(200px + env(safe-area-inset-top))}#toasts{top:calc(250px + env(safe-area-inset-top))}#timer{top:calc(118px + env(safe-area-inset-top))}}
@media (max-height:500px){.tb.big{width:76px;height:76px;font-size:15px}#btnSpr{width:60px;height:60px}.tb{width:54px;height:54px}#btns{gap:8px;bottom:calc(10px + env(safe-area-inset-bottom))}.bar{width:110px}#cash{font-size:28px}}
/* enter button + interiors */
#enterBig{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(262px + env(safe-area-inset-bottom));z-index:8;font:22px Anton,Impact,sans-serif;letter-spacing:.04em;color:#fff;padding:14px 24px;border-radius:16px;border:3px solid #facc15;background:linear-gradient(135deg,#a855f7,#f97316);box-shadow:0 6px 24px rgba(0,0,0,.6),0 0 20px rgba(250,204,21,.45);max-width:90vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;animation:entp2 1.2s ease-in-out infinite}
@keyframes entp2{50%{transform:translateX(-50%) scale(1.06)}}
@media (max-height:500px){#enterBig{bottom:calc(16px + env(safe-area-inset-bottom));font-size:18px}}
#interior.overlay{position:fixed;inset:0;z-index:50;display:none;background:rgba(0,0,0,.6)}#interior.open{display:flex;align-items:stretch;justify-content:center}
.inroom{width:min(100vw,620px);display:flex;flex-direction:column;background:linear-gradient(180deg,color-mix(in srgb,var(--rc) 70%,#000) 0%,#120a1c 58%,#2a1d12 58%,#1a120a 100%);color:#fff;font-family:system-ui,sans-serif;padding:calc(10px + env(safe-area-inset-top)) 12px calc(12px + env(safe-area-inset-bottom))}
.inhead{display:flex;align-items:center;gap:10px}.inhead img{width:44px;height:44px;border-radius:10px}.inhead b{font:24px Anton,Impact,sans-serif;letter-spacing:.03em;display:block}.inhead small{opacity:.75}.inhead .x{margin-left:auto}
.instage{flex:1;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:center;gap:10px;padding:14px 0;min-height:240px}
.innpc{position:relative;display:flex;flex-direction:column;align-items:center;background:none;border:0;color:#fff;width:84px;padding:0}
.inhd{width:52px;height:52px;border-radius:50%;background:var(--c);display:flex;align-items:center;justify-content:center;font:800 18px system-ui;color:#111;border:3px solid #fff2}
.inbd{width:62px;height:86px;margin-top:-4px;border-radius:24px 24px 8px 8px;background:linear-gradient(#18181b,color-mix(in srgb,var(--c) 45%,#000))}
.innpc b{font-size:13px;margin-top:4px}.innpc small{font-size:10px;opacity:.7;text-align:center}
.inmark{position:absolute;top:-14px;background:#facc15;color:#111;font:900 18px system-ui;width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;animation:entp3 1s infinite}@keyframes entp3{50%{transform:translateY(-4px)}}
.inbub{background:#fff;color:#111;border-radius:14px;padding:10px 12px;font-size:15px;min-height:20px;margin:6px 0}.inbub:empty{display:none}
.inopts{display:flex;flex-direction:column;gap:6px;margin-top:8px}.inbtn{background:#111;color:#facc15;border:0;border-radius:10px;padding:10px;font-weight:800;text-align:left}.inbusy{font-size:12px;color:#7c2d12}
.inacts{display:flex;gap:8px}.inacts .b7invite{flex:1}.inleave{background:#27272a!important}.inempty{opacity:.7;align-self:center}
