.training-links[data-astro-cid-qklqicdw]{margin:40px 0}.training-links[data-astro-cid-qklqicdw] .card-art[data-astro-cid-qklqicdw]{aspect-ratio:2;height:auto}.training-links[data-astro-cid-qklqicdw] .card-art[data-astro-cid-qklqicdw] img[data-astro-cid-qklqicdw]{object-fit:contain;width:100%;height:100%;display:block}.training-layout>.task-main{width:100%;min-width:0}.training-scoreboard{border-bottom:1px solid var(--border);justify-content:space-between;gap:16px;padding:18px 24px;display:flex}.training-scoreboard>div{gap:2px;display:grid}.training-scoreboard>div:last-child{text-align:right}.training-scoreboard small,.training-scoreboard span{color:var(--muted);font-size:12px}.training-scoreboard strong{font:700 clamp(2rem,4vw,3rem)/1.2 var(--heading-font);font-variant-numeric:tabular-nums;color:var(--primary)}.training-scoreboard>div:last-child strong{color:var(--ice)}.training-hint{min-height:2.6em;padding:0 24px;font-size:14px}.training-board-wrap{justify-content:center;padding:0 8px;display:flex}.training-board{background:var(--field);touch-action:none;user-select:none;border-radius:14px;flex:none;width:300px;height:300px;position:relative;overflow:hidden}.training-grid{grid-template-columns:repeat(3,1fr);display:grid;position:absolute;inset:0}.training-grid span{border:1px solid var(--border);color:var(--faint);font:600 12px var(--heading-font);place-items:center;display:grid}.training-target{background:var(--accent);color:var(--on-primary);box-shadow:0 0 0 5px var(--accent-soft);font:700 22px var(--heading-font);pointer-events:none;border-radius:50%;place-items:center;display:grid;position:absolute}#training-board-ready{background:var(--field);font:600 22px var(--heading-font);color:var(--primary);place-items:center;margin:0;display:grid;position:absolute;inset:0}.training-tool .training-pad{touch-action:none;opacity:1;user-select:none;flex-direction:column;width:calc(100% - 32px);height:300px;min-height:280px;margin:0 16px;display:flex;position:relative}.training-tool .training-pad>strong{z-index:1;font-size:clamp(1.6rem,4vw,2.4rem);position:relative}.training-tool .training-pad>small{z-index:1;position:relative}.training-ring{pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.training-ring svg{opacity:.6;width:260px;height:260px;overflow:visible}.training-ring circle{fill:none;stroke:var(--border-strong);stroke-width:2px}.training-ring #training-beat-ring{stroke:var(--primary);stroke-width:3px}.training-progress{gap:5px;padding:18px 24px 4px;display:flex}.training-progress span{background:var(--border);border-radius:3px;flex:1;height:6px}.training-progress span.is-done{background:var(--primary)}.training-progress span.is-current{background:var(--ice)}.training-actions{padding:16px 24px}.training-actions .status{font-size:13px}.training-status{padding:0 24px 16px}.training-links{margin:40px 0}.training-links .card-art img{aspect-ratio:2;width:100%;height:auto}.training-table{border-collapse:collapse;width:100%}.training-table th,.training-table td{text-align:left;border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums;padding:10px 8px}.training-curve{align-items:end;gap:12px;height:120px;margin:24px 0;display:flex}.training-curve>span{background:var(--primary);border-radius:5px 5px 0 0;flex:1;min-height:2px}.training-table caption{text-align:left;padding:16px 0;font-weight:650}@media (width<=600px){.training-layout .tool-controls{gap:12px;padding:16px}.training-scoreboard{padding:14px 16px}.training-hint{padding:0 16px}.training-actions{padding:14px 16px}.training-layout .task-main{min-width:0}.training-board-wrap{padding:0}.training-links .tool-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.training-ring #training-beat-ring{display:none}}@media (width>=1024px){#training-play{grid-template-rows:auto auto auto auto 1fr;grid-template-columns:minmax(300px,2fr) minmax(0,3fr);align-items:start;display:grid}#training-play>*{grid-column:1}#training-play>.training-board-wrap,#training-play>.training-pad{grid-area:1/2/span 5;margin-block:18px}#training-play>.training-scoreboard{border-bottom:0}}
