body{--soft:#e9f0e9;--accent:#f0c985;--hero:#174d43}
body[data-theme=ocean]{--green:#194d70;--hero:#163f60;--soft:#e8f1f8;--accent:#b6dcf3;--bg:#f2f6f9}
body[data-theme=plum]{--green:#683d65;--hero:#593352;--soft:#f3eaf1;--accent:#efc2ab;--bg:#f8f3f6}
body[data-theme=ocean],body[data-theme=plum]{background:var(--bg)}
body[data-theme] .hero{background:var(--hero)}
body[data-theme] .hero button{background:var(--accent);color:#24342e}
body[data-theme] .nav a.active,body[data-theme] .task-icon,body[data-theme] .day.active,body[data-theme] .reading .example{background:var(--soft);color:var(--green)}
body[data-theme] .hero .eyebrow,body[data-theme] .hero p{color:#f1f5f0}
.setup-wrap{min-height:100vh;background:radial-gradient(ellipse at top right,var(--soft),transparent 65%)}
.setup-header{max-width:1000px;margin:auto;padding:28px 30px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.setup-header a{font-size:1.3rem;font-weight:750;text-decoration:none;color:var(--green)}
.setup-header>span{font-size:.65rem;letter-spacing:.14em;color:var(--muted)}
.setup-main{max-width:1000px;padding-top:12px}
.setup-progress{list-style:none;display:flex;justify-content:space-between;gap:10px;padding:0;margin:0 0 28px}
.setup-progress li{display:flex;align-items:center;gap:8px;font-size:.75rem;color:var(--muted)}
.setup-progress li>span{display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;width:30px;height:30px;background:white;flex-shrink:0}
.setup-progress .reached>span{background:var(--green);color:#fff;border-color:var(--green)}
.setup-progress [aria-current]{font-weight:700;color:var(--green)}
.setup-form{padding:32px}.setup-form h1{font-size:2rem;margin:12px 0 16px}
.setup-form fieldset{border:0;padding:0;margin:24px 0;min-width:0}
.setup-form legend{font-size:.9rem;font-weight:650;margin-bottom:12px}
.setup-form .setup-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.setup-choice{display:flex;align-items:flex-start;gap:10px;margin:0;padding:18px 14px;border:1px solid var(--line);border-radius:12px;cursor:pointer}
.setup-choice:has(input:checked){border-color:var(--green);background:var(--soft);box-shadow:inset 0 0 0 1px var(--green)}
.setup-choice input{width:17px;height:17px;flex-shrink:0;margin:3px 0;accent-color:var(--green)}
.setup-choice strong,.setup-choice small{display:block;line-height:1.55}.setup-choice small{margin-top:8px;font-weight:400;color:var(--muted)}
.setup-fields{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.setup-fields .check{margin-bottom:8px}
.setup-preview{min-height:0;grid-template-columns:1fr}.setup-preview .pill{color:var(--green)}
.setup-tour{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}.setup-tour p{font-size:.86rem;line-height:1.7}.setup-tour h2{margin-top:14px}
.setup-tour details{margin-top:15px;line-height:1.6;font-size:.85rem}.setup-tour summary{cursor:pointer;color:var(--green);font-weight:650}
.setup-actions{display:flex;justify-content:space-between;gap:16px;margin-top:32px;padding-top:24px;border-top:1px solid var(--line);flex-wrap:wrap}
.setup-actions>button{border:0;background:transparent;color:var(--muted);padding-left:0}
.setup-summary{display:grid;gap:0;border:1px solid var(--line);border-radius:12px;margin:24px 0;overflow:hidden}
.setup-summary>div{padding:22px;background:var(--soft);border-bottom:1px solid var(--line)}.setup-summary>div:last-child{border:0}
.setup-summary small,.setup-summary strong,.setup-summary span{display:block}.setup-summary strong{font-size:1.3rem;margin:8px 0}.setup-summary span{font-size:.85rem}
body.high-contrast{--muted:#303d34;--line:#68796a;background:#fff;color:#122117}
body.high-contrast .subtle,body.high-contrast .setup-choice small{color:#303d34}
@media(max-width:720px){.setup-header{padding:22px 18px}.setup-header>span{display:none}.setup-progress{gap:6px}.setup-progress li{flex-direction:column;text-align:center;font-size:.6rem;flex:1}.setup-form{padding:20px}.setup-form h1{font-size:1.6rem}.setup-form .setup-choices,.setup-tour{grid-template-columns:1fr}.setup-fields{grid-template-columns:repeat(2,1fr)}.setup-actions>.row{width:100%;justify-content:space-between}}
