.training-program .training-widget{margin:24px 0;padding:22px;border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-md)}
.training-widget h3{margin-top:0}.training-widget .training-feedback{min-height:42px;margin:15px 0 0;padding:11px 14px;border-radius:8px;background:var(--color-bg-alt);color:var(--color-ink)}
.training-widget .training-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:15px}
.training-board,.symbol-options,.pair-options,.four-tiles,.chain-steps,.zone-buttons,.zone-heatmap,.special-tiles,.rescue-options,.endgame-options,.week-buttons{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}
.training-board{justify-content:center;padding:25px 10px;background:#195057;border-radius:12px}.training-board button,.symbol-options button,.four-tiles button,.special-tiles button{border:0;background:transparent;cursor:pointer}.training-board button[aria-pressed=true] .guide-tile,.symbol-options button[aria-pressed=true] .guide-tile,.four-tiles button[aria-pressed=true] .guide-tile,.special-tiles button[aria-pressed=true] .guide-tile{outline:3px solid #2e7d5b;outline-offset:3px}.training-board button.is-wrong .guide-tile{outline:3px solid #bc4242;outline-offset:3px}.training-board button.is-missed .guide-tile{outline:3px dashed #2e7d5b;outline-offset:3px}.training-board button .guide-tile{width:48px;height:58px}.training-board button small,.four-tiles button small,.special-tiles button small{display:block;font-weight:700;color:var(--color-ink)}.training-board button small{color:#fff}
.symbol-target{display:grid;place-items:center;min-height:125px}.symbol-target .guide-tile{width:68px;height:82px}.symbol-options{justify-content:center}.symbol-options button{display:grid;gap:8px;justify-items:center}.symbol-options .guide-tile{width:62px;height:75px}.symbol-options .zoom{font-size:.82rem;text-decoration:underline;color:var(--color-primary-dark)}
.pair-options button,.chain-steps select,.zone-buttons button,.rescue-options button,.endgame-options button,.week-buttons button{border:1px solid var(--color-line);border-radius:9px;background:var(--color-bg-alt);padding:12px 15px;color:var(--color-ink);cursor:pointer}.pair-options button:hover,.zone-buttons button:hover,.rescue-options button:hover,.endgame-options button:hover{border-color:var(--color-primary)}.pair-options button{display:grid;gap:6px;justify-items:center;min-width:120px}.pair-options button span{display:flex;gap:6px}.chain-steps label,.attempt-grid label{display:grid;gap:6px}.chain-steps select,.attempt-grid input{width:100%}.zone-heatmap>div{flex:1;min-width:110px;padding:15px;border-radius:8px;text-align:center;background:color-mix(in srgb,var(--color-primary) var(--zone-strength),var(--color-bg-alt))}.endgame-count{overflow:auto}.endgame-count table{width:100%;border-collapse:collapse}.endgame-count td,.endgame-count th{padding:8px;border-bottom:1px solid var(--color-line);text-align:left}.attempt-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.attempt-grid input{padding:10px;border:1px solid var(--color-line);border-radius:6px}.training-pass,.training-center{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.training-pass>div,.training-center>div{padding:16px;background:var(--color-surface);border:1px solid var(--color-line);border-radius:10px;box-shadow:var(--shadow-sm)}.training-center>div{display:flex;flex-direction:column}.training-center>div .btn{margin-top:auto}.profile-scores{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:10px}.profile-scores>div{padding:12px;background:var(--color-bg-alt);border-radius:8px}.training-zoom{position:fixed;inset:0;z-index:300;display:grid;place-items:center;background:rgba(0,0,0,.7);padding:20px}.training-zoom[hidden]{display:none}.training-zoom-inner{background:var(--color-surface);border-radius:12px;padding:25px;text-align:center}.training-zoom .guide-tile{width:150px;height:180px;margin:15px}
@media(max-width:650px){.training-program .training-widget{padding:16px}.training-board{gap:4px}.training-board button .guide-tile{width:38px;height:47px}.training-board button small{font-size:.72rem}.attempt-grid{grid-template-columns:1fr}.training-center{grid-template-columns:1fr}}
