:root{color-scheme:light;--ink:#2b4134;--muted:#657365;--accent:#4f7155;--line:#dce3d6;--paper:#fafaf5;--soft:#edf1e5;--warm:#8b5d3b;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none;color:var(--ink);background:var(--paper);font-size:15px;-webkit-tap-highlight-color:transparent}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;color:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{touch-action:manipulation}button:disabled{opacity:.48;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #73967a;outline-offset:4px}button:hover:not(:disabled){filter:brightness(.98)}button:active:not(:disabled){transform:translateY(1px)}p,h1,h2,h3{margin:0}p{line-height:1.6}h1{font-size:clamp(32px,4vw,44px);font-weight:530;line-height:1.14;letter-spacing:-1.6px}h2{font-size:23px;line-height:1.2;letter-spacing:-.7px;font-weight:560}h3{font-size:15px;font-weight:600}small{line-height:1.4}b,strong{font-weight:600}button{border:0;background:none}a{color:var(--accent)}.icon{width:20px;height:20px;flex:none;display:inline-block;vertical-align:middle}.icon-button{width:44px;height:44px;flex:none;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:transparent}.icon-button:hover{background:var(--soft)}.primary,.secondary,.small-primary{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:54px;padding:13px 18px;border-radius:13px;background:var(--accent);color:#fffef8;font-weight:560;font-size:15px}.primary>.icon{width:18px}.secondary{border:1px solid var(--line);background:var(--paper);color:var(--ink)}.small-primary{min-height:44px;width:auto;padding:11px 16px;font-size:13px}.text-button{min-height:44px;display:flex;align-items:center;justify-content:center;gap:8px;width:100%;color:var(--muted);font-size:13px}.text-link{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:0;color:var(--accent);font-size:14px;font-weight:560}.text-link .icon{width:17px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.eyebrow{font-size:10px;letter-spacing:1.5px;font-weight:620;color:var(--muted);margin-bottom:12px}.pill{display:inline-flex;align-items:center;min-height:25px;padding:5px 9px;border-radius:7px;background:#e8eedf;color:#48603e;font-size:10px;font-weight:570;white-space:nowrap;line-height:1.2}.pill.warm{background:#f2e8d9;color:#825c39}.muted-note{font-size:12px;line-height:1.65;color:var(--muted);margin-top:14px}.lead{font-size:15px;color:var(--muted);margin-top:17px}.narrow{max-width:520px}.page-footnote{color:var(--muted);font-size:11px;line-height:1.8;text-align:center;margin:27px 0 10px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:28px 0 14px}.section-heading>span{color:var(--muted);font-size:11px}.section-heading h2{font-size:19px}.red{color:#b43d46!important}.wordmark{display:flex;align-items:center;gap:9px;font-size:21px;letter-spacing:-.7px;font-weight:560}.wordmark>span{font-size:25px;line-height:1}.app-shell{min-height:100dvh}.workspace{width:100%;max-width:1160px;margin:auto;min-height:100dvh}.app-header{height:76px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 38px}.page-label{font-size:13px;color:var(--muted);margin-right:auto}.page-label:empty{display:none}.page-content{padding:18px 38px 40px;outline:none}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:10px 0 29px}.page-heading>.pill{margin-top:5px}.desktop-nav{display:none}.bottom-nav{display:flex;align-items:center;justify-content:center;background:var(--paper);border-top:1px solid var(--line);height:76px;padding-bottom:env(safe-area-inset-bottom);position:sticky;bottom:0;z-index:10}.bottom-nav>button{height:100%;display:flex;align-items:center;justify-content:center;gap:9px;width:50%;color:#7b8476;font-size:12px;font-weight:550}.bottom-nav>button.active{color:var(--accent)}.bottom-nav .icon{width:19px}.resume-card{border:1px solid var(--line);background:#f0f3e9;border-radius:15px;padding:15px 18px;display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px}.resume-card>div{display:flex;align-items:center;gap:12px}.resume-card b{font-size:13px;display:block}.resume-card small{color:var(--muted);font-size:11px;display:block;margin-top:4px}.resume-card .small-primary{flex:none}.home-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:24px}.recommendation{border:1px solid #d6dfcb;border-radius:22px;background:linear-gradient(140deg,#edf2e2,#e5ecdb);padding:25px 28px 9px;overflow:hidden;position:relative}.rec-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.rec-top .eyebrow{margin:0}.rec-count{font-size:19px;font-weight:600;letter-spacing:-.5px}.rec-count small{font-size:11px;color:var(--muted);font-weight:400;letter-spacing:0}.recommendation h2{font-size:30px;letter-spacing:-1px}.recommendation>p{font-size:14px;color:#5e6e55;max-width:350px;margin:12px 0}.recommend-meta{display:flex;align-items:center;gap:10px;color:#64745b;font-size:11px;margin:22px 0}.recommend-meta i{width:3px;height:3px;border-radius:50%;background:#8a9a7a}.practice-art{height:183px;position:relative;margin-bottom:16px;display:flex;justify-content:center;align-items:center}.art-orbit{position:absolute;width:230px;height:110px;border:1px solid #b8c6a866;border-radius:50%;transform:rotate(-18deg);box-shadow:0 0 0 20px #b9c7a716,0 0 0 40px #b9c7a70b}.art-cards{display:flex;gap:5px;transform:rotate(7deg)}.art-cards .card{width:69px;height:99px;box-shadow:0 2px 0 #c9ceb9,3px 12px 16px #3c573727}.art-cards .card:first-child{transform:rotate(-19deg) translateY(3px)}.art-cards .card:nth-child(2){transform:rotate(7deg);margin-left:-7px}.art-cards .card-corner b{font-size:31px}.art-cards .card>i{font-size:43px}.practice-art>.chips{position:absolute;bottom:35px;left:23%;transform:scale(1.2)}.practice-art>.chips:last-child{left:auto;right:22%;bottom:30px;transform:scale(1.2)}.home-side{display:flex;flex-direction:column;gap:22px}.intro-card,.last-session{background:#f4f4ec;border:1px solid #e5e7db;border-radius:22px;padding:28px;flex:1}.intro-card h2{font-size:26px;line-height:1.25;margin:22px 0 14px}.intro-card p{font-size:14px;color:var(--muted);max-width:340px;margin-bottom:15px}.line-symbol{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:1px solid #d8dfcb;color:#65805c}.line-symbol .icon{width:23px;height:23px}.quiet-card{display:flex;align-items:flex-start;gap:11px;padding:10px 12px}.quiet-card b{font-size:13px}.quiet-card p{font-size:12px;color:var(--muted);margin-top:7px}.tiny-dot{margin-top:5px;width:7px;height:7px;background:#8da582;border-radius:50%;flex:none}.last-session h2{margin:21px 0 11px}.last-session>p:not(.eyebrow){font-size:13px;color:var(--muted)}.mini-metrics{display:flex;gap:24px;margin:30px 0 16px}.mini-metrics span{font-size:11px;color:var(--muted)}.mini-metrics b{display:block;font-size:29px;color:var(--ink);font-weight:530;margin-bottom:6px}.welcome{max-width:480px;margin:15px auto 0}.welcome-mark{display:flex;flex-direction:column;gap:15px;font-size:47px;color:var(--accent);margin:15px 0 33px}.welcome-mark>span{font-size:12px;letter-spacing:.3px;color:var(--muted)}.welcome h1{font-size:37px}.experience-options{display:flex;flex-direction:column;gap:12px;margin:30px 0 24px}.experience-choice{border:1px solid var(--line);border-radius:15px;padding:20px;display:flex;align-items:center;gap:15px;text-align:left;min-height:90px}.experience-choice.selected{background:var(--soft);border-color:#819875}.experience-choice b{font-size:15px}.experience-choice small{font-size:12px;color:var(--muted);display:block;margin-top:6px}.radio{width:18px;height:18px;border:1px solid #b7c0b0;border-radius:50%;flex:none}.radio.checked{border:5px solid var(--accent);background:var(--paper)}.welcome>.muted-note{text-align:center}.practice-explainer{margin:29px 0 10px;border-top:1px solid var(--line);padding-top:20px;font-size:12px;color:var(--muted)}.practice-explainer b{color:var(--ink);font-weight:550}.practice-explainer p{margin-top:5px}
/* The selected Sage Seated table, with a separate front apron and upholstered rail. */
.session-shell{min-height:100dvh;background:var(--paper)}.session-content{max-width:1160px;margin:auto}.session-header{height:58px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 12px}.session-header>span{font-size:12px;color:var(--muted);text-align:center}.session-header>span b{font-weight:650;color:var(--ink)}.session-header small{font-size:9px;display:block;margin-top:3px}.sample-tag{height:44px;min-width:44px;font-size:10px;color:var(--muted);padding:10px 5px}.progress-track{height:2px;background:var(--line);border-radius:2px;margin:0 23px;overflow:hidden}.progress-track>i{display:block;height:100%;background:var(--accent)}.context-line{height:44px;margin:auto;display:flex;justify-content:center;align-items:center;gap:8px;color:var(--muted);width:100%;padding:0 15px}.context-line>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.context-line .icon{width:15px;height:15px}.context-line .icon:last-child{width:11px;height:11px}.table-layout{display:block}.table-column{max-width:460px;margin:0 auto}.poker-scene{height:clamp(430px,calc(100dvh - 218px),580px);min-width:0;position:relative;isolation:isolate;--board-width:clamp(44px,13.7vw,54px);--board-height:clamp(61px,9.6dvh,77px);--hero-width:clamp(64px,18.7vw,76px);--hero-height:clamp(85px,12.6dvh,105px)}.table-art{position:absolute;inset:0;width:100%;height:100%;filter:drop-shadow(0 10px 9px #35554022);pointer-events:none}.seat{position:absolute;transform:translateX(-50%);display:flex;align-items:center;flex-direction:column;width:80px;z-index:4}.seat-0{left:11%;top:64.4%}.seat-1{left:20%;top:20.7%}.seat-2{left:50%;top:4.8%}.seat-3{left:80%;top:20.7%}.seat-4{left:89%;top:64.4%}.avatar-ring{width:38px;height:38px;border-radius:50%;border:3px solid var(--paper);overflow:hidden;background:#d5ddd2;box-shadow:0 3px 8px #16232614}.avatar-ring img{display:block;width:100%;height:100%}.folded .avatar-ring{width:33px;height:33px;opacity:.72;filter:grayscale(1)}.seat-2 .avatar-ring{width:30px;height:30px}.nameplate{position:relative;z-index:1;display:flex;align-items:center;flex-direction:column;margin-top:-3px;background:#f7faee;border:1px solid #d0d7c8;border-radius:7px;padding:4px 8px;color:#294335;min-width:34px}.nameplate b{font-size:10px;font-weight:550}.in-hand .nameplate{min-width:77px;box-shadow:0 2px 0 #d2dbc9,1px 7px 9px #31533d27}.nameplate strong{font-size:14px;font-weight:600;margin-top:2px;white-space:nowrap}.nameplate small{font-size:9px;font-weight:450}.folded .nameplate{background:var(--paper);color:var(--muted);padding:3px 6px}.card-backs{position:absolute;top:17px;left:47px;display:flex;transform:rotate(10deg) perspective(400px) rotateX(14deg);z-index:0}.card-backs i{width:22px;height:31px;background:repeating-linear-gradient(45deg,#93ad9b 0 2px,#acbeaf 2px 3px);border:2px solid #fffced;border-radius:3px;box-shadow:0 2px 3px #14342333}.card-backs i+i{margin-left:-12px;transform:rotate(8deg)}.dealer{position:absolute;top:68px;left:9px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border:1px solid #d5d4c0;background:#f8f7ec;border-radius:50%;font-size:10px;font-weight:650;color:#39463d;box-shadow:0 3px 0 #afbaa2,1px 7px 4px #31543a44;transform:scaleY(.8)}.folded .dealer{top:51px;left:35px}.pot-display{position:absolute;left:50%;top:35.7%;transform:translateX(-50%);text-align:center;z-index:2}.pot-chips{height:27px;display:flex;justify-content:center;align-items:flex-end;margin-bottom:6px;transform:scaleY(.8);transform-origin:bottom}.chips{position:relative;width:22px;height:26px;display:inline-block;flex:none;--chip:#769c8d;--edge:#456e60}.chips.red{--chip:#bc876c;--edge:#925a43}.chips.cream{--chip:#e3d5b1;--edge:#ac9c72}.chips i{position:absolute;left:0;width:22px;height:9px;border-radius:50%;background:repeating-conic-gradient(from 0deg,var(--chip) 0deg 35deg,#efe8ce 35deg 50deg,var(--chip) 50deg 80deg,#efe8ce 80deg 95deg);border:1px solid var(--edge);box-shadow:0 2px 0 var(--edge),inset 0 0 0 1px #f2e6cb77}.chips i:last-child:after{content:"";position:absolute;inset:2px 4px;border:1px solid #e9e4c9aa;border-radius:50%}.pot-chips .chips:nth-child(1){margin-right:-5px;transform:rotate(-5deg)}.pot-chips .chips:nth-child(3){margin-left:-5px;transform:rotate(9deg)}.pot-value{display:flex;align-items:baseline;gap:6px;white-space:nowrap;color:#20392a}.pot-value>span{font-size:11px;color:#38523c}.pot-value>strong{font-size:23px;font-weight:630;letter-spacing:-.5px;line-height:26px}.pot-value small{font-size:11px;font-weight:450;letter-spacing:0}.villain-bet{position:absolute;top:44.5%;right:19%;display:flex;align-items:center;gap:5px;z-index:3}.villain-bet>span:last-child{display:flex;flex-direction:column;gap:2px;color:#20392a}.villain-bet b{font-size:11px;white-space:nowrap}.villain-bet small{font-size:9px;color:#294332}.card{position:relative;display:block;flex:none;width:var(--board-width,54px);height:var(--board-height,77px);background:linear-gradient(120deg,#fffefa,#f6f5ef);color:#25362e;border:1px solid #fffdf3;border-radius:6px;box-shadow:0 2px 0 #c0c5b0,0 8px 8px #315a3d40;overflow:hidden}.card-corner{position:absolute;top:5px;left:6px;line-height:1;display:flex;flex-direction:column;align-items:center}.card-corner b{font-size:25px;font-weight:660;letter-spacing:-1px}.card-corner>span{font-size:12px;margin-top:2px}.card>i{position:absolute;right:4px;bottom:4px;font-size:33px;font-style:normal;line-height:1}.board-cards{position:absolute;top:53%;left:50%;display:flex;gap:6px;transform:translateX(-50%) perspective(430px) rotateX(22deg);transform-origin:50% 100%;z-index:3}.board-5{--board-width:clamp(39px,11.5vw,47px);gap:5px}.board-4{--board-width:clamp(44px,12.4vw,51px)}.hero-cards{position:absolute;left:50%;top:76%;display:flex;gap:5px;transform:translateX(-50%);z-index:6}.hero-cards .card{width:var(--hero-width);height:var(--hero-height);border-radius:7px;box-shadow:0 2px 0 #e8e5d6,0 4px 0 #b4bea6,2px 14px 14px #31533d40}.hero-cards .card:first-child{transform:rotate(-13deg)}.hero-cards .card:last-child{transform:rotate(8deg);margin-left:-9px}.hero-cards .card-corner b{font-size:32px}.hero-cards .card-corner>span{font-size:15px}.hero-cards .card>i{font-size:44px;right:6px;bottom:5px}.hero-stack{position:absolute;left:17%;top:81%;display:flex;z-index:3}.hero-stack .chips{filter:drop-shadow(2px 5px 2px #31543a44)}.hero-stack .chips+.chips{margin-left:-7px}.hero-player{position:absolute;top:94%;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:8px;padding:0 12px;min-width:172px;height:38px;z-index:7;border:1px solid #cbd4c7;background:#f7faee;border-radius:8px;color:#294335;box-shadow:0 3px 0 #d9e1d1,0 9px 13px #31563e25;white-space:nowrap}.hero-player b{font-size:11px;font-weight:550}.hero-player b>span{color:#829170;margin:0 2px}.hero-player strong{font-size:14px;font-weight:600}.hero-player small{font-size:9px;font-weight:450}.turn-dot{width:5px;height:5px;border-radius:50%;background:var(--accent)}.hero-dealer{font-size:9px}.felt-wordmark{position:absolute;top:56%;left:50%;transform:translateX(-50%);color:#3b624647;font-size:20px;letter-spacing:-.7px;user-select:none}.table-bottom{padding:24px 20px max(20px,env(safe-area-inset-bottom));position:relative}.actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.actions.two-actions{grid-template-columns:repeat(2,1fr)}.action-button{height:66px;border:1px solid var(--line);border-radius:13px;background:#fffefa;color:var(--ink);box-shadow:0 2px 4px #1a273105;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;font-weight:550;font-size:15px}.action-button strong{font-size:13px;line-height:15px;font-weight:550}.action-button small{font-size:10px;font-weight:450}.reveal-action{flex-direction:row;gap:7px}.reveal-action>.icon{width:14px;height:14px;color:var(--muted)}.sizing-panel{border-top:1px solid var(--line);padding-top:6px}.sizing-panel>header{display:flex;align-items:center;gap:3px;height:52px;margin-left:-10px}.sizing-panel h2{font-size:13px;font-weight:550;letter-spacing:0}.custom-size{margin-left:auto;display:flex;align-items:baseline;gap:4px;font-size:24px}.custom-size input{width:85px;text-align:right;border:0;background:transparent;font-size:24px;color:var(--ink);height:44px;padding:0;appearance:textfield;-moz-appearance:textfield}.custom-size input::-webkit-inner-spin-button{appearance:none}.custom-size small{font-size:11px}.size-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:4px 0 8px}.size-presets button{min-height:55px;border-radius:10px;border:1px solid var(--line);background:#fffefa;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}.size-presets b{font-size:13px}.size-presets span{font-size:10px;color:var(--muted)}.size-presets .selected{background:#eaf2e5;border-color:var(--accent)}.size-range{font-size:10px;color:var(--muted);margin-bottom:12px}.session-shell:has(.sizing-panel) .poker-scene,.session-shell.has-feedback .poker-scene{height:clamp(405px,calc(100dvh - 340px),480px);--hero-height:83px;--hero-width:61px;--board-height:66px;--board-width:49px}.session-shell:has(.sizing-panel) .board-5,.session-shell.has-feedback .board-5{--board-width:40px}.session-shell.has-feedback .hero-cards .card>i,.session-shell:has(.sizing-panel) .hero-cards .card>i{font-size:36px}.session-shell.has-feedback .hero-cards .card-corner b,.session-shell:has(.sizing-panel) .hero-cards .card-corner b{font-size:28px}.session-shell.has-feedback .table-bottom{padding-top:27px}.feedback-panel{border-top:1px solid var(--line);padding-top:18px}.verdict{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.verdict>.icon{padding:4px;box-sizing:content-box;background:#e3ead8;color:#587047;border-radius:50%;width:15px;height:15px}.verdict h2{font-size:19px;letter-spacing:-.4px}.verdict.warm>.icon{background:#f0e5d4;color:#835c38}.verdict>.pill{margin-left:auto;font-size:9px}.feedback-panel>p{font-size:12px;line-height:1.6;color:var(--muted);margin:12px 0 15px}.feedback-source{display:block;text-align:center;color:var(--muted);font-size:9px}.intro-hand{border-top:1px solid var(--line);padding-top:14px}.intro-hand>p{font-size:12px;color:var(--muted);margin:10px 0 14px}.recovery{text-align:center;padding:20px 10px}.recovery-icon{display:flex;align-items:center;justify-content:center;background:var(--soft);border-radius:50%;width:46px;height:46px;margin:0 auto 20px}.recovery h2{font-size:20px}.recovery p{font-size:13px;color:var(--muted);margin:12px 0 21px}.session-aside{display:none}.late-chip{display:none;position:absolute;width:22px;height:9px;border:1px solid #ac9c72;background:repeating-conic-gradient(#e3d5b1 0 35deg,#fff6da 35deg 50deg);border-radius:50%;bottom:1px;left:50%;box-shadow:0 2px 0 #ac9c72}.playful .late-chip{display:block;animation:late-chip 950ms cubic-bezier(.25,.8,.25,1) both}.playful .pot-chips .chips:first-child{animation:chip-nudge 950ms ease both}@keyframes late-chip{0%{transform:translate(-70px,-26px) rotate(70deg);opacity:0}10%{opacity:1}45%{transform:translate(17px,-6px) rotate(-20deg)}65%{transform:translate(11px,-17px) rotate(15deg)}82%{transform:translate(5px,-14px) rotate(-6deg)}100%{transform:translate(2px,-13px) rotate(0)}}@keyframes chip-nudge{0%,52%,100%{transform:rotate(-5deg)}65%{transform:rotate(-12deg)}80%{transform:rotate(-2deg)}}
/* Evidence, recaps, and review. */
.weakness-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px;margin-top:28px}.weakness{position:relative;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#f5f5ed}.weakness-main{text-align:left;width:100%;padding:23px 22px 20px;min-height:220px}.weakness-main h2{margin:24px 0 10px;font-size:23px}.weakness-main p{font-size:13px;line-height:1.65;color:var(--muted);max-width:330px}.weakness-main>div{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:24px}.weakness-main>div>span{font-size:10px;color:var(--muted)}.weakness-main>div>b{font-size:12px;display:flex;gap:6px;align-items:center}.weakness-main>div .icon{width:16px}.weakness>.icon-button{position:absolute;top:10px;right:8px;color:var(--muted)}.weakness>.icon-button .icon{width:17px}.learning-panel{padding:28px 20px 35px;background:#f3f5ec;border-radius:22px;text-align:center;max-width:640px;margin:10px auto 35px}.learning-panel h2{font-size:26px;margin:23px 0 14px}.learning-panel p{font-size:14px;color:var(--muted);max-width:380px;margin:auto}.learning-panel>.primary{max-width:280px;margin:25px auto 0}.learning-art{position:relative;width:142px;height:115px;margin:0 auto;display:flex;align-items:center;justify-content:center}.learning-art>span{font-size:64px;color:#7d9672;z-index:1}.learning-art i{position:absolute;border:1px solid #cdd8bc;border-radius:50%;width:104px;height:104px;transform:rotate(25deg)}.learning-art i:nth-child(2){transform:translateX(-18px) rotate(25deg)}.learning-art i:nth-child(3){transform:translateX(18px) rotate(-25deg)}.learning-art i:last-child{width:60px;height:60px;border-color:#dce3ce}.practice-log{max-width:760px;margin:auto}.skill-row{display:flex;align-items:center;gap:13px;min-height:82px;padding:14px 0;width:100%;text-align:left;border-bottom:1px solid var(--line)}.skill-symbol{height:37px;width:37px;border-radius:12px;background:var(--soft);display:flex;align-items:center;justify-content:center;flex:none}.skill-row>span:nth-child(2){flex:1}.skill-row b{font-size:14px}.skill-row small{display:block;margin-top:5px;font-size:11px;color:var(--muted)}.skill-row>.icon{width:17px;color:var(--muted)}.recap-page{max-width:760px;margin:0 auto}.recap-heading{text-align:center;margin:15px 0 28px}.recap-seal{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:1px solid #c8d4be;background:var(--soft);border-radius:50%;margin:0 auto 24px;box-shadow:0 0 0 7px #edf1e566}.recap-heading h1{font-size:35px}.recap-heading .lead{margin-top:12px}.recap-stats{display:flex;justify-content:space-evenly;padding:25px 12px;border:1px solid var(--line);border-radius:18px;background:#f2f5ea}.recap-stats>div{text-align:center;padding:0 14px}.recap-stats b{display:block;font-size:39px;letter-spacing:-1.5px;font-weight:500}.recap-stats span{font-size:11px;color:var(--muted);display:block;margin-top:8px}.recap-insights{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin:29px 0}.recap-insights h2{font-size:20px;margin:9px 0}.recap-insights p{font-size:13px;color:var(--muted)}.recap-insights .eyebrow{font-size:9px}.decision-row{display:flex;align-items:center;gap:12px;padding:16px 0;min-height:80px;width:100%;text-align:left;border-bottom:1px solid var(--line)}.drill-number{width:28px;height:30px;flex:none;display:flex;align-items:center;justify-content:center;border-radius:8px;background:var(--soft);font-size:11px;color:var(--muted)}.decision-row>span:nth-child(2){flex:1}.decision-row b{font-size:13px}.decision-row small{font-size:10px;color:var(--muted);display:block;margin-top:5px}.decision-row>.icon{width:15px;color:var(--muted)}.mini-cards{display:inline-flex;gap:4px;white-space:nowrap}.mini-cards>span{border:1px solid var(--line);border-radius:4px;padding:5px;background:#fffef8;font-size:13px;font-weight:600;box-shadow:0 1px 0 #dce2d3}.review-page>.section-heading{margin-top:7px}.review-page h1{font-size:31px;margin-top:10px}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:30px;align-items:start}.review-table{max-width:420px;width:100%;margin:auto}.review-table .poker-scene{height:550px}.review-context{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted)}.review-context .pill{text-transform:capitalize}.review-cards{display:flex;justify-content:space-between;gap:18px;margin:27px 0}.review-cards>div{display:flex;flex-direction:column;gap:9px}.review-cards small{font-size:10px;color:var(--muted)}.chosen-action{display:flex;justify-content:space-between;align-items:center;padding:17px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:22px;font-size:13px}.chosen-action>span{color:var(--muted)}.review-detail .verdict h2{font-size:17px}.review-reason{font-size:13px;color:var(--muted);margin:16px 0 24px}.reference-title{display:flex;justify-content:space-between;align-items:center;margin:21px 0 17px}.reference-title>span{font-size:10px;color:var(--muted)}.reference-title h3{font-size:14px}.frequency-row{display:grid;grid-template-columns:105px 1fr 34px;align-items:center;gap:12px;font-size:11px;margin-bottom:14px}.frequency-row>div{background:#e6ebdf;height:5px;border-radius:4px;overflow:hidden}.frequency-row i{height:100%;display:block;background:#819c72}.frequency-row b{text-align:right;font-size:11px}.review-detail>.secondary{margin-top:24px}.decision-tabs{display:flex;gap:7px;overflow-x:auto;padding:5px 2px 12px}.decision-tabs button{padding:10px 13px;border:1px solid var(--line);border-radius:9px;min-height:44px;font-size:12px;white-space:nowrap;text-transform:capitalize}.decision-tabs button.selected{background:var(--soft);border-color:#809873}.history-list{margin-top:14px}.history-list section{margin:22px 0 0}.history-list h3{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px;color:var(--muted);font-size:11px;font-weight:550}.history-list h3 .mini-cards>span{font-size:9px;padding:3px}.history-list section>div{display:flex;justify-content:space-between;gap:10px;font-size:12px;padding:11px 0;border-bottom:1px solid var(--line)}.history-list section>div>span{color:var(--muted)}.history-list section>div>b{font-weight:500;text-align:right}.coach-note{margin-top:23px;background:var(--soft);padding:15px;border-radius:13px}.coach-note h3{font-size:13px}.coach-note p{font-size:13px;color:var(--muted);margin-top:9px}.coach-note small{font-size:10px;color:var(--muted);display:block;margin-top:10px}details{border-bottom:1px solid var(--line);padding:4px 0}summary{min-height:44px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-size:13px;list-style:none}summary::-webkit-details-marker{display:none}summary:after{content:'+';font-size:19px;font-weight:400;color:var(--muted)}details[open]>summary:after{content:'−'}details>p{font-size:12px;color:var(--muted);margin:2px 0 17px}
/* Progressive-reveal sheets are native dialogs: focus is trapped and restored. */
dialog{border:0;background:var(--paper);color:var(--ink);padding:0;border-radius:23px;width:min(460px,calc(100vw - 32px));max-height:calc(100dvh - 36px);box-shadow:0 22px 90px #1b352b33}dialog::backdrop{background:#172d2b59;backdrop-filter:blur(3px)}.sheet{padding:10px 24px 24px;overflow-y:auto;max-height:calc(100dvh - 36px);overscroll-behavior:contain}.handle{width:32px;height:4px;border-radius:8px;background:#c4ccc4;margin:0 auto 10px}.sheet-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-right:-10px;margin-bottom:10px}.sheet-header h2{font-size:22px;letter-spacing:-.6px}.sheet-content>p,.sheet-copy{font-size:13px;color:var(--muted);margin:9px 0 22px}.sheet-content>.primary{margin-top:19px}.sheet-content>.secondary{margin-top:11px}fieldset{border:0;margin:23px 0;padding:0;min-width:0}legend{font-size:12px;font-weight:550;margin-bottom:12px;padding:0}.choice-chips{display:flex;flex-wrap:wrap;gap:7px}.choice-chips>button{min-height:44px;border:1px solid var(--line);padding:10px 13px;border-radius:10px;font-size:12px;background:#fffef8}.choice-chips>button.selected{background:var(--soft);border-color:#819875;color:#405e39}.field{display:flex;flex-direction:column;gap:11px;margin:20px 0}.field>span{font-size:12px;font-weight:550}.field select{display:block;width:100%;height:49px;border:1px solid var(--line);background:#fffef8;color:var(--ink);border-radius:10px;padding:0 13px;font-size:13px;min-width:0}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.disclosure{border-top:1px solid var(--line);min-height:52px;display:flex;align-items:center;justify-content:space-between;font-size:13px;padding:0 1px;width:100%;text-align:left}.disclosure>.icon{width:16px;color:var(--muted)}.disclosure.open>.icon{transform:rotate(90deg)}.advanced-fields{padding:0 0 10px}.advanced-fields .field{margin:16px 0}.filter-status{font-size:11px;color:var(--muted);margin:16px 0;line-height:1.6}.filter-status.error{color:#925639}.settings-coach{padding:17px 0 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.settings-coach .section-heading{margin:0 0 10px}.settings-coach p{font-size:12px;color:var(--muted)}.settings-coach .secondary{font-size:13px;margin-top:15px;min-height:44px}.settings-summary{display:flex;justify-content:space-between;color:var(--muted);font-size:12px;padding:22px 0}.evidence-title{font-size:22px;letter-spacing:-.6px;margin:19px 0 10px}.evidence-list{margin:22px 0}.evidence-list>button{width:100%;display:flex;justify-content:space-between;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line);text-align:left}.evidence-list>button>span{display:flex;flex-direction:column;gap:8px}.evidence-list small{font-size:10px;color:var(--muted);text-transform:capitalize}.evidence-list b{font-size:10px;font-weight:500;display:flex;gap:3px;align-items:center}.evidence-list b>.icon{width:14px}.practice-about>p{font-size:13px;color:var(--muted);margin:15px 0}.practice-about h3{font-size:25px;letter-spacing:-.7px;margin:18px 0}.about-mark{font-size:38px;color:var(--accent)}#notice{position:fixed;top:max(16px,env(safe-area-inset-top));right:max(16px,env(safe-area-inset-right));z-index:100;max-width:min(380px,calc(100vw - 32px));border:0;border-radius:12px;background:var(--soft);color:var(--ink);font-size:12px;line-height:1.5;padding:0;box-shadow:0 6px 30px #172d2b22}#notice:not(:empty){padding:16px 46px 16px 16px;border:1px solid var(--line)}
.notice-close{position:absolute;top:4px;right:4px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;color:var(--muted)}
.notice-close .icon{width:14px;height:14px}
.notice-close:hover{background:var(--paper);color:var(--ink)}
.notice-close:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
@media(prefers-reduced-motion:no-preference){#notice:not(:empty){animation:notice-enter 180ms ease-out}@keyframes notice-enter{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}}
@media(min-width:1050px){.app-shell{padding-left:202px}.desktop-nav{display:flex;position:fixed;left:0;top:0;bottom:0;width:202px;border-right:1px solid var(--line);padding:31px 25px;flex-direction:column;background:#f4f5ed}.desktop-nav>.wordmark{margin:0 10px 38px}.desktop-nav .bottom-nav{position:static;display:flex;flex-direction:column;padding:0;border:0;gap:7px;align-items:stretch;background:none;height:auto}.desktop-nav .bottom-nav>button{height:49px;width:100%;justify-content:flex-start;padding:0 15px;border-radius:11px;font-size:13px}.desktop-nav .bottom-nav>button.active{background:#e5ecdb}.sidebar-foot{font-size:11px;line-height:1.7;color:#86907d;margin-top:auto;padding:0 12px}.workspace>.bottom-nav{display:none}.workspace>.app-header{height:83px}.workspace>.app-header>.wordmark{visibility:hidden}.page-content{padding-top:18px}.home-grid{gap:28px}.recommendation{padding:28px 33px 12px}.practice-art{height:204px}.session-content{padding:20px 35px}.session-header{max-width:510px}.progress-track{max-width:466px}.context-line{max-width:510px;margin-left:0}.table-layout{display:grid;grid-template-columns:510px 1fr;gap:75px;align-items:start}.table-column{width:100%;max-width:510px}.poker-scene{height:600px;--board-width:58px;--board-height:80px;--hero-width:78px;--hero-height:108px}.session-aside{display:block;max-width:340px;padding:19px 0}.session-aside>.wordmark{margin-bottom:49px}.session-aside h2{font-size:30px;letter-spacing:-1px}.session-aside h2 span{font-size:17px;letter-spacing:0;color:#8d9785;margin:0 7px}.table-format{font-size:12px;color:var(--muted);margin-top:10px}.session-aside .history-list{margin-top:32px}.aside-note{margin-top:30px;font-size:12px;line-height:1.7;color:var(--muted)}.session-shell:has(.sizing-panel) .poker-scene,.session-shell.has-feedback .poker-scene{height:540px;--hero-height:99px;--hero-width:70px;--board-height:77px;--board-width:54px}.review-grid{gap:50px}.welcome-shell{padding-left:0}.welcome-shell .desktop-nav{display:none}.welcome-shell .app-header>.wordmark{visibility:visible}.welcome-shell .page-content{padding-top:4px}.welcome-shell .welcome{margin-top:0}}
@media(min-width:600px) and (max-width:1049px){.workspace>.bottom-nav{max-width:400px;margin:0 auto;border-top:0}.page-content{padding-bottom:30px}.session-content{max-width:460px}.session-header{padding:0 18px}.table-column{max-width:460px}.review-table{display:none}.review-grid{grid-template-columns:1fr;max-width:520px;margin:25px auto}.review-page{max-width:660px;margin:auto}.poker-scene{height:560px}.welcome-shell .app-header{max-width:600px;margin:auto}}
@media(max-width:599px){h1{font-size:33px;letter-spacing:-1.25px}.app-header{height:65px;padding:8px 20px}.wordmark{font-size:20px}.page-content{padding:18px 24px 25px;min-height:calc(100dvh - 141px)}.page-heading{margin:9px 0 26px;gap:10px}.page-heading>.pill{font-size:9px;padding:5px 7px}.page-heading h1{font-size:30px}.page-heading .eyebrow{font-size:9px;letter-spacing:1.2px}.home-grid{display:block}.home-side{margin-top:23px}.recommendation{padding:23px 23px 9px;border-radius:19px}.recommendation h2{font-size:27px}.recommendation>p{font-size:13px}.practice-art{height:167px;margin-bottom:11px}.rec-top .eyebrow{font-size:9px}.recommend-meta{margin:19px 0;font-size:10px;gap:8px}.intro-card,.last-session{padding:24px;border-radius:18px}.intro-card h2{font-size:24px}.intro-card p{font-size:13px}.quiet-card{padding:0 3px}.home-side{gap:20px}.bottom-nav{height:70px;min-height:70px}.bottom-nav>button{flex-direction:column;gap:5px;font-size:10px}.bottom-nav .icon{width:19px;height:19px}.resume-card{padding:13px 12px}.resume-card>div{gap:8px}.resume-card b{font-size:12px}.resume-card .small-primary{font-size:11px;padding:10px 12px}.resume-card .icon{width:16px}.welcome{margin-top:6px}.welcome h1{font-size:34px}.welcome-mark{margin:12px 0 25px}.welcome-mark>span{font-size:11px}.welcome .lead{font-size:14px}.experience-choice{padding:17px 15px;gap:13px}.experience-choice small{font-size:11px}.welcome-shell .page-content{padding-top:0}.welcome-shell .app-header .page-label{display:none}.practice-explainer{font-size:11px}.weakness-grid{grid-template-columns:1fr;gap:14px;margin-top:24px}.weakness-main{min-height:0;padding:21px 20px 20px}.weakness-main h2{font-size:24px;margin-top:22px}.weakness-main>div{margin-top:19px}.learning-panel{padding:25px 17px 27px;margin-top:17px}.learning-panel p{font-size:13px}.learning-panel h2{font-size:25px}.learning-panel>.primary{max-width:none}.recap-heading h1{font-size:30px}.recap-heading .lead{font-size:14px}.recap-stats{padding:23px 2px}.recap-stats>div{padding:0 8px}.recap-stats b{font-size:34px}.recap-stats span{font-size:10px}.recap-insights{gap:20px}.recap-insights h2{font-size:18px}.recap-insights p{font-size:12px}.recap-insights .eyebrow{font-size:8px;letter-spacing:.9px}.decision-row{gap:9px}.decision-row b{font-size:12px}.decision-row small{font-size:9px}.decision-row .mini-cards>span{font-size:11px;padding:4px}.decision-row .mini-cards{gap:3px}.decision-row>.icon{width:12px}.review-table{display:none}.review-grid{display:block;margin-top:22px}.review-page h1{font-size:30px}.review-cards .mini-cards>span{font-size:12px;padding:4px}.review-cards{gap:12px}.review-detail .verdict h2{font-size:18px}.review-detail .verdict .pill{font-size:9px}.review-reason{font-size:13px}.review-page>.section-heading{align-items:flex-start}.review-page>.section-heading>.pill{margin-top:3px}.review-page .eyebrow{font-size:9px}dialog{width:100%;max-width:none;margin:auto 0 0;border-radius:23px 23px 0 0;max-height:calc(100dvh - 20px)}.sheet{max-height:calc(100dvh - 20px);padding:10px 24px max(24px,env(safe-area-inset-bottom))}.sheet-header h2{font-size:22px}.field-pair{gap:10px}.choice-chips>button{font-size:11px;padding:10px 12px}.sheet .primary{min-height:52px}}
@media(max-width:374px){.page-content{padding-left:20px;padding-right:20px}.page-heading h1{font-size:28px}.page-heading .eyebrow{font-size:8px}.page-heading>.pill{font-size:8px}.recommendation{padding:21px 20px 8px}.hero-player{min-width:166px;padding:0 10px}.hero-stack{left:15%}.villain-bet{right:17%}.pot-value>strong{font-size:22px}.table-bottom{padding-left:17px;padding-right:17px}.seat{width:76px}.in-hand .nameplate{min-width:73px}.board-cards{gap:5px}.board-5{gap:4px}.context-line>span{font-size:10px}.feedback-panel .verdict h2{font-size:18px}.feedback-panel .pill{font-size:8px}.sheet{padding-left:20px;padding-right:20px}.choice-chips>button{padding:10px}.field select{padding:0 10px}.frequency-row{grid-template-columns:101px 1fr 32px;gap:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.playful .late-chip{display:none}}
body[data-motion="off"] *{animation:none!important;transition:none!important}body[data-motion="off"] .late-chip{display:none}body.modal-open{overflow:hidden}

.in-hand .dealer{top:84px}

.choice-chips>button{min-width:44px}

/* Analyse: one visual overview, one next action, detail on demand. */
.analysis-page{max-width:900px;margin:0 auto}
.analysis-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 21px}
.analysis-heading h1{font-size:35px;letter-spacing:-1.2px}
.practice-info{min-width:44px;min-height:44px;display:flex;align-items:center;gap:7px;color:var(--muted);font-size:11px;padding:0 3px 0 12px}
.practice-info .icon{width:15px;height:15px}
.analysis-summary{display:flex;align-items:center;gap:24px;padding:21px 28px;background:#f0f3e8;border:1px solid #e0e6d7;border-radius:21px}
.practice-ring{width:112px;height:112px;flex:none;position:relative}
.practice-ring>svg{width:100%;height:100%;display:block}
.practice-ring>span{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}
.practice-ring b{font-size:30px;line-height:1.1;letter-spacing:-1px;font-weight:530;font-variant-numeric:tabular-nums}
.practice-ring small{font-size:10px;color:var(--muted)}
.summary-key{min-width:0;flex:1}
.summary-key h2{font-size:16px;letter-spacing:-.3px;margin-bottom:15px;font-weight:560}
.summary-key>span{display:flex;align-items:center;gap:9px;font-size:12px;margin-top:10px;color:var(--muted)}
.summary-key>span>b{color:var(--ink);font-size:15px;min-width:19px;font-weight:570;font-variant-numeric:tabular-nums}
.summary-key .icon{width:16px;height:16px;background:#dce7d2;color:#506e45;border-radius:50%;padding:3px;box-sizing:content-box}
.summary-key .revisit .icon{background:#f0e3d1;color:#8a623c}
.analysis-section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:25px 0 13px}
.analysis-section-title h2{font-size:18px;letter-spacing:-.4px}
.analysis-section-title>span{font-size:10px;color:var(--muted)}
.analysis-focus-list{display:grid;gap:12px}
.analysis-focus-card{position:relative;border:1px solid #dce3d3;border-radius:19px;background:linear-gradient(125deg,#edf2e2,#e6eddc);overflow:hidden}
.analysis-focus-main{display:block;width:100%;text-align:left;padding:19px 21px 0}
.focus-kicker{display:flex;align-items:center;gap:9px;padding-right:35px;min-height:25px}
.focus-number{font-size:10px;color:#738467;font-variant-numeric:tabular-nums}
.focus-kicker .pill{font-size:9px;min-height:23px;padding:5px 8px}
.focus-body{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:12px 0 13px;min-height:82px}
.focus-body>span{flex:1;min-width:0}
.focus-title{display:block;font-size:24px;line-height:1.1;letter-spacing:-.8px;font-weight:560;max-width:230px}
.focus-pattern{display:block;font-size:12px;color:#64745b;line-height:1.4;margin-top:9px}
.situation-art{display:block;flex:none;width:83px;height:90px}
.focus-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #d6dfca;min-height:51px}
.focus-footer>span:first-child{font-size:10px;color:#65765a}
.focus-cta{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:#405e37;white-space:nowrap}
.focus-cta .icon{width:16px;height:16px}
.analysis-focus-card>.icon-button{position:absolute;right:8px;top:8px;color:#65765a}
.analysis-focus-card>.icon-button .icon{width:16px;height:16px}
.analysis-situations{padding:0 18px;background:#f5f6ef;border:1px solid #e1e6d9;border-radius:18px}
.analysis-situation{display:flex;align-items:center;gap:11px;width:100%;text-align:left;min-height:68px;border-bottom:1px solid #e0e5d8;padding:12px 0}
.analysis-situation:last-child{border-bottom:0}
.situation-symbol{width:32px;height:38px;flex:none;display:flex;align-items:center;justify-content:center}
.situation-symbol .situation-art{width:36px;height:39px}
.situation-result{flex:1;min-width:0}
.situation-caption{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:9px}
.situation-caption>b{font-size:12px;font-weight:550;line-height:1.3}
.situation-caption>span{font-size:12px;font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}
.situation-caption small{font-size:10px;font-weight:400;color:var(--muted)}
.situation-track{display:block;height:5px;background:#e6d3b8;border-radius:5px;overflow:hidden}
.situation-track>i{display:block;height:100%;background:#78946b;border-radius:5px}
.analysis-situation>.icon{width:13px;height:13px;color:#8c987f}
.analysis-footnote{font-size:10px;line-height:1.6;text-align:center;color:#78836e;margin:17px 0 0}
.analysis-learning{text-align:center;padding:18px 22px 24px;background:#f0f3e8;border:1px solid #e0e6d7;border-radius:21px;margin:7px auto 0;max-width:480px}
.analysis-learning h2{font-size:25px;letter-spacing:-.7px;margin:12px 0 10px}
.analysis-learning p{font-size:13px;color:var(--muted)}
.analysis-learning>.primary{margin:23px auto 0;max-width:290px}
.learning-constellation{position:relative;width:220px;height:190px;margin:8px auto 19px;display:flex;align-items:center;justify-content:center}
.learning-constellation:before{content:"";position:absolute;inset:28px 34px;border:1px dashed #bbc9ab;border-radius:50%}
.learning-constellation>span{font-size:52px;color:#78916c}
.learning-constellation>i{position:absolute;width:49px;height:49px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fafbf5;border:1px solid #dce3d2}
.learning-constellation .situation-art{width:36px;height:39px}
.orbit-0{left:85px;top:3px}.orbit-1{left:158px;top:59px}.orbit-2{left:129px;top:137px}.orbit-3{left:37px;top:137px}.orbit-4{left:9px;top:59px}
.analysis-learning.with-results{margin-top:25px;padding:20px}
.analysis-learning.with-results .learning-constellation{display:none}
.analysis-learning.with-results h2{font-size:21px;margin:0 0 8px}
.analysis-learning.with-results p{font-size:12px}
.analysis-learning.with-results>.primary{margin-top:17px}
@media(min-width:750px){
 .analysis-summary{max-width:100%;padding:23px 29px}
 .summary-key{display:grid;grid-template-columns:max-content max-content;column-gap:42px}
 .summary-key h2{grid-column:1/-1;font-size:18px;margin-bottom:4px}
 .analysis-columns{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}
 .analysis-columns:not(:has(.analysis-breakdown)){display:block}
 .analysis-columns:not(:has(.analysis-breakdown)) .analysis-learning{margin-top:25px}
 .analysis-situation{min-height:82px}
 .situation-caption>b{font-size:13px}
 .analysis-focus-list{gap:15px}
}
@media(max-width:599px){
 .analysis-shell .page-content{padding-top:12px}
 .analysis-heading{margin-bottom:16px}.analysis-heading h1{font-size:32px}
 .analysis-summary{gap:19px;padding:15px 19px;border-radius:18px}
 .practice-ring{width:94px;height:94px}.practice-ring b{font-size:27px}.practice-ring small{font-size:9px}
 .summary-key h2{font-size:15px;margin-bottom:11px}.summary-key>span{gap:7px;font-size:11px;margin-top:8px}.summary-key>span>b{font-size:14px;min-width:16px}
 .summary-key .icon{width:13px;height:13px}
 .analysis-section-title{margin-top:23px;margin-bottom:12px}.analysis-section-title h2{font-size:17px}
 .analysis-focus-main{padding:17px 18px 0}.focus-body{margin:10px 0 10px;min-height:76px}
 .focus-title{font-size:23px;max-width:215px}.focus-pattern{font-size:11px;margin-top:8px}
 .focus-body .situation-art{width:73px;height:79px}.focus-footer{min-height:48px}.focus-footer>span:first-child{font-size:9px}
 .analysis-situations{padding:0 15px}.analysis-situation{min-height:62px;padding:10px 0;gap:9px}
 .situation-caption{gap:7px;margin-bottom:8px}.situation-caption>b{font-size:11px}.situation-caption>span{font-size:11px}
 .situation-symbol{width:28px}.situation-symbol .situation-art{width:32px;height:35px}
 .analysis-footnote{font-size:9px;margin-top:15px}
 .analysis-learning{padding-bottom:25px}.analysis-learning h2{font-size:24px}
}
@media(max-width:374px){
 .analysis-summary{gap:16px;padding:15px 16px}.practice-ring{width:87px;height:87px}
 .summary-key>span{font-size:10px}.summary-key h2{font-size:14px}
 .focus-title{font-size:22px}.focus-body .situation-art{width:66px;height:74px}
 .analysis-situations{padding:0 12px}.situation-caption>b{font-size:10.5px}
}
@media(max-width:599px){
 .analysis-shell .page-content{padding-bottom:14px}
 .analysis-summary{padding-top:13px;padding-bottom:13px}.practice-ring{width:86px;height:86px}
 .analysis-section-title{margin-top:20px;margin-bottom:10px}
 .analysis-focus-main{padding-top:14px}.focus-body{margin-top:8px;margin-bottom:8px;min-height:70px}
 .focus-body .situation-art{height:70px;width:66px}.focus-footer{min-height:44px}
 .analysis-situation{min-height:55px;padding-top:8px;padding-bottom:8px}
 .analysis-footnote{margin-top:12px}
}

/* Selected PokerGT identity: sage gradient, double bezel, raised GT and Syne wordmark. */
.brand-icon{display:block;width:40px;height:40px;flex:none;border-radius:8px;object-fit:contain}
.welcome-brand-icon{display:block;width:64px;height:64px;border-radius:16px;object-fit:contain}

/* Syne wordmark uses local SVG outlines for consistent branding and no font flash. */
.wordmark{gap:11px;flex-shrink:0}
.brand-name{display:block;width:126px;height:auto;flex:none}
.felt-wordmark>img{display:block;width:100px;height:auto;opacity:.25}
@media(min-width:1050px){
 .desktop-nav>.wordmark{margin-left:0;margin-right:0;gap:8px}
 .desktop-nav .brand-icon{width:32px;height:32px}
 .desktop-nav .brand-name{width:112px}
}

/* Account access follows the same quiet sage visual language. */
[hidden]{display:none!important}
.auth-shell{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:44px 24px 28px;background:radial-gradient(ellipse at 50% 18%,#edf2e4 0,transparent 55%),var(--paper)}
.auth-card{width:100%;max-width:360px;text-align:center}
.auth-brand{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:40px}
.auth-brand>img:first-child{width:72px;height:72px;border-radius:17px}
.auth-wordmark{display:block;width:172px;height:auto}
.auth-card h1{font-size:35px;letter-spacing:-1.3px;line-height:1.15;margin:18px 0 32px}
.auth-copy{color:var(--muted);font-size:14px;max-width:275px;margin:0 auto 32px;line-height:1.7}
.google-signin{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:54px;border:1px solid #b6c4b1;border-radius:13px;background:#fffef9;font-weight:600;font-size:14px}
.google-mark{font-size:20px;font-weight:700;color:#4285f4}
.auth-hint{font-size:11px;color:#74816f;margin:11px auto 0;line-height:1.6}
.auth-foot{font-size:11px;letter-spacing:.2px;color:#82907d;margin-top:55px}
.auth-legal{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 20px;margin-top:24px;font-size:11px;color:var(--muted)}
.auth-legal a{text-decoration:underline;text-underline-offset:3px}
.auth-loading{font-size:13px;color:var(--muted)}
.auth-error{padding:13px;border:1px solid #e0ceba;background:#f5ede1;border-radius:11px;font-size:13px;color:#7a5336;margin-bottom:20px}
.account-panel{border:1px solid var(--line);background:#f0f3e8;border-radius:15px;padding:18px;margin-bottom:26px}
.account-identity{display:flex;gap:12px;align-items:center;min-width:0}
.account-identity>div{min-width:0;flex:1}
.account-identity b{font-size:14px;display:block;overflow-wrap:anywhere}
.account-identity small{display:block;font-size:11px;color:var(--muted);margin-top:3px;overflow-wrap:anywhere}
.account-avatar{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:none;color:#fffef8;background:#6e886d;font-size:16px;font-weight:600}
.sync-label{font-size:11px;color:var(--muted);margin:14px 0 0;line-height:1.6}
.sync-label[data-state=error],.sync-label[data-state=conflict]{color:#805333}
.account-actions{display:flex;justify-content:space-between;gap:14px;margin-top:8px}
.account-actions .text-link{font-size:12px}
.account-recovery{font-size:10px;color:var(--muted);min-height:44px;display:block;padding:0}
@media(max-width:374px){.auth-brand{gap:12px}.auth-wordmark{width:156px}.auth-card h1{font-size:32px}.account-panel{padding:15px}.account-identity .pill{font-size:8px}}

h1[tabindex="-1"]:focus{outline:none}
/* Drills is the entry point: resume first, setup before every new session. */
.drills-page{width:100%;max-width:660px;margin:0 auto}
.drills-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:8px 0 24px}
.drills-heading h1{font-size:32px;letter-spacing:-1.1px;margin:0}
.drills-resume{padding:24px;border:1px solid #cbd8c5;border-radius:22px;background:linear-gradient(130deg,#eaf0e4,#f5f6ed);margin-bottom:18px}
.drills-resume-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.drills-progress{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.drills-resume-body{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:24px 0}
.drills-resume h2,.drills-new h2{font-size:25px;letter-spacing:-.7px;line-height:1.2;margin:0 0 8px}
.drills-resume p,.drills-new p{color:var(--muted);font-size:13px;line-height:1.6;margin:0}
.drills-resume>.primary,.drills-new>.primary{width:100%;min-height:50px}
.drills-new{padding:26px 24px 20px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(155deg,#f2f4ea,#fbfbf4);text-align:center}
.drills-deck{position:relative;width:156px;height:115px;margin:4px auto 18px;isolation:isolate}
.drills-deck:before{content:'';position:absolute;inset:22px -18px -2px;border-radius:50%;background:#dce6d3;transform:rotate(-15deg);z-index:-1}
.drills-deck>.card{position:absolute;top:2px;width:65px;height:90px;box-shadow:0 4px 0 #d4d9c9,0 9px 18px #3c54371a}
.drills-deck>.card:first-child{left:18px;transform:rotate(-15deg)}
.drills-deck>.card:nth-child(2){left:72px;top:8px;transform:rotate(12deg)}
.drills-deck>.chips{position:absolute;bottom:0;left:9px}
.drills-new-copy{margin-bottom:22px}
.drills-new.with-resume{display:grid;grid-template-columns:1fr;gap:0}
.drills-new.with-resume .drills-deck{display:none}
.drills-new.with-resume h2{font-size:21px}
.setup-save-note{font-size:12px;line-height:1.6;color:var(--muted);background:#eef2e8;padding:12px 14px;border-radius:10px;margin:0 0 20px}
@media(max-width:430px){.drills-heading{margin:4px 0 20px}.drills-heading h1{font-size:30px}.drills-resume{padding:20px}.drills-resume-body{margin:20px 0}.drills-resume h2{font-size:23px}.drills-new{padding:22px 20px 18px}}

/* Learning maps mirror the Street and Topic choices in session setup. */
.drills-resume>.primary{width:auto;min-width:132px;min-height:44px;padding:10px 18px;font-size:14px}
.learning-maps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:24px;align-items:stretch}
.learning-map{min-width:0;border:1px solid #dce4d4;border-radius:22px;padding:20px 18px 16px;overflow:hidden;position:relative;background:linear-gradient(145deg,#f0f4e8,#fafaf4)}
.learning-map>header{display:flex;align-items:center;justify-content:space-between;gap:6px}
.learning-map h2{font-size:21px;letter-spacing:-.65px;line-height:1.2;margin-top:5px}
.map-eyebrow{font-size:8px;letter-spacing:1.5px;font-weight:650;color:#7b8d70}
.learning-map>header .icon-button{width:44px;height:44px;margin-right:-9px;color:#809075}.learning-map>header .icon{width:17px;height:17px}
.learning-map>footer{font-size:10px;color:#71816a;text-align:center;border-top:1px solid #dfe6d8;padding-top:13px;margin-top:10px}
.street-journey{position:relative;padding:10px 0 3px;margin-top:13px;min-height:300px;display:flex;flex-direction:column;justify-content:space-around;gap:7px;isolation:isolate}
.journey-thread{position:absolute;left:15px;top:38px;bottom:42px;width:2px;background:linear-gradient(#aec69c,#688a67);z-index:-1}
.journey-thread:after{content:'';position:absolute;top:0;left:-2px;width:6px;height:18%;border-radius:8px;background:linear-gradient(transparent,#f5f8ef,transparent);animation:street-travel 5s ease-in-out infinite}
.street-stop{display:grid;grid-template-columns:30px 67px 1fr 16px;align-items:center;gap:8px;min-height:62px;padding:7px 2px 7px 0;text-align:left;border-radius:12px;transition:background 180ms ease,transform 180ms ease}
.street-stop:hover{background:#e7efdf}.street-stop:active{transform:scale(.98)}
.street-node{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#e5eddb;border:3px solid #f2f5eb;box-shadow:0 0 0 1px #bacdaf;font-size:10px;font-weight:650;color:#5f7c52}
.street-stop-label>b{display:block;font-size:13px;font-weight:600}.street-stop-label small{display:block;color:#7a8872;font-size:10px;margin-top:4px}.street-stop-label small b{color:#56734b}
.street-stop>.icon{width:14px;color:#7a8e71;transition:transform 200ms ease}.street-stop:hover>.icon{transform:translateX(3px)}
.street-cards{display:flex;align-items:center;height:41px;width:67px;position:relative;justify-content:center}
.street-cards>i{display:grid;place-items:center;position:absolute;left:calc(4px + var(--card-i)*11px);height:29px;width:20px;border:1px solid #cbd6bd;border-radius:4px;background:#fffef5;color:#7d936f;font-size:13px;font-style:normal;box-shadow:0 2px 0 #c6d0b9;transform:rotate(calc((var(--card-i) - 1)*3deg));transition:transform 300ms cubic-bezier(.2,.8,.2,1)}
.street-cards>i:nth-child(even){color:#b48568}.street-cards-2>i{width:25px;height:35px;background:repeating-linear-gradient(45deg,#8da27e 0 2px,#c2d0b5 2px 3px);border:2px solid #fffdf1;left:calc(11px + var(--card-i)*20px);transform:rotate(calc((var(--card-i) - .5)*17deg))}
.street-stop:hover .street-cards>i{transform:translateY(calc(var(--card-i)*-1.5px)) rotate(calc((var(--card-i) - 1)*6deg))}
.concept-map{background:radial-gradient(ellipse at 50% 48%,#dfead7,transparent 60%),linear-gradient(145deg,#f6f5e9,#f7f8f0)}
.concept-constellation{height:300px;position:relative;margin-top:13px;isolation:isolate}
.concept-links{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:-1}.concept-links path{stroke:#aec29b;stroke-width:1.2;stroke-dasharray:4 6;animation:concept-flow 7s linear infinite;animation-delay:calc(var(--link-i)*-.6s)}
.concept-core{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);width:62px;height:62px;display:grid;place-items:center}
.concept-core>span{position:absolute;inset:0;border-radius:50%;border:1px solid #bfd0ae;box-shadow:0 0 0 7px #eaf0df80;animation:concept-breathe 4s ease-in-out infinite}
.concept-core img{position:relative;width:48px;height:48px;filter:drop-shadow(0 4px 6px #3c5e3825)}
.concept-node{position:absolute;transform:translate(-50%,-50%);width:92px;min-height:78px;padding:4px 2px;display:flex;align-items:center;flex-direction:column;justify-content:center;gap:4px;border-radius:14px;transition:background 180ms ease,box-shadow 180ms ease}
.concept-node:hover{background:#ffffffa6;box-shadow:0 4px 14px #57734a12}.concept-node:active{transform:translate(-50%,-50%) scale(.97)}
.concept-node-0{left:50%;top:12%}.concept-node-1{left:83%;top:38%}.concept-node-2{left:71%;top:79%}.concept-node-3{left:29%;top:79%}.concept-node-4{left:17%;top:38%}
.concept-node-art{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#edf2e5;border:1px solid #d3dfc5;box-shadow:0 2px 0 #d0dcc4}.concept-node-art>.situation-art{width:32px;height:33px;margin:0}
.concept-node>b{font-size:10px;line-height:1.25;font-weight:600;max-width:90px}.concept-node small{font-size:9px;color:#7b8d70;line-height:1.2}.concept-node small b{color:#527149}
.learning-result-totals{margin:18px 0 25px}.learning-result-totals>div{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}.learning-result-totals>div>span{color:var(--muted);font-variant-numeric:tabular-nums}
.learning-priorities .analysis-focus-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
@media(max-width:599px){.learning-maps{grid-template-columns:1fr;gap:16px;margin-top:18px}.learning-map{padding:18px 20px 14px}.street-journey{min-height:270px;margin-top:10px}.street-stop{grid-template-columns:30px 75px 1fr 16px}.concept-constellation{height:290px}.learning-map>footer{margin-top:4px}.learning-map h2{font-size:22px}}
.concept-four .concept-node-0{left:50%;top:10%}.concept-four .concept-node-1{left:85%;top:44%}.concept-four .concept-node-2{left:50%;top:82%}.concept-four .concept-node-3{left:15%;top:44%}
.concept-four .concept-node>b{font-size:12px}.concept-four .concept-node-art{width:38px;height:38px}.concept-four .concept-node-art>.situation-art{width:37px;height:38px}
.concept-setup-note{margin:-6px 0 18px;font-size:11px;line-height:1.6;color:var(--muted)}.concept-setup-note small{display:block;margin-top:4px;font-size:10px;color:#7c8f72}

/* One idea, one example: the optional pre-session concept explanation. */
.sheet-title-group{display:flex;align-items:center;gap:4px;min-width:0}.sheet-title-group h2{min-width:0}
.sheet-title-group>.icon-button{margin-left:-12px}
dialog[data-sheet="concept-intro"]{width:min(480px,calc(100vw - 32px))}
dialog[data-sheet="concept-intro"] .sheet-header{margin-bottom:0}
.concept-intro-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 4px}
.concept-intro-top>span{font-size:9px;font-weight:650;letter-spacing:1.7px;color:#819171}
.intro-skip{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:0 2px 0 12px;color:#65775d;font-size:12px}
.intro-skip .icon{width:14px;height:14px}
.concept-intro-idea{font-size:19px;letter-spacing:-.45px;line-height:1.4;max-width:340px;margin:0 0 20px}
.intro-example{margin:0 0 22px;border:1px solid #dbe4d1;border-radius:19px;background:radial-gradient(ellipse at 50% 40%,#e7eedc,transparent 75%),#f3f5ea;padding:8px 18px 17px;overflow:hidden}
.intro-example-bar{display:flex;align-items:center;justify-content:space-between;margin-right:-8px;color:#7a8b70}
.intro-example-bar>span{font-size:9px;letter-spacing:1.1px;text-transform:uppercase;font-weight:600}
.intro-example-bar .icon{width:16px;height:16px}
.intro-example figcaption{font-size:13px;line-height:1.6;text-align:center;color:#3e5839;font-weight:550;margin-top:14px}
.intro-example-note{display:block;text-align:center;color:#819073;font-size:10px;line-height:1.6;margin-top:7px}
.intro-illustration{min-height:184px;display:flex;flex-direction:column;justify-content:center;position:relative}
.intro-pot-flow{display:grid;grid-template-columns:1fr 14px 1fr 14px 1fr;align-items:center;gap:4px;position:relative;padding:4px 0 7px}
.intro-pot-box{display:flex;align-items:center;flex-direction:column;gap:9px;padding:9px 2px;border-radius:12px;background:#fdfdf4aa;border:1px solid #dce4d0}
.intro-pot-box>span:first-child{font-size:10px;color:#7b8b6e}.intro-pot-box>b{font-size:18px;white-space:nowrap;letter-spacing:-.5px}.intro-pot-box>b>small{font-size:10px;color:#7c8a70;letter-spacing:0;font-weight:500}
.intro-chip-stack{height:29px;display:flex;align-items:flex-end;justify-content:center}
.intro-math-sign{font-size:16px;color:#9aaa8c;text-align:center}
.intro-final-box{background:#e1ebd6;border-color:#b7caa5}
.intro-flying-chip{position:absolute;top:44px;left:50%;opacity:0;pointer-events:none}
.intro-odds-result{display:flex;align-items:center;justify-content:center;gap:14px;padding-top:17px}
.intro-quarter{width:44px;height:44px;border-radius:50%;background:conic-gradient(#6c8b58 25%,#d9e3cc 0);box-shadow:inset 0 0 0 1px #bacdae}
.intro-odds-result>div{display:flex;flex-direction:column;gap:3px}.intro-odds-result b{font-size:28px;line-height:1;letter-spacing:-1px}.intro-odds-result>div>span{font-size:10px;color:#7c8c70}
.intro-equity-chart>svg{display:block;width:220px;height:170px;margin:0 auto}
.intro-share-key{display:flex;justify-content:center;gap:20px;margin-top:2px}.intro-share-key>span{display:grid;grid-template-columns:7px auto;column-gap:6px;font-size:10px;color:#758469;align-items:center}.intro-share-key b{grid-column:2;color:#405a3b;font-size:13px;margin-top:3px}
.intro-share-key i{width:7px;height:7px;border-radius:50%;background:#658655}.intro-share-key>span+span i{background:#c5ad87}
.intro-ranges-compare{display:grid;grid-template-columns:1fr 20px 1fr;gap:9px;align-items:center;padding:7px 0}
.intro-ranges-compare>div>span:first-child{display:block;text-align:center;font-size:10px;color:#77876c;margin-bottom:11px}
.intro-range-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}
.intro-range-grid>i{display:grid;place-items:center;aspect-ratio:1;border-radius:4px;font-size:8px;font-weight:600;line-height:1;font-style:normal;background:#edf0e4;color:#a6b09a;border:1px solid #d8dfcd}
.intro-range-grid>i.included{background:#789762;border-color:#718e5c;color:#fffef5}
.intro-range-grid>i.range-expands{background:#b9cca2;border-color:#a7bf8a;color:#426139}
.intro-range-arrow{display:grid;place-items:center;color:#a0b18d}.intro-range-arrow .icon{width:18px;height:18px}
.intro-bluff-price{display:flex;justify-content:center;gap:22px;font-size:10px;color:#7a8a6d;margin-bottom:17px}.intro-bluff-price b{font-size:12px;color:#3f593a;margin-left:5px}
.intro-bluff-outcomes{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.intro-bluff-outcomes>div{display:flex;flex-direction:column;align-items:center;gap:7px;padding:13px 2px;border-radius:13px;border:1px solid #e0d9c6;background:#f1eddf}
.intro-outcome-icon{width:26px;height:26px;border-radius:50%;background:#e6decb;display:grid;place-items:center;color:#aa9270}.intro-outcome-icon>.icon{width:14px;height:14px}
.intro-bluff-outcomes>div>span:nth-child(2){font-size:10px;color:#8b7e66}.intro-bluff-outcomes b{font-size:23px;letter-spacing:-.6px;color:#8c7859}
.intro-bluff-outcomes>.intro-fold-outcome{border-color:#bdcfa9;background:#dfead2}.intro-fold-outcome .intro-outcome-icon{background:#c5d7b1;color:#62824f}.intro-bluff-outcomes>.intro-fold-outcome>span:nth-child(2){color:#698358}.intro-bluff-outcomes>.intro-fold-outcome>b{color:#526f40}
.intro-bluff-total{text-align:center;font-size:13px;color:#8a957e;margin-top:17px}.intro-bluff-total b{color:#4b6840;margin-left:6px}
@media(max-width:599px){dialog[data-sheet="concept-intro"]{width:100%;border-radius:23px 23px 0 0}.concept-intro-idea{font-size:19px}.intro-example{padding-left:14px;padding-right:14px}.intro-range-grid>i{font-size:8px}}

/* The expanded library lives one layer below the four familiar shortcuts. */
.concept-map>footer{display:flex;flex-direction:column;gap:4px;align-items:center}
.library-open{display:flex;align-items:center;justify-content:center;gap:12px;min-height:44px;color:#466840;font-size:13px;font-weight:650;padding:4px 10px;border-radius:10px}
.library-open:hover{background:#e4ecda}.library-open>.icon{width:17px;height:17px}.concept-map>footer>span{font-size:10px;color:#798b70}
dialog[data-sheet="concept-library"]{width:min(720px,calc(100vw - 32px))}
.library-lead{font-size:14px;color:#78886d;margin:0 0 23px}.library-group{border:1px solid #dce4d1;border-radius:17px;margin-bottom:12px;overflow:hidden;background:#f7f8ef}
.library-group>summary{list-style:none;display:flex;align-items:center;gap:12px;min-height:78px;padding:14px 17px;cursor:pointer}
.library-group>summary::-webkit-details-marker{display:none}.library-group>summary::after{display:none}
.library-group-number{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#e7eedb;color:#6a8658;font-size:11px;flex-shrink:0}
.library-group>summary>span:nth-child(2){flex:1;min-width:0}.library-group summary b{font-size:15px;letter-spacing:-.3px;display:block}.library-group summary small{font-size:10px;line-height:1.5;display:block;margin-top:4px;color:#7a8a70}
.library-group-count{font-size:11px;color:#7b8c71}.library-group summary>.icon{width:15px;height:15px;transition:transform 180ms ease;flex-shrink:0}.library-group[open] summary>.icon{transform:rotate(90deg)}
.library-cards{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 12px 12px}
.library-card{display:flex;text-align:left;align-items:center;gap:10px;padding:14px 10px;border:1px solid #dfe6d5;border-radius:12px;background:#fffff9;min-height:114px;transition:background 160ms,box-shadow 160ms}
.library-card:hover{background:#edf3e4;box-shadow:0 3px 10px #3b5b3210}.library-card>.icon{width:13px;height:13px;flex-shrink:0;color:#8da07b}
.library-glyph{width:38px;height:44px;flex-shrink:0;display:grid;place-items:center;background:linear-gradient(135deg,#f0f4e5,#dce7cc);border:1px solid #c8d6b8;border-radius:12px;box-shadow:0 2px 0 #ccd9be;color:#668452;font-size:19px;font-weight:600}
.library-glyph>.situation-art{width:38px;height:42px;margin:0}.library-card-copy{flex:1;min-width:0}.library-card-copy>b{display:block;font-size:12px;line-height:1.4;letter-spacing:-.15px}.library-card-copy>small{display:block;font-size:10px;line-height:1.55;color:#7e8d74;margin-top:4px}.library-card-copy>span{display:block;font-size:9px;color:#8b9b7e;margin-top:6px}.library-footnote{font-size:10px;text-align:center;color:#819175;margin:20px 0 0}
.lesson-diagram{width:100%;height:auto;display:block;overflow:visible;font-family:inherit;max-height:230px}
.lesson-diagram text{fill:#48633f;font-weight:550}.lesson-diagram .sage{fill:#dce8cb;stroke:#b5c99f;stroke-width:1}.lesson-diagram .sand{fill:#eee2cd;stroke:#d7c6a7;stroke-width:1}.lesson-diagram .paper{fill:#fffff6;stroke:#bfcea9;stroke-width:1}
.lesson-flow{fill:none;stroke:#8fa780;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:5 4}.lesson-cross{stroke:#a37a60;stroke-width:2;stroke-linecap:round}
.lesson-bar{transform-box:fill-box;transform-origin:bottom}.lesson-token{transform-box:fill-box;transform-origin:center}
@media(max-width:599px){dialog[data-sheet="concept-library"]{width:100%;border-radius:23px 23px 0 0}.library-cards{grid-template-columns:1fr}.library-card{min-height:94px;padding:13px}.library-card-copy>b{font-size:13px}.library-card-copy>small{font-size:11px}.library-group>summary{gap:9px;padding:13px 12px}.library-group summary small{font-size:10px}.library-group summary b{font-size:14px}.library-group-number{width:28px;height:28px}.lesson-diagram{min-height:166px}.sheet-title-group h2{font-size:21px;line-height:1.25}}

/* One learning surface: streets or a progressively revealed concept journey. */
.learning-hub{margin-top:24px;max-width:780px;margin-left:auto;margin-right:auto}
.learning-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:6px;border:1px solid #d5e0ca;background:#eaf0e2;border-radius:17px;margin-bottom:16px;isolation:isolate;overflow:hidden}
.learning-tabs>button{position:relative;border-radius:12px;min-height:50px;color:#6c7d61;font-size:13px;font-weight:600;isolation:isolate}
.learning-tabs>button>span:last-child{display:flex;align-items:center;justify-content:center;gap:9px;position:relative}
.learning-tabs .icon{width:17px;height:17px}.learning-tabs>button[aria-selected="true"]{color:#fffef5}
.learning-tab-highlight{position:absolute;inset:0;border-radius:inherit;z-index:-1;background:#4f7155;box-shadow:0 2px 5px #31503622}
.learning-tabs>button:focus-visible{outline:2px solid #345735;outline-offset:-2px}
.learning-tab-panel[hidden]{display:none}.learning-tab-panel:focus{outline:none}.learning-tab-panel:focus-visible{outline:2px solid #6e8b5d;outline-offset:3px;border-radius:22px}
.learning-tab-panel>.learning-map{padding:24px 24px 18px}.learning-tab-panel .learning-map h2{font-size:23px}
.path-streets .street-journey{max-width:500px;margin:26px auto 20px;min-height:390px;gap:20px}
.path-streets .street-stop{grid-template-columns:36px 90px 1fr 20px;min-height:76px;gap:14px}
.path-streets .street-node{width:36px;height:36px;font-size:12px}.path-streets .journey-thread{left:18px;top:44px;bottom:45px}
.path-streets .street-cards{transform:scale(1.15);transform-origin:center}.path-streets .street-stop-label>b{font-size:16px}.path-streets .street-stop-label small{font-size:11px}
.concept-path-map{background:radial-gradient(ellipse at 50% 22%,#e2ebd5,transparent 48%),linear-gradient(145deg,#f7f7ed,#f4f7ee)}
.concept-path-start{display:flex;align-items:center;justify-content:center;gap:14px;margin:23px 0 19px}
.concept-path-start>span{height:1px;max-width:80px;flex:1;background:linear-gradient(90deg,transparent,#bfcea9)}.concept-path-start>span:last-child{transform:rotate(180deg)}
.concept-path-start>img{border-radius:12px;box-shadow:0 3px 6px #405d3120}
.concept-chapters{position:relative;isolation:isolate}
.concept-chapters:before{content:'';position:absolute;left:33px;top:30px;bottom:45px;border-left:1px dashed #9eb78b;z-index:-1}
.concept-chapter{margin-bottom:16px;border:1px solid #d7e2c9;border-radius:19px;background:#f9faf2;overflow:hidden}
.concept-chapter.is-open{background:linear-gradient(140deg,#f9fbf3,#edf3e3);border-color:#c3d4b2;box-shadow:0 4px 16px #5d774309}
.concept-chapter>h3{margin:0}.chapter-toggle{display:flex;align-items:center;gap:12px;width:100%;min-height:80px;padding:15px 16px;text-align:left}
.chapter-number{width:33px;height:33px;flex:none;border:1px solid #c8d8b7;border-radius:50%;display:grid;place-items:center;background:#e7efdc;color:#789565;font-size:11px;font-weight:600}
.is-open .chapter-number{background:#55784f;color:#fffef5;border-color:#55784f;box-shadow:0 0 0 4px #e6eedb}
.chapter-title{flex:1;min-width:0}.chapter-title>b{font-size:15px;font-weight:600;display:block;line-height:1.3;letter-spacing:-.3px}.chapter-title>small{display:block;font-size:10px;font-weight:400;color:#809171;line-height:1.4;margin-top:4px}
.chapter-toggle>.icon{width:15px;height:15px;color:#88a076;flex:none;transition:transform 200ms}.is-open .chapter-toggle>.icon{transform:rotate(90deg)}
.chapter-preview{display:flex;align-items:center;gap:5px;margin:-4px 16px 17px 61px;pointer-events:none}.chapter-preview>span:not(.chapter-preview-more){display:grid;place-items:center;width:31px;height:31px;background:#edf3e2;border:1px solid #d4e0c6;border-radius:10px}
.chapter-preview .situation-art{width:27px;height:29px;margin:0}.chapter-preview-more{font-size:10px;color:#92a381;margin-left:4px}
.concept-trail{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(var(--path-rows),140px);margin:6px 10px 0}
.trail-lines{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.trail-lines path{vector-effect:non-scaling-stroke;stroke-width:1.4;stroke-linecap:round}.trail-base{stroke:#d6e3c6}.trail-flow{stroke:#96b37e;stroke-dasharray:4 8}
.trail-node{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:7px;min-width:0;padding:9px 6px 5px;border-radius:18px;position:relative;transition:background 180ms,transform 180ms}
.trail-token{position:relative;width:62px;height:62px;flex:none;display:grid;place-items:center;border:1px solid #c1d2ae;border-radius:21px;background:linear-gradient(140deg,#fffef0,#e2eccf);box-shadow:inset 1px 1px 1px #fffef8,0 4px 0 #c9d9b7,0 7px 12px #5378430c;transition:transform 240ms,box-shadow 240ms}
.trail-token>.situation-art{width:50px;height:54px;margin:0}
.trail-number{position:absolute;right:-5px;bottom:-6px;width:18px;height:18px;background:#f9fbf2;border:1px solid #c6d8b6;border-radius:50%;display:grid;place-items:center;font-size:8px;color:#789564;font-weight:600}
.trail-node>b{font-size:12px;font-weight:600;line-height:1.3;max-width:140px;margin-top:3px;text-align:center;letter-spacing:-.1px}.trail-node>small{font-size:9px;color:#8b9d7b;line-height:1;margin-top:-2px}
.trail-node:hover{background:#ffffff60}.trail-node:hover .trail-token{transform:translateY(-3px) rotate(-3deg);box-shadow:inset 1px 1px 1px #fffef8,0 6px 0 #c9d9b7,0 10px 16px #53784315}
.trail-node:focus-visible{outline:2px solid #638451;outline-offset:-2px}.has-practice .trail-token{border-color:#8daa79;background:linear-gradient(135deg,#e7f0db,#cfdcbb)}
.chapter-note{margin:0;padding:2px 12px 19px;text-align:center;font-size:10px;color:#829671;line-height:1.6}
.learning-tab-panel .concept-path-map>footer{margin-top:5px;font-size:10px}
@media(max-width:599px){.learning-hub{margin-top:18px}.learning-tabs{margin-bottom:13px}.learning-tabs>button{font-size:12px;min-height:48px}.learning-tab-panel>.learning-map{padding:20px 14px 16px}.learning-tab-panel .learning-map h2{font-size:21px}.learning-tab-panel .learning-map>header{padding:0 4px}.path-streets .street-journey{margin:20px 8px;min-height:340px}.path-streets .street-stop{grid-template-columns:30px 72px 1fr 16px;gap:9px}.path-streets .street-node{width:30px;height:30px}.path-streets .journey-thread{left:15px}.path-streets .street-cards{transform:scale(1)}.path-streets .street-stop-label>b{font-size:14px}.chapter-toggle{padding:14px 12px;gap:10px}.chapter-title>b{font-size:14px}.concept-trail{margin-left:4px;margin-right:4px}.trail-node>b{font-size:12px}.trail-token{width:60px;height:60px}.concept-chapters:before{left:29px}.chapter-preview{margin-left:55px}}
.learning-tabs{position:sticky;top:10px;z-index:3;box-shadow:0 4px 16px #455e2f08}

/* Choose the intent first; lessons are self-contained, short and unscored. */
.learning-choice-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.learning-choice-button{display:flex;flex-direction:column;align-items:center;gap:12px;padding:20px 12px;border-radius:15px;border:1px solid #ceddc2;background:#f3f7eb;text-align:center;min-height:174px;min-width:0;color:#496741}
.learning-choice-button>span{flex:1}.learning-choice-button b{display:block;font-size:17px;font-weight:600}.learning-choice-button small{display:block;font-size:11px;margin-top:5px;opacity:.8}.learning-choice-button>.icon{width:21px;height:21px}.learning-choice-button:hover{box-shadow:0 5px 15px #47623815;transform:translateY(-1px)}
dialog[data-sheet="study"]{width:min(500px,calc(100vw - 32px))}.study-progress{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:3px 0 18px}.study-progress>span{font-size:9px;letter-spacing:1.5px;font-weight:600;color:#849575}.study-progress>div{display:flex;gap:4px}.study-progress i{width:20px;height:4px;border-radius:4px;background:#dce6d1}.study-progress i.filled{background:#799767}
.study-idea{font-size:20px;line-height:1.35;letter-spacing:-.5px;margin:0 0 17px}.study-example{margin:0;border:1px solid #d4e1c7;border-radius:20px;padding:18px 16px;background:radial-gradient(ellipse at 50% 45%,#e6eed9,transparent 80%),#f4f7ec;overflow:hidden}
.study-visual{min-height:190px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px}.study-example figcaption{font-size:12px;text-align:center;line-height:1.6;margin-top:15px;color:#506e43;font-weight:500}.study-prompt{font-size:12px;font-weight:550;margin:19px 0 11px;color:#58714e}.study-assumption{font-size:10px;line-height:1.5;text-align:center;color:#8b997f;margin:12px 0 20px}
.study-controls{display:flex;gap:6px;flex-wrap:wrap}.study-controls>button{flex:1;min-width:65px;min-height:46px;border-radius:11px;border:1px solid #d4dfca;background:#fffef6;font-size:11px;padding:9px 7px;transition:background 160ms,transform 160ms}.study-controls>button.selected{border-color:#69885a;background:#e2ecd5;color:#3d6035;box-shadow:inset 0 0 0 1px #69885a30;font-weight:650}
.study-ring{width:130px;height:130px;background:conic-gradient(#789762 var(--share),#dfcbaa 0);border-radius:50%;display:grid;place-items:center;box-shadow:0 3px 8px #52733a10;flex-shrink:0}
.study-ring>div{width:105px;height:105px;border-radius:50%;background:#f3f6ea;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}.study-ring b{font-size:29px;line-height:1;letter-spacing:-1px}.study-ring span{font-size:9px;color:#809071;text-align:center}
.study-math-tiles{display:flex;width:100%;align-items:stretch;justify-content:center;gap:6px}.study-math-tile{display:flex;flex:1;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-width:0;padding:13px 4px;border:1px solid #c9d9b9;background:#e3ecd5;border-radius:12px;text-align:center}.study-math-tile b{font-size:20px;font-weight:600;letter-spacing:-.5px;white-space:nowrap}.study-math-tile span{font-size:9px;color:#7a8e69;line-height:1.3}.study-between{align-self:center;font-size:13px;color:#9caf8b}
.study-range-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;width:208px}.study-range-grid>span{aspect-ratio:1;display:grid;place-items:center;border:1px solid #d2dfc5;border-radius:8px;font-size:12px;color:#9aac8b;background:#eff4e7}.study-range-grid>span.included{background:#769562;color:#fffef2;border-color:#74925f}.study-range-grid>span.added{background:#b4c99b;color:#3f6033;border-color:#a5bf89}
.study-cards{display:flex;gap:6px;justify-content:center}.study-card{display:grid;place-items:center;width:42px;height:58px;border:1px solid #c6d6b6;border-radius:7px;background:#fffef5;box-shadow:0 3px 0 #cbd7bc;color:#54734a;font-size:19px;font-weight:600;flex-shrink:0}.study-card.red{color:#a8785c}.study-card.combination{font-size:13px;width:56px}
.study-journey{display:flex;align-items:center;gap:18px;width:100%;justify-content:center}.study-journey>span{display:flex;flex-direction:column;align-items:center;gap:12px}.study-journey small,.study-destination b{font-size:11px;color:#7e916f;text-align:center}.study-destination.stopped>.icon{width:54px;height:54px;border:1px solid #d6c7ac;border-radius:50%;padding:15px;color:#b49373;background:#eee4d0}.study-journey>.icon{width:24px;color:#93a782}
.study-distributions{width:100%;padding:10px 7px}.study-distributions>div{display:flex;align-items:center;gap:10px;margin:9px 0 18px}.study-distributions>div>b{font-size:13px;font-weight:500;color:#799066}.study-bars{display:flex;align-items:flex-end;justify-content:space-between;gap:9px;flex:1;height:70px;border-bottom:1px solid #cad7bb;padding:0 6px;opacity:.5;border-radius:5px 5px 0 0}.study-bars.focused{opacity:1;background:#e3edd65c;box-shadow:0 0 0 1px #b6cda0}.study-bars>i{width:25px;height:var(--bar-height);min-height:1px;background:#8da979;border-radius:5px 5px 0 0}.study-distributions>div:nth-child(2) .study-bars>i{background:#c7b187}.study-distributions footer{display:flex;justify-content:space-between;font-size:9px;color:#8c9c7e;padding-left:23px}.study-nuts .study-bars>i{opacity:.3}.study-nuts .study-bars>i:last-child{opacity:1;outline:2px solid #6f8c5a;outline-offset:4px}.study-nuts .study-bars{opacity:1}.single-distribution .study-bars{height:130px}.single-distribution footer{padding-left:0}
.study-board-label,.study-hero-label{font-size:10px;color:#829472;text-align:center}.study-hero-label{margin-bottom:-5px}.study-blocker-flow{display:flex;align-items:center;gap:7px;justify-content:center}.study-blocker-flow>div{position:relative;text-align:center}.study-blocker-flow small{display:block;font-size:9px;color:#889978;margin-bottom:9px}.study-blocker-flow>.icon{width:19px;color:#8ba679}.removed-combos .study-card{color:#abb59e;background:#e9efdf}.removed-combos .study-card:after{content:'';position:absolute;width:35px;height:1px;transform:rotate(-45deg);background:#af9175}.study-stack-compare{display:flex;align-items:center;gap:10px;width:100%;justify-content:center}.study-stack-compare>.study-math-tile{flex:none;width:70px}.study-stack{display:flex;flex-direction:column-reverse;gap:4px;min-height:120px;justify-content:flex-start;width:72px}.study-stack>i{height:26px;display:grid;place-items:center;border:1px solid #a9c190;background:#d4e3bf;border-radius:6px;font-size:9px;font-style:normal;color:#759462;box-shadow:0 2px 0 #bdcfa8}.study-pot-bets{display:flex;justify-content:space-around;font-size:10px;color:#839774;gap:15px}
.study-branch-origin{display:flex;align-items:center;gap:12px;flex-direction:column}.study-branch-origin small{font-size:10px;color:#809470}.study-branches{position:relative;display:flex;gap:16px;justify-content:center;width:100%;padding-top:17px}.study-branches:before{content:'';position:absolute;top:0;left:25%;width:50%;height:14px;border:1px dashed #a6bd92;border-bottom:0;border-radius:12px 12px 0 0}.study-branches>div{flex:1;display:flex;flex-direction:column;align-items:center;gap:5px;background:#edf2e3;border:1px solid #d6e2c9;border-radius:13px;padding:11px 4px;color:#8da17c}.study-branches>div.chosen{border-color:#86a26e;background:#dbe8c9;color:#51743c;box-shadow:0 3px 0 #c2d3ae}.study-branches .icon{width:17px;height:17px}.study-branches b{font-size:16px}.study-branches small{font-size:9px}
.study-position-table{width:252px;height:190px;position:relative}.study-felt{position:absolute;inset:19px 25px;border:7px solid #c6d6b3;border-radius:50%;background:radial-gradient(#dfebcd,#c9dbb6);box-shadow:0 4px 0 #adc197;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}.study-felt>span{font-size:9px;color:#80966d}.study-felt .study-card{width:29px;height:39px;font-size:15px}.study-seat{position:absolute;min-width:44px;min-height:29px;border:1px solid #bdcfa8;background:#f4f8eb;border-radius:10px;display:grid;place-items:center;font-size:10px;color:#8c9e7b;transform:translate(-50%,-50%)}.study-seat.selected{background:#54784b;color:#fffef2;border-color:#54784b;box-shadow:0 0 0 4px #dfeacc}.study-seat.seat-0{left:24%;top:13%}.study-seat.seat-1{left:76%;top:13%}.study-seat.seat-2{left:94%;top:50%}.study-seat.seat-3{left:76%;top:87%}.study-seat.seat-4{left:24%;top:87%}.study-seat.seat-5{left:6%;top:50%}
.study-texture{font-size:24px;color:#a98469;margin:10px 0}.study-hand-badge{font-size:12px;color:#63814d;border:1px solid #c9d9b7;background:#e0eccf;border-radius:20px;padding:8px 15px}
.study-question{font-size:22px;letter-spacing:-.5px;line-height:1.4;margin:10px 0 23px;font-weight:550}.study-options{display:grid;gap:10px;margin-bottom:18px}.study-option{display:flex;gap:12px;align-items:center;text-align:left;padding:15px 13px;min-height:60px;border:1px solid #d6e0cb;border-radius:12px;background:#fbfcf4;font-size:14px}.study-option>span:nth-child(2){flex:1}.study-option-letter{display:grid;place-items:center;width:26px;height:26px;border:1px solid #d0ddc3;border-radius:8px;font-size:10px;flex:none;color:#829771}.study-option>.icon{width:18px;height:18px}.study-option:disabled{opacity:1;cursor:default}.study-option.correct{background:#e4efd7;border-color:#97b380;color:#4b7038}.study-option.incorrect{background:#f2e9db;border-color:#cfb695;color:#94734c}.study-answer-feedback{padding:15px 16px;border-radius:12px;background:#f2eddf;color:#8a7455;margin:0 0 18px}.study-answer-feedback.correct{background:#ebf2e2;color:#587447}.study-answer-feedback b{display:flex;align-items:center;gap:8px;font-size:14px}.study-answer-feedback .icon{width:17px;height:17px}.study-answer-feedback p{font-size:12px;line-height:1.65;margin:8px 0 0}.study-answer-feedback:focus,.study-question:focus,.study-idea:focus,.study-complete h3:focus{outline:none}
.study-complete{text-align:center;padding:22px 10px 29px}.study-complete-mark{display:grid;place-items:center;width:70px;height:70px;border:1px solid #bbcea6;background:linear-gradient(135deg,#eef6e1,#d7e5c4);border-radius:24px;margin:0 auto 20px;box-shadow:0 4px 0 #c7d9b2}.study-complete-mark>.icon{width:32px;height:32px;color:#698c50}.study-complete h3{font-size:28px;letter-spacing:-.6px;margin:0 0 9px}.study-complete p{font-size:13px;color:#7b906c;line-height:1.6}.study-lesson>.secondary{margin-top:10px}.study-done{min-height:44px;margin:8px auto 0;display:flex;justify-content:center}
@media(max-width:599px){dialog[data-sheet="study"]{width:100%;border-radius:23px 23px 0 0}.study-idea{font-size:19px}.study-example{padding:16px 12px}.study-question{font-size:20px}.study-math-tile b{font-size:18px}.study-stack-compare{gap:7px}.study-stack-compare>.study-math-tile{width:65px}}
.study-card{position:relative}.removed-combos .study-card:after{left:50%;top:50%;transform:translate(-50%,-50%) rotate(-45deg)}
.study-lesson-nav{display:flex;gap:9px}.study-lesson-nav>.primary{flex:1;min-width:0}.study-previous{width:48px;flex:none;min-height:48px;border:1px solid #c9d8be;border-radius:13px;background:#edf3e5;display:grid;place-items:center}.study-previous .icon{width:20px;height:20px}
.study-skip{display:flex;justify-content:center;align-items:center;min-height:44px;margin:8px auto 0;font-size:12px}.study-check-count{display:block;text-align:center;font-size:11px;color:#6d805f;margin-top:13px}
.study-token-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;width:100%;max-width:290px}.study-token-grid>span{min-height:42px;display:grid;place-items:center;padding:8px 4px;border-radius:9px;border:1px solid #b6ca9e;background:#e1eccf;color:#46633b;font-size:12px;text-align:center;font-weight:500}.study-token-grid>span.excluded{background:#f3f5ed;border-color:#dbe3d0;color:#839276;text-decoration:line-through;opacity:.68}
.study-action-flow{display:grid;gap:11px;width:100%;max-width:290px}.study-action-flow>span{display:flex;align-items:center;gap:12px;font-size:13px;color:#4c6b3f;background:#edf3e4;border:1px solid #c9d9b9;border-radius:13px;padding:10px 12px;position:relative}.study-action-flow>span+span:before{content:'';position:absolute;left:26px;top:-12px;height:11px;border-left:1px dashed #8fa77a}.study-action-flow i{display:grid;place-items:center;width:25px;height:25px;flex:none;border-radius:50%;background:#d6e5c2;font-size:10px;font-style:normal}
.study-meter{width:100%;margin:9px 0 3px}.study-meter-track{height:21px;border-radius:7px;background:#e4dbc6;position:relative;box-shadow:inset 0 1px 2px #66784b16}.study-meter-track>span{display:block;width:var(--amount);height:100%;border-radius:7px;background:linear-gradient(90deg,#b4ca95,#719061)}.study-price-mark{position:absolute;height:33px;top:-6px;width:2px;background:#9e6f48;transform:translateX(-50%)}.study-roll-mark{position:absolute;width:13px;height:13px;border:2px solid #fffef6;background:#34533b;top:4px;transform:translateX(-50%) rotate(45deg);box-shadow:0 1px 5px #25472640}.study-meter-key{display:flex;justify-content:space-between;gap:9px;margin-top:13px;font-size:10px;line-height:1.45;color:#536e43}.study-meter-key>span+span{color:#976f4a;text-align:right}
.study-composition{display:flex;width:100%;gap:4px;height:32px;border-radius:8px;overflow:hidden}.study-composition>span{flex-basis:0;min-width:0;background:#82a366}.study-composition .segment-1{background:#cfad7a}.study-composition .segment-2{background:#dce4d2}
.study-review{border:1px solid #d7e1cc;border-radius:13px;margin:0 0 18px;padding:0 14px}.study-review summary{min-height:48px;display:flex;align-items:center;justify-content:space-between;font-size:13px;cursor:pointer}.study-review summary .icon{width:16px}.study-review>div{border-top:1px solid #dce5d2;padding:15px 0}.study-review b{font-size:12px;font-weight:550;display:flex;align-items:flex-start;gap:8px;line-height:1.5}.study-review b .icon{width:16px;height:16px;flex:none;color:#799866;margin-top:1px}.study-review p{font-size:13px;margin:9px 0 5px;color:#4f7041}.study-review small{font-size:12px;line-height:1.6;color:#75866a;display:block}.study-sources{margin-top:10px;font-size:11px;color:#708565}.study-sources summary{min-height:44px;cursor:pointer;display:flex;align-items:center;justify-content:center}.study-sources a{display:flex;align-items:center;justify-content:space-between;min-height:44px;gap:10px;color:#4f7041;padding:10px;text-decoration:underline;text-underline-offset:3px}.study-sources .icon{width:14px;height:14px;flex:none}
.study-math-tile b{white-space:normal;overflow-wrap:anywhere}.study-visual:has(.study-meter){min-height:170px}.study-example:has(.study-token-grid) .study-visual{min-height:180px}

.study-review>summary::after{display:none}.study-review[open]>summary>.icon{transform:rotate(90deg)}
.practice-mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:5px;background:#e9efdf;border:1px solid #d5e0c9;border-radius:14px;margin-bottom:23px}.practice-mode-tabs>button{min-height:44px;padding:9px;border:0;border-radius:10px;background:transparent;font-size:13px;color:#6c805d}.practice-mode-tabs>button.selected{background:#4f7359;color:#fff;box-shadow:0 2px 5px #3f644b20}
.question-setup-lead{font-size:21px;letter-spacing:-.5px;margin:6px 0 24px}.question-focus-hint{display:flex;gap:8px;align-items:center;color:#607c4f;font-size:12px}.question-focus-hint .icon{width:17px;height:17px}
.learning-pulse{display:flex;gap:17px;align-items:center;border:1px solid #dce5d2;background:#f3f6ec;border-radius:17px;padding:15px 18px;margin:18px 0 25px}.learning-pulse>div{display:grid;grid-template-columns:22px auto;gap:4px 6px}.learning-pulse>div>span{grid-row:1/3;align-self:center;display:grid;place-items:center}.learning-pulse .icon{width:17px;height:17px;color:#769564}.learning-pulse b{font-size:19px;line-height:1}.learning-pulse small{font-size:10px;color:#6e825f}.learning-pulse>.text-link{margin-left:auto;min-height:44px;font-size:12px;display:flex;align-items:center;gap:6px;text-align:right}
.question-wait,.question-empty{text-align:center;padding:28px 5px}.question-wait>.icon{width:36px;height:36px;color:#759565}.question-wait h3,.question-empty h3{font-size:24px;letter-spacing:-.5px}.question-wait p,.question-empty p{font-size:13px;line-height:1.6;color:#718563}.question-context{display:flex;gap:7px;flex-wrap:wrap;margin:20px 0}.question-context>div{flex:1;min-width:80px;border:1px solid #ccdbbd;background:linear-gradient(135deg,#eef4e4,#e2eccf);border-radius:13px;text-align:center;display:flex;flex-direction:column;gap:7px;justify-content:center;padding:14px 8px;box-shadow:0 3px 0 #d4dfc7}.question-context b{font-size:19px;line-height:1.25;color:#395a3e;overflow-wrap:anywhere}.question-context small{font-size:10px;line-height:1.4;color:#6a815b}.question-round .study-question{font-size:21px;margin-bottom:10px}.question-kind{letter-spacing:1px!important;color:#5f7f4e!important}.question-assumptions{font-size:11px;line-height:1.6;color:#7b8b6c;margin:0 0 22px}.question-track{height:4px;background:#e3ead9;border-radius:5px;overflow:hidden}.question-track>i{display:block;height:100%;background:#71915c;border-radius:5px}.question-save-note{display:block;text-align:center;font-size:10px;color:#7a8c6b;margin-top:17px}.question-error{border:1px solid #c7aa82;background:#f5ecdf;border-radius:12px;padding:12px;margin:14px 0}.question-error p{font-size:12px;line-height:1.5}.question-saving{font-size:12px;text-align:center;color:#6e835f}.pending-answer{border-color:#829d6d;background:#e6eedb}.question-result-dots{display:flex;gap:9px;justify-content:center;margin:0 0 25px;flex-wrap:wrap}.question-result-dots>span{width:33px;height:33px;display:grid;place-items:center;border-radius:50%;background:#e1edcf;color:#5d7c48}.question-result-dots>span.revisit{background:#efe0cb;color:#9b7950}.question-result-dots .icon{width:17px;height:17px}
@media(max-width:380px){.learning-pulse{gap:12px;padding:12px}.learning-pulse>.text-link{font-size:11px;max-width:120px}.question-context>div{padding:12px 5px}.question-context b{font-size:17px}}

.saved-question-rounds{margin-top:20px;border-top:1px solid #dce4d4;padding-top:12px;font-size:12px;color:#6d825f}.saved-question-rounds summary{cursor:pointer;min-height:44px;align-content:center}.saved-question-rounds button{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;text-align:left}.saved-question-rounds small{margin-left:auto}.saved-question-rounds .icon{width:17px;height:17px}

/* A short introduction, with personality in the choices. */
.welcome-shell .page-content:has(.welcome-simple){min-height:calc(100dvh - 100px);display:grid;align-items:center;padding-bottom:70px}
.welcome-shell .welcome-simple{width:100%;max-width:440px;margin:0 auto}
.welcome-simple>.eyebrow{text-align:center;font-size:10px;letter-spacing:2px;margin:0 0 14px}
.welcome-simple h1{text-align:center;font-size:clamp(30px,5vw,40px);letter-spacing:-1.4px}
.welcome-simple .experience-options{margin:32px 0 24px;gap:14px}
.welcome-simple .experience-choice{width:100%;min-height:112px;padding:14px 18px 14px 14px;gap:17px;background:#fffef977;border-color:#d5dfcf;border-radius:20px}
.welcome-simple .experience-choice.selected{background:#e9f0e4;border-color:#6e9178;box-shadow:0 4px 16px #36513c09}
.player-portrait{width:76px;height:76px;flex:none;display:block}
.player-portrait svg{display:block;width:100%;height:100%;overflow:visible}
.player-choice-copy{flex:1}
.welcome-simple .experience-choice b{font-size:16px;letter-spacing:-.2px}
.welcome-simple .experience-choice small{font-size:12px;margin-top:5px}
.player-choice-check{display:grid;place-items:center;width:23px;height:23px;border:1px solid #becdb9;border-radius:50%;flex:none;color:transparent}
.player-choice-check .icon{width:14px;height:14px}
.selected .player-choice-check{background:var(--accent);border-color:var(--accent);color:#fffef8}
.welcome-edit-note{text-align:center;font-size:11px;color:var(--muted);margin-top:18px}
@media(max-width:480px){.welcome-shell .page-content:has(.welcome-simple){padding:32px 24px 58px;min-height:calc(100dvh - 76px)}.welcome-simple .experience-choice{padding:13px 14px;gap:13px;min-height:102px}.player-portrait{width:64px;height:64px}.welcome-simple .experience-choice b{font-size:15px}}

/* Settings: related preferences share a compact, clearly named group. */
.settings-groups{display:grid;gap:14px;margin-top:16px}
.settings-group{border:1px solid var(--line);border-radius:16px;background:#fffef960;padding:16px}
.settings-group>h3{font-size:13px;letter-spacing:.1px;margin-bottom:7px;color:var(--accent)}
.settings-group .settings-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;position:relative;margin:0;padding:10px 0}
.settings-row-label{font-size:12px;margin:0;line-height:1.5;font-weight:500}
.settings-row .choice-chips{justify-content:flex-end;flex-wrap:nowrap;gap:4px}
.settings-group .choice-chips{padding:3px;background:#e9eee45e;border:1px solid #dce3d6;border-radius:11px;gap:3px;flex-wrap:nowrap}
.settings-group .choice-chips>button{min-height:38px;padding:8px 10px;border:1px solid transparent;border-radius:8px;font-size:11px;background:transparent}
.settings-group .choice-chips>button.selected{background:#fffef8;border-color:#b7c8ad;color:var(--accent);box-shadow:0 1px 3px #2944300d}
.settings-provider-note{font-size:10px;line-height:1.6;color:var(--muted);margin-top:8px}
.settings-account>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;min-height:36px}
.settings-account>summary::-webkit-details-marker{display:none}
.settings-account>summary b{font-size:13px;font-weight:550}
.settings-account>summary small{display:block;font-size:10px;color:var(--muted);margin-top:4px;overflow-wrap:anywhere}
.settings-account>summary>.icon{width:16px;height:16px;color:var(--muted);flex:none;transform:rotate(-90deg)}
.settings-account[open]>summary>.icon{transform:rotate(0)}
.settings-account-content{margin-top:16px}
.settings-account .account-panel{padding:12px;margin-bottom:12px;background:var(--soft)}
.settings-account .account-panel .account-actions{margin-top:4px}
.settings-account .account-panel .account-actions .text-link{font-size:11px;min-height:36px}
.settings-account .disclosure{font-size:12px;min-height:44px}
dialog[data-sheet="settings"] .sheet-content>.primary{min-height:48px;margin-top:16px}
@media(max-width:374px){.settings-group{padding:13px}.settings-group .settings-row{gap:8px}.settings-group .choice-chips>button{padding:8px;font-size:10px}.settings-row-label{font-size:11px}}

/* Contextual illustrations share a palette and consistent proportions. */
.guide-art{position:relative;display:inline-grid;place-items:center;width:116px;height:110px;flex:none;isolation:isolate;vertical-align:middle}
.learning-choice-actions{gap:14px}
.learning-choice-button{position:relative;padding:16px 10px 14px;min-height:222px;gap:9px;border-radius:21px;background:linear-gradient(150deg,#fffef9,#edf3e5);box-shadow:0 4px 0 #dfe7d6;overflow:visible}
.learning-choice-button>span:not(.guide-art){flex:1}
.learning-choice-button>.guide-art{flex:none;width:110px;height:100px}
.learning-choice-button>.icon{width:18px;height:18px;margin-top:8px}
.learning-choice-button small{line-height:1.5;max-width:150px;margin:5px auto 0}
.learning-choice-button:focus-visible{border-color:#709369;box-shadow:0 4px 0 #c8d7bc,0 0 0 4px #dce9ce88}
.learning-choice-button:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 #dfe7d6}
.drills-new .drills-guide{height:152px;display:grid;place-items:center;margin:0 auto 8px}
.drills-guide .guide-art{width:165px;height:150px}


.drills-guide .spark-one{width:23px;height:23px;right:4px;top:10px}
.drills-guide .spark-two{width:15px;height:15px;left:0}
.feedback-panel .verdict>.guide-art{width:60px;height:58px;margin-right:3px}




.recap-heading .recap-guide{display:grid;place-items:center;width:130px;height:120px;background:transparent;border:0;box-shadow:none;margin:0 auto 15px}
.recap-guide .guide-art{width:130px;height:120px}

.study-guide-idea{display:flex;align-items:center;gap:13px;margin:5px 0 16px}
.study-guide-idea .guide-art{width:72px;height:70px}


.study-guide-idea .study-idea{flex:1;margin:0;font-size:19px}

.study-complete>.guide-art,.question-empty>.guide-art{display:grid;margin:0 auto 12px}
.question-guide{text-align:center;margin:4px 0 0}
.question-guide+.question-setup-lead{text-align:center;margin-top:5px}
.question-wait>.guide-art{display:grid;margin:auto}
.study-answer-feedback>b{display:flex;align-items:center;gap:9px}
.study-answer-feedback .guide-art{width:46px;height:44px}


.study-answer-feedback .guide-art svg{width:100%;height:100%}
.intro-guide-label{display:flex;align-items:center;gap:7px}
.intro-guide-label .guide-art{width:52px;height:50px}


.settings-group>h3{display:flex;align-items:center;gap:8px}
.settings-group>h3>.icon{width:16px;height:16px}
@media(max-width:374px){.learning-choice-actions{gap:10px}.learning-choice-button{padding:12px 8px;min-height:212px}.learning-choice-button>.guide-art{width:94px;height:94px}.learning-choice-button b{font-size:15px}.learning-choice-button small{font-size:10px}.study-guide-idea{gap:9px}.study-guide-idea .study-idea{font-size:17px}}

.activity-illustration{display:block;width:100%;height:100%;overflow:visible}
.drills-guide:before{display:none}
.feedback-panel .verdict>.activity-art{width:40px;height:40px}
.study-answer-feedback .activity-art{width:34px;height:34px}
.activity-art{pointer-events:none}
.art-card-back{transform:rotate(-13deg);transform-origin:45px 70px}
.art-card-front{transform:rotate(12deg);transform-origin:74px 75px}

/* Decision feedback is a compact, explorable result card. */
.decision-feedback{--result:#557b50;--result-tint:#eef5e8;border:1px solid #d6e2cc;border-radius:21px;padding:18px;background:#fffef9;box-shadow:0 5px 0 #e7ecdf;text-align:left}
.decision-feedback.feedback-mixed{--result:#52766b;--result-tint:#ebf3ed;border-color:#ccdcd2}
.decision-feedback.feedback-revisit{--result:#927043;--result-tint:#f8f0e2;border-color:#e5d7c0}
.decision-feedback.feedback-neutral{--result:#768172;--result-tint:#f0f2eb;border-color:#dce0d6}
.feedback-heading{display:flex;align-items:center;gap:10px;margin-bottom:15px}
.feedback-heading>.activity-art{width:48px;height:48px;flex:none}
.feedback-heading h2{font-size:19px;letter-spacing:-.45px;line-height:1.25;color:var(--ink)}
.feedback-heading p{font-size:11px;line-height:1.5;margin-top:5px;color:var(--muted)}
.feedback-comparison{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 7px;padding-top:10px;border-top:1px solid var(--line);font-size:11px;line-height:1.6;color:var(--muted)}
.feedback-comparison b{font-weight:600;color:var(--ink)}
.feedback-footer{display:flex;align-items:center;margin-top:16px}.feedback-footer>.feedback-next{width:100%}
.feedback-review{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted);min-height:46px;padding:8px 0}
.feedback-review>.icon{width:15px;height:15px}
.feedback-next{min-height:46px;font-size:12px;padding:10px 13px;border-radius:11px}

.feedback-hand-totals{display:flex;gap:9px;flex-wrap:wrap;margin:12px 0 18px}
.feedback-hand-totals>span{flex:1;padding:12px;background:var(--result-tint);border-radius:10px;font-size:10px;color:var(--muted);text-align:center}
.feedback-hand-totals b{display:block;font-size:22px;color:var(--result);margin-bottom:4px}
@media(max-width:374px){.decision-feedback{padding:14px}.feedback-heading h2{font-size:17px}.feedback-footer{gap:12px}}
.decision-feedback summary::after{display:none}

/* Ranges teaching pilot: a complete example on each step, without required controls. */
.range-step-track{display:flex;gap:12px;justify-content:space-between;margin:0 0 18px}
.range-step-track>span{display:flex;align-items:center;gap:6px;color:#697969;font-size:10px}
.range-step-track i{width:22px;height:22px;display:grid;place-items:center;border:1px solid #d7dfcf;border-radius:50%;font-size:10px;font-style:normal;background:#f1f4ea}
.range-step-track .current{color:#365b40;font-weight:650}.range-step-track .current i{background:#4e7358;border-color:#4e7358;color:white}.range-step-track .complete i{background:#e1ebd8;color:#4e7358}
.ranges-guide .study-idea{font-size:25px;letter-spacing:-.6px;line-height:1.2;margin:0 0 10px;font-weight:600}
.range-intro{font-size:13px;line-height:1.7;color:#57685b;margin:0 0 16px}
.range-diagram{margin:0 0 16px;padding:15px;border:1px solid #d5dfcb;border-radius:17px;background:#f0f4e8}
.range-diagram figcaption{font-size:10px;line-height:1.65;color:#65755d;margin:15px 0 0;text-align:center}
.range-diagram-label{font-size:12px;text-align:center;color:#46614b;margin:10px 0 0;font-weight:550}
.range-unknown{display:flex;justify-content:center;padding-top:5px}
.range-unknown>span{display:grid;place-items:center;width:37px;height:49px;background:repeating-linear-gradient(45deg,#688975,#688975 3px,#72927e 3px,#72927e 5px);border:3px solid #fffdf3;border-radius:7px;color:#fffef3;font-size:22px;box-shadow:0 3px 0 #c9d4c0;transform:rotate(-9deg)}
.range-unknown>span+span{transform:rotate(9deg);margin-left:-5px}
.range-branch{height:17px;width:70%;margin:11px auto 0;border:1px solid #b5c7ab;border-bottom:0;border-radius:9px 9px 0 0;position:relative}.range-branch::before{content:'';position:absolute;height:17px;border-left:1px solid #b5c7ab;left:50%}
.range-hand-families{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.range-hand-families>div{display:flex;flex-direction:column;align-items:center;gap:7px;background:#fffdf6;border:1px solid #d0dcc6;border-radius:10px;padding:10px 4px}
.range-hand-families b{font-size:14px;color:#35573d}.range-hand-families span{font-size:10px;color:#6d7b62}
.range-note{border-left:3px solid #8fa97b;padding:1px 0 1px 13px;margin:0 0 16px}.range-note>b{font-size:11px;color:#4e6d45}.range-note p{font-size:12px;line-height:1.7;margin:5px 0 0;color:#435747}
.range-table-note{font-size:12px;line-height:1.7;color:#5e6d5c;margin:0 0 16px}.range-table-note>b{color:#344f3e;font-weight:600;margin-right:5px}
.range-diagram-heading{display:flex;align-items:center;gap:8px;color:#4f664a;font-size:10px;margin-bottom:17px}.range-diagram-heading>b{font-size:22px;letter-spacing:-.5px;color:#36573c}.range-diagram-heading>strong{margin-left:auto;background:#dfead4;border-radius:20px;padding:6px 9px;font-size:11px}
.range-suited-hands{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.range-card-pair{display:flex;justify-content:center;gap:3px}.range-playing-card{display:flex;flex-direction:column;justify-content:center;align-items:center;width:31px;height:45px;border-radius:5px;background:#fffef8;border:1px solid #d6deca;box-shadow:0 2px 0 #d5deca;color:#304838;font-size:16px;font-weight:650;line-height:1.2}.range-playing-card>span{font-size:16px}.range-playing-card.is-red{color:#b2474b}
.range-offsuited{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:22px 0 13px;padding-top:16px;border-top:1px solid #d5dfca}.range-offsuited>div{display:flex;flex-direction:column;gap:4px}.range-offsuited b{font-size:17px;color:#36573c}.range-offsuited span{font-size:10px;color:#64745c}.range-offsuited>strong{font-size:12px;font-weight:500;color:#52674c}.range-offsuited-example{display:flex;align-items:center;gap:14px}.range-offsuited-example>span:last-child{font-size:11px;line-height:1.6;color:#607258}
.range-update-head,.range-weight-row{display:grid;grid-template-columns:64px 1fr 1fr;gap:12px;align-items:center}.range-update-head{font-size:10px;color:#61745a;margin-bottom:13px}.range-update-head b{font-weight:550}.range-weight-row{margin:10px 0}.range-weight-row>b{font-size:13px;color:#3c5842}.range-weight-row>div{position:relative;height:29px;display:flex;align-items:center;justify-content:flex-end;background:#e5eadd;border-radius:6px;overflow:hidden}.range-weight-row i{position:absolute;inset:0 auto 0 0;width:var(--weight);background:#bdcbb0;border-radius:5px}.range-weight-row .range-weight-after i{background:#789968}.range-weight-row span{position:relative;font-size:11px;padding-right:8px;color:#3c5439}
.range-update-key{display:flex;justify-content:space-between;gap:10px;font-size:9px;color:#68785f;margin-top:15px}.range-update-key>span:last-child{text-align:right}
.range-extra{margin:0 0 15px;border-top:1px solid #dce4d4}.range-extra summary{font-size:12px;gap:10px}.range-extra summary::after{display:none}.range-extra .icon{width:15px;height:15px;flex:none}.range-extra[open] .icon{transform:rotate(90deg)}.range-extra p{font-size:12px;line-height:1.7;margin:0 0 12px}
.range-check-note{text-align:center;font-size:10px;color:#6a7a62;margin:11px 0 0}
@media(max-width:399px){.range-step-track{gap:7px}.range-step-track>span{font-size:9px;gap:4px}.range-diagram{padding:13px}.range-playing-card{width:25px;height:40px;font-size:14px}.range-card-pair{gap:2px}.range-hand-families b{font-size:12px}.range-hand-families span{font-size:9px}.range-update-head,.range-weight-row{grid-template-columns:54px 1fr 1fr;gap:8px}}

/* Phone lessons: readable diagrams, comfortable targets, and reachable navigation. */
@media(max-width:599px){
 dialog[data-sheet="study"]:has(.ranges-guide),dialog[data-sheet="questions"]{width:100%;max-height:100dvh;margin:0;border-radius:0}
 dialog[data-sheet="study"]:has(.ranges-guide) .sheet,dialog[data-sheet="questions"] .sheet{max-height:100dvh;padding:10px 18px max(18px,env(safe-area-inset-bottom));scroll-padding-block:70px 90px}
 dialog[data-sheet="study"]:has(.ranges-guide) .sheet-header,dialog[data-sheet="questions"] .sheet-header{position:sticky;top:-10px;z-index:3;background:var(--paper);padding:9px 0;margin-bottom:16px;box-shadow:0 5px 0 var(--paper)}
 .ranges-guide .study-idea{font-size:25px;line-height:1.25}
 .range-intro,.range-note p,.range-table-note{font-size:14px;line-height:1.65}
 .range-note>b{font-size:12px}.range-diagram figcaption{font-size:11px;line-height:1.6}
 .range-step-track>span{font-size:11px;gap:5px}.range-step-track{gap:6px}
 .range-suited-hands{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 10px}
 .range-playing-card{width:36px;height:49px;font-size:18px}.range-card-pair{gap:4px}
 .range-diagram-heading{flex-wrap:wrap;font-size:11px}.range-diagram-heading>strong{font-size:12px}
 .range-offsuited{align-items:flex-start;flex-wrap:wrap}.range-offsuited>strong{font-size:13px}.range-offsuited-example>span:last-child{font-size:12px}
 .range-hand-families b{font-size:14px}.range-hand-families span{font-size:10px}
 .range-update-head,.range-weight-row{grid-template-columns:62px 1fr 1fr;gap:8px}.range-update-head{font-size:11px}.range-weight-row>div{height:34px}.range-weight-row span{font-size:12px}
 .range-update-key{flex-direction:column;font-size:10px;gap:4px}.range-update-key>span:last-child{text-align:left}
 .range-extra summary{font-size:13px;min-height:48px}.range-extra p{font-size:14px}
 .ranges-guide .study-lesson-nav{position:sticky;bottom:calc(-1 * max(18px,env(safe-area-inset-bottom)));z-index:2;background:var(--paper);padding:12px 0 max(12px,env(safe-area-inset-bottom));margin-top:12px;border-top:1px solid #dce4d4}
 .ranges-guide .study-lesson-nav>.primary{font-size:14px;white-space:normal;line-height:1.4;min-height:52px}.ranges-guide .study-previous{min-width:48px;min-height:52px}
 .range-check-note{font-size:12px}.ranges-guide .study-skip{font-size:13px}
 .question-round .study-question{font-size:22px;line-height:1.35}.question-round .study-option{font-size:15px;line-height:1.55;min-height:56px;padding:14px 12px;overflow-wrap:anywhere}
 .question-round .study-progress{flex-wrap:wrap;gap:8px}.question-round .study-progress>span{font-size:10px;letter-spacing:.8px}
 .question-round .question-assumptions,.question-round .study-answer-feedback p{font-size:13px;line-height:1.65}
 .question-round .question-context{flex-wrap:wrap;gap:8px}.question-round .question-context>div{flex:1 1 110px;min-width:0}.question-round .question-context small{font-size:11px}
 .question-round .study-option-letter{width:28px;height:28px}.question-round .study-option>span:nth-child(2){min-width:0}
}
@media(max-width:359px){
 .range-step-track>span{font-size:10px;gap:3px}.range-step-track i{width:19px;height:19px}
 .range-hand-families{gap:5px}.range-hand-families b{font-size:12px}.range-hand-families span{font-size:9px}
 .range-update-head,.range-weight-row{grid-template-columns:50px 1fr 1fr;gap:6px}
}

.question-navigation{display:flex;align-items:stretch;gap:10px;margin-top:18px}
.question-navigation>button{width:auto;min-width:0;flex:1;min-height:48px;padding:12px 10px;font-size:13px;white-space:normal;line-height:1.4}
.question-navigation>button:only-child{flex:0 1 auto;min-width:130px}
.question-navigation .icon{width:17px;height:17px;flex:none}
@media(max-width:599px){.question-navigation>button{min-height:52px;font-size:13px}}
.question-progress{margin-bottom:8px}
.question-back{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:44px;min-width:96px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;color:var(--accent);font-size:12px}
.question-back>.icon{width:15px;height:15px}
.question-back:hover:not(:disabled){background:var(--soft)}

/* Explain first; diagrams are readable without manipulating controls. */
.topic-guide .topic-examples{display:grid;gap:12px;margin:18px 0 8px}
.topic-guide .topic-example{margin:0;padding:16px;border-radius:18px;min-width:0}
.topic-example-label{font-size:11px;font-weight:700;color:var(--accent);margin-bottom:12px}
.topic-guide .study-visual{min-height:0;gap:14px}
.topic-guide .study-math-tiles{width:100%;gap:8px;flex-wrap:wrap}
.topic-guide .study-math-tile{flex:1 1 90px;min-width:0;padding:13px 9px}
.topic-guide .study-math-tile>b{font-size:20px;overflow-wrap:anywhere}
.topic-guide .study-math-tile>span{font-size:11px;line-height:1.5}
.topic-guide .study-between{display:none}
.topic-guide .study-example figcaption{font-size:12px;line-height:1.65;margin-top:14px}
.topic-guide .topic-assumptions{font-size:11px;line-height:1.6;color:var(--muted);margin:0 2px 20px}
.topic-guide .study-cards{flex-wrap:wrap;justify-content:center;gap:6px}
.topic-guide .study-card{max-width:100%}
.topic-guide .study-action-flow{flex-wrap:wrap;justify-content:center;gap:8px}
.topic-guide .study-action-flow>span{min-width:0;flex:1 1 90px}
.topic-guide .study-meter{width:100%}
.topic-guide .study-meter-key{flex-wrap:wrap;gap:5px;font-size:11px}
.topic-guide .study-token-grid{width:100%;grid-template-columns:repeat(auto-fit,minmax(70px,1fr))}
.topic-guide .study-token-grid>span{font-size:12px;padding:10px 6px}
.topic-guide .study-composition{display:none}
.topic-guide .study-journey{flex-wrap:wrap;justify-content:center;gap:12px}
.topic-guide .study-blocker-flow{flex-wrap:wrap;justify-content:center;gap:12px}
.topic-guide .study-stack-compare{flex-wrap:wrap;justify-content:center;gap:9px}
.topic-guide .study-distributions{width:100%}
.topic-guide .study-pot-bets{flex-wrap:wrap;gap:8px;font-size:11px}
.topic-guide .study-branches{width:100%;gap:10px}
.topic-guide .study-branches>div{min-width:0;flex:1}
.topic-guide .study-branches>div.chosen{background:var(--soft);box-shadow:none;transform:none}
.topic-distribution{width:100%;display:grid;gap:14px}
.topic-distribution-row{display:grid;grid-template-columns:24px 1fr;align-items:center;gap:10px}
.topic-distribution-row>div{display:flex;gap:4px;min-height:42px}
.topic-distribution-row span{display:flex;align-items:center;justify-content:center;border-radius:7px;background:#dfe6d9;color:#435d43;padding:9px 6px;font-size:11px;line-height:1.4;text-align:center;flex:1}
.topic-distribution-row span.strong{background:#507758;color:#fff}
.topic-distribution-row span.weak{background:#e9dfcb;color:#725c37}
@media(max-width:599px){
 .topic-guide .study-example figcaption,.topic-guide .topic-assumptions{font-size:12px}
 .topic-guide .study-math-tile>span{font-size:12px}
 .topic-guide .topic-example-label{font-size:12px}
 .topic-guide .study-math-tile>b{font-size:21px}
 .topic-guide .study-math-tile{flex-basis:85px}
 .topic-guide .study-card{font-size:21px;min-width:36px;width:auto;padding:8px 7px}
 .topic-guide .study-card.combination{font-size:15px}
 .topic-guide .study-position-table{max-width:100%}
}
@media(prefers-reduced-motion:reduce){.topic-guide *{animation:none!important;transition:none!important}}
@media(min-width:600px){
 .topic-guide .topic-examples.has-comparison{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
 .topic-guide .has-comparison .topic-example{padding:13px 11px;height:100%}
 .topic-guide .has-comparison .study-card{width:32px;height:47px;font-size:17px}
 .topic-guide .has-comparison .study-card.combination{width:55px;font-size:13px}
 .topic-guide .has-comparison .study-visual{gap:10px}
 .topic-guide .has-comparison .study-math-tile{flex-basis:65px;padding:10px 7px}
 .topic-guide .has-comparison .study-math-tile>b{font-size:18px}
 .topic-guide .has-comparison .study-token-grid{grid-template-columns:repeat(auto-fit,minmax(65px,1fr))}
 .topic-guide .has-comparison .study-action-flow{display:flex;flex-direction:column}
 .topic-guide .has-comparison .study-action-flow>span{flex:auto;width:100%;font-size:12px;padding:8px}
}
.topic-guide .study-position-table .seat-2{left:90%}
.topic-guide .study-position-table .seat-5{left:10%}
.topic-distribution-row:has(>b:empty){grid-template-columns:1fr;gap:0}
.topic-distribution-row>b:empty{display:none}
.topic-distribution-row span{min-width:0;overflow-wrap:anywhere}
.feedback-rationale{font-size:13px;line-height:1.65;color:var(--muted);margin:0 0 18px;overflow-wrap:anywhere}
@media(max-width:599px){.feedback-rationale{font-size:14px}}

.feedback-topline{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;margin-bottom:15px}
.feedback-topline .feedback-heading{margin:0;min-width:0}
.feedback-topline .feedback-heading>div{min-width:0}
.feedback-topline .feedback-review{min-width:64px;min-height:44px;justify-content:center;white-space:nowrap;padding:8px 4px;color:var(--accent);border-radius:8px}
.feedback-topline .feedback-review:hover{background:var(--soft)}
@media(max-width:374px){.feedback-topline{gap:6px}.feedback-topline .feedback-heading{gap:6px}.feedback-topline .activity-art{width:38px;height:38px}.feedback-topline .feedback-review{font-size:10px;min-width:58px}}

/* Two clear paths: equal cards for continuing or choosing a new focus. */
.drills-has-choices .drills-heading .eyebrow{margin-bottom:10px}
.drills-has-choices .drills-heading h1{font-size:clamp(26px,4vw,32px);line-height:1.2}
.drills-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.drills-choice{min-width:0;display:flex;flex-direction:column;align-items:flex-start;padding:26px 24px;border:1px solid var(--line);border-radius:22px;background:var(--soft)}
.drills-choice>.eyebrow{font-size:10px;letter-spacing:1px;line-height:1.6;min-height:32px;margin:0 0 12px}
.drills-choice h2{font-size:25px;line-height:1.2;letter-spacing:-.7px;min-height:60px}
.drills-choice-visual{height:64px;display:flex;align-items:center;margin:16px 0 20px;color:var(--accent)}
.drills-choice-visual>.icon{width:32px;height:32px}
.drills-choice-visual .mini-cards{gap:8px}
.drills-choice-visual .mini-cards>span{display:flex;align-items:center;justify-content:center;width:42px;height:55px;padding:0;font-size:18px;border:1px solid var(--line);border-radius:6px;background:var(--paper)}
.drills-choice>p:not(.eyebrow){font-size:14px;line-height:1.6}
.drills-choice>.drills-choice-detail{color:var(--muted);font-size:13px;margin-top:4px;margin-bottom:26px}
.drills-choice>.primary,.drills-choice>.secondary{width:100%;min-height:48px;margin-top:auto;font-size:14px}
@media(max-width:599px){.drills-choices{grid-template-columns:1fr;gap:16px}.drills-choice{padding:22px}.drills-choice>.eyebrow,.drills-choice h2{min-height:0}.drills-choice h2{font-size:24px}.drills-choice-visual{margin:16px 0}.drills-choice>.drills-choice-detail{margin-bottom:20px}}

/* Bets live inside each seat; stack totals stay in the player panels. */
.poker-scene .seat-0{left:max(12%,40px)}
.poker-scene .seat-4{left:min(88%,calc(100% - 40px))}
.poker-scene .seat-4 .card-backs{left:0;transform:rotate(-10deg) perspective(400px) rotateX(14deg)}
.street-contribution{position:absolute;display:flex;align-items:center;justify-content:center;gap:6px;z-index:5;transform:translateX(-50%);pointer-events:none;white-space:nowrap}
.street-contribution.villain-bet{right:auto;top:auto}
.street-contribution .contribution-chips{display:flex;align-items:center;filter:drop-shadow(0 3px 2px #25422e30)}
.street-contribution .contribution-copy{color:#203b2a;text-shadow:0 1px 1px #ffffff45;line-height:1}
.street-contribution .contribution-copy>b{font-size:13px;font-weight:650;letter-spacing:-.2px}
.street-contribution .contribution-copy>b>span{font-size:9px;font-weight:500;letter-spacing:0}
.street-contribution.bet-seat-0{left:25%;top:65%}
.street-contribution.bet-seat-1{left:24%;top:calc(20.7% + 82px)}
.street-contribution.bet-seat-2{left:50%;top:22%}
.street-contribution.bet-seat-3{left:76%;top:calc(20.7% + 82px)}
.street-contribution.bet-seat-4{left:75%;top:65%}
.street-contribution.hero-bet{left:50%;top:65%;flex-direction:row}
.pot-display .pot-chips{display:none}
.pot-display{top:35%;padding:5px 8px;border-radius:20px;background:#eaf2e528;border:1px solid #edf5e22b}
.pot-display .pot-value{align-items:center;gap:5px}
.pot-value>span{font-size:10px}
.pot-value>strong{font-size:18px}
.poker-scene .board-cards{top:48%;height:62px}
.poker-scene .board-cards .card{height:100%}
@media(max-width:374px){
 .street-contribution{gap:4px}
 .street-contribution .contribution-copy>b{font-size:12px}
 .street-contribution .chips{transform:scale(.85);width:19px;transform-origin:left center}
}

/* One unit switch for every table amount. */
button.pot-display{min-height:44px;cursor:pointer;color:var(--ink);font:inherit;transition:background .15s,border-color .15s}
button.pot-display:hover{background:#edf5e254;border-color:#f6faef80}
button.pot-display:focus-visible{outline:2px solid var(--green);outline-offset:3px}
button.pot-display:active{background:#edf5e278}
.pot-value{white-space:nowrap}
.blind-value-input{display:flex;align-items:center;gap:8px;min-width:0}
.blind-value-input input{width:120px;max-width:100%;min-height:44px;padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);font:inherit;text-align:right}
.blind-value-input>span{font-size:12px;color:var(--muted)}
.blind-value-input input:focus-visible{outline:2px solid var(--green);outline-offset:2px}
.blind-value-input input:user-invalid{border-color:#b86c47}
.custom-size{max-width:58%}
.custom-size input{max-width:100%;width:130px;min-width:0}
@media(max-width:374px){.blind-value-input input{width:100px}.street-contribution .contribution-copy>b>span{font-size:8px}.hero-player strong{font-size:13px}.pot-value>strong{font-size:16px}.pot-value>span{font-size:9px}}
/* Chip mode states the unit once in the pot; nearby amounts stay compact. */
.poker-scene[data-amount-unit="chips"] .contribution-copy>b>span,
.poker-scene[data-amount-unit="chips"] .nameplate strong small,
.poker-scene[data-amount-unit="chips"] .hero-player strong small{display:none}
.poker-scene[data-large-amounts="true"] .nameplate strong,
.poker-scene[data-large-amounts="true"] .hero-player strong,
.poker-scene[data-large-amounts="true"] .contribution-copy>b{font-size:10px;letter-spacing:-.3px}
@media(max-width:599px){
 button.pot-display{top:31%}
 .street-contribution.bet-seat-1,.street-contribution.bet-seat-3{top:calc(37% + 23px)}
}

/* Player ranks and concept mastery. */
.player-rank-panel{background:var(--soft);border:1px solid var(--line);border-radius:22px;padding:28px;margin-bottom:26px}
.player-rank-main{display:flex;align-items:center;gap:26px}
.player-rank-ring{width:118px;height:118px;flex:none;border-radius:50%;padding:8px;background:conic-gradient(var(--accent) var(--mastery-progress),var(--line) 0)}
.player-rank-ring>span{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:50%;background:var(--soft)}
.player-rank-ring b{font-size:34px;font-weight:530;line-height:1}.player-rank-ring b .icon{width:32px;height:32px}.player-rank-ring small{font-size:11px;color:var(--muted)}
.player-rank-copy{flex:1;min-width:0}.player-rank-copy h2{font-size:32px;margin:0}.player-rank-copy>p:not(.eyebrow){font-size:13px}.player-rank-copy .rank-next-step{color:var(--muted);margin-top:6px}
.rank-ladder{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));list-style:none;gap:8px;margin:26px 0 0;padding:0}.rank-ladder li{border-top:4px solid var(--line);padding-top:9px;font-size:12px;color:var(--muted);text-align:center}.rank-ladder .earned,.rank-ladder [aria-current]{border-color:var(--accent)}.rank-ladder [aria-current]{font-weight:600;color:var(--ink)}
.rank-panel-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px}.rank-panel-footer .text-link{font-size:12px}.rank-panel-footer>span{font-size:12px;color:var(--muted)}
.mastery-chapter{padding:0 12px}.mastery-chapter .concept-trail{grid-template-rows:repeat(var(--path-rows),174px)}
.mastery-node[aria-pressed=true]{background:var(--soft)}.mastery-token-ring{width:72px;height:72px;border-radius:50%;padding:4px;flex:none;background:conic-gradient(var(--accent) var(--mastery-progress),var(--line) 0)}
.mastery-token-ring .trail-token{width:64px;height:64px;border-radius:50%;box-shadow:none;border:0;background:var(--paper)}.mastery-token-ring .trail-token>.situation-art{width:46px;height:48px}.mastery-node:hover .trail-token{transform:none;box-shadow:none}
.mastery-node>.mastery-badge{font-size:11px;line-height:1.3;padding:4px 10px;border-radius:20px;background:var(--soft);color:var(--accent);font-weight:600;display:inline-flex;align-items:center;gap:4px}.mastery-node>.is-pro{background:var(--accent);color:var(--paper)}.mastery-badge .icon{width:12px;height:12px}.mastery-node>small{font-size:11px;line-height:1.4;margin:0;text-align:center;color:var(--muted)}
.rank-rules{padding:16px;background:var(--soft);border-radius:12px;margin:18px 0}.rank-rules h4{margin:12px 0 6px}.rank-rules h4:first-child{margin-top:0}
@media(max-width:650px){.player-rank-panel{padding:22px 16px}.player-rank-main{gap:16px}.player-rank-ring{width:86px;height:86px;padding:6px}.player-rank-ring b{font-size:28px}.player-rank-copy h2{font-size:26px}.rank-ladder{gap:3px}.rank-ladder li{font-size:10px}.player-rank-copy>p:not(.eyebrow){font-size:12px}}

/* Header navigation on desktop; the existing bottom bar stays on mobile. */
.app-shell{padding-left:0}
.header-identity{display:flex;align-items:center;gap:12px;min-width:0}
.header-nav{display:none}
.header-nav>button{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;border-radius:11px;color:var(--muted);font-size:13px;font-weight:560;white-space:nowrap}
.header-nav>button.active{color:var(--accent);font-weight:650}
.header-nav .nav-content{gap:8px}
.header-nav .icon{width:17px;height:17px}
.header-nav .nav-selection{background:var(--soft);box-shadow:none}
@media(min-width:768px){
 .workspace>.app-header{height:88px;border-bottom:1px solid var(--line)}
 .app-header.has-navigation{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:20px}
 .app-header.has-navigation>.header-tools{justify-self:end}
 .header-nav{display:flex;align-items:center;gap:6px}
 .workspace>.bottom-nav{display:none}
 .app-header .wordmark{visibility:visible}
 .page-content{padding-top:28px}
}

.rank-essentials{list-style:none;padding:16px;margin:16px 0;background:var(--soft);border-radius:12px;display:grid;gap:12px;font-size:13px;color:var(--muted)}
.rank-essentials b{color:var(--ink);font-weight:600}
.rank-requirements{border-top:1px solid var(--line);margin-top:20px}
.rank-requirements>summary{display:flex;align-items:center;justify-content:space-between;min-height:48px;cursor:pointer;font-size:13px;list-style:none}
.rank-requirements>summary::-webkit-details-marker{display:none}
.rank-requirements>p,.rank-requirements .rank-rules{font-size:12px;color:var(--muted)}
.rank-requirements>p{margin:12px 0}
.rank-requirements .rank-rules{margin:0 0 16px;color:var(--ink)}

/* Rank requirements: a connected path with measurable targets. */
.rank-path-switch{display:flex;gap:4px;padding:4px;margin:4px 0 20px;background:var(--soft);border:1px solid var(--line);border-radius:12px}
.rank-path-switch label{position:relative;flex:1;min-width:0;cursor:pointer}
.rank-path-switch input{position:absolute;opacity:0;width:1px;height:1px}
.rank-path-switch span{display:flex;align-items:center;justify-content:center;min-height:44px;border-radius:9px;font-size:12px;font-weight:600;color:var(--muted)}
.rank-path-switch input:checked+span{background:var(--paper);color:var(--accent);box-shadow:0 1px 4px #0001}
.rank-path-switch input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}
.rank-path-player{display:none}
.rank-path-selector:has(input[value="player"]:checked) .rank-path-player{display:block}
.rank-path-selector:has(input[value="player"]:checked) .rank-path-concept{display:none}
.rank-roadmap{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.rank-stop{position:relative;display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;align-items:start}
.rank-stop:not(:last-child)::after{content:"";position:absolute;top:34px;bottom:-12px;left:15px;width:2px;background:var(--line)}
.rank-medal{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--line);border-radius:50%;background:var(--soft);color:var(--accent);font-size:12px;font-weight:700;margin-top:3px}
.rank-medal>.icon{width:18px;height:18px}
.rank-stop:last-child .rank-medal{background:var(--accent);color:var(--paper)}
.rank-stop-card{border:1px solid var(--line);border-radius:13px;padding:12px;background:var(--paper)}
.rank-stop-card header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}
.rank-stop-card h4{margin:0;font-size:14px;font-weight:600}
.rank-step-bars{display:flex;align-items:end;gap:3px;height:16px}
.rank-step-bars i{width:4px;height:6px;border-radius:2px;background:var(--line)}
.rank-step-bars i:nth-child(2){height:8px}.rank-step-bars i:nth-child(3){height:10px}.rank-step-bars i:nth-child(4){height:13px}.rank-step-bars i:nth-child(5){height:16px}
.rank-step-bars i.filled{background:var(--accent)}
.rank-targets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.rank-target{display:flex;align-items:center;gap:7px;padding:7px 8px;background:var(--soft);border-radius:8px;min-width:0}
.rank-target>.icon{width:14px;height:14px;flex:none;color:var(--accent)}
.rank-target span{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px}
.rank-target b{font-size:13px;font-weight:650}.rank-target small{font-size:10px;color:var(--muted)}
.rank-path-caption{font-size:11px;color:var(--muted);margin:14px 0;text-align:center}
.rank-counting{font-size:12px;color:var(--muted)}.rank-counting>summary{min-height:44px;font-size:12px}.rank-counting p{margin:12px 0}
.rank-info:has(>.rank-requirements[open])>.rank-essentials,.rank-info:has(>.rank-requirements[open])>p{display:none}
.rank-info>.rank-requirements[open]{margin-top:0;border-top:0}
/* Identity and account controls live in Profile. */
.profile-button{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;padding:3px;border:1px solid var(--line)}
.profile-avatar{position:relative;display:grid;place-items:center;width:36px;height:36px;flex:none;overflow:hidden;border-radius:50%;background:var(--accent);color:var(--paper);font-size:13px;font-weight:650}
.profile-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:var(--soft)}
.profile-avatar img[hidden]{display:none}
.profile-identity{display:flex;align-items:center;gap:14px;margin:14px 0 24px;min-width:0}
.profile-identity .profile-avatar{width:60px;height:60px;font-size:20px}
.profile-identity h3{font-size:21px;line-height:1.3;margin:0 0 5px;overflow-wrap:anywhere}
.profile-identity p{font-size:12px;color:var(--muted);margin:0;overflow-wrap:anywhere}
.profile-overview .player-rank-panel{padding:20px 16px;margin-bottom:16px}
.profile-overview .player-rank-main{gap:16px}
.profile-overview .player-rank-ring{width:80px;height:80px;padding:6px}
.profile-overview .player-rank-copy h2{font-size:25px}
.profile-overview .rank-ladder{gap:4px}.profile-overview .rank-ladder li{font-size:10px}
.profile-overview .player-rank-ring b{font-size:28px}
.profile-preferences{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:16px;border:1px solid var(--line);border-radius:16px;margin-bottom:14px;font-size:14px;text-align:left}
.profile-preferences>span{flex:1}.profile-preferences>.icon{width:18px;height:18px}
.profile-overview .account-panel{padding:0;background:none;border:0}

/* Small table chips use clean edges instead of dense conic patterns. */
.chips{width:26px;--chip-mark:#fff5da;--chip-ring:#fff5da;--edge:#385b4d}
.chips.cream{--chip:#e3c989;--edge:#806b3f;--chip-mark:#fff4d4;--chip-ring:#fff4d4}
.chips i{width:26px;height:10px;background:var(--chip);border-color:var(--edge);box-shadow:0 2px 0 var(--edge)}
.chips i:last-child{background:linear-gradient(90deg,transparent 0 17%,var(--chip-mark) 17% 25%,transparent 25% 75%,var(--chip-mark) 75% 83%,transparent 83%),var(--chip)}
.chips i:last-child:after{inset:2px 6px;border:1px solid var(--chip-ring)}
.street-contribution .contribution-chips{filter:none}
.street-contribution .chips{width:26px;transform:none}
.felt-wordmark>img{opacity:.65}
/* Mobile review: touch comfort, readable inputs, and reachable controls. */
.profile-identity>div{min-width:0}
@media(max-width:599px){
 .settings-group .choice-chips>button{min-height:44px;min-width:44px;font-size:12px;padding:9px 10px}
 .field select,.blind-value-input input{font-size:16px}
 .sheet-header{position:sticky;top:-10px;z-index:5;background:var(--paper);padding:9px 0;box-shadow:0 5px 0 var(--paper)}
 .sizing-panel,.decision-feedback{scroll-margin-bottom:20px;scroll-margin-top:12px}
 .drills-choice:nth-child(2){display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center}
 .drills-choice:nth-child(2) .drills-choice-visual{grid-column:2;grid-row:1;height:auto;margin:0}
 .drills-choice:nth-child(2) h2{grid-column:1;grid-row:1}
 .drills-choice:nth-child(2) .drills-choice-detail{grid-column:1/-1;margin:0}
 .drills-choice:nth-child(2)>.secondary{grid-column:1/-1;margin:0}
}
@media(max-width:374px){
 .settings-group .settings-row:has(.choice-chips){grid-template-columns:1fr;gap:8px}
 .settings-row .choice-chips{justify-content:stretch}
 .settings-row .choice-chips>button{flex:1}
}
@media(max-width:599px) and (max-height:700px){
 .session-shell:not(.has-feedback):not(:has(.sizing-panel)) .poker-scene{height:max(300px,calc(100dvh - 210px));--hero-height:76px;--hero-width:57px;--board-height:58px;--board-width:43px}
 .session-shell:not(.has-feedback):not(:has(.sizing-panel)) .hero-cards .card-corner b{font-size:26px}
 .session-shell:not(.has-feedback):not(:has(.sizing-panel)) .hero-cards .card>i{font-size:33px}
 .session-shell:not(.has-feedback):not(:has(.sizing-panel)) .board-5{--board-width:38px}
 .table-bottom{padding-top:22px;padding-bottom:max(18px,env(safe-area-inset-bottom))}
}

/* Desktop review: keep decisions and their controls in the same viewport. */
@media(min-width:600px){
 .sheet-header{position:sticky;top:-10px;z-index:5;background:var(--paper);padding:9px 0;box-shadow:0 5px 0 var(--paper)}
}
@media(min-width:651px){
}
@media(min-width:900px){
 dialog[data-sheet="settings"]{width:780px}
 dialog[data-sheet="settings"] .settings-groups{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
 dialog[data-sheet="settings"] .settings-group{margin:0}
 dialog[data-sheet="settings"] .settings-groups+.primary{margin-top:20px}
}
@media(min-width:1050px){
 .table-layout{grid-template-columns:510px minmax(0,400px);column-gap:48px;justify-content:center}
 .session-content{max-width:1028px;padding:16px 35px}
 .poker-scene{height:clamp(420px,calc(100dvh - 244px),600px);--hero-height:clamp(78px,calc(18dvh - 44px),108px);--hero-width:clamp(58px,calc(13dvh - 32px),78px)}
 .seat.in-hand .dealer{top:58px;left:80px}
 .session-shell:is(.has-feedback,:has(.sizing-panel)) .table-layout{grid-template-rows:auto 1fr;row-gap:24px}
 .session-shell:is(.has-feedback,:has(.sizing-panel)) .table-column{display:contents}
 .session-shell:is(.has-feedback,:has(.sizing-panel)) .poker-scene{grid-column:1;grid-row:1/span 2;height:clamp(420px,calc(100dvh - 244px),600px);--hero-height:clamp(78px,calc(18dvh - 44px),108px);--hero-width:clamp(58px,calc(13dvh - 32px),78px);--board-height:80px;--board-width:58px}
 .session-shell:is(.has-feedback,:has(.sizing-panel)) .board-5{--board-width:47px}
 .session-shell:is(.has-feedback,:has(.sizing-panel)) .hero-cards .card-corner b{font-size:32px}
 .session-shell:is(.has-feedback,:has(.sizing-panel)) .hero-cards .card>i{font-size:44px}
 .session-shell:is(.has-feedback,:has(.sizing-panel)) .table-bottom{grid-column:2;grid-row:1;padding:16px 0 0}
 .session-shell:is(.has-feedback,:has(.sizing-panel)) .session-aside{grid-column:2;grid-row:2;padding:0 0 24px;max-width:none}
 .session-shell:is(.has-feedback,:has(.sizing-panel)) .session-aside>.wordmark{display:none}
 .session-shell:is(.has-feedback,:has(.sizing-panel)) .session-aside .history-list{margin-top:16px}
 .session-shell:is(.has-feedback,:has(.sizing-panel)) .session-aside h2{font-size:23px}
 .session-shell:has(.sizing-panel) .sizing-panel{border:1px solid var(--line);border-radius:20px;padding:14px 18px 18px;background:var(--soft)}
}
