:root{--bg:#070914;--panel:#11162a;--panel2:#171d36;--gold:#ffc94d;--pink:#ff477e;--cyan:#41d9ff;--text:#f7f8ff;--muted:#9fa8c7;--line:#2a3150}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 70% 0,#192754 0,transparent 40%),var(--bg);color:var(--text);font:16px/1.45 system-ui,sans-serif;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:20px}.auth-card{width:min(440px,100%);background:rgba(17,22,42,.94);border:1px solid #35406c;border-radius:26px;padding:30px;box-shadow:0 30px 80px #0008}.brand{display:flex;gap:16px;align-items:center;margin-bottom:24px}.brand h1{margin:0;font-size:2rem;letter-spacing:.12em}.brand p{margin:3px 0;color:var(--muted)}.crown{font-size:3rem;color:var(--gold)}.auth-tabs{display:flex;background:#090c19;border-radius:12px;padding:4px;margin-bottom:20px}.auth-tabs button{flex:1;border:0;background:none;color:var(--muted);padding:10px;border-radius:9px}.auth-tabs .active{background:var(--panel2);color:white}label{display:grid;gap:7px;margin:14px 0;color:#dce1f5}input,select,textarea{background:#090c19;border:1px solid var(--line);color:white;border-radius:10px;padding:12px;outline:none}input:focus,textarea:focus{border-color:var(--cyan)}.check{grid-template-columns:auto 1fr;align-items:center}.check input{width:20px;height:20px}.primary,.secondary{border:0;border-radius:10px;padding:12px 17px;font-weight:750}.primary{background:linear-gradient(135deg,var(--gold),#ff8f3f);color:#17110a}.secondary{background:var(--panel2);color:white;border:1px solid var(--line)}form>.primary{width:100%;margin-top:12px}.link{padding:0;border:0;background:none;color:var(--cyan);text-align:left}.error{color:#ff89a8;min-height:24px}small{color:var(--muted)}header{height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;background:#0c1021;border-bottom:1px solid var(--line);position:fixed;inset:0 0 auto 0;z-index:5}.mini-brand{font-weight:900;letter-spacing:.1em}.user-pill{display:flex;gap:14px;align-items:center}.user-pill button,#menu{border:0;background:none;color:var(--muted)}#menu{display:none;font-size:1.4rem}aside{position:fixed;top:70px;bottom:36px;width:235px;background:#0c1021;border-right:1px solid var(--line);padding:20px 12px;display:flex;flex-direction:column;justify-content:space-between}nav{display:grid;gap:7px}nav button,nav a{border:0;background:none;color:var(--muted);text-decoration:none;text-align:left;padding:12px;border-radius:10px}nav button:hover,nav a:hover,nav .active{background:var(--panel2);color:white}.status{color:var(--muted);padding:10px}.status i{display:inline-block;width:9px;height:9px;border-radius:50%;background:#33df83}main{margin:70px 0 36px 235px;padding:26px;min-height:calc(100vh - 106px)}footer{position:fixed;bottom:0;left:235px;right:0;height:36px;background:#090c19;color:#737c9c;text-align:center;padding:9px;font-size:.75rem}.page{display:none;max-width:1050px;margin:auto}.page.active{display:block}.page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.page-head h2{margin:0;font-size:1.8rem}.page-head p{margin:4px 0;color:var(--muted)}.messages{height:calc(100vh - 270px);min-height:350px;overflow:auto;background:rgba(17,22,42,.7);border:1px solid var(--line);border-radius:18px;padding:16px}.message{display:grid;grid-template-columns:44px 1fr;gap:10px;padding:10px;border-bottom:1px solid #202641}.avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#4f5eb8,#9a4fb8);font-weight:800}.message b{color:var(--cyan)}.message time{color:var(--muted);font-size:.75rem;margin-left:8px}.message p{margin:4px 0}.composer{display:flex;gap:10px;margin-top:10px}.composer input{flex:1}.composer button{width:50px;border:0;border-radius:10px;background:var(--cyan);font-size:1.3rem}.emoji-bar{display:flex;gap:7px;padding:9px;overflow:auto}.emoji-bar button{border:0;background:var(--panel2);border-radius:8px;padding:7px;font-size:1.2rem}.quiz-stage{max-width:760px;margin:5vh auto;background:linear-gradient(145deg,#171d36,#0b0e1c);border:2px solid #675cb2;border-radius:28px;padding:34px;box-shadow:0 0 60px #5b3fd433}.eyebrow{text-align:center;color:var(--gold);letter-spacing:.18em;font-weight:900}.quiz-stage h2{text-align:center;font-size:1.7rem;min-height:80px}.answers{display:grid;grid-template-columns:1fr 1fr;gap:12px}.answers button{background:#222b52;border:1px solid #45548a;color:white;padding:16px;border-radius:14px;text-align:left}.answers button.correct{background:#1e7d52}.answers button.wrong{background:#8b2c4a}.quiz-foot{display:flex;justify-content:space-between;color:var(--muted);margin-top:18px}.table{height:650px;max-width:900px;margin:auto;border-radius:45%;background:radial-gradient(circle,#197050,#0d4c37);border:12px solid #3a281b;position:relative}.opponent{position:absolute;background:#10162a;border-radius:12px;padding:10px 16px}.top{top:20px;left:50%;transform:translateX(-50%)}.left{left:20px;top:46%}.right{right:20px;top:46%}.trick{position:absolute;inset:42% 35%;display:grid;place-items:center;text-align:center}.hand{position:absolute;bottom:25px;left:10%;right:10%;display:flex;justify-content:center}.card{width:58px;height:84px;margin-left:-12px;background:white;color:#161616;border:1px solid #bbb;border-radius:7px;padding:5px;font-weight:800;box-shadow:0 4px 10px #0007}.card.red{color:#d41f38}.topics,.leaderboard{display:grid;gap:10px}.topic,.rank{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;justify-content:space-between}.rank:first-child{border-color:var(--gold);box-shadow:0 0 24px #ffc94d22}.small{padding:9px 13px}.rules{max-width:760px;margin:auto;background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:24px}.rules li{padding:8px}dialog{background:#11162a;color:white;border:1px solid var(--line);border-radius:18px;width:min(600px,92vw)}dialog::backdrop{background:#000b}textarea{min-height:140px;resize:vertical}.dialog-actions{display:flex;justify-content:flex-end;gap:10px}.dialog-actions .primary{width:auto;margin:0}@media(max-width:760px){#menu{display:block}.mini-brand{font-size:.85rem}.user-pill{gap:6px}.user-pill>span{display:none}aside{transform:translateX(-100%);z-index:4;transition:.2s}aside.open{transform:none}main{margin-left:0;padding:18px}footer{left:0}.answers{grid-template-columns:1fr}.table{height:520px;border-radius:26px}.card{width:46px;height:70px;font-size:.8rem}.page-head{align-items:flex-start;gap:10px}.messages{height:calc(100vh - 290px)}}
