.chapter-paths { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.chapter-path { border:1px solid #46596a; border-radius:6px; padding:16px; background:#18262d; min-width:0; }
.chapter-path.selected { border-color:#8ecba9; }
.chapter-icon { color:#b8e1a0; font-size:24px; }
.chapter-path h3 { font-size:16px; line-height:1.5; margin:10px 0; }
.chapter-path p { font-size:12px; line-height:1.8; color:#c6d3cd; min-height:44px; }
.chapter-path ol { padding:0; list-style:none; margin:12px 0; }
.chapter-path li { display:flex; gap:8px; font-size:12px; line-height:1.6; padding:6px 0; color:#c8d0d9; }
.chapter-path li.complete { color:#a7d89d; }
.chapter-path small { display:block; margin-top:10px; font-size:11px; line-height:1.6; color:#b6c9bf; }
.chapter-bottom { display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }
.style-preview { margin:0 0 16px; background:#15242b; border:1px solid #547267; border-radius:6px; overflow:hidden; }
.style-preview canvas { display:block; width:100%; height:auto; aspect-ratio:3/2; image-rendering:pixelated; }
.chapter-recap { display:flex; flex-wrap:wrap; align-items:center; gap:8px; padding:8px 12px; border-bottom:1px solid var(--border); font-size:12px; }
.chapter-recap[hidden] { display:none; }
.chapter-recap > span { flex:1 1 180px; min-width:0; overflow-wrap:anywhere; }
.chapter-recap button { max-width:100%; white-space:normal; }
.weekly-goal { padding:0 0 12px; margin:0 0 12px; border-bottom:1px solid var(--border); }
.weekly-goal small { display:block; margin-bottom:8px; }
.style-preview figcaption { padding:10px 12px; color:#d3e2d8; font-size:12px; line-height:1.6; }
.style-tabs { display:flex; margin-bottom:14px; border-bottom:1px solid #4a5e61; }
.style-tabs button { flex:1; display:flex; align-items:center; justify-content:center; gap:6px; min-height:44px; border:0; border-bottom:3px solid transparent; background:transparent; color:#b7c9c3; font:inherit; font-size:12px; cursor:pointer; }
.style-tabs button[aria-selected="true"] { border-bottom-color:#cae89d; color:#e7f3d2; }
.style-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.style-option { display:grid; grid-template-columns:32px minmax(0,1fr); align-items:center; gap:4px 10px; min-height:72px; padding:10px; border:1px solid #4c6066; border-radius:4px; background:#202e36; color:#e1e9df; text-align:left; cursor:pointer; }
.style-option[aria-pressed="true"] { border-color:#bde19f; box-shadow:inset 0 0 0 1px #bde19f; }
.style-option i { grid-row:span 2; width:32px; height:32px; border-radius:3px; display:grid; place-items:center; color:#2a4146; }
.style-option span { font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.style-option small { font-size:10px; color:#b9cbc0; line-height:1.5; }
.style-footer { display:flex; gap:14px; align-items:center; justify-content:space-between; margin-top:18px; }
.style-footer > span { max-width:260px; font-size:11px; line-height:1.7; color:#bccdc6; }
.style-footer .pixel-btn { flex-shrink:0; }
.pack-preview { margin-bottom:16px; }
.pack-preview canvas { width:100%; aspect-ratio:3/2; max-height:320px; object-fit:contain; background:#253644; image-rendering:pixelated; }
.checkout-link { display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:10px 14px; color:#d4f2ac; border:1px solid #83a06c; border-radius:4px; margin-top:12px; }
@media(max-width:480px) { .chapter-paths { grid-template-columns:minmax(0,1fr); } .chapter-path p { min-height:0; } .style-footer { align-items:stretch; flex-direction:column; } .style-footer > span { max-width:none; } }
@media(prefers-reduced-motion:no-preference) { .style-preview { animation:style-reveal .22s ease-out; } @keyframes style-reveal { from { opacity:.6; transform:translateY(4px); } to { opacity:1; transform:none; } } }
