.training-hero{display:grid;grid-template-columns:1fr minmax(240px,320px);gap:22px;align-items:end}.training-kicker{margin:0 0 8px;font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--theme-primary)}.training-progress-card{padding:20px;border:1px solid var(--theme-border);border-radius:var(--lo-radius-lg);background:var(--theme-surface-strong);box-shadow:var(--shadow)}.training-progress-card span{display:block;font-size:.86rem;color:var(--theme-text-muted)}.training-progress-card strong{display:block;margin:5px 0 10px;font-size:1.55rem;color:var(--theme-text)}.training-progress{height:9px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}.training-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--theme-primary),rgba(var(--theme-primary-rgb),.55));transition:width .3s ease}.training-intro-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.training-info-card{position:relative;overflow:hidden}.training-card-icon{font-size:2rem}.training-info-card h2{margin-top:8px}.training-steps{padding-left:1.2rem;margin-bottom:0}.training-steps li+li{margin-top:7px}.training-my-pass strong[data-training-percent]{font-size:2rem}.training-section-heading{display:flex;justify-content:space-between;align-items:end}.training-station-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.training-station-card{display:flex;flex-direction:column;gap:12px;padding:18px;border:1px solid var(--theme-border);border-radius:var(--lo-radius-lg);background:var(--theme-surface);box-shadow:0 8px 24px rgba(0,0,0,.16);cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;text-align:left;color:var(--theme-text)}.training-station-card:hover,.training-station-card:focus-visible{transform:translateY(-2px);box-shadow:0 14px 34px rgba(0,0,0,.24);border-color:var(--theme-primary);outline:none}.training-station-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.training-station-number{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;font-weight:800;background:var(--theme-primary-soft);color:var(--theme-primary)}.training-station-rank{font-size:1.35rem}.training-station-card h3{margin:0;font-size:1.05rem;color:var(--theme-text)}.training-station-card p{margin:0;color:var(--theme-text-muted);font-size:.9rem}.training-card-progress{height:8px;background:rgba(255,255,255,.08);border-radius:999px;overflow:hidden}.training-card-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--theme-primary),rgba(var(--theme-primary-rgb),.5))}.training-card-footer{display:flex;justify-content:space-between;align-items:center;font-size:.84rem;font-weight:700;color:var(--theme-text)}.training-detail-card{position:relative;padding:24px}.training-close{position:absolute;right:16px;top:12px;border:0;background:transparent;font-size:2rem;line-height:1;cursor:pointer;color:var(--theme-text-muted)}.training-detail-head{display:flex;justify-content:space-between;gap:20px;padding-right:30px}.training-station-score{min-width:120px;text-align:right}.training-station-score strong{display:block;font-size:1.55rem;color:var(--theme-text)}.training-station-score span{font-size:.8rem;color:var(--theme-text-muted)}.training-rank-track{display:grid;grid-template-columns:repeat(10,minmax(74px,1fr));gap:8px;margin:22px 0;overflow-x:auto;padding-bottom:4px}.training-rank-button{border:1px solid var(--theme-border);border-radius:14px;padding:10px 7px;background:var(--theme-surface-strong);cursor:pointer;text-align:center;min-width:74px;color:var(--theme-text)}.training-rank-button .rank-icon{display:block;font-size:1.35rem}.training-rank-button .rank-name{display:block;font-size:.72rem;font-weight:800;margin-top:4px}.training-rank-button.is-done{background:var(--theme-primary-soft-strong);border-color:var(--theme-primary)}.training-rank-button.is-active{outline:3px solid var(--theme-focus-ring);border-color:var(--theme-primary);background:var(--theme-primary-soft)}.training-test-panel{border-radius:18px;padding:20px;background:var(--theme-surface-strong);border:1px solid var(--theme-border);color:var(--theme-text)}.training-test-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.75fr);gap:20px}.training-test-title{display:flex;gap:12px;align-items:center}.training-test-title .rank-icon-large{font-size:2.4rem}.training-test-title h3{margin:0;color:var(--theme-text)}.training-test-panel h4{margin:16px 0 5px;color:var(--theme-text)}.training-test-panel p{margin:0;color:var(--theme-text-muted)}.training-attempts{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:14px}.training-hit{min-height:46px;border-radius:12px;border:1px solid var(--theme-border);background:var(--theme-surface);color:var(--theme-text);font-size:1.05rem;font-weight:800;cursor:pointer}.training-hit:hover{border-color:var(--theme-primary)}.training-hit.is-hit{background:rgba(38,160,88,.22);border-color:#69c584;color:#bdf3cb}.training-hit.is-miss{background:rgba(190,52,52,.22);border-color:#e29a9a;color:#ffd1d1}.training-result-box{padding:16px;border-radius:15px;background:var(--theme-surface);border:1px solid var(--theme-border);color:var(--theme-text)}.training-result-big{font-size:2rem;font-weight:900;color:var(--theme-text)}.training-result-box .primary-button{width:100%;margin-top:12px}.training-status{margin-top:12px;padding:10px 12px;border-radius:12px;font-weight:800}.training-status.pass{background:rgba(38,160,88,.22);color:#bdf3cb}.training-status.fail{background:rgba(224,146,35,.18);color:#ffd69b}.training-credit{padding-bottom:30px}.training-credit .section-card,.training-intro-grid .section-card,.training-detail-card{background:var(--theme-surface);border-color:var(--theme-border);color:var(--theme-text)}.training-credit .muted,.training-info-card .muted,.training-detail-card .muted{color:var(--theme-text-muted)}.training-detail-card strong,.training-detail-card h2,.training-credit h2,.training-info-card h2{color:var(--theme-text)}@media(max-width:980px){.training-intro-grid,.training-station-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.training-test-grid{grid-template-columns:1fr}.training-rank-track{grid-template-columns:repeat(10,86px)}}@media(max-width:700px){.training-hero{grid-template-columns:1fr}.training-progress-card{grid-column:1}.training-intro-grid,.training-station-grid{grid-template-columns:1fr}.training-detail-head{display:block}.training-station-score{text-align:left;margin-top:10px}.training-attempts{grid-template-columns:repeat(4,1fr)}.training-detail-card{padding:18px 14px}}