:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;color:#211d28;color:color(display-p3 .125878 .114093 .154757);color:lab(11.5734% 4.10806 -7.01778);--paper:#f6f3ed;--paper-deep:#eae5dc;--surface:#faf9f5;--surface-muted:#efebe4;--ink:#211d28;--ink-soft:#4f4b58;--ink-faint:#706d77;--line:#bdb7ab;--line-strong:#948b7b;--table:#322637;--table-raised:#3f3246;--table-ink:#eae7e1;--table-muted:#b9b1bc;--table-line:#ada49161;--accent:#903028;--accent-hover:#7d1c17;--accent-ink:#f8f5ef;--accent-soft:#f1cec9;--positive:#1a5b36;--positive-soft:#c4e0cc;--negative:#8c352f;--negative-soft:#f3d2cd;--focus:#1a609e;--shadow:#1f172329;background:#f6f3ed;background:color(display-p3 .963462 .953485 .93098);background:lab(95.9742% .308603 3.42507);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}@supports (color:color(display-p3 0 0 0)){:root{--paper:color(display-p3 .963462 .953485 .93098);--paper-deep:color(display-p3 .915647 .899609 .865202);--surface:color(display-p3 .980927 .976321 .963447);--surface-muted:color(display-p3 .933479 .921996 .897322);--ink:color(display-p3 .125878 .114093 .154757);--ink-soft:color(display-p3 .305798 .292864 .339505);--ink-faint:color(display-p3 .43648 .426728 .462833);--line:color(display-p3 .737194 .716577 .674446);--line-strong:color(display-p3 .573747 .546305 .490442);--table:color(display-p3 .188483 .151005 .212777);--table-raised:color(display-p3 .240373 .198189 .267864);--table-ink:color(display-p3 .915243 .905361 .883073);--table-muted:color(display-p3 .718696 .694954 .735018);--table-line:color(display-p3 .67178 .64249 .577083/.38);--accent:color(display-p3 .522719 .21387 .177051);--accent-hover:color(display-p3 .449004 .143709 .114046);--accent-ink:color(display-p3 .968715 .960214 .940048);--accent-soft:color(display-p3 .922685 .813637 .792657);--positive:color(display-p3 .180217 .351607 .223286);--positive-soft:color(display-p3 .789718 .87401 .804337);--negative:color(display-p3 .507674 .228935 .198152);--negative-soft:color(display-p3 .932004 .827691 .809375);--focus:color(display-p3 .188164 .371424 .601052);--shadow:color(display-p3 .117113 .0911572 .133963/.16)}}@supports (color:lab(0% 0 0)){:root{--paper:lab(95.9742% .308603 3.42507);--paper-deep:lab(91.2326% .586212 5.33412);--surface:lab(97.9358% .0471175 1.90692);--surface-muted:lab(93.1915% .40549 3.80119);--ink:lab(11.5734% 4.10806 -7.01778);--ink-soft:lab(32.4655% 3.97365 -7.0909);--ink-faint:lab(46.4599% 2.83384 -5.19313);--line:lab(74.5361% .900835 6.87275);--line-strong:lab(58.3114% 1.36548 9.63435);--table:lab(17.1588% 8.72654 -9.08356);--table-raised:lab(22.9209% 9.45343 -9.87808);--table-ink:lab(91.6821% .309616 3.42571);--table-muted:lab(73.089% 4.38187 -4.77142);--table-line:lab(67.6127% 1.19847 10.8322/.38);--accent:lab(34.928% 41.0853 28.0291);--accent-hover:lab(27.9481% 41.2879 29.4322);--accent-ink:lab(96.5523% .22459 3.04749);--accent-soft:lab(85.7292% 11.9939 7.37079);--positive:lab(33.8819% -28.4528 15.4375);--positive-soft:lab(86.6181% -12.3068 6.60611);--negative:lab(35.0396% 37.4147 23.9685);--negative-soft:lab(86.9006% 11.4845 6.76748);--focus:lab(39.0927% -3.60508 -40.3251);--shadow:lab(9.16318% 6.47851 -6.75081/.16)}}*{box-sizing:border-box}html{background:var(--paper);min-width:320px}body{background:linear-gradient(90deg, #fff0 0, #fff0 67%, #aaa4981f 67.08%, #fff0 67.2%), var(--paper);min-width:320px;min-height:100vh;color:var(--ink);margin:0}@supports (color:color(display-p3 0 0 0)){body{background:linear-gradient(90deg, color(display-p3 1 1 1/0) 0, color(display-p3 1 1 1/0) 67%, color(display-p3 .662158 .643461 .601531/.12) 67.08%, color(display-p3 1 1 1/0) 67.2%), var(--paper)}}@supports (color:lab(0% 0 0)){body{background:linear-gradient(90deg, lab(100% 0 0/0) 0, lab(100% 0 0/0) 67%, lab(67.5837% .699103 6.90745/.12) 67.08%, lab(100% 0 0/0) 67.2%), var(--paper)}}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}#root{min-height:100vh}.app-shell{width:min(1440px,100%);min-height:100vh;margin:0 auto;padding:0 40px 56px}.loading-shell{place-items:center;display:grid}.loading-view{width:min(440px,100%);padding:40px 0}.loading-view h1{letter-spacing:-.035em;margin:8px 0 12px;font-size:2rem}.loading-view>p:not(.section-kicker):not(.engine-error){color:var(--ink-soft);margin:0}.masthead{border-bottom:1px solid var(--line-strong);justify-content:space-between;align-items:center;gap:32px;padding:26px 0 20px;display:flex}.brand-lockup{max-width:620px}.section-kicker,.seat-label,.ledger-list dt,.hand-facts dt{color:var(--ink-faint);letter-spacing:.04em;margin:0;font-size:.68rem;font-weight:750;line-height:1.25}.brand-lockup h1{letter-spacing:-.055em;margin:9px 0 8px;font-size:2.4rem;font-weight:720;line-height:1}.table-identity{align-items:center;gap:16px;padding-bottom:1px;display:flex}.table-identity dl{gap:22px;margin:0;display:flex}.table-identity dl>div{gap:3px;display:grid}.table-identity dt{color:var(--ink-faint);letter-spacing:.04em;font-size:.68rem;font-weight:700}.table-identity dd{color:var(--ink);font-variant-numeric:tabular-nums;margin:0;font-size:.88rem;font-weight:700}.button{border:1px solid #0000;border-radius:8px;min-height:40px;padding:9px 14px;font-size:.88rem;font-weight:730;line-height:1;transition:background-color .18s ease-out,border-color .18s ease-out,box-shadow .18s ease-out,color .18s ease-out}.button-primary{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.button-primary:hover:not(:disabled){border-color:var(--accent-hover);background:var(--accent-hover);box-shadow:0 7px 16px #72251e38;box-shadow:0 7px 16px color(display-p3 .410903 .164585 .134801/.22);box-shadow:0 7px 16px lab(27.0215% 34.2226 23.2736/.22)}.button-secondary{border-color:var(--line-strong);background:var(--surface);color:var(--ink)}.button-secondary:hover:not(:disabled),.button-quiet:hover:not(:disabled){border-color:var(--ink-soft);background:var(--surface-muted)}.button-quiet{border-color:var(--line);color:var(--ink-soft);background:0 0}.button:disabled{border-color:var(--line);box-shadow:none;color:#817f86;color:color(display-p3 .504492 .497068 .524872);color:lab(53.4664% 2.10765 -3.90731);background:#dad7d2;background:color(display-p3 .851356 .843779 .826676);background:lab(86.1067% .237167 2.66209)}.button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}input:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.reset-button{flex:none}.game-layout{grid-template-columns:minmax(0,1fr) 286px;gap:40px;padding-top:24px;display:grid}.board-column{min-width:0}.round-brief{margin-bottom:14px;padding:0 2px}.round-brief h2,.rail-heading h2{letter-spacing:-.022em;margin:0;font-size:1.14rem;line-height:1.2}.round-brief h2{font-size:1.14rem}.status-badge,.context-note,.outcome{white-space:nowrap;border:1px solid;border-radius:999px;align-items:center;min-height:26px;padding:4px 8px;font-size:.72rem;font-weight:740;line-height:1;display:inline-flex}.tabletop{background:linear-gradient(135deg, #423548, #2c2231), var(--table);box-shadow:0 22px 46px var(--shadow);color:var(--table-ink);border:1px solid #19101c;border:1px solid color(display-p3 .0909172 .0636222 .108325);border:1px solid lab(5.87065% 6.15937 -6.84974);border-radius:16px;position:relative;overflow:hidden}@supports (color:color(display-p3 0 0 0)){.tabletop{background:linear-gradient(135deg, color(display-p3 .250094 .208824 .277087), color(display-p3 .167373 .133745 .1892)), var(--table)}}@supports (color:lab(0% 0 0)){.tabletop{background:linear-gradient(135deg, lab(24.0967% 9.19083 -9.62897), lab(14.8807% 7.97422 -8.30819)), var(--table)}}.tabletop:before{border:1px solid var(--table-line);content:"";pointer-events:none;border-radius:10px;position:absolute;top:12px;bottom:12px;left:12px;right:12px}.dealer-area,.player-area{z-index:1;padding:22px 28px 28px;position:relative}.dealer-area{padding-top:30px}.player-area{padding-top:26px}.seat-heading{justify-content:space-between;align-items:start;gap:16px;margin-bottom:18px;display:flex}.tabletop .seat-label{color:var(--table-ink)}.seat-detail{color:var(--table-muted);margin:5px 0 0;font-size:.84rem}.seat-total{text-align:right;gap:2px;min-width:64px;display:grid}.seat-total span{color:var(--table-muted);letter-spacing:.04em;font-size:.68rem;font-weight:720}.seat-total strong{color:var(--table-ink);font-variant-numeric:tabular-nums;letter-spacing:-.025em;font-size:1.18rem}.card-row{flex-wrap:wrap;gap:10px;display:flex}.playing-card{color:#241f2c;color:color(display-p3 .137187 .121167 .169357);color:lab(12.6745% 5.1321 -8.10069);background:#f9f6ef;background:color(display-p3 .974359 .964183 .938785);background:lab(96.9103% .22766 3.81793);border:1px solid #cbc7bf;border:1px solid color(display-p3 .792509 .780202 .751085);border:1px solid lab(80.3273% .358671 4.5858);border-radius:8px;flex:none;place-items:center;width:76px;height:104px;display:grid;position:relative;overflow:hidden;box-shadow:0 8px 13px #19101c3b;box-shadow:0 8px 13px color(display-p3 .0909172 .0636222 .108325/.23);box-shadow:0 8px 13px lab(5.87065% 6.15937 -6.84974/.23)}.playing-card.red{color:#a12623;color:color(display-p3 .582582 .19318 .164501);color:lab(36.9355% 50.2568 34.2651)}.playing-card.black{color:#241f2c;color:color(display-p3 .137187 .121167 .169357);color:lab(12.6745% 5.1321 -8.10069)}.card-corner{justify-items:center;gap:1px;font-size:.77rem;line-height:.76;display:grid;position:absolute}.card-corner strong{font-size:.98rem;font-weight:780}.card-corner small{font-size:.75rem}.card-corner-top{top:8px;left:8px}.card-corner-bottom{bottom:8px;right:8px;transform:rotate(180deg)}.card-suit{font-size:2.15rem;line-height:1}.card-back{color:var(--table-ink);background:repeating-linear-gradient(45deg,#4f3d56 0 4px,#35283b 4px 8px),#3e2f44;background:repeating-linear-gradient(45deg,color(display-p3 .297577 .243383 .332709) 0 4px,color(display-p3 .199977 .158835 .226549) 4px 8px),color(display-p3 .232347 .185765 .262422);background:repeating-linear-gradient(45deg,lab(28.5939% 11.718 -12.1983) 0 4px,lab(18.2753% 9.48867 -9.8518) 4px 8px),lab(21.6998% 10.4891 -10.8877);border-color:#887b8e;border-color:color(display-p3 .523219 .483172 .550252);border-color:lab(53.1806% 7.84689 -8.41987)}.card-back-mark{letter-spacing:.14em;border:1px solid #c5bdab8c;border:1px solid color(display-p3 .768278 .741587 .678884/.55);border:1px solid lab(76.8946% .91207 10.0354/.55);border-radius:4px;padding:7px 5px;font-size:.58rem;font-weight:790}.table-divider{z-index:1;background:var(--table-line);place-items:center;height:1px;margin:4px 28px;display:grid;position:relative}.table-divider span{border:1px solid var(--table-line);background:var(--table-raised);width:28px;height:28px;color:var(--table-muted);border-radius:50%;place-items:center;font-size:.69rem;font-weight:760;display:grid}.empty-seat{color:var(--table-muted);margin:0;font-size:.9rem}.hands-stack{gap:16px;display:grid}.player-hand{gap:14px;padding:2px 0 0;display:grid}.player-hand+.player-hand{border-top:1px solid var(--table-line);padding-top:18px}.player-hand.is-active{background:#6151689e;background:color(display-p3 .37037 .320497 .403275/.62);background:lab(36.7945% 10.3957 -10.9608/.62);border:1px solid #baa986a6;border:1px solid color(display-p3 .719415 .663776 .540309/.65);border:1px solid lab(69.9861% 2.67941 20.5472/.65);border-radius:10px;margin:0 -12px;padding:14px 12px}.player-hand.is-active+.player-hand{border-top-color:#0000}.hand-heading{justify-content:space-between;align-items:start;gap:12px;display:flex}.status-badge{color:var(--table-ink)}.status-badge.status-bust,.status-badge.status-surrendered{color:#e5a9a3;color:color(display-p3 .863676 .672849 .647884);color:lab(74.9623% 22.2465 12.1511)}.status-badge.status-blackjack{color:#e4d2b0;color:color(display-p3 .881952 .826597 .703524);color:lab(85.0706% 2.4004 19.5767)}.hand-facts{flex-wrap:wrap;gap:12px 28px;margin:0;display:flex}.hand-facts>div{gap:3px;display:grid}.hand-facts dt{color:var(--table-muted)}.hand-facts dd{color:var(--table-ink);font-variant-numeric:tabular-nums;margin:0;font-size:.85rem;font-weight:690}.decision-dock{border-top:1px solid var(--line-strong);margin-top:22px;padding-top:22px}.decision-heading{justify-content:space-between;align-items:start;gap:16px;margin-bottom:18px;display:flex}.decision-heading .section-kicker{margin-bottom:0}.rail-heading .section-kicker{margin-bottom:6px}.context-note{color:var(--accent);flex:none}.decision-form{grid-template-columns:minmax(180px,.85fr) minmax(260px,1.15fr);align-items:end;gap:28px;display:grid}.amount-field{color:var(--ink-soft);gap:8px;font-size:.84rem;font-weight:700;display:grid}.amount-input-wrap{align-items:center;display:flex;position:relative}.amount-input-wrap input{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:46px;color:var(--ink);font-variant-numeric:tabular-nums;border-radius:8px;padding:10px 84px 10px 12px;font-size:1.08rem;font-weight:720}.amount-input-wrap input:hover{border-color:var(--ink-soft)}.amount-input-wrap>span{color:var(--ink-faint);pointer-events:none;font-size:.76rem;font-weight:690;position:absolute;right:12px}.decision-action{align-items:center;gap:14px;display:flex}.decision-action p{color:var(--ink-soft);margin:0;font-size:.82rem;line-height:1.5}.decision-actions{gap:12px;display:grid}.primary-actions,.secondary-actions{flex-wrap:wrap;gap:8px;display:flex}.primary-actions .button{min-width:112px}.secondary-actions .button{min-width:92px}.round-over-actions,.game-over-actions{gap:18px;display:grid}.game-over-restart{border-top:1px solid var(--line-strong);justify-content:space-between;align-items:center;gap:18px;padding-top:18px;display:flex}.game-over-restart p{color:var(--negative);margin:0;font-size:.88rem;font-weight:700}.game-over-restart strong{font-variant-numeric:tabular-nums}.settlement{border-bottom:1px solid var(--line);padding-bottom:18px}.settlement-summary{justify-content:space-between;align-items:start;gap:20px;display:flex}.settlement-copy{color:var(--ink-soft);margin:6px 0 0;font-size:.9rem}.net-result{justify-items:end;gap:3px;display:grid}.net-result span{color:var(--ink-faint);letter-spacing:.04em;font-size:.68rem;font-weight:760}.net-result strong{color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.04em;font-size:1.45rem}.net-result.positive strong{color:var(--positive)}.net-result.negative strong{color:var(--negative)}.settlement-lines{gap:8px;margin-top:16px;display:grid}.settlement-line{color:var(--ink-soft);grid-template-columns:minmax(70px,.7fr) minmax(72px,.75fr) minmax(86px,1fr) minmax(105px,1fr);align-items:center;gap:12px;font-size:.8rem;display:grid}.outcome{min-height:23px;color:var(--ink-soft);justify-self:start;padding:3px 7px}.outcome.positive{color:var(--positive)}.outcome.negative{color:var(--negative)}.settlement-note{color:var(--ink-faint);margin:12px 0 0;font-size:.78rem}.engine-error{border:1px solid var(--negative);background:var(--negative-soft);color:#57221e;color:color(display-p3 .31736 .14661 .126074);color:lab(21.5126% 24.8761 15.6976);border-radius:8px;margin:18px 0 0;padding:10px 12px;font-size:.84rem;line-height:1.45}.table-rail{border-top:2px solid var(--ink);align-self:start}.rail-section{border-bottom:1px solid var(--line);padding:20px 0}.rail-heading h2{font-size:1rem}.ledger-list{gap:0;margin:16px 0 0;display:grid}.ledger-list>div{border-top:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0;display:flex}.ledger-list dd{color:var(--ink);font-variant-numeric:tabular-nums;text-align:right;margin:0;font-size:.86rem;font-weight:740}.rule-groups{margin:16px 0 0;padding:0;display:grid}.rule-group{border:0;min-width:0;margin:0;padding:0}.rule-group+.rule-group{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.rule-group legend{color:var(--ink-faint);letter-spacing:.04em;padding:0;font-size:.7rem;font-weight:760}.rule-controls{margin:8px 0 0;padding:0;display:grid}.rule-control{border-top:1px solid var(--line);min-height:42px;color:var(--ink-soft);justify-content:space-between;align-items:center;gap:16px;font-size:.84rem;font-weight:650;display:flex}.rule-control>span{min-width:0}.rule-control select{border:1px solid var(--line-strong);background:var(--surface);max-width:54%;min-height:30px;color:var(--ink);border-radius:6px;flex:0 148px;padding:4px 24px 4px 8px;font-size:.82rem;font-weight:720}.rule-control input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent);margin:0}.rule-control select:disabled,.rule-control input:disabled{cursor:not-allowed;opacity:.5}.rule-control select:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.rule-control input:focus-visible{outline:3px solid var(--focus);outline-offset:2px}@media (max-width:1080px){.app-shell{padding-left:28px;padding-right:28px}.game-layout{grid-template-columns:minmax(0,1fr) 244px;gap:28px}.decision-form{grid-template-columns:minmax(170px,.8fr) minmax(220px,1.2fr);gap:20px}}@media (max-width:840px){.masthead{flex-direction:column;align-items:start;gap:22px;min-height:0}.table-identity{justify-content:space-between;width:100%}.game-layout{grid-template-columns:1fr}.table-rail{border-top-width:1px;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.rail-section{border-bottom:0}}@media (max-width:640px){.app-shell{padding:0 16px 40px}.masthead{padding:26px 0 20px}.brand-lockup h1{font-size:2rem}.table-identity{align-items:end}.table-identity dl{gap:13px}.table-identity dd{font-size:.78rem}.round-brief{margin-bottom:14px}.round-brief h2{font-size:1.12rem}.dealer-area,.player-area{padding:20px}.player-area{padding-top:22px}.playing-card{width:62px;height:86px}.card-corner-top{top:6px;left:6px}.card-corner-bottom{bottom:6px;right:6px}.card-suit{font-size:1.75rem}.table-divider{margin:4px 20px}.player-hand.is-active{margin:0 -8px;padding:12px 8px}.decision-heading{flex-direction:column;align-items:start;margin-bottom:16px}.decision-form{grid-template-columns:1fr;gap:14px}.decision-action,.game-over-restart{flex-direction:column;align-items:start}.primary-actions .button{flex:118px}.secondary-actions .button{flex:92px}.settlement-line{border-top:1px solid var(--line);grid-template-columns:1fr auto;gap:8px 12px;padding:8px 0}.settlement-line span:nth-child(3),.settlement-line span:nth-child(4){color:var(--ink-faint)}.table-rail{display:block}.rail-section{border-bottom:1px solid var(--line)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
