@import url('https://fonts.googleapis.com/css2?family=Vazirmatn:wght@400;500;600;700;800;900&display=swap');
:root{color-scheme:dark;--bg:#10131f;--panel:#191d2d;--muted:#9da4bc;--text:#f8f7ff;--purple:#9473ff;--pink:#ee7bac;--line:#292e42}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% -10%,#272044 0,transparent 55%),var(--bg);color:var(--text);font-family:Vazirmatn,Tahoma,sans-serif;min-height:100vh}.app{width:min(100%,520px);min-height:100dvh;margin:auto;padding:env(safe-area-inset-top) 22px calc(20px + env(safe-area-inset-bottom));display:flex;flex-direction:column}header{height:76px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff0d}.brand{display:flex;align-items:center;gap:11px}.brand b,.brand small{display:block}.brand b{font-size:17px}.brand small{color:var(--muted);font-size:11px}.logo{width:40px;height:40px;border-radius:14px;background:linear-gradient(145deg,var(--purple),#7352dd);display:grid;place-items:center;font-weight:900;font-size:22px;box-shadow:0 7px 22px #805ee844}.online{font-size:11px;color:#9eabc0}.online i{display:inline-block;background:#5fe2b0;width:7px;height:7px;border-radius:50%;margin-left:5px;box-shadow:0 0 10px #5fe2b0}.screen{display:none;flex:1;animation:in .35s ease}.screen.active{display:block}@keyframes in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}.hero{text-align:center;padding:32px 4px 24px}.hero-art{position:relative;margin:0 auto 19px;width:90px;height:90px;border-radius:30px;background:linear-gradient(145deg,#392b64,#22233c);display:grid;place-items:center;font-size:43px;box-shadow:0 12px 38px #0004}.hero-art span{position:absolute;right:9px;top:8px;color:#ffd578;font-size:17px}.eyebrow{color:#b6a5ff;font-size:12px;font-weight:700;letter-spacing:.3px;margin:0 0 8px}.hero h1{font-size:30px;line-height:1.55;margin:4px 0 9px;font-weight:900}.hero h1 em{font-style:normal;color:#bd9dff}.sub{color:var(--muted);font-size:13px;line-height:1.9;margin:0}.card{background:linear-gradient(150deg,#1b2031,#171a29);border:1px solid #ffffff0d;border-radius:23px;padding:21px;box-shadow:0 18px 45px #0002}label{font-size:12px;color:#c1c4d3;display:block;margin-bottom:9px}input{font:inherit;color:var(--text);background:#10131f;border:1px solid var(--line);border-radius:13px;padding:13px 14px;outline:none;width:100%;font-size:14px}input:focus{border-color:#9174f5;box-shadow:0 0 0 3px #9473ff20}input::placeholder{color:#737b94}button{font:inherit;cursor:pointer;color:inherit;border:0}.primary{width:100%;background:linear-gradient(100deg,#9572ff,#7957e5);border-radius:14px;padding:14px;font-weight:800;margin-top:14px;box-shadow:0 9px 22px #7957e533;transition:transform .15s}.primary:active,.secondary:active{transform:scale(.98)}.primary span{margin-right:7px}.or{display:flex;align-items:center;gap:11px;color:#778097;font-size:11px;margin:17px 0}.or span{height:1px;background:var(--line);flex:1}.join-row{display:flex;gap:9px}.join-row input{text-align:center;letter-spacing:5px;text-transform:uppercase;font-weight:700}.secondary{background:#292442;border:1px solid #413965;border-radius:13px;padding:0 20px;font-weight:700;color:#d5caff}.footnote{text-align:center;font-size:11px;color:#767e94;margin:17px}.room-head{text-align:center;padding:52px 0 24px}.room-code{background:#242039;color:#d2c3ff;border:1px dashed #775fc0;padding:12px 22px;border-radius:14px;font-size:26px;font-weight:900;letter-spacing:7px;margin:6px 0 12px}.room-code span{font-size:16px;letter-spacing:0;margin-right:7px}.back{background:transparent;color:#abb1c4;padding:15px 0}.players-card{margin-top:8px}.section-title{display:flex;align-items:center;justify-content:space-between;font-size:13px;margin-bottom:14px}.section-title span{color:var(--muted);font-size:11px}.players{display:grid;gap:8px;margin:8px 0 16px}.player{display:flex;align-items:center;gap:10px;background:#111522;padding:10px 12px;border-radius:12px}.avatar{width:34px;height:34px;border-radius:11px;background:#352a52;display:grid;place-items:center}.player .name{flex:1;font-size:13px}.host-tag{font-size:10px;color:#c7b8ff;background:#342c50;padding:4px 8px;border-radius:20px}.hint{text-align:center;color:#777f95;font-size:10px;margin:10px 0 0}.game-top{display:flex;align-items:center;justify-content:space-between;padding:20px 0}.pill{font-size:12px;color:#c1c4d3;background:#202436;padding:8px 12px;border-radius:20px}.timer{font-weight:900;font-size:20px;color:#ffc66d}.icon-btn{background:#272b3c;border-radius:50%;width:34px;height:34px;font-size:21px;color:#afb5c7}.turn-banner{text-align:center;border-radius:12px;background:#27223e;color:#c9baff;padding:10px;font-size:12px;margin-bottom:13px}.word-card{background:linear-gradient(135deg,#392d5e,#242442);border:1px solid #ffffff10;border-radius:19px;padding:20px;text-align:center;display:flex;flex-direction:column;gap:7px}.word-card strong{font-size:28px;letter-spacing:3px;color:#fff}.word-card small{color:#c0bad4;font-size:10px}.guess-list{height:150px;overflow:auto;display:flex;flex-direction:column;gap:7px;padding:13px 2px}.guess-item{font-size:12px;color:#c8ccda;background:#191d2c;padding:8px 11px;border-radius:10px;align-self:flex-start;max-width:95%}.guess-item b{color:#bdaaff;margin-left:5px}.guess-box{display:flex;gap:8px}.guess-box button{background:#5fe2b0;color:#10251d;border-radius:12px;padding:0 16px;font-weight:800}.pass{background:transparent;color:#949bb1;font-size:11px;display:block;margin:10px auto 15px}.score-card{background:#191d2c;border-radius:17px;padding:14px}.score-row{display:flex;align-items:center;justify-content:space-between;font-size:11px;padding:6px 2px;color:#d9dbea}.score-row b{color:#ffce78}.score-row .place{color:#8c94aa;width:24px}.score-name{flex:1}.score-card .section-title{margin-bottom:5px}#toast{position:fixed;bottom:82px;left:50%;transform:translate(-50%,15px);opacity:0;pointer-events:none;background:#f5f0ff;color:#211b32;border-radius:12px;padding:10px 16px;font-size:12px;box-shadow:0 8px 30px #0006;transition:.2s;white-space:nowrap;z-index:2}#toast.show{opacity:1;transform:translate(-50%,0)}footer{text-align:center;color:#687087;font-size:10px;padding-top:18px}footer span{color:#e981ad}#final-scores{margin:4px 0 12px}@media(min-height:850px){.hero{padding-top:54px}}
