:root{--green: #16a34a;--green-deep: #0b1a12;--gold: #facc15;--ink: #0f172a;--font: ui-monospace, "SF Mono", Menlo, Consolas, monospace}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--green-deep);color:#fff;font-family:var(--font);touch-action:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}#view,#view canvas{position:fixed;inset:0;width:100%;height:100%;display:block}.hidden{display:none!important}#hud{position:fixed;inset:0;pointer-events:none}#hud.blacked #returned,#hud.blacked #evidence,#hud.blacked .boss-bar{visibility:hidden}.hud-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:max(10px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) 10px max(14px,env(safe-area-inset-left));background:linear-gradient(#0000008c,#0000)}.hud-left{width:min(34vw,240px)}.bar{height:12px;background:#3f3f46e6;border-radius:3px;overflow:hidden;margin-bottom:4px}.bar.thin{height:7px}.fill{height:100%;width:100%;background:#22c55e;transition:width .12s linear}.fill.aluta{background:var(--gold);width:0}.fill.aluta.full{background:#22c55e;animation:pulse .6s infinite alternate}.labels{display:flex;justify-content:space-between;font-size:11px;color:#d4d4d8}.small{font-size:11px;color:#a1a1aa;margin-top:3px}.hud-right{text-align:right;margin-left:auto}#returned{font-size:17px;font-weight:700;color:#86efac;text-shadow:0 1px 0 #000}#evidence{font-size:13px;color:#fde68a}#evidence.ready{color:#86efac}#detained{color:#fca5a5}#boss{position:absolute;left:50%;transform:translate(-50%);top:max(10px,env(safe-area-inset-top));width:min(40vw,360px);text-align:center}#boss-name{font-size:13px;font-weight:700;margin-bottom:4px;text-shadow:0 1px 2px #000}.boss-bar{height:10px;display:flex}#boss-pad{width:0;background:repeating-linear-gradient(45deg,#f59e0b 0 4px,#fde68a 4px 8px)}#boss-fill{background:#ef4444;flex:none}#boss-fill.immune{background:var(--gold)}#blackout{position:fixed;top:66px;left:50%;transform:translate(-50%);background:#000;color:#ef4444;font-weight:700;padding:4px 8px;font-size:13px;pointer-events:none}#toast{position:fixed;left:50%;bottom:24%;transform:translate(-50%);max-width:86vw;font-size:clamp(14px,2.2vw,19px);font-weight:700;text-align:center;text-shadow:0 0 4px #000,0 2px 0 #000;opacity:0;transition:opacity .35s;pointer-events:none}#toast.on{opacity:1}#banner{position:fixed;left:50%;top:40%;transform:translate(-50%,-50%) scale(.7);white-space:pre-line;font-size:clamp(22px,4.6vw,42px);font-weight:800;text-align:center;letter-spacing:1px;text-shadow:0 0 6px #000,0 3px 0 #000;opacity:0;pointer-events:none;transition:opacity .35s}#banner.on{opacity:1;animation:pop .25s ease-out forwards}@keyframes pop{0%{transform:translate(-50%,-50%) scale(.7)}to{transform:translate(-50%,-50%) scale(1)}}@keyframes pulse{0%{opacity:.7}to{opacity:1}}#flash{position:fixed;inset:0;opacity:0;pointer-events:none}#flash.on{animation:flash .35s ease-out}@keyframes flash{0%{opacity:1}to{opacity:0}}#floats{position:fixed;inset:0;pointer-events:none;overflow:hidden}.float{position:absolute;transform:translate(-50%,-50%);font-weight:800;font-size:clamp(12px,1.7vw,16px);white-space:nowrap;text-shadow:0 0 3px #000,0 2px 0 #000;animation:rise .9s ease-out forwards}@keyframes rise{0%{opacity:1;margin-top:0}to{opacity:0;margin-top:-50px}}.screen{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:20px;text-align:center;background:radial-gradient(ellipse at center,#0b1a1240,#0b1a12cc)}#title{justify-content:flex-start;padding-top:6vh}#title .btn{margin-top:auto}#select{justify-content:flex-end;padding-bottom:5vh}h1{margin:0;font-size:clamp(44px,10vw,96px);color:var(--gold);letter-spacing:2px;text-shadow:0 5px 0 #000,0 0 18px rgba(0,0,0,.6)}h2{margin:0;font-size:clamp(22px,4vw,36px);color:var(--gold);text-shadow:0 3px 0 #000}.tag{margin:0;font-size:clamp(13px,2vw,18px);text-shadow:0 1px 3px #000;background:#00000080;padding:6px 12px;border-radius:4px}.hint{margin:0;font-size:12px;color:#e4e4e7;text-shadow:0 1px 2px #000}.legal{margin:0;font-size:11px;color:#d4d4d8;text-shadow:0 1px 2px #000}.btn{font-family:var(--font);font-weight:800;font-size:clamp(16px,2.4vw,22px);color:#fff;border:3px solid #fff;border-radius:6px;padding:12px 26px;cursor:pointer;pointer-events:auto}.btn.go{background:var(--green)}.btn.dark{background:#000}.btn.ghost{background:#0006}.btn:active{transform:translateY(2px)}.row{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}#cards{display:grid;grid-template-columns:repeat(4,minmax(0,170px));gap:10px}.card{font-family:var(--font);color:#fff;text-align:left;cursor:pointer;background:#0f172ad1;border:2px solid rgba(255,255,255,.25);border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:3px}.card.on{border-color:var(--gold);background:#14532deb}.card strong{font-size:15px}.card em{font-size:11px;color:#cbd5e1;font-style:normal}.card .perk{font-size:11px;color:#fde68a}.swatch{width:18px;height:6px;border-radius:2px}.share-card{background:#14532d;border:4px solid var(--gold);border-radius:8px;padding:18px 28px;min-width:min(90vw,520px);display:flex;flex-direction:column;gap:6px}.share-card .brand{color:var(--gold);font-weight:800;font-size:20px}.share-card .big{font-size:clamp(28px,5vw,44px);font-weight:800}#over-stats{color:#d9f99d}.touch{position:fixed;inset:0;pointer-events:none}.joy-zone{position:absolute;left:0;top:18%;bottom:0;width:46%;pointer-events:auto}.joy{position:absolute;left:max(30px,env(safe-area-inset-left));top:calc(100% - 160px);width:120px;height:120px;border-radius:50%;background:#ffffff1f;border:2px solid rgba(255,255,255,.3);pointer-events:none;opacity:.45;transition:opacity .15s}.joy.active{opacity:1;transition:none}.joy-thumb{position:absolute;left:50%;top:50%;width:56px;height:56px;margin:-28px 0 0 -28px;border-radius:50%;background:#fff6}.tbtn{position:absolute;border-radius:50%;border:2px solid rgba(255,255,255,.65);color:#fff;font-family:var(--font);font-weight:800;pointer-events:auto;opacity:.8}.tbtn.down{opacity:1;transform:scale(.94)}.t-attack{right:max(24px,env(safe-area-inset-right));bottom:28px;width:92px;height:92px;background:#dc2626;font-size:20px}.t-special{right:136px;bottom:22px;width:64px;height:64px;background:#16a34a;font-size:22px}.t-dodge{right:40px;bottom:140px;width:60px;height:60px;background:#2563eb;font-size:13px}#rotate{display:none}@media(orientation:portrait)and (pointer:coarse){#rotate{display:flex;position:fixed;inset:0;z-index:99;align-items:center;justify-content:center;background:var(--green-deep);color:var(--gold);font-size:20px;font-weight:800;padding:30px;text-align:center}}@media(max-width:760px){#cards{grid-template-columns:repeat(2,minmax(0,170px))}#select{gap:8px}}@media(max-height:460px){#cards{grid-template-columns:repeat(4,minmax(0,150px))}.card{padding:7px}.card .perk{display:none}#title{padding-top:3vh}}.icon-btn{pointer-events:auto;font-family:var(--font);font-weight:900;font-size:16px;letter-spacing:-1px;width:42px;height:42px;border-radius:8px;border:2px solid rgba(255,255,255,.7);background:#00000073;color:#fff;cursor:pointer;flex:none}.menu{display:flex;flex-direction:column;gap:10px;align-items:stretch;min-width:min(80vw,320px)}.small-btn{font-size:14px;padding:10px 14px;flex:1}#pause{background:#0b1a12d1;z-index:40}#pause .hint{max-width:520px;line-height:1.6}.card .special{display:block;margin-top:4px;font-size:11px;color:#86efac;line-height:1.25}.card .special b{color:#fde68a}
