:root{--ink:#14123a;--card:#23205a;--tx:#fff6e6;--mut:#b9b6e6;--gold:#FFC547;--or:#FF8A3D;--good:#2ee59d;--bad:#ff5c5c;--line:#3a3790}
*{box-sizing:border-box}html,body{margin:0;height:100%;background:#bfe3f4;color:var(--tx);font:16px/1.4 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;overflow:hidden;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}
#app{position:fixed;inset:0}#gl{position:absolute;inset:0;width:100%;height:100%;touch-action:none;display:block}
#ui{position:absolute;inset:0;pointer-events:none;display:flex;flex-direction:column;justify-content:space-between;padding:env(safe-area-inset-top) 10px env(safe-area-inset-bottom)}
#ui>*{pointer-events:auto}
.row{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.grow{flex:1;min-width:0}.note{color:var(--mut);font-size:14px;margin:0}.warn{color:var(--bad)}
.btn{font:inherit;color:var(--tx);background:var(--card);border:1px solid var(--line);border-radius:14px;padding:8px 12px;min-height:48px;min-width:48px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px}
.btn.small{min-height:44px;min-width:44px;padding:6px 10px}.btn.on{background:var(--or);color:#2a1200;border-color:var(--or);font-weight:700}.btn.dim{opacity:.55}
.btn.primary{background:linear-gradient(135deg,var(--or),#d6246e);border:0;font-weight:700}.btn.big{min-height:56px;font-size:18px;width:100%}
.top{display:flex;flex-direction:column;gap:4px;margin-top:6px;background:rgba(20,18,58,.72);border-radius:14px;padding:6px 8px}
.gold{font-weight:700;color:var(--gold);margin-right:4px}.top .row>span{font-size:14px}
.bar{flex:1;height:10px;background:#0c0b26;border-radius:6px;overflow:hidden}.bar .fill{display:block;height:100%;background:var(--good)}.bar.ek .fill{background:var(--bad)}
.tag{font-size:12px;color:var(--mut)}
.side{position:absolute;right:10px;top:96px;display:flex;flex-direction:column;gap:6px}
.bottom{display:flex;flex-direction:column;gap:6px;margin-bottom:8px;background:rgba(20,18,58,.72);border-radius:16px;padding:8px}
.rec{flex:1;flex-direction:column;gap:0;font-size:14px;line-height:1.1}.rec small{color:var(--gold)}
.ic{display:block;width:18px;height:18px;border-radius:50%;background:#aaa}.ic.spear{background:#9fb4ff}.ic.archer{background:#ffd23f}.ic.cav{background:#ff8a3d}
.hint{position:absolute;left:10px;right:10px;bottom:200px;background:rgba(20,18,58,.85);border-radius:14px;padding:10px 14px;text-align:center;pointer-events:none!important}.hint.gone,.paused{display:none}.paused.show{display:block;position:absolute;left:50%;transform:translateX(-50%);top:98px;background:var(--or);color:#2a1200;padding:4px 14px;border-radius:99px;font-weight:700;pointer-events:none}
.menu{position:absolute;inset:0;overflow:auto;padding:max(24px,env(safe-area-inset-top)) 16px 24px;display:flex;flex-direction:column;gap:12px;max-width:520px;margin:0 auto;background:linear-gradient(180deg,rgba(20,18,58,.86),rgba(20,18,58,.94))}
.logo h1{margin:0;font-size:40px;line-height:1.05;color:var(--gold)}.sub{margin:4px 0 0;color:var(--mut)}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:8px}
.input{font:inherit;width:100%;min-height:48px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:#0c0b26;color:var(--tx)}
.tri{display:flex;gap:8px;align-items:center;font-size:14px}.chip{background:#0c0b26;border-radius:99px;padding:2px 10px}
.stars{font-size:44px;color:var(--gold);letter-spacing:6px;text-align:center}.win{color:var(--good);margin:0}.lose{color:var(--bad);margin:0}
.result{justify-content:center}.toast{position:fixed;left:50%;bottom:150px;transform:translateX(-50%);background:#fff;color:#14123a;padding:10px 16px;border-radius:12px;z-index:9}
