.bd{--bg:#0b1c1c;--field:#102a29;--field-edge:#1b3d3b;--ink:#e9f4f0;--muted:#93b6ad;--accent:#b59dff;--good:#62d69e;--warn:#f2b84b;--bad:#ff7d6e;--tray:#132f2d;--btn:#1c403d;--btn-press:#275552;--display:inherit;--body:inherit;color-scheme:dark}.bd [hidden]{display:none!important}.bd{position:fixed;inset:0;z-index:60;padding-top:env(safe-area-inset-top,0)}.bd .homelink{color:var(--muted);text-decoration:none;letter-spacing:.08em}.bd,.bd .homelink:hover{color:var(--ink)}.bd{background:var(--bg);font-family:var(--body);font-size:15px;overflow:hidden;-webkit-tap-highlight-color:transparent;-moz-user-select:none;user-select:none;-webkit-user-select:none}.bd,.bd button{touch-action:manipulation}.bd button{font:inherit;color:inherit;cursor:pointer}.bd button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.bd .screen{height:100%;display:flex;flex-direction:column}.bd .wrap{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.bd #home{overflow-y:auto}.bd .home-inner{max-width:760px;width:100%;margin:0 auto;padding-block:24px 32px;display:flex;flex-direction:column;gap:20px}.bd .brand{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);display:flex;gap:10px;align-items:center;flex-wrap:wrap}.bd .free{background:var(--good);color:#062316;font-weight:700;padding:3px 8px;border-radius:4px;letter-spacing:.08em}.bd h1{font-family:var(--display);font-weight:800;font-size:clamp(40px,9vw,72px);line-height:.95;margin:0;text-wrap:balance}.bd h1 span{color:var(--accent)}.bd .lede{color:var(--muted);max-width:58ch;line-height:1.5;margin:0}.bd .how{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.bd .how div{background:var(--field);border:1px solid var(--field-edge);border-radius:8px;padding:12px;line-height:1.4;font-size:14px}.bd .how b{display:block;font-family:var(--display);font-size:16px;margin-bottom:4px}.bd .levels-title{font-family:var(--display);font-size:20px;margin:4px 0 0}.bd .levels{display:grid;gap:8px}.bd .lvl{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;text-align:left;background:var(--field);border:1px solid var(--field-edge);border-radius:10px;padding:12px;min-height:64px}.bd .lvl .num{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:18px;background:var(--btn)}.bd .lvl.open .num{background:var(--accent);color:#1a1133}.bd .lvl .t{font-weight:700;font-size:16px}.bd .lvl .s{color:var(--muted);font-size:13px;margin-top:2px}.bd .lvl .stars{font-size:18px;letter-spacing:2px;color:var(--warn);white-space:nowrap}.bd .lvl[disabled]{opacity:.5;cursor:not-allowed}.bd .lvl.soon{border-style:dashed}.bd .chapter{background:var(--field);border:1px solid var(--field-edge);border-radius:12px;padding:12px;display:grid;gap:10px}.bd .chapter.locked{border-style:dashed}.bd .ch-head{display:flex;gap:10px;align-items:baseline;justify-content:space-between;flex-wrap:wrap}.bd .ch-head .t{font-family:var(--display);font-weight:800;font-size:18px}.bd .ch-head .s{color:var(--muted);font-size:13px}.bd .badge{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:2px 8px;border-radius:4px;background:var(--btn);color:var(--muted)}.bd .badge.free{background:var(--good);color:#062316}.bd .badge.member{background:var(--accent);color:#1a1133}.bd .subs{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.bd .sub{text-align:left;background:var(--btn);border:1px solid var(--field-edge);border-radius:9px;padding:9px 10px;min-height:58px;display:grid;gap:3px}.bd .sub .n{font-weight:700;font-size:14px;line-height:1.2}.bd .sub .st{color:var(--warn);font-size:13px;letter-spacing:1px}.bd .sub[disabled]{opacity:.5;cursor:not-allowed}.bd .join{background:var(--accent);color:#1a1133;border-radius:9px;padding:10px 12px;font-weight:700;text-decoration:none;text-align:center;min-height:44px;display:grid;place-items:center}.bd .viewas{display:flex;gap:6px;align-items:center;flex-wrap:wrap;font-size:12.5px;color:var(--muted)}.bd .viewas button{background:var(--btn);border:1px solid var(--field-edge);border-radius:6px;padding:6px 10px;font-size:12.5px}.bd .viewas button.on{border-color:var(--accent);color:var(--accent)}.bd .fine{line-height:1.5}.bd .fine,.bd .linkbtn{color:var(--muted);font-size:12.5px}.bd .linkbtn{background:none;border:0;text-decoration:underline;padding:0}.bd .overlay{position:fixed;inset:0;background:rgba(4,14,14,.82);display:grid;place-items:center;z-index:20;padding:16px max(16px,env(safe-area-inset-right,0px)) 16px max(16px,env(safe-area-inset-left,0px))}.bd .card{background:var(--field);border:1px solid var(--field-edge);border-radius:14px;max-width:520px;width:100%;max-height:calc(100% - 16px);overflow-y:auto;padding:22px;display:flex;flex-direction:column;gap:14px}.bd .card h2{font-family:var(--display);font-size:28px;line-height:1.05;margin:0;text-wrap:balance}.bd .eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-weight:700}.bd .card p{margin:0;line-height:1.5}.bd .suspects{display:flex;gap:10px;flex-wrap:wrap}.bd .suspect{display:flex;align-items:center;gap:8px;background:var(--bg);border-radius:8px;padding:6px 10px 6px 6px;font-size:13.5px}.bd .suspect svg{width:34px;height:34px}.bd .suspect .tag{display:inline-block;margin-left:6px;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:1px 6px;border-radius:4px;color:#fff}.bd .suspect .tag.cb{background:var(--bad)}.bd .suspect .tag.two{background:#7c5cff}.bd .combonote{border-left:3px solid #7c5cff;padding:4px 0 4px 12px;display:grid;gap:4px;font-size:14px;line-height:1.45}.bd .combonote b{color:#b9a6ff}.bd .stagebanner{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:6;pointer-events:none;text-align:center;padding:18px 34px;border-radius:18px;background:rgba(10,24,22,.82);border:1px solid var(--accent,#9b8cff);box-shadow:0 0 60px rgba(155,140,255,.35);animation:bd-stagein 2.6s ease forwards}.bd .stagebanner b{display:block;font-size:clamp(30px,7vw,54px);letter-spacing:.04em;line-height:1.05}.bd .stagebanner span{display:block;margin-top:6px;font-size:14px;opacity:.75;letter-spacing:.12em;text-transform:uppercase}@keyframes bd-stagein{0%{opacity:0;transform:translate(-50%,-50%) scale(.7)}15%{opacity:1;transform:translate(-50%,-50%) scale(1.04)}25%{transform:translate(-50%,-50%) scale(1)}80%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) scale(1.08)}}.bd .pearl{border-left:3px solid var(--warn);padding:4px 0 4px 12px;color:var(--ink);font-size:14px;line-height:1.5}.bd .primary{background:var(--accent);color:#1a1133;font-size:17px;min-height:52px;padding:0 20px}.bd .primary,.bd .secondary{border:0;border-radius:10px;font-weight:700}.bd .secondary{background:var(--btn);min-height:48px;padding:0 18px}.bd .row{display:flex;gap:10px;flex-wrap:wrap}.bd .row>*{flex:1 1 160px}.bd .lessons{margin:0;padding-left:18px;display:grid;gap:8px;font-size:14px;line-height:1.45}.bd .bigstars,.bd .lessons b{color:var(--warn)}.bd .bigstars{font-size:34px;letter-spacing:6px}.bd .score-line{color:var(--muted)}.bd #game header{display:flex;align-items:center;gap:12px;padding-block:10px;background:var(--bg)}.bd .hud-title{flex:1;min-width:0}.bd .hud-title .t{font-family:var(--display);font-weight:800;font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bd .hud-title .s{font-size:12px;color:var(--muted)}.bd .hud{display:flex;gap:14px;align-items:center;font-variant-numeric:tabular-nums}.bd .hearts{color:var(--bad);font-size:18px;letter-spacing:1px}.bd .pts{font-weight:700;min-width:4ch;text-align:right}.bd .iconbtn{width:44px;height:44px;border-radius:10px;border:0;background:var(--btn);font-size:18px;display:grid;place-items:center}.bd .progress{height:4px;background:var(--field-edge)}.bd .progress i{display:block;height:100%;width:0;background:var(--accent);transition:width .3s}.bd #arena{position:relative;flex:1;min-height:200px;overflow:hidden;background:radial-gradient(ellipse at 70% 50%,rgba(181,157,255,.07),transparent 60%),repeating-linear-gradient(90deg,transparent 0 79px,rgba(147,182,173,.06) 79px 80px),var(--field)}.bd #patient{position:absolute;left:0;top:0;bottom:0;width:96px;border-right:2px dashed rgba(98,214,158,.45);background:linear-gradient(90deg,rgba(98,214,158,.1),rgba(98,214,158,.03))}.bd #bed{position:absolute;left:4px;bottom:8px;width:58px}.bd #bed svg{width:58px;height:40px;display:block}.bd #patient .site{position:absolute;left:6px;top:8px;font-size:10.5px;color:var(--good);text-transform:uppercase;letter-spacing:.1em;font-weight:700}.bd #pharm{position:absolute;left:6px;width:84px;height:76px;margin-top:-40px;transition:top .18s ease-out;pointer-events:none}.bd #pharm svg{width:84px;height:76px;overflow:visible}.bd #pharm.recoil svg{animation:bd-recoil .14s}@keyframes bd-recoil{40%{transform:translateX(-5px) rotate(-3deg)}}.bd #pharm .wname{position:absolute;left:0;top:-14px;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--warn);white-space:nowrap}.bd #patient.hit{animation:bd-hit .4s}@keyframes bd-hit{0%,to{background:rgba(98,214,158,.06)}40%{background:rgba(255,125,110,.4)}}.bd .bug{position:absolute;width:74px;height:74px;margin:-37px 0 0 -37px;display:flex;flex-direction:column;align-items:center;border:0;background:none;padding:0}.bd .bug svg{width:52px;height:52px;overflow:visible;transition:transform .15s;animation:bd-shamble 1.1s ease-in-out infinite;transform-origin:50% 90%}@keyframes bd-shamble{0%,to{transform:rotate(-7deg) translateY(0)}50%{transform:rotate(6deg) translateY(-3px)}}.bd .bug .name{font-size:11.5px;font-weight:700;background:rgba(4,14,14,.75);padding:1px 6px;border-radius:4px;white-space:nowrap;margin-top:-2px}.bd .bug.target svg{filter:drop-shadow(0 0 6px var(--accent))}.bd .bug.target:before{content:"";position:absolute;top:-2px;left:9px;width:52px;height:52px;border-style:solid;border-radius:50%;animation:bd-spin 2.4s linear infinite;border:2px dashed var(--accent)}@keyframes bd-spin{to{transform:rotate(1turn)}}.bd .bug .hp{position:absolute;top:-6px;width:36px;height:4px;background:rgba(0,0,0,.5);border-radius:2px;overflow:hidden}.bd .bug .hp i{display:block;height:100%;background:var(--warn);width:100%}.bd .bug.dying{animation:bd-die .45s forwards;pointer-events:none}@keyframes bd-die{to{transform:scale(.2) rotate(40deg);opacity:0}}.bd .bug.bounce svg{animation:bd-shake .35s}@keyframes bd-shake{25%{transform:translateX(6px)}75%{transform:translateX(-4px)}}.bd .pill{width:26px;height:12px;margin:-6px 0 0 -13px;border-radius:6px;box-shadow:0 0 10px currentColor}.bd .pellet,.bd .pill{position:absolute;pointer-events:none}.bd .pellet{width:7px;height:7px;margin:-3.5px 0 0 -3.5px;border-radius:50%;background:#ffe7a0;box-shadow:0 0 6px #ffcf5a}.bd .bullet{width:14px;height:5px;margin:-2.5px 0 0 -7px;border-radius:3px;box-shadow:0 0 8px currentColor}.bd .bullet,.bd .grenade{position:absolute;pointer-events:none}.bd .grenade{width:16px;height:18px;margin:-9px 0 0 -8px;border-radius:45% 45% 50% 50%;background:#4d6b3a;border:2px solid #2c3f20}.bd .proj{transform:translate(-50%,-50%);line-height:1;filter:drop-shadow(0 0 6px rgba(255,180,80,.7))}.bd .blast,.bd .proj{position:absolute;pointer-events:none}.bd .blast{border-radius:50%;transform:translate(-50%,-50%) scale(.2);background:radial-gradient(circle,#fff6c8 0,#ffb347 35%,rgba(255,90,40,.6) 60%,transparent 72%);animation:bd-blast .55s ease-out forwards}@keyframes bd-blast{to{transform:translate(-50%,-50%) scale(1);opacity:0}}.bd .flash{position:absolute;inset:0;background:#fff3c4;pointer-events:none;animation:bd-flash .7s ease-out forwards}@keyframes bd-flash{0%{opacity:.85}to{opacity:0}}.bd .bug .pips{position:absolute;top:-7px;display:flex;gap:3px}.bd .bug .pips i{width:13px;height:5px;border-radius:2px;background:rgba(255,255,255,.22);box-shadow:0 0 0 1px rgba(0,0,0,.4)}.bd .bug .pips i.on{background:var(--good);box-shadow:0 0 8px var(--good)}.bd .bug .res.combo{background:#7c5cff;box-shadow:0 0 10px #7c5cff;top:-24px}.bd .bug.combo svg{filter:drop-shadow(0 0 9px #9d86ff)}.bd .bug .res{position:absolute;top:-18px;font-size:10.5px;font-weight:800;letter-spacing:.06em;color:#fff;background:var(--bad);padding:1px 6px;border-radius:4px;box-shadow:0 0 10px var(--bad);animation:bd-respulse 1s ease-in-out infinite;white-space:nowrap}@keyframes bd-respulse{50%{box-shadow:0 0 2px var(--bad);opacity:.8}}.bd .bug.resistant svg{filter:drop-shadow(0 0 8px var(--bad))}.bd .drug .wpn{height:16px;display:flex;align-items:center;gap:4px;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--warn)}.bd .drug .wpn svg{width:30px;height:14px}.bd .drug .wpn.t1,.bd .legend{color:var(--muted)}.bd .legend{display:flex;gap:12px;flex-wrap:wrap;font-size:13px}.bd .pop{position:absolute;font-weight:800;font-family:var(--display);font-size:18px;pointer-events:none;animation:bd-rise .9s forwards;transform:translate(-50%,-50%);white-space:nowrap}@keyframes bd-rise{to{transform:translate(-50%,-150%);opacity:0}}.bd #toast{position:absolute;left:108px;right:12px;bottom:10px;background:rgba(4,14,14,.9);border:1px solid var(--field-edge);border-left:4px solid var(--bad);border-radius:8px;padding:8px 12px;font-size:14px;line-height:1.35;pointer-events:none;transition:opacity .2s}.bd #toast.good{border-left-color:var(--good)}.bd #toast.warn{border-left-color:var(--warn)}.bd #toast b{display:block;font-size:13px}.bd #hint{position:absolute;left:108px;top:10px;font-size:12px;color:var(--muted);pointer-events:none}.bd #tray{background:var(--tray);border-top:1px solid var(--field-edge);padding-block:10px;padding-bottom:calc(10px + env(safe-area-inset-bottom, 0px))}.bd .tray-label{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.bd .drugs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}@media (min-width:720px){.bd .drugs{grid-template-columns:repeat(6,1fr)}}.bd .drug{min-height:58px;border:0;border-radius:10px;background:var(--btn);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:6px 4px;font-weight:700;font-size:13.5px;line-height:1.15;text-align:center;transition:transform .08s,background .1s}.bd .drug i{width:22px;height:8px;border-radius:4px;display:block}.bd .drug:active{transform:scale(.95);background:var(--btn-press)}.bd .drug[disabled]{opacity:.45}@media (prefers-reduced-motion:reduce){.bd .bug svg{animation:none}.bd .blast,.bd .flash{animation-duration:.01s}.bd .bug .res,.bd .bug.target:before{animation:none}.bd .pop{animation-duration:.01s}}.bd .bigstars .bstar,.bd .pts{display:inline-block}.bd .bigstars .bstar:not(.on){opacity:.45}.bd .badge.unlocked{background:var(--accent);color:#1a1133}.bd .chapter.just-unlocked{box-shadow:0 0 0 2px var(--accent),0 0 40px rgba(155,140,255,.35)}@media (prefers-reduced-motion:reduce){.bd *,.bd :after,.bd :before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.bd .flash{display:none}}