:root{--bg:#0f1724;--card:#0b1220;--muted:#9aa4b2;--accent:#6ee7b7;--primary:#60a5fa}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,Segoe UI,Roboto;background:linear-gradient(180deg,#071026,#07192b);color:#e6eef6}.container{max-width:960px;margin:48px auto;padding:20px}.card{background:linear-gradient(180deg,#ffffff05,#ffffff03);border:1px solid rgba(255,255,255,.03);padding:20px;border-radius:12px}h1{margin-top:0}.field{margin:12px 0}label{display:block;color:var(--muted);font-size:13px;margin-bottom:6px}input{width:100%;padding:10px;border-radius:8px;border:1px solid rgba(255,255,255,.04);background:transparent;color:inherit}.actions{display:flex;gap:12px;margin-top:12px}button{padding:8px 12px;border-radius:8px;border:none;cursor:pointer}.primary{background:linear-gradient(90deg,var(--primary),#7dd3fc);color:#012a4a;font-weight:600}.secondary{background:transparent;border:1px solid rgba(255,255,255,.06);color:var(--muted)}.game .header{display:flex;justify-content:space-between;align-items:center}.players{display:flex;gap:8px;margin:12px 0}.player{padding:8px 10px;border-radius:8px;background:#ffffff05}.player.current{outline:2px solid var(--accent)}.player-fixed{position:fixed;top:50%;transform:translateY(-50%);background:linear-gradient(180deg,#ffffff05,#ffffff03);border:1px solid rgba(255,255,255,.04);padding:12px 14px;border-radius:10px;z-index:80;min-width:160px;display:flex;flex-direction:column;align-items:flex-start;gap:6px}.player-fixed.left{left:18px}.player-fixed.right{right:18px;align-items:flex-end}.player-fixed .player-name{font-weight:700}.player-fixed .clock{font-size:14px;color:var(--muted)}.player-fixed.current{box-shadow:0 8px 20px #60a5fa1f;outline:2px solid var(--accent)}@media (max-width: 720px){.player-fixed{top:12px;transform:none;min-width:120px}.player-fixed.left{left:12px}.player-fixed.right{right:12px}}.piles{display:flex;gap:12px}.pile{flex:1;padding:12px;background:#0000001f;border-radius:8px}.pile-title{font-weight:600;margin-bottom:8px}.stones{font-size:20px;line-height:1.6;color:var(--accent)}.controls{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.controls button{background:#ffffff05;color:inherit;padding:6px 8px}.controls-top{display:flex;gap:8px;align-items:center}.danger{background:linear-gradient(90deg,#ff6b6b,#ff9a9e);color:#fff;font-weight:600}.winner-modal{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#02061799,#020617cc);z-index:60}.winner-card{background:linear-gradient(180deg,#071026,#081226);padding:36px;border-radius:16px;border:1px solid rgba(255,255,255,.04);text-align:center;box-shadow:0 20px 60px #02061799}.winner-card h1{margin:6px 0 0;font-size:36px}.winner-card h2.winner-name{margin:6px 0 14px;color:var(--accent)}.winner-actions{display:flex;gap:12px;justify-content:center}.firework{width:220px;height:120px;display:block;margin:0 auto 8px;filter:drop-shadow(0 12px 24px rgba(0,0,0,.6))}.firework g circle{transform-origin:60px 60px;animation:burst .9s ease-in-out infinite}@keyframes burst{0%{opacity:0;transform:scale(.6) translateY(6px)}30%{opacity:1;transform:scale(1.1) translateY(-8px)}70%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(1.4) translateY(-40px)}}.winner-card .primary{padding:12px 18px;font-size:16px}.winner-card .secondary{padding:12px 18px}.confetti-root{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.confetti{position:absolute;bottom:0;width:10px;height:18px;border-radius:2px;opacity:0;transform:translateY(0) rotate(0);animation:confetti-fall linear forwards}@keyframes confetti-fall{0%{opacity:1;transform:translateY(0) rotate(0)}to{opacity:0;transform:translateY(-420px) rotate(540deg)}}.bombs-layout{display:flex;gap:20px;justify-content:center;align-items:flex-end;padding:16px}.bomb-pile{width:180px;display:flex;flex-direction:column;align-items:center}.bomb-column{display:flex;flex-direction:column;align-items:center;gap:8px;min-height:140px;padding:8px}.bomb{background:linear-gradient(180deg,#0b1220,#071026);border:1px solid rgba(255,255,255,.04);width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;transition:transform .22s ease,opacity .3s ease}.bomb svg{filter:drop-shadow(0 6px 8px rgba(0,0,0,.6))}.bomb .bomb-fuse{position:absolute;top:6px;right:8px;width:6px;height:6px;border-radius:2px;background:linear-gradient(90deg,#f97316,#f59e0b)}.bomb:hover{transform:translateY(-6px) scale(1.02)}.bomb.blast{animation:blast .42s ease forwards;z-index:3}.bomb.blast:after{content:"";position:absolute;left:50%;top:50%;width:8px;height:8px;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,#ffd166 0%,#ff5e5e 60%,transparent 70%);box-shadow:0 0 12px 6px #ffc8501f}.bomb.blast .particle,.bomb-pile .particle{position:absolute;pointer-events:none}.particle{width:6px;height:6px;border-radius:50%;background:var(--accent);opacity:0;transform:translate(-50%,-50%)}.particle.show{animation:particle .52s ease-out forwards}@keyframes particle{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}60%{opacity:1}to{opacity:0;transform:translate(-200px,-120px) scale(.2)}}.pile-count{margin-top:8px;color:var(--muted)}.thinking-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.thinking-bubble{background:#020617d9;color:#fff;padding:8px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.04);font-weight:600}.bomb-pile.highlight{box-shadow:0 10px 30px #60a5fa24;transform:translateY(-6px)}@keyframes blast{0%{transform:scale(1) translateY(0);opacity:1;filter:hue-rotate(0deg)}40%{transform:scale(1.24) translateY(-8px);opacity:1;filter:hue-rotate(30deg)}to{transform:scale(.2) translateY(-60px);opacity:0;filter:blur(2px) hue-rotate(60deg)}}@media (max-width: 640px){.bomb-pile{width:110px}.bomb{width:44px;height:44px}}.result{margin-top:16px;padding:12px;background:linear-gradient(90deg,#6ee7b714,#60a5fa0f);border-radius:8px}.error{color:#ffb4b4;margin-top:8px}
