.boost-preview{display:grid;grid-template-columns:minmax(200px,300px) minmax(0,1fr);gap:24px;align-items:center;margin:24px 0}.boost-board{width:100%;min-width:0}.boost-board .chessboard{width:100%}.boost-moves{min-width:0}.boost-moves>strong{display:block;font-size:26px;margin:20px 0 8px}.boost-move-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.boost-move-tabs button{display:flex;gap:6px;align-items:center;border:1px solid var(--line,#d6d8ce);background:transparent;color:inherit;padding:10px;border-radius:10px;cursor:pointer;font:inherit}.boost-move-tabs button[aria-pressed=true]{background:var(--ink,#233e30);color:#fff}.boost-move-tabs small{opacity:.65}.boost-line{font-size:13px;line-height:1.7;overflow-wrap:anywhere}.boost-progress{margin:14px 0}.boost-progress>div{display:flex;justify-content:space-between;gap:12px;font-size:14px}.boost-progress progress{width:100%;height:8px;accent-color:var(--ink,#233e30);margin:10px 0 5px}.boost-progress>small{display:block;opacity:.7}.opening-boosts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:16px;margin:20px 0}.opening-boost-card{border:1px solid var(--line,#d6d8ce);padding:20px;border-radius:18px;background:var(--panel,#fff)}.opening-boost-card h3{margin:5px 0;font-size:20px}.opening-boost-card>small{opacity:.7}@media (max-width:620px){.boost-preview{grid-template-columns:1fr;gap:16px}.boost-board{max-width:290px;margin:auto}.boost-moves>strong{margin-top:12px}.boost-move-tabs{justify-content:center}}.position-guide{font-size:13px;line-height:1.65;min-width:0}.position-guide h3{font-size:22px;margin:5px 0}.position-guide h4{font-size:14px;margin:0 0 8px}.guide-title{display:flex;align-items:start;justify-content:space-between;gap:12px}.position-guide section{border-top:1px solid var(--line);padding:18px 0}.position-guide small{font-size:11px;color:var(--muted)}.position-guide p{font-size:13px}.guide-arrow-settings{display:flex;gap:12px;flex-wrap:wrap;font-size:11px;align-items:center}.guide-arrow-settings label{display:flex;align-items:center;gap:6px}.guide-arrow-settings select{font:inherit;background:var(--paper);border:1px solid var(--line);padding:5px;border-radius:5px;color:var(--ink)}.guide-highlight{padding:12px;background:#eef1e7;border-radius:8px}.guide-highlight small{display:block}.guide-table-wrap{overflow-x:auto}.position-guide table{width:100%;border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums}.position-guide caption{text-align:left;font-size:11px;color:var(--muted);padding:8px 0}.position-guide th,.position-guide td{text-align:right;padding:8px 5px;border-bottom:1px solid var(--line);white-space:nowrap}.position-guide th:first-child,.position-guide td:first-child{text-align:left}.guide-move{padding:3px 6px;border:1px solid var(--line);border-radius:5px;background:var(--paper);font:inherit;font-weight:600;color:var(--ink);cursor:pointer}.guide-move:hover{background:#e4ebd6}.saved-move-badge{color:#62764c;margin-left:6px}.guide-games{list-style:none;padding:0;margin:12px 0}.guide-games li{padding:9px 0;display:grid;border-bottom:1px solid var(--line);gap:3px}.guide-games span{font-size:11px;color:var(--muted)}.study-layout{display:grid;grid-template-columns:minmax(240px,1fr) minmax(260px,1fr);gap:28px}.study-board{align-self:start;position:sticky;top:0}.study-board>.muted{font-size:12px}.builder-position-guide{margin-top:20px;padding:16px 0;border-top:1px solid var(--line)}.builder-position-guide>summary{font-size:14px;cursor:pointer;padding:8px 0}.study-entry{margin:16px 0;display:grid;gap:6px}.study-entry small{font-size:11px;color:var(--muted)}@media (max-width:760px){.study-layout{grid-template-columns:1fr;gap:18px}.study-board{position:static}.guide-title{display:block}.guide-title>.text-button{margin:6px 0}.position-guide th,.position-guide td{padding:7px 4px}}.welcome-page{max-width:1180px;margin:auto;padding:0 44px}.welcome-header{display:flex;align-items:center;justify-content:space-between;padding:32px 0}.welcome-header .wordmark{font-size:28px}.welcome-header a{font-size:13px;text-decoration:none}.welcome-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:76px;align-items:center;padding:50px 0 74px}.welcome-copy h1{font-size:clamp(40px,5vw,64px);letter-spacing:-.055em;line-height:1.07;margin:23px 0}.welcome-copy>p{max-width:420px;font-size:16px;line-height:1.8;color:var(--muted)}.welcome-copy form{display:grid;gap:15px;max-width:360px;margin:30px 0 17px;scroll-margin-top:22px}.welcome-copy form>small{font-size:12px;color:var(--muted)}.welcome-copy label{display:grid;gap:8px;font-size:12px}.welcome-copy input{padding:13px;font:inherit;font-size:16px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);min-width:0}.welcome-copy .welcome-price{font-size:11px;max-width:345px;line-height:1.7}.welcome-reassurance{margin-top:32px;padding-left:16px;border-left:2px solid #91a488;display:grid;gap:7px;font-size:11px;color:var(--muted)}.welcome-reassurance span:first-child{color:var(--ink);font-weight:600}.welcome-sample{border:1px solid var(--line);border-radius:20px;padding:23px;background:#fffefa;box-shadow:0 18px 65px #213e2910;min-width:0}.welcome-sample-head,.welcome-sample-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.welcome-sample-head .eyebrow{font-size:8px}.welcome-sample-head .pill{font-size:9px}.welcome-sample-title{margin:18px 0;flex-wrap:wrap;gap:7px}.welcome-sample-title h2{font-size:18px;letter-spacing:-.04em;margin:0}.welcome-sample-title span{font-size:10px;color:var(--muted)}.welcome-sample-feedback{margin-top:12px;min-height:64px}.welcome-sample-feedback p{font-size:12px;line-height:1.6;margin:0 0 8px}.welcome-sample-feedback button{font-size:11px}.welcome-sample>small{display:block;color:var(--muted);font-size:9px;line-height:1.6;margin-top:15px}.welcome-value{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:42px 0}.welcome-value .eyebrow{font-size:9px}.welcome-value h2{font-size:21px;letter-spacing:-.045em;line-height:1.35;margin:14px 0;max-width:240px}.welcome-value p{font-size:13px;line-height:1.8;color:var(--muted);margin:0}.welcome-questions{max-width:700px;margin:56px auto}.welcome-questions h2{font-size:25px;letter-spacing:-.04em;margin-bottom:25px}.welcome-questions details{border-bottom:1px solid var(--line);padding:17px 0}.welcome-questions summary{cursor:pointer;font-size:13px;font-weight:600}.welcome-questions details p{font-size:13px;line-height:1.8;color:var(--muted)}.welcome-questions>a{display:inline-block;margin-top:25px;font-size:12px}.welcome-footer{display:flex;flex-wrap:wrap;gap:22px;align-items:center;padding:24px 0 32px;border-top:1px solid var(--line);color:var(--muted);font-size:10px}.welcome-footer span{margin-right:auto}.welcome-footer a{color:inherit}.welcome-preview-note{text-align:center;padding:10px 16px;background:#eaf0e4;font-size:11px;color:#425840}.welcome-preview-note a{color:inherit;margin-left:12px}.google-sign-in{display:grid;gap:12px}.google-sign-in a{font-size:12px;color:var(--ink)}.welcome-or{text-align:center;font-size:10px;color:var(--muted);margin:4px 0}@media (max-width: 850px){.welcome-page{padding:0 28px}.welcome-hero{gap:32px}.welcome-copy h1{font-size:45px}.welcome-copy>p{font-size:14px}.welcome-sample{padding:18px}.welcome-value{gap:22px}}@media (max-width: 650px){.welcome-page{padding:0 22px}.welcome-header{padding:25px 0}.welcome-header .wordmark{font-size:24px}.welcome-hero{grid-template-columns:minmax(0,1fr);padding:30px 0 36px;gap:36px}.welcome-copy h1{font-size:50px}.welcome-copy>p{font-size:15px}.welcome-copy form{max-width:none;margin-top:26px}.welcome-copy .welcome-price{font-size:11px}.welcome-reassurance{margin-top:24px}.welcome-sample{max-width:470px;width:100%;box-sizing:border-box;justify-self:center;padding:18px}.welcome-value{grid-template-columns:1fr;padding:30px 0;gap:27px}.welcome-value h2{max-width:none;font-size:22px;margin:10px 0}.welcome-questions{margin:36px auto}.welcome-footer{gap:20px}.welcome-footer span{flex-basis:100%}}.opening-files-form{display:grid;gap:17px;margin:25px 0}.opening-files-form label{display:grid;gap:8px;font-size:12px}.opening-files-form input,.opening-files-form textarea,.opening-files-form select{width:100%;box-sizing:border-box;min-width:0;padding:12px;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:16px;color:var(--ink);background:var(--paper)}.opening-files-form textarea{resize:vertical}.opening-files-form small,.opening-file-row small{color:var(--muted);font-size:10px}.opening-file-downloads{border-top:1px solid var(--line);padding:22px 0 0}.opening-file-downloads summary{cursor:pointer;font-size:13px;font-weight:600}.opening-file-downloads summary small{margin-left:10px;color:var(--muted)}.opening-file-row{display:flex;justify-content:space-between;align-items:center;gap:15px;width:100%;padding:15px 0;border:0;border-bottom:1px solid var(--line);background:none;text-align:left;color:var(--ink);cursor:pointer;font:inherit;font-size:12px}.opening-file-row span:first-child{display:grid;gap:4px;overflow-wrap:anywhere;min-width:0}.opening-file-row span:last-child{white-space:nowrap}.advanced-tools{border-top:1px solid var(--line);padding-top:20px;margin-top:22px}.advanced-tools>summary{font-weight:600;font-size:13px;cursor:pointer}.advanced-tools p{font-size:12px;color:var(--muted);line-height:1.7}.practice-planner{max-width:1160px;margin:20px auto 28px;padding:24px;background:var(--paper);border:1px solid var(--line);border-radius:18px;color:var(--ink)}.practice-scope{display:flex;align-items:center;gap:24px;padding-bottom:22px;border-bottom:1px solid var(--line)}.practice-scope label{display:grid;gap:8px;font-size:13px;min-width:260px;max-width:520px;flex:1}.practice-scope select{width:100%;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font:inherit}.practice-scope p,.planner-heading p,.planner-start small{font-size:13px;color:var(--muted);line-height:1.6;flex:1}.planner-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin:22px 0 18px}.planner-heading h2{font-size:26px;margin:6px 0 0}.planner-heading p{flex:0 1 auto;margin:0}.practice-skills{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.practice-skill{display:flex;align-items:center;gap:8px;text-align:left;padding:14px 10px;background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:12px;font:inherit;cursor:grab;min-width:0}.practice-skill[aria-pressed=true]{background:#e9eedf;border-color:#8a9d70}.practice-skill:disabled{opacity:.55;cursor:default}.practice-skill .piece{width:30px;height:36px;flex:none}.practice-skill b{display:block;font-size:13px}.practice-skill small{display:block;font-size:11px;color:var(--muted);line-height:1.5;margin-top:4px}.practice-skill i{font-style:normal;margin-left:auto}.practice-drop{border:1px dashed #a3ad95;border-radius:12px;background:#f4f5ef;min-height:68px;margin-top:14px;padding:12px}.practice-drop.is-over{background:#e2ebd5;border-color:#62734f}.practice-drop>p{color:var(--muted);font-size:13px;text-align:center}.practice-drop ol{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0}.practice-drop li{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--paper);border-radius:9px;padding:8px;font-size:13px;cursor:grab}.practice-drop li small,.queue-grip{color:var(--muted)}.planner-start{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:16px}.planner-start .button{white-space:nowrap}.workout-next{display:grid;justify-items:center;gap:10px;margin:20px 0}.scope-loading{max-width:1160px;margin:12px auto;color:var(--muted);font-size:13px}@media (max-width:760px){.practice-planner{margin:14px 16px 22px;padding:18px}.practice-scope,.planner-heading{align-items:stretch;flex-direction:column;gap:10px}.practice-scope label{min-width:0;max-width:none}.practice-scope p{margin:0}.practice-skills{grid-template-columns:repeat(2,minmax(0,1fr))}.planner-start{align-items:stretch;flex-direction:column;gap:10px}.planner-start .button{justify-content:center}.practice-drop li{width:100%}.practice-drop li b{flex:1}}.practice-planner{margin:0;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:0;background:transparent}.planner-toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:18px 28px;border:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer;font:inherit}.planner-toggle b{font-size:14px}.planner-toggle small{display:block;font-size:12px;color:var(--muted);line-height:1.5;margin-top:4px;overflow-wrap:anywhere}.planner-toggle>span:last-child{font-size:22px}.planner-toggle:focus-visible{outline:2px solid var(--sage);outline-offset:-4px}.planner-options{padding:4px 28px 24px}.practice-skills{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-suggestion{display:block;margin:12px 0 18px}@media (max-width:760px){.practice-planner{margin:0;padding:0}.planner-toggle{padding:16px 18px}.planner-options{padding:0 18px 20px}}.analytics-preferences{position:fixed;bottom:16px;left:16px;z-index:10000;font:13px/1.6 system-ui,sans-serif;color:#2a3a4c;max-width:min(390px,calc(100vw - 32px))}.analytics-preferences section{background:#fffefa;border:1px solid #d5dcd9;border-radius:12px;padding:20px;box-shadow:0 4px 24px #18282a18}.analytics-preferences p{margin:8px 0 14px}.analytics-preferences section>div{display:flex;gap:10px}.analytics-preferences button{font:inherit;border:1px solid #adbcb5;border-radius:7px;background:#fffefa;color:#2a3a4c;padding:9px 12px;cursor:pointer}.analytics-preferences section button{flex:1}.analytics-preferences .analytics-settings{font-size:11px;padding:5px 9px;opacity:.85}.analytics-status{display:block;background:#fffefa;padding:8px;font-size:11px}.opening-choice{display:grid;gap:8px;font-size:14px;margin:22px 0}.opening-choice select{padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--paper);font:inherit;width:100%}.chosen-opening-line{font-size:15px;line-height:1.9;font-variant-numeric:tabular-nums}.path-shell [hidden]{display:none!important}.board-settings{font-size:12px;color:var(--muted)}.board-settings summary{cursor:pointer;padding:8px 0}.board-settings>div{display:grid;gap:16px;padding:12px 0}.board-caption .skip-prefix{margin-left:auto;white-space:nowrap}.practice-access{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:-10px 0 24px;padding:0 4px;font-size:12px;color:var(--muted)}.membership-benefits{margin:16px 0 24px;padding-left:19px;font-size:13px;line-height:1.8}.membership-checkout{display:grid;gap:14px}.membership-checkout label{display:grid;gap:7px;font-size:12px}.membership-checkout input{width:100%;min-width:0;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font:inherit}.chapter-continue{margin-top:22px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}.chapter-continue small{color:var(--muted)}.inline-progress .insights{margin:28px 0 0;padding:24px 0 0;border:0;border-top:1px solid var(--line);box-shadow:none}.connection-list{display:grid;gap:12px;margin:24px 0}.connection-card,.membership-offer{padding:22px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}.connection-card h3{margin:0 0 14px}.connection-card form,.reflection label{display:grid;gap:12px}.connection-card label{display:grid;gap:8px}.connection-card input,.reflection textarea{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:8px;padding:12px;background:#fffefa;color:var(--ink);font:inherit;font-size:16px}.connection-card .button,.membership-offer .button{width:100%}.connection-card small,.connection-status,.membership-offer>small{color:var(--muted);font-size:12px;line-height:1.6}.connection-user{overflow-wrap:anywhere}.membership-price{margin-top:14px;font-size:40px;font-family:Georgia,serif}.membership-price small{font:13px Manrope,sans-serif;color:var(--muted)}.membership-offer>small{display:block;margin-top:12px}.membership-beta{font-size:13px}.membership-manage button+button,.connection-card details button+button{margin-left:12px}.opening-check{border-top:1px solid var(--line);padding-top:16px;margin-top:20px}.opening-check-position{display:grid;grid-template-columns:minmax(120px,180px) minmax(0,1fr);gap:20px;align-items:center;margin:20px 0}.opening-check-position p{font-size:13px}.opening-check-position small{font-size:11px;color:var(--muted)}.reflection{margin:24px 0 0;padding-top:16px;border-top:1px solid var(--line)}.reflection summary{cursor:pointer;font-size:12px;line-height:1.7}.reflection summary small{color:var(--muted);margin-left:6px}.reflection label{margin:14px 0 8px;font-size:12px}.reflection textarea{resize:vertical;min-height:90px}.reflection>small{color:var(--muted);font-size:11px;line-height:1.5}@media (max-width: 480px){.opening-check-position{grid-template-columns:1fr}.opening-check-position .board-frame{max-width:220px}.connection-card,.membership-offer{padding:16px}.membership-price{font-size:34px}.inline-progress .insight-metrics{grid-template-columns:1fr}}.progress-strip{display:grid;grid-template-columns:minmax(240px,1.2fr) minmax(230px,1fr) auto;align-items:center;gap:24px;padding:21px 25px;margin:-12px 0 28px;border:1px solid var(--line);border-radius:15px;background:var(--paper)}.progress-level,.progress-achievements,.daily-goal{display:flex;align-items:center;gap:15px;text-align:left;padding:0;min-width:0}.level-seal{display:grid;place-items:center;flex:0 0 47px;width:47px;height:51px;border-radius:17px 17px 22px 22px;color:#f8f4db;background:linear-gradient(145deg,#4a6950,#264732);border:3px solid #e1d7b4;box-shadow:0 0 0 1px #c9b986;font-family:Manrope,sans-serif;font-size:23px;font-weight:700}.level-meter{width:100%;min-width:0}.level-meter>div{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:8px}.level-meter b,.daily-goal b,.progress-achievements b{font-size:12px}.level-meter span{font-size:10px;color:#687960}.level-meter progress{display:block;height:6px}.daily-goal{border-left:1px solid var(--line);padding-left:24px}.daily-goal small,.progress-achievements small{display:block;margin-top:5px;color:#74816c;font-size:10px}.goal-check{color:#77846a;font-size:23px}.goal-check.complete{color:#446238}.goal-dots{display:flex;gap:4px;margin-left:auto}.goal-dots i{width:7px;height:7px;border-radius:50%;background:#e4e9dc}.goal-dots .filled{background:#7e965f}.progress-achievements{border-left:1px solid var(--line);padding-left:24px}.progress-achievements>span{color:#a48946;font-size:28px}.progress-achievements small span{margin-left:10px}.progress-overview{display:flex;gap:20px;align-items:center;background:#f0f3e8;border-radius:14px;padding:22px;margin:28px 0 23px}.progress-overview>div{flex:1;min-width:0}.progress-overview p{font-size:11px;margin-top:10px}.practice-week{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;margin-bottom:32px}.practice-week>div{display:flex;flex-direction:column;align-items:center;gap:9px;color:#7b866e}.practice-week span{font-size:10px}.practice-week b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#f0f2e9;font-size:16px}.practice-week .active b{background:#dce8cb;color:#345c3e}.achievement-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.achievement-heading h3{font-size:17px}.achievement-heading>span{color:#78836f;font-size:11px}.achievement-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.achievement{display:flex;gap:13px;padding:18px 14px;border:1px solid #e4e8dd;border-radius:13px;background:#fbfcf7}.achievement.earned{border-color:#d9cfac;background:#fbf9ec}.achievement>div:last-child{flex:1;min-width:0}.achievement h3{font-size:13px;letter-spacing:-.2px}.achievement p{font-size:10px;line-height:1.6;margin:6px 0 10px}.achievement small{font-size:9px;color:#748068;display:block;margin-bottom:7px}.achievement progress{display:block;height:4px}.achievement-medal{position:relative;display:grid;place-items:center;width:46px;height:50px;flex:0 0 46px;background:#eef0e5;border-radius:50% 50% 44% 44%}.achievement-medal .piece{width:37px;height:42px}.earned .achievement-medal,.reward-achievement .achievement-medal{background:#eee6cb}.achievement-medal>span{position:absolute;bottom:-2px;right:-2px;width:17px;height:17px;display:grid;place-items:center;border-radius:50%;background:#416344;color:#fff;font-size:10px;border:2px solid #fffdf2}.progress-explainer{margin-top:24px;font-size:12px;color:#68775d}.progress-explainer summary{cursor:pointer}.progress-explainer p{font-size:11px;margin-top:12px}.reward-card{width:100%;background:var(--paper);border:1px solid #dfe5d3;border-radius:18px;padding:24px;text-align:left}.reward-xp{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.reward-xp strong{font-size:32px;color:#536e3f;white-space:nowrap}.reward-xp strong small{font-size:14px}.reward-xp>span{font-size:11px;color:#748268;max-width:200px;line-height:1.6}.reward-goal{margin-top:20px;padding-top:18px;border-top:1px solid var(--line);font-size:12px;font-weight:600}.reward-goal span{display:block;font-size:10px;font-weight:400;margin:6px 0 0 15px;color:#78836f}.reward-achievement{display:flex;gap:16px;align-items:center;border-top:1px solid var(--line);padding-top:18px;margin-top:18px}.reward-achievement small{display:block;font-size:8px;letter-spacing:1.1px;color:#97803c;margin-bottom:5px}.reward-achievement b{display:block;font-size:15px}.reward-achievement p{font-size:11px;margin-top:5px}.finish-mark.level-up{color:#fff7d8;background:#3a5c3f;box-shadow:0 0 0 6px #e9e2c8,0 0 0 13px #f2f1e5;animation:level-arrive .55s ease-out both}.finish-membership{border-top:1px solid var(--line);padding-top:25px;max-width:420px}.finish-membership .eyebrow{font-size:9px;margin-bottom:10px}.finish-membership h3{font-size:18px}.finish-membership p{margin:10px 0;font-size:12px}.finish-membership button{margin-top:8px}.reward-unavailable p{font-size:12px}.reward-unavailable button{margin-top:10px}@keyframes level-arrive{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}@media (max-width: 1100px){.progress-strip{gap:18px;padding:20px;grid-template-columns:minmax(220px,1.1fr) minmax(180px,1fr) auto}.daily-goal,.progress-achievements{padding-left:18px;gap:10px}.goal-dots{display:none}}@media (max-width: 850px){.progress-strip{grid-template-columns:1fr 1fr;gap:20px}.progress-level{grid-column:1 / -1}.daily-goal{border-left:0;padding-left:0}.progress-achievements{justify-content:center}}@media (max-width: 600px){.progress-strip{padding:18px;margin-top:-8px;gap:20px 12px}.progress-achievements{padding-left:12px;gap:8px}.progress-achievements>span{font-size:23px}.daily-goal b,.progress-achievements b{font-size:11px}.daily-goal small,.progress-achievements small{font-size:9px}.achievement-grid{grid-template-columns:1fr}.achievement p{font-size:11px}.progress-overview{padding:18px 14px;gap:14px}.progress-overview .level-meter>div{flex-direction:column;gap:4px}.practice-week{gap:5px}.reward-card{padding:20px}.reward-xp{gap:12px}}:root{font-family:DM Sans,system-ui,sans-serif;color:#233e30;background:#f8f9f3;font-synthesis:none;--ink: #233e30;--muted: #78836f;--green: #28533d;--sage: #e9efdf;--line: #dfe5d8;--paper: #fffefb;--gold: #ab8b4c}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{cursor:default;opacity:.55}button{border:0;background:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #ba9d65;outline-offset:4px}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,system-ui,sans-serif;font-weight:650}h1{font-size:clamp(32px,3.4vw,47px);letter-spacing:-2px;line-height:1.22}h2{font-size:30px;letter-spacing:-1px;line-height:1.25}h3{font-size:20px;letter-spacing:-.5px}em{font-style:normal;color:#758867}p{font-size:14px;line-height:1.75;color:var(--muted)}small{font-size:11px}progress{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:5px;border:0;border-radius:8px;overflow:hidden;background:#dce4d1}progress::-webkit-progress-bar{background:#dce4d1}progress::-webkit-progress-value{background:#6b8a56;border-radius:8px}progress::-moz-progress-bar{background:#6b8a56}.eyebrow{font-size:9px;letter-spacing:.16em;font-weight:750;color:#748567;text-transform:uppercase}.muted{color:var(--muted)}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:28px;min-height:49px;padding:15px 22px;background:var(--green);color:#fffef8;border:1px solid var(--green);border-radius:7px;font-weight:650;font-size:12px;box-shadow:0 3px #1e4432;transition:background .15s,transform .15s}.button:hover:not(:disabled){background:#356248;transform:translateY(-1px)}.button span{font-size:19px;font-weight:400}.button.secondary{background:#f8faf3;border-color:#d5ddca;color:#466241;box-shadow:0 2px #e3e9da}.button.secondary:hover:not(:disabled){background:#e9efdf;color:#233e30}.text-button{font-size:12px;font-weight:550;padding:4px 0;color:#5f7851}.text-button:hover{text-decoration:underline}.icon-button{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font-size:20px;color:#728467}.pill{display:inline-flex;gap:12px;align-items:center;border:1px solid #cfdcc2;border-radius:5px;padding:7px 10px;font-size:9px;font-weight:650;letter-spacing:.06em;color:#637852}.pill i{font-style:normal;color:#a0af8d}.site-header{height:84px;max-width:1400px;padding:0 42px;margin:auto;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:30px}.wordmark{font-size:23px;font-weight:700;letter-spacing:-1.1px;white-space:nowrap;padding:0}.wordmark>span{font-weight:450}.wordmark i{font-size:19px;font-style:normal;color:#a79868;padding-left:6px}.site-header nav{display:flex;gap:34px;align-items:center}.site-header nav button{font-size:12px;color:#7c8374;padding:12px 0}.site-header nav button.active{color:#375a40;font-weight:700}.header-account{display:flex;align-items:center;gap:26px}.streak{color:#6e815e;font-size:12px;font-weight:650}.streak small{font-size:11px;font-weight:500}.avatar{border:1px solid #dfe5d5;border-radius:50%;background:#ecf0e2;width:34px;height:34px;font-size:11px;color:#6c7e5e}.path-shell{max-width:1320px;padding:44px 42px 0;margin:auto}.greeting{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:40px}.greeting h1{margin:13px 0 17px}.greeting p{font-size:13px}.mobile-break{display:none}.daily-note{display:flex;gap:14px;align-items:center;flex-shrink:0;margin-top:24px}.daily-note>span{height:43px;width:43px;background:#f0eddf;border-radius:50%;display:grid;place-items:center;color:#b49a61;font-size:25px}.daily-note b{font-size:11px;font-weight:600;display:block}.daily-note small{display:block;margin-top:7px;color:#8a9380;font-size:10px}.path-layout{display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:26px;align-items:start}.chapter{border:1px solid var(--line);border-radius:16px;background:var(--paper);overflow:hidden}.chapter-banner{display:flex;gap:25px;align-items:center;justify-content:space-between;padding:32px;background:#e9efde;min-height:210px}.chapter-banner h2{font-size:26px;margin:15px 0 8px;letter-spacing:-1px}.chapter-banner p{font-size:11px}.chapter-progress{display:flex;gap:10px;align-items:center;margin-top:28px}.chapter-progress progress{width:100px}.chapter-progress>span{font-size:9px;color:#7c896d}.chapter-badge{position:relative;flex-shrink:0;display:flex;align-items:center;flex-direction:column;justify-content:center;width:100px;height:133px;border-radius:44px 44px 18px 18px;transform:rotate(7deg);border:1px solid #d0ddb9;background:#e1e9d0;box-shadow:0 5px #d9e2c7}.chapter-badge .piece{width:55px;height:55px}.chapter-badge small{font-size:7px;letter-spacing:.13em;line-height:1.6;text-align:center;margin-top:4px;color:#758260}.chapter-badge>span{position:absolute;bottom:-9px;background:#f8f5e5;border:1px solid #e0dfbf;border-radius:50%;width:24px;height:24px;font-size:9px;display:grid;place-items:center}.path-list{padding:10px 24px 12px 20px}.path-item{display:flex;gap:15px}.path-track{width:28px;flex-shrink:0;position:relative;padding-top:23px;display:flex;justify-content:center}.path-track:after{content:"";position:absolute;top:48px;bottom:-24px;width:1px;background:#dfe6d8}.path-item:last-child .path-track:after{display:none}.path-track>span{position:relative;z-index:1;width:26px;height:26px;background:#fcfcf7;border:1px solid #dfe6d8;color:#92a183;border-radius:50%;display:grid;place-items:center;font-size:9px;font-weight:600}.expanded .path-track>span{background:#315e43;border-color:#315e43;color:#fff;box-shadow:0 0 0 4px #e9efdf}.done .path-track>span{background:#eaf1de;color:#527540;border-color:#cddcba}.path-content{flex:1;min-width:0;border-bottom:1px solid #edf0e7;padding-bottom:2px}.path-item:last-child .path-content{border:0}.lesson-heading{width:100%;min-height:68px;display:flex;align-items:center;gap:10px;padding:12px 0;text-align:left}.lesson-heading>.piece{width:23px;height:26px;flex-shrink:0;opacity:.7}.lesson-heading strong{font-size:12px;font-weight:600;flex:1}.lesson-heading small{font-size:10px;color:#8c9880;font-variant-numeric:tabular-nums}.lesson-heading>span{color:#98a08e;font-size:13px;margin-left:9px}.lesson-preview{display:grid;grid-template-columns:minmax(0,1fr) 180px;align-items:center;gap:22px;background:#f4f6ed;border:1px solid #e7ebdf;border-radius:10px;padding:29px 26px;margin:6px 0 20px}.lesson-preview h3{font-size:21px;max-width:310px;line-height:1.5;margin:14px 0 9px;letter-spacing:-.7px}.lesson-preview p{font-size:11px;max-width:310px}.lesson-meta{font-size:9px;color:#8a9580;margin:20px 0 15px}.lesson-meta>span{padding:0 6px}.preview-board{transform:rotate(-3deg);margin:10px 4px 0}.preview-board small{display:block;text-align:center;font-size:7px;letter-spacing:.11em;color:#859174;margin-top:10px}.chapter-footer{border-top:1px solid var(--line);padding:20px 29px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#869477;font-size:10px}.chapter-footer>span:last-child{font-size:7px;letter-spacing:.12em}.next-chapter{display:flex;align-items:center;gap:20px;padding:31px 12px;color:#8e9a7d}.next-chapter>span{font-size:32px;font-family:Manrope,sans-serif;color:#c0cbb2;letter-spacing:-1px}.next-chapter h3{font-size:18px;margin:7px 0}.next-chapter p{font-size:11px}.panel{border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:24px}.path-sidebar{display:flex;flex-direction:column;gap:18px}.panel-eyebrow{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.11em;color:#89947f;font-weight:600}.panel-eyebrow span{font-size:17px}.milestone-number{font-family:Manrope,sans-serif;font-size:47px;letter-spacing:-2px;color:#587247;margin:22px 0 5px}.milestone-number>span{font-size:22px;color:#a8b198;letter-spacing:-1px}.milestone h3{font-size:12px;letter-spacing:0}.milestone p{font-size:10px;margin-top:10px}.segments{display:grid;grid-template-columns:repeat(10,1fr);gap:4px;margin:22px 0 16px}.segments span{height:13px;border-radius:2px;background:#edf0e6}.segments .filled{background:#a5b58a}.segments .solid{background:#52764a}.solid-row{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#849175}.solid-row i{display:inline-block;width:5px;height:5px;background:#54784b;margin-right:5px}.solid-row button{font-size:11px}.milestone-foot{border-top:1px solid var(--line);margin-top:23px;padding-top:20px;display:flex;align-items:center;justify-content:space-between}.milestone-foot small{color:#9aa48e;font-size:9px}.milestone-foot>span{font-size:9px;padding:6px 8px;background:#f1f4e9;border-radius:3px;color:#758767}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.panel-heading h3{font-size:13px;letter-spacing:-.25px}.panel-heading button{font-size:9px}.repertoire-card{padding:22px 20px}.repertoire-row{display:flex;align-items:center;gap:12px;width:100%;padding:23px 0;text-align:left}.repertoire-row+.repertoire-row{border-top:1px solid #edf0e7}.repertoire-row>span:nth-child(2){min-width:0;flex:1}.repertoire-row small{display:block;color:#8c9880;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.repertoire-row b{display:block;font-size:11px;font-weight:600;margin:6px 0}.repertoire-row>span:last-child{color:#a0ab92}.piece-chip{width:33px;height:40px;flex-shrink:0;border-radius:7px;background:#f1f3e8;border:1px solid #e1e5d6;padding:3px}.review-card{display:flex;gap:16px;background:#eff3e7;border:1px solid #e2e8d8;border-radius:12px;padding:23px 20px}.review-card>span{font-size:26px;color:#8d9e74}.review-card h3{font-size:12px;letter-spacing:0}.review-card p{font-size:10px;margin:8px 0 13px}.review-card button{font-size:10px}.plus-card{border:1px dashed #dce3d1;border-radius:12px;padding:24px}.plus-card h3{font-size:18px;line-height:1.35;margin:12px 0}.plus-card p{font-size:11px;margin-bottom:15px}.plus-card button{font-size:11px}.page-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);margin-top:22px;padding:25px 0;color:#8b977f;font-size:10px}.page-footer button{font-size:10px}.page-footer>span:last-child{font-size:8px;letter-spacing:.15em}.mobile-continue{display:none}.board-frame{padding:11px;background:#fffef5;border:1px solid #e0e3d0;border-radius:14px;box-shadow:0 12px 34px #29462b12,0 2px 5px #29462b0d,inset 0 0 0 3px #fffef9;width:100%;max-width:100%}.board{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));aspect-ratio:1;position:relative;border-radius:6px;isolation:isolate;background:#eceddb;touch-action:manipulation}.square{position:relative;display:flex;align-items:center;justify-content:center;width:100%;min-width:0;aspect-ratio:1;padding:0;border:0;border-radius:0;touch-action:auto;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.board--interactive,.board--interactive .square{touch-action:none}.square.light{background:#eeefdc}.square.dark{background:#8ca17c}.square:nth-child(1){border-radius:6px 0 0}.square:nth-child(8){border-radius:0 6px 0 0}.square:nth-child(57){border-radius:0 0 0 6px}.square:nth-child(64){border-radius:0 0 6px}.square:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;transition:background .15s}.square.last-move:before{background:#d9b86640}.square.selected:before{background:#e4c87c65;box-shadow:inset 0 0 0 3px #8d844d}.square.hinted:before{box-shadow:inset 0 0 0 3px #bd974c;background:#dfbf593d}.square.in-check:before{box-shadow:inset 0 0 18px #b05151b3}.square:focus-visible{outline:3px solid #c99e48;outline-offset:-3px;z-index:4}.square>.piece{width:95%;height:95%;position:relative;z-index:2;filter:drop-shadow(0 1px 1px #18302524)}.piece{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.coord{position:absolute;font-size:clamp(7px,.65vw,11px);line-height:1;font-weight:650;z-index:3;pointer-events:none}.light .coord{color:#73886a}.dark .coord{color:#e8edd8}.rank{top:4px;left:4px}.file{bottom:3px;right:4px}.legal-dot{position:absolute;width:23%;height:23%;border-radius:50%;background:#315d4544;pointer-events:none;z-index:3}.legal-dot.capture{width:86%;height:86%;border:5px solid #315d4544;background:transparent}.drag-piece{position:absolute;z-index:10;width:12.5%;aspect-ratio:1;transform:translate(-50%,-62%) scale(1.08);pointer-events:none;filter:drop-shadow(0 8px 5px #20352655)}.drag-piece--touch{transform:translate(-50%,-95%) scale(1.12)}.drag-origin>.piece{visibility:hidden}.square.motion-target>.piece{visibility:hidden}.board-motion{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:5}.moving-piece,.captured-piece{position:absolute;width:12.5%;height:12.5%;display:flex;align-items:center;justify-content:center}.moving-piece>.piece,.captured-piece>.piece{width:95%;height:95%;filter:drop-shadow(0 1px 1px #18302524)}.moving-piece{z-index:1;animation:piece-glide var(--move-duration) cubic-bezier(.22,.65,.28,1) both;will-change:transform}.moving-piece--lift>.piece{animation:piece-lift var(--move-duration) ease-in-out both}.captured-piece{animation:piece-captured var(--move-duration) ease-out both}@keyframes piece-glide{0%{transform:translate(var(--move-x),var(--move-y))}to{transform:translate(0)}}@keyframes piece-lift{0%,to{transform:translateY(0) scale(1)}45%{transform:translateY(-16%) scale(1.07);filter:drop-shadow(0 7px 3px #18302538)}82%{transform:translateY(1%) scale(1.01,.98)}}@keyframes piece-captured{0%,45%{opacity:1}to{opacity:0}}.board-tools{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px}.board-tools .board-options{margin-left:auto}.board-tools [aria-pressed=true]{color:#7e612c;text-decoration:underline}.board-annotations{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:6;pointer-events:none;overflow:visible}.board-options{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:12px 0;color:var(--muted, #66735e);font-size:12px}.board-options select{width:auto;min-height:34px;padding:5px 28px 5px 10px;background:#f5f6ed;color:#314b3b;border:1px solid #dce2d2;border-radius:7px;font:inherit;cursor:pointer}.board-options select:focus-visible{outline:2px solid #788f69;outline-offset:2px}.board-options small{flex-basis:100%}@media (prefers-reduced-motion: reduce){.board-motion{display:none}.square.motion-target>.piece{visibility:visible}}.promotion{position:absolute;z-index:20;top:20%;right:7%;bottom:20%;left:7%;padding:20px;background:#fffdf3;box-shadow:0 8px 30px #233e3055;border:1px solid #c7d2b5;border-radius:12px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:13px}.promotion>div{display:flex;width:100%;gap:3px}.promotion>div>button{width:25%;padding:4px;border-radius:7px;background:#edf1e3}.board-frame--compact{padding:5px;border-radius:9px;box-shadow:0 9px 22px #354e2512}.board-frame--compact .coord{display:none}.board-frame--compact .square>.piece{filter:none}.lesson-shell{max-width:1100px;margin:auto;padding:32px 38px 60px}.lesson-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:21px}.lesson-top>span:last-child{font-size:12px;color:#7d8d6e;font-variant-numeric:tabular-nums}.lesson-shell>progress{height:4px}.lesson-layout{display:grid;grid-template-columns:minmax(0,560px) minmax(0,310px);justify-content:space-between;gap:60px;margin-top:29px}.board-caption{display:flex;align-items:center;gap:8px;padding:0 1px 14px;font-size:11px;color:#6c7e5e}.board-caption>span:last-child{margin-left:auto;font-size:9px;color:#98a189}.turn-dot{width:10px;height:10px;border-radius:50%;background:#2b4f3a;border:1px solid #33513b}.turn-dot.white{background:#fefcee;border-color:#97a084}.played-line{min-height:40px;display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin:18px 10px;font-size:12px;color:#667858}.played-line>span{display:flex;gap:7px;align-items:center}.played-line small{color:#a1ae91;font-size:10px}.played-line .muted{font-size:10px}.lesson-guide{padding-top:30px}.lesson-emblem{width:56px;height:64px;background:#eaf0dd;border:1px solid #d9e3c8;padding:7px;border-radius:20px 20px 9px 9px;transform:rotate(6deg);margin-bottom:26px}.lesson-guide h2{font-size:35px;line-height:1.25;letter-spacing:-1.4px;margin:12px 0 17px}.lesson-guide>p{font-size:12px;line-height:1.9}.source-note{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:24px 0 0;padding:19px 0;display:flex;flex-direction:column;gap:9px}.source-note>span{font-size:8px;color:#9aa68c;letter-spacing:.11em}.source-note>strong{font-size:11px;line-height:1.7;font-weight:550;color:#677c59}.source-note small{font-size:10px;color:#8a967e}.lesson-feedback{font-size:12px;line-height:1.75;min-height:86px;padding:21px 0;color:#849274}.lesson-controls{display:flex;flex-direction:column;gap:18px;align-items:stretch}.lesson-controls>.text-button{font-size:11px;align-self:center}.lesson-reassurance{display:block;font-size:9px;text-align:center;color:#9da791;margin-top:27px}.success{color:#537940}.lesson-loading{padding:80px 20px;text-align:center;color:#8a977c}.lesson-loading .button{display:block;margin:25px auto}.lesson-finish{max-width:600px;margin:70px auto;text-align:center;padding:20px;display:flex;flex-direction:column;align-items:center;gap:25px}.lesson-finish h1{font-size:43px}.finish-mark{background:#e9efda;border-radius:50%;width:76px;height:76px;display:grid;place-items:center;font-size:34px;color:#6e8555}.lesson-finish>small{color:#9ca78e;font-size:10px}.finish-receipt{display:flex;gap:25px;border-block:1px solid var(--line);padding:16px;font-size:11px;color:#758966}.lesson-finish .button{min-width:240px}.dialog{border:1px solid #dce3d0;border-radius:18px;background:#fffefa;color:var(--ink);padding:0;width:min(590px,calc(100% - 28px));max-height:calc(100dvh - 36px);box-shadow:0 30px 90px #263d2933}.dialog::backdrop{background:#203d304f;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.dialog--wide{width:min(930px,calc(100% - 28px))}.dialog-body{padding:38px;position:relative}.dialog-close{position:absolute;right:16px;top:15px;border:0;background:#f2f5ea}.dialog h2{margin:12px 35px 20px 0}.dialog p{margin:12px 0 23px;font-size:12px}.dialog .destination{margin-top:18px;display:flex}.dialog-footer{display:flex;align-items:center;gap:23px;justify-content:flex-end;border-top:1px solid var(--line);padding-top:23px;margin-top:24px}.dialog-footer>span{font-size:10px;color:#8c9880;margin-right:auto}.builder-steps{display:flex;gap:30px;border-bottom:1px solid var(--line);padding:8px 0 22px;margin-bottom:22px}.builder-steps>span{display:flex;align-items:center;gap:8px;font-size:11px;color:#a0a993}.builder-steps b{font-weight:500;font-size:10px;display:grid;place-items:center;border-radius:50%;border:1px solid #e3e9d9;width:24px;height:24px}.builder-steps .active{color:#43653b}.builder-steps .active b{background:#dfeacd;border-color:#dfeacd}.root-choice{display:flex;align-items:center;gap:10px;margin-bottom:22px}.root-choice>span{font-size:11px;margin-right:12px;color:#849177}.root-choice button{padding:8px 18px;border:1px solid #dce4d0;border-radius:6px;font-size:12px}.root-choice button.active{background:#e5edda;color:#466538;border-color:#bcccaa}.builder-tabs{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:20px}.builder-tabs>button{font-size:11px;padding:8px 15px;border-bottom:2px solid transparent;color:#8e9a80}.builder-tabs>[aria-selected=true]{background:#edf3e4;border-color:#7e9966;color:#47633e}.builder-layout{display:grid;grid-template-columns:minmax(0,330px) minmax(0,1fr);gap:35px}.builder-options{padding:5px 0}.builder-options h3{margin:11px 0;font-size:23px}.builder-options>p{font-size:11px;margin:0 0 18px}.opening-option{display:flex;align-items:flex-start;gap:12px;padding:15px 13px;margin:10px 0;border:1px solid #e1e7d8;border-radius:8px;cursor:pointer}.opening-option.selected{background:#edf3e4;border-color:#b8caa6}.opening-option input{margin:3px 0 0;accent-color:#547a46}.opening-option b{font-size:12px;font-weight:600}.opening-option small{display:block;font-size:10px;line-height:1.6;color:#89957c;margin-top:5px}.builder-options>.text-button{font-size:10px;margin-top:8px}.move-nav{display:flex;align-items:center;justify-content:space-between;margin-top:17px;font-size:11px;color:#829171}.move-nav .icon-button{width:30px;height:30px;font-size:14px}.custom-line label{display:block;font-size:10px;line-height:1.6;margin:14px 0 7px}.custom-line textarea{width:100%;resize:vertical;border:1px solid #d7e0c8;background:#fafbf5;border-radius:6px;padding:12px;font-size:12px;color:#425838}.custom-line .button{min-height:35px;padding:10px 15px;font-size:10px;margin-top:10px}.builder-review-heading{display:flex;align-items:center;gap:25px;margin:20px 0 30px}.builder-review-heading>.piece{width:65px;flex-shrink:0}.builder-review-heading h3{font-size:21px}.builder-review-heading p{font-size:12px;margin-bottom:0}.review-branch{display:flex;align-items:center;gap:16px;padding:17px 0;border-bottom:1px solid #e5eadc}.review-branch>.piece{width:27px;height:34px;flex-shrink:0}.review-branch>div{flex:1;min-width:0}.review-branch small{font-size:10px;color:#87967b}.review-branch b{display:block;font-size:12px;font-weight:550;margin-top:4px;line-height:1.7}.review-branch>span{color:#73935b}.opening-list{max-height:48vh;overflow:auto;margin:0 0 23px}.more-links{display:flex;flex-direction:column;margin:20px 0}.more-links>a,.more-links>button{display:flex;justify-content:space-between;padding:17px 0;border-bottom:1px solid var(--line);font-size:13px}.more-links span{color:#98a485}.dialog details{margin-top:30px;font-size:12px;color:#77896b}.dialog summary{cursor:pointer}.explanation-steps{display:flex;gap:14px;margin:26px 0}.explanation-steps>span{flex:1;font-size:20px;color:#83976f;background:#f0f5e6;border-radius:9px;padding:16px}.explanation-steps b{font-size:11px;display:block;color:#3d6037;margin:10px 0}.explanation-steps small{font-size:9px;color:#91a181}.notice{max-width:1236px;margin:22px auto 0;padding:13px 20px;border-radius:8px;background:#edf3e4;border:1px solid #dae6ce;font-size:12px;line-height:1.7;display:flex;gap:20px;justify-content:space-between;align-items:center}.notice>.icon-button{border:0;flex-shrink:0}.error{color:#9a4f3d}.notice.error{background:#fcf0e9;border-color:#e9d5c7}.recovery{min-height:70vh;display:flex;flex-direction:column;gap:25px;align-items:center;justify-content:center;text-align:center;padding:35px;color:#819170}.sign-in{max-width:1100px;min-height:100dvh;margin:auto;padding:75px 45px;display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.sign-in .wordmark{margin-bottom:60px}.sign-in h1{margin:20px 0}.sign-in form{display:flex;flex-direction:column;gap:17px;max-width:310px;margin:30px 0}.sign-in label{font-size:11px;display:flex;flex-direction:column;gap:8px;color:#7f8c73}.sign-in input{padding:12px 14px;border:1px solid #dce4ce;border-radius:7px;background:#fffef8;min-width:0;color:#375332}.sign-in>div>small{font-size:10px;color:#98a38d}.welcome-board{transform:rotate(-5deg);max-width:430px}.welcome-board>span{display:block;text-align:center;font-size:11px;margin-top:24px;letter-spacing:.12em;color:#8d9c78}@media (min-width: 1500px){.lesson-shell{padding-top:48px}.lesson-layout{margin-top:38px}}@media (max-width: 1100px){.path-shell{padding:35px 25px 0}.site-header{padding:0 25px}.daily-note{display:none}.path-layout{grid-template-columns:minmax(0,1fr) 260px;gap:20px}.lesson-preview{grid-template-columns:minmax(0,1fr) 140px;padding:24px 20px}.lesson-layout{gap:35px;grid-template-columns:minmax(0,1.35fr) minmax(0,.8fr)}.lesson-guide h2{font-size:30px}.lesson-emblem{margin-bottom:20px}.sign-in{gap:60px}}@media (max-width: 850px){.path-layout{grid-template-columns:minmax(0,1fr)}.path-sidebar{display:grid;grid-template-columns:1fr 1fr;align-items:start}.path-sidebar .plus-card{display:none}.greeting{margin-bottom:30px}.site-header nav{gap:22px}.lesson-shell{padding:25px 24px 40px}.lesson-layout{gap:28px}.lesson-guide{padding-top:20px}.lesson-guide h2{font-size:27px}.lesson-emblem{display:none}.source-note{margin-top:17px}.lesson-feedback{min-height:65px}.builder-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}.dialog-body{padding:30px}.dialog-footer>span{display:none}}@media (max-width: 600px){.site-header{height:68px;padding:0 20px;gap:16px}.wordmark{font-size:20px}.wordmark i{display:none}.site-header nav{gap:20px}.site-header nav button{font-size:10px}.nav-openings,.avatar,.streak small{display:none}.header-account{gap:0}.streak{font-size:11px}.path-shell{padding:29px 16px 85px}.greeting h1{font-size:34px;letter-spacing:-1.6px;margin:14px 0 17px}.greeting p{font-size:11px;max-width:270px}.greeting .eyebrow{font-size:8px}.mobile-break{display:block}.chapter-banner{padding:29px 23px;gap:15px;min-height:205px}.chapter-banner h2{font-size:22px;line-height:1.3;max-width:210px}.chapter-banner p{font-size:10px;line-height:1.7;max-width:220px}.chapter-badge{width:70px;height:98px;border-radius:32px 32px 13px 13px}.chapter-badge>.piece{width:40px;height:40px}.chapter-badge small{font-size:5px}.chapter-badge>span{font-size:8px;width:20px;height:20px}.pill{font-size:7px;padding:6px 7px;gap:7px}.chapter-progress{margin-top:24px;gap:8px}.chapter-progress progress{width:45px}.chapter-progress>span{font-size:8px;white-space:nowrap}.path-list{padding:7px 15px 10px 11px}.path-item{gap:11px}.lesson-heading{gap:6px;min-height:66px}.lesson-heading>.piece{width:19px;height:23px}.lesson-heading strong{font-size:10px;line-height:1.6}.lesson-heading small{font-size:8px;white-space:nowrap}.lesson-heading>span{margin-left:3px}.path-track{width:22px;padding-top:24px}.path-track>span{width:22px;height:22px;font-size:8px}.lesson-preview{display:block;padding:23px 18px;margin:0 0 18px}.lesson-preview .eyebrow{font-size:7px}.lesson-preview h3{font-size:21px;line-height:1.5;margin:14px 0 10px}.lesson-preview p{font-size:10px}.lesson-meta{font-size:8px;margin:22px 0 16px}.lesson-preview .button{font-size:10px;min-height:44px;padding:12px 17px}.preview-board{display:none}.chapter-footer{padding:18px 20px;font-size:8px}.chapter-footer>span:last-child{display:none}.next-chapter{padding:25px 4px;gap:17px}.next-chapter h3{font-size:16px}.next-chapter .eyebrow{font-size:7px}.next-chapter p{font-size:10px}.path-sidebar{grid-template-columns:1fr}.path-sidebar .repertoire-card,.path-sidebar .review-card{display:none}.panel{padding:24px}.page-footer{font-size:8px;margin-top:30px}.page-footer>span:last-child{display:none}.page-footer button{font-size:8px}.mobile-continue{display:flex;justify-content:space-between;align-items:center;gap:15px;position:fixed;z-index:10;bottom:0;left:0;right:0;padding:13px 17px max(13px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fffefbf5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.mobile-continue>span{font-size:13px;color:#667c51;font-weight:650}.mobile-continue small{display:block;font-size:8px;color:#99a38e;font-weight:400;margin-top:4px}.mobile-continue .button{min-height:41px;padding:10px 16px;font-size:10px;gap:20px}.notice{margin:18px 16px 0;font-size:11px;gap:12px}.lesson-shell{padding:20px 16px 35px}.lesson-top{gap:15px;margin-bottom:13px}.lesson-top>.text-button{font-size:10px}.lesson-top .eyebrow{display:none}.lesson-layout{grid-template-columns:minmax(0,1fr);gap:20px;margin-top:19px}.board-caption{font-size:10px;padding-bottom:13px}.board-caption>span:last-child{font-size:8px}.board-frame{padding:8px;border-radius:12px}.coord{font-size:8px}.lesson-guide{padding:0 7px;display:flex;flex-direction:column}.lesson-guide>.eyebrow{font-size:8px}.lesson-guide h2{font-size:27px;letter-spacing:-1px;margin:8px 0 12px}.lesson-guide h2 br{display:none}.lesson-guide h2 em:before{content:" "}.lesson-guide>p{display:none}.played-line{margin:13px 5px 0;min-height:22px;gap:12px;font-size:11px}.played-line .muted{font-size:9px}.source-note{order:4;padding:15px 0;margin-top:19px}.source-note>strong{font-size:10px}.source-note>span{font-size:7px}.source-note small{font-size:9px}.lesson-feedback{order:2;padding:8px 0 14px;min-height:0;font-size:12px}.lesson-controls{order:3;flex-direction:row;justify-content:space-between;gap:20px;align-items:center}.lesson-controls .button{font-size:10px;min-height:43px;padding:12px 17px}.lesson-controls>.text-button{font-size:10px}.lesson-reassurance{order:5;margin-top:12px}.lesson-finish{margin:40px auto;gap:23px}.lesson-finish h1{font-size:35px;letter-spacing:-1.5px}.finish-receipt{font-size:10px;gap:18px;padding:15px 8px}.lesson-finish p{font-size:12px}.dialog-body{padding:29px 22px}.dialog{max-height:calc(100dvh - 26px)}.dialog h2{font-size:25px;margin:15px 28px 23px 0}.dialog .eyebrow{font-size:8px;max-width:220px}.builder-steps{gap:14px;padding-bottom:17px;margin-bottom:19px}.builder-steps>span{font-size:8px;gap:5px}.builder-steps b{width:19px;height:19px;font-size:8px}.builder-layout{display:flex;flex-direction:column;gap:22px}.builder-layout>div:first-child{width:100%;max-width:300px;margin:auto}.builder-options h3{font-size:22px}.root-choice{gap:8px}.root-choice>span{font-size:10px;margin-right:7px}.root-choice button{font-size:11px;padding:7px 14px}.builder-tabs{gap:3px}.builder-tabs>button{font-size:10px;padding:8px 10px}.dialog-footer{gap:15px;justify-content:space-between}.dialog-footer .button{font-size:10px;padding:12px 17px;gap:16px}.builder-review-heading{gap:18px}.builder-review-heading h3{font-size:19px}.builder-review-heading>.piece{width:45px}.builder-review-heading p{font-size:11px}.review-branch{gap:12px;padding:13px 0}.review-branch b{font-size:11px}.review-branch small{font-size:9px}.explanation-steps{gap:7px}.explanation-steps>span{padding:12px}.explanation-steps b{font-size:10px}.sign-in{display:block;padding:35px 27px}.sign-in .wordmark{margin-bottom:60px}.sign-in form{max-width:none}.welcome-board{max-width:240px;margin:55px auto 10px}.sign-in h1{font-size:39px}.sign-in p{font-size:13px}.promotion{padding:13px;font-size:11px;gap:12px}}@media (prefers-reduced-motion: reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}.player-extras{padding:0 22px 17px 44px}.add-tactics{display:flex;align-items:center;gap:10px;color:#678451;font-size:11px;padding:8px 0}.add-tactics>span{border:1px solid #cedbbf;border-radius:50%;width:25px;height:25px;display:grid;place-items:center;font-size:19px}.add-tactics small{font-size:7px;letter-spacing:.08em;color:#96a485}.saved-player{display:flex;gap:10px;align-items:center;width:100%;padding:12px 0;border-top:1px solid var(--line);font-size:12px;text-align:left}.saved-player>.piece{width:23px;height:30px}.saved-player>span:nth-child(2){flex:1}.saved-player small{display:block;color:var(--muted);font-size:9px;margin-top:5px}.player-search{display:block;font-size:11px;color:var(--muted);margin:24px 0 15px}.player-search input{display:block;width:100%;border:1px solid var(--line);border-radius:7px;padding:12px;background:#fffefb;margin-top:8px;color:var(--ink)}.player-options{display:flex;flex-direction:column;gap:8px;max-height:285px;overflow:auto;margin-bottom:22px}.player-options>button{display:flex;align-items:center;gap:13px;padding:13px;border:1px solid var(--line);border-radius:8px;text-align:left}.player-options>button.chosen{border-color:#8ea577;background:#edf2e2}.player-options>button>span:nth-child(2){flex:1}.player-options strong{font-size:13px}.player-options small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.player-monogram{width:34px;height:40px;padding:4px;background:#e7edda;border-radius:12px}.player-add{width:100%;margin-bottom:13px}.player-add+small{display:block;text-align:center;font-size:9px}@media (max-width: 600px){.player-extras{padding:0 10px 14px 0}.add-tactics small{font-size:6px}}.lesson-sources{display:flex;flex-wrap:wrap;align-items:center;gap:9px 18px;padding:0 0 20px;color:#7b896d;font-size:10px}.lesson-sources .text-button{font-size:10px}.header-motto{color:#839075;font:italic 15px Georgia,serif}.study-range-note{display:block;margin-top:12px;color:#728064;font-size:10px}.inline-progress{position:relative;margin:-10px 0 28px;padding:30px}.close-inline{float:right;margin-left:20px}.inline-progress h2{font-size:30px}.inline-lesson{scroll-margin-top:18px;border:1px solid var(--line);background:var(--paper);border-radius:16px;margin-bottom:30px}.inline-lesson .lesson-shell{width:100%;max-width:none;padding:28px}.inline-lesson .lesson-layout{gap:38px}#current-chapter{scroll-margin-top:20px}.chapter-memory{display:flex;align-items:center;gap:14px;padding:22px 28px;background:#f4f5ec;border-top:1px solid var(--line)}.chapter-memory>span{font-size:23px;color:#a58e58}.chapter-memory>span.complete{color:#496a42}.chapter-memory b{font-size:12px}.chapter-memory p{font-size:10px;margin-top:5px}.chapter-memory .text-button{margin-left:auto;white-space:nowrap}.personal-practice{padding:22px 28px;border-top:1px solid var(--line)}.personal-practice summary,.path-map summary,.insight-details summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:12px;font-size:12px;font-weight:650}.personal-practice summary::-webkit-details-marker,.path-map summary::-webkit-details-marker,.insight-details summary::-webkit-details-marker{display:none}.personal-practice summary small{color:#839174;font-size:8px;font-weight:500;letter-spacing:.08em}.personal-practice summary>span,.path-map summary>span,.insight-details summary>span{margin-left:auto}.personal-practice>p{font-size:11px;margin:15px 0}.personal-lesson{width:100%;display:flex;align-items:center;gap:13px;padding:12px 0;text-align:left}.personal-lesson>.piece{width:25px;height:30px}.personal-lesson>span:last-child{margin-left:auto}.personal-lesson b{font-size:12px}.personal-lesson small{display:block;margin-top:5px;font-size:10px;color:#758367}.path-map{padding:0 12px 24px}.path-map summary{color:#6d7f5c}.path-map ol{list-style:none;padding:12px 0 0;margin:0}.path-map li{display:flex;align-items:center;gap:17px;padding:13px 16px;border-bottom:1px solid var(--line)}.path-map li.current{background:#edf1e3;border-radius:8px}.path-map li>span{color:#859770;font-size:16px}.path-map li b{font-size:13px}.path-map li small{display:block;font-size:10px;color:#7c896f;margin-top:4px}.path-map li>small{margin-left:auto}.path-map p{margin-top:15px;font-size:11px;line-height:1.7}.insights{margin-top:20px;padding:28px 30px 0}.insights-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.insights-heading h2{font-size:27px;margin:10px 0 0}.insights-heading>span{font-size:11px;color:#819171}.insight-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:27px 0}.insight-metrics article{min-width:0}.insight-metrics article+article{padding-left:28px;border-left:1px solid var(--line)}.metric-label{display:block;color:#77866b;font-size:11px}.insight-metrics strong{display:flex;align-items:baseline;gap:10px;font:500 34px Manrope,sans-serif;margin-top:10px}.insight-metrics strong small{color:#78866a;font:500 11px Inter,sans-serif}.insight-metrics p{font-size:10px;margin:9px 0 12px}.metric-note{font-size:10px;color:#78866a;line-height:1.6;display:block}.insight-details{border-top:1px solid var(--line)}.insight-details summary{color:#6c805b;font-size:11px;padding:17px 0}.insight-context{padding:6px 0 24px;max-width:770px}.insight-context p{font-size:11px;line-height:1.8;margin:16px 0}.game-sample{display:flex;align-items:center;gap:18px;font-size:12px;margin:10px 0 20px}.game-sample select{max-width:100%;color:var(--ink);background:#f4f6ed;border:1px solid var(--line);border-radius:7px;padding:9px 12px;font:inherit}.opening-results>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}.opening-results>div>span:last-child{text-align:right;flex-shrink:0}.opening-results b{font-weight:550}.opening-results small{display:block;font-size:10px;color:#7b8870;margin-top:5px}@media (max-width: 850px){.insights-heading>span{display:none}.insight-metrics{gap:18px}.insight-metrics article+article{padding-left:18px}.insight-metrics strong{display:block}.insight-metrics strong small{display:block;margin-top:3px}}@media (max-width: 600px){.header-motto{display:none}.site-header .avatar{display:block}.site-header .header-account{gap:14px}.inline-progress{padding:20px 15px}.inline-progress h2{font-size:25px}.close-inline{font-size:10px}.inline-lesson .lesson-shell{padding:15px 10px}.inline-lesson .lesson-layout{gap:20px}.chapter-memory{padding:18px;gap:10px;flex-wrap:wrap}.chapter-memory>div{flex:1;min-width:150px}.chapter-memory .text-button{margin-left:33px}.personal-practice{padding:20px 18px}.personal-practice summary{flex-wrap:wrap;gap:6px 12px}.personal-practice summary small{font-size:7px}.path-shell .path-sidebar .repertoire-card{display:block}.insights{padding:22px 18px 0;margin-top:24px}.insights-heading h2{font-size:23px}.insight-metrics{grid-template-columns:1fr;margin:23px 0}.insight-metrics article+article{padding:20px 0 0;border-left:0;border-top:1px solid var(--line)}.insight-metrics strong{display:flex}.game-sample{display:block}.game-sample select{display:block;width:100%;margin-top:10px}.path-map li{padding:12px 8px;gap:12px}}.quick-colours{display:flex;gap:10px;margin:24px 0 16px}.quick-colours .button{flex:1;justify-content:center}.quick-colours [aria-pressed=true]{background:#e5eadc;border-color:#668362;color:#203d2e}.quick-opening{display:grid;gap:6px;border:1px solid #dfe3d5;border-radius:14px;padding:20px;margin:0 0 22px;background:#f3f4e9}.quick-opening span{color:#687461;font-size:13px}.quick-alternatives{display:grid;justify-items:start;gap:16px;margin-top:25px;padding-top:20px;border-top:1px solid #dfe3d5}.lead-in-option{display:flex;align-items:center;gap:6px;font-size:12px;color:#657160}.lead-in-option input{accent-color:#446a4d}.lesson-survey{margin:24px auto 0;max-width:400px;text-align:left;font-size:13px;color:#64735f}.lesson-survey summary,.finish-personalise summary{cursor:pointer}.lesson-survey div{display:flex;flex-wrap:wrap;gap:8px;padding:12px 0}.lesson-survey button{border:1px solid #d6dece;border-radius:20px;padding:9px 13px;background:#f6f7f0;color:#34523a;cursor:pointer;font:inherit}.next-review{color:#3e6347;font-size:14px}.save-progress-note{max-width:420px;margin:24px auto;padding:24px;border:1px solid #dce4d4;border-radius:18px;background:#f3f6ed}.save-progress-note p{font-size:14px}.finish-personalise{max-width:420px;margin:24px auto;font-size:14px}.save-progress-form{display:grid;gap:20px;margin-top:25px}.save-progress-form label{display:grid;gap:8px;font-size:14px}.save-progress-form input{width:100%;min-width:0;padding:14px;font:inherit;border:1px solid #ccd6c4;border-radius:10px;background:#fffef7}.account-form{display:grid;gap:16px}.account-form label{display:grid;gap:8px}.account-form input{min-width:0;width:100%;box-sizing:border-box;font:inherit;padding:12px;border:1px solid #cdd5c7;border-radius:10px}
