*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,sans-serif;background:#090d1a;color:#eef2ff;min-height:100vh}.bg{position:fixed;inset:0;background:radial-gradient(circle at 10% 10%,#243b7b88,transparent 35%),radial-gradient(circle at 90% 80%,#6d214f66,transparent 35%),linear-gradient(135deg,#070a12,#11182c);z-index:-1}.shell{max-width:1180px;margin:auto;padding:28px}.topbar,.room-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}h1,h2,h3{margin:.2rem 0}.eyebrow{font-size:11px;letter-spacing:.18em;color:#9da9ca}.card{background:#11182cdd;border:1px solid #ffffff17;border-radius:24px;padding:24px;box-shadow:0 24px 80px #0006;backdrop-filter:blur(14px)}.auth{max-width:430px;margin:70px auto}.tabs{display:flex;background:#080c18;border-radius:14px;padding:4px;margin:20px 0}.tabs button{flex:1;background:none;border:0;color:#aab3cb;padding:10px;border-radius:11px}.tabs .active{background:#26375e;color:white}label{display:block;margin:13px 0;color:#b9c2d9;font-size:14px}input{width:100%;margin-top:6px;background:#080c18;border:1px solid #2c3857;border-radius:12px;padding:13px;color:white;font-size:16px}.primary,.ghost,.copy,.countries button,.piece,.token{cursor:pointer}.primary{border:0;border-radius:14px;padding:13px 18px;background:linear-gradient(135deg,#6e7dff,#a448e8);color:white;font-weight:800}.primary.big{font-size:18px;width:100%;padding:18px}.primary:disabled,.ghost:disabled{opacity:.35;cursor:not-allowed}.ghost{border:1px solid #ffffff25;background:#ffffff0c;color:white;padding:9px 13px;border-radius:12px}.ghost.full{width:100%;margin-top:10px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.inline{display:flex;gap:10px}.inline input{margin:0}.hidden{display:none!important}.msg{color:#ff8eaa;margin-top:12px}.country{max-width:720px;margin:50px auto}.countries{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px}.countries button{border:1px solid #ffffff18;background:#0a1020;color:white;border-radius:18px;padding:20px;font-size:18px}.countries span{display:block;font-size:38px}.status{padding:8px 13px;border-radius:99px;background:#ffffff12}.status.playing{background:#1f8f5d55}.status.finished{background:#d59b2055}.copy{font-size:12px;border:0;background:#ffffff12;color:white;padding:7px 10px;border-radius:9px}.game-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px}.board{position:relative;aspect-ratio:1/1;max-width:700px;margin:auto;border-radius:50%;background:radial-gradient(circle,#202d4e 0 21%,#0c1222 22% 55%,#151f37 56%);border:10px solid #222f50;box-shadow:inset 0 0 80px #0008}.cell{position:absolute;width:4.5%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:#dbe4ff22;border:1px solid #ffffff28;display:grid;place-items:center;font-style:normal;font-size:10px;color:#ffd66b}.center{position:absolute;inset:35%;display:grid;place-items:center;text-align:center;background:#0a1020;border-radius:50%;border:1px solid #ffffff22}.dice{font-size:42px;font-weight:900}.piece{position:absolute;transform:translate(-50%,-50%);width:5.2%;aspect-ratio:1;border-radius:50%;border:2px solid white;color:white;font-weight:900;z-index:2}.italia{background:#1da36c}.rusia{background:#356ae6}.francia{background:#e04e55}.camerun{background:#e0a72e}.player{margin-top:12px;padding:12px 14px;border-radius:14px;background:#080d1a;display:flex;justify-content:space-between;align-items:center;border:1px solid transparent}.player.turn{border-color:#c186ff;box-shadow:0 0 25px #9a4fff33}.player small{display:block;color:#8792ad}.mini{display:flex;gap:5px}.token{width:30px;height:30px;border-radius:50%;border:1px solid white;color:white}.events{max-height:260px;overflow:auto}.events div{padding:9px 0;border-bottom:1px solid #ffffff10}.events small{display:block;color:#7e89a4;font-size:10px}.rules{color:#9ca8c4;font-size:13px;line-height:1.5}.winner{text-align:center;font-size:45px}.winner h3{font-size:24px}.winner p{font-size:13px;color:#9ca8c4}@media(max-width:820px){.shell{padding:16px}.grid,.game-grid{grid-template-columns:1fr}.topbar{align-items:flex-start}.card{padding:16px;border-radius:18px}.countries{grid-template-columns:1fr 1fr}.controls{order:-1}.board-card{padding:10px}.cell{width:5.5%}.piece{width:7%}}
