/* Scoped to the supporting practice guides, never the app overview or app UI. */
.practice-guide, .practice-guide > *, .practice-guide .lesson-section > * { min-width: 0; }
.practice-guide .lesson-hero { width: 100%; max-width: none; box-sizing: border-box; }
.practice-guide .lesson-hero .generator-intro { max-width: 75ch; }
.practice-guide .practice-guide-hero { max-width: 960px; margin: 28px 0 0; }
.practice-guide .practice-guide-hero figcaption { margin-top: 12px; font-size: 13px; line-height: 1.6; }
.practice-guide .topbar-store-badge-row { flex-wrap: nowrap; gap: 12px; }
.practice-guide .topbar-store-badge-image { width: auto; height: 40px; display: block; }
.practice-guide .lesson-hero h1 { max-width: 34ch; text-wrap: balance; }
.practice-guide .lesson-jumps { gap: 10px 18px; }
.practice-guide .lesson-section > h2 { max-width: 38ch; }
.practice-guide .lesson-section h3 { margin: 22px 0 10px; font-size: 20px; line-height: 1.3; }
.practice-guide .lesson-section p + p { margin-top: 14px; }
.practice-guide .lesson-section > p { margin-block: 12px; }
.practice-guide .lesson-section li { margin-block: 10px; }
.practice-guide .lesson-section h2 { scroll-margin-top: 24px; }
.practice-guide .seo-table { min-width: 580px; }
.practice-guide .seo-table th, .practice-guide .seo-table td { vertical-align: top; line-height: 1.6; }
.practice-guide .seo-table-wrap { max-width: 100%; margin-block: 18px; }
.practice-guide .practice-tool-shot { max-width: 620px; }
.practice-guide .lesson-screenshot { margin-block: 26px; }
.practice-guide .practice-chord-line { font-size: 21px; font-weight: 750; letter-spacing: .02em; }
.practice-guide-links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; margin-block: 22px; }
.practice-guide-links a { display: grid; gap: 9px; padding: 20px; color: inherit; text-decoration: none; background: var(--landing-card-surface,#fff); border: 1px solid var(--landing-border,#d5d1c9); border-radius: 14px; }
.practice-guide-links strong { font-size: 18px; line-height: 1.4; }
.practice-guide-links span { color: var(--muted,#625f58); line-height: 1.65; }
.practice-guide-links a:hover { border-color: var(--accent,#aa6b32); }
.practice-guide a:focus-visible { outline: 3px solid #1768c4; outline-offset: 4px; }
.practice-guide .seo-table-wrap:focus-visible { outline: 3px solid #1768c4; outline-offset: 4px; }
.practice-guide .practice-table-hint { display: none; }
.practice-rhythm-grid .seo-table { min-width: 480px; font-variant-numeric: tabular-nums; }
.practice-rhythm-grid .seo-table td, .practice-rhythm-grid .seo-table th:not(:first-child) { text-align: center; }
.practice-rhythm-grid strong { color: var(--accent-deep,#794514); }
.practice-source-note { font-size: 13px; color: var(--muted,#625f58); }
@media (max-width: 640px) {
 .practice-guide .landing-topbar { padding: 8px 10px; }
 .practice-guide .practice-table-hint { display: block; margin-bottom: -6px; font-size: 13px; color: var(--muted,#625f58); }
 .practice-guide-links { grid-template-columns: minmax(0,1fr); }
 .practice-guide .lesson-hero h1 { font-size: 28px; }
 .practice-guide .lesson-section h3 { font-size: 19px; }
 .practice-guide-links a { padding: 16px; }
}
@media print {
 .practice-guide .practice-table-hint { display: none; }
 .practice-guide .landing-topbar, .practice-guide .lesson-jumps, .practice-guide .progression-play-button { display: none; }
 .practice-guide .seo-table-wrap { overflow: visible; }
 .practice-guide .seo-table { min-width: 0; }
 .practice-guide .lesson-section { break-inside: auto; box-shadow: none; }
 .practice-guide tr, .practice-guide .lesson-screenshot { break-inside: avoid; }
}
