:root{--ink:#1a0f08;--wood-0:#2a1810;--wood-1:#3a2418;--wood-2:#4a2d1c;--wood-3:#5c3a24;--wood-4:#7a4e30;--wood-5:#9a6640;--wood-6:#c19465;--parch-0:#f4e4c1;--parch-1:#e8d199;--parch-2:#d4b679;--parch-3:#b8935a;--candle:#ffb74d;--candle-glow:#ffd98a;--ember:#e64a19;--blood:#8b2e2e;--moss:#5a7a3e;--gold:#d4a24a;--gold-hi:#ffd97a;--gold-lo:#8a6020}html,body{max-width:100%;overflow-x:hidden}.tavernRoot{image-rendering:pixelated;-webkit-font-smoothing:none;color:var(--parch-0);background:radial-gradient(at top,#ffb74d1f,#0000 60%),repeating-linear-gradient(0deg,#0a0503 0 2px,#0f0805 2px 4px);min-height:100vh;font-family:Pixelify Sans,"Press Start 2P",monospace}.tvScanlines:after{content:"";pointer-events:none;mix-blend-mode:multiply;z-index:9999;background:repeating-linear-gradient(0deg,#0000001f 0 2px,#0000 2px 4px);position:fixed;inset:0}.tvVignette:before{content:"";pointer-events:none;z-index:9998;background:radial-gradient(#0000 40%,#0000008c 100%);position:fixed;inset:0}.tavernRoot ::-webkit-scrollbar{width:10px;height:10px}.tavernRoot ::-webkit-scrollbar-thumb{background:var(--wood-3);border:2px solid var(--wood-1)}.tavernRoot ::-webkit-scrollbar-track{background:var(--wood-0)}.pfont{letter-spacing:.02em;font-family:"Press Start 2P",monospace}.vt323{letter-spacing:.04em;font-family:VT323,monospace}.pixfont{font-family:Pixelify Sans,monospace}@media (width<=760px){.hideMobile{display:none!important}}@media (width>=768px){.mobileMenuBtn{display:none!important}}@media (width<=767px){.desktopNav{display:none!important}}@keyframes tvFlicker{0%{opacity:.85;transform:translate(-1px)scaleY(1)}to{opacity:1;transform:translate(1px)scaleY(1.1)}}@keyframes tvRoll{0%{transform:translate(0)rotate(0)}25%{transform:translate(-8px,-4px)rotate(-30deg)}50%{transform:translate(6px,-8px)rotate(60deg)}75%{transform:translate(-4px,-2px)rotate(-45deg)}to{transform:translate(0)rotate(0)}}@keyframes tvBob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes tvDropIn{0%{opacity:0;transform:translateY(-40px)scale(1.1)}70%{opacity:1;transform:translateY(4px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes tvPoof{0%{opacity:1;filter:brightness();transform:scale(1)}50%{opacity:.9;filter:brightness(1.8)hue-rotate(-20deg);transform:scale(1.3)}to{opacity:0;filter:brightness(.4);transform:scale(0)}}@keyframes tvPulse{0%,to{box-shadow:0 0 0 2px #000,0 0 12px #ffd98a66}50%{box-shadow:0 0 0 2px #000,0 0 20px #ffd98ae6}}@keyframes tvSparkle{0%,to{opacity:0;transform:scale(0)}50%{opacity:1;transform:scale(1)}}.pregameAdSlot{width:100%;max-width:300px;min-height:250px;margin:16px auto;display:block}.pregameAdSlot .adsbygoogle{max-width:300px;max-height:250px;margin:0 auto}.bottomBannerAd{width:100%;max-width:728px;margin:16px auto;display:block}.bottomBannerAd .adsbygoogle{max-width:728px;max-height:90px;margin:0 auto}@media (width<=767px){.bottomBannerAd{max-width:320px}.bottomBannerAd .adsbygoogle{max-width:320px;max-height:50px}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-ink:#1a120d;--bg-smoke:#251710;--oak-900:#24150f;--oak-800:#342018;--oak-700:#4b3022;--oak-600:#6f4932;--leather-500:#80573c;--leather-400:#9c6b47;--parchment-100:#ead8b3;--parchment-200:#d7bf92;--gold-300:#d7b574;--gold-500:#9e7740;--wine-500:#6d2233;--pine-500:#345349;--fog:#ffefd3b8;--text-strong:#f4e7c6;--text-soft:#f4e7c6bd;--stroke:#eed3a52e;--stroke-strong:#eed3a552;--shadow-lg:0 26px 80px #0000006b;--shadow-md:0 18px 36px #00000047;--radius-xl:30px;--radius-lg:22px;--radius-md:16px;--table-tone:#4d3426;--board-tone:#6b4732;--dice-tone:#d3b68b;--brand-display:"Palatino Linotype", "Book Antiqua", "URW Palladio L", serif;--brand-body:"Trebuchet MS", "Gill Sans", "Segoe UI", sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{color:var(--text-strong);font-family:var(--brand-body);background:radial-gradient(circle at 0 0,#a25f2e33,#0000 28%),radial-gradient(circle at 100% 0,#66222629,#0000 26%),linear-gradient(#160f0b,#241711 36%,#1b120d 100%);overflow-x:hidden}button,input{font:inherit}a{color:inherit;text-decoration:none}.appFrame{min-height:100dvh;padding:18px 14px 96px;position:relative}.tableAura{filter:blur(72px);opacity:.22;pointer-events:none;border-radius:999px;width:38vw;height:38vw;position:fixed;inset:auto}.tableAura-left{background:#b2643161;top:12vh;left:-8vw}.tableAura-right{background:#7b263157;bottom:20vh;right:-12vw}.topChrome,.tableViewport,.bottomRail{z-index:1;position:relative}.topChrome{justify-content:space-between;align-items:flex-start;gap:14px;width:min(1240px,100%);margin:0 auto 18px;display:flex}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--text-soft);margin:0 0 8px;font-size:.75rem}.brandWordmark{font-family:var(--brand-display);letter-spacing:-.04em;text-shadow:0 2px #00000059;font-size:clamp(2rem,5vw,4rem);line-height:.92;display:inline-block}.statusCluster{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.statusPill,.miniProfile,.bottomRail__item,.cta,.chipButton,.swatch,.catalogCard,.listRow,.rankingRow{transition:transform .16s,border-color .16s,background-color .16s,box-shadow .16s}.statusPill{border:1px solid var(--stroke-strong);background:#1d120e9e;border-radius:999px;padding:8px 12px;font-size:.82rem}.statusPill-live{background:#335b486b}.statusPill-draft{background:#6d22336b}.miniProfile{border:1px solid var(--stroke);background:#281812ad;border-radius:999px;align-items:center;gap:10px;padding:8px 10px;display:inline-flex}.miniProfile__crest{color:#1a120d;background:linear-gradient(135deg,#7f5539,#d1af73);border-radius:999px;place-items:center;width:32px;height:32px;font-weight:800;display:grid}.tableViewport{width:min(1240px,100%);margin:0 auto}.pageStack{gap:16px;display:grid}.panel,.parchmentCard{border-radius:var(--radius-xl);border:1px solid var(--stroke);box-shadow:var(--shadow-md)}.panel{background:linear-gradient(#492e1feb,#281812fa);padding:clamp(16px,4vw,26px)}.panel-hero{background:radial-gradient(circle at 100% 0,#d4b26a26,#0000 24%),linear-gradient(#613a27f5,#2a1b14fa)}.parchmentCard{color:#2d1b11;background:linear-gradient(#ecdab7f7,#d1b888f0);padding:clamp(16px,4vw,24px)}.parchmentCard .mutedText,.parchmentCard .eyebrow,.parchmentCard small{color:#2d1b11b3}.homeHero,.heroCard{min-height:0}.heroCard{grid-template-columns:minmax(0,1.6fr) minmax(260px,.9fr);gap:18px;display:grid}.heroCopy h1,.authPanel h1,.profileHero h1,.modeShelf h1{font-size:clamp(2rem,5vw,4rem);line-height:.94;font-family:var(--brand-display);margin:0 0 10px}.lede,.mutedText{color:var(--text-soft);margin:0;line-height:1.6}.heroActions,.authActions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.heroStats,.profileMetaGrid,.panelGrid,.modeChips,.catalogGrid,.swatchGrid{gap:12px;display:grid}.heroStats{align-content:start}.statCard{border:1px solid var(--stroke);background:#170f0b61;border-radius:22px;gap:4px;padding:14px 16px;display:grid}.statCard strong{font-size:clamp(1.4rem,4vw,2.6rem);font-family:var(--brand-display)}.parchmentCard .statCard{background:#fff6dd8a}.cta{border:1px solid var(--stroke-strong);cursor:pointer;border-radius:18px;justify-content:center;align-items:center;padding:12px 16px;display:inline-flex}.cta:hover,.chipButton:hover,.catalogCard:hover,.swatch:hover,.bottomRail__item:hover{transform:translateY(-1px)}.cta-primary{color:#130d09;background:linear-gradient(#b38951,#7d5634);font-weight:800}.cta-secondary{background:#f4e7c614}.cta-ghost{background:0 0}.panelGrid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.panelGrid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.modeShelf{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:16px;display:grid}.playPage{grid-template-rows:auto minmax(0,1fr);height:calc(100dvh - 228px);min-height:calc(100dvh - 228px);overflow:hidden}.playTopBar{grid-template-columns:minmax(0,1.1fr) minmax(0,1.4fr) minmax(220px,.9fr);align-items:stretch;gap:14px;padding:14px 16px;display:grid}.playTopBar__copy h1{font-size:clamp(1.65rem,3.4vw,2.8rem);line-height:.95;font-family:var(--brand-display);margin:0 0 6px}.playModeStrip{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.playChip{min-height:100%;padding:12px}.playTopStats{grid-template-columns:repeat(2,minmax(0,1fr));align-content:stretch;gap:10px;display:grid}.metaPill{border:1px solid var(--stroke);background:#140c095c;border-radius:18px;gap:4px;padding:12px 14px;display:grid}.metaPill span,.turnPanel span,.dieTray span,.infoLine{letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}.metaPill strong{font-size:1rem;line-height:1.2}.playResetButton{grid-column:1/-1;width:100%}.modeChips{grid-template-columns:repeat(3,minmax(0,1fr))}.chipButton{text-align:left;border:1px solid var(--stroke);color:var(--text-strong);cursor:pointer;background:#150d0a5c;border-radius:22px;gap:6px;padding:16px;display:grid}.chipButton.is-active{border-color:#d7b574a3;box-shadow:inset 0 0 0 1px #d7b57452}.gameTable{background:linear-gradient(#543724f5,#2a1b14fa);grid-template-columns:minmax(240px,300px) minmax(0,1fr);gap:16px;padding:14px;display:grid}.gameTable--arena{grid-template-columns:minmax(0,1fr) minmax(156px,.34fr) minmax(0,1fr);align-items:stretch;height:100%;min-height:0;overflow:hidden}.gameSidebar{align-content:start;gap:12px;display:grid}.gameSidebar--center{grid-auto-rows:min-content;align-content:center;min-height:0;padding:14px}.turnPanel,.dieTray,.infoLine{text-align:center;background:#fff8e885;border:1px solid #2d1b111f;border-radius:20px;gap:6px;padding:12px;display:grid}.turnPanel strong,.dieTray strong{font-family:var(--brand-display)}.turnPanel strong{font-size:clamp(1.2rem,2vw,1.8rem)}.infoLine{color:#2d1b11b8;text-transform:none;letter-spacing:0;line-height:1.4}.statCard-die{background:radial-gradient(circle,#d7b5742e,#ffffff0f)}.dieToken{background:var(--dice-tone);color:#23160f;border-radius:18px;place-items:center;width:68px;height:68px;display:grid;box-shadow:inset 0 -8px 18px #0000002e}.combatBoard{background:linear-gradient(180deg, color-mix(in srgb, var(--board-tone) 88%, #160f0b 12%), color-mix(in srgb, var(--board-tone) 62%, #2a1b15 38%));height:100%;min-height:0;box-shadow:inset 0 0 0 1px #fff4df0d, var(--shadow-md);border:1px solid #e9cb9e29;border-radius:32px;grid-template-rows:auto minmax(0,1fr);padding:14px;display:grid}.combatBoard-player{outline:1px solid #d7b57438}.combatBoard .boardCard,.combatBoard .boardGridWrap{min-height:0}.boardBanner{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.boardBanner h2{font-family:var(--brand-display);margin:0}.boardBanner strong{font-size:clamp(1.5rem,3vw,2.6rem);font-family:var(--brand-display)}.scoreSeal{text-align:center;min-width:62px}.authLayout{max-width:760px;margin-inline:auto}.authFormModern{gap:12px;margin-top:18px;display:grid}.authFormModern label{gap:6px;display:grid}.authFormModern input{background:#fff8e8c7;border:1px solid #2d1b112e;border-radius:14px;padding:12px 14px}.inlineError{color:#6d1d1d;background:#a02b2b24;border:1px solid #84181840;border-radius:14px;margin:0;padding:10px 12px}.inlineNotice{color:#6a4719;background:#b7914629;border:1px solid #6c512240;border-radius:14px;margin:0;padding:10px 12px}.swatchGrid{grid-template-columns:repeat(5,minmax(0,1fr))}.swatch{aspect-ratio:1;cursor:pointer;border:2px solid #0000;border-radius:18px}.swatch.is-active{border-color:#fff6dd;box-shadow:inset 0 0 0 2px #2d1b1180}.loadoutSummary,.featureList,.listStack,.rankingTable{gap:10px;display:grid}.catalogGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalogCard{text-align:left;cursor:pointer;background:#fffaf080;border:1px solid #2d1b1124;border-radius:20px;gap:8px;padding:14px;display:grid}.catalogCard.is-active{border-color:#9e7740cc;box-shadow:inset 0 0 0 1px #9e77404d}.catalogCard-static{cursor:default}.catalogSwatch{border:1px solid #2d1b1114;border-radius:16px;width:100%;height:76px}.listRow,.rankingRow{background:#fff8e870;border:1px solid #2d1b111f;border-radius:18px;align-items:center;gap:8px;padding:12px 14px;display:grid}.listRow{grid-template-columns:minmax(0,1fr) auto}.listRowMeta{align-items:center;gap:10px;display:inline-flex}.statusDot{border-radius:999px;width:10px;height:10px;display:inline-block}.statusDot-online{background:#4a8e68}.statusDot-offline{background:#8e7861}.statusDot-playing{background:#aa7e41}.rankingRow{grid-template-columns:56px minmax(0,1fr) 96px 80px 96px}.rankingRow.is-friend{background:#e5ceada8;border-color:#6d22335c}.bottomRail{border:1px solid var(--stroke);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#20140fe6;border-radius:24px;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;padding:10px;display:grid;position:fixed;bottom:12px;left:10px;right:10px}.bottomRail__item{text-align:center;color:var(--text-soft);border-radius:18px;padding:10px 8px}.bottomRail__item.is-active{color:var(--text-strong);background:#d7b57429}@media (width<=960px){.heroCard,.panelGrid-2,.panelGrid-3,.playTopBar{grid-template-columns:1fr}.playModeStrip,.playTopStats{grid-template-columns:repeat(3,minmax(0,1fr))}.gameTable,.gameTable--arena{grid-template-columns:1fr}.gameTable--arena{grid-template-rows:minmax(0,1fr) auto minmax(0,1fr)}.gameSidebar--center{grid-template-columns:repeat(3,minmax(0,1fr));align-content:stretch}.modeChips,.catalogGrid{grid-template-columns:1fr}.rankingRow{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.playPage{height:calc(100dvh - 250px);min-height:calc(100dvh - 250px)}.appFrame{padding-inline:10px}.topChrome{flex-direction:column}.statusCluster{justify-content:flex-start}.bottomRail{grid-template-columns:repeat(3,minmax(0,1fr))}.playTopBar{gap:10px;padding:12px}.playTopBar__copy h1{font-size:1.45rem}.playModeStrip,.playTopStats,.gameSidebar--center{grid-template-columns:1fr}.playChip{padding:10px 12px}.chipButton strong,.metaPill strong,.turnPanel strong{font-size:.94rem}.chipButton span,.metaPill span,.turnPanel small,.infoLine{font-size:.68rem}.gameTable--arena{grid-template-rows:minmax(0,1fr) auto minmax(0,1fr);gap:10px;padding:10px}.combatBoard{border-radius:24px;padding:10px}.boardBanner{margin-bottom:8px}.boardBanner h2{font-size:1rem}.boardBanner strong{font-size:1.15rem}.gameSidebar--center{gap:8px;padding:10px}.turnPanel,.dieTray,.infoLine{gap:4px;padding:9px 10px}.dieToken{border-radius:14px;width:52px;height:52px}.swatchGrid{grid-template-columns:repeat(4,minmax(0,1fr))}}
