:root{--ink:#15231d;--muted:#66706a;--paper:#f3efe3;--paper-deep:#e8e0cf;--green:#153f33;--green-light:#c9d8b8;--chartreuse:#d8ee75;--rust:#a84e32;--line:#15231d2e;--display:"Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;--sans:"Avenir Next", Avenir, "Century Gothic", sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{background:var(--paper);min-width:320px}html:has(.app-shell){background:#0c1511}html:has(.app-shell) body{background:#0c1511}body{min-height:100vh;color:var(--ink);background:radial-gradient(circle at 8% 4%, #fffc, transparent 24rem), radial-gradient(circle at 100% 35%, #b1c49738, transparent 36rem), var(--paper);font-family:var(--sans);-webkit-font-smoothing:antialiased}body:before{z-index:-1;opacity:.22;content:"";pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.14'/%3E%3C/svg%3E");position:fixed;inset:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--rust);outline-offset:3px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;top:0;left:0;overflow:hidden}main{width:min(1320px,100% - 56px);margin:0 auto}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:90px;display:flex}.wordmark{font-family:var(--display);letter-spacing:-.02em;align-items:center;gap:12px;font-size:1.18rem;font-weight:700;display:inline-flex}.wordmark em{color:var(--rust);font-weight:500}.mark{width:38px;height:38px;color:var(--paper);background:var(--green);font-family:var(--sans);letter-spacing:-.05em;border-radius:50%;place-items:center;font-size:.78rem;display:grid}.fair-play,.back-link{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:8px;font-size:.74rem;font-weight:700;display:flex}.fair-play span{color:#4c8c61;font-size:.66rem}.hero{grid-template-columns:minmax(0,1.55fr) minmax(320px,.7fr);align-items:center;gap:clamp(48px,8vw,130px);min-height:520px;padding:74px 5vw 68px;display:grid}.eyebrow,.section-number{color:var(--rust);letter-spacing:.16em;text-transform:uppercase;font-size:.7rem;font-weight:800}.hero h1{max-width:860px;font-family:var(--display);letter-spacing:-.075em;margin:18px 0 26px;font-size:clamp(3.5rem,7vw,7.8rem);font-weight:500;line-height:.88}.hero-deck{max-width:710px;color:var(--muted);font-family:var(--display);font-size:clamp(1.1rem,1.8vw,1.45rem);line-height:1.55}.session-card{color:#f7f2e8;background:var(--green);box-shadow:18px 18px 0 var(--green-light);border:1px solid #ffffff1f;border-radius:2px;padding:30px;position:relative;overflow:hidden;transform:rotate(1.5deg)}.session-card:after{content:"";border:25px solid #d8ee751a;border-radius:50%;width:130px;height:130px;position:absolute;top:-40px;right:-42px}.session-card>div{border-bottom:1px solid #ffffff2e;justify-content:space-between;align-items:flex-start;padding-bottom:22px;display:flex}.session-card>div p,.session-card li{letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:700}.session-card strong{color:var(--chartreuse);font-family:var(--display);font-size:2.4rem;font-weight:500;line-height:.8}.session-card ol{gap:15px;margin:22px 0;list-style:none;display:grid}.session-card li{grid-template-columns:34px 1fr;align-items:center;display:grid}.session-card li span{color:var(--chartreuse);font-family:var(--display);font-size:1.3rem;font-weight:500}.session-link{color:var(--chartreuse);letter-spacing:.07em;text-transform:uppercase;border-top:1px solid #ffffff2e;justify-content:space-between;padding-top:18px;font-size:.7rem;font-weight:800;display:flex}.import-panel{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff3;grid-template-columns:minmax(230px,.75fr) minmax(0,1.25fr);gap:clamp(30px,6vw,90px);padding:46px clamp(24px,5vw,72px);display:grid}.login-panel{max-width:460px;margin:clamp(40px,10vh,120px) auto;padding:0 clamp(24px,5vw,40px)}.login-panel h1{font-family:var(--display);letter-spacing:-.045em;margin-top:8px;font-size:clamp(2rem,3.2vw,3rem);font-weight:500;line-height:1}.login-deck{max-width:40ch;margin:14px 0 26px}.login-panel .field+.field{margin-top:14px}.login-submit{width:100%;height:46px;margin-top:18px}.import-panel h2,.section-heading h2,.analysis-coach h2{font-family:var(--display);letter-spacing:-.045em;margin-top:8px;font-size:clamp(2rem,3.2vw,3.3rem);font-weight:500;line-height:1}.field label{letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;font-size:.7rem;font-weight:800;display:block}.field-row{grid-template-columns:1fr auto;display:grid;position:relative}.input-prefix{color:var(--muted);position:absolute;top:50%;left:17px;transform:translateY(-50%)}.field-row input{border:1px solid var(--ink);min-width:0;color:var(--ink);background:#fff6;border-right:0;border-radius:0;padding:15px 18px 15px 36px;font-size:1rem}.field-row button,.login-submit{border:1px solid var(--ink);color:#fff;background:var(--ink);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;padding:0 24px;font-size:.75rem;font-weight:800;transition:color .15s,background .15s}.field-row button:hover:not(:disabled),.login-submit:hover:not(:disabled){color:var(--ink);background:var(--chartreuse)}.field-row button:disabled,.login-submit:disabled{cursor:wait;opacity:.65}.form-message{min-height:1.4em;color:var(--muted);margin-top:10px;font-size:.76rem}.form-message.success{color:#39734d}.form-message.error{color:var(--rust)}.stats-section,.games-section{padding:74px clamp(10px,3vw,42px)}.section-heading{justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px;display:flex}.section-heading>p{max-width:390px;color:var(--muted);font-family:var(--display);text-align:right;font-size:1rem}.stat-grid{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);grid-template-columns:repeat(3,1fr);display:grid}.stat-grid article{padding:28px 30px 30px;position:relative}.stat-grid article+article{border-left:1px solid var(--line)}.stat-grid span,.stat-grid small{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:700;display:block}.stat-grid strong{font-family:var(--display);letter-spacing:-.06em;margin:22px 0 16px;font-size:clamp(3rem,5vw,5rem);font-weight:500;line-height:.8;display:block}.stat-grid strong.positive{color:#39734d}.stat-grid strong.negative{color:var(--rust)}.stat-grid strong.record{font-size:clamp(2.2rem,4vw,4rem)}.stat-grid strong i{color:var(--muted);font-family:var(--sans);letter-spacing:0;font-size:.63rem;font-style:normal}.games-section{background:#ffffff40;min-width:0;margin-bottom:80px}.empty-state{border:1px dashed #15231d4d;align-items:center;gap:34px;min-height:180px;padding:34px;display:grid}.empty-state h3{font-family:var(--display);margin-bottom:10px;font-size:1.7rem;font-weight:500}.empty-state p{max-width:590px;color:var(--muted);line-height:1.65}.table-shell{border-top:1px solid var(--ink);contain:inline-size;width:100%;max-width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:920px}th{color:var(--muted);letter-spacing:.1em;text-align:left;text-transform:uppercase;padding:14px 16px;font-size:.66rem}td{border-top:1px solid var(--line);font-family:var(--display);padding:20px 16px;font-size:1rem}td strong,td small{display:block}td strong{font-weight:600}td small{color:var(--muted);font-family:var(--sans);margin-top:3px;font-size:.7rem}.result-pill{min-width:62px;font-family:var(--sans);letter-spacing:.08em;text-align:center;text-transform:uppercase;border-radius:99px;padding:7px 10px 6px;font-size:.63rem;font-weight:800;display:inline-block}.result-pill.win{color:#245c39;background:#d8e8cc}.result-pill.loss{color:#7b2d20;background:#efd6ca}.result-pill.draw{color:#56554e;background:#e4e0d6}.review-link{font-family:var(--sans);letter-spacing:.05em;text-transform:uppercase;border-bottom:1px solid;align-items:center;gap:7px;font-size:.7rem;font-weight:800;display:inline-flex}.review-link:hover{color:var(--rust)}footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:20px;padding:24px 0 32px;font-size:.7rem;display:flex}.game-page{padding-bottom:80px}.game-heading{justify-content:space-between;align-items:end;gap:30px;padding:60px clamp(10px,3vw,42px) 38px;display:flex}.game-heading h1{font-family:var(--display);letter-spacing:-.06em;margin-top:12px;font-size:clamp(2.5rem,5vw,5.6rem);font-weight:500;line-height:.95}.game-heading h1 span{color:var(--rust);margin:0 .3em;font-size:.35em;font-style:italic}.game-result{text-align:right}.game-result p{color:var(--muted);font-family:var(--display);margin-top:10px}.game-facts{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);margin-bottom:42px;display:grid}.game-facts p{font-family:var(--display);padding:18px 22px}.game-facts p+p{border-left:1px solid var(--line)}.game-facts span{color:var(--muted);font-family:var(--sans);letter-spacing:.09em;text-transform:uppercase;margin-bottom:5px;font-size:.62rem;font-weight:800;display:block}.viewer-grid{grid-template-columns:minmax(420px,680px) minmax(280px,1fr);align-items:start;gap:clamp(32px,6vw,90px);max-width:1110px;margin:0 auto;padding:0 16px;display:grid}.board-column{outline:none}.chess-board{aspect-ratio:1;border:10px solid var(--green);-webkit-user-select:none;user-select:none;width:100%;position:relative;container-type:inline-size}.board-overlay{z-index:2;pointer-events:none;position:absolute;inset:0}.move-hint{fill:#15231d4d}.move-hint-capture{fill:none;stroke:#15231d4d;stroke-width:.1px}.board-row{grid-template-columns:repeat(8,1fr);height:12.5%;display:grid}.board-square{place-items:center;display:grid;position:relative}button.board-square{cursor:pointer;border:0;width:100%;height:100%}.board-square.selected{box-shadow:inset 0 0 0 5px var(--chartreuse)}.board-square.light{background:#e8dfca}.board-square.dark{background:#566b57}.board-square.last-move{background-image:linear-gradient(#f6c83e80,#f6c83e80)}.piece{z-index:1;pointer-events:none;width:92%;height:92%;position:relative}.piece.lifted{opacity:.25}.dragged-piece{z-index:50;pointer-events:none;width:11.5cqi;height:11.5cqi;position:fixed;transform:translate(-50%,-50%)}.rank-label,.file-label{z-index:2;font-family:var(--sans);font-size:2.4cqi;font-weight:800;line-height:1;position:absolute}.board-square.light .rank-label,.board-square.light .file-label{color:#495849;text-shadow:0 0 3px #e8dfca,0 0 2px #e8dfca,0 0 1px #e8dfca}.board-square.dark .rank-label,.board-square.dark .file-label{color:#eee6d3;text-shadow:0 0 3px #566b57,0 0 2px #566b57,0 0 1px #566b57}.rank-label{top:.5cqi;left:.7cqi}.file-label{bottom:.5cqi;right:.7cqi}.viewer-controls{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);grid-template-columns:44px 44px 1fr 44px 44px;align-items:center;margin-top:28px;display:grid}.viewer-controls button{border:0;border-right:1px solid var(--line);height:48px;color:var(--ink);cursor:pointer;background:0 0;font-size:1.4rem}.viewer-controls button:nth-last-child(-n+2){border-right:0;border-left:1px solid var(--line)}.viewer-controls button:hover:not(:disabled){background:var(--chartreuse)}.viewer-controls button:disabled{cursor:default;opacity:.25}.viewer-controls p{font-family:var(--display);text-align:center}.move-sheet{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);max-height:650px;overflow:auto}.move-sheet-heading{border-bottom:1px solid var(--line);background:var(--paper);color:var(--muted);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;padding:14px 8px;font-size:.65rem;font-weight:800;display:flex;position:sticky;top:0}.move-sheet ol{list-style:none}.move-sheet li{border-bottom:1px solid var(--line);grid-template-columns:38px 1fr 1fr;display:grid}.move-sheet li>span{color:var(--muted);font-family:var(--display);padding:12px 9px;font-size:.85rem}.move-sheet li button{color:var(--ink);font-family:var(--display);text-align:left;cursor:pointer;background:0 0;border:0;padding:12px 10px;font-size:1rem}.move-sheet li button:hover,.move-sheet li button.current{background:var(--green-light)}.analysis-coach{border-left:4px solid var(--rust);background:#ffffff47;grid-template-columns:1fr minmax(300px,430px);align-items:center;gap:42px 64px;max-width:920px;margin:90px auto 0;padding:46px;display:grid}.analysis-coach.empty{display:block}.analysis-coach p{max-width:700px;color:var(--muted);font-family:var(--display);margin-top:18px;font-size:1.08rem;line-height:1.6}.analysis-coach button{border:1px solid var(--ink);color:#fff;background:var(--ink);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;min-height:46px;margin-top:24px;padding:0 20px;font-size:.72rem;font-weight:800}.analysis-coach button:hover:not(:disabled){color:var(--ink);background:var(--chartreuse)}.analysis-coach button:disabled{cursor:wait;opacity:.65}.analysis-line{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1fr 2fr;margin-top:28px;display:grid}.analysis-line div{padding:15px}.analysis-line div+div{border-left:1px solid var(--line)}.analysis-line dt,.reflection-field label{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;font-size:.62rem;font-weight:800}.analysis-line dd{font-family:var(--display);margin-top:5px;font-size:1.2rem}.reflection-field{grid-column:1/-1}.reflection-field label,.category-field label{margin-bottom:10px;display:block}.reflection-field textarea{resize:vertical;border:1px solid var(--ink);width:100%;color:var(--ink);background:#ffffff73;border-radius:0;padding:14px;line-height:1.5}.category-field{grid-column:1/-1}.category-field>div{gap:12px;display:flex}.category-field select{border:1px solid var(--ink);min-width:0;color:var(--ink);background:#ffffff73;border-radius:0;flex:1;padding:0 12px}.category-field button{margin-top:0}.analysis-coach .analysis-status{min-height:1.5em;color:var(--rust);font-family:var(--sans);margin-top:12px;font-size:.76rem}.viewer-error{color:var(--rust);border:1px solid;padding:30px}.training-page{padding-bottom:80px}.training-heading{justify-content:space-between;align-items:end;gap:40px;padding:74px clamp(10px,3vw,42px) 52px;display:flex}.training-heading h1{font-family:var(--display);letter-spacing:-.07em;margin:14px 0 20px;font-size:clamp(3.6rem,8vw,7.4rem);font-weight:500;line-height:.9}.training-heading p{max-width:690px;color:var(--muted);font-family:var(--display);font-size:1.1rem;line-height:1.6}.training-heading>strong{color:var(--rust);font-family:var(--display);font-size:clamp(3rem,6vw,6rem);font-weight:500}.training-plan{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);grid-template-columns:repeat(3,1fr);margin-bottom:70px;list-style:none;display:grid}.training-plan li{grid-template-columns:48px 1fr;gap:14px;padding:25px;display:grid}.training-plan li+li{border-left:1px solid var(--line)}.training-plan li>span{color:var(--rust);font-family:var(--display);font-size:1.8rem}.training-plan strong,.training-plan p{font-size:.78rem;display:block}.training-plan strong{text-transform:uppercase;margin-bottom:8px}.training-plan p{color:var(--muted);line-height:1.5}.puzzle-trainer,.puzzle-empty,.training-finish{background:#ffffff47;max-width:1040px;margin:0 auto;padding:46px}.puzzle-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:34px;display:flex}.puzzle-heading h2,.puzzle-empty h2,.training-finish h2{font-family:var(--display);letter-spacing:-.05em;margin-top:8px;font-size:clamp(2rem,4vw,3.8rem);font-weight:500}.puzzle-heading>span{border:1px solid var(--rust);color:var(--rust);text-transform:uppercase;padding:7px 10px;font-size:.64rem;font-weight:800}.puzzle-grid{grid-template-columns:minmax(320px,560px) 1fr;align-items:center;gap:55px;display:grid}.puzzle-board{flex-direction:column;gap:10px;display:flex}.puzzle-copy>p,.puzzle-empty>p,.training-finish>p{color:var(--muted);font-family:var(--display);margin-top:14px;line-height:1.6}.puzzle-copy button,.training-link{border:1px solid var(--ink);color:#fff;background:var(--ink);text-transform:uppercase;cursor:pointer;align-items:center;gap:10px;min-height:46px;margin-top:22px;padding:0 20px;font-size:.7rem;font-weight:800;display:inline-flex}.puzzle-result{border-left:4px solid var(--rust);background:var(--paper-deep);margin-top:28px;padding:18px}.puzzle-result.correct{border-color:#39734d}.puzzle-result p,.puzzle-result small{margin-top:8px;display:block}.puzzle-result small,.puzzle-copy .analysis-status{color:var(--muted);font-size:.72rem}.puzzle-copy .analysis-status{min-height:1.5em;margin-top:18px}.training-finish{border-left:4px solid var(--green);margin-top:36px}@media (max-width:900px){main{width:min(100% - 28px,760px)}.hero{grid-template-columns:1fr;min-height:auto;padding:60px 14px 74px}.hero h1{font-size:clamp(3.8rem,13vw,6.6rem)}.session-card{width:min(390px,100% - 18px)}.import-panel,.stat-grid{grid-template-columns:1fr}.stat-grid article+article{border-top:1px solid var(--line);border-left:0}.game-facts{grid-template-columns:1fr 1fr}.game-facts p+p{border-left:0}.game-facts p:nth-child(2n){border-left:1px solid var(--line)}.game-facts p:nth-child(n+3){border-top:1px solid var(--line)}.viewer-grid{grid-template-columns:1fr;max-width:680px}.move-sheet{max-height:360px}.analysis-coach{grid-template-columns:1fr}.reflection-field{grid-column:auto}}@media (max-width:600px){main{width:calc(100% - 20px)}.site-header{min-height:72px}.fair-play{text-align:right;max-width:120px;line-height:1.35}.hero{gap:46px;padding-top:48px}.hero h1{font-size:clamp(3.25rem,17vw,5rem)}.import-panel,.stats-section,.games-section{padding:42px 16px}.field-row{grid-template-columns:1fr}.field-row input{border-right:1px solid var(--ink)}.field-row button{border-top:0;min-height:48px}.section-heading,.game-heading{display:block}.section-heading>p{text-align:left;margin-top:16px}table{min-width:100%}th,td{padding-left:7px;padding-right:7px}.review-link{font-size:.58rem}footer{line-height:1.7;display:block}.game-heading{padding:45px 8px 28px}.game-heading h1 span{margin:.3em 0;display:block}.game-result{text-align:left;align-items:center;gap:12px;margin-top:24px;display:flex}.game-result p{margin:0}.game-facts{grid-template-columns:1fr}.game-facts p:nth-child(2n){border-left:0}.game-facts p+p{border-top:1px solid var(--line)}.viewer-grid{padding:0 8px}.chess-board{border-width:6px}.viewer-controls{grid-template-columns:38px 38px 1fr 38px 38px}.analysis-coach{margin-top:60px;padding:32px 24px}}@media (max-width:900px){.training-heading{flex-direction:column;align-items:start}.training-plan{grid-template-columns:1fr}.training-plan li+li{border-top:1px solid var(--line);border-left:0}.puzzle-grid{grid-template-columns:1fr}}@media (max-width:600px){.training-heading{padding:50px 8px 36px}.puzzle-trainer,.puzzle-empty,.training-finish{padding:30px 20px}.puzzle-heading,.category-field>div{flex-direction:column;align-items:stretch}.category-field select{min-height:46px}}@media (prefers-reduced-motion:no-preference){.hero-copy,.session-card{animation:.5s both settle}.session-card{animation-delay:.1s}@keyframes settle{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:1.75rem;display:flex}.hero-copy .review-link{border:1px solid var(--ink);color:#fff;background:var(--ink);min-height:46px;padding:0 20px;display:inline-flex}.hero-copy .review-link:hover{color:var(--ink);background:var(--chartreuse)}.hero-copy .review-link.secondary{color:var(--ink);background:0 0}.hero-copy .review-link.secondary:hover{background:var(--chartreuse)}.hero-signin{color:var(--muted);margin-top:14px;font-size:.95rem}.review-heading h1{font-family:var(--display);margin:.5rem 0;font-size:clamp(2rem,5vw,3.5rem)}.report-actions{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.report-actions button{border:1px solid var(--ink);color:#fff;background:var(--ink);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;min-height:46px;padding:0 20px;font-size:.72rem;font-weight:800}.report-actions button:hover:not(:disabled){color:var(--ink);background:var(--chartreuse)}.report-actions button:disabled{cursor:wait;opacity:.65}.report-card,.report-empty,.report-history{border:1px solid #15231d2e;padding:1.5rem}.report-rating{color:var(--muted);font-family:var(--sans);margin-top:.6rem;font-size:12px;font-weight:600}.report-focus{border-left:4px solid var(--green);margin:1.5rem 0;padding-left:1rem}.report-focus strong{font-family:var(--display);font-size:1.5rem;display:block}.report-focus.empty{border-left-color:#15231d40}.report-invalid{color:var(--muted,#15231db3);border-left:4px solid #15231d59;margin:0 0 1rem;padding:.5rem 0 .5rem 1rem;font-size:.85rem;display:block}.report-history .report-invalid{border-left-width:2px;flex-basis:100%;margin:.25rem 0 0;padding-left:.75rem}.report-openings ul,.report-history ul{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.report-openings li,.report-history li{border-bottom:1px solid #15231d1f;flex-wrap:wrap;justify-content:space-between;gap:1rem;padding-bottom:.5rem;display:flex}.route-error-page{place-items:center;min-height:60vh;display:grid}.route-error{border:1px solid #15231d2e;border-left:4px solid var(--rust);background:#ffffff47;max-width:560px;padding:2.5rem}.route-error h1{font-family:var(--display);letter-spacing:-.03em;margin:.5rem 0 1rem;font-size:clamp(1.8rem,4vw,2.6rem);font-weight:500}.route-error>p{color:var(--muted);font-family:var(--display);font-size:1.05rem;line-height:1.6}.route-error-actions{flex-wrap:wrap;align-items:center;gap:1.5rem;margin-top:1.75rem;display:flex}.route-error-actions button{border:1px solid var(--ink);color:#fff;background:var(--ink);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;min-height:46px;padding:0 20px;font-size:.72rem;font-weight:800}.route-error-actions button:hover{color:var(--ink);background:var(--chartreuse)}.app-shell{--bg:#0c1511;--bg-glow-a:#22322b;--bg-glow-b:#1a2620;--surface:#1a2a23;--surface-subtle:#24372e;--line:#ffffff24;--line-strong:#ffffff47;--text:#fff;--text-2:#bdc8c1;--text-3:#9eaaa2;--brand:#f4efe2;--brand-hover:#fff;--brand-ink:#0a0a0c;--brand-soft:#f4efe21f;--good:#5fd39a;--good-soft:#0d211a;--bad:#ff8f84;--bad-soft:#241211;--warn:#e8b463;--warn-soft:#231a0d;--ring:#8fd6ff;--radius:16px;--radius-sm:14px;--radius-pill:999px;--card:#fff;--card-ink:#0a0a0c;--card-muted:#55555e;--card-faint:#6a6a72;--card-line:#e6e6ea;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--press:.12s;--muted:var(--text-3);--board:min(calc(100vh - 320px), 58vw);z-index:1;min-height:100vh;color:var(--text);background:radial-gradient(42rem 42rem at 78% 0%, #ffffff29 0%, #fff0 66%), radial-gradient(120% 90% at 82% 12%, var(--bg-glow-a) 0%, #1d2a2400 60%), radial-gradient(80% 70% at 2% 6%, var(--bg-glow-b) 0%, #16201b00 56%), var(--bg);font-family:var(--app-font), "Segoe UI", system-ui, sans-serif;font-variant-numeric:tabular-nums;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background-attachment:fixed;grid-template-rows:auto minmax(0,1fr);font-size:15px;line-height:1.5;display:grid;position:relative}.app-shell:before{content:"";z-index:-1;filter:drop-shadow(0 40px 90px #000000b3);pointer-events:none;background:url(/queen.webp) 100% 100%/contain no-repeat;width:25rem;height:88vh;position:fixed;top:5.5rem;right:-1.5rem}.app-shell:not(:has(.tonight-stage)):before{opacity:.3;filter:blur(1.5px)}.app-shell :focus-visible{outline:2px solid var(--ring);outline-offset:2px}.app-shell button:not(.board-square),.app-shell .button,.app-shell a.button,.app-shell summary{transition:color .18s,border-color .18s,background-color .18s}.app-shell h1{letter-spacing:-.03em;text-wrap:balance;font-size:36px;font-weight:300;line-height:1.1}.app-shell h2{font-size:17px;font-weight:650;line-height:24px}.app-shell table,.app-shell th,.app-shell td,.app-shell td strong,.app-shell td small{font-family:inherit;font-size:inherit;letter-spacing:normal;text-transform:none}.app-shell table{min-width:0}.app-shell td{border-top:none}.app-shell select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5 6 6.5l5-5' stroke='%23a8b5ad' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:38px}.app-shell select:-moz-focusring{color:#0000;text-shadow:0 0 0 var(--text)}.skip-link{z-index:60;border:1px solid var(--brand);background:var(--surface);color:var(--brand);padding:10px 16px;font-weight:500;text-decoration:none;position:absolute;top:8px;left:-9999px}.skip-link:focus{left:8px}.app-main{flex-direction:column;gap:24px;width:auto;min-width:0;max-width:1760px;margin:0;padding:10px 32px 64px;display:flex}:is(.app-main:has(>.tonight-stage),.app-main:has(>.guided-session),.app-main:has(>.scenario-lab)){padding-bottom:12px}.app-main:has(>.guided-session){gap:14px;padding-top:8px}:is(.app-main:has(>.guided-session)>.guided-session,.app-main:has(>.scenario-lab)>.scenario-lab),.scenario-lab>.scenario-player{flex:auto;min-height:0}.app-topbar{z-index:30;background:var(--bg);align-items:center;gap:16px;min-height:74px;padding:14px 32px;display:flex;position:sticky;top:0}.topbar-brand{color:var(--text);letter-spacing:.01em;text-transform:uppercase;flex:none;align-items:center;gap:12px;font-size:19px;font-weight:700;text-decoration:none;display:flex}.brand-mark{flex:none;grid-template-columns:repeat(4,7px);grid-auto-rows:7px;display:grid}.brand-mark>span[data-on=true]{background:currentColor}.topbar-nav{min-width:0;margin-left:24px}.topbar-nav ul{border-radius:var(--radius-pill);background:#ffffff1a;align-items:center;gap:4px;margin:0;padding:5px;list-style:none;display:flex}.topbar-nav a{border-radius:var(--radius-pill);color:#ffffffc7;white-space:nowrap;transition:background .14s var(--ease-out), color .14s var(--ease-out);align-items:center;gap:7px;padding:10px 18px;font-size:14px;font-weight:500;text-decoration:none;display:flex;position:relative}@media (hover:hover) and (pointer:fine){.topbar-nav a:hover{color:var(--text);background:#ffffff14}}.topbar-nav a[data-active=true]{background:var(--card);color:var(--card-ink);font-weight:600}.topbar-sync,.topbar-account{flex:none;position:relative}.topbar-sync{margin-left:auto}.topbar-sync+.topbar-account{margin-left:0}.topbar-sync>summary,.topbar-account>summary{border:1px solid var(--line-strong);border-radius:var(--radius-pill);white-space:nowrap;cursor:pointer;min-height:46px;transition:background .14s var(--ease-out);align-items:center;gap:10px;padding:0 16px;font-size:14px;font-weight:600;list-style:none;display:inline-flex}.topbar-account>summary{gap:12px;padding:0 8px 0 18px}.topbar-sync>summary::-webkit-details-marker{display:none}.topbar-account>summary::-webkit-details-marker{display:none}@media (hover:hover) and (pointer:fine){.topbar-sync>summary:hover,.topbar-account>summary:hover{background:#ffffff14}}.topbar-sync[open]>summary,.topbar-account[open]>summary{border-color:var(--text-3);background:#ffffff1f}.topbar-sync>summary>svg{opacity:.8;flex:none}.account-identity{align-items:baseline;gap:10px;min-width:0;display:inline-flex}.account-handle{text-overflow:ellipsis;white-space:nowrap;max-width:14ch;overflow:hidden}.account-rating{color:var(--text-2);font-variant-numeric:tabular-nums;font-weight:500}.sync-menu,.account-menu{z-index:40;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);min-width:15rem;padding:14px 16px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 24px 56px #0000008c}.sync-menu{width:24rem;max-width:calc(100vw - 32px)}.sync-menu .field-row{flex-wrap:wrap}.sync-menu .form-message{margin-top:10px;font-size:12px}.import-first-note{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-subtle);color:var(--text);margin:0 0 14px;padding:10px 12px;font-size:13px;line-height:1.5}.account-name{flex-direction:column;min-width:0;margin:0;display:flex}.account-name strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.account-name small{color:var(--text-2);font-size:12px}.account-signout{border:1px solid var(--line);border-radius:var(--radius-sm);width:100%;color:var(--text-2);font:inherit;text-align:left;cursor:pointer;background:0 0;margin-top:12px;padding:9px 12px;font-size:13px}@media (hover:hover) and (pointer:fine){.account-signout:hover{background:var(--surface-subtle);color:var(--text)}}.user-avatar{background:var(--card);width:32px;height:32px;color:var(--card-ink);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:700;display:grid}.app-sidebar{--rail-bg:var(--surface);--rail-text:#ffffffb8;--rail-text-strong:#fff;--rail-muted:#ffffff94;--rail-hover:#ffffff14;--rail-active:#ffffff24;--rail-line:#ffffff1f;z-index:50;border-right:1px solid var(--rail-line);background:var(--rail-bg);width:264px;max-width:84vw;height:100vh;color:var(--rail-text);visibility:hidden;transition:transform .18s var(--ease-out);flex-direction:column;gap:20px;padding:18px 12px;display:flex;position:fixed;top:0;left:0;overflow:hidden;transform:translate(-100%);box-shadow:0 10px 40px #00000080}.app-sidebar[data-open=true]{visibility:visible;transform:translate(0)}.app-sidebar :focus-visible{outline-color:#fff}.app-sidebar .topbar-brand{min-width:0;font-size:15px}.sidebar-top{align-items:center;gap:8px;padding:0 4px;display:flex}.drawer-close,.app-menu-button{border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:1px solid #0000;flex:none;place-items:center;width:40px;height:40px;display:grid}.drawer-close{color:var(--rail-muted);margin-left:auto}@media (hover:hover) and (pointer:fine){.drawer-close:hover{background:var(--rail-hover);color:var(--rail-text-strong)}}.app-menu-button{color:var(--text-2);border-color:var(--line);display:none}@media (hover:hover) and (pointer:fine){.app-menu-button:hover{background:var(--surface-subtle);color:var(--text)}}.sidebar-nav{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.sidebar-nav a{border-radius:var(--radius-sm);min-height:44px;color:var(--rail-text);align-items:center;gap:12px;padding:0 10px;font-weight:500;text-decoration:none;display:flex;position:relative}.sidebar-nav a>svg{flex:none}@media (hover:hover) and (pointer:fine){.sidebar-nav a:hover{background:var(--rail-hover);color:var(--rail-text-strong)}}.sidebar-nav a[data-active=true]{background:var(--rail-active);color:var(--rail-text-strong)}.nav-label{white-space:nowrap;flex:1;min-width:0;overflow:hidden}.sidebar-foot{border-top:1px solid var(--rail-line);margin-top:auto;padding-top:14px}.sidebar-user{align-items:center;gap:10px;min-width:0;padding:0 4px;display:flex}.sidebar-signout{width:100%;color:var(--rail-muted);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;margin-top:10px;padding:10px 4px;font-size:12px}@media (hover:hover) and (pointer:fine){.sidebar-signout:hover{background:var(--rail-hover);color:var(--rail-text-strong)}}.sidebar-user .nav-label{flex-direction:column;display:flex}.sidebar-user strong{color:var(--rail-text-strong);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.sidebar-user small{color:var(--rail-muted);white-space:nowrap;font-size:12px}.app-sidebar .user-avatar{background:var(--rail-active);width:30px;height:30px;color:var(--rail-text-strong);font-weight:500}.app-scrim{z-index:45;background:#00000080;position:fixed;inset:0}@media (max-width:1080px){.topbar-nav{display:none}.app-menu-button{order:-1;margin-right:-4px;display:grid}}@media (max-width:900px){.sync-label,.account-identity{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.topbar-sync>summary,.topbar-account>summary{justify-content:center;gap:0;min-width:44px;padding:4px}.topbar-sync,.topbar-account{position:static}.sync-menu,.account-menu{max-width:calc(100vw - 32px);right:16px}}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;min-height:48px;display:flex}.page-head>div{min-width:0}.page-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:20px;margin-left:auto;display:flex}.record-strip{gap:22px;margin:0;display:flex}.record-strip>div{flex-direction:column;align-items:flex-start;display:flex}.record-strip dd{letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin:0;font-size:26px;font-weight:300;line-height:1.05}.record-strip>div[data-tone=win] dd{color:var(--good)}.record-strip>div[data-tone=loss] dd{color:var(--bad)}.record-strip dt{color:var(--text-2);margin-top:2px;font-size:12px;font-weight:600}.page-head p{color:var(--text-2);max-width:62ch;margin-top:4px}.page-head-wide p{max-width:none}.page-head.compact h1{font-size:22px;line-height:30px}.training-action{flex-direction:column;align-items:flex-start;gap:6px;min-width:0;max-width:34ch;display:flex}.training-action small{color:var(--text-2);font-size:12px;line-height:1.5}.page-head-figure{color:var(--text-2);font-size:26px;font-weight:650}.page-head-figure span{color:var(--text-3);font-size:12px;font-weight:400;display:block}@media (max-width:560px){.page-head{gap:10px;min-height:0}.app-shell .page-head h1{font-size:24px;line-height:30px}.page-head-figure{align-items:baseline;gap:8px;font-size:20px;display:flex}.page-head-figure span{display:inline}}.page-loading{flex-direction:column;gap:24px;display:flex}.skeleton{background:var(--line);border-radius:6px;animation:1.4s ease-in-out infinite skeleton-pulse;display:block}.skeleton-title{width:260px;height:28px;margin-bottom:10px}.skeleton-line{width:100%;max-width:62ch;height:14px}.skeleton-line+.skeleton-line{margin-top:10px}.skeleton-line.short{width:140px;margin-bottom:14px}@keyframes skeleton-pulse{50%{opacity:.45}}.link-pending{opacity:0;transform-origin:0;pointer-events:none;background:currentColor;height:2px;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.link-pending[data-pending=true]{animation:2.4s ease-out .12s forwards link-pending}@keyframes link-pending{0%{opacity:1;transform:scaleX(0)}60%{transform:scaleX(.7)}to{opacity:1;transform:scaleX(.92)}}.app-shell .button{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);min-height:40px;color:var(--text);cursor:pointer;white-space:nowrap;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:600;display:inline-flex}@media (hover:hover) and (pointer:fine){.app-shell .button:hover{background:var(--surface-subtle)}}.app-shell .button.primary{background:var(--brand);color:var(--brand-ink);border-color:#0000}@media (hover:hover) and (pointer:fine){.app-shell .button.primary:hover{background:var(--brand-hover)}}.tonight-stage{grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,25rem) minmax(0,1fr);gap:28px 40px;min-height:calc(100vh - 101px);display:grid}.tonight-stage>.tonight-headline{grid-area:1/1/auto/-1}.tonight-stage>.continue-learning-card{flex-direction:column;grid-area:2/1;display:flex}.tonight-stage>.continue-learning-card>.continue-learning-body{flex:1;align-content:start}.tonight-stage>.dashboard-coach-facts{grid-area:3/1/auto/-1;gap:6px;padding-top:0}.tonight-stage .dashboard-coach-facts .panel{background:0 0;border:0;border-radius:0;padding:0}.tonight-stage .dashboard-coach-facts .panel-head{margin-bottom:8px}.app-shell .tonight-stage .dashboard-coach-facts .panel-head h2{letter-spacing:0;text-transform:none;color:var(--text-2);font-size:14px;font-weight:600}.tonight-stage .dashboard-coach-facts .weakness-name{font-size:17px;font-weight:600}.tonight-stage .dashboard-coach-facts .big-figure{letter-spacing:-.02em;font-size:22px;font-weight:400}.tonight-stage .dashboard-coach-facts .panel-reading,.tonight-stage .dashboard-coach-facts .coach-cue,.tonight-stage .dashboard-coach-facts .panel-empty{font-size:14px;line-height:1.55}.tonight-stage .dashboard-coach-facts .panel-empty{text-align:left;background:0 0;border-radius:0;padding:0}.tonight-stage .dashboard-coach-facts .coach-scenario-link{font-size:14px;font-weight:600}.tonight-stage .dashboard-coach-facts .panel-pair>.panel{border-top:1px solid var(--line);padding-top:12px}.tonight-eyebrow{color:var(--text-3);letter-spacing:0;text-transform:none;margin-bottom:10px;font-size:14px;font-weight:500}.tonight-headline h1{letter-spacing:-.04em;text-wrap:balance;font-size:clamp(2rem,min(4.4vw,3.5rem + 5vh - 45px),4.5rem);font-weight:300;line-height:1.02}.tonight-headline p{max-width:48ch;color:var(--text-2);text-wrap:pretty;margin-top:18px;font-size:16px;line-height:1.6}.continue-learning-card{--text:var(--card-ink);--text-2:var(--card-muted);--text-3:var(--card-faint);--line:var(--card-line);--line-strong:#d8d8de;--surface:#fff;--surface-subtle:#f7f7f9;border-radius:var(--radius);background:var(--card);min-height:190px;color:var(--card-ink);border:0;padding:20px 24px;box-shadow:0 10px 24px #00000052}.tonight-head{align-items:center;gap:10px;display:flex}.app-shell .tonight-head h2{color:var(--card-muted);letter-spacing:0;text-transform:none;font-size:14px;font-weight:600}.tonight-step{border-radius:var(--radius-pill);background:var(--card-ink);color:#fff;white-space:nowrap;margin-left:auto;padding:4px 10px;font-size:13px;font-weight:600}.tonight-rows{margin:16px 0 0;font-size:15px}.tonight-rows>div{border-top:1px solid var(--card-line);gap:12px;padding:clamp(8px,1.9vh - 9.1px,18px) 0;display:flex}.tonight-rows dt{color:var(--card-muted)}.tonight-rows dd{text-align:right;margin:0 0 0 auto;font-weight:600}.continue-learning-card .button.primary{border-radius:var(--radius-pill);background:var(--card-ink);color:#fff;justify-content:space-between;width:100%;min-height:52px;padding:0 22px;font-size:15px}@media (hover:hover) and (pointer:fine){.continue-learning-card .button.primary:hover{background:#2a2a32}}.continue-learning-card .button:not(.primary){border-color:var(--card-line);color:var(--card-ink);background:#fff}.continue-learning-card .session-stage-plan{gap:4px 10px;margin-top:12px;font-size:13px}.continue-learning-card .continue-learning-meta{font-size:14px}.continue-learning-body{gap:18px;margin-top:12px;display:grid}.app-shell .continue-learning-body h3{letter-spacing:-.02em;font-size:21px;font-weight:600;line-height:1.25}.continue-learning-body h3+p,.continue-learning-focus,.continue-learning-meta{color:var(--text-2);margin-top:4px}.continue-learning-focus strong{color:var(--text)}.continue-learning-meta{font-size:14px}.session-stage-plan{color:var(--text-2);flex-wrap:wrap;gap:8px 14px;margin:14px 0 0;padding:0;font-size:13px;list-style:none;display:flex}.session-stage-plan li{align-items:baseline;gap:5px;display:flex}.session-stage-plan li span{color:var(--text-3);font-variant-numeric:tabular-nums}.session-card .session-stage-plan{gap:15px;margin:22px 0;display:grid}.session-card .session-stage-plan li{grid-template-columns:34px 1fr;align-items:center;display:grid}.session-card .session-stage-plan li span{color:var(--chartreuse);font-family:var(--display);font-size:1.3rem;font-weight:500}.session-prerequisite-actions,.continue-learning-action-slot{flex-wrap:wrap;gap:10px;display:flex}.continue-learning-action-slot>*{flex:1}@media (min-width:901px){.continue-learning-action-slot{justify-content:flex-start}.continue-learning-action-slot>*{flex:none}.continue-learning-card .button.primary{border-radius:var(--radius-sm);width:auto;min-height:44px;padding:0 18px}}.continue-learning-card[data-state=loading] .continue-learning-body,.continue-learning-card[data-state=loading] .button{opacity:.62}.dashboard-coach-facts,.session-recap-facts,.session-recap-reflections{flex-direction:column;gap:10px;display:flex}.coach-scenario-link,.session-recap-reflections>p{margin:0}.coach-scenario-link a,.session-secondary-link{min-height:44px;color:var(--brand);align-items:center;font-weight:600;display:inline-flex}.panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:18px 20px}.panel-head{flex-wrap:wrap;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.panel-head p{color:var(--text-3);font-size:13px}.panel-action{min-height:44px;color:var(--brand);align-items:center;margin-left:auto;font-size:14px;font-weight:500;display:inline-flex}@media (hover:hover) and (pointer:fine){.panel-action:hover{text-decoration:underline}}.panel-empty{border-radius:var(--radius-sm);background:var(--surface-subtle);color:var(--text-2);text-align:center;padding:22px 16px}.panel-reading{color:var(--text-2);max-width:68ch;margin-top:12px}.panel-pair{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.panel-trio{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:16px;display:grid}.big-figure{font-size:32px;font-weight:650;line-height:1.2}.weakness-name{font-size:20px;font-weight:650}.stat-strip{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.stat-tile{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);padding:14px 16px}.tile-label{color:var(--text-3);font-size:13px}.tile-value{font-size:30px;font-weight:650;line-height:38px}.tile-value[data-trend=up]{color:var(--good)}.tile-value[data-trend=down]{color:var(--bad)}.tile-of{color:var(--text-3);font-size:15px;font-weight:400}.tile-detail{color:var(--text-3);font-size:12px}@media (min-width:901px) and (max-height:880px){.tonight-stage{gap:16px 40px}.tonight-headline h1{font-size:clamp(1.75rem,3.2vw,2.5rem)}.continue-learning-card{padding:12px 20px}.continue-learning-body{gap:7px;margin-top:8px}.tonight-rows{margin-top:6px}.tonight-rows>div{padding:6px 0}.continue-learning-card .session-stage-plan{margin-top:4px}}@media (min-width:901px) and (max-height:780px){.tonight-stage{gap:14px 40px}.app-main:has(>.tonight-stage){padding-top:6px;padding-bottom:8px}.tonight-headline h1{font-size:clamp(1.5rem,2.6vw,2rem)}.continue-learning-card{padding:10px 18px}.tonight-rows>div{padding:5px 0}.tonight-stage .dashboard-coach-facts .weakness-name{font-size:15px}.tonight-stage .dashboard-coach-facts .big-figure{font-size:19px}.tonight-stage .dashboard-coach-facts .panel-reading,.tonight-stage .dashboard-coach-facts .coach-cue,.tonight-stage .dashboard-coach-facts .panel-empty{font-size:14px;line-height:1.45}}@media (min-width:901px) and (max-height:715px){.tonight-stage{gap:8px 40px}}@media (max-width:900px){.tonight-stage{grid-template-columns:minmax(0,1fr);gap:22px;min-height:0}.tonight-stage>.tonight-headline{grid-area:1/1}.tonight-stage>.continue-learning-card{grid-area:2/1}.tonight-stage>.dashboard-coach-facts{grid-area:4/1}.tonight-headline p{margin-top:12px;font-size:15px}}.next-steps{flex-direction:column;gap:8px;list-style:none;display:flex}.next-steps li{border-radius:var(--radius-sm);background:var(--surface-subtle);align-items:center;gap:12px;padding:12px 14px;display:flex}.step-dot{background:var(--line-strong);border-radius:50%;flex:none;width:8px;height:8px}.next-steps li[data-tone=urgent] .step-dot{background:var(--bad)}.next-steps li[data-tone=ready] .step-dot{background:var(--warn)}.next-steps li[data-tone=resting]{border:1px dashed var(--line);background:0 0}.step-copy{flex-direction:column;flex:1;min-width:0;display:flex}.step-copy strong{font-weight:600}.step-copy small{color:var(--text-3);font-size:12px}.step-action{min-height:34px;color:var(--brand);background:0 0;border:none;flex:none;align-items:center;gap:6px;padding:0;font-size:13px;font-weight:700;display:inline-flex}@media (hover:hover) and (pointer:fine){.step-action:hover{text-decoration:underline}}.table-wrap{overflow-x:auto}.table-wrap:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.table-scroll-hint{color:var(--text-3);margin-bottom:8px;font-size:12px;display:none}@media (max-width:559px){.table-scroll-hint{display:block}.table-wrap .app-table{overflow-x:visible}}.app-table{white-space:nowrap;display:block;overflow-x:auto}.app-table>thead,.app-table>tbody{width:100%;min-width:max-content;display:table}@media (min-width:560px){.app-table{white-space:normal;display:table}.app-table>thead{display:table-header-group}.app-table>tbody{display:table-row-group}}.app-table{border-collapse:collapse;width:100%;font-size:13px}.app-table th{border-bottom:1px solid var(--line);color:var(--text-3);text-align:left;white-space:nowrap;padding:0 12px 8px 0;font-size:12px;font-weight:500}.app-table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:10px 12px 10px 0}.app-table tbody tr:last-child td{border-bottom:none}.app-table td strong{font-weight:500;display:block}.app-table td small{color:var(--text-3);font-size:12px}.app-table .numeric{text-align:right;padding-right:0}.app-table td:first-child,.app-table th:first-child{white-space:nowrap}.app-table tbody th,.app-table tbody th:first-child{white-space:normal}.app-table tbody th{border-bottom:1px solid var(--line);color:var(--text);font-size:inherit;vertical-align:middle;padding:10px 12px 10px 0;font-weight:400}.app-table tbody tr:last-child th{border-bottom:none}.app-table.compact{margin-top:14px}.app-shell .pill{text-transform:capitalize;border-radius:20px;padding:2px 9px;font-size:12px;font-weight:500;display:inline-block}.app-shell .pill.win{background:var(--good-soft);color:var(--good)}.app-shell .pill.loss{background:var(--bad-soft);color:var(--bad)}.app-shell .pill.draw{background:var(--surface-subtle);color:var(--text-2)}.lesson{color:var(--text)}.lesson.pending{color:var(--text-3)}.row-action a{color:var(--brand);white-space:nowrap;align-items:center;gap:6px;font-weight:500;display:inline-flex}@media (hover:hover) and (pointer:fine){.row-action a:hover{text-decoration:underline}}.rating-line svg{width:100%;height:96px;display:block}.rating-line polyline{fill:none;stroke:var(--brand);stroke-width:1.5px;vector-effect:non-scaling-stroke;stroke-linejoin:round}.rating-line-scale{color:var(--text-3);justify-content:space-between;font-size:12px;display:flex}.session-plan{flex-direction:column;gap:10px;margin-bottom:16px;list-style:none;display:flex}.session-plan li{align-items:flex-start;gap:12px;display:flex}.session-plan span{border-radius:var(--radius-sm);background:var(--surface-subtle);width:30px;height:30px;color:var(--text-2);flex:none;place-items:center;font-size:12px;font-weight:600;display:grid}.session-plan strong{font-weight:600;display:block}.session-plan p{color:var(--text-3);font-size:13px}.coach-note{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-subtle);padding:16px}.coach-body{color:var(--text-2);max-width:62ch}.coach-diagnosis{max-width:62ch;color:var(--text);margin-bottom:12px;font-size:16px;font-weight:500}.coach-evidence{border-top:1px solid var(--line);margin-bottom:12px;list-style:none}.coach-evidence li{border-bottom:1px solid var(--line);color:var(--text-2);justify-content:space-between;align-items:baseline;gap:16px;padding:7px 0;font-size:14px;display:flex}.coach-evidence strong{font-variant-numeric:tabular-nums;color:var(--text)}.coach-footnote{max-width:62ch;color:var(--text-3);margin-top:12px;font-size:13px}.coach-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px;display:flex}.coach-actions button{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);cursor:pointer;padding:8px 14px;font-size:14px;font-weight:500}@media (hover:hover) and (pointer:fine){.coach-actions button:hover:not(:disabled){border-color:var(--brand);color:var(--brand)}}.coach-actions button:disabled{opacity:.55;cursor:not-allowed}.coach-actions p{color:var(--bad);font-size:13px}.review-page{flex-direction:column;gap:16px;display:flex}.review-screen{grid-template-columns:minmax(0,max-content) minmax(320px,1fr);align-items:stretch;gap:16px;display:grid}.review-board{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);flex-direction:column;gap:10px;padding:16px;display:flex}.review-board:focus-visible{outline:2px solid var(--ring)}.review-board .chess-board{width:100%;max-width:var(--board);margin:0 auto}.review-board .player-strip,.review-board .board-hint{max-width:var(--board);width:100%;margin:0 auto}.player-strip{justify-content:space-between;align-items:center;gap:10px;font-size:13px;font-weight:500;display:flex}.player-strip>span:first-child{align-items:center;gap:8px;display:inline-flex}.player-strip small{color:var(--text-3);font-weight:400}.player-badge{border-radius:var(--radius-sm);background:var(--surface-subtle);place-items:center;width:24px;height:24px;font-size:14px;display:grid}.review-controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;display:flex}.review-controls button{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);min-width:40px;min-height:34px;color:var(--text-2);cursor:pointer}@media (hover:hover) and (pointer:fine){.review-controls button:hover:not(:disabled){background:var(--surface-subtle);color:var(--text)}}.review-controls button:disabled{opacity:.4;cursor:default}.review-controls p{text-align:center;min-width:130px;color:var(--text-2);font-size:13px}@media (max-width:420px){.review-controls p{flex-basis:100%;order:1;min-width:0}}.board-hint{color:var(--text-3);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;font-size:12px;line-height:1.5;display:flex}@media (pointer:coarse){.pointer-only{display:none}.app-shell .button,.app-shell button:not(.board-square),.app-shell .training-nav a,.app-menu-button,.sidebar-nav a,.topbar-nav a,.topbar-account>summary,.step-action{min-width:44px;min-height:44px}.app-shell .scenario-setup select,.app-shell .scenario-setup textarea,.app-shell .scenario-setup input[type=number],.app-shell .custom-scenario-form fieldset label,.app-shell .custom-acknowledgement,.app-shell .scenario-player-settings select,.app-shell .scenario-player-settings input[type=range]{min-height:44px}.app-shell .custom-scenario-form fieldset label,.app-shell .custom-acknowledgement{align-items:center}}.board-tools{gap:6px;display:inline-flex}.board-with-bar{width:100%;max-width:var(--board);align-items:stretch;gap:10px;margin:0 auto;display:flex}.board-with-bar .chess-board{flex:1;width:auto}.eval-bar{background:#2b3a33;border-radius:6px;flex:none;width:12px;position:relative;overflow:hidden}.eval-bar span{height:100%;transform:scaleY(var(--fill,0));transform-origin:bottom;transition:transform .2s var(--ease-out);background:#f2efe4;position:absolute;bottom:0;left:0;right:0}.eval-bar.stale{opacity:.25}.eval-bar.flipped{background:#f2efe4}.eval-bar.flipped span{background:#2b3a33}.eval-readout{color:var(--text-3);font-variant-numeric:tabular-nums;margin-left:8px}.severity-chip,.severity-dot{--severity:var(--text-3)}.blunder{--severity:#c33a2c}.mistake{--severity:#e8912a}.inaccuracy{--severity:#b8a13a}.analysis-lesson,.move-verdict{border:1px solid var(--line);border-left:3px solid var(--severity);border-radius:var(--radius-sm);background:var(--surface-subtle);flex-direction:column;gap:6px;margin-bottom:16px;padding:10px 12px;font-size:14px;display:flex}.session-split .analysis-lesson{background:0 0;border:0;border-radius:0;gap:14px;margin-bottom:0;padding:0;font-size:15px}.verdict-head{align-items:center;gap:8px;display:flex}.severity-chip{background:var(--severity);color:var(--bg);text-transform:capitalize;border-radius:999px;padding:1px 7px;font-size:11px;font-weight:600}.verdict-loss{color:var(--text-3);font-variant-numeric:tabular-nums;margin-left:auto}.verdict-time{color:var(--text-3);font-variant-numeric:tabular-nums}.play-it-out{border-top:1px solid var(--line);flex-direction:column;gap:10px;margin-top:12px;padding-top:12px;display:flex}.play-it-out-head{align-items:baseline;gap:8px;display:flex}.play-it-out-note{color:var(--text-3);margin-left:auto;font-size:13px}.play-it-out-status,.play-it-out-verdict{color:var(--text-2)}.play-it-out-verdict{color:var(--text);font-weight:600}.play-it-out-controls{flex-wrap:wrap;gap:8px;display:flex}.verdict-line span{color:var(--text-3);margin-right:6px}.verdict-action{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);min-height:30px;color:var(--text-2);font:inherit;cursor:pointer;align-self:flex-start;margin-top:4px;padding:0 12px}@media (hover:hover) and (pointer:fine){.verdict-action:hover{background:var(--surface);color:var(--text);border-color:var(--severity)}}.severity-counts{flex-wrap:wrap;gap:12px;font-size:13px;list-style:none;display:flex}.severity-counts li{align-items:center;gap:6px;display:inline-flex}.severity-dot{background:var(--severity);border-radius:50%;width:8px;height:8px}.analysis-progress{color:var(--text-3);align-items:center;gap:10px;font-size:12px;display:flex}.analysis-progress progress{flex:1;height:4px}.review-complete{border-top:1px solid var(--line);flex-direction:column;gap:10px;margin-top:16px;padding-top:16px;display:flex}.review-complete label{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;font-size:.62rem;font-weight:800}.review-complete textarea{resize:vertical;border:1px solid var(--line-strong);border-radius:var(--radius-sm);width:100%;color:var(--text);background:var(--surface-subtle);font:inherit;padding:14px}.review-complete button{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);min-height:34px;color:var(--text);font:inherit;cursor:pointer;padding:0 14px}.review-complete button:disabled{opacity:.5;cursor:not-allowed}.review-complete [role=status]{color:var(--muted);margin:0;font-size:.85rem}.review-complete.done{border-left:4px solid var(--green);padding-left:12px}.board-tools button,.board-hint button{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);min-height:28px;color:var(--text-2);font:inherit;cursor:pointer;padding:0 10px}@media (hover:hover) and (pointer:fine){.board-tools button:hover,.board-hint button:hover{background:var(--surface-subtle);color:var(--text)}}.review-rail{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-rows:minmax(120px,1fr) minmax(220px,2fr);height:0;min-height:100%;display:grid;overflow:hidden}.rail-pane{flex-direction:column;min-height:0;display:flex}.rail-pane+.rail-pane{border-top:1px solid var(--line)}.rail-heading{border-bottom:1px solid var(--line);background:var(--surface-subtle);color:var(--text-2);letter-spacing:.08em;text-transform:uppercase;flex:none;margin:0;padding:10px 12px;font-size:11px;font-weight:700}.rail-head{border-bottom:1px solid var(--line);background:var(--surface-subtle);flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:8px;padding:8px 8px 8px 12px;display:flex}.rail-head .rail-heading{background:0 0;border:0;padding:0}.rail-head .analysis-coach{flex-flow:row-reverse wrap;flex:1;justify-content:flex-start;align-items:center;gap:8px;min-width:0;display:flex}.rail-head .analysis-coach .button{white-space:normal;text-align:center;flex-basis:100%;min-height:0;margin:0;padding:8px 12px;line-height:1.3}.rail-head button{white-space:nowrap;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);min-height:28px;color:var(--text);letter-spacing:normal;text-transform:none;cursor:pointer;flex:none;margin:0;padding:0 10px;font-size:12px;font-weight:600}@media (hover:hover) and (pointer:fine){.rail-head button:hover:not(:disabled){background:var(--surface-subtle)}}.rail-head button:disabled{opacity:.5;cursor:default}.rail-head .analysis-progress{white-space:nowrap;min-width:0;margin:0}.rail-head .analysis-status{white-space:nowrap;text-overflow:ellipsis;min-width:0;min-height:0;color:var(--text-2);margin:0;font-size:12px;overflow:hidden}.rail-body{padding:12px;overflow-y:auto}.move-list{grid-template-columns:26px 1fr 1fr;gap:2px 6px;font-size:13px;list-style:none;display:grid}.move-list li{display:contents}.move-number{color:var(--text-3);padding-top:5px;font-size:12px}.move-list button{border-radius:var(--radius-sm);color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:4px;padding:4px 8px;display:flex}@media (hover:hover) and (pointer:fine){.move-list button:hover{background:var(--surface-subtle)}}.move-list button.current{background:var(--brand-soft);color:var(--brand);font-weight:600}.nag{color:var(--severity,var(--bad));font-size:12px;font-style:normal;font-weight:700}.rail-note{color:var(--text-3);margin-top:12px;font-size:12px}@media (min-width:1201px){.rail-body>.analysis-lesson{min-height:18rem}.rail-body>.analysis-lesson .verdict-action{margin-top:auto}}.rail-coach,.rail-coach .position-reader,.rail-coach .coach-panel,.rail-coach .coach-answer,.rail-coach .coach-turn,.rail-coach .coach-ask{flex-direction:column;gap:8px;font-size:13px;display:flex}.rail-coach button{align-self:flex-start}.rail-coach .coach-cue,.rail-coach .coach-line,.rail-coach .coach-question,.rail-coach .coach-remaining{color:var(--text-3)}.rail-coach .coach-turn-question,.rail-coach .coach-ask label{color:var(--text-2);font-weight:600}.reader-standing{align-items:baseline;gap:8px;display:flex}.reader-eval{color:var(--text-3);font-variant-numeric:tabular-nums}.reader-alternatives,.reader-note{color:var(--text-3)}.rail-coach .section-number{color:var(--text-3);letter-spacing:0;text-transform:none;font-size:12px}.rail-coach textarea{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--text);font:inherit;padding:8px 10px}.rail-coach button{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);min-height:36px;color:var(--text);cursor:pointer;padding:0 14px;font-size:13px;font-weight:600}@media (hover:hover) and (pointer:fine){.rail-coach button:hover:not(:disabled){background:var(--surface-subtle)}}.rail-coach button:disabled{opacity:.5;cursor:default}.app-shell .import-form>*+*{margin-top:14px}.app-shell .import-form:not(:first-child){margin-top:16px}.app-shell .field-row{flex-wrap:wrap;gap:8px;display:flex}.app-shell .field-row input{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);min-width:180px;min-height:40px;color:var(--text);font:inherit;flex:1;padding:0 12px}.app-shell .field-row button{border-radius:var(--radius-sm);background:var(--brand);min-height:40px;color:var(--brand-ink);letter-spacing:normal;text-transform:none;cursor:pointer;border:1px solid #0000;padding:0 16px;font-size:14px;font-weight:600}@media (hover:hover) and (pointer:fine){.app-shell .field-row button:hover:not(:disabled){background:var(--brand-hover)}}.app-shell .field label{letter-spacing:normal;text-transform:none;color:var(--text-2);margin-bottom:6px;font-size:13px;font-weight:400;display:block}.app-shell .input-prefix{display:none}.app-shell .form-message{margin-top:10px;font-size:13px}.app-shell .form-message.success{color:var(--good)}.app-shell .form-message.error{color:var(--bad)}.app-shell .puzzle-trainer,.app-shell .puzzle-empty,.app-shell .analysis-coach,.app-shell .report-card,.app-shell .report-empty,.app-shell .report-history{background:0 0;border:none;max-width:none;margin:0;padding:0}.app-shell .analysis-coach{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.app-shell h1,.app-shell h2,.app-shell h3{letter-spacing:-.01em;font-family:inherit}.app-shell .puzzle-heading h2,.app-shell .puzzle-empty h2,.app-shell .report-card h2{letter-spacing:normal;margin-top:4px;font-size:17px;font-weight:650}.app-shell .training-finish,.app-shell .report-focus,.app-shell .review-complete.done{border-left-color:var(--good)}.app-shell .session-card .session-stage-plan li span{color:var(--brand);font-family:inherit}.app-shell .puzzle-result{border-left-color:var(--bad);border-radius:var(--radius-sm);background:var(--bad-soft)}.app-shell .puzzle-result.correct{border-left-color:var(--good);background:var(--good-soft)}.app-shell .analysis-coach button{border-radius:var(--radius-pill);background:var(--brand);color:var(--brand-ink);border:0}@media (hover:hover) and (pointer:fine){.app-shell .analysis-coach button:hover:not(:disabled){background:var(--brand-hover);color:var(--brand-ink)}}.app-shell .section-number{color:var(--text-3);letter-spacing:normal;text-transform:none;font-size:12px;font-weight:600}.app-shell .lesson-provenance>.section-number{letter-spacing:0;text-transform:none;font-size:14px;font-variant-caps:normal;font-weight:600}.app-shell .puzzle-heading{margin-bottom:16px}.app-shell .puzzle-heading>span{background:var(--warn-soft);color:var(--warn);text-transform:none;border:none;border-radius:20px;padding:3px 10px;font-size:12px;font-weight:500}.app-shell .puzzle-grid{grid-template-columns:minmax(0, var(--board)) minmax(220px, 1fr);align-items:start;gap:24px}.app-shell .puzzle-copy>p,.app-shell .puzzle-empty>p,.app-shell .report-card p{color:var(--text-2);margin-top:10px;font-family:inherit;font-size:14px;line-height:1.5}.app-shell .puzzle-copy button,.app-shell .report-actions button{border-radius:var(--radius-sm);background:var(--brand);min-height:40px;color:var(--brand-ink);letter-spacing:normal;text-transform:none;cursor:pointer;border:1px solid #0000;padding:0 16px;font-size:14px;font-weight:600}@media (hover:hover) and (pointer:fine){.app-shell .puzzle-copy button:hover:not(:disabled),.app-shell .report-actions button:hover:not(:disabled){background:var(--brand-hover)}}.app-shell .analysis-status{color:var(--text-2);font-size:13px}@media (max-width:760px){.app-shell .puzzle-grid{--board:100%;grid-template-columns:1fr}}@media (max-width:1200px){.stat-strip{grid-template-columns:repeat(2,1fr)}.panel-trio{grid-template-columns:1fr}.review-screen{grid-template-columns:minmax(0,1fr) 300px}}@media (max-width:1000px){.panel-pair,.review-screen{grid-template-columns:1fr}.review-rail{flex-direction:column;height:auto;min-height:0;display:flex}.rail-body{overflow-y:visible}.review-board{--board:100%}}@media (min-width:1201px){.review-screen{grid-template-columns:minmax(0,max-content) minmax(391px,1fr)}.review-rail{grid-template-rows:100%;grid-template-columns:minmax(150px,max-content) minmax(240px,1fr)}.rail-pane:nth-child(2){border-top:0;border-left:1px solid var(--line)}}@media (max-width:900px){.app-topbar{min-height:62px;padding:10px 16px}.app-main{padding:16px 16px 48px}.stat-strip{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.continue-learning-card{padding:18px}.continue-learning-action-slot .button{white-space:normal;padding-block:10px}.stat-strip{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.app-shell,.app-shell *,.app-sidebar{transition-duration:.01ms!important;animation-duration:.01ms!important}}.guided-session{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);flex-direction:column;gap:8px;padding:12px 14px;display:flex;position:relative}.session-progress{background:var(--brand);opacity:0;transform-origin:0;pointer-events:none;border-radius:0 0 2px 2px;height:2px;position:absolute;top:0;left:20px;right:20px;transform:scaleX(0)}.guided-session[aria-busy=true] .session-progress{animation:session-progress 6s var(--ease-out) .1s forwards}@keyframes session-progress{0%{opacity:1;transform:scaleX(0)}55%{transform:scaleX(.62)}to{opacity:1;transform:scaleX(.92)}}.guided-session[aria-busy=true] .analysis-status{color:var(--text);font-weight:600}.guided-top{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-bottom:10px;display:flex}.guided-top-end{align-items:center;gap:14px;display:flex}.guided-stage-head{flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.guided-heading{letter-spacing:-.01em;margin:0;font-size:20px}.guided-stage-purpose{color:var(--text-2);margin:0;font-size:14px}.guided-heading:focus-visible{outline:2px solid var(--accent,currentColor);outline-offset:4px}.session-stepper{flex-wrap:wrap;gap:8px;margin:0;padding:0;font-size:12px;list-style:none;display:flex}.session-stepper li{border:1px solid var(--line);color:var(--text-3);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;display:flex}.session-stepper li[data-state=current]{border-color:var(--text);color:var(--text);font-weight:600}.session-stepper li[data-state=done]{color:var(--text-2);background:var(--surface-subtle)}.session-stepper .stepper-index{font-variant-numeric:tabular-nums}.session-stepper-detail{color:var(--text-2);margin:0;font-size:14px;font-weight:500;display:none}@media (max-width:560px){.session-stepper{flex:auto;grid-template-columns:repeat(5,minmax(0,1fr));align-self:center;gap:4px;display:grid}.session-stepper li{background:#ffffff2e;border:0;border-radius:999px;height:3px;padding:0;display:block}.session-stepper li[data-state=done],.session-stepper li[data-state=current]{background:var(--brand)}.session-stepper .stepper-index,.session-stepper .stepper-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.session-stepper-detail{flex:1 0 100%;order:3;display:block}}.session-split{--session-board:clamp(560px, min(calc(min(100vw, 1760px) - 452px), calc(100vh - 368px)), 1100px);align-items:start;gap:20px;display:flex}@media (min-width:901px){.session-side{max-height:var(--session-board,min(var(--board), 700px));overscroll-behavior:contain;scrollbar-gutter:stable;overflow-y:auto}.session-side>.session-controls,.session-side>.session-actions{background:var(--surface);margin-top:auto;padding-top:10px;padding-bottom:2px;position:sticky;bottom:0}}.session-board{flex-direction:column;flex:0 1 var(--session-board,min(var(--board), 700px));gap:4px;min-width:0;display:flex}.session-side{flex-direction:column;flex:320px;justify-content:safe center;gap:12px;min-width:300px;max-width:46rem;display:flex}.board-caption{color:var(--text-2);margin:0;font-size:13px}@media (min-width:1001px){.session-split>.session-board{align-self:start;position:sticky;top:16px}}.task-line{border:1px solid var(--line);background:var(--surface-subtle);flex-wrap:wrap;align-items:center;gap:8px 14px;padding:12px 14px;display:flex}.task-badge{background:var(--brand-soft);color:var(--brand);white-space:nowrap;border-radius:20px;margin:0;padding:4px 10px;font-size:13px;font-weight:650}.task-what{color:var(--text-2);flex:100%;margin:0}.task-count{color:var(--text-3);white-space:nowrap;margin:0 0 0 auto;font-size:13px;font-weight:600}.task-clock{color:var(--text-3);margin:0;font-size:13px}.task-next{border-top:1px solid var(--line);color:var(--text-2);flex:100%;margin:0;padding-top:10px}.task-next strong{color:var(--text)}.field-hint{color:var(--text-3);margin:-4px 0 0;font-size:13px}.reflection-input{flex-direction:column;gap:12px;min-inline-size:0;display:flex}.reflection-paper{--text:var(--card-ink);--text-2:var(--card-muted);--text-3:var(--card-faint);--line:var(--card-line);--line-strong:#d8d8de;--surface-subtle:#f7f7f9;border-radius:var(--radius);background:var(--card);color:var(--card-ink);flex-direction:column;display:flex;overflow:hidden;box-shadow:0 8px 20px #0000004d}.reflection-count{border-top:1px solid var(--card-line);color:var(--card-faint);text-align:right;margin:0;padding:10px 16px 12px;font-size:13px}.reflection-confidence{border:0;min-inline-size:0}.reflection-confidence legend{margin-bottom:4px;font-size:15px;font-weight:600}.reflection-confidence .field-hint{margin:0 0 10px}.confidence-tiles{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:10px;min-inline-size:0;display:grid}.confidence-tile{border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-content:start;align-items:center;gap:5px 10px;padding:13px 15px;transition:border-color .15s,background-color .15s;display:grid}.confidence-tile:has(:checked){border-color:#ffffffb8}.confidence-tile input{width:16px;height:16px;accent-color:var(--brand);grid-row:1;margin:0}.confidence-name{grid-row:1;font-size:15px;font-weight:600}.confidence-effect{color:var(--text-3);text-wrap:pretty;grid-column:2;font-size:12px;line-height:1.45}.confidence-tile:has(:checked) .confidence-effect{color:var(--text-2)}.session-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}@media (max-width:1000px){.session-split{flex-direction:column}.session-board,.session-side{flex:none;width:100%;min-width:0;max-width:none}}.warmup-cue{letter-spacing:-.01em;margin:0;font-size:22px;font-weight:600}.guided-session>label,.guided-session .session-side>label,.guided-session .review-complete label{color:var(--text);font-size:15px;font-weight:600}.guided-session textarea,.guided-session .review-complete textarea{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-subtle);width:100%;color:var(--text);font:inherit;resize:vertical;padding:10px 12px}.reflection-paper textarea{color:var(--card-ink);background:0 0;border:0;border-radius:0;padding:16px}.reflection-paper textarea::placeholder{color:var(--card-faint)}.reflection-paper textarea:focus-visible{outline-offset:-3px}.guided-session .reflection-paper button:not(.button):not(.board-square){color:var(--card-ink);background:0 0;border-color:#d8d8de}.guided-session .button,.guided-session button:not(.board-square){align-self:flex-start}.guided-session button:not(.button):not(.board-square){border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);cursor:pointer;padding:0 14px;font-weight:600}@media (hover:hover) and (pointer:fine){.guided-session button:not(.button):not(.board-square):hover:not(:disabled){background:var(--surface-subtle)}}.guided-session button:disabled{opacity:.55;cursor:not-allowed}.guided-session .guided-top button{width:auto;min-height:32px;color:var(--text-2);align-self:center;padding:0 12px;font-size:13px}.guided-session .session-actions button{align-self:auto}.session-controls{gap:8px;margin:0;display:flex}.board-layer-controls{flex-wrap:wrap;gap:8px;min-inline-size:0;display:flex}.guided-session button:not(.board-square),.guided-session .button,.guided-session summary{min-height:44px}.guided-session summary{align-items:center;display:flex}.board-layer-controls button{min-inline-size:0}.board-layer-controls button[aria-pressed=true]{border-color:var(--brand);background:var(--brand-soft);color:var(--brand)}.lesson-provenance{border:1px solid var(--line);border-radius:var(--radius-sm);flex-direction:column;gap:6px;min-inline-size:0;padding:13px 15px;display:flex}.lesson-coach-region{--text:var(--card-ink);--text-2:var(--card-muted);--text-3:var(--card-faint);--line:var(--card-line);--line-strong:#d8d8de;--surface:var(--card);--surface-subtle:#f7f7f9;--brand:#12356b;--brand-soft:#edf3ff;border-radius:var(--radius);background:var(--card);color:var(--card-ink);border:0;padding:18px 20px;box-shadow:0 8px 20px #0000004d}.lesson-coach-region .lesson-explanation{text-wrap:pretty;font-size:15px;line-height:1.55}.lesson-trust{color:var(--text-3);margin:0;font-size:14px}.engine-evidence-purpose{color:var(--text-3);margin:0 0 10px;font-size:14px}.explore-controls{flex-direction:column;gap:10px;margin-bottom:12px;display:flex}.lesson-coach-region button:not(.button):not(.board-square),.lesson-coach-region .coach-suggestions button{color:var(--card-ink);background:0 0}.lesson-coach-region textarea::placeholder{color:var(--card-faint)}@media (hover:hover) and (pointer:fine){.lesson-coach-region button:not(.button):not(.board-square):hover:not(:disabled),.lesson-coach-region .coach-suggestions button:hover:not(:disabled){background:#f3f3f5}}@media (prefers-reduced-motion:no-preference){.session-split:has(.analysis-lesson) .board-overlay{animation:overlay-in .32s var(--ease-out) .12s both}}@keyframes overlay-in{0%{opacity:0}}.lesson-confidence{color:var(--text-3);margin:0}.lesson-reflection{color:var(--text-2);margin:0;padding:0;font-style:italic}.lesson-evidence{flex-direction:column;gap:2px;display:flex}.lesson-teaching,.coach-panel,.coach-answer,.coach-turn,.coach-ask,.coach-answer section{flex-direction:column;gap:4px;display:flex}.coach-source{color:var(--text-3);letter-spacing:0;text-transform:none;font-size:14px;font-weight:600}.coach-answer h3{margin:0;font-size:13px}.engine-evidence,.coach-glossary{border-top:1px solid var(--line);color:var(--text-2);padding-top:8px}.engine-evidence summary,.coach-glossary summary{cursor:pointer;font-weight:600}.engine-evidence summary:has(.engine-evidence-purpose){flex-wrap:wrap;gap:4px 10px}.engine-evidence summary .engine-evidence-purpose{margin:0;font-weight:400}.engine-evidence[open] summary,.coach-glossary[open] summary{margin-bottom:8px}.coach-glossary dl,.coach-glossary dl div{gap:4px;display:grid}.coach-glossary dl{margin:0}.coach-glossary dl div{grid-template-columns:minmax(7rem,auto) 1fr}.coach-glossary dt{font-weight:600}.coach-glossary dd{color:var(--text-3);margin:0}.coach-suggestions{flex-wrap:wrap;gap:6px;display:flex}.coach-suggestions button{border:1px solid var(--line);background:var(--surface);min-height:30px;color:var(--text-2);font:inherit;cursor:pointer;border-radius:999px;padding:4px 9px}.lesson-explanation{margin:0}@media (max-width:420px){.guided-session{padding:14px}.guided-session .button,.guided-session button{align-self:stretch;width:100%}.guided-session .coach-suggestions button{width:auto}.guided-session .board-layer-controls{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.guided-session .board-layer-controls button{width:100%}.coach-glossary dl div{grid-template-columns:1fr}.warmup-cue{font-size:18px}.task-line{gap:8px}.task-count{margin-left:0}}.app-shell .section-label{letter-spacing:0;text-transform:none;color:var(--text-2);font-size:14px;font-weight:600;line-height:1.4}.progress-navigation{gap:8px}.progress-overview,.history-tabs summary,.history-tabs-menu>*{border-radius:var(--radius-pill);color:#ffffffc7;white-space:nowrap;align-items:center;min-height:44px;padding:8px 14px;font-size:14px;text-decoration:none;display:inline-flex}.progress-overview[aria-current=page]{background:var(--card);color:var(--card-ink);font-weight:600}.history-tabs{position:relative}.history-tabs summary{cursor:pointer;list-style:none}.history-tabs summary::-webkit-details-marker{display:none}.history-tabs summary:after{content:"⌄";margin-left:8px;font-size:16px}.history-tabs[open] summary:after{transform:rotate(180deg)}.history-tabs[open] summary{color:var(--text);background:#ffffff1a}.history-tabs-menu{z-index:2;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-width:max-content;padding:4px;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 30px #00000029}.history-tabs-menu [aria-current=page]{background:var(--card);color:var(--card-ink);font-weight:600}@media (hover:hover) and (pointer:fine){.progress-overview:hover,.history-tabs summary:hover,.history-tabs-menu a:hover{color:var(--text);background:#ffffff14}}.verdict-head{border-bottom:1px solid var(--line);align-items:baseline;gap:14px;padding-bottom:12px;display:flex}.progress-current{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);flex-direction:column;gap:5px;padding:20px 24px 22px;display:flex}.progress-current-focus{letter-spacing:-.02em;margin-top:6px;font-size:26px;font-weight:580;line-height:1.15}.progress-current .panel-reading{max-width:68ch}.progress-current .coach-cue{max-width:72ch;margin-top:8px}.progress-trackers{border-bottom:1px solid var(--line);gap:0;margin-top:14px;display:grid}.progress-tracker{border-top:1px solid var(--line);grid-template-columns:minmax(13rem,.75fr) minmax(16rem,1.25fr);align-items:center;gap:18px;min-height:64px;padding:10px 0;display:grid}.progress-tracker-head{flex-direction:column;gap:2px;min-width:0;display:flex}.progress-tracker-label{color:var(--text);font-size:14px;font-weight:650}.progress-tracker-value{color:var(--text-3);font-variant-numeric:tabular-nums;font-size:13px}.progress-tracker progress{appearance:none;border-radius:var(--radius-pill);background:var(--line);border:0;width:100%;height:8px;overflow:hidden}.progress-tracker progress::-webkit-progress-bar{border-radius:var(--radius-pill);background:var(--line)}.progress-tracker progress::-webkit-progress-value{border-radius:var(--radius-pill);background:var(--brand)}.progress-tracker progress::-moz-progress-bar{border-radius:var(--radius-pill);background:var(--brand)}.progress-tracker-empty{color:var(--text-3);font-size:13px}.progress-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:22px 24px 24px}.app-main:has(>.progress-headline)>.panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:22px 24px 24px}.progress-headline{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);align-items:stretch;gap:24px;display:grid}.progress-verdict{flex-direction:column;display:flex}.progress-eyebrow{color:var(--text-2);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:9px;font-size:12.5px;font-weight:650;display:inline-flex}.progress-eyebrow:before{content:"";background:var(--text-3);border-radius:50%;width:8px;height:8px}.progress-eyebrow[data-tone=bad]:before{background:var(--bad)}.progress-eyebrow[data-tone=good]:before{background:var(--good)}.progress-eyebrow[data-tone=flat]:before{background:var(--warn)}.app-shell .progress-verdict-name{letter-spacing:-.03em;text-wrap:balance;margin-top:14px;font-size:40px;font-weight:300;line-height:1.04}.progress-verdict-reading{max-width:54ch;color:var(--text-2);text-wrap:pretty;margin-top:12px;font-size:16px;line-height:1.5}.progress-verdict-reading strong{color:var(--text);font-weight:600}.progress-verdict-actions{flex-wrap:wrap;align-items:center;gap:8px 20px;margin-top:22px;display:flex}.progress-verdict-actions .button{min-height:46px;padding:0 18px}.progress-verdict-link{color:var(--text-2);text-underline-offset:3px;font-size:14px;text-decoration:underline}.progress-verdict-note{max-width:62ch;color:var(--text-3);text-wrap:pretty;margin:auto 0 0;padding-top:20px;font-size:13px}.progress-rating-figure{flex-wrap:wrap;align-items:baseline;gap:12px;margin-top:12px;display:flex}.app-shell .progress-rating-figure strong{letter-spacing:-.03em;font-size:40px;font-weight:300;line-height:1}.progress-delta{border-radius:var(--radius-pill);background:var(--surface-subtle);color:var(--text-2);white-space:nowrap;align-items:center;gap:8px;padding:4px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.progress-delta>span{background:currentColor;border-radius:50%;width:6px;height:6px}.progress-delta[data-tone=good]{background:var(--good-soft);color:var(--good)}.progress-delta[data-tone=bad]{background:var(--bad-soft);color:var(--bad)}.weakness-table{border-collapse:collapse;width:100%;margin-top:16px}.weakness-table th,.weakness-table td{text-align:left;vertical-align:middle;border-top:1px solid var(--line);padding:13px 10px}.weakness-table thead th{color:var(--text-3);border-top:0;padding-top:0;padding-bottom:10px;font-size:12.5px;font-weight:600}.weakness-table th:first-child,.weakness-table td:first-child{padding-left:0}.weakness-table th:last-child,.weakness-table td:last-child{padding-right:0}.weakness-table tbody th[scope=row]{font-size:15px;font-weight:600}.weakness-games{gap:6px;min-width:15rem;display:grid}.weakness-games-line{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.weakness-games-line strong{font-weight:600}.weakness-games-line>span{color:var(--text-3);font-size:13px}.weakness-rail{border-radius:var(--radius-pill);background:var(--line);height:4px;display:block;overflow:hidden}.weakness-rail>span{border-radius:var(--radius-pill);background:var(--brand);height:100%;display:block}.weakness-trend{align-items:center;gap:10px;min-width:11rem;display:inline-flex}.weakness-trend>b{background:var(--surface-subtle);width:22px;height:22px;color:var(--text-2);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:700;display:inline-grid}.weakness-trend[data-tone=bad]>b{background:var(--bad-soft);color:var(--bad)}.weakness-trend[data-tone=good]>b{background:var(--good-soft);color:var(--good)}.weakness-trend[data-tone=none]>b{border:1px dashed var(--line-strong);color:var(--text-3);background:0 0}.weakness-trend small{color:var(--text-3);font-size:12.5px;display:block}.weakness-practice{color:var(--text-3)}.weakness-train{text-align:right;white-space:nowrap}.weakness-train a{color:var(--text);font-weight:600;text-decoration:none}.weakness-table tfoot th,.weakness-table tfoot td{border-top:1px solid var(--line-strong);color:var(--text-2);font-size:13.5px}.weakness-table tfoot th[scope=row]{color:var(--text);font-weight:600}.progress-footnotes{gap:6px;margin-top:18px;display:grid}.progress-footnotes>.index-key,.progress-footnotes>.practice-line{max-width:96ch;margin:0}.practice-line{color:var(--text-3);text-wrap:pretty;font-size:14px}.practice-line strong{color:var(--text);font-weight:600}.progress-tail{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);align-items:stretch;gap:24px;display:grid}.progress-record-links{margin:0;padding:0;list-style:none;display:grid}.progress-record-links li{border-top:1px solid var(--line);gap:2px;padding:12px 0;display:grid}.progress-record-links li:first-child{border-top:0;padding-top:4px}.progress-record-links a{color:var(--text);font-weight:600;text-decoration:none}.progress-record-links span{color:var(--text-3);font-size:13px}.app-shell .progress-card>.index-head>.section-label{letter-spacing:-.01em;color:var(--text);font-size:19px;font-weight:580}.app-shell .app-main:has(>.progress-headline)>.panel>.panel-head h2{letter-spacing:-.01em;color:var(--text);font-size:19px;font-weight:580}.progress-rating{min-width:0}.progress-rating .rating-line{margin-top:14px}.index-head{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.index-head>p{color:var(--text-3);margin:0 0 0 auto;font-size:13px}.index-head>p strong{color:var(--text);font-weight:600}.index-key{max-width:70ch;color:var(--text-3);text-wrap:pretty;align-items:center;gap:8px;margin:14px 0 0;font-size:14px;display:flex}.repertoire{min-width:0}.repertoire-head{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.repertoire-head>p{color:var(--text-3);margin:0;font-size:13px}.repertoire-action{min-height:44px;color:var(--text-2);white-space:nowrap;align-items:center;margin-left:auto;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}@media (hover:hover) and (pointer:fine){.repertoire-action:hover{text-decoration:underline}}.repertoire-table{border-collapse:collapse;width:100%;margin-top:10px;font-size:14px}.app-shell .repertoire-table th,.app-shell .repertoire-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:baseline;padding:9px 0;font-weight:400}.app-shell .repertoire-table th[scope=row]{text-wrap:pretty;width:100%;padding-right:16px}.app-shell .repertoire-table td{white-space:nowrap}.app-shell .repertoire-table th+td,.app-shell .repertoire-table td+td{padding-left:14px}.app-shell .repertoire-table tr:last-child th,.app-shell .repertoire-table tr:last-child td{border-bottom:0}.repertoire-table a{color:var(--text);text-decoration:none}@media (pointer:coarse){.repertoire-table a{align-items:center;min-height:44px;display:inline-flex}}@media (hover:hover) and (pointer:fine){.repertoire-table a:hover{text-decoration:underline}}.app-shell .repertoire-table .repertoire-eco{width:3.2rem;color:var(--text-3);padding-right:14px}.repertoire-side{width:4rem;color:var(--text-2)}.repertoire-games{width:3rem;color:var(--text-2)}.app-shell .repertoire-table td[data-tone=loss]{color:var(--bad)}.app-shell .repertoire-table td.numeric{text-align:right;width:4.6rem}.panel>.coach-note{background:0 0;border:0;border-radius:0;padding:0}.progress-records-note{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:16px 24px}.library-grid{border-top:1px solid var(--line);grid-template-columns:20rem minmax(0,1fr);gap:36px;padding-top:16px;display:grid}.start-here-name{letter-spacing:-.03em;text-wrap:balance;margin-top:14px;font-size:26px;font-weight:300;line-height:1.1}.start-here-evidence{color:var(--text-2);text-wrap:pretty;margin-top:6px;font-size:13px}.start-here-path{flex-direction:column;margin:18px 0 0;padding:0;list-style:none;display:flex}.start-here-path li{border-top:1px solid var(--line);align-items:baseline;gap:10px;padding:11px 0;display:flex}.path-index{width:1.2rem;color:var(--text-3);font-variant-numeric:tabular-nums;flex:none;font-size:12px;font-weight:700}.start-here-path a{flex-direction:column;gap:2px;min-width:0;text-decoration:none;display:flex}@media (hover:hover) and (pointer:fine){.start-here-path a:hover .concept-title{text-decoration:underline}}.start-here .button{border-radius:var(--radius-pill);justify-content:space-between;width:100%;min-height:48px;margin-top:18px}.library-phase h3{border-bottom:1px solid var(--line-strong);align-items:baseline;gap:8px;padding-bottom:8px;font-size:13px;font-weight:600;display:flex}.library-phase h3 span{color:var(--text-3);font-weight:400}.library-phase ul{margin:6px 0 0;padding:0;list-style:none}.library-phase a{color:var(--text-2);align-items:center;gap:8px;padding:clamp(6px,2.2vh - 13.8px,16px) 0;font-size:13px;text-decoration:none;display:flex}@media (hover:hover) and (pointer:fine){.library-phase a:hover{color:var(--text);text-decoration:underline}}.index-dot{background:0 0;border-radius:50%;flex:none;width:6px;height:6px}.library-phase a[data-seen=true] .index-dot,.index-key .index-dot{background:var(--brand)}.index-more{color:var(--text-3)!important}.concept-index .repertoire{border-top:1px solid var(--line);margin-top:22px;padding-top:16px}@media (max-width:1080px){.library-grid,.progress-headline,.progress-tail{grid-template-columns:minmax(0,1fr)}}@media (max-width:720px){.app-shell .progress-verdict-name{font-size:30px}.progress-current,.progress-card{padding:17px 18px 19px}.app-main:has(>.progress-headline)>.panel{padding:17px 18px 19px}.progress-tracker{grid-template-columns:minmax(0,1fr);gap:8px;min-height:0;padding:13px 0}.weakness-table thead{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.weakness-table tr{border-top:1px solid var(--line);gap:8px;padding:14px 0;display:grid}.weakness-table tbody th[scope=row],.weakness-table tfoot th[scope=row]{border:0;padding:0;font-size:16px}.weakness-table td{border:0;padding:0}.weakness-table td[data-label]:not([data-label=""]):before{content:attr(data-label);color:var(--text-3);margin-bottom:2px;font-size:12px;display:block}.weakness-table .weakness-train{text-align:left}.progress-weaknesses .table-scroll-hint{display:none}.weakness-trend,.weakness-games{min-width:0}}.cycle-facts{grid-template-columns:minmax(140px,auto) 1fr;gap:4px 16px;margin:0;font-size:13px;display:grid}.cycle-facts dt{color:var(--text-3)}.cycle-facts dd{margin:0}.cycle-activation{flex-direction:column;align-items:flex-start;gap:12px;display:flex}@media (max-width:420px){.cycle-facts{grid-template-columns:1fr}.cycle-facts dt{margin-top:6px}}.concept-title{font-weight:600}.concept-summary{color:var(--text-3);text-wrap:pretty;font-size:13px}.concept-points{flex-direction:column;gap:10px;max-width:68ch;padding-left:18px;display:flex}.concept-points li{padding-left:4px}.concept-cue{border-left:3px solid var(--brand);padding-left:12px;font-weight:600}.opening-search,.concept-search{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.opening-search .field{flex:220px}.concept-search .field{flex:0 auto}.opening-search input,.opening-search select,.concept-search input,.concept-search select{width:100%;min-height:38px;color:var(--text);background-color:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);font:inherit;padding:6px 10px}.opening-search select{padding-right:34px}.concept-search input,.concept-search select,.concept-search .button{border-radius:var(--radius-pill);min-height:44px}.concept-search input{width:17rem;padding-inline:16px}.concept-search select{width:auto;padding-inline:16px 40px}.opening-line{color:var(--text-2);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.library-credit{color:var(--text-3);align-items:center;gap:6px;font-size:12px;display:flex}.library-credit a{color:inherit}@media (max-width:560px){.opening-search .field,.concept-search .field,.concept-search input{flex-basis:100%;width:100%}}.concept-guide[data-with-board=true]{grid-template-columns:minmax(0,320px) minmax(0,1fr);align-items:start;gap:24px;display:grid}.concept-board{flex-direction:column;gap:10px;display:flex}.concept-board figcaption{color:var(--text-2);font-size:13px;line-height:1.5}.concept-guide .concept-points{padding-top:2px}@media (max-width:860px){.concept-guide[data-with-board=true]{grid-template-columns:minmax(0,1fr)}.concept-board{max-width:360px}}.training-nav{border:1px solid var(--line);background:var(--surface);align-self:flex-start;align-items:center;gap:4px;min-width:0;padding:4px;display:flex}.training-nav a{min-width:0;color:var(--text-2);padding:7px 12px;font-size:13px;font-weight:600;text-decoration:none}@media (hover:hover) and (pointer:fine){.training-nav a:hover{color:var(--text);background:var(--surface-subtle)}}.training-nav a[aria-current=page]{color:var(--brand);background:var(--brand-soft)}.scenario-lab,.scenario-player,.scenario-side,.scenario-board,.scenario-setup-grid>*,.custom-scenario-form>*,.scenario-player-head>*,.scenario-play-grid>*,.scenario-side>*,.scenario-actions>*{min-width:0}.scenario-lab{flex-direction:column;gap:20px;display:flex}.scenario-setup{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 20px;display:flex}.scenario-setup-grid{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px 16px;margin-left:auto;display:flex}.custom-scenario-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.custom-scenario-form,.scenario-setup>.panel-empty{flex-basis:100%}.scenario-setup .field,.custom-scenario-form fieldset{min-width:0}.scenario-setup .field label,.scenario-player-settings label,.custom-scenario-form legend{color:var(--text-2);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.scenario-setup>.scenario-setup-grid .field{flex:14rem;align-items:center;gap:10px;min-width:0;display:flex}.scenario-setup>.scenario-setup-grid .field label{white-space:nowrap;margin-bottom:0}.scenario-setup>.scenario-setup-grid select{flex:auto;width:100%;min-width:0;max-width:22rem}.scenario-setup select,.scenario-setup textarea,.scenario-setup input[type=number],.scenario-player-settings select{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background-color:var(--surface);width:100%;min-width:0;min-height:40px;color:var(--text);padding:7px 10px}.scenario-setup select,.scenario-player-settings select{padding-right:38px}.custom-scenario-form{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.custom-fen-field,.custom-acknowledgement,.scenario-safety-copy{grid-column:1/-1}.scenario-setup textarea{resize:vertical}.custom-scenario-form fieldset{border:0;align-items:center;gap:14px;padding:0;display:flex}.custom-scenario-form fieldset label,.custom-acknowledgement{align-items:center;gap:7px;display:inline-flex}.custom-scenario-form fieldset legend{width:100%}.scenario-safety-copy{max-width:70ch;color:var(--text-2);font-size:13px}.custom-scenario-form>.button{justify-self:start}.scenario-player{border-top:3px solid var(--brand);padding:18px}.scenario-player-head{justify-content:space-between;align-items:flex-start;gap:18px;min-width:0;margin-bottom:12px;display:flex}.scenario-player-head>div{min-width:0}.scenario-player-head>div>p:last-child,.scenario-engine-note,.scenario-history>p{color:var(--text-2)}.scenario-kicker{color:var(--brand);font-size:12px;font-weight:650}.scenario-phase{border:1px solid var(--line);background:var(--surface-subtle);color:var(--text-2);flex:none;padding:5px 9px;font-size:12px;font-weight:600}.scenario-play-grid{--scenario-board:clamp(420px, min(calc(min(100vw, 1760px) - 452px), calc(100vh - 404px)), 1100px);grid-template-columns:minmax(0, var(--scenario-board)) minmax(260px, 1fr);align-items:start;gap:24px;min-width:0;display:grid}.scenario-board{flex-direction:column;gap:8px;display:flex}.scenario-side{flex-direction:column;gap:16px;display:flex}@media (min-width:961px){.scenario-side{max-height:var(--scenario-board,700px);overscroll-behavior:contain;scrollbar-gutter:stable;overflow-y:auto}}.scenario-facts,.scenario-result-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.scenario-facts>div,.scenario-result-facts>div{border-left:2px solid var(--line-strong);background:var(--surface-subtle);min-width:0;padding:10px 12px}.scenario-facts dt,.scenario-result-facts dt{color:var(--text-3);font-size:12px}.scenario-facts dd,.scenario-result-facts dd{margin:2px 0 0;font-weight:600}.scenario-player-settings{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;min-width:0;display:grid}.scenario-player-settings label,.scenario-player-settings select{grid-column:1/-1}.scenario-player-settings select{max-width:16rem}.scenario-player-settings input[type=range]{width:100%;min-width:0}.scenario-player-settings output{color:var(--text-2);white-space:nowrap;font-size:13px}.scenario-history{border-top:1px solid var(--line);padding-top:14px}.scenario-moves,.scenario-evidence ol{flex-wrap:wrap;gap:6px 16px;margin-top:8px;padding-left:20px;display:flex}.scenario-moves{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.scenario-actions{flex-wrap:wrap;gap:8px;min-width:0;display:flex}.scenario-actions .button,.custom-scenario-form .button{white-space:normal}.scenario-actions .button:disabled,.scenario-setup :disabled{opacity:.55;cursor:not-allowed}.scenario-result{border:1px solid var(--line-strong);border-left:4px solid var(--brand);background:var(--brand-soft);margin-top:22px;padding:18px}.scenario-verdict{margin:6px 0 14px;font-size:16px;font-weight:600}.scenario-evidence{border-top:1px solid var(--line-strong);margin-top:16px;padding-top:16px}.scenario-evidence li{min-width:0}.scenario-evidence li span{color:var(--text-2)}.scenario-live{min-height:1.5em;color:var(--text-2)}@media (max-width:960px){.scenario-play-grid{grid-template-columns:minmax(0,1fr)}.scenario-board{width:100%;max-width:var(--scenario-board,560px)}}@media (max-width:560px){.training-nav,.scenario-player-head{width:100%}.training-nav a{text-align:center;flex:1 1 0}.scenario-setup-grid,.custom-scenario-form,.scenario-facts,.scenario-result-facts{grid-template-columns:minmax(0,1fr)}.custom-fen-field,.custom-acknowledgement,.scenario-safety-copy{grid-column:auto}.scenario-player{padding:14px}.scenario-player-head{flex-direction:column}.scenario-phase{white-space:normal}.scenario-actions .button,.custom-scenario-form>.button{justify-content:center;width:100%}}.legal-page{width:min(100% - 40px,1120px);max-width:1120px;color:var(--ink);margin:0 auto;padding:0 0 64px}.legal-header{border-bottom:1px solid var(--line);align-items:center;min-height:88px;display:flex}.legal-shell{grid-template-columns:minmax(220px,260px) minmax(0,72ch);align-items:start;gap:clamp(40px,7vw,80px);padding-top:clamp(40px,6vw,72px);display:grid}.legal-shell-solo{grid-template-columns:minmax(0,72ch)}.legal-rail{color:var(--muted);font-size:14px;line-height:1.45;position:sticky;top:24px}.legal-rail-title{color:var(--ink);letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px;font-size:12px;font-weight:700}.legal-rail ol{gap:8px;list-style:none;display:grid}.legal-rail a:hover,.legal-rail a:focus-visible{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.legal-rail-meta{border-top:1px solid var(--line);gap:8px;margin-top:28px;padding-top:16px;font-size:13px;display:grid}.legal-article{max-width:72ch;color:var(--ink);font-size:16px;line-height:1.7}.legal-article h1{font-family:var(--display);font-size:clamp(2.4rem,4vw,3.5rem);line-height:1}.legal-article h2{font-family:var(--display);scroll-margin-top:24px;font-size:1.35rem;line-height:1.2}.legal-article p,.legal-article li{font-size:inherit}.legal-article>*{margin:0}.legal-article>*+*{margin-top:24px}.legal-article>h2{margin-top:48px}.legal-article>h1+*{margin-top:32px}.legal-article>h2+*{margin-top:12px}.legal-article>p+ul{margin-top:8px}.legal-article ul{padding-left:30px}.legal-article li::marker{color:var(--muted)}.legal-article li+li{margin-top:16px}.legal-footer{border-top:1px solid var(--line);flex-wrap:wrap;gap:8px 20px;margin-top:56px;padding-top:20px;display:flex}.legal-page>.legal-footer{color:var(--ink);justify-content:flex-end;gap:8px 24px;font-size:1rem}.legal-page>.legal-footer a{align-items:center;min-height:44px;display:inline-flex}.legal-page>.legal-footer a:hover{text-underline-offset:3px;text-decoration:underline}@media (max-width:900px){.legal-page{width:min(100% - 32px,1120px)}.legal-shell{grid-template-columns:minmax(0,1fr);gap:28px}.legal-rail{position:static}}.legal-acceptance-form .legal-links{flex-wrap:wrap;gap:8px 20px;margin:0 0 20px;padding:0;list-style:none;display:flex}.legal-confirm{align-items:flex-start;gap:10px;margin-bottom:20px;line-height:1.5;display:flex}.legal-confirm input{flex:none;width:20px;height:20px;margin-top:2px}.login-recovery{margin:12px 0 0;font-size:14px}.account-progress,.account-settings{border:1px solid var(--line);border-radius:var(--radius-sm);width:100%;color:var(--text-2);margin-top:12px;padding:9px 12px;font-size:13px;text-decoration:none;display:block}@media (hover:hover) and (pointer:fine){.account-progress:hover,.account-settings:hover{background:var(--surface-subtle);color:var(--text)}}.sidebar-progress,.sidebar-settings{width:100%;color:var(--rail-muted);border-radius:8px;margin-top:10px;padding:10px 4px;font-size:12px;text-decoration:none;display:block}@media (hover:hover) and (pointer:fine){.sidebar-progress:hover,.sidebar-settings:hover{background:var(--rail-hover);color:var(--rail-text-strong)}}.button.danger{border-color:var(--bad);color:var(--bad);background:0 0}@media (hover:hover) and (pointer:fine){.button.danger:hover:not(:disabled){background:var(--bad-soft)}}.public-home.sample-page{max-width:1040px;margin:0 auto;padding:0 20px 64px}.sample-body{gap:40px;padding-top:40px;display:grid}.sample-copy h1{text-wrap:balance;margin:4px 0 12px}.sample-deck{max-width:620px;color:var(--text-soft);text-wrap:pretty;line-height:1.65}.sample-board{max-width:460px}.sample-legend{color:var(--text-soft);flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:12px;font-size:.9rem;display:flex}.sample-legend-item{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.sample-key{border-radius:2px;width:18px;height:3px;display:inline-block}.sample-key-red{background:#c33a2c}.sample-key-green{background:#3f9d5a}.sample-lesson{gap:32px;font-size:1rem;line-height:1.6;display:grid}.sample-lesson p{text-wrap:pretty}.sample-reflection{gap:10px;display:grid}.sample-reflection h2,.sample-page .coach-source{color:var(--text);margin:0;font-size:1.05rem;font-weight:700;line-height:1.3}.sample-reflection p{color:var(--text-soft)}.sample-page .coach-answer{gap:0;display:grid}.sample-page .coach-answer>*+*{margin-top:20px}.sample-page .coach-source+section{margin-top:12px}.sample-page .coach-answer section{gap:6px;display:grid}.sample-page .coach-answer h3{color:var(--text-soft);margin:0;font-size:.875rem;font-weight:700;line-height:1.3}.sample-page .coach-line{color:var(--text-soft)}.sample-page .coach-line strong{color:var(--text)}.sample-foot{border-top:1px solid var(--line);min-height:92px;color:var(--text-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;margin-top:64px;padding:0;font-size:.875rem;line-height:1.5;display:flex}.sample-foot p{margin:0}.sample-foot a{color:var(--text)}.sample-foot a:hover,.sample-foot a:focus-visible{text-underline-offset:4px;text-decoration:underline}.sample-foot nav{gap:22px;display:flex}.sample-foot nav a{align-items:center;min-height:44px;display:inline-flex}@media (min-width:900px){.sample-body{grid-template-columns:minmax(0,460px) minmax(0,1fr);grid-template-areas:"copy copy""board lesson";column-gap:48px}.sample-copy{grid-area:copy}.sample-board{grid-area:board}.sample-lesson{grid-area:lesson}}.public-home{--field:#f4f1e7;--surface:#fffdf7;--line:#cbd8cf;--text:#143f34;--text-soft:#526a61;--accent:#a9482e;width:100%;max-width:none;min-height:100vh;color:var(--text);background:var(--field);margin:0;padding:0 36px;font-family:Avenir Next,Avenir,Helvetica Neue,Arial,sans-serif}:is(html:has(.public-home),body:has(.public-home)){background:#f4f1e7}body:has(.public-home):before{display:none}.public-header,.public-hero,.public-flow,.public-product-band,.public-trust,.public-footer{width:min(100%,1440px);margin-inline:auto}.public-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:88px;display:flex}.public-brand{letter-spacing:.01em;align-items:center;gap:12px;font-size:20px;font-weight:700;display:inline-flex}.public-board-mark{flex:none;grid-template-columns:repeat(4,7px);grid-auto-rows:7px;display:grid}.public-board-mark>span[data-on=true]{background:currentColor}.public-nav{color:var(--text-soft);align-items:center;gap:24px;font-size:14px;font-weight:650;display:flex}.public-nav a:hover,.public-already-invited a:hover,.public-trust a:hover,.public-footer a:hover{color:var(--text);text-underline-offset:4px;text-decoration:underline}.public-sign-in-link{min-height:44px;color:var(--text);background:var(--surface);border:1px solid #9eb3a6;border-radius:11px;align-items:center;padding:0 18px;display:inline-flex}.public-hero{background:linear-gradient(110deg,#dfead9 0%,#eef2df 54%,#d4e2cf 100%);border:1px solid #cbd8c7;border-radius:16px;grid-template-columns:minmax(0,1.3fr) minmax(360px,1fr);min-height:650px;margin-top:28px;display:grid;position:relative;overflow:hidden}.public-hero-copy{z-index:3;align-self:center;padding:clamp(44px,6vw,88px);position:relative}.public-eyebrow{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px;font-size:12px;font-weight:750}.public-hero h1{max-width:760px;color:var(--text);letter-spacing:-.035em;text-wrap:balance;font-family:Georgia,Times New Roman,serif;font-size:clamp(52px,6vw,82px);font-weight:500;line-height:.98}.public-lede{color:#42534b;text-wrap:pretty;max-width:650px;margin-top:22px;font-size:clamp(17px,1.7vw,21px);line-height:1.55}.public-actions{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.public-primary-action,.public-secondary-action{border-radius:11px;justify-content:center;align-items:center;gap:18px;min-height:48px;padding:0 19px;font-size:14px;font-weight:700;display:inline-flex}.public-primary-action{color:var(--surface);background:var(--text)}.public-secondary-action{color:var(--text);background:#fffdf76b;border:1px solid #143f3452}.public-primary-action:hover{background:#1b5244}.public-secondary-action:hover{background:var(--surface)}.public-already-invited{color:var(--text-soft);margin-top:15px;font-size:14px}.public-already-invited a{color:var(--text);font-weight:700}.public-fair-play{color:var(--text-soft);align-items:center;gap:8px;margin-top:30px;font-size:12px;font-weight:650;display:flex}.public-fair-play span{background:#347756;border-radius:50%;width:8px;height:8px}.public-hero-visual{min-height:650px;position:relative}.public-hero-visual:before{content:"";border:1px solid #143f3424;border-radius:50%;width:520px;height:520px;position:absolute;top:-130px;right:-35px;box-shadow:0 0 0 54px #ffffff1f,0 0 0 108px #ffffff17}.public-queen{z-index:1;filter:drop-shadow(0 28px 30px #152c2347);pointer-events:none;background:url(/queen.webp) 50%/contain no-repeat;width:378px;height:748px;position:absolute;bottom:-64px;right:clamp(20px,5vw,80px)}.public-example-insight{background:#fffdf7f2;border:1px solid #153f3324;border-radius:14px;grid-template-columns:auto minmax(0,1fr);gap:2px 12px;max-width:480px;margin-top:20px;padding:12px 14px;display:grid;box-shadow:0 3px 8px #19372b1a}.public-example-insight small,.public-example-insight strong,.public-example-insight span{display:block}.public-example-insight small{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;border-right:1px solid #153f3324;grid-row:1/span 2;align-self:center;margin-bottom:0;padding-right:12px;font-size:10px;font-weight:800}.public-example-insight strong{font-size:14px;line-height:1.35}.public-example-insight span{color:var(--text-soft);margin-top:0;font-size:12px}.public-flow{padding:clamp(72px,8vw,110px) clamp(8px,4vw,48px)}.public-section-heading{justify-content:space-between;align-items:flex-end;gap:36px;margin-bottom:36px;display:flex}.public-section-heading h2,.public-product-copy h2,.public-trust h2{color:var(--text);letter-spacing:-.025em;text-wrap:balance;font-family:Georgia,Times New Roman,serif;font-size:clamp(32px,4vw,52px);font-weight:500;line-height:1.08}.public-section-heading h2{max-width:720px}.public-section-heading p{max-width:380px;color:var(--text-soft);font-size:15px;line-height:1.55}.public-steps{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.public-steps article{min-width:0;padding:32px 30px 36px}.public-steps article+article{border-left:1px solid var(--line)}.public-steps span{color:var(--accent);font-size:12px;font-weight:750}.public-steps h3{color:var(--text);text-wrap:balance;margin-top:14px;font-size:20px;line-height:1.25}.public-steps p{color:var(--text-soft);text-wrap:pretty;margin-top:10px;font-size:14px;line-height:1.6}.public-product-band{color:#fffdf7;background:var(--text);border-radius:16px;grid-template-columns:minmax(0,.9fr) minmax(380px,1.1fr);align-items:center;gap:clamp(48px,8vw,120px);padding:clamp(48px,7vw,86px);display:grid}.public-product-copy h2{color:#fffdf7}.public-product-copy p{color:#c9d7d0;text-wrap:pretty;max-width:620px;margin-top:20px;font-size:16px;line-height:1.65}.public-product-copy a{color:#d9f15a;gap:28px;margin-top:26px;font-size:14px;font-weight:750;display:inline-flex}.public-product-copy a:hover{text-underline-offset:5px;text-decoration:underline}.public-example-report{border-top:1px solid #ffffff3b}.public-example-report div{border-bottom:1px solid #ffffff3b;grid-template-columns:minmax(130px,.55fr) minmax(0,1fr);align-items:baseline;gap:24px;padding:22px 0;display:grid}.public-example-report span{color:#aebfb6;font-size:12px}.public-example-report strong{color:#fffdf7;font-size:18px;font-weight:600}.public-trust{grid-template-columns:minmax(0,1fr) minmax(300px,.7fr);gap:clamp(48px,10vw,150px);padding:clamp(72px,8vw,108px) clamp(8px,4vw,48px);display:grid}.public-trust h2{font-size:clamp(30px,3vw,44px)}.public-trust p{max-width:680px;color:var(--text-soft);text-wrap:pretty;margin-top:16px;font-size:15px;line-height:1.65}.public-trust>p{align-self:end;margin-top:0}.public-trust a{color:var(--text);font-weight:700}.public-footer{border-top:1px solid var(--line);min-height:92px;color:var(--text-soft);justify-content:space-between;align-items:center;gap:24px;font-size:13px;display:flex}.public-footer nav{gap:22px;display:flex}@media (max-width:980px){.public-hero{grid-template-columns:minmax(0,1fr) minmax(290px,.55fr)}.public-hero-copy{padding:52px 42px}.public-hero h1{font-size:clamp(48px,7vw,66px)}.public-queen{right:-100px}.public-product-band{gap:48px}}@media (max-width:760px){.public-home{padding:0 16px}.public-hero{grid-template-columns:minmax(0,1fr)}.public-hero-copy{padding:46px 28px 12px}.public-hero h1{font-size:clamp(44px,12vw,62px)}.public-hero-visual{min-height:430px}.public-hero-visual:before{top:-30px;right:-120px}.public-queen{height:500px;bottom:-112px;right:20px}.public-section-heading,.public-footer{flex-direction:column;align-items:flex-start}.public-steps,.public-product-band,.public-trust{grid-template-columns:minmax(0,1fr)}.public-steps article+article{border-top:1px solid var(--line);border-left:0}.public-product-band{padding:44px 30px}.public-trust{gap:28px}.public-footer{justify-content:center;padding:28px 0}}@media (max-width:520px){.public-header{min-height:76px}.public-nav>a:first-child:not(.public-sign-in-link){display:none}.public-hero{margin-top:16px}.public-hero-copy{padding:38px 20px 8px}.public-hero h1{font-size:clamp(40px,14vw,54px)}.public-actions{display:grid}.public-primary-action,.public-secondary-action{width:100%}.public-hero-visual{min-height:380px}.public-queen{height:420px;bottom:-84px;right:-4px}.public-flow{padding:64px 0}.public-section-heading{gap:16px}.public-steps article{padding-inline:6px}.public-product-band{padding:38px 22px}.public-example-report div{grid-template-columns:minmax(0,1fr);gap:6px}.public-trust{padding:64px 0}}@media (prefers-reduced-motion:no-preference){.public-hero-copy{animation:.52s cubic-bezier(.22,1,.36,1) both hero-enter}.public-hero-visual{animation:.62s cubic-bezier(.22,1,.36,1) 80ms both visual-enter}@keyframes hero-enter{0%{opacity:0;transform:translateY(14px)}}@keyframes visual-enter{0%{opacity:0;transform:translateY(20px)}}}.login-page{--field:#f4f1e7;--surface:#fffdf7;--line:#cbd8cf;--text:#143f34;--text-soft:#526a61;--accent:#a9482e;width:100%;max-width:none;min-height:100vh;color:var(--text);background:var(--field);margin:0;padding:0 36px 36px;font-family:Avenir Next,Avenir,Helvetica Neue,Arial,sans-serif}:is(html:has(.login-page),body:has(.login-page)){background:#f4f1e7}body:has(.login-page):before{display:none}.login-header,.login-shell{width:min(100%,1180px);margin-inline:auto}.login-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:88px;display:flex}.login-home-link{color:var(--text-soft);font-size:14px;font-weight:650}.login-home-link:hover{color:var(--text);text-underline-offset:4px;text-decoration:underline}.login-shell{border:1px solid var(--line);background:var(--surface);border-radius:16px;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);min-height:min(680px,100vh - 128px);margin-top:28px;display:grid;overflow:hidden}.login-visual{color:#fffdf7;background:linear-gradient(#1243360a,#092e258c),radial-gradient(circle at 92% 20%,#ccdcc040,#0000 36%),#124336;flex-direction:column;justify-content:space-between;min-height:620px;padding:clamp(42px,5vw,70px);display:flex;position:relative;overflow:hidden}.login-visual:before{content:"";filter:drop-shadow(-20px 30px 34px #03181361);pointer-events:none;background:url(/queen.webp) 100% 100%/contain no-repeat;width:430px;height:850px;position:absolute;bottom:-190px;right:-125px}.login-visual:after{content:"";pointer-events:none;border:1px solid #fff3;border-radius:50%;width:480px;height:480px;position:absolute;top:74px;right:-100px}.login-visual-copy,.login-visual-note{z-index:1;position:relative}.login-visual-copy{max-width:440px}.login-kicker{color:var(--accent);letter-spacing:.13em;text-transform:uppercase;margin:0 0 16px;font-size:12px;font-weight:800}.login-visual .login-kicker{color:#d9e96e}.login-visual-title{max-width:9ch;font-family:var(--display);letter-spacing:-.05em;margin:0;font-size:clamp(48px,5vw,72px);font-weight:500;line-height:.96}.login-visual-copy>p:last-child{color:#d7e3dc;max-width:34ch;margin-top:24px;font-size:16px;line-height:1.65}.login-visual-note{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#06261eb8;border:1px solid #ffffff40;border-radius:12px;width:min(100%,330px);padding:18px 20px}.login-visual-note span,.login-visual-note strong{display:block}.login-visual-note span{color:#b8ccc1;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:750}.login-visual-note strong{font-size:14px;font-weight:600;line-height:1.45}.login-panel-new{align-self:center;width:min(100%,440px);max-width:none;margin:0 auto;padding:56px 48px}.login-panel-new h1{color:var(--text);font-family:var(--display);letter-spacing:-.05em;margin:0;font-size:clamp(46px,5vw,64px);font-weight:500;line-height:.96}.login-panel-new .login-deck{color:var(--text-soft);margin:16px 0 34px;font-size:15px}.login-panel-new .field+.field{margin-top:18px}.login-panel-new .field label{color:var(--text);letter-spacing:.04em;text-transform:none;margin-bottom:8px;font-size:12px}.login-panel-new .field-row{display:block}.login-panel-new .field-row input{width:100%;min-height:50px;color:var(--text);background:#fffef9;border:1px solid #9eb3a6;border-radius:10px;padding:12px 14px}.login-panel-new .field-row input:focus{border-color:var(--text);outline-offset:1px;outline:3px solid #a9482e2e}.login-panel-new .login-submit{border:1px solid var(--text);color:#fffdf7;background:var(--text);letter-spacing:0;text-transform:none;border-radius:10px;min-height:50px;margin-top:24px;font-size:14px;font-weight:700}.login-panel-new .login-submit:hover:not(:disabled){color:#fffdf7;background:#0c3027}.login-panel-new .login-recovery{color:var(--text);font-size:13px}.login-panel-new .login-recovery a:hover{text-underline-offset:3px;text-decoration:underline}.login-panel-new .form-message{color:var(--text-soft);font-size:12px}.login-panel-new .form-message.error{color:#a9482e}.login-panel-new .legal-footer{border-color:var(--line);color:var(--text-soft);gap:18px;margin-top:32px;padding-top:18px;font-size:12px}.login-panel-new .legal-footer a:hover{color:var(--text);text-underline-offset:3px;text-decoration:underline}@media (max-width:820px){.login-page{padding-inline:20px}.login-shell{grid-template-columns:minmax(0,1fr)}.login-visual{min-height:350px;padding:38px}.login-visual:before{height:680px;bottom:-210px;right:10px}.login-visual-title{font-size:clamp(44px,10vw,62px)}.login-visual-copy>p:last-child{max-width:34ch}.login-visual-note{display:none}.login-panel-new{padding-block:52px}}@media (max-width:520px){.login-page{padding:0 16px 24px}.login-header{min-height:76px}.login-home-link{font-size:13px}.login-shell{margin-top:16px}.login-visual{min-height:270px;padding:30px 24px}.login-visual:before{height:540px;bottom:-190px;right:-94px}.login-visual:after{top:24px;right:-190px}.login-visual-title{max-width:8ch;font-size:46px}.login-visual-copy>p:last-child{display:none}.login-panel-new{width:100%;padding:42px 24px 36px}.login-panel-new h1{font-size:50px}}.login-shell-solo{grid-template-columns:minmax(0,1fr);width:min(100%,620px);min-height:0;margin-top:clamp(28px,7vh,68px)}.login-shell-solo .login-panel-new{width:100%;padding:clamp(42px,6vw,60px) clamp(26px,5vw,52px)}.login-shell-solo .login-deck{text-wrap:balance;max-width:46ch}.login-signout{font:inherit;cursor:pointer;background:0 0;border:0;padding:11px 0}.login-panel-new .legal-acceptance-form .legal-links{flex-direction:column;gap:12px;margin:0 0 28px}.login-panel-new .legal-links a{color:var(--text);text-underline-offset:4px;align-items:baseline;gap:8px;font-size:15px;font-weight:650;-webkit-text-decoration:underline #143f3459;text-decoration:underline #143f3459;display:inline-flex}.login-panel-new .legal-links a:hover{text-decoration-color:currentColor}.login-panel-new .legal-link-mark{color:var(--accent);font-size:12px}.login-panel-new .legal-confirm{border:1px solid var(--line);color:var(--text);cursor:pointer;background:#fbfaf3;border-radius:12px;gap:12px;margin-bottom:4px;padding:16px 18px;font-size:14px;line-height:1.55}.login-panel-new .legal-confirm:hover{border-color:#9eb3a6}.login-panel-new .legal-confirm:has(input:checked){border-color:var(--text);background:#f1f6ef}.legal-confirm input{accent-color:#143f34}.legal-confirm input:focus-visible{outline-offset:2px;outline:3px solid #a9482e59}.login-panel-new .legal-acceptance-form .form-message{font-size:13px}@media (prefers-reduced-motion:no-preference){.login-panel-new .legal-confirm{transition:border-color .16s,background .16s}.login-panel-new .legal-links a{transition:text-decoration-color .16s}}
