/* Academy's shared illustrated lesson world. Activity state is owned by the reader. */
body[data-garden203] { --garden-ink:#342b52; --garden-accent:#7440bd; position:relative; isolation:isolate; background:var(--study-bg,linear-gradient(145deg,#e1d0ff,#d9f5ff))!important; }
body[data-garden203] .topbar { background:#ffffffed; border-radius:0 0 24px 24px; box-shadow:0 8px 24px #6336a220; }
body[data-garden203] .topbar nav a { font-size:.9rem; }
body[data-garden203] .demo { background:#f1e9ffeb; color:#513b70; }
body[data-garden203] .course-head,body[data-garden203] .course-utility>details { background:#fffaffed; box-shadow:0 5px 20px #6336a220; }
body[data-garden203] .lesson { overflow:hidden; background:#fffdfdf5; box-shadow:0 16px 50px #6336a225; border:1px solid #e4d4ff; border-top:5px solid var(--world-accent,#7440bd); }
body[data-garden203] .lesson-panel { background:linear-gradient(155deg,#fffdfdf5,#fffafff0); }
body[data-garden203] .lesson-title { position:relative; isolation:isolate; min-height:154px; padding:22px 26px; margin:-22px -26px 25px; display:flex; flex-direction:column; justify-content:center; overflow:hidden; color:#fff; background:#523579; }
.garden203-title-art { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 58%; z-index:-2; }
body[data-garden203] .lesson-title::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,#503078ed 0%,#70499fa6 48%,#9a6cca18 100%); z-index:-1; }
body[data-garden203] .lesson-title .eyebrow { color:#eadeff; font-size:.83rem; letter-spacing:.07em; }
body[data-garden203] .lesson-title h2 { color:#fff; margin:10px 0 0!important; max-width:34ch; line-height:1.3; text-shadow:0 2px 3px #36244e50; }
body[data-garden203] .tabs { background:#f2eaff; padding:10px; gap:9px; }
body[data-garden203] .tabs a { border:1px solid #cbb5eb; border-radius:13px; color:#513b70; min-height:48px; font-size:1rem; }
body[data-garden203] .tabs a[aria-current] { background:#7342ba; color:#fff; border-color:#7342ba; box-shadow:0 4px 0 #56308730; }
body[data-garden203] .tabs a[aria-current]>span { color:#4d2d77; background:#efe4ff; }
body[data-garden203] .lead { font-size:1.12rem; line-height:1.65; color:#342b52; }
body[data-garden203] .choices { grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; counter-reset:gardenchoice; }
body[data-garden203] .choice { position:relative; flex-direction:column; gap:13px; min-height:150px; padding:24px 18px 19px; border:2px solid #aacfe1; background:linear-gradient(150deg,#f3fbff,#e1f3ff); color:#342b52; box-shadow:0 5px 0 #689eb526; transition:transform .15s,border-color .15s,box-shadow .15s; }
body[data-garden203] .choice:nth-child(3n+2) { background:linear-gradient(150deg,#fff5f7,#ffe3eb); border-color:#e4a8bd; }
body[data-garden203] .choice:nth-child(3n+3) { background:linear-gradient(150deg,#f7f0ff,#e8ddf9); border-color:#b09ad0; }
body[data-garden203] .choice::before { counter-increment:gardenchoice; content:counter(gardenchoice,upper-alpha); position:absolute; right:15px; top:13px; display:grid; place-items:center; width:30px; height:30px; border-radius:9px; background:#ffffffb3; color:#513b70; font-weight:800; }
body[data-garden203] .choice input { width:22px; height:22px; margin:0; accent-color:#6836b4; }
body[data-garden203] .choice>span { font-size:1.02rem; line-height:1.6; }
body[data-garden203] .choice:has(input:checked) { border-color:#6836b4; box-shadow:0 0 0 2px #6836b4,0 6px 0 #6836b420; }
body[data-garden203] .choice:focus-within { outline:3px solid #6836b4; outline-offset:4px; }
body[data-garden203] .choice:hover { transform:translateY(-3px); }
body[data-garden203] .classify label,body[data-garden203] .order li { background:#f6f0ff; border-color:#c6b0e0; font-size:1rem; }
body[data-garden203] .actions button[data-action=check] { background:linear-gradient(125deg,#8250d0,#6236aa); border-color:#6236aa; box-shadow:0 5px 0 #57308d30; font-size:1rem; }
body[data-garden203] .feedback.success { border-left:6px solid #1e8059; background:#dff6e3; color:#175738; }
body[data-garden203] .support { background:#fff0f4; border-color:#deb2c4; }
body[data-garden203] footer { color:#342b52; background:#faf4ffed; border-radius:20px 20px 0 0; font-size:.84rem; }
body[data-garden203] .finder,body[data-garden203] .hero { background:#fffaffed; }
body[data-garden203] .course-card { box-shadow:0 8px 0 #6336a218,0 15px 26px #6336a216; }
html[data-support-calm=true] .garden203-title-art,html[data-study-theme=calm] .garden203-title-art { opacity:.12; }
body[data-garden203] .spl-coach { border:2px solid #c9afea; background:#faf3ff; box-shadow:0 10px 24px #6336a226; font-size:1rem; }
@media(max-width:760px) {
 body[data-garden203] .choices { grid-template-columns:1fr; }
 body[data-garden203] .choice { flex-direction:row; align-items:flex-start; min-height:92px; padding:23px 53px 18px 17px; }
 body[data-garden203] .choice input { flex:none; margin-top:3px; }
 body[data-garden203] .lesson-title { margin:-22px -17px 22px; padding:24px 18px; min-height:142px; }
 body[data-garden203] .lesson-title h2 { max-width:26ch; }
 body[data-garden203] .tabs a { font-size:.92rem; padding:8px 7px; }
}

@media(prefers-reduced-motion:reduce){body[data-garden203] .choice{transition:none}}

/* Quiet choices remain white, including the course shell. */
html:is([data-study-theme=calm],[data-study-background=white],[data-support-calm=true]) body[data-garden203] :is(.topbar,.demo,.course-head,.course-utility>details,.lesson,.lesson-panel,.lesson-title,.tabs,.choice,.finder,.hero,footer){background:#fff;color:#26334d;box-shadow:none}
html:is([data-study-theme=calm],[data-study-background=white],[data-support-calm=true]) body[data-garden203] .lesson-title::after{display:none}
html:is([data-study-theme=calm],[data-study-background=white],[data-support-calm=true]) body[data-garden203] .lesson-title :is(h2,.eyebrow){color:#26334d;text-shadow:none}
html:is([data-study-motion=reduced],[data-support-motion=reduced],[data-support-calm=true]) body[data-garden203] .choice:hover{transform:none}
@media(prefers-reduced-motion:reduce){body[data-garden203] .choice:hover{transform:none}}
