:root{color:#171918;font-synthesis:none;text-rendering:optimizelegibility;--table-green:#09603f;--table-green-dark:#06482f;--surface:#fff;--grouped:#f3f4f6;--separator:#d8dcda;--muted:#737a77;--accent:#0a6b48;--nav-height:76px;letter-spacing:0;background:#e9ecef;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,Hiragino Sans,Yu Gothic UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{min-height:100dvh;overflow:hidden}button{font:inherit;letter-spacing:0}button:focus-visible{outline-offset:2px;outline:3px solid #168cff}.app-shell{background:var(--surface);width:min(100%,1120px);min-height:100dvh;margin:0 auto;box-shadow:0 0 36px #161d1a1f}.app-content{height:calc(100dvh - var(--nav-height));overflow:hidden}.bottom-nav{height:var(--nav-height);padding:6px max(12px, env(safe-area-inset-left)) max(6px, env(safe-area-inset-bottom));border-top:1px solid var(--separator);background:#fffffffa;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;display:grid}.nav-button{color:#4d5350;cursor:pointer;background:0 0;border:0;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:3px;height:58px;font-size:12px;font-weight:650;display:flex}.nav-button.is-active{color:#08795a;background:#eef3f1}.mode-screen{background:var(--grouped);grid-template-rows:minmax(0,1fr) 50px;height:100%;display:grid}.mode-content{min-height:0;padding:clamp(26px,6vh,64px) clamp(18px,5vw,48px);overflow-y:auto}.mode-list{gap:12px;width:min(100%,760px);margin:0 auto;display:grid}.mode-row{text-align:left;background:#fff;border:1px solid #d8dcda;border-radius:8px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:16px;width:100%;min-height:94px;padding:16px 18px;display:grid}button.mode-row{cursor:pointer}.mode-row--active{border-color:#09603f59}.mode-row--active:hover{background:#f9fbfa}.mode-row--practice-counting{border-color:#007e895c}.mode-row--practice-counting:hover{background:#f5fcfc}.mode-row--practice-counting .mode-icon,.mode-row--practice-counting .mode-chevron{color:#007d86}.mode-row--practice-counting .mode-icon{background:#e6f5f5}.mode-row--live{border-color:#b57e096b}.mode-row--live:hover{background:#fffdf7}.mode-row--live .mode-chevron{color:#a56c00}.mode-row--live-counting{border-color:#007e895c}.mode-row--live-counting:hover{background:#f5fcfc}.mode-row--live-counting .mode-icon,.mode-row--live-counting .mode-chevron{color:#007d86}.mode-row--live-counting .mode-icon{background:#e6f5f5}.mode-row--counting{border-color:#1e70be57}.mode-row--counting:hover{background:#f8fbff}.mode-row--counting .mode-icon,.mode-row--counting .mode-chevron{color:#1769a8}.mode-row--counting .mode-icon{background:#e8f3fb}.mode-icon{width:48px;height:48px;color:var(--accent);background:#e6f0ec;border-radius:50%;place-items:center;display:grid}.mode-icon--coin{color:#9b6805;background:#fff1c9}.mode-copy{gap:5px;min-width:0;display:grid}.mode-copy strong{font-size:clamp(17px,2.5vw,21px)}.mode-copy small{color:var(--muted);font-size:13px;line-height:1.45}.mode-chevron{color:var(--accent)}.mode-row--pro{position:relative}.mode-pro-lock{color:#4b514e;align-items:center;gap:8px;display:flex}.mode-pro-lock>span,.pro-access-badge{color:#fff;background:#171918;border-radius:5px;padding:4px 7px;font-size:10px;font-weight:850;line-height:1}.live-setup-backdrop{z-index:30;align-items:end;padding:12px}.live-setup-sheet{background:#fff;border-radius:8px;grid-template-rows:40px 1fr 50px;gap:10px;width:min(100%,520px);min-height:348px;padding:14px 18px 18px;display:grid;box-shadow:0 24px 80px #00000047}.live-setup-sheet--counting{min-height:260px}.live-setup-close{color:#252927;background:#eff1f0}.live-setup-fields{align-self:center;padding:0 2px}.live-setup-field{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;min-height:76px;display:grid}.live-setup-field+.live-setup-field{border-top:1px solid var(--separator)}.live-setup-field label{font-size:14px;font-weight:700}.live-setup-note{color:var(--muted);margin:-2px 0 8px;padding-left:0;font-size:11px;line-height:1.55}.number-stepper{grid-template-columns:40px 64px 40px;align-items:stretch;height:42px;display:grid}.number-stepper button{border:1px solid var(--separator);color:var(--accent);cursor:pointer;background:#f7f8f8;place-items:center;display:grid}.number-stepper button:first-child{border-radius:8px 0 0 8px}.number-stepper button:last-child{border-radius:0 8px 8px 0}.number-stepper button:disabled{color:#b4b9b6;cursor:default}.number-stepper input{border:solid var(--separator);color:#171918;text-align:center;appearance:textfield;background:#fff;border-width:1px 0;border-radius:0;min-width:0;font-size:20px;font-weight:800}.number-stepper input::-webkit-inner-spin-button{appearance:none}.live-setup-start{color:#fff;cursor:pointer;background:#08795a;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:50px;font-weight:750;display:flex}.pro-access-backdrop{z-index:32;align-items:end;padding:12px}.pro-access-sheet{background:#fff;border-radius:8px;grid-template-rows:auto 1fr 50px;justify-items:center;gap:18px;width:min(100%,520px);min-height:310px;padding:24px 22px 18px;display:grid;position:relative;box-shadow:0 24px 80px #00000047}.pro-access-close{color:#252927;background:#eff1f0;position:absolute;top:14px;left:14px}.pro-access-icon{color:#8a6100;background:#fff0bf;border-radius:50%;place-items:center;width:62px;height:62px;display:grid}.pro-access-copy{text-align:center;align-content:center;justify-items:center;gap:9px;max-width:360px;display:grid}.pro-access-copy strong{font-size:21px}.pro-access-copy small{color:var(--muted);font-size:13px;line-height:1.6}.pro-access-purchase{color:#777d7a;background:#e7e9e8;border:0;border-radius:8px;width:100%;min-height:50px;font-weight:750}.tool-header{text-align:center;grid-template-columns:36px 1fr 36px;align-items:center;min-height:58px;padding:8px 14px 0;display:grid}.tool-header--left{grid-template-columns:36px 1fr;padding-inline:0}.counting-screen{background:var(--grouped);width:min(100%,840px);height:100%;margin:0 auto}.counting-setup,.counting-final{grid-template-rows:58px minmax(0,1fr) 50px;display:grid}.counting-setup-content{align-content:center;gap:24px;width:min(100% - 36px,520px);margin:0 auto;padding-bottom:20px;display:grid}.counting-duration-mark{color:#1769a8;background:#e8f3fb;border-radius:8px;justify-content:center;align-items:center;gap:7px;width:96px;height:74px;margin:0 auto -6px;display:flex}.counting-duration-mark strong{font-size:24px}.counting-rules{grid-template-columns:repeat(3,1fr);display:grid}.counting-rules span{border-right:1px solid var(--separator);place-content:center;justify-items:center;gap:3px;min-height:54px;display:grid}.counting-rules span:last-child{border:0}.counting-rules small{color:var(--muted);font-size:11px}.counting-rules strong{font-size:17px}.counting-session-note{color:var(--muted);text-align:center;margin:-2px 0 2px;font-size:13px;font-weight:650}.counting-speed-control{gap:7px;display:grid}.counting-speed-control>strong{font-size:12px}.counting-speed-segments{background:#e4e6e8;border-radius:8px;grid-template-columns:repeat(3,1fr);height:42px;padding:3px;display:grid}.counting-speed-segments button{color:#555c58;cursor:pointer;background:0 0;border:0;border-radius:6px;font-size:13px;font-weight:750}.counting-speed-segments button.is-active{color:#111;background:#fff;box-shadow:0 1px 4px #0000001f}.counting-assist-toggle{border:1px solid var(--separator);cursor:pointer;background:#fff;border-radius:8px;align-items:center;min-height:64px;padding:10px 56px 10px 12px;display:flex;position:relative}.counting-assist-toggle>span{gap:3px;display:grid}.counting-assist-toggle strong{font-size:13px}.counting-assist-toggle small{color:var(--muted);font-size:10px}.counting-assist-toggle input{opacity:0;width:1px;height:1px;position:absolute}.counting-assist-toggle i{background:#c8cdca;border-radius:13px;width:42px;height:26px;transition:background .18s;position:absolute;right:12px}.counting-assist-toggle i:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000003d}.counting-assist-toggle input:checked+i{background:#08795a}.counting-assist-toggle input:checked+i:after{transform:translate(16px)}.counting-assist-toggle input:focus-visible+i{outline-offset:2px;outline:3px solid #1478df4d}.counting-start{color:#fff;cursor:pointer;background:#08795a;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:50px;font-weight:750;display:flex}.counting-play{background:var(--table-green);grid-template-rows:minmax(0,1fr) 5px 50px;display:grid}.counting-table{color:#fff;background:var(--table-green);min-height:0;position:relative;overflow:hidden}.counting-play-toolbar{z-index:9;justify-content:space-between;display:flex;position:absolute;top:9px;left:14px;right:14px}.counting-shoe-hud{z-index:4;color:#ffffffc7;align-items:center;gap:5px;display:flex;position:absolute;top:14px;left:50%;transform:translate(-50%)}.counting-shoe-hud strong{color:#fff;font-size:18px}.counting-shoe-hud span{border-left:1px solid #ffffff4d;margin-left:3px;padding-left:7px;font-size:9px;font-weight:700}.counting-assist-badge{z-index:6;color:#fff;border:2px solid #ffffffb8;border-radius:50%;place-items:center;width:58px;height:58px;font-size:22px;font-weight:850;animation:.16s ease-out count-assist-in;display:grid;position:absolute;top:44%;right:18px;box-shadow:0 8px 24px #0003}.counting-assist-badge.is-positive{background:#16834a}.counting-assist-badge.is-neutral{background:#256a9b}.counting-assist-badge.is-negative{background:#c6323a}@keyframes count-assist-in{0%{opacity:.3;transform:scale(.82)}to{opacity:1;transform:scale(1)}}.counting-dealer-zone{justify-items:center;gap:7px;display:grid;position:absolute;top:clamp(58px,9vh,78px);left:50%;transform:translate(-50%)}.counting-dealer-zone>span{color:#ffffffb8;font-size:11px;font-weight:700}.counting-player-zone{position:absolute;bottom:clamp(60px,10vh,90px);left:12px;right:12px}.counting-hands{justify-content:center;align-items:end;gap:10px;display:flex}.counting-hand{opacity:.72;justify-items:center;gap:8px;min-width:0;display:grid}.counting-hand.is-active{opacity:1}.counting-hand>strong{font-size:12px}.counting-card-fan{min-height:clamp(116px,19vh,150px)}.counting-card-fan .playing-card{width:clamp(80px,13vh,108px)}.counting-card-fan .fan-card+.fan-card{margin-left:clamp(-43px,-5vw,-30px)}.counting-action-flag{color:#ffffffd1;background:#0000002e;border-radius:6px;place-items:center;min-width:122px;height:30px;padding:0 14px;font-size:12px;font-weight:800;display:grid;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.counting-action-flag.is-next{color:#123b30;background:#fff;font-size:14px}.counting-cue{z-index:8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#02281dc7;place-items:center;display:grid;position:absolute;inset:0}.counting-cue strong{font-size:clamp(42px,10vw,68px)}.counting-play-progress{accent-color:#f5d26b;background:#ffffff2e;border:0;width:100%;height:5px}.counting-final-content{text-align:center;align-content:center;justify-items:center;gap:13px;width:min(100% - 36px,520px);margin:0 auto;padding-bottom:20px;display:grid}.counting-final-content h1{letter-spacing:0;margin:0;font-size:24px}.counting-final-content>small,.counting-final-content>p{color:var(--muted);margin:0;font-size:12px}.counting-finish-label{color:#fff;background:#202523;border-radius:6px;padding:5px 12px;font-size:11px;font-weight:800}.count-adjuster{justify-content:center;align-items:center;gap:22px;display:flex}.count-adjuster button{border:1px solid var(--separator);width:48px;height:48px;color:var(--accent);cursor:pointer;background:#fff;border-radius:50%;place-items:center;display:grid}.count-adjuster>strong{text-align:center;min-width:74px;font-size:38px}.counting-final-adjuster{margin:22px 0 16px}.counting-final-content .counting-start{width:100%}.counting-result-icon.is-correct{color:#16834a}.counting-result-icon.is-wrong{color:#c6323a}.counting-result-numbers{grid-template-columns:repeat(2,1fr);width:100%;margin:12px 0 2px;display:grid}.counting-result-numbers span{border-right:1px solid var(--separator);gap:7px;display:grid}.counting-result-numbers span:last-child{border:0}.counting-result-numbers small{color:var(--muted);font-size:10px}.counting-result-numbers strong{font-size:32px}.counting-result-actions{grid-template-columns:1fr 1fr;gap:10px;width:100%;margin-top:18px;display:grid}.counting-result-actions button{border:1px solid var(--separator);cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:48px;font-weight:750;display:flex}.counting-result-actions button:last-child{color:#fff;background:#08795a;border-color:#08795a}.option-segments{background:#e4e6e8;border-radius:8px;grid-template-columns:repeat(4,1fr);height:42px;padding:3px;display:grid}.option-segments--three{grid-template-columns:repeat(3,1fr)}.option-segments button{color:#555c58;cursor:pointer;background:0 0;border:0;border-radius:6px;font-weight:700}.option-segments button.is-active{color:#111;background:#fff;box-shadow:0 1px 4px #0000001f}.trainer{background:var(--surface);grid-template-rows:minmax(300px,1fr) 190px 50px;width:min(100%,840px);height:100%;margin:0 auto;display:grid}.trainer--fullscreen{height:100dvh}.table-area{background:var(--table-green);color:#fff;min-height:0;position:relative;overflow:hidden}.trainer-toolbar{z-index:5;gap:8px;display:flex;position:absolute;top:10px;left:14px}.coin-hud{z-index:5;color:#fff;background:#0000003d;border-radius:17px;align-items:center;gap:6px;height:34px;padding:0 10px;display:flex;position:absolute;top:11px;right:14px}.coin-hud strong{font-size:15px}.coin-hud small{border-left:1px solid #ffffff52;padding-left:6px;font-size:9px;font-weight:800}.live-count-hud{z-index:5;color:#fff;background:#0000003d;border-radius:8px;gap:10px;padding:6px 9px;font-size:10px;display:flex;position:absolute;top:52px;right:14px}.live-count-hud strong{margin-left:3px;font-size:12px}.trainer-count-hud{max-width:calc(100% - 150px)}.bet-table-state{color:#f2c21a;opacity:.88;place-items:center;display:grid;position:absolute;inset:0}.icon-button{cursor:pointer;border:0;border-radius:50%;place-items:center;width:36px;height:36px;display:inline-grid}.icon-button:disabled{cursor:default}.icon-button--table{color:#fff;background:#0003}.icon-button--table:hover{background:#0000004d}.icon-button--light{color:#262a28;background:#eef0ef}.icon-button--light:hover{background:#e1e5e3}.favorite-button,.record-star,.icon-button.is-favorite{font-size:22px;line-height:1}.favorite-button.is-favorite,.record-star.is-favorite,.icon-button.is-favorite{color:#f2c21a}.dealer-zone{flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;top:clamp(44px,7vh,68px);left:50%;transform:translate(-50%)}.zone-label{color:#ffffffb8;font-size:11px;font-weight:700}.player-zone{flex-direction:column;align-items:center;gap:13px;display:flex;position:absolute;bottom:18px;left:16px;right:16px}.playing-card{aspect-ratio:.72;color:#111;-webkit-user-select:none;user-select:none;background:#fff;border:1px solid #cdd1cf;border-radius:8px;position:relative;box-shadow:0 8px 20px #0000002b}.playing-card.is-red{color:#d6242f}.playing-card--player{width:clamp(88px,14vh,118px)}.playing-card--dealer{border-radius:6px;width:clamp(48px,7.5vh,58px)}.card-corner{justify-items:center;line-height:1;display:grid;position:absolute;top:8%;left:9%}.card-corner strong{font-size:clamp(13px,19%,20px)}.card-corner span{margin-top:2px;font-size:13px}.card-corner--bottom{inset:auto 9% 8% auto;transform:rotate(180deg)}.card-suit{font-size:40px;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.playing-card--dealer .card-corner{top:7%;left:10%}.playing-card--dealer .card-corner--bottom{inset:auto 10% 7% auto}.playing-card--dealer .card-corner strong{font-size:10px}.playing-card--dealer .card-corner span{font-size:8px}.playing-card--dealer .card-suit{font-size:21px}.dealer-card-row{justify-content:center;align-items:center;display:flex}.dealer-card-row>*+*{margin-left:-12px}.card-back{background-color:#173f77;background-image:repeating-linear-gradient(45deg,#ffffff2b 0 2px,#0000 2px 6px);border-color:#e6e9e7;box-shadow:inset 0 0 0 4px #fff,0 8px 20px #0000002b}.card-fan{justify-content:center;align-items:center;min-height:128px;display:flex}.fan-card{z-index:var(--card-index);position:relative}.fan-card+.fan-card{margin-left:-34px}.hand-total{font-size:15px}.action-panel{background:#fff;grid-template-rows:30px 1fr;gap:8px;min-height:0;padding:10px 16px 12px;display:grid}.count-bet-control{grid-template-columns:auto 112px minmax(104px,1fr);align-items:center;gap:10px;display:grid}.count-bet-control>span{color:var(--muted);font-size:12px;font-weight:700}.count-bet-stepper{border:1px solid var(--separator);border-radius:8px;grid-template-columns:36px 1fr 36px;align-items:center;height:48px;display:grid;overflow:hidden}.count-bet-stepper button{color:#08795a;background:#f2f4f3;border:0;place-items:center;height:100%;display:grid}.count-bet-stepper button:disabled{color:#b7bdb9}.count-bet-stepper strong{text-align:center}.count-bet-next{color:#fff;background:#08795a;border:0;border-radius:8px;height:48px;font-weight:750}.count-bet-next:disabled{opacity:.68}.training-bet-control{grid-template-columns:auto 112px minmax(126px,1fr)}.feedback-line{align-items:center;gap:8px;min-width:0;height:30px;display:flex}.feedback-correct{color:#138447;font-size:13px;font-weight:750}.feedback-wrong{color:#b52a31;font-size:13px;font-weight:750}.live-win{color:#138447;font-size:13px;font-weight:800}.live-loss{color:#b52a31;font-size:13px;font-weight:800}.feedback-placeholder{color:var(--muted);font-size:13px;font-weight:650}.feedback-spacer{flex:1}.mini-icon-button{cursor:pointer;background:#eff1f0;border:0;border-radius:50%;place-items:center;width:29px;height:29px;display:grid}.compact-next{color:#fff;cursor:pointer;background:#1478df;border:0;border-radius:7px;height:29px;padding:0 11px;font-size:12px;font-weight:750}.action-rows{grid-template-rows:48px 56px;gap:8px;display:grid}.action-row{gap:8px;display:grid}.action-row--primary{grid-template-columns:repeat(2,1fr)}.action-row--secondary{grid-template-columns:repeat(3,1fr)}.action-button{background:color-mix(in srgb, currentColor 9%, white);cursor:pointer;border:1px solid;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-width:0;font-size:13px;font-weight:700;display:flex;position:relative}.action-row--secondary .action-button{flex-direction:column;gap:2px;font-size:11px}.action-button.action-hit{color:#15844a}.action-button.action-stand{color:#24557d}.action-button.action-double{color:#cf650e}.action-button.action-split{color:#754db2}.action-button.action-surrender{color:#bc3038}.action-button:disabled{cursor:default;color:#9da39f;background:#f0f1f1;border-color:#d3d6d4}.action-button.is-correct{color:#118444;background:#eaf7f0;border-width:2px}.action-button.is-wrong{color:#c52e37;background:#fff0f1;border-width:2px}.answer-check{position:absolute;right:12px}.ad-space{border-top:1px solid var(--separator);background:#f1f2f3;height:50px}.live-result-backdrop{z-index:30;align-items:end;padding:12px}.live-result-sheet{background:#fff;border-radius:8px;width:min(100%,520px);padding:20px 18px 18px;box-shadow:0 24px 80px #00000047}.live-result-sheet h2{text-align:center;margin:0 0 20px;font-size:18px}.live-result-metrics{border-bottom:1px solid var(--separator);grid-template-columns:1fr 1fr;display:grid}.live-result-metric{justify-items:center;gap:6px;min-width:0;padding:2px 10px 20px;display:grid}.live-result-metric+.live-result-metric{border-left:1px solid var(--separator)}.live-result-label{color:#16834a;align-items:center;gap:5px;font-size:12px;font-weight:700;display:flex}.live-result-label.is-negative{color:#c6323a}.live-result-metric strong{font-size:30px;line-height:1}.live-result-metric small,.live-result-stats small{color:var(--muted);font-size:10px}.live-result-stats{grid-template-columns:repeat(3,1fr);padding:18px 0 0;display:grid}.live-result-stats span{justify-items:center;gap:4px;display:grid}.live-result-stats strong{font-size:14px}.live-result-sheet p{color:var(--muted);text-align:center;margin:16px 0;font-size:10px}.live-result-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.live-result-actions button{cursor:pointer;border-radius:8px;min-height:48px;font-weight:750}.result-home-button{border:1px solid var(--separator);color:#252927;background:#fff}.result-restart-button{color:#fff;background:#08795a;border:1px solid #08795a}.records-page{background:#fff;grid-template-rows:58px minmax(0,1fr);height:100%;display:grid}.records-toolbar{background:var(--grouped);border-bottom:1px solid var(--separator);grid-template-columns:minmax(0,1fr) 36px;align-items:center;gap:12px;padding:10px 16px;display:grid}.segment-control{background:#e4e6e8;border-radius:8px;grid-template-columns:1fr 1fr;height:36px;padding:3px;display:grid}.segment-control button{color:#555c58;cursor:pointer;background:0 0;border:0;border-radius:6px;font-size:13px;font-weight:700}.segment-control button.is-active{color:#111;background:#fff;box-shadow:0 1px 4px #0000001f}.delete-button{color:#d33840}.delete-button:disabled{color:#adb2af;opacity:.5}.records-scroll{overscroll-behavior:contain;overflow-y:auto}.record-row{border-bottom:1px solid #e2e5e3;grid-template-columns:minmax(0,1fr) 40px;align-items:center;width:min(100%,800px);min-height:90px;margin:0 auto;padding:7px 16px;display:grid}.record-main{text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;min-width:0;padding:8px 0;display:flex}.record-copy{gap:5px;min-width:0;display:grid}.record-copy strong{font-size:14px}.record-correct{color:#16834a}.record-wrong{color:#c6323a}.record-hand{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:650;overflow:hidden}.record-hand b,.record-copy small{color:var(--muted);font-size:11px}.record-chevron{color:#a2a7a4;flex:none}.record-star{color:#818784;cursor:pointer;background:0 0;border:0;border-radius:50%;width:36px;height:36px;font-size:21px}.empty-state{color:#858b88;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:440px;padding:24px;display:flex}.empty-state strong{color:#343836;font-size:18px}.empty-state span{font-size:13px}.modal-backdrop{z-index:20;padding:max(12px, env(safe-area-inset-top)) 12px max(12px, env(safe-area-inset-bottom));background:#080c0a7a;place-items:center;display:grid;position:fixed;inset:0}.strategy-board{background:#fff;border-radius:8px;grid-template-rows:auto auto auto minmax(0,1fr);width:min(100%,860px);height:min(94dvh,900px);display:grid;overflow:hidden;box-shadow:0 24px 80px #00000047}.strategy-board.is-embedded{width:100%;height:100%;box-shadow:none;border-radius:0;grid-template-rows:auto minmax(0,1fr)}.strategy-board--mistake{grid-template-rows:auto minmax(0,auto) auto auto;height:auto;max-height:94dvh}.sheet-header{border-bottom:1px solid var(--separator);justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:12px 16px;display:flex}.sheet-header h2{margin:0;font-size:17px}.sheet-header p{color:var(--muted);margin:4px 0 0;font-size:12px;font-weight:650}.sheet-actions{gap:8px;display:flex}.strategy-legend{grid-template-columns:repeat(5,1fr);gap:5px;padding:10px 14px 4px;display:grid}.legend-item{flex-direction:column;align-items:center;gap:3px;min-width:0;font-size:9px;font-weight:650;display:flex}.legend-code{border:1px solid #ccd0ce;place-items:center;width:26px;height:23px;font-size:12px;font-weight:800;display:grid}.slash-note{color:var(--muted);text-align:center;margin:4px 12px 8px;font-size:10px}.strategy-scroll{align-content:start;gap:18px;min-height:0;padding:12px;display:grid;overflow-y:auto}.strategy-scroll--single{max-height:52dvh}.strategy-section{overscroll-behavior-inline:contain;overflow-x:auto}.strategy-grid{background:#202322;border:1px solid #202322;grid-template-columns:42px repeat(10,minmax(0,1fr));gap:1px;min-width:0;display:grid}.strategy-header,.strategy-row-label,.strategy-cell{place-items:center;height:30px;font-size:12px;font-weight:800;display:grid}.strategy-header,.strategy-row-label{color:#fff;background:#080908}.strategy-section-name{font-size:10px}.strategy-cell{position:relative}.strategy-cell.action-hit,.legend-code.action-hit{color:#111;background:#f4f5f5}.strategy-cell.action-stand,.legend-code.action-stand{color:#fff;background:#07505a}.strategy-cell.action-double,.legend-code.action-double{color:#fff;background:#ec3c43}.strategy-cell.action-split,.legend-code.action-split{color:#18150b;background:#d9a711}.strategy-cell.action-surrender,.legend-code.action-surrender{color:#142006;background:#8fbe25}.is-axis-selected:after,.is-cell-selected:after{content:"";pointer-events:none;border:3px solid #078cff;position:absolute;inset:1px}.is-axis-selected{position:relative}.strategy-board.is-embedded .strategy-legend{padding:max(6px, env(safe-area-inset-top)) 6px 5px;gap:2px}.strategy-board.is-embedded .legend-item{white-space:nowrap;flex-direction:row;justify-content:center;gap:4px;font-size:8px}.strategy-board.is-embedded .legend-code{flex:none;width:24px;height:22px;font-size:11px}.strategy-board.is-embedded .strategy-scroll{grid-template-rows:11fr 9fr 11fr;align-content:stretch;gap:5px;padding:6px;overflow:hidden}.strategy-board.is-embedded .strategy-section{min-height:0;overflow:hidden}.strategy-board.is-embedded .strategy-grid{grid-template-rows:repeat(var(--grid-row-count), minmax(0, 1fr));height:100%}.strategy-board.is-embedded .strategy-header,.strategy-board.is-embedded .strategy-row-label,.strategy-board.is-embedded .strategy-cell{height:auto;min-height:0;font-size:10px}.strategy-board.is-embedded .strategy-section-name{font-size:8px}.study-page{background:var(--grouped);grid-template-rows:50px minmax(0,1fr);height:100%;display:grid}.study-segments{background:#e4e6e8;grid-template-columns:1fr 1fr;gap:3px;padding:8px 12px 6px;display:grid}.study-segments button{color:#555c58;cursor:pointer;background:0 0;border:0;border-radius:6px;font-size:13px;font-weight:750}.study-segments button.is-active{color:#111;background:#fff;box-shadow:0 1px 4px #0000001f}.study-content{min-height:0;overflow:hidden}.counting-study{background:#fff;height:100%;padding:0 16px 24px;overflow-y:auto}.counting-study-section{border-bottom:1px solid var(--separator);padding:18px 0}.counting-study-section h2{margin:0 0 12px;font-size:15px}.counting-study-section p{color:var(--muted);margin:8px 0;font-size:11px}.counting-study-section small{color:var(--muted);font-size:10px}.count-value-grid{border:1px solid var(--separator);background:var(--separator);border-radius:8px;grid-template-columns:repeat(3,1fr);gap:1px;display:grid;overflow:hidden}.count-value-grid div{text-align:center;background:#fff;justify-items:center;gap:6px;min-width:0;padding:12px 4px;display:grid}.count-value-grid strong{font-size:22px}.count-value-grid div:first-child strong{color:#16834a}.count-value-grid div:nth-child(2) strong{color:#256a9b}.count-value-grid div:last-child strong{color:#c6323a}.count-value-grid span{font-size:10px;font-weight:700}.count-formula{border:1px solid var(--separator);border-radius:8px;justify-content:center;align-items:center;gap:9px;min-height:52px;padding:0 10px;display:flex}.count-formula strong{font-size:14px}.count-formula span{color:var(--muted)}.bet-ramp{border-top:1px solid var(--separator)}.bet-ramp>div{border-bottom:1px solid var(--separator);justify-content:space-between;align-items:center;min-height:38px;padding:0 10px;font-size:12px;display:flex}.bet-ramp strong{color:#08795a}.deviation-matrix-section{padding-top:14px}.deviation-matrix{background:#1f2221;border:1px solid #1f2221;border-radius:6px;overflow:hidden}.deviation-matrix-row{background:#1f2221;grid-template-columns:42px repeat(10,minmax(0,1fr));gap:1px;display:grid}.deviation-matrix-row+.deviation-matrix-row{margin-top:1px}.deviation-matrix-row>span,.deviation-matrix-row>strong{background:#fff;justify-content:center;align-items:center;min-width:0;height:36px;font-size:8px;display:flex}.deviation-matrix-row>strong{color:#fff;background:#121413;font-size:9px}.deviation-matrix-head>span{color:#fff;background:#121413;height:25px;font-size:9px;font-weight:750}.deviation-cell{flex-direction:column;gap:0;line-height:1}.deviation-cell b{font-size:12px}.deviation-cell small{color:inherit;margin-top:3px;font-size:7px;font-weight:750}.deviation-cell.is-empty{background:#f5f6f6}.deviation-cell.action-s{color:#fff;background:#07505a}.deviation-cell.action-d{color:#fff;background:#ec3c43}.deviation-cell.action-p{color:#18150b;background:#d9a711}.deviation-cell.action-r{color:#142006;background:#8fbe25}.is-deviation-axis-selected,.deviation-cell.is-deviation-selected{z-index:1;position:relative;box-shadow:inset 0 0 0 3px #078cff}.counting-deviation-result{background:#e8f3ff;border-radius:6px;padding:8px 10px;font-weight:750;color:#17201c!important}.strategy-scroll--counting{padding-top:0}.strategy-scroll--counting .deviation-matrix-section{border-bottom:0;width:100%;padding-bottom:0}.counting-strategy-legend{grid-template-columns:repeat(4,1fr);padding:0 0 8px}.counting-strategy-legend .legend-item{white-space:nowrap;flex-direction:row;justify-content:center;gap:4px;font-size:8px}.counting-strategy-legend .legend-code{flex:none;width:24px;height:22px;font-size:11px}.next-button{color:#fff;cursor:pointer;background:#1478df;border:0;border-radius:8px;height:48px;margin:12px 16px 16px;font-weight:750}@media (width>=760px){:root{--nav-height:72px}.bottom-nav{border:1px solid var(--separator);border-bottom:0;border-radius:8px 8px 0 0;width:min(460px,100% - 40px);margin:0 auto}.app-content{background:#eef0f1}.trainer{border-left:1px solid #dadddb;border-right:1px solid #dadddb}.records-page,.strategy-board.is-embedded,.study-page{border-inline:1px solid #dadddb;width:min(100%,860px);margin:0 auto}.strategy-grid{grid-template-columns:52px repeat(10,minmax(36px,1fr))}}@media (width<=430px){.mode-row{grid-template-columns:44px minmax(0,1fr) auto;gap:12px;min-height:88px;padding:14px}.mode-icon{width:44px;height:44px}.trainer{grid-template-rows:minmax(300px,1fr) 190px 50px}.playing-card--player{width:clamp(86px,13.5vh,108px)}.fan-card+.fan-card{margin-left:-32px}.action-panel{padding-inline:12px}.action-button{gap:5px}.action-row--secondary .action-button svg{width:15px;height:15px}.strategy-board{border-radius:0;height:100%;max-height:none}.strategy-board--mistake{border-radius:8px;height:auto;max-height:calc(100dvh - 20px)}}@media (height<=680px){.trainer{grid-template-rows:minmax(260px,1fr) 176px 50px}.action-panel{grid-template-rows:27px 1fr;gap:6px;padding-top:7px}.action-rows{grid-template-rows:44px 50px;gap:6px}.playing-card--player{width:82px}.player-zone{gap:8px;bottom:10px}}
