.playing-card{color:#fff;text-shadow:0 1px 2px #0002;background:linear-gradient(145deg,#4a8cf2,#1950ac);border:1.6px solid #88b1ed}.s0{background:linear-gradient(145deg,#20bf8a,#087947);border-color:#6edfb6}.s2{background:linear-gradient(145deg,#f95c67,#b6273c);border-color:#ff9098}.s3{color:#332707;text-shadow:none;background:linear-gradient(145deg,#f7d069,#c99824);border-color:#fae298}.playing-card{aspect-ratio:5/7;border-radius:9%;min-width:0;padding:0;font-family:Arial,sans-serif;display:block;position:relative;box-shadow:inset 0 0 0 2px #ffffff14,0 3px 6px #0004;container-type:inline-size}.playing-card>b{letter-spacing:-.06em;font-size:30cqw;font-weight:750;line-height:1;position:absolute;top:6cqw;left:9cqw}.playing-card>i{font-size:24cqw;font-style:normal;line-height:1;position:absolute;top:37cqw;left:10cqw}.playing-card>span{opacity:.92;font-size:56cqw;line-height:1;position:absolute;bottom:7cqw;right:9cqw}:root{color:#e8edf1;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--gold:#e8c77e;--muted:#8397a7;--line:#293a48;--panel:#101923;background:#080e16;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:450}*{box-sizing:border-box}body{background:radial-gradient(at 55% 27%,#152a3b55,#0000 64%),#080e16;min-width:320px;margin:0}button,input,select{font:inherit}button{cursor:pointer;color:inherit;border:0;transition:background .15s,border-color .15s,transform .12s}button:disabled{cursor:default;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:4px}a{color:var(--gold);text-decoration:none}h1,h2,h3,p{margin:0}button>span,button>b,button>i,button>kbd{pointer-events:none}[hidden]{display:none!important}::selection{background:#e8c77e40}.sr-only{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.topbar{border-bottom:1px solid #202a36;align-items:center;gap:26px;height:84px;padding:0 44px;display:flex}.brand{letter-spacing:-1.5px;color:#e8edf1;align-items:center;font-size:32px;font-weight:750;display:flex}.brand-symbol{color:var(--gold);margin-right:7px;font-size:49px;font-weight:400;line-height:1}.brand-dot{color:var(--gold)}.brand-sub{letter-spacing:2px;color:#8397a7;font-size:9px}.topbar nav{align-items:center;gap:24px;margin-left:auto;display:flex}.icon-button{color:#b7c4cf;background:0 0;border:1px solid #30404e;border-radius:7px;width:34px;height:34px;font-size:21px}.text-button{color:#a8b9c5;background:0 0;justify-content:space-between;align-items:center;gap:16px;padding:8px 0;font-size:12px;display:flex}.text-button span{color:var(--gold)}.connection{color:#75c7aa;letter-spacing:1px;font-size:10px}.eyebrow{letter-spacing:2px;color:var(--gold);align-items:center;gap:10px;font-size:10px;font-weight:650;display:flex}.live-dot{background:#6ac6a3;border-radius:50%;width:6px;height:6px;display:inline-block;box-shadow:0 0 10px #6ac6a340}.panel{background:linear-gradient(130deg,#111c27,#0e1721);border:1px solid #2a3a47;border-radius:10px}.muted{color:#91a6b5;font-size:13px;line-height:1.75}.primary,.secondary{border-radius:6px;justify-content:space-between;align-items:center;gap:14px;min-height:48px;padding:14px 18px;font-size:13px;font-weight:600;display:flex}.primary{color:#20221d;background:linear-gradient(120deg,#f0dca4,#dab568);border:1px solid #f8e4b1}.primary:hover:not(:disabled){background:#f2dca4}.secondary{color:#c5d1da;background:#15212d;border:1px solid #354654}.secondary:hover:not(:disabled){background:#1c2b39;border-color:#6c8293}.primary span,.secondary span{font-size:19px}.home-layout{grid-template-columns:1.2fr 1fr;align-items:center;gap:85px;max-width:1110px;min-height:calc(100dvh - 151px);margin:auto;padding:55px 28px;display:grid}.intro h1{letter-spacing:-3px;margin:22px 0;font-size:clamp(42px,4.5vw,65px);font-weight:550;line-height:1.09}.intro h1 em{color:var(--gold);font-style:normal}.intro-copy{color:#9eb2bf;font-size:15px;line-height:1.9}.home-fan{height:166px;margin:40px 0 27px;padding-left:29px;display:flex}.home-fan .playing-card{transform-origin:50% 130%;flex-shrink:0;width:96px;margin-left:-23px}.home-fan .playing-card:first-child{transform:rotate(-14deg)}.home-fan .playing-card:nth-child(2){transform:rotate(-7deg)translateY(-3px)}.home-fan .playing-card:nth-child(3){transform:translateY(-5px)}.home-fan .playing-card:nth-child(4){transform:rotate(7deg)translateY(-3px)}.home-fan .playing-card:nth-child(5){transform:rotate(14deg)}.feature-row{color:#95a9b8;gap:24px;font-size:11px;display:flex}.play-panel{padding:27px 29px}.panel-heading{justify-content:space-between;align-items:center;gap:8px;margin-bottom:27px;display:flex}.panel-heading h2{letter-spacing:-.5px;font-size:21px;font-weight:550}.panel-heading>span{letter-spacing:1px;color:#8499a9;font-size:8px}.mode-label{letter-spacing:1.5px;margin-bottom:12px;font-size:10px;font-weight:600}.mode-label span{color:#617b8f;margin-right:10px}.bot-settings{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:15px;display:flex}.bot-settings p{color:#91a6b5;font-size:12px}select{color:#d4dee5;background:#0b1621;border:1px solid #304452;border-radius:5px;padding:7px;font-size:11px}.play-panel>.primary,.play-panel>.secondary{width:100%}.play-panel>.secondary{margin-top:15px}.divider{color:#697f90;letter-spacing:1.4px;align-items:center;gap:12px;margin:25px 0;font-size:8px;display:flex}.divider:before,.divider:after{content:"";background:#263644;flex:1;height:1px}#join-form{margin-top:20px}#join-form label{color:#8fa6b6;margin-bottom:8px;font-size:11px;display:block}.join-entry{gap:8px;display:flex}input:not([type=checkbox]){color:#e8edf1;background:#09131d;border:1px solid #354755;border-radius:5px;width:100%;min-width:0;padding:11px 12px;font-size:13px}.join-entry .secondary{min-height:42px;padding:10px 15px}.privacy-note{color:#7e96a7;border-top:1px solid #253442;justify-content:center;align-items:center;gap:8px;margin-top:22px;padding-top:19px;font-size:9px;display:flex}.status{color:var(--gold);font-size:12px;line-height:1.6}.status:not(:empty){margin-top:12px}.footer{color:#6b8294;border-top:1px solid #202a36;justify-content:space-between;align-items:center;gap:20px;min-height:67px;padding:15px 44px;font-size:10px;display:flex}.footer>span:first-child{letter-spacing:1.2px;font-size:9px}.footer i{color:#465d70;letter-spacing:0;padding:0 5px;font-style:normal}.footer a{color:#8fa2b1;font-size:10px}.game-layout{grid-template-columns:minmax(190px,1fr) minmax(430px,3.3fr) minmax(180px,1fr);align-items:center;gap:20px;max-width:1540px;min-height:calc(100dvh - 151px);margin:auto;padding:28px 32px;display:grid}.left-rail,.right-rail{flex-direction:column;gap:18px;display:flex}.session-panel,.controls-panel,.rules-panel{padding:22px 19px}.session-panel h2{letter-spacing:-.7px;margin:13px 0 8px;font-size:23px;font-weight:500}.session-panel .secondary{width:100%;margin-top:16px;padding:10px;font-size:11px}.scoreboard{border-top:1px solid #293a48;border-bottom:1px solid #293a48;justify-content:space-around;align-items:center;margin:22px 0;padding:18px 0;display:flex}.scoreboard>div{flex-direction:column;align-items:center;gap:7px;display:flex}.scoreboard strong{color:var(--gold);font-size:32px;font-weight:450}.scoreboard span{letter-spacing:1.3px;color:#859aaa;font-size:9px}.scoreboard i{color:#41576b;font-style:normal}.session-panel>.text-button{width:100%}h3{letter-spacing:-.5px;margin:14px 0 10px;font-size:18px;font-weight:500}.toggle{color:#b3c3cf;cursor:pointer;align-items:center;gap:6px;margin:20px 0 12px;font-size:11px;display:flex}.toggle span{color:var(--gold);margin-left:auto}input[type=checkbox]{accent-color:var(--gold);width:15px;height:15px;margin:0}.fine{color:#718b9e;font-size:10px;line-height:1.8}.board-panel{min-width:0;padding:18px}.board-heading{color:#98aab8;letter-spacing:1.5px;justify-content:space-between;padding:0 2px 15px;font-size:9px;display:flex}.board-heading span:last-child{color:#607c91}.felt{background:radial-gradient(#11283c,#0a1825 65%,#07111a);border:1px solid #2b3e4f;border-radius:8px;padding:22px 24px 25px;box-shadow:inset 0 0 60px #0007}.player-heading{align-items:center;gap:10px;max-width:470px;margin:auto;font-size:11px;display:flex}.player-heading>div{flex-direction:column;gap:4px;display:flex}.player-heading b{font-size:12px;font-weight:550}.player-heading div span{color:#7692a6;font-size:9px}.avatar{color:#91aebf;background:#1b3143;border:1px solid #385063;border-radius:50%;justify-content:center;align-items:center;width:33px;height:33px;font-size:19px;display:flex}.avatar.you{color:var(--gold);background:#342e20;border-color:#8b7954;font-size:10px}.count-pill{color:#9eb5c6;white-space:nowrap;border:1px solid #2d4354;border-radius:5px;margin-left:auto;padding:6px 9px;font-size:10px}.opponent-hand{justify-content:center;gap:5px;height:69px;margin:15px 0 22px;display:flex}.card-back{aspect-ratio:5/7;background:repeating-linear-gradient(45deg,#0000 0 5px,#8cabc00d 5px 6px),repeating-linear-gradient(-45deg,#1b3044 0 5px,#718ba42a 5px 6px);border:1px solid #647185;border-radius:6px;display:block;box-shadow:inset 0 0 0 4px #142639,inset 0 0 0 5px #53677860,0 3px 8px #0005}.opponent-hand .card-back{width:46px;transform:rotate(-3deg)}.opponent-hand .card-back:nth-child(2n){transform:rotate(3deg)}.center{grid-template-columns:.65fr 1fr 1fr .65fr;justify-content:center;align-items:center;gap:17px;max-width:435px;margin:0 auto;display:grid}.pile-wrap{flex-direction:column;align-items:center;gap:12px;display:flex}.pile-wrap>span{letter-spacing:1.5px;color:#58788f;font-size:8px}.pile-slot{aspect-ratio:5/7;background:#07131e;border:1px solid #375066;border-radius:8px;width:100%;max-width:103px;box-shadow:0 5px 18px #0004}.pile-slot>.playing-card{width:100%;height:100%}.reserve{flex-direction:column;align-items:center;gap:12px;display:flex}.reserve>.card-back{width:52px;box-shadow:3px 3px #253c50,5px 5px #0a1623}.reserve>span{color:#6d8a9f;white-space:nowrap;font-size:9px}.empty-pile{color:#30485c;justify-content:center;align-items:center;height:100%;font-size:55px;display:flex}.table-message{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:9px;min-height:87px;padding:14px 0;display:flex}.table-message p{color:var(--gold);font-size:12px}.table-message p.go{color:#6ba88d;letter-spacing:2px;font-size:10px}.table-message button{min-height:35px;padding:8px 15px;font-size:11px}.your-area>.player-heading{margin-bottom:17px}#your-status{letter-spacing:1.2px;color:#9bb2c3;font-size:9px}.hand{justify-content:center;gap:9px;max-width:470px;margin:auto;padding-bottom:16px;display:flex}.hand>.playing-card,.hand>.pending-card,.hand>.empty-hand{aspect-ratio:5/7;flex-shrink:0;width:calc(20% - 7.2px)}.hand-card{opacity:1;touch-action:manipulation;position:relative}.hand-card:hover:not(:disabled){opacity:1;transform:translateY(-7px)}.hand-card:active:not(:disabled){transform:translateY(-10px)}.hand-card kbd{color:#92a7b8;text-shadow:none;background:#102031;border:1px solid #2c4050;border-radius:3px;padding:1px 5px;font:10px ui-monospace,monospace;position:absolute;top:calc(100% + 7px);left:50%;transform:translate(-50%)}.pending-card,.empty-hand{color:var(--gold);border:1px dashed #3b5365;border-radius:7px;justify-content:center;align-items:center;display:flex}.pending-card{background:#e8c77e0a}.board-footer{color:#839cad;justify-content:space-between;gap:10px;padding:16px 2px 0;font-size:10px;display:flex}.board-footer>span:last-child{color:#b5a075;white-space:nowrap}.rule{border-top:1px solid #263947;gap:12px;margin-top:17px;padding-top:17px;display:flex}.rule>span{color:#647e90;margin-top:3px;font-size:9px}.rule p{color:#9ab0c0;font-size:12px;line-height:1.8}.rank-example{gap:5px;margin:15px 0 5px 23px;display:flex}.rank-example .playing-card{width:39px}.little-note{letter-spacing:-.7px;color:#506c82;padding:8px 12px;font-size:24px;font-weight:450;line-height:1.4}.little-note>span{color:#92a4b2}kbd{font:10px ui-monospace,monospace}dialog{color:#c4d2dd;background:#101c28;border:1px solid #40586b;border-radius:12px;width:min(570px,100% - 32px);padding:32px;box-shadow:0 20px 100px #000b}dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#030910c9}dialog h2{margin:18px 0;font-size:29px;font-weight:550}dialog p:not(.eyebrow){color:#a5bac9;margin:15px 0;font-size:13px;line-height:1.8}dialog a{font-size:12px}.close{float:right}@media (min-width:1500px){.felt{padding-top:28px;padding-bottom:32px}.opponent-hand{margin-bottom:30px}.table-message{min-height:104px}.hand{max-width:500px}}@media (max-width:1120px){.game-layout{grid-template-columns:190px minmax(400px,1fr);padding:24px}.right-rail{display:none}.home-layout{gap:40px}.topbar{padding:0 28px}}@media (max-width:760px){.topbar{gap:14px;height:66px;padding:0 18px}.brand{font-size:27px}.brand-symbol{font-size:40px}.brand-sub{display:none}.topbar nav{gap:15px}.connection{letter-spacing:0;font-size:8px}.text-button{font-size:11px}.home-layout{grid-template-columns:1fr;gap:30px;max-width:480px;min-height:0;padding:35px 23px}.intro h1{letter-spacing:-2px;margin:18px 0;font-size:45px}.intro-copy{font-size:13px}.home-fan{height:127px;margin:25px 0 20px;padding-left:28px}.home-fan .playing-card{width:76px}.feature-row{gap:18px;font-size:10px}.play-panel{padding:23px}.footer{flex-wrap:wrap;gap:12px;padding:18px;font-size:9px}.footer>span:nth-child(2){display:none}.game-layout{flex-direction:column;gap:14px;min-height:calc(100dvh - 130px);padding:16px 12px;display:flex}.board-panel{order:0;width:100%;max-width:580px;padding:12px}.left-rail{order:1;grid-template-columns:1fr 1fr;gap:12px;width:100%;max-width:580px;display:grid}.session-panel,.controls-panel{padding:15px}.session-panel h2{font-size:20px}.scoreboard{margin:12px 0;padding:9px 0}.scoreboard strong{font-size:23px}.session-panel .muted{font-size:11px}.controls-panel h3{font-size:16px}.controls-panel .muted{font-size:11px}.eyebrow{letter-spacing:1.4px;font-size:8px}.felt{padding:16px 17px 23px}.opponent-hand{height:52px;margin:12px 0 20px}.opponent-hand .card-back{width:35px}.center{gap:12px;max-width:355px}.pile-slot{max-width:87px}.reserve>.card-back{width:44px}.table-message{min-height:77px}.board-footer{font-size:9px;line-height:1.4}.hand{gap:7px}.hand>.playing-card,.hand>.pending-card,.hand>.empty-hand{width:calc(20% - 5.6px)}.toggle{flex-wrap:wrap;font-size:10px}.count-pill{font-size:9px}.board-heading{padding-bottom:12px;font-size:8px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}@media (min-width:761px) and (max-height:850px){.game-layout{padding-top:16px;padding-bottom:16px}.felt{padding:15px 20px 22px}.opponent-hand{height:45px;margin:10px 0 16px}.opponent-hand .card-back{width:31px}.center{gap:15px;max-width:340px}.pile-slot{max-width:78px}.reserve>.card-back{width:43px}.table-message{min-height:68px}.hand{max-width:380px}.your-area>.player-heading{margin-bottom:12px}.session-panel,.controls-panel,.rules-panel{padding:17px}.rule{margin-top:13px;padding-top:13px}.little-note{display:none}}.card-fx{z-index:20;pointer-events:none;margin:0;position:fixed}.impact-ring{border:2px solid #f6dda1;border-radius:10%;box-shadow:0 0 14px #e8c77e70}.impact-spark{background:#fff1be;border-radius:50%;width:4px;height:4px;box-shadow:0 0 7px #efc66d}.penalty{color:#ff9ba3;flex-direction:column;align-items:center;gap:6px;margin:10px auto 0;font-size:11px;display:flex}.penalty-track{background:#5a2935;border-radius:3px;width:140px;height:3px;overflow:hidden}.penalty-track i{transform-origin:0;background:#ff7a88;width:100%;height:100%;transition:transform .1s linear;display:block}.hand.penalized{animation:.24s ease-out wrong-move}.hand.penalized .hand-card{box-shadow:0 0 0 2px #ff758580}@keyframes wrong-move{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}
