.home-welcome { padding:0 0 22px; }
.home-welcome .start-logo { width:100px; height:100px; border-radius:15px; }
.home-welcome h1 { font-size:clamp(2rem,4.2vw,3.3rem); }
.home-next, .practice-setup {
 padding:clamp(20px,3vw,34px);
 background:color-mix(in srgb,var(--brand-secondary) 7%,var(--panel));
 border:1px solid color-mix(in srgb,var(--brand-secondary) 45%,var(--line));
 border-radius:16px;
}
.home-next { display:flex; align-items:flex-start; gap:20px; }
.home-next-icon, .library-icon {
 display:grid; place-items:center; flex:none;
 width:44px; height:44px; border-radius:11px;
 color:var(--brand-secondary); background:color-mix(in srgb,var(--brand-secondary) 13%,var(--panel));
}
.home-next h2, .practice-setup h2 { font-size:clamp(1.35rem,2.8vw,2rem); line-height:1.25; margin:6px 0 8px; }
.home-next p, .practice-setup p { line-height:1.65; max-width:62ch; }
.home-next-actions { display:flex; flex-wrap:wrap; align-items:center; gap:10px 20px; margin-top:18px; }
.home-next-actions .textlink, .practice-other-links .textlink { display:inline-flex; align-items:center; min-height:44px; }
.start-page .start-explore { margin-top:20px; }
.start-page .start-explore summary { padding:5px 0; }
.home-explore-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:16px; }
.home-explore-links a { display:grid; gap:5px; padding:14px; background:var(--panel); border:1px solid var(--line); border-radius:10px; }
.home-explore-links small { color:var(--muted); line-height:1.5; }
.home-explore-links span { color:var(--brand-primary); font-size:.78rem; }
.home-explore-links a:hover, .library-card:hover { border-color:var(--brand-primary); }
.start-page .plan-week-mini { margin-top:14px; }

.library-sections { display:grid; gap:26px; }
.library-sections h2 { font-size:1.1rem; margin-bottom:10px; }
.library-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.library-card {
 display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:12px; align-items:center;
 min-height:80px; padding:14px; background:var(--panel); border:1px solid var(--line); border-radius:12px;
}
.library-card strong, .library-card small { display:block; overflow-wrap:anywhere; }
.library-card small { color:var(--muted); line-height:1.45; margin-top:4px; }
.library-card > .icon { width:16px; color:var(--brand-secondary); }

.practice-setup, .practice-other-links, .practice-more, .practice-round { max-width:900px; }
.practice-setup > .btn { margin-top:16px; }
.practice-customize { border-top:1px solid var(--line); margin-top:18px; }
.practice-customize > summary, .practice-more > summary, .practice-round-details > summary {
 cursor:pointer; color:var(--text); font-size:.9rem; line-height:1.5; padding:13px 0;
}
.practice-customize .practice-settings { gap:15px 24px; padding:4px 0 0; flex-direction:row; flex-wrap:wrap; }
.practice-customize .choice-row { flex-wrap:wrap; }
.practice-customize .choice-row button { min-height:44px; }
.practice-other-links { display:flex; flex-wrap:wrap; gap:0 20px; margin:12px 0; }
.practice-more { border-top:1px solid var(--line); }
.practice-studio.practice-round { display:block; }
.practice-round .practice-step-heading { margin-bottom:8px; color:var(--muted); }
.practice-round .practice-progress { display:block; width:100%; height:6px; margin-bottom:18px; accent-color:var(--brand-secondary); }
.practice-round .practice-actions { justify-content:flex-start; margin-top:16px; }
.practice-round .practice-status { text-align:left; }
.practice-round-details { padding:0 clamp(18px,3vw,29px) 3px; border-top:1px solid var(--line); }
.practice-round-details ol { margin:0 0 12px 1.35em; font-size:.85rem; }
.practice-round-details li { padding:6px 0; }
.practice-round-details li[aria-current] { color:var(--brand-primary); }
.practice-round-details li small { color:var(--muted); margin-left:8px; }
.practice-round-details button { margin-bottom:12px; }
.app-footer-links { display:flex; flex-wrap:wrap; gap:6px 14px; }

@media(max-width:640px) {
 .home-welcome .start-logo { width:64px; height:64px; margin-top:18px; }
 .home-next-icon { display:none; }
 .home-next-actions { gap:4px 14px; }
 .home-explore-links, .library-grid { grid-template-columns:minmax(0,1fr); }
 .practice-setup > .btn { width:100%; }
 .practice-round .practice-focus { align-items:flex-start; gap:12px; }
}
