.user-menu{position:relative;display:inline-block}.user-menu-trigger{display:inline-flex;align-items:center;gap:.5rem;background:var(--bg-elevated);border:1px solid var(--border-soft);border-radius:999px;padding-block:.28rem;padding-inline:.32rem .85rem;cursor:pointer;color:var(--text-primary);font:inherit;transition:border-color .15s ease}.user-menu-trigger:hover{border-color:var(--accent)}.user-menu-avatar{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:.95rem;color:#1a1206;background:linear-gradient(135deg,var(--accent-strong),var(--accent));flex-shrink:0}.user-menu-name{font-size:.85rem;max-width:8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu--topbar{flex-shrink:0}.user-menu--topbar .user-menu-trigger{background:transparent;border-color:transparent;padding-block:.12rem;padding-inline:.18rem .6rem;gap:.4rem}.user-menu--topbar .user-menu-trigger:hover{background:var(--bg-elevated);border-color:var(--border-soft)}.user-menu--topbar .user-menu-avatar{width:22px;height:22px;font-size:.72rem}.user-menu--topbar .user-menu-name{font-size:.8rem;max-width:7rem}.user-menu-dropdown{min-width:11rem;max-width:calc(100vw - 16px);background:var(--bg-panel);border:1px solid var(--border-soft);border-radius:12px;box-shadow:var(--shadow-lg);padding:.35rem;z-index:70;display:flex;flex-direction:column;gap:.1rem}.user-menu-item{display:flex;align-items:center;gap:.5rem;width:100%;text-align:start;background:none;border:none;color:var(--text-primary);font:inherit;font-size:.85rem;padding:.55rem .6rem;border-radius:8px;cursor:pointer}.user-menu-item:hover{background:var(--bg-elevated)}.user-menu-item.danger{color:var(--err)}.user-menu-headline{padding:.5rem .6rem;border-bottom:1px solid var(--border-soft);margin-bottom:.2rem}.user-menu-headline .name{font-size:.85rem;color:var(--text-primary);font-weight:600}.user-menu-headline .handle{font-size:.72rem;color:var(--accent-strong);direction:ltr;text-align:start}.user-menu-headline .guest{font-size:.72rem;color:var(--text-muted)}.user-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:65}.landing-root{--l-gold: var(--accent-strong, #e3c04a);--l-gold-soft: var(--accent, #c9a227);--l-ink: var(--text-primary, #f5deb3);--l-muted: var(--text-secondary, #b8a079);--l-faint: var(--text-muted, #8a7350);--l-panel: rgba(36, 21, 8, .55);--l-border: rgba(201, 162, 39, .22);--l-radius: 1.1rem;width:100%;max-width:100%;overflow-x:clip;min-height:100vh;color:var(--l-ink);background:radial-gradient(circle at 18% -10%,rgba(201,162,39,.16) 0%,transparent 45%),radial-gradient(circle at 90% 110%,rgba(123,47,255,.1) 0%,transparent 45%),var(--bg-deep, #0f0a04)}.landing-hero{position:relative;isolation:isolate;overflow:hidden;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:4rem 1.25rem 5rem}.landing-aurora{position:absolute;top:-30%;right:-20%;bottom:-30%;left:-20%;z-index:-2;background:radial-gradient(40% 50% at 25% 30%,rgba(255,157,47,.35) 0%,transparent 60%),radial-gradient(45% 55% at 75% 35%,rgba(201,162,39,.32) 0%,transparent 60%),radial-gradient(50% 60% at 50% 80%,rgba(198,40,40,.28) 0%,transparent 62%),radial-gradient(40% 50% at 85% 75%,rgba(123,47,255,.26) 0%,transparent 60%);filter:blur(40px);opacity:.85;will-change:transform,opacity;animation:landing-aurora-drift 18s ease-in-out infinite alternate}@keyframes landing-aurora-drift{0%{transform:translate3d(-3%,-2%,0) scale(1);opacity:.7}50%{transform:translate3d(2%,3%,0) scale(1.12);opacity:.95}to{transform:translate3d(4%,-3%,0) scale(1.05);opacity:.78}}.landing-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(rgba(201,162,39,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(201,162,39,.05) 1px,transparent 1px);background-size:46px 46px;mask-image:radial-gradient(circle at 50% 40%,#000 0%,transparent 75%);-webkit-mask-image:radial-gradient(circle at 50% 40%,#000 0%,transparent 75%)}.landing-pieces{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none}.landing-piece{position:absolute;font-size:clamp(1.6rem,6vw,2.6rem);opacity:.22;filter:drop-shadow(0 6px 14px rgba(0,0,0,.5));will-change:transform;animation:landing-float 9s ease-in-out infinite}.landing-piece--1{top:14%;right:12%;animation-delay:0s}.landing-piece--2{top:22%;left:10%;animation-delay:1.4s}.landing-piece--3{top:64%;right:16%;animation-delay:2.6s}.landing-piece--4{top:72%;left:14%;animation-delay:.8s}.landing-piece--5{top:40%;left:6%;animation-delay:3.4s;opacity:.16}@keyframes landing-float{0%,to{transform:translateZ(0) rotate(0)}50%{transform:translate3d(0,-18px,0) rotate(8deg)}}.landing-hero-inner{position:relative;display:flex;flex-direction:column;align-items:center;gap:1.05rem;max-width:640px;animation:landing-hero-in .7s cubic-bezier(.22,1,.36,1) both}@keyframes landing-hero-in{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}.landing-hero-badge{font-size:.78rem;font-weight:700;letter-spacing:.02em;padding:.35rem .9rem;border-radius:999px;color:var(--l-gold);background:#c9a2271f;border:1px solid var(--l-border);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.landing-hero-title{font-size:clamp(2.1rem,9vw,4rem);line-height:1.25;padding-bottom:.18em;font-weight:700;margin:0;background:linear-gradient(135deg,#fff4d6 0%,var(--l-gold) 45%,#ff9d2f 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 38px rgba(201,162,39,.25)}.landing-hero-sub{font-size:clamp(.98rem,4vw,1.25rem);color:var(--l-muted);max-width:32ch;margin:0;line-height:1.7}.landing-hero-cta{margin-top:.4rem;display:inline-flex;align-items:center;gap:.55rem;min-height:54px;padding:0 2rem;border-radius:999px;font-size:1.05rem;font-weight:800;color:#1a1006;background:linear-gradient(135deg,var(--l-gold),var(--l-gold-soft));box-shadow:0 12px 30px #c9a22766,0 0 #c9a22780;transition:transform .16s ease,box-shadow .22s ease;will-change:transform;animation:landing-cta-pulse 2.8s ease-in-out infinite}.landing-hero-cta-icon{font-size:.8rem;display:inline-block;transform:scaleX(-1)}.landing-hero-cta:hover,.landing-hero-cta:focus-visible{transform:translateY(-3px) scale(1.03);box-shadow:0 18px 42px #c9a22780}.landing-hero-cta:active{transform:translateY(-1px) scale(.99)}@keyframes landing-cta-pulse{0%,to{box-shadow:0 12px 30px #c9a22766,0 0 #c9a22773}50%{box-shadow:0 12px 30px #c9a22766,0 0 0 12px #c9a22700}}.landing-hero-stats{display:flex;align-items:center;gap:.6rem;margin-top:.5rem;font-size:.85rem;color:var(--l-faint)}.landing-hero-stats-sep{opacity:.5}.landing-scroll{position:absolute;bottom:1.4rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.2rem;text-decoration:none;color:var(--l-faint);font-size:.72rem}.landing-scroll-arrow{font-size:1rem;animation:landing-bob 1.8s ease-in-out infinite}@keyframes landing-bob{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}.landing-main{position:relative;max-width:1080px;margin:0 auto;padding:0 1rem 1rem}.landing-section{margin:2.6rem 0}.landing-section-title{display:flex;align-items:center;gap:.55rem;font-size:clamp(1.15rem,5vw,1.6rem);font-weight:700;margin:0 0 1.1rem;color:var(--l-ink)}.landing-section-dot{width:9px;height:9px;border-radius:50%;background:var(--ok, #34c759);box-shadow:0 0 10px #34c759cc}.landing-section-dot--soon{background:var(--l-faint);box-shadow:none}.landing-section-count{font-size:.8rem;font-weight:700;color:var(--l-faint);background:#ffffff0d;border:1px solid var(--l-border);border-radius:999px;padding:.1rem .6rem}.landing-featured,.landing-grid{display:grid;grid-template-columns:1fr;gap:1rem}.landing-card{position:relative;display:flex;flex-direction:column;border-radius:var(--l-radius);overflow:hidden;background:var(--l-panel);border:1px solid var(--l-border);box-shadow:var(--shadow-md, 0 6px 18px rgba(0, 0, 0, .45));transition:transform .22s cubic-bezier(.22,1,.36,1),box-shadow .22s ease,border-color .22s ease;will-change:transform}.landing-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1px;background:var(--card-gradient);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .22s ease;pointer-events:none}.landing-card--ready{cursor:pointer}.landing-card--ready:hover,.landing-card--ready:focus-visible{transform:translateY(-6px);border-color:transparent;box-shadow:0 22px 48px #00000080,0 0 32px -4px var(--card-glow, rgba(201, 162, 39, .5))}.landing-card--ready:hover:before,.landing-card--ready:focus-visible:before{opacity:1}.landing-card--ready:active{transform:translateY(-2px) scale(.995)}.landing-card--soon{cursor:default;filter:saturate(.55);opacity:.72}.landing-card--featured .landing-card-art{aspect-ratio:16 / 10}.landing-card-art{position:relative;aspect-ratio:16 / 9;overflow:hidden;background:var(--card-gradient)}.landing-card-cover{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;max-width:100%;object-fit:cover;transition:transform .4s cubic-bezier(.22,1,.36,1)}.landing-card--ready:hover .landing-card-cover{transform:scale(1.06)}.landing-card-art:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0000000d 35%,#080502d9)}.landing-card-icon{position:absolute;bottom:.5rem;right:.7rem;z-index:1;font-size:1.8rem;filter:drop-shadow(0 2px 6px rgba(0,0,0,.7))}.landing-card-badge{position:absolute;top:.6rem;left:.6rem;z-index:1;font-size:.74rem;font-weight:700;padding:.22rem .7rem;border-radius:999px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.landing-card-badge--ready{color:#06270f;background:linear-gradient(135deg,#5be584,#34c759);box-shadow:0 2px 10px #34c75980}.landing-card-badge--soon{color:var(--l-ink);background:#00000080;border:1px solid rgba(255,255,255,.18)}.landing-card-body{display:flex;flex-direction:column;gap:.5rem;padding:.9rem 1rem 1.1rem;flex:1}.landing-card-names{display:flex;flex-direction:column;gap:.15rem;min-height:2.8rem}.landing-card-name-fa{font-size:1.05rem;font-weight:700;color:var(--l-ink);line-height:1.3}.landing-card-name-en{font-size:.78rem;color:var(--l-faint);letter-spacing:.02em}.landing-card-desc{font-size:.86rem;line-height:1.65;color:var(--l-muted);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.landing-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem .7rem;margin-top:.2rem;font-size:.76rem;color:var(--l-faint)}.landing-card-tag{margin-inline-start:auto;font-size:.72rem;font-weight:700;color:var(--l-gold);background:#c9a2271a;border:1px solid var(--l-border);border-radius:999px;padding:.12rem .6rem}.landing-features{display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem}.landing-feature{display:flex;flex-direction:column;gap:.4rem;padding:1.1rem 1rem;border-radius:var(--l-radius);background:var(--l-panel);border:1px solid var(--l-border);text-align:center;align-items:center;transition:transform .2s ease,border-color .2s ease}.landing-feature:hover{transform:translateY(-4px);border-color:#c9a22773}.landing-feature-icon{font-size:1.7rem;line-height:1}.landing-feature-title{font-size:.95rem;font-weight:700;margin:0;color:var(--l-ink)}.landing-feature-desc{font-size:.78rem;line-height:1.6;color:var(--l-muted);margin:0}.landing-footer{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:2.4rem 1rem 3rem;text-align:center;border-top:1px solid var(--l-border);margin-top:1.5rem}.landing-footer-logo{font-size:1.6rem;color:var(--l-gold)}.landing-footer-title{font-weight:700;color:var(--l-ink)}.landing-footer-tag{font-size:.78rem;color:var(--l-faint)}.landing-vote-section-desc{font-size:.86rem;color:var(--l-faint);margin:-.6rem 0 1rem}.landing-section-dot--vote{background:#9c6fff;box-shadow:0 0 10px #9c6fffbf;animation:landing-vote-dot-pulse 2.2s ease-in-out infinite}@keyframes landing-vote-dot-pulse{0%,to{box-shadow:0 0 8px #9c6fffb3}50%{box-shadow:0 0 16px #9c6fff}}.landing-vote-card{filter:none;opacity:1}.landing-vote-pct-badge{position:absolute;top:.55rem;left:.6rem;z-index:2;font-size:1.05rem;font-weight:800;color:#fff;background:#00000085;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:.1rem .65rem;min-width:3rem;text-align:center;text-shadow:0 1px 4px rgba(0,0,0,.8);letter-spacing:.02em}.landing-vote-bar-wrap{height:6px;background:#ffffff14;border-radius:3px;overflow:hidden}.landing-vote-bar{height:100%;width:var(--vote-pct, 0%);background:var(--card-gradient, rgba(201, 162, 39, .7));border-radius:3px;transition:width .7s cubic-bezier(.22,1,.36,1)}.landing-vote-bar--voted{filter:brightness(1.18)}.landing-vote-footer{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.1rem}.landing-vote-count{font-size:.76rem;color:var(--l-faint)}.landing-vote-btn{display:inline-flex;align-items:center;gap:.3rem;font-size:.8rem;font-weight:700;padding:.28rem .8rem;border-radius:999px;border:1.5px solid rgba(255,255,255,.18);background:#ffffff0d;color:var(--l-muted);cursor:pointer;transition:background .15s,border-color .15s,color .15s,transform .12s;white-space:nowrap;flex-shrink:0}.landing-vote-btn:hover{background:#ffffff1c;border-color:#ffffff61;color:var(--l-ink);transform:scale(1.04)}.landing-vote-btn:active{transform:scale(.97)}.landing-vote-btn--voted{color:#ff6b6b;border-color:#ff6b6b73;background:#ff6b6b1a}.landing-vote-btn--voted:hover{background:#ff6b6b2e;border-color:#ff6b6ba6;color:#ff8787}.landing-vote-btn--login{color:#a98fff;border-color:#a98fff59;background:#a98fff12}.landing-vote-btn--login:hover{background:#a98fff24;border-color:#a98fff8c;color:#c0aaff}@media (prefers-reduced-motion: reduce){.landing-section-dot--vote{animation:none}.landing-vote-bar,.landing-vote-btn{transition:none}}.landing-reveal{opacity:0;transform:translateY(26px);transition:opacity .6s cubic-bezier(.22,1,.36,1),transform .6s cubic-bezier(.22,1,.36,1);will-change:opacity,transform}.landing-reveal.is-visible{opacity:1;transform:translateY(0)}@media (min-width: 600px){.landing-features{grid-template-columns:repeat(4,1fr)}.landing-grid,.landing-featured--multi{grid-template-columns:repeat(2,1fr)}}@media (min-width: 900px){.landing-main{padding:0 1.5rem 2rem}.landing-grid{grid-template-columns:repeat(3,1fr)}.landing-section{margin:3.4rem 0}}.landing-grid .landing-reveal{display:flex;flex-direction:column}.landing-grid .landing-card{flex:1}.landing-suggest-card{border-style:dashed;border-color:#ffffff26;background:#ffffff08;cursor:default;filter:none;opacity:1}.landing-suggest-icon{font-size:2.4rem;text-align:center;padding:1.2rem 1rem .5rem;filter:drop-shadow(0 2px 8px rgba(0,0,0,.5))}.landing-suggest-form{display:flex;flex-direction:column;gap:.5rem;margin-top:.25rem}.landing-suggest-input{width:100%;background:#ffffff0f;border:1px solid rgba(255,255,255,.18);border-radius:8px;color:var(--l-ink);font-size:.85rem;padding:.45rem .7rem;font-family:inherit;direction:rtl;outline:none;transition:border-color .15s}.landing-suggest-input::placeholder{color:var(--l-faint)}.landing-suggest-input:focus{border-color:#ffffff61}.landing-suggest-thanks{font-size:.88rem;color:var(--l-muted);text-align:center;padding:.6rem 0}@media (prefers-reduced-motion: reduce){.landing-aurora,.landing-piece,.landing-hero-inner,.landing-hero-cta,.landing-scroll-arrow{animation:none!important}.landing-reveal{opacity:1!important;transform:none!important;transition:none!important}.landing-card,.landing-card-cover,.landing-feature,.landing-hero-cta{transition:none!important}.landing-card--ready:hover,.landing-card--ready:focus-visible,.landing-feature:hover,.landing-hero-cta:hover,.landing-hero-cta:focus-visible{transform:none}.landing-card--ready:hover .landing-card-cover{transform:none}html{scroll-behavior:auto}}@font-face{font-family:Cinzel;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/cinzel-latin-500-normal.woff2) format("woff2")}@font-face{font-family:Cinzel;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/cinzel-latin-700-normal.woff2) format("woff2")}@font-face{font-family:IranYekan;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/iranyekanwebregular.woff2) format("woff2");unicode-range:U+0600-06FF,U+FB50-FDFF,U+FE70-FEFF}@font-face{font-family:IranYekan;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/iranyekanwebbold.woff2) format("woff2");unicode-range:U+0600-06FF,U+FB50-FDFF,U+FE70-FEFF}@font-face{font-family:Vazirmatn;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/vazirmatn.woff2) format("woff2");unicode-range:U+0600-06FF,U+FB50-FDFF,U+FE70-FEFF}:root{--bg-board: #160d05;--bg-deep: #0f0a04;--bg-panel: #241508;--bg-felt: #2d1f10;--bg-elevated: #3a2812;--gem-white: #f5f5f0;--gem-blue: #1565c0;--gem-green: #2e7d32;--gem-red: #c62828;--gem-black: #212121;--gem-gold: #f9a825;--prestige: #ffd700;--accent: #c9a227;--accent-strong: #e3c04a;--border-ornate: #6b4f12;--border-soft: #4a3818;--text-primary: #f5deb3;--text-secondary: #b8a079;--text-muted: #8a7350;--ok: #34c759;--warn: #f5a623;--err: #ef4444;--radius: .7rem;--shadow-md: 0 6px 18px rgba(0, 0, 0, .45);--shadow-lg: 0 14px 40px rgba(0, 0, 0, .55)}body[data-game=risk]{--bg-board: #07101a;--bg-deep: #040c14;--bg-panel: #0c1824;--bg-felt: #101e2c;--bg-elevated: #152434;--accent: #9e7c2e;--accent-strong: #c49a38;--prestige: #c49a38;--border-ornate: #1e3450;--border-soft: #122540;--text-primary: #e4dfc8;--text-secondary: #9eaabb;--text-muted: #566070;background:radial-gradient(ellipse at 10% 0%,rgba(14,30,58,.9) 0%,transparent 50%),radial-gradient(ellipse at 90% 100%,rgba(8,20,40,.8) 0%,transparent 50%),var(--bg-deep)}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;max-width:100%;overflow-x:hidden}html{direction:rtl}body{font-family:IranYekan,Vazirmatn,system-ui,-apple-system,sans-serif;color:var(--text-primary);background:radial-gradient(circle at 20% 0%,#2a1a0a 0%,transparent 55%),radial-gradient(circle at 85% 100%,#1f1407 0%,transparent 55%),var(--bg-deep);min-height:100vh;-webkit-font-smoothing:antialiased}h1,h2,h3,.serif{font-family:IranYekan,Vazirmatn,system-ui,sans-serif;letter-spacing:.01em}button{font-family:inherit;cursor:pointer;border:none;transition:transform .15s ease-out,box-shadow .15s ease-out,background .15s ease-out,opacity .15s ease-out}button:disabled{opacity:.45;cursor:not-allowed}:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-deep)}::-webkit-scrollbar-thumb{background:var(--border-soft);border-radius:8px}::-webkit-scrollbar-thumb:hover{background:var(--border-ornate)}.btn{padding:.7rem 1.3rem;border-radius:var(--radius);font-weight:600;font-size:.95rem;color:#1a1006;background:linear-gradient(135deg,var(--accent-strong),var(--accent));box-shadow:var(--shadow-md)}.btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 26px #c9a22759}.btn:active:not(:disabled){transform:translateY(0)}.btn-ghost{background:transparent;color:var(--text-primary);border:1px solid var(--border-ornate)}.btn-ghost:hover:not(:disabled){background:#c9a2271f}.btn-sm{padding:.4rem .85rem;font-size:.82rem}.input{width:100%;padding:.75rem 1rem;border-radius:var(--radius);background:var(--bg-deep);border:1px solid var(--border-soft);color:var(--text-primary);font-size:1rem}.input:focus{border-color:var(--accent);outline:none}.lobby{min-height:100vh;display:grid;place-items:center;padding:1.5rem}.lobby-card{width:100%;max-width:460px;background:linear-gradient(160deg,var(--bg-panel),var(--bg-deep));border:1px solid var(--border-ornate);border-radius:1rem;padding:2.2rem;box-shadow:var(--shadow-lg);animation:fadeUp .4s ease-out}.lobby-title{font-family:Cinzel,serif;font-size:2.6rem;text-align:center;background:linear-gradient(135deg,var(--prestige),#ff9d2f);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:.25rem;letter-spacing:.06em}.lobby-sub{text-align:center;color:var(--text-secondary);margin-bottom:1.8rem;font-size:.95rem}.field-label{display:block;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:1rem 0 .4rem}.field-hint{font-size:.74rem;color:var(--text-muted);margin-top:.3rem;font-style:italic}.lobby-section{margin-top:0}.player-count{display:flex;gap:.5rem}.count-btn{flex:1;padding:.7rem 0;border-radius:var(--radius);background:var(--bg-deep);border:1px solid var(--border-soft);color:var(--text-secondary);font-weight:700}.count-btn.active{background:#c9a2272e;border-color:var(--accent);color:var(--accent-strong)}.lobby-fixed-count{margin:0;font-size:.85rem;color:var(--text-secondary);padding:.4rem 0}.divider{display:flex;align-items:center;gap:.8rem;margin:1.6rem 0;color:var(--text-muted);font-size:.8rem}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--border-soft)}.error-banner{margin-top:1rem;padding:.7rem 1rem;border-radius:var(--radius);background:#ef444424;border:1px solid rgba(239,68,68,.4);color:#ffb4b4;font-size:.88rem}.waiting{min-height:100vh;display:grid;place-items:center;padding:1.5rem}.waiting-game-name{font-family:Cinzel,serif;font-size:1.5rem;letter-spacing:.08em;text-align:center;color:var(--accent-strong);margin-bottom:.15rem}.waiting .lobby-card{padding:1.5rem 1.8rem;max-width:380px}.waiting .lobby-card h2{font-size:1rem;margin-bottom:.2rem}.waiting .room-code{font-size:1.9rem;letter-spacing:.25em;padding:.3rem 0}.waiting .member-row{padding:.4rem .7rem;margin-bottom:.3rem}.waiting .field-label{margin:.6rem 0 .3rem}.waiting .lobby-sub{margin-bottom:1rem;font-size:.88rem}body[data-game=dracula]{--bg-board: #1a0710;--bg-deep: #0d0408;--bg-panel: #1a0510;--bg-felt: #240812;--bg-elevated: #300a18;--accent: #b22436;--accent-strong: #ef5350;--prestige: #ef5350;--border-ornate: #5c1420;--border-soft: #3a0d18;--text-primary: #f3dede;--text-secondary: #c99a9a;--text-muted: #8a5a5a;background:radial-gradient(ellipse at 50% -5%,rgba(150,0,20,.5) 0%,transparent 55%),var(--bg-deep)}body[data-game=dracula] .waiting-game-name{font-family:Cinzel,serif;background:linear-gradient(135deg,#fff0f0,#ffcdd2,#ef5350,#c62828);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 12px rgba(198,40,40,.7));letter-spacing:.16em;font-size:1.8rem}body[data-game=dracula] .room-code{text-shadow:0 0 16px rgba(198,40,40,.5)}.room-code{font-family:Cinzel,serif;font-size:2.4rem;letter-spacing:.3em;color:var(--prestige);text-align:center;padding:.6rem 0}.member-row{display:flex;align-items:center;gap:.7rem;padding:.65rem .9rem;background:var(--bg-deep);border:1px solid var(--border-soft);border-radius:var(--radius);margin-bottom:.5rem;overflow:hidden}.waiting-for-opponent{display:flex;align-items:center;gap:.6rem;padding:.7rem .9rem;color:var(--text-muted);font-style:italic;font-size:.9rem;border-radius:var(--radius);border:1px dashed var(--border-soft);opacity:.7;margin-bottom:.5rem}.waiting-for-opponent__dots{font-style:normal;animation:waiting-pulse 1.4s ease-in-out infinite}@keyframes waiting-pulse{0%,to{opacity:.3}50%{opacity:1}}.member-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:700;color:#1a1006;background:linear-gradient(135deg,var(--accent-strong),var(--accent));flex-shrink:0}.game{display:grid;grid-template-columns:1fr 320px;grid-template-areas:"board players" "log   players";gap:1rem;padding:1rem;max-width:1100px;margin:0 auto}.board-col{display:flex;flex-direction:column;gap:.9rem;grid-area:board;min-width:0;position:relative;border-radius:var(--radius)}.topbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.6rem;padding:.7rem 1rem;background:linear-gradient(135deg,var(--bg-panel),var(--bg-deep));border:1px solid var(--border-ornate);border-radius:var(--radius)}.brand{font-family:Cinzel,serif;font-size:1.4rem;color:var(--prestige);letter-spacing:.06em}.brand-fa{font-family:IranYekan,Vazirmatn,system-ui,sans-serif;font-weight:700;font-size:1.5rem;background:linear-gradient(135deg,var(--prestige),#ff9d2f);-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:.02em}.brand-link{cursor:pointer;transition:opacity .15s;-webkit-user-select:none;user-select:none}.brand-link:hover{opacity:.75}.game-topbar{display:flex;align-items:center;gap:8px;height:42px;padding:0 10px;flex-shrink:0;overflow:hidden}.game-topbar .brand{flex-shrink:0;font-size:1.1rem}.game-topbar .brand-fa{flex-shrink:0;font-size:1.2rem}.game-topbar .topbar-you{flex-shrink:0}.game-topbar__center{flex:1;min-width:0;display:flex;justify-content:center;align-items:center}.game-topbar__turn{font-size:.8rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.game-topbar__reconnect{display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:600;color:var(--warn, #f5a623);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.game-topbar__reconnect-icon{width:16px;height:16px;flex-shrink:0;animation:reconnect-pulse 1.4s ease-in-out infinite}.game-topbar__reconnect-text{overflow:hidden;text-overflow:ellipsis}@media (max-width: 420px){.game-topbar__reconnect-text{display:none}}.splendor-topbar{background:linear-gradient(135deg,var(--bg-panel),var(--bg-deep));border:1px solid var(--border-ornate);border-radius:var(--radius)}.splendor-topbar .game-topbar__turn{padding:.22rem .7rem;border-radius:999px;background:#c9a22721;border:1px solid var(--border-ornate);color:var(--text-primary)}.splendor-topbar .game-topbar__turn--mine{background:#34c75929;border-color:#34c75973;color:#aef0bf}.nobles-row,.card-rows{background:var(--bg-felt);border:1px solid var(--border-soft);border-radius:var(--radius);padding:.8rem}.row-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);margin-bottom:.55rem}.nobles-grid{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:center;direction:ltr}.card-level{display:flex;align-items:center;justify-content:center;gap:.7rem;margin-bottom:.7rem;direction:ltr}.card-level:last-child{margin-bottom:0}.deck-stub{width:58px;height:86px;border-radius:8px;flex-shrink:0;background-size:cover;background-position:center;border:1px solid var(--border-ornate);display:grid;place-items:end center;position:relative;box-shadow:var(--shadow-md)}.deck-stub .deck-count{font-size:.7rem;font-weight:700;background:#000000a6;width:100%;text-align:center;padding:1px 0;border-radius:0 0 8px 8px}.card-slots{display:flex;gap:.6rem;flex-wrap:wrap;perspective:600px;direction:ltr}.dev-card{width:104px;height:150px;border-radius:9px;position:relative;overflow:hidden;border:2px solid var(--border-soft);background-size:cover;background-position:center;box-shadow:var(--shadow-md);transition:transform .16s ease-out,box-shadow .16s ease-out;flex-shrink:0}.dev-card.empty{background:#00000040;border-style:dashed}.dev-card.affordable:hover{transform:translateY(-5px) scale(1.03);animation-play-state:paused}.dev-card.reservable:hover{border-color:#b06bd6}.card-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0000000d 35%,#000000c7);display:flex;flex-direction:column;justify-content:space-between;padding:5px}.card-head{display:flex;justify-content:space-between;align-items:flex-start}.card-prestige{font-family:Cinzel,serif;font-weight:700;font-size:1.25rem;color:var(--prestige);text-shadow:0 1px 3px #000;padding:0 4px}.bonus-chip{width:24px;height:24px;border-radius:6px;border:2px solid rgba(255,255,255,.7);box-shadow:0 1px 4px #0009}.cost-stack{display:flex;flex-direction:column;gap:3px;align-items:flex-start}.cost-pip{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:.74rem;font-weight:700;border:1.5px solid rgba(255,255,255,.55);box-shadow:0 1px 3px #0009}.noble{width:78px;height:78px;border-radius:8px;position:relative;overflow:hidden;border:2px solid var(--accent);background-size:cover;background-position:center;box-shadow:var(--shadow-md)}.noble .noble-pts{position:absolute;top:2px;left:4px;font-family:Cinzel,serif;font-weight:700;color:var(--prestige);text-shadow:0 1px 3px #000}.noble .noble-req{position:absolute;bottom:3px;left:3px;right:3px;display:flex;gap:2px;flex-wrap:wrap;justify-content:center}.req-pip{font-size:.62rem;font-weight:700;padding:0 3px;border-radius:4px;border:1px solid rgba(255,255,255,.5);color:#fff;background:#00000059}.gem-bank{background:var(--bg-felt);border:1px solid var(--border-soft);border-radius:var(--radius);padding:.9rem}.gem-grid{display:flex;gap:.7rem;flex-wrap:wrap;align-items:center;justify-content:center;direction:ltr}.gem-pile{display:flex;flex-direction:column;align-items:center;gap:.3rem}.gem{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:1.05rem;border:2px solid rgba(255,255,255,.35);box-shadow:inset 0 2px 6px #ffffff40,inset 0 -3px 8px #00000080,var(--shadow-md);position:relative;transition:transform .15s ease-out}.gem.selectable{cursor:pointer}.gem.selectable:hover{transform:scale(1.08)}.gem.picked{outline:3px solid var(--accent-strong);outline-offset:2px}.gem.dimmed{opacity:.4}.gem-count{font-size:.8rem;color:var(--text-secondary);font-weight:600}.sel-badge{position:absolute;top:-8px;right:-8px;width:22px;height:22px;border-radius:50%;background:var(--accent-strong);color:#1a1006;display:grid;place-items:center;font-size:.78rem;border:2px solid var(--bg-felt)}.action-bar{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;padding:.85rem 1rem;background:linear-gradient(135deg,var(--bg-panel),var(--bg-deep));border:1px solid var(--border-ornate);border-radius:var(--radius)}.action-hint{color:var(--text-secondary);font-size:.88rem;flex:1;min-width:160px}.players-col{display:flex;flex-direction:column;gap:.8rem;max-height:calc(100vh - 2rem);overflow-y:auto;grid-area:players}.player-card{background:var(--bg-panel);border:1px solid var(--border-soft);border-radius:var(--radius);padding:.75rem}.player-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.55rem}.online-dot{position:absolute;bottom:-1px;right:-1px;width:9px;height:9px;border-radius:50%;border:2px solid var(--bg-panel)}.online-dot--on{background:var(--ok)}.online-dot--off{background:var(--err)}.player-name{font-weight:700;display:flex;align-items:center;gap:.45rem}.prestige-badge{font-family:IranYekan,Vazirmatn,system-ui,sans-serif;font-weight:700;color:var(--prestige);display:flex;align-items:center;gap:.2rem}.bonus-row,.token-row{display:flex;gap:.35rem;flex-wrap:wrap;margin-top:.4rem}.mini-stack{display:flex;align-items:center;gap:.15rem;font-size:.78rem;font-weight:600}.mini-gem{width:18px;height:18px;border-radius:4px;border:1px solid rgba(255,255,255,.4)}.mini-token{width:18px;height:18px;border-radius:50%;border:1px solid rgba(255,255,255,.4)}.reserved-strip{display:flex;gap:.5rem;margin-top:.5rem;flex-wrap:wrap}.reserved-mini{width:92px;height:132px;border-radius:10px;background-size:cover;background-position:center;border:1.5px solid var(--prestige);position:relative;overflow:hidden}@keyframes reservedAffordableGlow{0%,to{box-shadow:0 0 0 2px #34c759b3,0 0 5px 1px #34c75966}50%{box-shadow:0 0 0 2px #34c759f2,0 0 11px 2px #34c759d9}}.reserved-mini.affordable{cursor:pointer;border-color:var(--ok);animation:reservedAffordableGlow 1.4s ease-in-out infinite}.reserved-mini-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0000000d 30%,#000000c7);display:flex;flex-direction:column;justify-content:space-between;padding:6px}.reserved-mini-head{display:flex;justify-content:space-between;align-items:flex-start}.reserved-mini-prestige{font-family:Cinzel,serif;font-weight:700;font-size:1rem;color:var(--prestige);text-shadow:0 1px 2px #000;line-height:1}.reserved-mini-bonus{width:18px;height:18px;border-radius:5px;border:1.5px solid rgba(255,255,255,.7);box-shadow:0 1px 3px #0009;flex-shrink:0}.reserved-mini-costs{display:flex;flex-direction:column;gap:3px;align-items:flex-start}.reserved-mini-pip{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-size:.65rem;font-weight:700;border:1px solid rgba(255,255,255,.5);box-shadow:0 1px 2px #00000080}.log-box{grid-area:log;background:var(--bg-deep);border:1px solid var(--border-soft);border-radius:var(--radius);padding:.6rem .7rem;font-size:.8rem;color:var(--text-secondary);height:150px;overflow-y:auto}.log-line{padding:2px 0;border-bottom:1px solid rgba(255,255,255,.04)}.fab-group{position:fixed;right:1.4rem;bottom:1.4rem;z-index:40;display:flex;flex-direction:column-reverse;align-items:flex-end;gap:.8rem}.ai-fab{padding:.7rem 1.1rem;border-radius:999px;font-weight:700;font-size:.83rem;color:#fff;background:linear-gradient(135deg,#6a3fb0,#9b6bff);box-shadow:0 10px 28px #6b3fb080;display:flex;align-items:center;gap:.4rem}.ai-fab:hover:not(:disabled){transform:translateY(-3px) scale(1.03)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#080502b8;display:grid;place-items:center;z-index:60;padding:1rem;animation:fadeIn .18s ease-out}.modal{width:100%;max-width:440px;background:linear-gradient(160deg,var(--bg-panel),var(--bg-deep));border:1px solid var(--border-ornate);border-radius:1rem;padding:1.7rem;box-shadow:var(--shadow-lg);animation:scaleIn .2s ease-out}.modal h3{color:var(--accent-strong);margin-bottom:.8rem}.ai-action-badge{display:inline-block;padding:.45rem .9rem;border-radius:var(--radius);background:#9b6bff2e;border:1px solid rgba(155,107,255,.5);color:#cdb4ff;font-weight:600;margin-bottom:.7rem}.modal-actions{display:flex;gap:.6rem;margin-top:1.3rem}.all-rooms-modal{max-width:560px;max-height:80vh;overflow-y:auto}.action-pending-bar{position:fixed;top:0;left:0;height:3px;background:var(--accent, #7c6af3);border-radius:0 2px 2px 0;z-index:9999;pointer-events:none;animation:pending-sweep .7s ease-in-out infinite alternate}@keyframes pending-sweep{0%{width:15%;opacity:.75}to{width:65%;opacity:1}}.toast{position:fixed;top:1rem;left:50%;transform:translate(-50%);z-index:80;padding:.7rem 1.2rem;border-radius:var(--radius);background:#ef4444f2;color:#fff;font-weight:600;box-shadow:var(--shadow-lg);animation:fadeUp .22s ease-out}.reconnect-banner{position:fixed;top:50px;left:50%;transform:translate(-50%);z-index:90;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#160d05d1;border:1px solid rgba(245,166,35,.55);color:var(--warn, #f5a623);box-shadow:var(--shadow-lg);pointer-events:none;opacity:0;animation:reconnect-show .22s ease-out 1.2s forwards}.reconnect-banner svg{width:18px;height:18px;animation:reconnect-pulse 1.4s ease-in-out infinite}@keyframes reconnect-show{0%{opacity:0;transform:translate(-50%,-6px)}to{opacity:1;transform:translate(-50%)}}@keyframes reconnect-pulse{0%,to{opacity:1}50%{opacity:.35}}.win-screen{text-align:center}.win-trophy{font-size:3rem;color:var(--prestige)}@keyframes cardEnter{0%{opacity:0;transform:translateY(-52px) scale(.68) rotateY(22deg)}50%{opacity:1;transform:translateY(8px) scale(1.07) rotateY(-4deg)}72%{transform:translateY(-4px) scale(.97) rotateY(1.5deg)}88%{transform:translateY(2px) scale(1.01) rotateY(-.5deg)}to{opacity:1;transform:translateY(0) scale(1) rotateY(0)}}@keyframes slotGlow{0%{box-shadow:0 0 #c9a22700}30%{box-shadow:0 0 0 6px #c9a2278c}to{box-shadow:0 0 #c9a22700}}.dev-card.card-entering{animation:cardEnter .7s cubic-bezier(.34,1.56,.64,1) both,slotGlow .7s ease-out both;will-change:transform,opacity;transform-style:preserve-3d;backface-visibility:hidden}@keyframes gemFly{0%{transform:translate(var(--sx),var(--sy)) scale(1.3);opacity:1}50%{opacity:1}to{transform:translate(var(--ex),var(--ey)) scale(.5);opacity:0}}.flying-gem{position:fixed;left:0;top:0;width:24px;height:24px;border-radius:50%;pointer-events:none;z-index:9000;border:2px solid rgba(255,255,255,.7);box-shadow:0 2px 14px #0009,0 0 6px #ffffff4d;will-change:transform,opacity;animation:gemFly .65s cubic-bezier(.25,.46,.45,.94) forwards}@keyframes cardExit{0%{transform:scale(1) rotate(0);opacity:1}50%{transform:scale(.72) rotate(-10deg);opacity:.7}to{transform:scale(.1) rotate(-20deg);opacity:0}}.card-ghost-exit{position:fixed;pointer-events:none;z-index:9001;animation:cardExit .52s cubic-bezier(.4,0,.6,1) forwards;will-change:transform,opacity;transform-origin:center center}@keyframes toastAnim{0%{transform:translate(-50%) translateY(-18px);opacity:0}12%{transform:translate(-50%) translateY(0);opacity:1}78%{transform:translate(-50%) translateY(0);opacity:1}to{transform:translate(-50%) translateY(-8px);opacity:0}}.action-toast{position:fixed;top:14px;left:50%;transform:translate(-50%);background:#120c04ed;color:var(--text);border:1px solid rgba(201,162,39,.45);border-radius:8px;padding:7px 20px;font-size:.85rem;max-width:440px;text-align:center;pointer-events:none;z-index:9500;box-shadow:0 4px 22px #0000008c;animation:toastAnim 2.6s cubic-bezier(.4,0,.2,1) forwards;will-change:transform,opacity}@keyframes deckPop{0%{transform:scale(1)}35%{transform:scale(1.16) rotate(-5deg)}70%{transform:scale(.93) rotate(3deg)}to{transform:scale(1) rotate(0)}}.deck-stub.popping{animation:deckPop .55s cubic-bezier(.34,1.56,.64,1);will-change:transform}@keyframes turnPulse{0%,to{opacity:.45}50%{opacity:1}}.board-col:after{content:"";position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border-radius:calc(var(--radius) + 6px);box-shadow:0 0 0 2px #34c759b3,0 0 0 6px #34c75973;pointer-events:none;z-index:-1;opacity:0;transition:opacity .35s ease}.board-col.my-turn:after{opacity:1;animation:turnPulse 1.6s ease-in-out infinite}@keyframes gemPickBounce{0%{transform:scale(1)}35%{transform:scale(1.28) translateY(-5px)}65%{transform:scale(.96) translateY(1px)}to{transform:scale(1.08)}}.gem.picked{animation:gemPickBounce .35s cubic-bezier(.34,1.56,.64,1) forwards;outline:3px solid var(--accent-strong);outline-offset:2px;box-shadow:0 0 16px 4px #c9a2278c,inset 0 2px 6px #ffffff40}@keyframes gemHoverFloat{0%,to{transform:scale(1.08) translateY(0)}50%{transform:scale(1.12) translateY(-3px)}}.gem.selectable:hover:not(.picked){animation:gemHoverFloat .9s ease-in-out infinite;will-change:transform}@keyframes affordableShimmer{0%,to{box-shadow:0 0 0 1px #34c75980,0 0 5px 1px #34c75959}50%{box-shadow:0 0 0 1px #34c759e6,0 0 11px 2px #34c759bf}}.dev-card.affordable{cursor:pointer;border-color:var(--ok);animation:affordableShimmer 1.8s ease-in-out infinite}.player-card.active{border-color:#c9a227d9;box-shadow:0 0 0 2px #c9a22773,var(--shadow-md)}.topbar-you{display:flex;align-items:center;gap:.3rem;padding:.18rem .5rem .18rem .7rem;border-radius:999px;background:#c9a2271a;border:1px solid var(--border-ornate)}.topbar-avatar{width:17px!important;height:17px!important;font-size:.6rem!important;flex-shrink:0}.topbar-name{font-size:.73rem;font-weight:600;color:var(--accent-strong);white-space:nowrap}.player-card.me{background:linear-gradient(160deg,#3c2414,#1a1006)}.me-badge{display:inline-flex;align-items:center;padding:1px 7px;border-radius:999px;background:linear-gradient(135deg,var(--accent-strong),var(--accent));color:#1a1006;font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.color-grid{display:grid;grid-template-columns:repeat(5,1fr) 1fr 46px;gap:2px 3px;margin-top:.55rem;align-items:center;direction:ltr}.color-grid-rowlabel{font-size:.62rem;font-weight:700;text-align:left;padding-left:4px;line-height:1;letter-spacing:-.01em;white-space:nowrap;direction:rtl}.cg-cards{color:var(--accent-strong)}.cg-tokens{color:#7ab8f5}.color-grid-icon{display:flex;justify-content:center;align-items:center}.color-grid-val{text-align:center;font-size:.78rem;font-weight:600;color:var(--text-muted);line-height:1.5;border-radius:3px}.color-grid-val.nonzero{color:var(--text-primary)}.color-grid-val.card-val.nonzero{background:#ffffff0d;color:var(--accent-strong)}.color-grid-val.token-val.nonzero{color:var(--text-primary)}.turn-order-badge{font-size:.68rem;font-weight:700;font-family:Cinzel,serif;color:var(--text-muted);background:#ffffff0f;border:1px solid var(--border-soft);border-radius:4px;padding:1px 5px;flex-shrink:0}.loading-screen{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 0%,#2a1a0a 0%,transparent 55%),radial-gradient(circle at 85% 100%,#1f1407 0%,transparent 55%),var(--bg-deep)}.loading-content{display:flex;flex-direction:column;align-items:center;gap:1.4rem;padding:2rem;text-align:center}@keyframes loadingPulse{0%,to{opacity:1}50%{opacity:.55}}.loading-brand{font-family:Cinzel,serif;font-size:clamp(2.4rem,8vw,3.8rem);background:linear-gradient(135deg,var(--prestige),#ff9d2f);-webkit-background-clip:text;background-clip:text;color:transparent;animation:loadingPulse 2s ease-in-out infinite;letter-spacing:.06em}.loading-gems{display:flex;gap:.7rem;align-items:center}@keyframes gemBounce{0%,60%,to{transform:translateY(0) scale(1);opacity:.45}30%{transform:translateY(-10px) scale(1.15);opacity:1}}.loading-gem{width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.3);box-shadow:0 2px 8px #00000080;animation:gemBounce 1.4s ease-in-out infinite}.loading-bar-track{width:clamp(160px,40vw,240px);height:5px;background:var(--border-soft);border-radius:999px;overflow:hidden}.loading-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--prestige));border-radius:999px;transition:width .18s ease-out}.loading-text{font-size:.85rem;color:var(--text-muted);letter-spacing:.04em}.loading-screen--risk{background:linear-gradient(rgba(196,154,56,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(196,154,56,.04) 1px,transparent 1px),radial-gradient(ellipse at 20% 0%,rgba(14,35,70,.95) 0%,transparent 55%),radial-gradient(ellipse at 85% 100%,rgba(8,18,40,.9) 0%,transparent 55%),#040c14;background-size:44px 44px,44px 44px,100% 100%,100% 100%,100% 100%}.loading-screen--risk .loading-brand{font-family:Cinzel,serif;font-weight:700;letter-spacing:.22em;font-size:clamp(3.5rem,12vw,6rem);background:linear-gradient(160deg,#9e7c2e,#c49a38,#e8c060,#c49a38,#9e7c2e);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none;filter:drop-shadow(0 0 32px rgba(196,154,56,.5)) drop-shadow(0 4px 16px rgba(0,0,0,.8))}.loading-screen--risk .loading-text{font-family:IranYekan,Vazirmatn,system-ui,sans-serif;font-size:.8rem;color:#c49a38a6;letter-spacing:.03em;text-transform:none}.loading-screen--risk .loading-bar-track{width:clamp(180px,44vw,280px);height:4px;background:#1e345099;border:1px solid rgba(196,154,56,.15);border-radius:2px}.loading-screen--risk .loading-bar-fill{background:linear-gradient(90deg,#9e7c2e,#c49a38,#e8c060);border-radius:1px}.loading-armies{display:flex;gap:.6rem;align-items:flex-end;position:relative;padding-bottom:4px}.loading-armies:after{content:"";position:absolute;bottom:0;left:4px;right:4px;height:1px;background:repeating-linear-gradient(90deg,rgba(196,154,56,.4) 0px,rgba(196,154,56,.4) 6px,transparent 6px,transparent 12px)}@keyframes troopDeploy{0%{transform:translateY(10px) scale(.6);opacity:0;box-shadow:0 0 0 0 currentColor}30%{transform:translateY(-4px) scale(1.1);opacity:1;box-shadow:0 0 10px 3px currentColor}55%{transform:translateY(0) scale(1);opacity:.9;box-shadow:0 0 6px 2px currentColor}80%{transform:translateY(0) scale(1);opacity:.9;box-shadow:0 0 6px 2px currentColor}to{transform:translateY(10px) scale(.6);opacity:0;box-shadow:0 0 0 0 currentColor}}.loading-army{width:26px;height:26px;border-radius:4px;border:2px solid rgba(255,255,255,.45);box-shadow:0 3px 10px #000000b3;animation:troopDeploy 1.8s ease-in-out infinite;position:relative;clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%)}.loading-army:before{content:"★";position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:10px;color:#fff9;line-height:26px;text-align:center}.loading-army:nth-child(2n){margin-bottom:6px}@media (max-width: 600px){.lobby-card{padding:1.4rem 1.1rem}.member-row{padding:.4rem .6rem;gap:.5rem;font-size:.9rem}.avatar{width:28px;height:28px;font-size:.85rem}.fab-group{flex-direction:row;align-items:flex-end}.ai-suggest-banner{right:1rem;left:1rem;max-width:none;bottom:6rem;border-radius:12px}}.ai-suggest-banner{position:fixed;right:1.4rem;bottom:5.5rem;z-index:45;display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;background:var(--bg-elevated);border:1px solid var(--border-ornate);border-radius:14px;padding:.6rem .75rem;box-shadow:var(--shadow-md);animation:fadeUp .22s ease-out;max-width:min(300px,calc(100vw - 2.8rem))}.ai-suggest-text{font-size:.78rem;color:var(--text-secondary);flex:1;min-width:0}.ai-suggest-dismiss{background:none;border:none;color:var(--text-muted);font-size:.75rem;padding:0 .25rem;line-height:1;cursor:pointer;flex-shrink:0}.ai-suggest-dismiss:hover{color:var(--text-primary)}.ai-suggest-banner--splendor{background:linear-gradient(135deg,#1e0f3cf7,#2c1a5af7);border-color:#9b6bff80;box-shadow:0 4px 20px #6b3fb059,var(--shadow-md)}.ai-suggest-banner--splendor .btn{background:#6b3fb04d;border-color:#9b6bff99;color:#cdb4ff}.ai-suggest-banner--splendor .btn:hover:not(:disabled){background:#6b3fb080}.ai-suggest-banner--risk{background:linear-gradient(135deg,#141006f7,#2a210af7);border-color:#c8a02873;box-shadow:0 4px 20px #b48c1e4d,var(--shadow-md)}.ai-suggest-banner--risk .btn{background:#b48c1e33;border-color:#c8a0288c;color:#f0d060}.ai-suggest-banner--risk .btn:hover:not(:disabled){background:#b48c1e66}.ai-suggest-banner--dracula{background:linear-gradient(135deg,#080004f7,#180408f7);border-color:#c6282880;box-shadow:0 4px 20px #a0080859,var(--shadow-md)}.ai-suggest-banner--dracula .ai-suggest-text{color:#ffc3afd9}.ai-suggest-banner--dracula .btn{background:#a0080840;border-color:#c6282899;color:#ff8a80}.ai-suggest-banner--dracula .btn:hover:not(:disabled){background:#a0080873}.back-btn{font-size:.78rem;padding:.25rem .6rem;border-radius:999px;color:var(--text-muted);border-color:transparent;align-self:flex-start}.back-btn:hover:not(:disabled){color:var(--text-primary);background:#ffffff0f;transform:none}.peek-btn{padding:2px 8px;border-radius:999px;font-size:.72rem;font-weight:600;background:#6b3fb033;border:1px solid rgba(155,107,255,.45);color:#cdb4ff;cursor:pointer;transition:background .15s,transform .15s;white-space:nowrap}.peek-btn:hover:not(:disabled){background:#6b3fb061;transform:scale(1.05)}.peek-btn:disabled{opacity:.55;cursor:not-allowed}@keyframes peekSlideIn{0%{opacity:0;transform:translateY(-100%) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.peek-notification{position:fixed;top:1rem;left:50%;transform:translate(-50%);z-index:90;width:min(420px,calc(100vw - 2rem));background:linear-gradient(135deg,#2c1a5a,#1a0f38);border:1px solid rgba(155,107,255,.6);border-radius:var(--radius);padding:.9rem 1rem;box-shadow:0 12px 32px #6b3fb080,var(--shadow-lg);animation:peekSlideIn .28s cubic-bezier(.34,1.56,.64,1)}.peek-notif-body{display:flex;gap:.7rem;align-items:flex-start;margin-bottom:.75rem}.peek-notif-icon{font-size:1.4rem;flex-shrink:0;line-height:1}.peek-notif-title{font-size:.88rem;color:var(--text-primary);line-height:1.35}.peek-notif-sub{font-size:.75rem;color:var(--text-muted);margin-top:.2rem}.peek-notif-actions{display:flex;gap:.5rem}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.btn-sm{padding:.3rem .7rem;font-size:.78rem}.btn-ghost{background:transparent;border-color:var(--border-ornate);color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background:#ffffff0f;color:var(--text-primary)}.public-rooms{display:flex;flex-direction:column;gap:.6rem}.public-rooms-group{display:flex;flex-direction:column;gap:.35rem}.public-rooms-group-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding:.2rem 0}.public-room-row{display:flex;flex-direction:column;gap:.2rem;padding:.45rem .6rem;background:var(--bg-deep);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden}.public-room-row-top{display:flex;align-items:center;gap:.5rem}.room-code-tag{font-family:Cinzel,serif;font-size:.74rem;font-weight:700;color:var(--accent-strong);letter-spacing:.08em;flex-shrink:0}.room-members{font-size:.78rem;color:var(--text-secondary);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;min-width:0;width:100%}.room-count{font-size:.74rem;color:var(--text-muted);flex-shrink:0}.public-rooms-refresh{display:flex;flex-direction:column;gap:.4rem;margin-top:.15rem}.refresh-progress{height:2px;border-radius:1px;background:linear-gradient(to left,var(--prestige),rgba(201,162,39,.25));transform-origin:right;animation:refresh-countdown 15s linear forwards}@keyframes refresh-countdown{0%{transform:scaleX(1);opacity:.7}to{transform:scaleX(0);opacity:.15}}.chat-fab{position:fixed;left:1.4rem;bottom:1.4rem;z-index:40;width:3rem;height:3rem;border-radius:50%;font-size:1.25rem;background:var(--bg-elevated);border:1px solid var(--border-soft);box-shadow:0 6px 18px #00000073;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .18s,border-color .18s,transform .15s}.chat-fab:hover{border-color:var(--border-ornate);transform:translateY(-2px)}.chat-fab--open{background:var(--bg-felt);border-color:var(--border-ornate)}.chat-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;border-radius:999px;background:#e53e3e;color:#fff;font-size:.65rem;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 3px;animation:chatBadgePop .3s cubic-bezier(.34,1.56,.64,1)}@keyframes chatBadgePop{0%{transform:scale(0)}to{transform:scale(1)}}.chat-panel{position:fixed;left:1.4rem;bottom:5.4rem;z-index:40;width:min(280px,calc(100vw - 2.8rem));background:linear-gradient(160deg,var(--bg-panel),var(--bg-deep));border:1px solid var(--border-ornate);border-radius:var(--radius);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;animation:fadeUp .2s ease-out}.chat-header{display:flex;align-items:center;justify-content:space-between;padding:.55rem .75rem;border-bottom:1px solid var(--border-soft)}.chat-title{font-size:.8rem;font-weight:700;color:var(--accent-strong);letter-spacing:.04em}.chat-close-btn{background:none;border:none;color:var(--text-muted);font-size:.8rem;cursor:pointer;padding:0 2px;line-height:1}.chat-close-btn:hover{color:var(--text-primary)}.chat-messages{flex:1;overflow-y:auto;padding:.5rem .65rem;max-height:220px;display:flex;flex-direction:column;gap:.4rem}.chat-empty{font-size:.76rem;color:var(--text-muted);text-align:center;padding:.5rem 0;font-style:italic}.chat-msg{display:flex;flex-direction:column;gap:1px}.chat-msg-name{font-size:.68rem;font-weight:700;color:var(--accent)}.chat-msg-text{font-size:.78rem;color:var(--text-primary);word-break:break-word;line-height:1.35}.chat-input-row{display:flex;gap:.4rem;padding:.45rem .65rem;border-top:1px solid var(--border-soft)}.chat-input{flex:1;background:var(--bg-deep);border:1px solid var(--border-soft);border-radius:6px;color:var(--text-primary);font-size:.8rem;padding:.3rem .5rem;outline:none;min-width:0}.chat-input:focus{border-color:var(--border-ornate)}.chat-send-btn{padding:.3rem .6rem;font-size:1rem;line-height:1;flex-shrink:0}.chat-spectator-note{padding:.5rem .8rem;font-size:.75rem;color:var(--text-muted);text-align:center;border-top:1px solid var(--border-soft);font-style:italic}@media (max-width: 600px){.chat-panel{left:0;right:0;width:100%;bottom:5rem;border-radius:var(--radius) var(--radius) 0 0;border-left:none;border-right:none;border-bottom:none}.chat-fab{left:1rem;bottom:1rem}}.spectator-banner{position:fixed;top:.6rem;left:50%;transform:translate(-50%);z-index:50;padding:.25rem .85rem;border-radius:999px;background:#1e1405d9;border:1px solid var(--border-ornate);font-size:.76rem;font-weight:700;color:var(--text-secondary);letter-spacing:.04em;pointer-events:none}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}@media (max-width: 980px){.game{grid-template-columns:1fr;grid-template-areas:"board" "players" "log";padding-bottom:8rem;overflow-x:clip}.players-col{max-height:none}.gem{width:40px;height:40px;font-size:.9rem}.gem-grid{gap:.4rem;flex-wrap:nowrap}.gem-bank{padding:.6rem}}@media (max-width: 600px){.card-rows{padding:.55rem}.card-level{gap:.4rem;margin-bottom:.5rem}.card-slots{flex:1;min-width:0;flex-wrap:nowrap;gap:.4rem}.card-slots .dev-card{flex:1 1 0;width:auto;min-width:0;max-width:104px;height:auto;aspect-ratio:104 / 150;border-width:1.5px}.deck-stub{width:42px;height:auto;aspect-ratio:58 / 86;flex-shrink:0}.card-slots .card-overlay{padding:3px}.card-slots .card-prestige{font-size:.95rem;padding:0 2px}.card-slots .bonus-chip{width:16px;height:16px;border-radius:5px}.card-slots .cost-stack{gap:2px}.card-slots .cost-pip{width:16px;height:16px;font-size:.62rem;border-width:1px}}.landing{min-height:100dvh;display:flex;flex-direction:column;align-items:center;padding:3.5rem 1.2rem 7rem;background:radial-gradient(ellipse 90% 45% at 50% 0%,rgba(201,162,39,.1) 0%,transparent 60%),var(--surface)}.landing-header{text-align:center;margin-bottom:2.8rem}.landing-logo{font-size:2.6rem;margin-bottom:.7rem;line-height:1;display:block;color:var(--prestige);filter:drop-shadow(0 2px 18px rgba(201,162,39,.5))}.landing-title{font-size:clamp(2rem,5.5vw,3.2rem);font-weight:700;background:linear-gradient(140deg,gold,#ff9d2f 55%,gold);-webkit-background-clip:text;background-clip:text;color:transparent;margin:0 0 .55rem;line-height:1.15}.landing-subtitle{font-size:1.05rem;color:var(--text-secondary);margin:0 0 1.1rem}.landing-count{display:inline-flex;align-items:center;gap:.55rem;font-size:.8rem;color:var(--text-muted);background:#ffffff0a;border:1px solid var(--border-soft);border-radius:999px;padding:.32rem 1.1rem}.landing-count-sep{opacity:.35}.landing-featured{width:100%;max-width:600px;margin-bottom:.5rem}.landing-featured--multi{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.15rem;max-width:1200px}.landing-section-head{display:flex;align-items:baseline;justify-content:space-between;width:100%;max-width:1200px;margin:1.6rem 0 .9rem;padding-bottom:.6rem;border-bottom:1px solid var(--border-soft)}.landing-section-label{font-size:.75rem;font-weight:700;letter-spacing:.08em;color:var(--text-muted)}.landing-section-count{font-size:.75rem;color:var(--text-muted);opacity:.55}.landing-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:1.15rem;width:100%;max-width:1200px}.game-card{background:var(--surface-raised);border:1px solid var(--border-soft);border-radius:var(--radius-lg);display:flex;flex-direction:column;overflow:hidden;transition:box-shadow .22s,transform .22s,opacity .2s;position:relative}.game-card-art{height:112px;background:var(--game-gradient, #2d1f10);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0}.game-card-art:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 70% at 50% -10%,rgba(255,255,255,.09) 0%,transparent 65%),linear-gradient(to bottom,transparent 50%,rgba(0,0,0,.5) 100%);pointer-events:none}.game-card-art-cover{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center top;display:block}.game-card-art-bg{position:absolute;font-size:8rem;opacity:.14;filter:blur(12px) saturate(1.4);line-height:1;-webkit-user-select:none;user-select:none;pointer-events:none;transform:translate(-10%,12%)}.game-card-art-icon{font-size:2.9rem;position:relative;z-index:1;filter:drop-shadow(0 4px 18px rgba(0,0,0,.75));line-height:1}.game-card-badge{position:absolute;top:.6rem;right:.65rem;z-index:2;font-size:.65rem;font-weight:700;padding:.22rem .62rem;border-radius:999px;background:var(--game-gradient, var(--accent));color:#fff;letter-spacing:.04em;white-space:nowrap;box-shadow:0 2px 10px #00000080}.game-card-badge--soon{background:#00000080;color:var(--text-muted);border:1px solid rgba(255,255,255,.1);box-shadow:none}.game-card-body{padding:.95rem 1.05rem;display:flex;flex-direction:column;gap:.5rem;flex:1}.game-card-names{display:flex;flex-direction:column;gap:.08rem}.game-card-name-fa{font-size:1.12rem;font-weight:700;color:var(--text-primary);line-height:1.25}.game-card-name-en{font-family:Cinzel,serif;font-size:.69rem;color:var(--text-muted);letter-spacing:.08em}.game-card-desc{font-size:.81rem;color:var(--text-secondary);line-height:1.65;margin:0;flex:1}.game-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.25rem .3rem;margin-top:auto;padding-top:.6rem;border-top:1px solid rgba(255,255,255,.05)}.game-card-meta-item{font-size:.73rem;color:var(--text-muted)}.game-card-meta-sep{font-size:.65rem;color:var(--text-muted);opacity:.3}.game-card-tag{margin-right:auto;font-size:.64rem;font-weight:600;color:var(--text-muted);background:#ffffff0d;border:1px solid rgba(255,255,255,.09);border-radius:999px;padding:.14rem .52rem;white-space:nowrap;letter-spacing:.02em}.game-card--ready{cursor:pointer}.game-card--ready:hover,.game-card--ready:focus-visible{box-shadow:0 0 0 1px #ffffff17,0 16px 40px #00000080,0 0 55px var(--game-glow, rgba(201,162,39,.22));transform:translateY(-4px);outline:none}.game-card--soon{opacity:.62;cursor:default}.game-card--featured .game-card-art{height:168px}.game-card--featured .game-card-art-bg{font-size:12rem;opacity:.16;transform:translate(-6%,18%)}.game-card--featured .game-card-art-icon{font-size:4.2rem}.game-card--featured .game-card-body{padding:1.2rem 1.3rem 1.1rem;gap:.6rem}.game-card--featured .game-card-name-fa{font-size:1.55rem}.game-card--featured .game-card-name-en{font-size:.8rem}.game-card--featured .game-card-desc{font-size:.9rem}.game-card--featured.game-card--ready:hover,.game-card--featured.game-card--ready:focus-visible{box-shadow:0 0 0 1px #ffffff1c,0 20px 55px #0000008c,0 0 80px var(--game-glow, rgba(201,162,39,.3));transform:translateY(-5px)}@media (max-width: 640px){.landing{padding:2.5rem .9rem 5rem}.landing-grid{grid-template-columns:repeat(2,1fr);gap:.85rem}.game-card-art{height:88px}.game-card-art-icon{font-size:2.2rem}.game-card-art-bg{font-size:6rem}.game-card--featured .game-card-art{height:130px}.game-card--featured .game-card-name-fa{font-size:1.25rem}}@media (max-width: 400px){.landing-grid{grid-template-columns:1fr}}.player-timer{font-size:.75rem;font-variant-numeric:tabular-nums;color:var(--text-muted);display:inline-flex;align-items:center;gap:.2rem}.player-timer--elapsed{color:var(--text-muted)}.player-timer--warning{color:var(--warn, #f0a800);font-weight:700;animation:timerShake .4s ease-in-out infinite}.player-timer--done{color:var(--err, #e74c3c);font-weight:700;animation:timerShake .4s ease-in-out infinite}@keyframes timerShake{0%,to{transform:translate(0)}20%{transform:translate(-3px)}60%{transform:translate(3px)}}.timeout-banner{position:fixed;top:0;left:0;right:0;z-index:9999;background:#140a00eb;border-bottom:2px solid var(--warn, #f0a800);display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.45rem 1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:bannerSlideDown .18s ease-out}@keyframes bannerSlideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.timeout-banner-text{font-size:.82rem;color:var(--warn, #f0a800);font-weight:600;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timeout-banner-actions{display:flex;gap:.4rem;flex-shrink:0}.timeout-banner-skip{background:var(--warn, #f0a800);color:#111;font-weight:700}.timeout-banner-skip:hover{background:#d49500}.auth-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:1rem}.btn-link{background:none;border:none;color:var(--accent-strong);font-size:.82rem;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:2px;display:inline}.btn-link:hover{color:var(--prestige)}.lobby .btn-link{text-decoration:none}.lobby .btn-link:hover{text-decoration:underline}.scoreboard-page{display:flex;align-items:flex-start;justify-content:center;min-height:100vh;padding:2rem 1rem}.scoreboard-table{width:100%;border-collapse:collapse;font-size:.9rem;margin-top:1rem;table-layout:fixed}.scoreboard-table th,.scoreboard-table td{padding:.55rem .75rem;text-align:right;border-bottom:1px solid var(--border, rgba(255,255,255,.08))}.scoreboard-table th:first-child,.scoreboard-table td:first-child{width:2.6rem;text-align:center}.scoreboard-table th:nth-child(n+3),.scoreboard-table td:nth-child(n+3){width:4rem;text-align:center}.scoreboard-name-cell{max-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;unicode-bidi:isolate}.scoreboard-table th{font-weight:600;color:var(--text-secondary);font-size:.78rem;text-transform:uppercase}.scoreboard-top td{font-weight:600}.scoreboard-elo{color:var(--accent, #a78bfa);font-weight:700}.loading-screen--dracula{background:radial-gradient(ellipse at 50% -8%,rgba(130,0,0,.7) 0%,transparent 52%),radial-gradient(ellipse at 15% 100%,rgba(70,0,40,.45) 0%,transparent 48%),radial-gradient(ellipse at 85% 100%,rgba(40,0,60,.4) 0%,transparent 48%),#040002}.loading-screen--dracula .loading-brand{font-family:Cinzel,serif;font-weight:900;letter-spacing:clamp(.06em,1.5vw,.28em);font-size:clamp(2rem,8.5vw,5.8rem);text-transform:uppercase;max-width:100%;overflow:hidden;background:linear-gradient(170deg,#fff,#ffcdd2 15%,#ef5350 38%,#c62828 58%,#7b0000 80%,#3e0000);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none;filter:drop-shadow(0 0 32px rgba(198,40,40,.8)) drop-shadow(0 6px 28px rgba(0,0,0,.95));animation:loadingPulse 3.5s ease-in-out infinite}.loading-screen--dracula .loading-text{color:#ffbebe80;font-size:.8rem;letter-spacing:.06em}.loading-screen--dracula .loading-bar-track{background:#50000066;border:1px solid rgba(180,0,0,.3)}.loading-screen--dracula .loading-bar-fill{background:linear-gradient(90deg,#4a0000,#c62828,#ff5252);box-shadow:0 0 10px #c62828a6}.loading-cards{display:flex;gap:.65rem;align-items:flex-end}@keyframes cardFloat{0%,to{transform:translateY(0) rotate(-3deg);opacity:.55}28%{transform:translateY(-18px) rotate(4deg);opacity:1}58%{transform:translateY(-11px) rotate(-1deg);opacity:.8}80%{transform:translateY(-15px) rotate(2deg);opacity:.9}}.loading-card{width:26px;height:39px;border-radius:5px;border:1px solid rgba(255,255,255,.28);box-shadow:0 4px 14px #000000bf,inset 0 1px #ffffff2e;animation:cardFloat 2.4s ease-in-out infinite;position:relative;overflow:hidden}.loading-card:after{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border-radius:3px;background:#00000040;border:1px solid rgba(255,255,255,.1)}.loading-screen--dracula .loading-card:before{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:1rem;line-height:1;z-index:2;pointer-events:none}.loading-screen--dracula .loading-card:after{display:none}.loading-screen--dracula .loading-card:nth-child(1):before{content:"🕯️"}.loading-screen--dracula .loading-card:nth-child(2):before{content:"🩸"}.loading-screen--dracula .loading-card:nth-child(3):before{content:"✝";color:#6a0d0d;font-size:1.4rem;text-shadow:0 1px 2px rgba(0,0,0,.4)}.loading-screen--dracula .loading-card:nth-child(4):before{content:"🗡️"}.loading-screen--dracula .loading-card:nth-child(5):before{content:"⚰";color:#d9cfc7;font-size:1.3rem;text-shadow:0 1px 2px rgba(0,0,0,.5)}.loading-screen--dracula .loading-cards{gap:.9rem;align-items:center}.loading-screen--dracula .loading-card{width:30px;height:44px}
