@font-face{font-family:"Space Grotesk";src:url(fonts/space-grotesk.woff2) format("woff2");font-weight:300 700;font-display:swap}
@font-face{font-family:"Newsreader";src:url(fonts/newsreader.woff2) format("woff2");font-weight:400 600;font-style:normal;font-display:swap}
@font-face{font-family:"Newsreader";src:url(fonts/newsreader-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
:root{--bg:#0b0d0c;--panel:#141816;--panel2:#1b201d;--line:#2a312d;--ink:#f3ecdc;--muted:#a59e8b;--brass:#c9a24a;--brass2:#e9cf86;--red:#d9534f;--win:#58c98a;--lose:#ef6f68;
  --f1:#0f6a43;--f2:#0a4a2e;--f3:#06301e;--rail:#2a1d14;--rail2:#1a110b;
  --ui:"Space Grotesk",system-ui,sans-serif;--serif:"Newsreader",Georgia,serif;--r:14px;--g:16px}
body[data-felt=blue]{--f1:#14598f;--f2:#0d3f69;--f3:#08284a}
body[data-felt=burgundy]{--f1:#8c2a3d;--f2:#651a2b;--f3:#430f1c}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.5 var(--ui);min-height:100vh;display:flex;flex-direction:column}
main{flex:1}
a{color:var(--brass2)}h1,h2,h3{margin:0;font-family:var(--serif);font-weight:500;line-height:1.1;letter-spacing:-.01em;text-wrap:balance}
p{margin:0}button{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--brass2);outline-offset:2px}
.skip{position:absolute;left:-999px;top:8px;background:var(--brass);color:#111;padding:8px 12px;border-radius:8px;z-index:99}.skip:focus{left:8px}
.wrap{width:min(1120px,100% - 2*var(--g));margin-inline:auto}.narrow{width:min(720px,100% - 2*var(--g));margin-inline:auto}
.hdr{border-bottom:1px solid var(--line);background:rgba(11,13,12,.92);position:sticky;top:0;z-index:20;backdrop-filter:blur(8px)}
.hdr-in{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:60px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font:500 24px var(--serif)}
.hnav a{color:var(--brass2);text-decoration:none;font-size:14px;padding:10px 4px}.hnav a+a{margin-left:14px}.hnav a:hover{text-decoration:underline}
.caps{font:600 12px var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--brass)}
.muted{color:var(--muted)}.small{font-size:14px}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 20px;border-radius:12px;border:1px solid var(--brass);background:linear-gradient(#d9b45a,#b88f33);color:#171208;font-weight:600;cursor:pointer;text-decoration:none;transition:transform .12s,filter .12s}
.btn:hover{filter:brightness(1.07)}.btn:active{transform:translateY(1px) scale(.99)}
.btn.sec{background:transparent;color:var(--ink);border-color:#4b4636}.btn.sec:hover{border-color:var(--brass)}
.btn.sm{min-height:40px;padding:0 14px;font-size:14px}.btn.big{min-height:54px;font-size:18px;padding:0 28px}
.btn.red{background:#8e2f2c;border-color:#b3463f;color:#fff}
.btn[disabled]{opacity:.4;cursor:not-allowed;filter:none}
.row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
/* home */
.hero{padding:44px 0 20px}.hero h1{font-size:clamp(40px,8vw,76px);max-width:14ch}.hero p{max-width:56ch;margin-top:16px;font-size:18px;color:#d6cfbd}
.hero .row{margin-top:24px}
.resume{margin-top:22px;border:1px solid var(--brass);border-radius:var(--r);padding:16px 18px;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;background:linear-gradient(90deg,rgba(201,162,74,.12),transparent)}
.blk{margin-top:40px}.blk>.head{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-bottom:14px}.blk h2{font-size:30px}
.games{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.gcard{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;padding:18px;border-radius:var(--r);border:1px solid var(--line);background:var(--panel);text-decoration:none;color:var(--ink);transition:border-color .15s,transform .15s}
.gcard:hover{border-color:var(--brass);transform:translateY(-2px)}
.gcard .gi{grid-row:span 2;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,var(--f1),var(--f3));border:2px solid var(--brass);font:500 22px var(--serif);color:var(--brass2)}
.gcard b{font:500 22px var(--serif)}.gcard span.d{color:var(--muted);font-size:14px;line-height:1.35}
.hist{display:grid;gap:8px}.hist div{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--panel);font-size:14px}.hist b{font-weight:600}
/* rules */
.back{display:inline-block;margin:22px 0 6px;color:var(--brass2);text-decoration:none;font-size:14px;padding:6px 0}.back:hover{text-decoration:underline}
.page-h{padding:6px 0 18px}.page-h h1{font-size:clamp(34px,6vw,54px)}.page-h .lede{margin-top:10px;font-size:18px;color:#d6cfbd}
.card{border:1px solid var(--line);border-radius:var(--r);background:var(--panel);padding:20px;margin-top:16px}
.card h2{font-size:26px;margin-bottom:10px}.card h3{font-size:19px;margin:16px 0 6px;color:var(--brass2)}
.card p+p,.card ul+p,.card p+ul{margin-top:10px}.card ul,.card ol{margin:0;padding-left:22px}.card li{margin:6px 0}
.steps{counter-reset:s;list-style:none;padding:0!important}.steps li{counter-increment:s;position:relative;padding-left:42px;margin:12px 0}
.steps li:before{content:counter(s);position:absolute;left:0;top:0;width:30px;height:30px;border-radius:50%;background:var(--brass);color:#171208;font-weight:700;display:grid;place-items:center;font-size:14px}
.tbl{width:100%;border-collapse:collapse;font-size:15px}.tbl th,.tbl td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line)}.tbl th{color:var(--muted);font-weight:500;font-size:13px}.tbl td.n{text-align:right;font-variant-numeric:tabular-nums}
.cta{position:sticky;bottom:0;background:linear-gradient(transparent,var(--bg) 40%);padding:28px 0 16px;margin-top:8px;display:flex;justify-content:center}
.disc{color:var(--muted);font-size:13px;margin-top:14px}
/* setup */
fieldset{border:1px solid var(--line);border-radius:var(--r);margin:16px 0 0;padding:16px 18px 18px;background:var(--panel)}
legend{font:500 22px var(--serif);padding:0 6px}
label.l{display:block;font-size:14px;color:var(--muted);margin:10px 0 4px}
input[type=text],input[type=number],input[inputmode],select{width:100%;min-height:46px;padding:0 14px;border-radius:10px;border:1px solid #3c4540;background:#0f1311;color:var(--ink);font:inherit}
input:focus,select:focus{border-color:var(--brass2)}
.stepper{display:inline-flex;align-items:center;gap:6px;border:1px solid #3c4540;border-radius:12px;padding:4px;background:#0f1311}
.stepper button{width:46px;height:46px;border-radius:9px;border:0;background:#222a26;font-size:22px;cursor:pointer}.stepper button:hover{background:#2c3630}
.stepper output{min-width:50px;text-align:center;font:500 28px var(--serif)}
.names{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin-top:14px}
.names label{display:flex;align-items:center;gap:10px}.names i{width:14px;height:14px;border-radius:50%;flex:none}
.quick{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.pill{min-height:38px;padding:0 14px;border-radius:99px;border:1px solid #4b4636;background:transparent;cursor:pointer;font-size:14px}.pill:hover,.pill[aria-pressed=true]{border-color:var(--brass);background:rgba(201,162,74,.14)}
.felts{display:flex;gap:12px;margin-top:6px}.felts label{cursor:pointer;text-align:center;font-size:13px;color:var(--muted)}
.felts input{position:absolute;opacity:0}.felts span{display:block;width:76px;height:50px;border-radius:12px;border:2px solid transparent;margin-bottom:4px}
.felts input:checked+span{border-color:var(--brass2);box-shadow:0 0 0 3px rgba(233,207,134,.25)}.felts input:focus-visible+span{outline:2px solid var(--brass2);outline-offset:2px}
.err{color:var(--lose);font-size:14px;margin-top:10px;min-height:20px}
details.more{margin-top:16px}details.more summary{cursor:pointer;color:var(--brass2);padding:8px 0;font-size:15px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
/* table */
.tbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;padding:16px 0 8px}
.tbar h1{font-size:30px}.tbar .meta{color:var(--muted);font-size:14px}
.badge{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border-radius:99px;border:1px solid #36503f;background:rgba(88,201,138,.1);color:#9be3bd;font-size:13px;cursor:pointer}.badge.bad{border-color:#7a2c28;background:rgba(239,111,104,.14);color:#ffb3ae}
.stage{position:relative;width:min(100%,1000px);margin:8px auto 0;aspect-ratio:16/9}
.rail{position:absolute;inset:6% 5%;border-radius:50%;background:linear-gradient(160deg,#3b2a1c,var(--rail) 40%,var(--rail2));box-shadow:0 22px 50px rgba(0,0,0,.55),inset 0 0 0 2px #6b5130,inset 0 0 0 5px #1a110b}
.felt{position:absolute;inset:4.5%;border-radius:50%;background:radial-gradient(ellipse at 50% 40%,var(--f1),var(--f2) 62%,var(--f3));box-shadow:inset 0 0 60px rgba(0,0,0,.55),inset 0 0 0 2px rgba(233,207,134,.35);display:grid;place-items:center;text-align:center;overflow:hidden}
.felt:before{content:"";position:absolute;inset:7%;border-radius:50%;border:1.5px solid rgba(233,207,134,.28)}
.center .btn.sec{background:rgba(0,0,0,.4);border-color:rgba(233,207,134,.5)}
.felt-mark{position:absolute;top:11%;left:0;right:0;font:italic 400 clamp(14px,2.4vw,26px) var(--serif);color:rgba(233,207,134,.42);letter-spacing:.06em;pointer-events:none}
.center{position:relative;z-index:2;display:grid;gap:6px;justify-items:center;padding:0 8%}
.center .lab{font:600 11px var(--ui);letter-spacing:.2em;color:var(--brass2)}
.center .amt{font:500 clamp(34px,6.5vw,68px)/1 var(--serif);color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.5)}
.center .sub{font-size:13px;color:#d9e8dd}
.center .btns{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:6px}
.pile{display:flex;justify-content:center;height:30px;margin-top:2px}.pile .chip{margin-left:-14px;filter:drop-shadow(0 3px 3px rgba(0,0,0,.45))}.pile .chip:first-child{margin-left:0}
.seat{position:absolute;transform:translate(-50%,-50%);z-index:3;width:clamp(78px,13.5vw,132px);padding:7px 8px 8px;border-radius:14px;border:1.5px solid color-mix(in srgb,var(--c) 70%,#fff 0%);background:linear-gradient(#202622,#121614);box-shadow:0 8px 18px rgba(0,0,0,.5);cursor:pointer;text-align:left;display:block;transition:transform .12s,box-shadow .12s}
.seat:hover{transform:translate(-50%,-50%) scale(1.04)}
.seat-name{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#e7e0cc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.seat-name .nm{min-width:0;overflow:hidden;text-overflow:ellipsis}
.seat-name i{width:10px;height:10px;border-radius:50%;background:var(--c);flex:none}
.seat-stack{display:block;font:500 clamp(19px,2.6vw,28px)/1.1 var(--serif);color:#fff;font-variant-numeric:tabular-nums;margin-top:2px}
.seat-sub{display:block;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;min-height:15px}
.seat-sub.up{color:var(--win)}.seat-sub.dn{color:var(--lose)}.seat-sub.in{color:var(--brass2)}
.seat.out{opacity:.55}.seat.folded{opacity:.5;filter:grayscale(.6)}
.dealer{position:absolute;top:-10px;right:-8px;width:24px;height:24px;border-radius:50%;background:#f6f1e6;color:#171208;font:700 12px var(--ui);display:grid;place-items:center;box-shadow:0 2px 6px rgba(0,0,0,.5);border:2px solid var(--brass)}
.stackviz{position:absolute;right:6px;bottom:6px;display:flex;flex-direction:column-reverse;gap:-3px;pointer-events:none}.stackviz svg{margin-top:-9px;display:block}.stackviz svg:first-child{margin-top:0}
.tools{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:18px auto 0;width:min(100%,1000px)}
.houserow{width:min(100%,1000px);margin:14px auto 0;border:1px solid var(--line);border-radius:var(--r);padding:12px 16px;background:var(--panel);display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:center}
.houserow b{font:500 26px var(--serif)}
.up{color:var(--win)}.dn{color:var(--lose)}
@media (max-width:699px){
  .stage{aspect-ratio:3/5.2}.rail{inset:3.5% 2%}.felt-mark{top:14%;font-size:15px}.center{padding:0 3%}.center .btns{flex-direction:column;width:100%;max-width:170px}.center .btns .btn{width:100%}
  .seat{width:clamp(66px,20vw,84px);padding:5px 6px 5px}.seat-name{font-size:11px}.seat-stack{font-size:18px}.seat-sub{font-size:10px}.stackviz{display:none}
  .center .amt{font-size:38px}.names{grid-template-columns:1fr}.grid2{grid-template-columns:1fr}.tbar h1{font-size:26px}
  .seat.dense{width:68px;padding:5px}.seat.dense .seat-stack{font-size:16px}
  .btn.big{width:100%}.hero{padding-top:28px}
}
/* sheets */
.sheet{border:0;padding:0;background:transparent;color:var(--ink);width:min(560px,100%);max-width:100%;max-height:92vh;margin:auto;overflow:visible}
.sheet::backdrop{background:rgba(0,0,0,.66);backdrop-filter:blur(2px)}
.sh-in{background:var(--panel);border:1px solid #3a4139;border-radius:18px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 30px 70px rgba(0,0,0,.6)}
.sh-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:16px 18px 10px}.sh-head h2{font-size:26px}
.x{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:transparent;cursor:pointer;font-size:16px}.x:hover{border-color:var(--brass)}
.sh-body{padding:4px 18px 18px;overflow:auto}
.sh-h{font:600 12px var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--brass);margin:16px 0 8px}
@media (max-width:699px){.sheet{margin:auto 0 0;width:100%}.sh-in{border-radius:18px 18px 0 0;max-height:92vh}}
.tabs{display:flex;gap:6px;margin:4px 0 8px}.tabs button{flex:1;min-height:42px;border-radius:10px;border:1px solid var(--line);background:transparent;cursor:pointer}.tabs button[aria-pressed=true]{background:rgba(201,162,74,.16);border-color:var(--brass)}
.who{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}.who .big{font:500 44px/1 var(--serif);font-variant-numeric:tabular-nums}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}.chipbtn{border:0;background:transparent;cursor:pointer;padding:2px;border-radius:50%;line-height:0;transition:transform .1s}.chipbtn:hover{transform:translateY(-3px)}.chipbtn:active{transform:scale(.94)}
.have{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:13px;color:var(--muted);margin-top:6px}.have span{display:inline-flex;align-items:center;gap:5px}
.outs{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin-top:8px}
.out{min-height:58px;padding:8px 12px;border-radius:12px;border:1px solid var(--line);background:var(--panel2);cursor:pointer;text-align:left;display:grid}
.out b{font-weight:600;font-size:15px}.out span{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}.out:hover{border-color:var(--brass)}
.out.w b{color:var(--win)}.out.l b{color:var(--lose)}
.pots{display:grid;gap:12px}.pot{border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--panel2)}.pot h3{font:500 19px var(--serif);margin-bottom:8px}
.elig{display:flex;flex-wrap:wrap;gap:8px}.elig .pill{display:inline-flex;align-items:center;gap:8px}.elig i{width:10px;height:10px;border-radius:50%}
.led{list-style:none;margin:0;padding:0}.led li{display:flex;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px}.led li span:first-child{color:var(--muted);min-width:28px;font-variant-numeric:tabular-nums}
.eq{display:grid;grid-template-columns:1fr auto;gap:6px 14px;font-size:15px}.eq span:nth-child(even){text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.eq .tot{border-top:1px solid var(--line);padding-top:6px;margin-top:4px}
.ed-row{display:grid;grid-template-columns:1fr 64px 18px 64px 44px;gap:6px;align-items:center;margin-top:6px}.ed-row input{min-height:40px;padding:0 8px}.ed-row .x{width:40px;height:40px}
.pay{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel2);margin-top:8px;font-variant-numeric:tabular-nums}
.sites{display:grid;gap:8px}.sites a{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;text-decoration:none;color:var(--ink);background:var(--panel2)}.sites span{color:var(--muted);font-size:13px}
.studio-top{display:flex;gap:14px;align-items:center;color:#d6cfbd}.studio-top img{border-radius:50%;flex:none}
/* footer, toasts */
.ftr{border-top:1px solid var(--line);margin-top:56px;padding:22px 0 30px}.ftr .wrap{display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;align-items:center}.f-meta{color:var(--muted);font-size:13px;max-width:70ch}
.rtx{min-height:44px;padding:0 16px;border-radius:99px;border:1px solid #4b4636;background:transparent;cursor:pointer;font-size:14px;color:var(--brass2)}.rtx:hover{border-color:var(--brass)}
.toasts{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:60;display:grid;gap:8px;width:min(92vw,420px);pointer-events:none}
.toast{background:#e9e1cc;color:#171208;border-radius:12px;padding:12px 16px;font-weight:500;box-shadow:0 10px 30px rgba(0,0,0,.5);animation:in .2s ease-out}
@keyframes in{from{opacity:0;transform:translateY(10px)}}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
