:root{--bg: #0f1220;--panel: #1a1f33;--panel-2: #232a44;--accent: #6c8cff;--accent-2: #ffcb6b;--text: #e8ecf8;--muted: #9aa3c0;--good: #5fd38a;--close: #ffcb6b;--bad: #ff7a7a;--radius: 14px}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:radial-gradient(1200px 600px at 70% -10%,#1c2540 0%,var(--bg) 60%),var(--bg);color:var(--text)}button{font:inherit;cursor:pointer}input,select{font:inherit}.app{max-width:1100px;margin:0 auto;padding:0 16px 48px}.topbar{display:flex;align-items:center;justify-content:space-between;padding:16px 0;gap:12px;flex-wrap:wrap}.logo{background:none;border:0;color:var(--text);font-size:1.25rem;font-weight:800}.topbar nav{display:flex;align-items:center;gap:14px}.link{background:none;border:0;color:var(--muted);text-decoration:underline}.link:hover{color:var(--text)}.dot{width:10px;height:10px;border-radius:50%;display:inline-block}.dot.on{background:var(--good)}.dot.off{background:var(--bad)}.lang-switch{background:var(--panel-2);color:var(--text);border:1px solid #33406e;border-radius:8px;padding:6px 8px}.btn{background:var(--panel-2);color:var(--text);border:1px solid #33406e;padding:10px 16px;border-radius:10px}.btn:hover{filter:brightness(1.1)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--accent);border-color:var(--accent);color:#0c1023;font-weight:700}.btn.big{padding:14px 22px;font-size:1.05rem;width:100%;margin-top:18px}.panel{background:var(--panel);border:1px solid #2a3252;border-radius:var(--radius);padding:20px}.center{text-align:center}.hero h1{font-size:2.4rem;margin:16px 0 8px}.hero p{color:var(--muted);max-width:640px;line-height:1.5}.cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:28px}.player-identity{display:inline-block;margin-top:4px;color:var(--accent-2)}.mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}.mode-card{min-height:150px;padding:18px;border:1px solid #33406e;border-radius:var(--radius);background:linear-gradient(145deg,var(--panel-2),var(--panel));color:var(--text);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:7px;text-align:left;transition:transform .12s ease,border-color .12s ease,filter .12s ease}.mode-card:hover:not(:disabled),.mode-card.selected{transform:translateY(-2px);border-color:var(--accent);filter:brightness(1.08)}.mode-card:disabled{cursor:not-allowed;opacity:.58}.mode-card strong{font-size:1.15rem}.mode-card small{color:var(--muted);line-height:1.3}.mode-icon{font-size:1.8rem}.private-actions{margin-top:12px;display:grid;grid-template-columns:auto auto minmax(150px,1fr) auto;align-items:center;gap:10px}.private-actions>span{color:var(--muted);font-size:.9rem}.private-actions input{background:var(--panel-2);border:1px solid #33406e;color:var(--text);padding:10px 12px;border-radius:10px;text-transform:uppercase}.card{background:var(--panel);border:1px solid #2a3252;border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:10px}.card input{background:var(--panel-2);border:1px solid #33406e;color:var(--text);padding:10px 12px;border-radius:10px}.hint{color:var(--muted);font-size:.85rem}.lobby-head{display:flex;justify-content:space-between;align-items:flex-start}.code strong{letter-spacing:3px;font-size:1.3rem;color:var(--accent-2)}.ranked-tag{color:var(--muted);font-size:.9rem}.lobby-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:16px 0}fieldset{border:0;padding:0;display:flex;flex-direction:column;gap:14px}fieldset label{display:flex;flex-direction:column;gap:6px;font-size:.95rem}fieldset label.checkbox{flex-direction:row;align-items:center;gap:8px}select{background:var(--panel-2);border:1px solid #33406e;color:var(--text);padding:8px;border-radius:8px}.waiting{text-align:center;color:var(--muted);margin-top:18px}.players{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.players li{display:grid;grid-template-columns:1fr auto auto;gap:10px;padding:8px 10px;background:var(--panel-2);border-radius:8px;align-items:center}.players li.me{outline:1px solid var(--accent)}.guest{color:var(--muted);font-size:.8rem}.pscore{font-weight:700;color:var(--accent-2)}.game{display:grid;grid-template-columns:1fr 280px;gap:16px;margin-top:8px}.game-main{display:flex;flex-direction:column;gap:14px}.game-side{background:var(--panel);border:1px solid #2a3252;border-radius:var(--radius);padding:16px}.game-side h3{margin:8px 0}.timerbar{position:relative;height:26px;background:var(--panel-2);border-radius:13px;overflow:hidden}.timerfill{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-2));transition:width 1s linear}.timertext{position:absolute;right:12px;top:3px;font-weight:700;color:#0c1023}.round-meta{color:var(--muted)}.notice{background:var(--panel);border:1px solid #2a3252;border-radius:var(--radius);padding:22px;line-height:1.7;font-size:1.05rem;white-space:pre-wrap}.hints{display:flex;gap:8px;flex-wrap:wrap}.hint-chip{background:var(--panel-2);border:1px dashed #4a557f;padding:6px 10px;border-radius:999px;font-size:.85rem}.guessbar{display:flex;gap:10px}.guessbar input{flex:1;background:var(--panel-2);border:1px solid #33406e;color:var(--text);padding:12px 14px;border-radius:10px;font-size:1.05rem}.feedback{padding:10px 14px;border-radius:10px;font-weight:600}.feedback.correct{background:#5fd38a26;color:var(--good)}.feedback.close{background:#ffcb6b26;color:var(--close)}.feedback.wrong{background:#ff7a7a1f;color:var(--bad)}.found-banner{padding:14px;background:#5fd38a26;color:var(--good);border-radius:10px;text-align:center;font-weight:600}.feed{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:.9rem;color:var(--muted)}.reveal .answer strong{color:var(--accent-2);font-size:1.4rem}.masked-terms{color:var(--muted)}.ranking{list-style:none;margin:16px 0;padding:0;display:flex;flex-direction:column;gap:8px}.ranking li{display:grid;grid-template-columns:40px 1fr auto;gap:12px;align-items:center;background:var(--panel-2);padding:12px 14px;border-radius:10px}.ranking li.me{outline:1px solid var(--accent)}.row{display:flex;gap:12px;align-items:center}.authbar{position:relative}.auth-pop{position:absolute;right:0;top:28px;z-index:20;background:var(--panel);border:1px solid #2a3252;border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:8px;width:240px}.auth-pop input{background:var(--panel-2);border:1px solid #33406e;color:var(--text);padding:8px 10px;border-radius:8px}.tabs{display:flex;gap:8px}.tabs button{flex:1;background:var(--panel-2);border:0;color:var(--muted);padding:6px;border-radius:8px}.tabs button.active{background:var(--accent);color:#0c1023}.auth-err{color:var(--bad);font-size:.85rem}.who{color:var(--text);margin-right:8px}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:var(--bad);color:#fff;padding:12px 18px;border-radius:10px;cursor:pointer;box-shadow:0 8px 30px #0006}@media (max-width: 820px){.cards,.lobby-grid,.game,.private-actions{grid-template-columns:1fr}.private-actions>span{text-align:center}}@media (max-width: 520px){.hero h1{font-size:1.8rem;margin-top:8px}.hero p{font-size:.9rem;margin:6px 0}.mode-grid{gap:8px;margin-top:16px}.mode-card{min-height:132px;padding:12px}.mode-card strong{font-size:1rem}.mode-card small{font-size:.76rem}.mode-icon{font-size:1.45rem}}
