:root{--safe-top: var(--discord-safe-area-inset-top, env(safe-area-inset-top, 0px));--safe-right: var(--discord-safe-area-inset-right, env(safe-area-inset-right, 0px));--safe-bottom: var(--discord-safe-area-inset-bottom, env(safe-area-inset-bottom, 0px));--safe-left: var(--discord-safe-area-inset-left, env(safe-area-inset-left, 0px));--navy-950: #050a16;--navy-900: #091324;--navy-800: #111d31;--ivory: #f5eee0;--ivory-soft: #e4d9c5;--ink: #10182a;--gold: #d9a83b;--gold-bright: #ffdc78;--violet: #ad6ff0;--violet-bright: #dbb2ff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ivory);color-scheme:dark}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-width:320px;overflow-x:hidden;background:radial-gradient(circle at 50% -20%,#162442 0,var(--navy-950) 54%,#03060e 100%)}button,select{font:inherit}h1,h2,h3,p{margin:0}.activity-shell{min-height:100dvh;width:min(100%,920px);margin:0 auto;padding:calc(14px + var(--safe-top)) calc(12px + var(--safe-right)) calc(24px + var(--safe-bottom)) calc(12px + var(--safe-left))}.game-header,.round-heading,.current-player-heading,.section-heading,.opponent-board,.opponent-identity,.header-meta,.round-tools{display:flex;align-items:center;justify-content:space-between;gap:12px}.game-header{margin-bottom:12px;padding:0 3px}.header-meta{align-items:flex-start;flex-wrap:wrap;justify-content:flex-end}.header-actions{display:flex;gap:4px}.eyebrow{color:var(--gold-bright);font-size:10px;font-weight:850;letter-spacing:.16em}h1{color:var(--gold-bright);font-family:Georgia,serif;font-size:clamp(31px,8vw,48px);letter-spacing:-.06em;line-height:.95;text-shadow:0 2px 0 #55350f,0 0 22px #d9a83b33}h2{color:var(--ivory);font-family:Georgia,serif;font-size:clamp(21px,5vw,31px);letter-spacing:-.025em}h3{font-family:Georgia,serif}.title-mark{color:var(--violet-bright);font-size:.65em}.connection{border:1px solid #71664c;border-radius:999px;padding:7px 10px;color:#dfd3b9;background:#121b2b;font-size:10px;font-weight:800;white-space:nowrap}.connection-discord{color:#a9edba;border-color:#507c60}.connection-browser{color:var(--gold-bright)}.icon-button{display:grid;width:40px;height:40px;place-items:center;border:1px solid #76613a;border-radius:50%;color:var(--gold-bright);background:#111b2c;font-size:22px;cursor:pointer}.game-surface{border:1px solid #564729;border-radius:24px;padding:14px;background:linear-gradient(150deg,#0d182b,#07101f 70%,#08101d);box-shadow:0 20px 60px #0009,inset 0 1px #ffdb7733}.round-heading{align-items:flex-start;padding:2px 2px 13px;border-bottom:1px solid #3c3425}.round-tools{align-items:flex-start;gap:10px}.round-badge{color:var(--gold-bright);font-size:10px;font-weight:800;white-space:nowrap}.activity-presence{margin:9px 2px 0;color:#9eabc0;font-size:11px;text-align:right}.activity-presence span{color:#8ee3a6}.current-player-board{margin:14px 0 11px;padding:15px;border:1px solid var(--gold);border-radius:20px;background:radial-gradient(circle at 90% 0,#8d56c744,transparent 42%),linear-gradient(145deg,#182941,#0e192b);box-shadow:0 10px 30px #0008,inset 0 1px #ffe7a944}.current-player-heading{align-items:flex-start}.current-player-layout{display:grid;min-width:0;gap:12px}.player-identity{display:flex;align-items:center;gap:10px;min-width:0}.player-avatar,.mini-avatar{display:grid;flex:0 0 46px;width:46px;height:46px;place-items:center;border:1px solid var(--gold-bright);border-radius:50%;color:var(--navy-900);background:linear-gradient(145deg,#fff0ae,#b77b27);font-size:13px;font-weight:950}.mini-avatar{flex-basis:28px;width:28px;height:28px;font-size:9px}.player-identity h2{margin-top:4px;font-size:24px}.turn-badge{color:var(--gold-bright);font-size:10px;font-weight:900;letter-spacing:.13em}.focus-status{border-radius:999px;padding:6px 8px;color:#d8f3ca;background:#254831;font-size:10px;font-weight:800}.score-display{display:flex;gap:25px;margin-top:15px}.score-display div{display:grid;gap:2px}.score-display strong{color:var(--ivory);font-family:Georgia,serif;font-size:25px;line-height:1}.score-display span{color:#aebacf;font-size:10px}.hand-cards,.opponent-cards{display:flex;min-width:0;gap:7px;overflow-x:auto;scrollbar-width:none}.hand-cards{margin:18px -2px 0;padding:0 2px 8px}.hand-cards::-webkit-scrollbar,.opponent-cards::-webkit-scrollbar{display:none}.flip-card{position:relative;display:grid;flex:0 0 auto;place-items:center;overflow:hidden;color:var(--ink);background:var(--ivory);border:1px solid var(--gold-bright);box-shadow:0 4px #554428,0 9px 17px #0008;isolation:isolate}.flip-card:before{position:absolute;inset:5px;z-index:-1;border:1px solid currentColor;opacity:.7;content:""}.flip-card-hero{width:136px;height:194px;border-radius:12px}.flip-card-hand{width:57px;height:82px;border-radius:8px}.flip-card-mini{width:29px;height:39px;border-radius:5px;box-shadow:0 2px #554428,0 4px 8px #0007}.flip-card-action{color:var(--gold-bright);background:radial-gradient(circle at 50% 42%,#583078,#151b30 62%)}.flip-card-modifier{background:linear-gradient(145deg,#fffaf0,#d7cbb6);color:#563b7c}.flip-card-tone-blue{color:#285f9e}.flip-card-tone-green{color:#3b7746}.flip-card-tone-gold{color:#ab6d18}.flip-card-tone-orange{color:#a65a23}.flip-card-tone-red{color:#8c3440}.flip-card-tone-violet{color:#70418d}.card-content{display:grid;place-items:center;gap:3px;text-align:center}.number-glyph,.modifier-glyph{font-family:Georgia,serif;font-size:42px;line-height:1;text-shadow:1px 1px 0 #fff8}.modifier-glyph{font-size:25px;font-weight:800}.action-icon{color:var(--violet-bright);font-size:39px;line-height:1;text-shadow:0 0 15px #ce8fff}.action-label,.card-caption{font-size:7px;font-weight:900;letter-spacing:.09em}.card-caption{position:absolute;bottom:10px;font-size:6px}.card-corner{position:absolute;color:var(--gold-bright);font-size:10px}.card-corner-top{top:4px;left:7px}.card-corner-bottom{right:7px;bottom:4px}.flip-card-hand .number-glyph{font-size:29px}.flip-card-hand .modifier-glyph{font-size:18px}.flip-card-hand .action-icon{font-size:24px}.flip-card-hand .card-corner{font-size:7px}.flip-card-mini .number-glyph{font-size:17px}.flip-card-mini .modifier-glyph{font-size:10px}.flip-card-mini .action-icon{font-size:16px}.flip-card-mini:before{inset:3px}.flip-card-mini .card-content{gap:0}.hero-reveal{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px 12px;padding:10px;border:1px solid #64522e;border-radius:13px;background:linear-gradient(145deg,#0c1728,#111c31)}.hero-reveal-heading{display:flex;align-items:center;justify-content:space-between;grid-column:1 / -1;gap:8px}.hero-reveal-phase{color:var(--violet-bright);font-size:9px;font-weight:900;letter-spacing:.1em}.hero-reveal-stage{display:grid;min-height:94px;place-items:center}.hero-reveal .flip-card-hero{width:72px;height:103px;border-radius:8px}.hero-reveal .flip-card-hero .number-glyph{font-size:29px}.hero-reveal .flip-card-hero .modifier-glyph{font-size:19px}.hero-reveal .flip-card-hero .action-icon{font-size:28px}.hero-reveal .flip-card-hero .card-caption{bottom:7px;font-size:5px}.hero-card-back{display:grid;width:72px;height:103px;place-items:center;border:1px solid var(--gold-bright);border-radius:8px;color:var(--violet-bright);background:radial-gradient(circle,#50337e,#11192a 62%);box-shadow:0 4px #554428,0 8px 15px #0008;font-size:25px}.hero-reveal p{align-self:center;color:#aebacf;font-size:10px;line-height:1.35}.game-actions{position:sticky;bottom:calc(8px + var(--safe-bottom));z-index:2;display:grid;grid-template-columns:1.2fr 1fr;gap:8px;margin:0 -2px 15px;padding:8px;border:1px solid #67542f;border-radius:16px;background:#0b1424ef;box-shadow:0 12px 30px #000b;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.action-button{min-height:52px;border:1px solid transparent;border-radius:12px;color:var(--ivory);font-size:12px;font-weight:900;cursor:pointer}.action-button:disabled{cursor:not-allowed;opacity:.4}.action-primary{border-color:#c6a04b;background:linear-gradient(180deg,#6540a1,#35215e);box-shadow:inset 0 -3px #211238,0 4px 16px #6030a044}.action-secondary{border-color:#765e37;background:#151d2c;color:#dfcfb4}.pending-action{display:grid;grid-column:1 / -1;gap:8px;padding:11px;border:1px solid var(--gold);border-radius:13px;background:#172137}.pending-action strong{color:var(--gold-bright);font-size:12px}.pending-action span,.pending-wait{color:#b8c1d0;font-size:11px}.pending-action select{min-height:44px;padding:0 10px;border:1px solid #76609a;border-radius:9px;color:var(--ivory);background:#0d1627}.pending-action .action-button{width:100%}.pending-wait{grid-column:1 / -1;text-align:center}.opponents{padding-top:2px}.section-heading{padding:0 3px 7px}.section-heading h3{font-size:16px}.section-heading span{color:#9eabc0;font-size:10px}.opponent-board{min-height:58px;margin-top:7px;padding:8px 9px;border:1px solid #334259;border-radius:13px;background:#101c2e}.opponent-identity{justify-content:flex-start;min-width:100px}.opponent-identity div{display:grid;gap:2px}.opponent-identity strong{font-size:12px}.opponent-identity span{color:#95a1b4;font-size:9px}.opponent-board .score-display{display:block;margin:0}.opponent-board .score-display strong{font-family:inherit;font-size:14px}.opponent-board .score-display span{display:block;font-size:8px}.opponent-cards{gap:3px}.opponent-bust{opacity:.65}.pile-stack{display:grid;justify-items:center;gap:3px}.pile-stack small{color:#9eabc0;font-size:8px;font-weight:800}.pile-stack b{color:var(--gold-bright)}.pile-card{display:grid;width:34px;height:46px;place-items:center;border:1px solid var(--gold-bright);border-radius:5px;box-shadow:2px 2px #554428}.pile-card-back{color:var(--violet-bright);background:radial-gradient(circle,#473076,#11192a 60%)}.pile-card-discard{color:var(--gold-bright);background:#111b2c}.notice{min-height:18px;margin-top:12px;color:#aebacf;font-size:11px;text-align:center}.notice-finished{color:var(--gold-bright)}.sync-warning{margin-top:7px;padding:8px;border:1px solid #87633e;border-radius:9px;color:#f0cb92;font-size:10px;text-align:center}.link-button{padding:0;border:0;color:var(--gold-bright);background:none;text-decoration:underline;cursor:pointer}.footer-note{padding:14px 4px 0;color:#68758c;font-size:10px;text-align:center}.connection-state{display:grid;justify-items:center;gap:12px;margin-top:22px;padding:38px 22px;border:1px solid #66542e;border-radius:23px;background:linear-gradient(155deg,#122039,#091222);text-align:center}.connection-state h2{max-width:18ch}.connection-state>p:not(.eyebrow):not(.connection-state-detail){max-width:34ch;color:#c1c8d2;font-size:14px;line-height:1.45}.connection-state-detail{max-width:42ch;color:#9da9bb;font-size:11px;overflow-wrap:anywhere}.connection-state-icon{display:grid;width:58px;height:58px;place-items:center;border:1px solid var(--gold);border-radius:50%;color:var(--gold-bright);font-size:28px}.overlay-backdrop{position:fixed;inset:0;z-index:5;display:grid;align-items:end;padding:calc(12px + var(--safe-top)) calc(12px + var(--safe-right)) calc(12px + var(--safe-bottom)) calc(12px + var(--safe-left));background:#02050bcc}.overlay-panel{width:min(100%,520px);max-height:min(80dvh,680px);margin:0 auto;overflow:auto;padding:18px;border:1px solid var(--gold);border-radius:22px;background:linear-gradient(155deg,#15253e,#091222);box-shadow:0 18px 60px #000d}.overlay-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.overlay-list,.rules-list{display:grid;gap:8px}.overlay-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;min-height:56px;padding:8px 10px;border:1px solid #35435a;border-radius:12px;background:#0e1a2c}.overlay-row div{display:grid;gap:3px;min-width:0}.overlay-row div span,.overlay-row small{color:#aebacf;font-size:10px}.overlay-row b{color:var(--gold-bright);white-space:nowrap}.rank{width:22px;color:var(--gold-bright);text-align:center}.rules-list p{display:grid;gap:4px;padding:11px;border:1px solid #35435a;border-radius:12px;background:#0e1a2c}.rules-list p strong{color:var(--gold-bright)}.rules-list p span{color:#c5cfdd;font-size:12px;line-height:1.4}.overlay-close{width:100%;margin-top:14px}@media(max-width:430px){.activity-shell{padding-left:calc(10px + var(--safe-left));padding-right:calc(10px + var(--safe-right))}.game-surface{padding:11px;border-radius:20px}.round-heading{display:grid}.round-tools{width:100%;justify-content:space-between}.round-tools .pile-stack{display:none}.game-header{align-items:flex-start}.header-meta{max-width:150px;gap:5px}.header-actions .icon-button{width:32px;height:32px;font-size:16px}.game-actions{grid-template-columns:1fr 1fr}.action-button{min-height:50px;font-size:11px}.opponent-board{gap:5px}.opponent-identity{min-width:86px}.flip-card-hand{width:54px;height:78px}}@media(min-width:700px){.game-surface{padding:18px}.current-player-board{padding:20px}.current-player-layout{grid-template-columns:minmax(190px,.6fr) 1fr;align-items:center}.hand-cards{justify-content:flex-start;margin-top:0}.hero-reveal{min-height:180px}.hero-reveal .flip-card-hero{width:108px;height:154px}.hero-reveal .flip-card-hero .number-glyph{font-size:42px}.hero-reveal .flip-card-hero .modifier-glyph{font-size:25px}.hero-reveal .flip-card-hero .action-icon{font-size:39px}.opponents{display:grid;grid-template-columns:1fr 1fr;gap:7px}.opponents .section-heading{grid-column:1 / -1}.opponent-board{margin-top:0}}
