.training-page{min-height:100vh}.training-page main{overflow:hidden}.training-header nav a[aria-current=page]{color:var(--green-dark);font-weight:800}.training-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:42px;max-width:1060px;margin:52px auto 54px;padding:0 20px;align-items:center}.training-hero-copy h1{margin:7px 0 16px;font:800 clamp(48px,6.4vw,78px)/.94 var(--serif);letter-spacing:-.065em}.training-hero-copy h1 em{color:var(--green);font-style:normal}.training-hero-copy>p:not(.eyebrow){max-width:650px;margin:0;color:var(--muted);font-size:17px}.training-catalog-proof{margin-top:17px!important;font-size:11px!important;text-transform:uppercase;letter-spacing:.04em}.training-catalog-proof strong{color:var(--green-dark);font-size:13px}.training-launch-card{padding:21px}.training-launch-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:13px}.training-launch-head span{color:var(--muted);font-size:11px}.training-launch-head strong{font-size:13px}.duration-options{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.duration-options button{display:flex;align-items:baseline;justify-content:center;gap:3px;min-height:49px;border:1px solid var(--line);border-radius:8px;background:#faf8f2;font-size:20px;font-weight:800}.duration-options button small{font-size:9px;text-transform:uppercase}.duration-options button.active,.duration-options button:focus-visible{border-color:var(--green);background:var(--green-soft);box-shadow:inset 0 0 0 1px var(--green);outline:0}.training-mode-field{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;margin:12px 0}.training-mode-field span{font-size:10px;font-weight:800;text-transform:uppercase}.training-mode-field select{height:42px;padding:0 10px;border:1px solid var(--line);border-radius:7px;background:white}.training-start{width:100%;min-height:48px}.training-launch-card>p{margin:10px 0 0;color:var(--muted);font-size:10px;text-align:center}.training-resume{display:block;margin:10px auto 0;border:0;background:transparent;color:var(--green-dark);font-size:11px;font-weight:800;text-decoration:underline}.training-modes,.training-dna{max-width:1060px;margin:0 auto 68px;padding:0 20px}.training-section-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:19px}.training-section-heading h2{margin:3px 0 0;font:800 clamp(30px,4vw,44px)/1 var(--serif);letter-spacing:-.045em}.training-section-heading>p{max-width:390px;margin:0;color:var(--muted);font-size:13px}.training-mode-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.training-mode-grid button,.training-mode-grid a{display:grid;grid-template-columns:38px 1fr;grid-template-rows:auto auto;gap:1px 10px;min-height:91px;padding:14px;border:1px solid var(--line);border-radius:9px;background:var(--sheet);color:var(--ink);text-align:left;text-decoration:none}.training-mode-grid button:hover,.training-mode-grid button:focus-visible,.training-mode-grid a:hover,.training-mode-grid a:focus-visible{border-color:var(--green);transform:translateY(-1px);outline:0}.training-mode-grid i{grid-row:1/3;display:grid;place-items:center;width:36px;height:36px;border-radius:8px;background:var(--green-soft);color:var(--green-dark);font:800 20px var(--serif);font-style:normal}.training-mode-grid strong{font-size:13px}.training-mode-grid span{color:var(--muted);font-size:10px;line-height:1.35}.training-mode-grid>:nth-child(4n+2) i{background:var(--yellow)}.training-mode-grid>:nth-child(4n+3) i{background:var(--blue)}.training-mode-grid>:nth-child(4n+4) i{background:var(--lilac)}
.training-session{max-width:1120px;margin:24px auto 60px;padding:0 20px}.training-session-bar{display:grid;grid-template-columns:1fr minmax(260px,420px) auto;align-items:center;gap:20px;margin-bottom:12px;padding:12px 15px;border:1px solid var(--line);border-radius:10px;background:var(--sheet)}.training-session-bar>div:first-child span,.training-session-bar>div:first-child strong{display:block}.training-session-bar>div:first-child span{color:var(--green-dark);font-size:9px;font-weight:800;text-transform:uppercase}.training-session-bar>div:first-child strong{font-size:15px}.training-session-progress>span{display:block;margin-bottom:4px;color:var(--muted);font-size:10px;text-align:center}.training-session-progress .progress-track span{width:0;transition:width .25s}.training-session-actions{display:flex;align-items:center;gap:8px}.training-session-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:3px 4px;color:var(--green-dark);font-size:10px;font-weight:800;text-decoration:underline;text-underline-offset:2px}.training-session-actions a:hover,.training-session-actions a:focus-visible{color:var(--ink)}.training-workspace{display:grid;grid-template-columns:minmax(360px,1fr) minmax(330px,.82fr);gap:18px;align-items:start}.training-board-panel{min-width:0;padding:15px;border:1px solid var(--line);border-radius:11px;background:#ece8df}.training-board-meta{display:flex;justify-content:space-between;margin:0 auto 9px;max-width:620px;color:var(--muted);font-size:10px;text-transform:uppercase}.training-board{width:min(100%,620px);margin:auto}.training-square{min-width:0}.training-board-panel>p{margin:9px 0 0;color:var(--muted);font-size:10px;text-align:center}.training-decision-panel{min-height:425px;padding:22px}.training-item-number{display:flex;justify-content:space-between;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase}.training-decision-panel h2{margin:17px 0 19px;font:800 clamp(25px,3vw,36px)/1.05 var(--serif);letter-spacing:-.04em}.training-choice-list{display:grid;gap:7px}.training-choice-list button{min-height:46px;padding:10px 12px;border:1px solid var(--line);border-radius:7px;background:#faf9f4;text-align:left;font-size:12px;font-weight:750}.training-choice-list button.active{border-color:var(--green);background:var(--green-soft);box-shadow:inset 0 0 0 1px var(--green)}.selected-move{padding:10px;border:1px solid var(--green);border-radius:7px;background:var(--green-soft);font-size:11px}.candidate-list{margin:10px 0;padding:10px;border:1px solid var(--line);border-radius:7px;background:#f8f5ed}.candidate-list>span{font-size:9px;font-weight:800;text-transform:uppercase}.candidate-list>div{display:flex;flex-wrap:wrap;gap:5px;margin:7px 0}.candidate-list b{padding:4px 7px;border-radius:999px;background:var(--ink);color:white;font-size:10px}.candidate-list small{color:var(--muted);font-size:9px}.training-answer-actions{display:grid;grid-template-columns:1fr auto auto;gap:7px;margin-top:18px}.training-answer-actions button{min-height:42px}.training-reveal{border:0;background:transparent;color:var(--muted);font-size:10px;text-decoration:underline}.training-feedback{display:grid;grid-template-columns:42px 1fr;gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.training-feedback>span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--green-soft);color:var(--green-dark);font-size:21px;font-weight:900}.training-feedback.is-wrong>span{background:var(--red-soft);color:var(--red)}.training-feedback strong{font-size:15px}.training-feedback p{margin:4px 0;color:var(--muted);font-size:11px}.training-feedback small{color:var(--green-dark);font-size:10px;font-weight:800}.training-feedback button{grid-column:1/-1;width:100%;margin-top:3px}.training-summary{max-width:860px;margin:40px auto 70px;padding:32px;text-align:center}.training-summary h2{margin:5px 0 20px;font:800 44px/1 var(--serif)}.training-summary-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:20px 0}.training-summary-stats div{padding:15px 8px;border:1px solid var(--line);border-radius:8px;background:#faf8f2}.training-summary-stats strong,.training-summary-stats span{display:block}.training-summary-stats strong{font:800 29px var(--serif);color:var(--green-dark)}.training-summary-stats span{color:var(--muted);font-size:9px;text-transform:uppercase}.training-summary>p:not(.eyebrow){color:var(--muted)}.training-summary>div:last-child{display:flex;justify-content:center;gap:8px}.training-summary a{text-decoration:none}.training-dna-overview{padding:16px}.training-dna-overview>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--line)}.training-dna-overview>header small,.training-dna-overview>header strong{display:block}.training-dna-overview>header small{color:var(--green);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.training-dna-overview>header>div:first-child>strong{font:700 20px/1.1 var(--serif)}.training-dna-overview>header>div:last-child{display:grid;justify-items:end;color:var(--muted);font-size:11px}.training-dna-overview>header b{color:var(--ink);font-size:12px}.training-dna-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 16px}.training-dna-card{min-width:0}.training-dna-top{display:flex;min-width:0;justify-content:space-between;gap:8px;margin-bottom:5px;font-size:13px;font-weight:800}.training-dna-top span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.training-dna-top strong{flex:none;white-space:nowrap}.training-dna-meter{height:9px;margin:0;background:repeating-linear-gradient(90deg,#d8d4ca 0 8px,transparent 8px 11px)}.training-dna-meter i{display:block;height:100%;background:repeating-linear-gradient(90deg,var(--green) 0 8px,transparent 8px 11px)}.training-break-dialog{max-width:410px;padding:25px;border:1px solid var(--line);border-radius:12px;background:var(--sheet);box-shadow:0 20px 60px rgba(0,0,0,.22)}.training-break-dialog::backdrop,.training-account-dialog::backdrop{background:rgba(34,35,31,.55)}.training-break-dialog h2{margin:4px 0;font:800 34px var(--serif)}.training-break-dialog>button{width:100%;margin-top:7px}.training-account-dialog #training-account-message{color:var(--muted);font-size:11px}.training-account-dialog .account-tabs button{padding:10px;border:1px solid var(--line);background:#f5f2eb}.training-account-dialog .account-tabs button.active{background:var(--sheet);box-shadow:inset 0 -3px var(--green)}
.training-side-to-move{display:inline-flex;align-items:center;gap:7px;margin:12px 0 0;padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:#f7f4ec;color:var(--ink);font-size:10px;font-weight:850;letter-spacing:.035em;text-transform:uppercase}.training-side-to-move>span{width:12px;height:12px;border:1px solid #6c6e68;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}.training-side-to-move.is-white>span{background:#fff}.training-side-to-move.is-black>span{background:#30322f}.training-side-to-move+h2{margin-top:11px}
@media(max-width:880px){.training-hero{grid-template-columns:1fr;max-width:720px;margin-top:35px}.training-hero-copy{text-align:center}.training-hero-copy>p:not(.eyebrow){margin-left:auto;margin-right:auto}.training-mode-grid{grid-template-columns:repeat(3,1fr)}.training-workspace{grid-template-columns:1fr}.training-board-panel{max-width:650px;width:100%;margin:auto}.training-decision-panel{order:-1;max-width:650px;width:100%;min-height:0;margin:auto}.training-session-bar{grid-template-columns:1fr auto}.training-session-progress{grid-column:1/-1;grid-row:2}.training-session-actions{grid-column:2;grid-row:1}}
@media(max-width:680px){.training-header nav{display:none;position:absolute;left:12px;right:12px;top:58px;z-index:50;padding:8px;border:1px solid var(--line);border-radius:9px;background:var(--sheet);box-shadow:var(--shadow)}.training-header nav.open{display:grid}.training-header nav a,.training-header nav button{display:flex;align-items:center;min-height:44px}.training-header .nav-toggle{display:block;min-width:48px;min-height:44px}.training-hero{gap:24px;margin:25px auto 40px}.training-hero-copy{text-align:center}.training-hero-copy h1{font-size:47px}.training-hero-copy>p:not(.eyebrow){font-size:14px}.training-launch-card{padding:18px}.training-mode-field select{min-height:44px}.training-section-heading{display:block}.training-section-heading>p{margin-top:8px}.training-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.training-mode-grid button,.training-mode-grid a{min-height:100px;padding:13px}.training-mode-grid strong{font-size:12px;line-height:1.2}.training-mode-grid span{font-size:10px;line-height:1.4}.training-session{padding:0 10px}.training-workspace{gap:9px}.training-board-panel{padding:8px}.training-board-meta,.training-board-panel>p{font-size:11px}.training-decision-panel{padding:17px}.training-choice-list button{min-height:48px;font-size:13px}.training-answer-actions{grid-template-columns:1fr 1fr}.training-answer-actions button{min-height:48px}.training-answer-actions .training-reveal{grid-column:1/-1;min-height:44px}.training-summary{margin-left:10px;margin-right:10px;padding:22px 14px}.training-summary-stats{grid-template-columns:1fr 1fr}}
@media(max-width:390px){.training-hero{padding:0 12px}.training-hero-copy h1{font-size:40px}.training-launch-card{padding:15px}.duration-options button{min-height:48px;font-size:17px}.training-modes,.training-dna{padding:0 12px}.training-mode-grid{gap:7px}.training-mode-grid button,.training-mode-grid a{grid-template-columns:34px 1fr;min-height:100px;padding:11px;column-gap:8px}.training-mode-grid i{width:32px;height:32px;font-size:17px}.training-mode-grid strong{font-size:12px}.training-mode-grid span{font-size:10px}.training-session-bar{gap:8px;padding:9px}.training-session-actions{gap:5px}.training-board-panel{border-radius:7px}.training-decision-panel h2{font-size:25px}.training-summary h2{font-size:34px}.training-dna-overview{padding:14px}.training-dna-grid{gap:12px 10px}.training-dna-top{display:grid;gap:1px;font-size:11px;line-height:1.2}.training-dna-top strong{color:var(--muted);font-size:10px}}
@media(max-width:350px){.training-hero{margin-top:20px}.training-hero-copy h1{font-size:37px}.training-mode-grid{grid-template-columns:1fr}.training-mode-grid button,.training-mode-grid a{grid-template-columns:38px 1fr;min-height:76px;padding:11px 12px}.training-mode-grid i{width:36px;height:36px}}
.training-account-dialog #account-message{color:var(--muted);font-size:11px}
.training-page .training-hero{margin-top:36px}
.training-page.is-training-active .home-hub-tabs-wrap{display:none}
.training-feedback>.training-point-gain{grid-column:1/-1;width:100%;margin-top:3px}.training-feedback>.training-point-gain button{width:100%}.training-result-dna[hidden]{display:none}.training-result-dna.mobile-modal-open .report-dna-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.training-point-gain .board-point-row.increased .training-point-delta{color:var(--green-dark)}.training-point-gain .board-point-row.decreased .training-point-delta{color:var(--red)}.training-point-gain .board-point-meter b.loss{background:repeating-linear-gradient(90deg,rgba(161,78,69,.56) 0 8px,transparent 8px 11px)}
.training-point-gain[data-result-type="deduction"]{animation:none}

.training-board-meta{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px}.training-board-meta>strong{grid-column:3;text-align:right}
.training-summary-dialog{position:relative;width:min(720px,calc(100% - 24px));max-height:calc(100dvh - 24px);box-sizing:border-box;margin:auto;padding:32px;overflow:auto;border:1px solid #aaa59a;border-radius:12px;background:var(--sheet);box-shadow:0 28px 90px rgba(23,24,20,.28);color:var(--ink)}.training-summary-dialog::backdrop{background:rgba(34,35,31,.65);backdrop-filter:blur(5px)}.training-summary-close{position:absolute;top:14px;right:14px}.training-summary-dialog>p.eyebrow,.training-summary-dialog>h2{padding-right:34px}.training-summary-dialog>div:last-child{display:flex;justify-content:center;gap:8px}
@media(max-width:680px){.training-summary-dialog{margin:auto;padding:24px 14px 20px}.training-summary-dialog>div:last-child{display:grid;grid-template-columns:1fr 1fr}.training-summary-dialog>div:last-child .button{min-width:0;min-height:46px;padding:10px 8px}}
.training-board-meta .training-side-to-move{grid-column:2;justify-self:center;margin:0}
.training-choice-list button{display:flex;align-items:center;justify-content:space-between;gap:10px}
.training-choice-list button.active{border-color:#aa9657;background:#f5eed2;box-shadow:inset 0 0 0 1px #aa9657}
.training-choice-list button.is-correct{border-color:var(--green);background:var(--green-soft);box-shadow:inset 0 0 0 1px var(--green)}
.training-choice-list button.is-wrong{border-color:var(--red);background:var(--red-soft);box-shadow:inset 0 0 0 1px var(--red)}
.training-choice-result{flex:none;color:var(--green-dark);font-size:10px;font-weight:900}
.training-choice-list button.is-wrong .training-choice-result{color:var(--red)}
.training-feedback{display:block}
.training-answer-actions{grid-template-columns:1fr 1fr}
.training-answer-actions.board-response{grid-template-columns:1fr}
.training-solution-arrow{z-index:5}.training-solution-arrow .better-arrow{stroke:none;filter:drop-shadow(0 0 1.1px rgba(33,34,28,.58))}
.training-point-gain.no-change>header{display:none}
.training-point-gain.no-change{padding:0;border:0;background:transparent;box-shadow:none}
.training-point-gain.no-change .board-next-tactic{margin:0}
.training-board-panel>.training-point-gain{width:100%;margin-top:10px;background:var(--sheet)}
.training-result-dna.change-only>header>div:last-child,.training-result-dna.change-only>.report-dna-mini-grid,.training-result-dna.change-only>.report-dna-share{display:none}
.training-answer-actions{grid-template-columns:1fr}
@keyframes training-next-pulse{0%,100%{border-color:var(--ink);box-shadow:0 8px 24px rgba(20,32,21,.3),0 0 0 0 rgba(34,35,31,.62);filter:brightness(1)}50%{border-color:var(--ink);box-shadow:0 10px 32px rgba(20,32,21,.46),0 0 0 11px rgba(82,111,84,0);filter:brightness(1.14)}}
.training-board .board-feedback-overlay.coaching{border-color:#526f54;background:#eef5eb;color:#2c5533;font-size:17px}
@media(max-width:880px){
    .training-sticky-next{position:fixed;z-index:340;left:50%;bottom:max(10px,env(safe-area-inset-bottom));width:min(440px,calc(100% - 20px));min-height:50px;margin:0;font-size:14px;font-weight:850;letter-spacing:.015em;transform:translateX(-50%);animation:training-next-pulse 1.15s ease-in-out infinite;will-change:box-shadow,filter}
    .training-result-dna.mobile-modal-open{position:fixed;z-index:331;top:50%;left:8px;right:8px;display:block;box-sizing:border-box;width:auto;max-width:420px;max-height:calc(100dvh - 16px);margin:0 auto;padding:14px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;background:var(--sheet);box-shadow:0 22px 70px rgba(19,27,20,.42);transform:translateY(-50%)}
    .training-result-dna.mobile-modal-open>.report-dna-close{position:absolute;z-index:2;top:10px;right:10px;display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--sheet);color:var(--ink);font-size:23px;line-height:1}
    .training-result-dna.mobile-modal-open>.board-point-gain{margin:0 0 11px;padding:10px;box-shadow:none}
    .mobile-dna-backdrop{position:fixed;z-index:330;inset:0;border:0;background:rgba(24,29,24,.64);backdrop-filter:blur(2px)}
    body.mobile-dna-modal-open{overflow:hidden}
}
@media(max-width:880px) and (prefers-reduced-motion:reduce){.training-sticky-next{animation-name:next-action-pulse-reduced}}
@media(max-width:680px){
    .training-session{margin:8px auto 40px;padding:0 8px}
    .training-session-bar{gap:2px 8px;margin-bottom:7px;padding:3px 7px}
    .training-session-bar>div:first-child strong{display:none}
    .training-session-actions a{min-height:34px;padding:4px}
    .training-session-progress{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px}
    .training-session-progress>span{margin:0;text-align:left;white-space:nowrap}
    .training-session-progress .progress-track{margin:0}
    .training-decision-panel{padding:12px}
    .training-decision-panel h2{margin:8px 0 10px;font-size:23px}
    .training-choice-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
    .training-choice-list button{min-width:0;min-height:44px;padding:8px 9px;font-size:12px;line-height:1.2}
    .training-answer-actions{margin-top:10px}
}

/* Keep the compact duration labels visually balanced. */
.duration-options button{align-items:center;line-height:1}
.duration-options button>span,.duration-options button small{line-height:1}
