:root{--bg: #ffffff;--ink: #111111;--muted: #555555;--faint: #6b6b6b;--line: #d4d4d4;--hair: #e2e2e2;--tint: #f4f4f4;--accent: #ff5a1f;--red: #c41e16;--mid: #6b6b6b;--blank: #ededed;--diamond: var(--red);--club: var(--ink);--rule: 1.5px solid var(--ink);--mono: "JetBrains Mono", ui-monospace, monospace;--ease: cubic-bezier(.2, .8, .2, 1);--ease-in: cubic-bezier(.45, 0, .3, 1);font-family:Inter Tight,system-ui,-apple-system,sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}html,body{overscroll-behavior:none}body{margin:0;background:var(--bg)}button{font:inherit;color:inherit;cursor:pointer;background:none;border:none;padding:0}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input[type=checkbox],input[type=radio]{width:18px;height:18px;accent-color:var(--ink);margin:0}.num{font-family:var(--mono)}.strong{font-weight:700}.muted{color:var(--muted)}.small{font-size:13px}.ink{color:var(--ink)}.right{text-align:right}.show-sm{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.link{text-decoration:underline;text-underline-offset:3px;font-size:14px;align-self:flex-start}.btn{border:var(--rule);padding:10px 16px;font-size:15px;font-weight:600;display:inline-flex;align-items:center;justify-content:space-between;gap:12px}.btn.primary{background:var(--accent);border-color:var(--accent)}.btn.big{min-height:64px;padding:0 20px;font-size:18px;width:100%}.btn.danger{border-color:var(--red);color:var(--red)}.kbd{font-size:13px;font-weight:400}.icon-btn{width:40px;height:40px;display:grid;place-items:center}.icon-btn.boxed{border:var(--rule)}.app{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.app.view-play{height:100vh;height:100dvh}.four-color{--diamond: #1f5fcc;--club: #17803f}.topbar{display:flex;align-items:stretch;gap:20px;padding:0 24px;min-height:56px;border-bottom:var(--rule);position:sticky;top:0;background:var(--bg);z-index:10}.brand{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:700;text-decoration:none;color:inherit}.mark{width:20px;height:20px;flex:none;display:block}.top-right{margin-left:auto;display:flex;align-items:center;gap:20px}.play{display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-template-rows:auto minmax(240px,1fr) auto;grid-template-areas:"strip strip" "table coach" "actions coach";flex:1 1 auto;min-height:0}.drill-strip{grid-area:strip;display:flex;align-items:center;gap:16px;padding:10px 24px;border-bottom:1px solid var(--line);font-size:14px}.progress{flex:1;max-width:320px;height:4px;background:var(--hair)}.progress span{display:block;height:100%;background:var(--ink)}.drill-strip .link{margin-left:auto}.table-area{grid-area:table;position:relative;min-height:0}.action-area{grid-area:actions;position:relative;z-index:5;border-top:var(--rule);height:calc(var(--bar-h, 146px) + 1.5px);display:flex}.action-area[data-bar=touch]{--bar-h: 121px}.status{flex:1;display:flex;align-items:center;justify-content:center;font-size:14px;color:var(--muted)}.table{position:absolute;top:0;right:0;bottom:0;left:0}.at{left:calc(var(--x) * 1%);top:calc(var(--y) * 1%)}.seat-act{color:var(--muted)}.meta-gap{margin-left:10px}.meta-stakes{margin-right:10px;color:var(--ink);font-weight:600}.pos-tag{margin-left:8px}.table-meta{position:absolute;left:24px;top:18px;font-size:13px;color:var(--muted);z-index:2}.table-news{margin-top:4px;color:var(--ink);font-weight:600;animation:deal .3s ease-out}.felt{position:absolute;top:11%;right:8%;bottom:15%;left:8%;border-radius:999px;border:var(--rule)}.center{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:14px}.pot{font-size:13px;color:var(--muted);white-space:nowrap}.pot .num{font-size:16px;color:var(--ink)}.odds{margin-top:-8px;font-size:12px;color:var(--muted);white-space:nowrap;animation:rise .25s var(--ease) both}.board{display:flex;gap:8px}.seat{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;gap:14px;background:var(--bg);padding:4px 10px;z-index:1}.seat.folded{font-size:12px;color:var(--muted);padding:2px 10px;white-space:nowrap;border:1px solid var(--line);border-radius:999px}.seat.acting .seat-name{box-shadow:inset 0 -2px 0 var(--accent)}.seat:not(.hero){flex-direction:column;gap:6px;text-align:center}.hole{display:flex;gap:5px}.seat-name{font-size:14px;font-weight:700;white-space:nowrap}.seat-name .pos{font-weight:400;color:var(--muted)}.seat-sub{font-size:13px;white-space:nowrap}.seat.is-folded .seat-sub{color:var(--muted)}.bet{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;gap:5px;font-size:13px;border:1.5px solid var(--ink);border-radius:999px;padding:1px 8px 1px 3px;background:var(--bg);white-space:nowrap}.chip-dot{width:12px;height:12px;border-radius:50%;background:var(--accent);border:2px dashed var(--ink)}.dealer{position:absolute;z-index:2;transform:translate(-50%,-50%);width:24px;height:24px;border-radius:50%;border:1.5px solid var(--ink);background:var(--bg);display:grid;place-items:center;font-size:12px;font-weight:700;transition:left .6s var(--ease),top .6s var(--ease)}.dealer.blind{width:30px;height:22px;border-radius:999px;font-size:10px;letter-spacing:.02em;background:var(--tint)}@property --x{syntax: "<number>"; inherits: false; initial-value: 50;}@property --y{syntax: "<number>"; inherits: false; initial-value: 50;}.glide{animation:glide .3s var(--ease) both}@keyframes glide{0%{--x: var(--fx);--y: var(--fy);opacity:.3}}.fly{position:absolute;transform:translate(-50%,-50%);z-index:3;pointer-events:none;animation:sweep .32s var(--ease-in) both}.fly.muck{display:flex;gap:2px;animation-duration:.36s}.fly .card{animation:none}@keyframes sweep{0%{--x: var(--fx);--y: var(--fy)}80%{opacity:1}to{opacity:0}}.card.dealt{animation:deal-in .34s var(--ease) both}@keyframes deal-in{0%{transform:translate(calc(var(--dx, 0) * 1px),calc(var(--dy, 0) * 1px)) scale(.5) rotate(-10deg);opacity:0}40%{opacity:1}}.card.flip{animation:flip .38s var(--ease) both}@keyframes flip{0%{transform:perspective(500px) rotateY(-90deg) translateY(-8px);opacity:0}50%{opacity:1}}.pot-num{display:inline-block;animation:pop .3s var(--ease)}@keyframes pop{0%{transform:scale(1.3);color:var(--accent)}}.seat-name{position:relative}.think{position:absolute;left:0;right:0;bottom:-4px;height:2px;background:var(--accent);transform-origin:left;animation:think linear both}@keyframes think{0%{transform:scaleX(0)}}.seat-act{animation:rise .22s var(--ease) both}@keyframes rise{0%{opacity:0;transform:translateY(4px)}}.arrive{animation:rise .3s var(--ease) .45s both}.seat.folded{animation:fade .3s ease-out both}@keyframes fade{0%{opacity:0}}.seat .seat-sub,.seat .seat-name{transition:color .2s}.seat.acting .seat-name{transition:box-shadow .2s}@media (prefers-reduced-motion: reduce){.typing i{animation:none;opacity:.6}.table *,.actions,.actions *{animation:none!important;transition:none!important}.fly{display:none}}.table-note{position:absolute;left:50%;top:60%;transform:translate(-50%);font-size:13px;color:var(--muted)}.card{border:1.5px solid var(--ink);background:#fff;display:flex;flex-direction:column;justify-content:space-between;font-family:var(--mono);color:var(--ink);animation:deal .2s ease-out}@keyframes deal{0%{opacity:0;transform:translateY(-4px)}}.card .rank{font-weight:700;line-height:1}.card .suit{align-self:flex-end;line-height:1}.card.lg{width:64px;height:90px;padding:7px 8px;font-size:24px}.card.md{width:58px;height:82px;padding:6px 7px;font-size:22px}.card.sm{width:36px;height:50px;padding:3px 4px;font-size:15px}.card.back{width:22px;height:31px;padding:0;border-width:1.5px;background:repeating-linear-gradient(45deg,var(--ink) 0 2px,#fff 2px 5px)}.seat:not(.hero) .hole{gap:3px}.card.hero{border-width:3px}.card.dim{opacity:.4}.heart,.card.heart{color:var(--red)}.diamond,.card.diamond{color:var(--diamond)}.club,.card.club{color:var(--club)}.card-text{font-weight:700;display:inline-flex;gap:4px}.actions{flex:1;min-width:0;display:flex;flex-direction:column;animation:rise .2s var(--ease) both}.act-row{display:flex;flex:1}.act{flex:1 1 140px;font-size:18px;font-weight:600;border-right:var(--rule);display:flex;align-items:center;justify-content:center;gap:8px}.act:last-child{border-right:none}.act.primary{background:var(--accent)}.key-hint{margin-left:4px;padding:0 5px;border:1px solid currentColor;border-radius:3px;font-family:var(--mono);font-size:11px;font-weight:400;opacity:.45}.act,.common-btn{transition:background-color .15s,color .15s,transform .1s}.act:active,.common-btn:active{transform:scale(.97)}.act:hover:not(.primary),.common-btn:hover:not(.on){background:var(--tint)}.common{flex:none;display:flex}.common-btn{position:relative;flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;border-right:1px solid var(--line)}.common-btn:last-child{border-right:none}.cb-main{font-size:18px;font-weight:600;white-space:nowrap}.cb-unit{font-size:12px;font-weight:400}.cb-sub{font-size:11px;color:var(--muted);font-family:var(--mono);white-space:nowrap}.common-btn.on{background:var(--ink);color:#fff}.common-btn.on .cb-sub{color:#cfcfcf}.common-btn.coach:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--accent)}.cb-sub>span+.cb-coach{margin-left:6px}.cb-coach{color:var(--accent);font-family:Inter Tight,system-ui,sans-serif;font-weight:700}.common-btn.on .cb-coach{color:var(--accent)}.v-touch .common{height:56px;border-bottom:1px solid var(--line)}.more-btn .cb-main{font-size:16px}.size-panel{position:absolute;left:0;right:0;bottom:100%;z-index:6;display:flex;flex-direction:column;gap:14px;padding:14px 16px 16px;background:var(--bg);border-top:var(--rule);box-shadow:0 -10px 24px #11111114;animation:rise .18s var(--ease) both}.sp-head{display:flex;align-items:baseline;gap:12px}.sp-amount{font-size:14px;color:var(--muted)}.sp-amount .num{font-size:28px;font-weight:600;color:var(--ink)}.sp-close{margin-left:auto;align-self:center;width:32px;height:32px;font-size:20px}.sp-slider{display:flex;align-items:center;gap:12px}.sp-slider input{flex:1;min-width:0;height:32px;accent-color:var(--ink)}.sp-step{flex:none;width:40px;height:40px;border:1.5px solid var(--ink);border-radius:50%;font-size:20px;line-height:1}.sp-chips{display:flex;flex-wrap:wrap;gap:8px}.chip-size{padding:6px 14px;border:1.5px solid var(--ink);border-radius:999px;font-size:14px}.chip-size.on{background:var(--ink);color:#fff}.type-row{height:72px;flex:none;display:flex;align-items:stretch;border-bottom:1px solid var(--line)}.type-row .common{flex:0 1 380px;min-width:0;border-right:1px solid var(--line)}.type-box{flex:1 0 240px;min-width:240px;display:flex;align-items:center;gap:10px;padding:0 16px 0 20px}.prompt{font-family:var(--mono);font-size:22px;font-weight:700;color:var(--accent)}.type-box input{flex:0 0 120px;min-width:120px;border:none;border-bottom:1.5px solid var(--line);background:none;padding:6px 0;font-size:22px;font-weight:600;color:var(--ink)}.type-box input:focus{outline:none;border-bottom-color:var(--accent)}.type-box input::placeholder{color:#a8a8a8;font-size:15px;font-weight:400}.type-preview{flex:1;min-width:0;font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.type-preview .bad{color:var(--red)}.coach{grid-area:coach;border-left:var(--rule);display:flex;flex-direction:column;min-width:0;min-height:0;overflow-y:auto}.coach-label{display:flex;gap:10px}.typing{display:inline-flex;align-items:center;gap:5px;height:1em;vertical-align:middle}.typing i{width:7px;height:7px;border-radius:50%;background:var(--ink);animation:typing-dot 1.1s ease-in-out infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}@keyframes typing-dot{0%,60%,to{transform:translateY(0);opacity:.35}30%{transform:translateY(-5px);opacity:1}}.coach-body>.typing{padding:6px 0}.typing-line{display:flex;align-items:center;gap:10px}.typed-rest{visibility:hidden}.caret{display:inline-block;width:2px;height:.9em;margin:0 1px -.1em;background:var(--accent);animation:caret-blink .5s steps(1) infinite}@keyframes caret-blink{50%{opacity:0}}.headline~*{transition:opacity .25s ease-out}.headline:has(.typing-now)~*{opacity:0;transition:none}.view-play .go-pro{display:none}.coach-sheet{display:contents}.peek-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.peek-open{margin-left:auto;font-size:12px}@keyframes sheet-up{0%{transform:translateY(24px);opacity:0}}.coach-head{display:flex;align-items:center;justify-content:space-between;padding:0 24px;min-height:52px;border-bottom:1px solid var(--line)}.coach-body{flex:1;padding:24px;display:flex;flex-direction:column;gap:18px}.headline{margin:0;font-size:21px;font-weight:600;letter-spacing:-.02em;line-height:1.2}.why{margin:0;font-size:15px;line-height:1.55}.grade-row{display:flex;align-items:center;gap:10px;font-size:14px}.grade{font-size:13px;font-weight:600;padding:2px 10px;white-space:nowrap;display:inline-block}.grade.small{font-size:12px;padding:1px 8px}.g-best{background:var(--ink);color:#fff;border:1.5px solid var(--ink)}.g-good{background:var(--line);border:1.5px solid var(--line)}.g-inaccuracy{border:1.5px solid var(--ink)}.g-mistake{color:var(--red);border:1.5px solid var(--red)}.g-blunder{background:var(--red);color:#fff;border:1.5px solid var(--red)}.freq-bar{display:flex;gap:2px;height:8px}.seg.agg{background:var(--ink)}.seg.passive{background:#a3a3a3}.seg.fold{background:var(--line)}.seg.chosen{box-shadow:inset 0 0 0 2px var(--accent)}.freq-labels{display:flex;flex-wrap:wrap;gap:2px 14px;margin-top:6px;font-size:12px;color:var(--muted)}.freq-labels .strong,.freq-labels b{color:var(--ink)}.freq-rows{margin-top:8px;font-size:13px}.freq-row{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:8px;align-items:center;padding:5px 0;border-top:1px solid var(--hair)}.freq-row:first-child{border-top:none}.freq-name{min-width:0}.freq-row [class^=sw-]{width:10px;height:10px}.sw-agg{background:var(--ink)}.sw-passive{background:#a3a3a3}.sw-fold{background:var(--line)}.you-tag{display:inline-block;margin-left:6px;padding:0 5px;border:1px solid var(--accent);color:var(--accent);font-size:11px;font-weight:600;line-height:1.4;vertical-align:1px}.more-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px}.more-body{padding-top:12px;display:flex;flex-direction:column;gap:14px}.kv{margin:0;display:flex;flex-direction:column;font-size:13px}.kv div{display:flex;justify-content:space-between;gap:12px;padding:5px 0}.kv dt{color:var(--muted)}.kv dd{margin:0;text-align:right}.rows{display:flex;flex-direction:column;font-size:14px}.row{display:grid;grid-template-columns:70px 1fr auto;align-items:center;padding:9px 0;border-top:1px solid var(--line)}.row:last-child{border-bottom:1px solid var(--line)}.push{margin-top:auto}.hand-log{position:relative;border-top:1px solid var(--line);padding:12px 24px 16px;display:flex;flex-direction:column;gap:6px;font-size:13px}.log-toggle{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;justify-content:flex-end;align-items:flex-start;padding:12px 24px}.hand-log .log-street{padding-right:20px;pointer-events:none}.log-street{display:grid;grid-template-columns:96px 1fr;gap:10px;align-items:baseline}.log-name{color:var(--muted);white-space:nowrap}.log-street.later .log-name{opacity:.45}.log-items{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.log-street{min-height:1.5em}.log-name .card-text{font-size:12px;gap:2px}.big-stat{display:flex;align-items:baseline;gap:12px}.big-stat .num{font-size:48px;font-weight:500}.stack-btns{display:flex;flex-direction:column;gap:10px;margin-top:auto}.range-grid{display:grid;grid-template-columns:repeat(13,minmax(0,1fr));gap:1px}.cell{aspect-ratio:1;display:grid;place-items:center;font-family:var(--mono);font-size:8px;font-weight:700;color:var(--ink)}.cell.dark{color:#fff}.cell.mine{outline:2px solid var(--accent);outline-offset:-1px;position:relative;z-index:1}.legend{display:flex;gap:14px;margin-top:8px;font-size:12px}.sw{display:inline-block;width:10px;height:10px;vertical-align:-1px;margin-right:4px}.sw.ink{background:var(--ink)}.sw.mid{background:var(--mid)}.sw.blank{background:var(--blank);border:1px solid var(--line)}.term{position:relative;display:inline-block}.term-name{padding:0;font:inherit;color:inherit;text-decoration:underline dotted;text-underline-offset:3px;cursor:help}.term-tip{position:absolute;left:0;top:calc(100% + 6px);z-index:30;width:max-content;max-width:240px;padding:8px 10px;background:var(--ink);color:#fff;font-size:13px;font-weight:400;line-height:1.4;letter-spacing:0;text-align:left;white-space:normal;animation:rise .15s var(--ease) both}.card-head .term-tip{left:auto;right:0}.range-open{display:block;width:100%;padding:0;text-align:left;cursor:zoom-in}.range-full{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:center;padding:16px;background:#1116;animation:fade .2s both}.range-full-box{width:min(680px,100%,calc(100svh - 140px));padding:20px;background:var(--bg);border:var(--rule)}.range-full-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.range-full-head h2{margin:0;font-size:18px;font-weight:600}.range-full-head .icon-btn{width:32px;height:32px;font-size:22px;color:var(--muted)}.range-full .cell{font-size:clamp(9px,1.9vmin,14px)}.range-full .legend{font-size:14px;margin-top:12px}.review{flex:1;display:flex;flex-direction:column}.kpis{display:flex;flex-wrap:wrap;border-bottom:var(--rule)}.kpi{flex:1 1 120px;padding:18px 24px;border-right:1px solid var(--line)}.kpi.divider{border-right:var(--rule)}.kpi.leak{flex:2 1 340px;border-right:none;display:flex;align-items:center;gap:20px;justify-content:space-between}.kpi-row{display:flex;align-items:flex-end;gap:12px}.kpi-value{font-size:34px;font-weight:500}.leak-name{font-size:20px;font-weight:600;margin-top:4px}.review-main{flex:1;display:grid;grid-template-columns:minmax(0,1fr) 340px}.hand-list{min-width:0}.filters{display:flex;align-items:center;gap:6px;padding:14px 24px;flex-wrap:wrap}.chip{border:var(--rule);padding:6px 12px;font-size:13px}.chip.on{background:var(--ink);color:#fff}.search{margin-left:auto;display:flex;align-items:center;gap:8px;border-bottom:var(--rule);padding:4px 0}.search input{border:none;outline:none;font:inherit;font-size:13px;width:140px}.table-scroll{overflow-x:auto}.review table{width:100%;border-collapse:collapse;font-size:14px;min-width:520px}.review th{text-align:left;font-weight:400;font-size:12px;color:var(--muted);padding:8px;border-bottom:var(--rule)}.review td{padding:10px 8px;border-bottom:1px solid var(--hair)}.review th:first-child,.review td:first-child{padding-left:24px}.review th:last-child,.review td:last-child{padding-right:24px}.review tr{cursor:pointer}.review tr.selected{background:var(--tint);box-shadow:inset 3px 0 0 var(--ink)}.review tr.group-row td{padding-top:18px;border-bottom:var(--rule)}.review tr.group-row td>span+span{margin-left:12px}.row-btn{text-align:left}.empty{padding:24px}.detail{border-left:var(--rule);display:flex;flex-direction:column}.detail-head{display:flex;align-items:center;justify-content:space-between;padding:0 24px;min-height:52px;border-bottom:1px solid var(--line)}.detail-body{padding:20px 24px;display:flex;flex-direction:column;gap:14px}.detail-cards{font-size:20px}.streets{display:flex;flex-direction:column;font-size:14px}.street{padding:10px 0;border-top:1px solid var(--line)}.street:last-child{border-bottom:1px solid var(--line)}.street.flagged{background:var(--tint);margin:0 -8px;padding:10px 8px}.street-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.street-text{margin-top:4px;color:#333;line-height:1.45}.street-note{margin-top:6px;font-size:13px;color:var(--muted)}.drills{width:100%;max-width:860px;margin:0 auto;padding:40px 24px 56px;display:flex;flex-direction:column;gap:32px}.drills-head h1{margin:0 0 6px;font-size:40px;font-weight:600;letter-spacing:-.035em}.drills-head p{margin:0;font-size:15px}.group-label{margin:0 0 6px;font-size:13px;font-weight:600;color:var(--muted)}.drill-row{width:100%;display:grid;grid-template-columns:minmax(0,1fr) 150px 20px;gap:20px;align-items:center;padding:16px 0;border-top:1px solid var(--line);text-align:left;transition:background-color .15s}.drill-group .drill-row:last-child{border-bottom:1px solid var(--line)}.drill-row:hover{background:var(--tint)}.drill-row.rec{box-shadow:inset 3px 0 0 var(--accent);padding-left:14px}.drill-main{display:flex;flex-direction:column;gap:3px;min-width:0}.drill-title{font-size:16px;font-weight:600;display:flex;align-items:center;flex-wrap:wrap;gap:10px}.rec-tag{font-size:11px;font-weight:700;padding:1px 6px;background:var(--accent)}.drill-best{display:flex;align-items:center;gap:10px;justify-content:flex-end}.best-bar{flex:1;height:6px;background:var(--hair)}.best-bar span{display:block;height:100%;background:var(--ink)}.drill-best .num{width:28px;text-align:right}.drill-go{color:var(--muted)}.drill-resume{margin-left:auto;font-size:14px;font-weight:600;color:var(--accent);white-space:nowrap}.sheet-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50}.tour{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60}.tour-spot{position:fixed;box-shadow:0 0 0 9999px #11111180;outline:2px solid var(--accent);outline-offset:0;pointer-events:none;transition:top .35s var(--ease),left .35s var(--ease),width .35s var(--ease),height .35s var(--ease)}.tour-card{position:fixed;display:flex;flex-direction:column;gap:6px;padding:18px 20px;background:var(--bg);border:var(--rule);animation:rise .3s var(--ease) both}.tour-card h2{margin:0;font-size:22px;font-weight:600;letter-spacing:-.02em}.tour-card p{margin:0 0 8px;font-size:15px;line-height:1.45}.tour-btns{display:flex;justify-content:space-between;align-items:center}.page-loading{min-height:100dvh}.crashed{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;text-align:center}.crashed h1{margin:0;font-size:30px;letter-spacing:-.03em}.crashed p{margin:0 0 8px}.detail-right{display:flex;align-items:center;gap:14px}.replay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;flex-direction:column;background:var(--bg);outline:none;animation:fade .18s ease-out}.replay-head{display:flex;align-items:center;gap:16px;padding:0 16px 0 24px;min-height:56px;border-bottom:var(--rule)}.replay-head h2{margin:0 auto 0 0;font-size:18px}.replay-head .muted{font-weight:400}.replay-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 380px}.replay-table{position:relative;min-height:420px}.replay-side{display:flex;flex-direction:column;border-left:var(--rule);min-height:0}.replay-now{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:6px}.replay-action{margin:0 0 10px;font-size:22px;font-weight:600;letter-spacing:-.02em;line-height:1.2}.replay-note{display:flex;flex-direction:column;gap:10px;padding-top:16px;border-top:1px solid var(--line);animation:rise .25s var(--ease) both}.replay-headline{margin:0;font-size:18px;font-weight:600;line-height:1.3}.replay-showdown{margin-top:12px}.replay-showdown p{margin:4px 0}.replay-controls{display:flex;flex-direction:column;gap:12px;padding:16px 24px 20px;border-top:var(--rule)}.replay-track{position:relative;height:4px;background:var(--hair)}.replay-track span{position:absolute;left:0;top:0;bottom:0;background:var(--ink);transition:width .25s var(--ease)}.replay-track i{position:absolute;top:-4px;width:4px;height:12px;margin-left:-4px;background:var(--ink)}.replay-track i.miss{background:var(--red)}.replay-btns{display:grid;grid-template-columns:56px 1fr 56px;gap:8px}.replay-btns .btn{justify-content:center}.replay-btns .btn:disabled{opacity:.35}.replay-count{text-align:center}.scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#1116}.setup-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:16px}.setup{position:relative;width:min(460px,100%);display:flex;flex-direction:column;gap:22px;padding:28px;background:var(--bg);border:var(--rule);animation:rise-lg .3s var(--ease) both}.setup h2{margin:0;font-size:30px;font-weight:600;letter-spacing:-.03em}.setup-row{display:flex;flex-direction:column}.setup-row .section-label{float:none;margin-bottom:8px}.stake{display:flex;flex-direction:column;gap:10px}.stake-readout{height:40px;overflow:hidden}.stake-value{display:block;font-size:32px;font-weight:700;letter-spacing:-.02em;line-height:40px;animation:stake-roll .22s var(--ease) both;transition:color .15s}.stake-value.preview{color:var(--muted)}@keyframes stake-roll{0%{transform:translateY(60%);opacity:0}}.stake-track{position:relative;height:36px;margin:0 11px;cursor:pointer;touch-action:none;outline:none}.stake-rail,.stake-fill{position:absolute;left:0;top:50%;height:4px;margin-top:-2px}.stake-rail{right:0;background:var(--hair)}.stake-fill{background:var(--ink);transition:width .28s var(--ease)}.stake-tick{position:absolute;top:50%;width:2px;height:10px;margin:-5px 0 0 -1px;background:var(--line);transition:height .15s,margin .15s,background .15s}.stake-tick.in{background:var(--ink)}.stake-tick.hot{height:16px;margin-top:-8px;background:var(--ink)}.stake-ghost,.stake-thumb{position:absolute;top:50%;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;pointer-events:none}.stake-ghost{border:1.5px dashed var(--muted);background:var(--bg);animation:fade .12s ease-out}.stake-thumb{background:var(--accent);border:1.5px solid var(--ink);box-shadow:0 0 0 4px var(--bg);transition:left .28s var(--ease),transform .15s var(--ease)}.stake-track:hover .stake-thumb,.stake-track:focus-visible .stake-thumb{transform:scale(1.12)}.stake-track.dragging .stake-thumb{transform:scale(1.25);transition:left .1s ease-out,transform .15s var(--ease)}.stake-track.dragging .stake-fill{transition:none}.stake-track:focus-visible .stake-rail{outline:2px solid var(--accent);outline-offset:6px}.sheet{position:absolute;top:0;right:0;bottom:0;width:min(420px,100%);background:var(--bg);border-left:var(--rule);overflow-y:auto;outline:none;animation:slide .18s ease-out}@keyframes slide{0%{transform:translate(24px);opacity:0}}.sheet-head{display:flex;align-items:center;justify-content:space-between;padding:0 16px 0 24px;min-height:56px;border-bottom:var(--rule)}.sheet-head h2{margin:0;font-size:18px}.sheet-section{border:none;margin:0;padding:22px 24px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:4px}.sheet-section legend,.section-label{font-size:13px;color:var(--muted);padding:0;margin-bottom:8px;float:left;width:100%}.radio{display:flex;align-items:flex-start;gap:12px;padding:10px 0}.radio input{margin-top:2px}.line{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0;font-size:15px}button.line{width:100%;text-align:left}.seg-ctl{display:flex;border:var(--rule);font-size:13px}.seg-ctl button{padding:6px 12px}.seg-ctl button+button{border-left:var(--rule)}.seg-ctl button.on{background:var(--ink);color:#fff}.btn-row{display:flex;gap:10px;flex-wrap:wrap}.home{flex:1;display:flex;flex-direction:column}.band{border-bottom:1px solid var(--line)}.band:last-child{flex:1;border-bottom:none}.wrap{height:100%;max-width:1160px;margin:0 auto;border-left:1px solid var(--line);border-right:1px solid var(--line)}.band.tiles{border-bottom:var(--rule)}.home-tiles{display:grid;grid-template-columns:2fr 1fr 1fr;gap:14px;padding:18px 20px}.tile{display:flex;flex-direction:column;justify-content:space-between;gap:20px;min-height:156px;padding:18px 20px;text-align:left;border:var(--rule);background:var(--bg);transition:background .15s,transform .15s var(--ease),box-shadow .15s var(--ease)}.tile:hover{transform:translateY(-2px);box-shadow:0 3px 0 var(--ink)}.tile:active{transform:translateY(0);box-shadow:none}.tile-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.tile-icon{flex:none}.tile-foot{display:flex;justify-content:space-between;align-items:flex-end;gap:12px}.tile-text{display:flex;flex-direction:column;gap:2px;min-width:0}.tile-title{font-size:24px;font-weight:600;letter-spacing:-.02em;line-height:1.1}.tile-sub{font-size:13px;color:var(--muted)}.tile-go{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;border:var(--rule);font-size:17px;transition:background .15s,color .15s,transform .2s var(--ease)}.tile:hover .tile-go{background:var(--ink);color:#fff;transform:translate(2px)}.tile-play{background:var(--accent)}.tile-row{flex-direction:row;align-items:center;min-height:0;gap:16px;padding:14px 20px}.tile-row .tile-text{flex:1}.tile-row .tile-title{font-size:20px}.tile-stats{grid-column:2 / -1}.tile-challenge.done{background:var(--tint)}.challenge-score{display:flex;align-items:baseline;gap:6px}.challenge-score .num{font-size:28px;font-weight:700}.coach .rank{margin:4px 0 0;font-weight:600;min-height:1.4em}.tile-play .tile-title{font-size:34px}.tile-play .tile-sub{color:var(--ink)}.streak{display:flex;align-items:center;gap:8px;font-size:13px}.streak-num{font-size:34px;font-weight:700;line-height:1}.streak-text{display:flex;flex-direction:column;gap:1px}.back-home{display:flex;align-items:center;gap:6px;padding:0 4px;font-size:14px;color:var(--muted)}.back-home:hover{color:var(--ink)}button.brand{padding:0}.home-strip{display:grid;grid-template-columns:1fr 1fr 2fr}.home-strip .kpi{min-width:0;padding:22px 28px;border-right:1px solid var(--line)}.home-strip .kpi:last-child{border-right:none}.kpi-unit{font-size:15px;font-weight:400;color:var(--muted)}.home-strip .kpi-value,.kpis .kpi-value{white-space:nowrap}.leak-kpi{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:3px;text-align:left}button.leak-kpi:hover{background:var(--tint)}.lost-kpi{display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:left}.grades-card{padding:20px 28px}.grades-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.grades-bar{display:flex;gap:2px;height:14px;margin:12px 0 14px}.grades-bar span{flex-basis:0;min-width:3px}.gb-best{background:var(--ink)}.gb-good{background:var(--line)}.gb-inaccuracy{background:#fff;box-shadow:inset 0 0 0 1.5px var(--ink)}.gb-mistake{background:#fff;box-shadow:inset 0 0 0 1.5px var(--red)}.gb-blunder{background:var(--red)}.grades-legend{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.grades-legend>div{display:flex;flex-direction:column;gap:2px;min-width:0}.grades-legend i{display:inline-block;width:9px;height:9px;margin-right:6px}.grades-pct{font-size:20px;font-weight:600}.grades-trend{margin:14px 0 0}.leak-sub{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 16px}.leak-kpi .leak-name{margin:0;font-size:20px;font-weight:600;letter-spacing:-.01em;line-height:1.2}.home-grid{display:grid;grid-template-columns:1fr 1fr}.home-card{min-width:0;padding:22px 28px 26px}.home-card:nth-child(odd){border-right:1px solid var(--line)}.card-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px}.card-head h2{margin:0;font-size:13px;font-weight:600;color:var(--muted)}.card-value{font-size:20px;font-weight:600}.card-sub{font-size:13px;font-weight:400;color:var(--muted);margin-left:6px}.chart{position:relative;height:180px;margin-left:44px;cursor:crosshair;touch-action:pan-y}.chart svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible}.chart-line{fill:none;stroke:var(--ink);stroke-width:2;stroke-linejoin:round}.chart-zero{stroke:var(--line);stroke-width:1;stroke-dasharray:4 4}.chart-cross{stroke:var(--muted);stroke-width:1}.chart-dot{position:absolute;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:var(--accent);border:2px solid var(--bg);box-shadow:0 0 0 1.5px var(--ink);pointer-events:none}.chart-tip{position:absolute;top:-26px;transform:translate(-50%);padding:2px 6px;background:var(--ink);color:#fff;font-size:12px;white-space:nowrap;pointer-events:none}.chart-axis{position:absolute;left:-44px;width:38px;text-align:right;white-space:nowrap;font-size:11px;color:var(--muted);transform:translateY(-50%)}.chart-x{position:relative;height:1.4em;margin:6px 0 0 44px}.chart-x span{position:absolute;transform:translate(-50%);white-space:nowrap}.chart-x span.first{transform:none}.chart-x span.last{transform:translate(-100%)}.chart-empty{margin:0;padding:64px 0;text-align:center}.style-map{position:relative;height:200px;margin:0 0 22px 22px}.zones{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;border:1px solid var(--line)}.zones span{padding:6px 8px;font-size:12px;font-weight:600;color:#9a9a9a;border:1px dashed var(--hair)}.gto-mark,.you-mark{position:absolute;width:0;height:0}.gto-mark:before{content:"";position:absolute;left:-7px;top:-7px;width:14px;height:14px;border:2px dashed var(--ink);border-radius:50%}.you-mark:before{content:"";position:absolute;left:-7px;top:-7px;width:14px;height:14px;border-radius:50%;background:var(--accent);border:2px solid var(--bg);box-shadow:0 0 0 1.5px var(--ink)}.gto-mark span,.you-mark span{position:absolute;left:12px;top:-8px;font-size:12px;font-weight:700;white-space:nowrap}.you-mark.flip span{left:auto;right:12px}.axis-x{position:absolute;left:0;right:0;bottom:-20px;text-align:center;font-size:11px}.axis-y{position:absolute;left:-22px;top:50%;transform:translate(-50%,-50%) rotate(-90deg);font-size:11px;white-space:nowrap}.style-foot{margin:0;display:flex;flex-wrap:wrap;gap:4px 16px}.style-trend{flex-basis:100%;color:var(--ink)}.trail{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none}.trail polyline{fill:none;stroke:var(--ink);stroke-width:1.5;stroke-dasharray:3 3;opacity:.5}.trail-dot{position:absolute;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:var(--ink)}.seats{display:flex;flex-direction:column}.seat-row{display:grid;grid-template-columns:48px 1fr 64px;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid var(--hair);font-size:14px}.seat-bar{position:relative;height:10px}.seat-bar:before{content:"";position:absolute;left:50%;top:-4px;bottom:-4px;width:1px;background:var(--line)}.seat-fill{position:absolute;top:0;bottom:0}.seat-fill.pos{left:50%;background:var(--ink)}.seat-fill.neg{right:50%;background:var(--red)}.home-locked{position:relative;flex:1;display:flex;flex-direction:column;overflow:hidden}.home-blur{filter:blur(7px);opacity:.6;pointer-events:none;-webkit-user-select:none;user-select:none}.lock-card{position:absolute;left:50%;top:88px;transform:translate(-50%);width:min(440px,calc(100% - 32px));display:flex;flex-direction:column;gap:16px;padding:32px;background:var(--bg);border:var(--rule);animation:rise-lg .5s var(--ease) both}.lock-card h2{margin:0;font-size:34px;font-weight:600;letter-spacing:-.035em;line-height:1.05}.lock-card p{margin:0;font-size:16px;line-height:1.5;color:#333}.lock-card .link{align-self:center;font-size:14px}.nudge{display:flex;align-items:flex-start;gap:12px;padding:14px 16px 14px 24px;background:#fff1ea;border-bottom:1px solid var(--line);animation:rise .3s var(--ease) both}.nudge-text{flex:1;display:flex;flex-direction:column;gap:4px;font-size:14px}.nudge-text .btn{align-self:flex-start;margin-top:6px}.nudge .icon-btn{width:28px;height:28px;flex:none;font-size:18px;color:var(--muted)}.stats-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:18px 28px}.stats-head h1{margin:0;font-size:28px;letter-spacing:-.02em}.stat-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.stat-strip .kpi{min-width:0;padding:18px 28px}.stat-strip .kpi:last-child{border-right:none}.stat-strip .kpi-value{font-size:28px;white-space:nowrap}.stats-grid{display:grid;grid-template-columns:1fr 1fr}.stat-table{width:100%;border-collapse:collapse;font-size:14px}.stat-table th{text-align:left;font-weight:600;font-size:13px;color:var(--muted);padding:0 0 8px;border-bottom:var(--rule)}.stat-table td{padding:9px 0;border-bottom:1px solid var(--line)}.stat-table td.num{white-space:nowrap;padding-left:12px}.stat-table tr:last-child td{border-bottom:none}.stat-table .right{text-align:right;padding-left:12px}.stat-table .off{color:var(--accent);font-weight:600}.day-bars-plot{display:flex;align-items:flex-end;gap:2px;height:180px}.day-bars-plot>span{position:relative;flex:1;height:100%;display:flex;align-items:flex-end}.day-bars-plot>span.on i:not(.today){background:var(--muted)}.day-bars-plot.counts{padding-top:20px}.bar-n{position:absolute;left:50%;transform:translate(-50%);font-size:11px;font-weight:400;color:var(--muted);white-space:nowrap;pointer-events:none}.day-bars-plot.wide .bar-n{font-size:13px;color:var(--ink)}.bar-tip{top:auto;left:50%;z-index:2}.bar-tip.left{left:0;transform:none}.bar-tip.right{left:auto;right:0;transform:none}.day-bars-plot i{width:100%;background:var(--ink);min-height:1px}.day-bars-plot i.today{background:var(--accent)}.day-bars-plot.wide{gap:10px}.day-bars-plot.wide+.day-bars-axis{gap:10px}.day-bars-axis{display:flex;justify-content:space-between;margin-top:6px}.day-bars-axis span{flex:1;text-align:center}.day-bars-axis span:first-child:nth-last-child(2){text-align:left}.day-bars-axis span:last-child:nth-child(2){text-align:right}@media (min-width: 761px) and (max-width: 1100px) and (orientation: portrait){.play{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr) auto minmax(0,38%);grid-template-areas:"strip" "table" "actions" "coach"}.coach{border-left:none;border-top:var(--rule)}.bar-twin,.coach .nudge,.action-area>.status.hide-sm{display:none!important}.action-area>.act.show-sm{display:flex!important;flex:1 1 auto;align-self:center;min-height:56px;margin:0 16px;border:none}}@media (max-width: 1000px){.review-main{grid-template-columns:1fr}.detail{border-left:none;border-top:var(--rule)}}@media (max-width: 760px){.day-bars-plot.counts:not(.wide) .bar-n{display:none}.grades-card{padding:16px}.grades-legend{gap:4px}.grades-legend i{display:block;margin:0 0 4px}.grades-legend .small{font-size:11px;white-space:nowrap}.grades-pct{font-size:17px}.topbar{padding:0 8px 0 16px;gap:12px}.brand{font-size:0;gap:0}.hide-sm{display:none!important}.show-sm{display:flex!important}.play{grid-template-columns:1fr;grid-template-areas:"strip" "table" "coach" "actions";grid-template-rows:auto minmax(220px,1fr) auto auto}.table-area{min-height:0}.at{left:calc(50% + (var(--x) - 50) * .84%);top:calc(50% + (var(--y) - 50) * .9%)}.bet.at,.dealer.at{left:calc(50% + (var(--x) - 50) * .7%)}.card.back{width:16px;height:22px}.seat:not(.hero){gap:3px}.top-right .btn,.top-right .text-link{white-space:nowrap}.top-right{gap:6px;flex:none}.top-right .btn.small{padding:6px 9px}.top-right .text-link{padding:8px 4px}.top-right .icon-btn.boxed{width:36px;height:36px}.hand-log{padding:12px 16px 16px}.log-toggle{padding:12px 16px}.log-street{grid-template-columns:76px 1fr}.felt{top:14%;right:9%;bottom:13%;left:9%}.coach{border-left:none;border-top:1px solid var(--line);overflow:visible}.coach-peek{align-items:center;gap:10px;width:100%;min-height:44px;padding:0 16px;font-size:14px;text-align:left}.coach-sheet{display:none}.coach.open .coach-sheet{display:flex;flex-direction:column;position:fixed;left:0;right:0;bottom:0;z-index:60;max-height:82svh;overflow-y:auto;background:var(--bg);border-top:var(--rule);animation:sheet-up .25s var(--ease) both}.coach .scrim{position:fixed;z-index:59;animation:fade .2s both}.coach-head .icon-btn{width:32px;height:32px;margin-left:auto;font-size:22px;color:var(--muted)}.coach .nudge,.bar-twin{display:none!important}.coach-head{min-height:44px;padding:0 16px}.coach-body{padding:14px 16px 18px;gap:12px}.headline{font-size:19px}.why{font-size:14px}.card.lg{width:46px;height:64px;font-size:17px;padding:5px 6px}.card.md{width:44px;height:62px;font-size:16px;padding:4px 5px}.board{gap:5px}.seat-name{font-size:12px}.seat-sub{font-size:11px}.seat{padding:2px 4px}.table-meta{left:16px;top:10px;font-size:12px}.act{font-size:17px;flex-basis:30%;white-space:nowrap}.odds{white-space:normal;max-width:250px;text-align:center;line-height:1.35}.action-area{--bar-h: 176px}.action-area[data-bar=touch]{--bar-h: 117px}.v-touch .common{height:52px}.type-row{height:112px;flex-direction:column}.type-row .common{flex:none;height:52px;border-right:none;border-bottom:1px solid var(--hair)}.type-box{flex:1;padding:0 12px}.type-box input{flex:0 0 110px;font-size:20px}.type-preview{font-size:12px;white-space:normal;line-height:1.3}.cb-main{font-size:16px}.drill-strip{padding:8px 16px;gap:10px;font-size:13px}.kpi{padding:14px 16px}.kpi.leak{flex-wrap:wrap}.drills{padding:24px 16px}.drills-head h1{font-size:30px}.drill-row{grid-template-columns:minmax(0,1fr) 76px 14px;gap:12px}.filters{padding:12px 16px}.wrap{border-left:none;border-right:none}.home-tiles{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;padding:12px 16px}.tile{min-height:116px;gap:12px;padding:14px}.tile-play{grid-column:1 / -1;min-height:128px}.tile-title{font-size:20px}.tile-play .tile-title{font-size:28px}.tile-go{width:30px;height:30px;font-size:15px}.streak{font-size:12px}.streak-num{font-size:28px}.tile-sub{font-size:12px}.home-strip{grid-template-columns:1fr 1fr}.home-strip .kpi{padding:14px 16px}.home-strip .kpi:nth-child(2){border-right:none}.home-strip .leak-kpi{grid-column:1 / -1;border-top:1px solid var(--line)}.leak-kpi .leak-name{font-size:17px}.home-strip .kpi-value{font-size:22px}.stats-head{padding:14px 16px}.stat-strip{grid-template-columns:1fr 1fr}.stat-strip .kpi{padding:14px 16px}.stat-strip .kpi:nth-child(2){border-right:none}.stat-strip .kpi:nth-child(n+3){border-top:1px solid var(--line)}.stat-strip .kpi-value{font-size:22px}.stats-grid{grid-template-columns:1fr}.stats-grid .home-card{border-right:none}.stats-grid .home-card+.home-card{border-top:1px solid var(--line)}.stats-page .home-card{padding:16px}.tile-row{grid-column:1 / -1;min-height:0;padding:12px 14px}.replay-head{padding:0 8px 0 16px}.replay-body{display:flex;flex-direction:column;overflow-y:auto}.replay-table{flex:none;height:min(380px,52svh);min-height:300px}.replay-side{border-left:none;border-top:var(--rule);flex:1 0 auto}.replay-controls{order:-1;border-top:none;border-bottom:1px solid var(--line);padding:12px 16px}.replay-now{padding:16px;overflow:visible}.replay-action{font-size:19px}.kpi-unit{font-size:12px}.band.charts,.band.charts>.wrap{display:contents}.home-card{border-bottom:1px solid var(--line)}.card-pnl{order:1}.card-seat{order:2}.card-score{order:3}.card-style{order:4}.home-card{padding:18px 16px 22px}.home-card:nth-child(odd){border-right:none}.action-area>.act.show-sm{flex:1 1 auto;align-self:center;min-height:56px;margin:0 16px;border:none}}.pro-tag{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.04em;padding:0 5px;border:1px solid currentColor;margin-left:6px;vertical-align:1px;color:var(--muted)}.pro-tag.solid{background:var(--ink);color:#fff;border-color:var(--ink);margin-left:0}.btn.small{padding:7px 14px;font-size:14px}.btn.huge{padding:18px 24px;font-size:18px;gap:24px}.text-link{font-size:14px;font-weight:600;padding:8px 10px;text-decoration:none;color:inherit}a.btn,a.text-link{text-decoration:none;color:inherit}.avatar{width:36px;height:36px;border:var(--rule);display:grid;place-items:center;font-weight:700;font-size:14px;text-decoration:none;color:inherit}.error{margin:0;padding:8px 10px;border:1px solid var(--red);color:var(--red);font-size:13px}.coach-error{display:flex;align-items:center;justify-content:space-between;gap:10px}.coach-error .link{color:inherit;flex:none}.coach-error .icon-btn{width:22px;height:22px;flex:none;font-size:16px;color:inherit}.notice{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:var(--tint);margin:0}.tiny{font-size:11px}.line-ph{height:8px;background:var(--hair)}.mark.inline{display:inline-block;width:16px;height:16px;vertical-align:-3px;margin-right:4px}.locked{position:relative;border:var(--rule)}.locked-blur{padding:16px;display:flex;flex-direction:column;gap:10px;filter:blur(5px);-webkit-user-select:none;user-select:none}.locked-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:#ffffffa6;font-size:14px;font-weight:600;text-align:center;padding:0 16px}.gate{flex:1;max-width:560px;margin:0 auto;padding:96px 24px;display:flex;flex-direction:column;align-items:flex-start;gap:16px}.gate h1{margin:0;font-size:48px;letter-spacing:-.04em}.gate p{margin:0;font-size:17px;line-height:1.55}.dialog{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(520px,calc(100% - 32px));background:var(--bg);border:var(--rule)}.dialog-head{display:flex;align-items:center;justify-content:space-between;padding:0 12px 0 28px;min-height:56px;border-bottom:var(--rule)}.dialog-body{padding:28px;display:flex;flex-direction:column;gap:18px}.dialog-body h2{margin:0;font-size:36px;font-weight:600;letter-spacing:-.035em;line-height:1.02}.price-row{display:flex;align-items:baseline;gap:8px}.price{font-size:40px;font-weight:500}.feature-list{margin:0;padding:0;list-style:none;counter-reset:f;font-size:15px}.feature-list li{counter-increment:f;display:flex;gap:12px;padding:10px 0;border-top:1px solid var(--line)}.feature-list li:last-child{border-bottom:1px solid var(--line)}.feature-list li:before{content:counter(f,decimal-leading-zero);font-family:var(--mono)}.landing{min-height:100vh;min-height:100dvh}.l-nav{display:flex;align-items:center;gap:24px;padding:0 32px;min-height:64px;border-bottom:var(--rule);flex-wrap:wrap}.l-nav .brand{text-decoration:none;color:inherit;font-size:17px}.l-nav-right{margin-left:auto;display:flex;align-items:center;gap:8px}.l-hero{display:flex;flex-wrap:wrap;border-bottom:var(--rule)}.l-hero-text{flex:1 1 520px;padding:96px 48px 80px;display:flex;flex-direction:column;gap:28px}.l-hero h1{margin:0;font-size:clamp(44px,6vw,84px);font-weight:600;letter-spacing:-.045em;line-height:.95}.l-hero-text p{margin:0;font-size:20px;line-height:1.5;max-width:460px}.l-cta{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.l-hero-art{flex:1 1 520px;border-left:var(--rule);display:flex;min-height:520px}.l-table{position:relative;flex:1;min-width:0}.l-felt{position:absolute;top:14%;right:10%;bottom:18%;left:10%;border-radius:999px;border:var(--rule)}.l-board{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);display:flex;gap:6px}.l-hole{position:absolute;left:50%;top:84%;transform:translate(-50%,-50%);display:flex;gap:4px;background:var(--bg);padding:0 8px}.l-coach{flex:0 0 260px;border-left:var(--rule);padding:28px 24px;display:flex;flex-direction:column;gap:16px}.l-coach p{margin:0;line-height:1.5}.l-headline{font-size:26px;font-weight:600;letter-spacing:-.03em}.l-inside{border-bottom:var(--rule)}.l-inside h2,.l-faq h2{margin:0;font-size:40px;font-weight:600;letter-spacing:-.035em}.l-inside>h2{padding:56px 48px 28px}.l-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));border-top:var(--rule)}.l-grid article{padding:32px 36px 40px;border-right:var(--rule);display:flex;flex-direction:column;gap:20px}.l-grid article:last-child{border-right:none}.l-grid h3{margin:0;font-size:22px;font-weight:600;display:flex;align-items:center;gap:10px}.l-grid p{margin:-14px 0 0;font-size:15px;line-height:1.5;color:#333}.l-shot{background:var(--tint);padding:24px;min-height:260px;display:flex;align-items:center}.l-panel{width:100%;background:var(--bg);border:var(--rule);padding:16px;display:flex;flex-direction:column;gap:12px}.l-panel.flush{padding:0;gap:0}.l-mini-head{font-size:20px;font-weight:600;letter-spacing:-.02em;line-height:1.1}.l-rec{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:var(--rule);gap:10px}.l-start{align-self:stretch;display:flex;align-items:center;margin:-12px -14px -12px 0;padding:0 14px;background:var(--accent);font-weight:600;font-size:13px}.l-row{display:flex;justify-content:space-between;align-items:center;padding:9px 14px;border-bottom:1px solid var(--hair);font-size:13px}.l-row:last-child{border-bottom:none}.l-row.col{flex-direction:column;align-items:flex-start}.l-score{font-size:28px;font-weight:500;line-height:1.1}.l-chart-head{display:flex;justify-content:space-between;font-size:12px}.l-panel .range-grid .cell{font-size:0}.l-panel .legend{font-size:11px}.l-why{display:flex;flex-wrap:wrap;gap:32px 64px;padding:64px 48px;border-bottom:var(--rule)}.l-why h2{flex:1 1 260px;margin:0;font-size:40px;font-weight:600;letter-spacing:-.035em;line-height:1}.l-why>div{flex:2 1 520px;display:flex;flex-direction:column;gap:28px}.l-why p{margin:0;font-size:22px;line-height:1.45;max-width:680px}.l-points{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));border-top:var(--rule)}.l-points span{padding:14px 0;font-size:17px;font-weight:600}.l-pricing{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));border-bottom:var(--rule)}.l-plan{padding:48px;display:flex;flex-direction:column;gap:18px}.l-plan:first-child{border-right:var(--rule)}.l-plan.pro{background:#fff1ea}.l-plan-head{display:flex;align-items:baseline;justify-content:space-between;font-size:20px;font-weight:600}.l-price{font-size:36px;font-weight:500}.l-plan ul{margin:0;padding:0;list-style:none;font-size:15px}.l-plan li{padding:10px 0;border-top:1px solid var(--line)}.l-plan li:last-child{border-bottom:1px solid var(--line)}.l-plan .btn{margin-top:auto}.l-faq{padding:48px;border-bottom:var(--rule);display:flex;flex-wrap:wrap;gap:32px}.l-faq h2{flex:1 1 260px;font-size:32px}.l-faq>div{flex:2 1 520px}.l-faq details{border-top:1px solid var(--line);padding:16px 0}.l-faq details:last-child{border-bottom:1px solid var(--line)}.l-faq summary{font-size:17px;font-weight:600;cursor:pointer}.l-faq p{margin:10px 0 0;font-size:15px;line-height:1.55;color:#333}.l-footer{display:flex;align-items:center;gap:24px;padding:28px 48px;font-size:13px;color:var(--muted);flex-wrap:wrap}.l-footer a{color:var(--muted)}.small-brand{font-size:13px;color:var(--ink)}.l-line{display:block;overflow:hidden;padding-bottom:.06em;margin-bottom:-.06em}.l-line>span{display:block;animation:line-up .7s var(--ease) both}@keyframes line-up{0%{transform:translateY(105%)}}.l-in{animation:rise-lg .6s var(--ease) both}@keyframes rise-lg{0%{opacity:0;transform:translateY(14px)}}.l-hero-art .l-felt{animation:fade .8s ease-out .15s both}.l-hole .card{animation:deal-in .5s var(--ease) both;--dy: -160}.l-board .card{animation:flip .5s var(--ease) both}.l-coach>*{animation:rise-lg .5s var(--ease) both}.l-coach>:nth-child(1){animation-delay:1.35s}.l-coach>:nth-child(2){animation-delay:1.45s}.l-coach>:nth-child(3){animation-delay:1.55s}.l-coach>:nth-child(4){animation-delay:1.75s}.l-coach .freq-bar{animation:grow .8s var(--ease) 1.65s both}@keyframes grow{0%{clip-path:inset(0 100% 0 0)}}.l-bet{position:absolute;left:50%;top:68%;transform:translate(-50%,-50%);animation:bet-out .6s var(--ease) 2.2s both}@keyframes bet-out{0%{top:84%;opacity:0}}.btn>span[aria-hidden=true]{transition:transform .2s var(--ease)}.btn:hover>span[aria-hidden=true]{transform:translate(4px)}.l-shot .l-panel{transition:transform .3s var(--ease),box-shadow .3s var(--ease)}.l-grid article:hover .l-panel{transform:translateY(-4px);box-shadow:0 6px 0 var(--ink)}.reveal-ready [data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .6s var(--ease),transform .6s var(--ease)}.reveal-ready [data-reveal].in{opacity:1;transform:none}.l-grid article:nth-child(2){transition-delay:.08s}.l-grid article:nth-child(3){transition-delay:.16s}.l-grid article:nth-child(4){transition-delay:.24s}.l-plan.pro{transition-delay:.1s}.l-grid article.in .freq-bar{animation:grow .8s var(--ease) .35s both}.l-grid article.in svg path{stroke-dasharray:120;animation:draw 1s var(--ease) .4s both}@keyframes draw{0%{stroke-dashoffset:120}}@media (prefers-reduced-motion: reduce){.landing *,.landing [data-reveal]{animation:none!important;transition:none!important;opacity:1!important;transform:none!important}.l-bet,.l-board,.l-hole{transform:translate(-50%,-50%)!important}}.legal{flex:1;width:100%;max-width:680px;margin:0 auto;padding:56px 24px 32px;font-size:15px;line-height:1.6}.legal h1{margin:0 0 4px;font-size:34px;font-weight:600;letter-spacing:-.03em}.legal h2{margin:32px 0 8px;font-size:18px;font-weight:600}.legal ul{padding-left:20px}.legal li{margin:6px 0}.auth-page{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.auth-main{flex:1;display:flex;flex-wrap:wrap}.auth-form{flex:1 1 480px;max-width:448px;margin:0 auto;padding:64px 24px;display:flex;flex-direction:column;gap:18px}.auth-form h1{margin:8px 0 0;font-size:34px;font-weight:600;letter-spacing:-.03em}.seg-ctl.wide{display:grid;grid-template-columns:1fr 1fr;font-size:15px;font-weight:600}.seg-ctl.wide button{padding:12px}.wide-btn{justify-content:center;min-height:52px}.divider{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--muted)}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--line)}.auth-fields{display:flex;flex-direction:column;gap:14px}.auth-fields label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted)}.auth-fields input{border:var(--rule);padding:12px;font:inherit;font-size:15px;color:var(--ink)}.label-row{display:flex;justify-content:space-between;align-items:center}.label-row .text-link{padding:0;font-weight:400;font-size:13px}.form-msg{margin:0;font-size:14px}.auth-aside{flex:1 1 420px;border-left:var(--rule);background:var(--tint);padding:64px 48px;display:flex;flex-direction:column;justify-content:center;gap:20px}.auth-aside ul{margin:0;padding:0;list-style:none;font-size:17px;max-width:420px}.auth-aside li{padding:14px 0;border-top:1px solid var(--line)}.auth-aside li:last-child{border-bottom:1px solid var(--line)}.account{flex:1;width:100%;max-width:760px;margin:0 auto;padding:48px 24px;display:flex;flex-direction:column;gap:32px}.account h1{margin:0;font-size:40px;font-weight:600;letter-spacing:-.035em}.account section{display:flex;flex-direction:column;gap:8px}.account section.btn-row{flex-direction:row}.plan-box{border:var(--rule);padding:24px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.plan-name{font-size:22px;font-weight:600;display:flex;align-items:center;gap:10px;margin-bottom:4px}.kv.big{font-size:15px}.kv.big div{padding:14px 0;border-top:1px solid var(--line)}.kv.big div:last-child{border-bottom:1px solid var(--line)}.account-loading{padding:48px}@media (max-width: 760px){.l-nav{padding:0 8px 0 16px;gap:12px;flex-wrap:nowrap}.l-nav .brand{gap:8px;white-space:nowrap}.l-nav-right{gap:4px}.l-hero-text{padding:48px 16px}.l-hero-art{border-left:none;border-top:var(--rule);min-height:380px}.l-coach{flex-basis:180px;padding:20px 16px}.l-inside>h2,.l-why,.l-plan,.l-faq{padding-left:16px;padding-right:16px}.l-grid article{border-right:none;border-bottom:var(--rule);padding:24px 16px 32px}.l-plan:first-child{border-right:none;border-bottom:var(--rule)}.auth-aside{border-left:none;border-top:var(--rule);padding:32px 16px}.gate{padding:56px 16px}.gate h1{font-size:36px}.top-right{gap:8px}.top-right .btn.small{padding:6px 10px}}.story{display:flex;flex-direction:column;gap:8px;padding-bottom:16px;border-bottom:1px solid var(--line);font-size:14px;line-height:1.45}.story-lead{margin:0}.story-line{display:grid;grid-template-columns:56px 1fr;gap:8px}.story-line .card-text{margin-right:4px}.grade-row.flash .grade{animation:grade-in .45s var(--ease) both}@keyframes grade-in{0%{transform:scale(1.5);opacity:0}60%{transform:scale(.95);opacity:1}}.misses{display:flex;flex-direction:column;border-top:1px solid var(--line)}.miss{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:start;padding:10px 0;border-bottom:1px solid var(--hair);font-size:13px;line-height:1.45}.prev{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding-bottom:14px;border-bottom:1px solid var(--line)}.prev .link{align-self:auto}
