html,body,#root{width:100%;max-width:100%;min-height:100%;overflow-x:hidden}main.login,main.lobby,main.game{padding-inline:16px}.game>header{margin-inline:-16px}.lobby h1{text-wrap:balance;max-width:100%;margin-inline:auto;line-height:1.35}*{box-sizing:border-box}body{color:#273154;direction:rtl;background:#f5fbff;margin:0;font-family:Vazirmatn,Tahoma,sans-serif}button,input{font:inherit}.login{background:linear-gradient(150deg,#5dddf7,#7a8bff 65%,#bda0ff);justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.logo,.brand{color:#fff;text-shadow:0 4px #4667c5;font-size:3.3rem;font-weight:800;line-height:.8;position:absolute;top:7%;right:9%}.logo span,.brand span{color:#ffdc50}.logo small{text-shadow:none;margin-top:14px;font-size:1rem;display:block}.mascot{filter:drop-shadow(0 15px 8px #2d4cab77);margin-left:300px;font-size:9rem;animation:3s ease-in-out infinite float}.login form{text-align:center;z-index:1;background:#fff;border-radius:35px;width:min(400px,90vw);padding:35px;box-shadow:0 15px #5b68bd55}.login h1{margin:0;font-size:1.5rem}.login p{color:#7180a3}.login input{text-align:center;border:3px solid #e5e9ff;border-radius:16px;outline-color:#7c74f1;width:100%;padding:13px}.login button,.popup>button:last-child{color:#fff;cursor:pointer;background:#ff687f;border:0;border-radius:16px;margin-top:16px;padding:12px 27px;font-weight:800;box-shadow:0 5px #d44d68}.cloud{opacity:.6;font-size:6rem;position:absolute}.c1{top:12%;left:7%}.c2{bottom:4%;right:5%}.lobby{color:#fff;text-align:center;background:#7067ed;min-height:100vh;padding-top:16vh}.spinner{font-size:7rem;animation:2s linear infinite spin}.lobby h1{margin-bottom:0}.lobby b{color:#ffe151;font-size:2rem}.playerchips{flex-wrap:wrap;justify-content:center;gap:12px;max-width:650px;margin:28px auto;display:flex}.playerchips i{color:#4f5399;background:#fff;border-radius:18px;padding:11px 18px;font-style:normal}.playerchips .waiting{opacity:.66;background:#daddff}.game{background:radial-gradient(circle at 80% 10%,#fff7c3,#0000 26%),#eaf8ff;min-height:100vh;padding-bottom:30px}header{color:#fff;direction:rtl;background:#615dd5;justify-content:space-between;align-items:center;height:76px;padding:0 6%;display:flex;box-shadow:0 3px #4b48a9}.brand{text-shadow:0 2px #4443a1;font-size:2rem;position:static}.stage{text-align:center;font-weight:800}.stage b{color:#ffed87;font-size:.75rem;display:block}.score{background:#f8b72d;border-radius:30px;padding:8px 15px;font-weight:800}.race{direction:rtl;grid-template-columns:repeat(4,1fr);gap:10px;width:min(880px,94%);margin:24px auto 12px;display:grid}.race>div{text-align:center;background:#fff;border-radius:13px;padding:7px;font-size:.7rem;box-shadow:0 3px 8px #7396b222}.race span{font-size:1.3rem}.race em{white-space:nowrap;text-overflow:ellipsis;font-style:normal;display:block;overflow:hidden}.track{background:#e8edfa;border-radius:8px;height:7px;margin-top:4px;overflow:hidden}.track i{background:#55cfa2;border-radius:8px;height:100%;transition:width .6s;display:block}.instruction{text-align:center;background:#fff6c4;border-radius:18px;width:max-content;max-width:90%;margin:12px auto;padding:10px;font-size:.85rem}.cards{grid-template-columns:repeat(3,1fr);gap:20px;max-width:900px;margin:auto;padding:15px;display:grid}.card{cursor:pointer;color:#445070;background:#fff;border:0;border-radius:25px;min-height:180px;transition:all .2s;box-shadow:0 7px #c9dcec,0 10px 16px #779bbb35}.card:hover{transform:translateY(-6px)rotate(2deg)}.card span{font-size:5rem;display:block}.card b{font-size:.85rem}.card.done{background:#d6ffdf;box-shadow:0 7px #9bcfa7}.modal{z-index:2;background:#30315a99;justify-content:center;align-items:center;padding:15px;display:flex;position:fixed;inset:0}.popup{text-align:center;background:#fff;border-radius:32px;width:100%;max-width:410px;padding:26px;position:relative;box-shadow:0 12px #28305d44}.close{cursor:pointer;background:#edf0fb;border:0;border-radius:50%;width:30px;height:30px;font-size:1.4rem;position:absolute;top:12px;left:15px}.bigemoji{font-size:8rem;animation:.35s pop}.popup h2{margin:0}.popup p{color:#63708a}.mic{color:#fff;cursor:pointer;background:#5c78f1;border:0;border-radius:50%;width:100px;height:100px;font-size:2.7rem;box-shadow:0 6px #4056ba}.mic small{font-size:.7rem;display:block}.pulse{background:#ff6079;animation:1s infinite pulse}.answer{gap:8px;margin-top:22px;display:flex}.answer button{cursor:pointer;color:#3c4771;background:#f7f8ff;border:2px solid #dce2fa;border-radius:12px;flex:1;padding:8px;font-weight:700}.answer small{color:#8790ad;font-weight:400;display:block}.notice{color:#4aaa70;margin-top:15px;animation:.3s pop;display:block}.victory .popup{border:8px solid #ffd64d}.victory h1{color:#ff6079}.confetti{letter-spacing:7px;font-size:2rem;animation:2s infinite float}.stars{margin:15px;font-size:1.8rem;display:block}@keyframes float{50%{transform:translateY(-12px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pop{0%{transform:scale(.5)}to{transform:scale(1)}}@keyframes pulse{50%{transform:scale(1.08);box-shadow:0 0 0 14px #ff607944}}@media (width<=600px){.mascot{display:none}.login .logo{top:10%;right:50%;transform:translate(50%)}.login form{margin-top:100px}.cards{grid-template-columns:repeat(2,1fr);gap:13px}.card{min-height:145px}.card span{font-size:4rem}.race{grid-template-columns:repeat(2,1fr)}header{padding:0 3%}.stage{font-size:.8rem}.brand{font-size:1.5rem}}.lobby,.game{min-height:100svh;overflow-x:hidden}.lobby{height:100svh;overflow:hidden}.time{color:#50452a;text-align:center;background:#fff2a8;border-radius:999px;min-width:58px;padding:6px 10px;font-weight:800}.time.urgent{color:#fff;background:#ff6c7d;animation:1s infinite pulse}.result-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.result-actions button{color:#fff;cursor:pointer;background:#5c78f1;border:0;border-radius:14px;padding:11px 16px;font-weight:800;box-shadow:0 4px #4056ba}.speak-description{color:#4b4f7d;cursor:pointer;background:#fff4c7;border:0;border-radius:13px;margin:10px auto 16px;padding:9px 16px;font-weight:800;display:block;box-shadow:0 3px #e4cf78}.score-hint{color:#59628c;background:#eef2ff;border-radius:12px;margin:4px auto 10px;padding:8px 10px;font-size:.82rem;line-height:1.7}.score-hint b{color:#ec8b2d}.audio-notice{color:#b36a37;margin-top:10px;font-size:.78rem;line-height:1.6;display:block}
