:root{--bg: #0f1419;--panel: #1a212b;--panel-2: #232c38;--line: #2f3a47;--text: #e7edf3;--muted: #8a99a8;--felt: #1f6b46;--felt-line: #2f9c68;--accent: #4ea1ff;--good: #34c759;--neutral: #f0b429;--bad: #ff5a52;--red-suit: #ff5a52;--black-suit: #e7edf3;--radius: 12px;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}.app{max-width:1700px;margin:0 auto;padding:16px}.columns{display:grid;grid-template-columns:1fr;gap:14px;align-items:start}.col-cards{order:1}.col-table{order:2;display:flex;flex-direction:column;gap:14px}.col-advice{order:3}@media (min-width: 1080px){.columns{grid-template-columns:minmax(360px,1fr) minmax(420px,1.1fr) minmax(300px,.95fr)}.col-advice{order:1}.col-cards{order:2}.col-table{order:3}}.columns .panel{margin-bottom:0}h1{font-size:20px;margin:4px 0 2px}.subtitle{color:var(--muted);font-size:13px;margin:0 0 16px}.footer{display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:20px}.disclaimer{text-align:center;color:var(--muted);font-size:12px;margin:0 auto 8px;padding:0 12px;max-width:560px}.donate-btn{display:inline-flex;align-items:center;gap:6px;text-decoration:none;font-size:13px;color:var(--text);background:#ff5a521f;border:1px solid rgba(255,90,82,.4);border-radius:8px;padding:8px 16px;transition:border-color .15s,background .15s}.donate-btn:hover{border-color:#ff5a52b3;background:#ff5a522e}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;padding:16px;z-index:100}.modal{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:16px;width:100%;max-width:520px;max-height:85vh;overflow-y:auto}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.modal-head h2{font-size:16px;margin:0}.modal-close{background:var(--panel-2);border:1px solid var(--line);color:var(--text);width:30px;height:30px;border-radius:8px;cursor:pointer;font-size:14px;flex-shrink:0}.modal-close:hover{border-color:var(--accent)}.hand-rankings{list-style:none;counter-reset:none;padding:0;margin:12px 0 0;display:flex;flex-direction:column;gap:8px}.hand-rankings li{display:flex;align-items:center;gap:10px;background:var(--panel-2);border:1px solid var(--line);border-radius:10px;padding:8px 10px}.rank-no{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:var(--bg);color:var(--muted);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}.hand-info{flex:1;min-width:0}.hand-name{font-weight:600;font-size:14px}.hand-desc{font-size:12px;color:var(--muted);margin-top:2px}.landing-glossary{max-width:860px;margin:0 auto}.landing-glossary-sub{text-align:center;color:var(--muted);font-size:13px;margin:-8px 0 18px}@media (min-width: 720px){.landing-glossary .glossary{display:grid;grid-template-columns:1fr 1fr;align-items:start}}.glossary-section{margin-top:16px}.glossary-h3{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin:0 0 8px}.glossary{margin:0;display:flex;flex-direction:column;gap:8px}.glossary-item{background:var(--panel-2);border:1px solid var(--line);border-radius:10px;padding:8px 10px}.glossary-item dt{font-weight:700;font-size:13px}.glossary-item dd{margin:3px 0 0;font-size:12px;color:var(--muted);line-height:1.45}.mini-cards{display:flex;gap:3px;flex-shrink:0}.mini-card{background:#f4f7fb;color:#111;border-radius:4px;font-size:11px;font-weight:700;letter-spacing:-.5px;padding:3px 4px;min-width:22px;text-align:center}.mini-card.red{color:#c0392b}@media (max-width: 480px){.hand-rankings li{flex-wrap:wrap}.mini-cards{width:100%;padding-left:32px}}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:14px;margin-bottom:14px;min-width:0;overflow-wrap:break-word}.panel h2{font-size:13px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin:0 0 10px}.panel-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.panel-head h2{margin:0}.help-btn{width:20px;height:20px;border-radius:50%;border:1px solid var(--line);background:var(--panel-2);color:var(--muted);font-size:12px;font-weight:700;line-height:1;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center}.help-btn:hover,.help-btn.active{border-color:var(--accent);color:var(--accent)}.help-box{font-size:12px;color:var(--muted);background:var(--panel-2);border:1px solid var(--line);border-radius:8px;padding:8px 10px;margin-bottom:10px}.row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.field{display:flex;flex-direction:column;gap:4px}.field label{font-size:12px;color:var(--muted)}.stepper{display:inline-flex;align-items:stretch;border:1px solid var(--line);border-radius:8px;overflow:hidden}.stepper button{display:flex;align-items:center;justify-content:center;background:var(--panel-2);border:none;color:var(--text);width:38px;height:38px;font-size:18px;cursor:pointer}.stepper button:disabled{opacity:.35;cursor:default}.stepper .val{display:flex;align-items:center;justify-content:center;min-width:40px;padding:0 4px;text-align:center;font-variant-numeric:tabular-nums;font-weight:600}.seats{display:grid;gap:6px}.seat{position:relative;min-width:0;height:50px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:10px;padding:4px;background:var(--panel-2);cursor:pointer;text-align:center;overflow:hidden;transition:border-color .12s,opacity .12s}.seat.folded{opacity:.4}.seat.locked{cursor:not-allowed}.seat .name{font-weight:700;font-size:15px;line-height:1}.seat .status{font-size:10px;margin-top:3px;white-space:nowrap}.seats-label{font-size:12px;color:var(--muted);margin:12px 0 6px}.seat .status.in{color:var(--good)}.seat .status.out{color:var(--bad)}.seat.hero-seat{border-color:var(--accent);background:#4ea1ff1a;cursor:default}.dealer-badge{position:absolute;top:3px;right:3px;width:18px;height:18px;border-radius:50%;background:#f4f7fb;color:#11212e;font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 4px #0006}.dealer-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:12px}.position-label{font-size:13px;color:var(--muted)}.position-label b{color:var(--accent)}.dealer-pass-wrap{display:flex;align-items:center;gap:6px}.dealer-pass{white-space:nowrap}.pos-tip{font-style:italic}.pos-note{font-size:12px;color:var(--muted);border-radius:8px;padding:8px 10px;margin-top:12px}.pos-note.in{background:#34c7591a;border:1px solid rgba(52,199,89,.3)}.pos-note.out{background:#f0b4291a;border:1px solid rgba(240,180,41,.3)}.hint{font-size:12px;color:var(--muted);margin:8px 0 0}.slots{display:flex;gap:8px;flex-wrap:wrap}.slot{width:52px;height:72px;border-radius:8px;border:2px dashed var(--line);background:var(--panel-2);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;cursor:pointer;-webkit-user-select:none;user-select:none}.slot.filled{border-style:solid;background:#f4f7fb;color:#111}.slot.active{border-color:var(--accent)}.slot .rs{color:#c0392b}.slot small{color:var(--muted);font-size:11px;font-weight:500}.street-tag{display:inline-block;font-size:11px;color:var(--muted);margin-bottom:6px}.picker{display:grid;grid-template-columns:repeat(13,minmax(0,1fr));gap:4px}.pcard{aspect-ratio:3 / 4;border-radius:5px;border:1px solid var(--line);background:#f4f7fb;color:#111;font-size:12px;font-weight:700;letter-spacing:-.4px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;overflow:hidden;min-width:0}.pcard.red{color:#c0392b}.pcard:disabled{opacity:.22;cursor:default}.suit-label{grid-column:1 / -1;font-size:13px;color:var(--muted);margin-top:10px;margin-bottom:8px}.result-grid{display:grid;grid-template-columns:140px 1fr;gap:16px;align-items:center}@media (max-width: 560px){.result-grid{grid-template-columns:1fr}}.equity-ring{position:relative;width:140px;height:140px}.equity-ring .pct{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.equity-ring .pct b{font-size:30px;font-variant-numeric:tabular-nums}.equity-ring .pct span{font-size:11px;color:var(--muted)}.breakdown{display:flex;gap:14px;margin-top:8px}.breakdown div{font-size:12px;color:var(--muted)}.breakdown b{display:block;font-size:16px;color:var(--text);font-variant-numeric:tabular-nums}.bet-head{display:flex;align-items:center;gap:8px;margin-top:16px}.bet-head-label{font-size:12px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.4px}.bet-input{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;margin-top:8px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2)}.bet-input .field{flex:1 1 120px;min-width:0}.bet-input input{width:100%;background:var(--bg);border:1px solid var(--line);border-radius:8px;color:var(--text);padding:8px 10px;font-size:16px;font-variant-numeric:tabular-nums}.bet-input input:focus{outline:none;border-color:var(--accent)}.scenarios{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-top:8px}.advice{border-radius:10px;padding:12px 14px;margin-top:12px;border:1px solid var(--line)}.scenarios .advice{margin-top:0}.advice .sit{font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);margin-bottom:6px;min-height:26px}.advice.good{background:#34c7591f;border-color:#34c75966}.advice.neutral{background:#f0b4291f;border-color:#f0b42966}.advice.bad{background:#ff5a521f;border-color:#ff5a5266}.advice.advice-primary{border-left:4px solid var(--accent);box-shadow:0 2px 12px #00000047;margin-bottom:16px}.advice .act{font-size:18px;font-weight:700}.advice .why{font-size:13px;color:var(--muted);margin-top:4px}.made-hand{font-size:13px;margin-top:10px;color:var(--muted)}.made-hand b{color:var(--text)}.risk-note{font-size:12px;color:var(--muted);background:#f0b4291a;border:1px solid rgba(240,180,41,.3);border-radius:8px;padding:8px 10px;margin:12px 0 0}.risk-note b{color:var(--neutral)}.range-note{background:#5aa0ff14;border:1px solid rgba(90,160,255,.25);border-radius:8px;padding:8px 10px;margin-top:12px}.underdog-note{background:#f0b42914;border:1px solid rgba(240,180,41,.28);border-radius:8px;padding:8px 10px;margin-top:10px}.threats{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.threat-list{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-direction:column;gap:4px}.threat-list li{display:flex;justify-content:space-between;align-items:center;background:var(--panel-2);border:1px solid var(--line);border-radius:8px;padding:6px 10px;font-size:13px}.threat-list .tname{font-weight:600}.threat-list .tcount{color:var(--muted);font-variant-numeric:tabular-nums}.threat-none{font-size:13px;color:var(--good);margin:8px 0 0}button.ghost{background:var(--panel-2);border:1px solid var(--line);color:var(--text);padding:8px 12px;border-radius:8px;cursor:pointer;font-size:13px}button.ghost:hover{border-color:var(--accent)}.toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.computing{font-size:12px;color:var(--muted)}.footer-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;width:100%;margin-top:40px}.footer-refs{width:100%}.footer-refs-center{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}@media (min-width: 1080px){.footer-refs{display:grid;grid-template-columns:minmax(360px,1fr) minmax(420px,1.1fr) minmax(300px,.95fr);gap:14px}.footer-refs-center{grid-column:2;justify-content:space-between;flex-wrap:nowrap}}.landing-topbar{display:flex;justify-content:flex-end;max-width:960px;margin:0 auto}.lang-switch{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:700;-webkit-user-select:none;user-select:none}.lang-switch button{background:none;border:none;color:var(--muted);cursor:pointer;padding:4px 6px;font-size:13px;font-weight:700;border-radius:6px}.lang-switch button.on{color:var(--accent)}.lang-switch button:hover{color:var(--text)}.lang-sep{color:var(--line)}.landing{max-width:960px;margin:0 auto;padding:16px 16px 40px}.hero{text-align:center;padding:40px 16px 32px}.hero-badge{display:inline-block;font-size:12px;letter-spacing:1px;color:var(--accent);background:#4ea1ff1a;border:1px solid rgba(78,161,255,.3);border-radius:999px;padding:6px 14px;margin-bottom:18px}.hero-title{font-size:44px;margin:0 0 6px;letter-spacing:-.5px}.hero-tagline{font-size:20px;color:var(--accent);margin:0 0 16px;font-weight:600}.hero-sub{font-size:16px;color:var(--muted);max-width:560px;margin:0 auto 10px;line-height:1.5}.hero-punch{font-size:16px;font-weight:600;color:var(--text);margin:0 auto 28px;max-width:560px}.cta{display:inline-block;background:var(--accent);color:#00111f;border:none;border-radius:12px;padding:16px 36px;font-size:18px;font-weight:700;cursor:pointer;text-decoration:none;box-shadow:0 6px 20px #4ea1ff59;transition:transform .1s,box-shadow .1s}.cta:hover{transform:translateY(-2px);box-shadow:0 10px 28px #4ea1ff73}.cta:active{transform:translateY(0)}.donate-cta{display:inline-block;text-align:center;text-decoration:none;background:#ff5a52;color:#fff;box-shadow:0 6px 20px #ff5a5259}.donate-cta:hover{box-shadow:0 10px 28px #ff5a5273}.landing-section{margin-top:40px}.landing-h2{font-size:22px;text-align:center;margin:0 0 22px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.step{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:20px 16px;text-align:center}.step-n{width:36px;height:36px;border-radius:50%;background:var(--accent);color:#00111f;font-weight:700;font-size:18px;display:flex;align-items:center;justify-content:center;margin:0 auto 12px}.step-title{font-weight:600;font-size:16px;margin-bottom:6px}.step-text{font-size:13px;color:var(--muted);line-height:1.45}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.benefit-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.benefit-icon{font-size:26px;margin-bottom:8px}.benefit-title{font-weight:600;font-size:16px;margin-bottom:6px}.benefit-text{font-size:13px;color:var(--muted);line-height:1.45}.credibility{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:24px}.credibility-text{font-size:15px;color:var(--muted);line-height:1.6;max-width:680px;margin:0 auto;text-align:center}.landing-cta-bottom{text-align:center;margin-top:36px}.hero-cta-group{display:inline-flex;flex-direction:column;align-items:stretch;gap:14px}.landing-disclaimer{font-size:12px;color:var(--muted);text-align:center;max-width:640px;margin:32px auto 0;line-height:1.5;opacity:.8}@media (max-width: 720px){.steps,.benefits{grid-template-columns:1fr}.hero-title{font-size:34px}.hero-tagline{font-size:17px}.hero-sub{font-size:15px}.hero{padding:24px 8px 20px}.cta{width:100%;max-width:360px}}@media (max-width: 560px){.app{padding:12px}h1{font-size:18px}.panel{padding:12px}.result-grid{justify-items:center;text-align:center}.breakdown{flex-wrap:wrap;justify-content:center;gap:12px 18px}.threat-list li{gap:10px}.threat-list .tname{overflow-wrap:anywhere}.advice .act{font-size:17px}.advice .sit{min-height:0}.dealer-row{flex-direction:column;align-items:flex-start}.footer-refs-center .ghost{flex:1 1 40%;text-align:center}.footer-refs-center .donate-btn{order:1;flex:1 1 100%;justify-content:center}}.page{max-width:900px;margin:0 auto;padding:20px 16px 40px}.page-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.page-home{color:var(--muted);text-decoration:none;font-size:14px;font-weight:600}.page-home:hover{color:var(--accent)}.page-title{font-size:26px;margin:0 0 6px}.page-sub{color:var(--muted);font-size:14px;margin:0 0 20px}@media (min-width: 720px){.page-content .glossary{display:grid;grid-template-columns:1fr 1fr;align-items:start}}.page-cta{text-align:center;margin-top:32px}.page-footnote{max-width:720px;margin:24px auto 0;font-size:13px;line-height:1.55;color:var(--muted)}.reference-links{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:980px;margin:0 auto}@media (max-width: 900px){.reference-links{grid-template-columns:1fr;max-width:520px}}.reference-card{display:flex;align-items:center;gap:12px;text-decoration:none;background:#4ea1ff12;border:1px solid rgba(78,161,255,.35);border-radius:12px;padding:14px 16px;transition:border-color .15s,background .15s,transform .1s}.reference-card:hover{border-color:var(--accent);background:#4ea1ff24;transform:translateY(-2px)}.reference-icon{font-size:22px;flex-shrink:0}.reference-body{display:flex;flex-direction:column;gap:2px;min-width:0}.reference-name{font-weight:700;font-size:15px;color:var(--accent)}.reference-text{font-size:13px;color:var(--muted)}@media (max-width: 560px){.reference-links{grid-template-columns:1fr}}.sh-pos-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}.sh-pos-label{font-size:13px;color:var(--muted)}.sh-pos-tabs{display:flex;flex-wrap:wrap;gap:6px}.sh-pos-btn{background:var(--panel-2);border:1px solid var(--line);color:var(--muted);border-radius:8px;padding:6px 10px;font-size:12px;cursor:pointer}.sh-pos-btn:hover{border-color:var(--accent)}.sh-pos-btn.active{border-color:var(--accent);color:var(--accent);background:#4ea1ff1a}.sh-pos-tip{margin:0 0 14px}.sh-scroll{overflow-x:auto}.sh-grid{display:grid;grid-template-columns:repeat(13,minmax(32px,1fr));gap:3px;min-width:460px}.sh-cell{font-size:10px;font-weight:700;text-align:center;padding:6px 0;border-radius:4px;letter-spacing:-.3px}.sh-cell.pair{outline:1px solid rgba(231,237,243,.25)}.sh-cell.premium,.sh-swatch.premium{background:#34c759;color:#04210f}.sh-cell.strong,.sh-swatch.strong{background:#34c75966;color:var(--text)}.sh-cell.playable,.sh-swatch.playable{background:#f0b42973;color:var(--text)}.sh-cell.marginal,.sh-swatch.marginal{background:#f0b42929;color:var(--muted)}.sh-cell.trash,.sh-swatch.trash{background:var(--panel-2);color:#5b6b7a}.sh-disclaimer{background:#f0b42914;border:1px solid rgba(240,180,41,.28);border-radius:8px;padding:8px 10px}.sh-legend{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:14px}.sh-legend-item{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.sh-swatch{width:14px;height:14px;border-radius:4px;flex-shrink:0}.learn-steps{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:14px}.learn-step{display:flex;gap:14px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px}.learn-step-n{flex-shrink:0;width:30px;height:30px;border-radius:50%;background:#4ea1ff24;color:var(--accent);font-weight:800;font-size:15px;display:flex;align-items:center;justify-content:center}.learn-step-body{min-width:0}.learn-step-title{font-size:15px;margin:4px 0 6px}.learn-step-text{font-size:13px;color:var(--muted);line-height:1.55;margin:0 0 8px}.learn-step-link{font-size:13px;font-weight:600;color:var(--accent);text-decoration:none}.learn-step-link:hover{text-decoration:underline}.learn-time{margin-top:20px;background:#4ea1ff12;border:1px solid rgba(78,161,255,.3);border-radius:12px;padding:16px}.learn-banner{display:flex;align-items:center;justify-content:center;gap:8px;max-width:980px;margin:0 auto 14px;text-decoration:none;background:#4ea1ff1a;border:1px solid rgba(78,161,255,.4);border-radius:12px;padding:14px 16px;font-size:14px;font-weight:600;color:var(--text);transition:border-color .15s,background .15s}.learn-banner:hover{border-color:var(--accent);background:#4ea1ff29}.pos-diagram{display:block;width:100%;max-width:640px;margin:0 auto}.pos-diagram-note{text-align:center;margin:4px 0 18px}.pos-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 720px){.pos-cards{grid-template-columns:1fr}}.pos-card{background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--line);border-radius:10px;padding:12px 14px}.pos-card-head{display:flex;align-items:center;gap:8px;margin-bottom:6px}.pos-card-code{color:#0f1419;font-size:11px;font-weight:800;border-radius:6px;padding:3px 7px}.pos-card-name{font-weight:700;font-size:14px}.pos-card-what{font-size:13px;line-height:1.5;margin:0 0 6px}.pos-card-tip{font-size:12px;color:var(--muted);line-height:1.5;margin:0}
