:root{--ink:#252c48;--violet:#3e365d;--gold:#e7bd77;--paper:#faf7f1;--line:#dedce6}body{background:var(--paper);color:var(--ink)}main{max-width:1230px;margin:auto;padding:0 28px}a{color:#493c70;text-underline-offset:4px}a:hover{color:#725620}.lab-header{border-color:var(--line)}.lab-header nav{flex-wrap:wrap}.lab-header nav a{color:#343b54}.spirit-hero{display:grid;grid-template-columns:1.3fr 1fr;gap:35px;padding:65px 55px;background:#242b48;color:#fffaf1;border-radius:8px 8px 100px 8px;margin:28px 0 50px;overflow:hidden}.spirit-hero h1{font-family:Georgia,serif;font-size:clamp(2.8rem,4.7vw,4.2rem);line-height:1.08;letter-spacing:-.045em;margin:15px 0 23px;color:inherit}.spirit-hero .lead{color:#e7e3ee;font-size:1.13rem;max-width:540px}.spirit-hero .eyebrow{color:#e8c78d}.hero-actions{display:flex;flex-wrap:wrap;gap:23px;align-items:center;margin:26px 0}.text-link{color:#fff1d7}.stats{display:flex;gap:22px;flex-wrap:wrap;border-top:1px solid #6a6a80;padding-top:24px;margin-top:35px}.stats span{font-size:.78rem;color:#ddd9e7}.stats b{display:block;font-size:1.65rem;font-weight:500;color:#f0cd91}.meaning-art{position:relative;min-height:345px;isolation:isolate;align-self:center}.arc{position:absolute;border:1px solid #aaa0be;border-radius:160px 160px 0 0;bottom:0}.a1{width:90%;height:100%;right:0}.a2{width:70%;height:85%;right:10%;border-color:#d7b577}.a3{width:50%;height:68%;right:20%}.sun{position:absolute;right:24%;top:22%;width:95px;height:95px;border-radius:50%;background:#e6be7c;box-shadow:0 0 70px #e6be7c20}.art-word{position:absolute;left:0;top:29%;font-size:2.4rem;line-height:1.45;letter-spacing:.08em;font-family:Georgia,serif;z-index:2}.art-caption{position:absolute;right:12%;bottom:18px;font-size:.75rem;line-height:1.7;color:#ddd3e9}.welcome,.closing{padding:30px 0 42px}.welcome>p{max-width:830px}.route-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}.route-grid a{display:flex;flex-direction:column;gap:12px;text-decoration:none;padding:22px;border:1px solid var(--line);border-radius:12px;background:#fff}.route-grid span{font-size:.9rem}.module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:25px 0 50px}.module-card{position:relative;background:#eeebf4;padding:27px;border-radius:14px;min-height:225px;border:1px solid #d9d5e5}.module-card:nth-child(3n+2){background:#f2eadd;border-color:#e4d6bf}.module-card:nth-child(3n){background:#e8efeb;border-color:#cfded4}.module-number{font:italic 1.8rem Georgia,serif;color:#6e657d}.module-card h3{font-size:1.3rem;line-height:1.3;margin:12px 0}.module-card h3 a{text-decoration:none}.module-card h3 a:after{content:'';position:absolute;inset:0;border-radius:14px}.module-card p{font-size:.93rem}.eyebrow{font-size:.7rem;letter-spacing:.12em;color:#605475}h2{font-family:Georgia,serif;font-size:2rem;line-height:1.2;letter-spacing:-.025em}h3{line-height:1.35}.activity-grid,.reading-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:24px 0}.activity-card{background:#fff;border:1px solid var(--line);padding:25px;border-radius:14px;display:flex;flex-direction:column;align-items:flex-start}.activity-card h3{font-size:1.2rem;margin:12px 0}.activity-card p{font-size:.93rem}.pill{display:inline-block;border-radius:7px;background:#f0edf5;color:#544867;padding:7px 10px;font-size:.7rem;margin-top:auto}.studio-filters{display:flex;align-items:end;gap:16px;flex-wrap:wrap;background:#eeebf2;border-radius:12px;padding:22px;margin:25px 0}.studio-filters label{flex:1;min-width:200px;display:flex;flex-direction:column;font-size:.85rem;font-weight:600;gap:9px}.studio-filters input,.studio-filters select{width:100%;min-height:48px;background:white;border:1px solid #aaa4b5;border-radius:6px;padding:12px;font:inherit}.studio-filters button{min-height:48px}.page-intro{padding:48px 0 28px;max-width:850px}.page-intro h1{font-family:Georgia,serif;font-size:clamp(2.5rem,5vw,3.9rem);line-height:1.08;letter-spacing:-.04em;color:var(--ink);margin:16px 0 20px}.page-intro .lead{font-size:1.15rem;max-width:750px;color:#5d6072}.lesson{background:white;border:1px solid var(--line);border-radius:14px;padding:30px 35px;margin:20px 0 38px;max-width:1000px}.lesson p,.lesson li{line-height:1.85}.lesson li{margin-bottom:13px}.reading{background:white;border:1px solid var(--line);border-top:3px solid #bb9b68;border-radius:12px;padding:25px;scroll-margin-top:20px}.reading blockquote{font:1.25rem/1.65 Georgia,serif;margin:18px 0 22px;padding:0;border:0;color:#34304b}.reading h3{font-size:.95rem}.reading p,.reading>a{font-size:.86rem;line-height:1.7}.reading .attribution{color:#665d73}.reading details{padding:12px 0;margin-bottom:15px;border-top:1px solid var(--line)}.reading summary{cursor:pointer;font-size:.88rem;font-weight:600}.practice-area,.integrate,.facilitate,.planner,.game-panel{background:white;border:1px solid var(--line);border-radius:14px;padding:30px;margin:25px 0}.practice-area{border-top:4px solid #6c5c92}.care{background:#efedf3;border-radius:12px;padding:24px 28px;margin:45px 0 30px;line-height:1.75}.care p{font-size:.87rem;margin-bottom:0}.game-menu{display:flex;gap:10px;flex-wrap:wrap}.game-menu button[aria-pressed=true]{background:#34304f;color:white}.game-panel{max-width:900px}.game-prompt{font:1.35rem/1.65 Georgia,serif;white-space:pre-line}.game-option{display:block;width:100%;text-align:left;margin:10px 0;background:#f1eef6;color:#342d50;border:1px solid #c4bcd2;padding:17px;white-space:normal}.game-option[aria-pressed=true]{background:#e7d7b9;border-color:#967446;color:#332817}#game-feedback{background:#f4eee2;padding:20px;line-height:1.75;border-radius:8px;white-space:pre-line;min-height:74px}.planner{max-width:900px}.planner form>label{display:block;font-weight:600;margin:23px 0 10px}.planner textarea{display:block;min-height:90px;width:100%;padding:13px;font:inherit;line-height:1.6;border:1px solid #a59dae;border-radius:8px;background:#fefdfb;resize:vertical}.planner fieldset{border:1px solid var(--line);padding:18px;margin:25px 0}.day{display:inline-flex;gap:7px;align-items:center;margin:9px 18px 9px 0}.tools{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}button,.button{border-radius:7px}button{background:#f1edf7;color:#352d50;border:1px solid #a69db8;font:inherit;padding:12px 18px;cursor:pointer}.button.dark{background:#34304f;color:#fff}button:hover{background:#e2d9ed}button:disabled{opacity:.45;cursor:default}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #96713c;outline-offset:4px}.reading[hidden],.activity-card[hidden]{display:none!important}.lab-footer{flex-wrap:wrap;gap:18px;background:#242b48;color:#fff}.lab-footer a{color:#f5dfb8}.lesson,.reading,.activity-card,.module-card{overflow-wrap:anywhere}.closing p{max-width:760px}#plan-status{white-space:pre-line}#studio-more{margin:0 0 30px}@media(max-width:950px){.spirit-hero{padding:38px;grid-template-columns:1.4fr 1fr}.meaning-art{min-height:300px}.art-word{font-size:1.8rem}.module-grid,.activity-grid,.reading-grid{grid-template-columns:repeat(2,1fr)}.route-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){main{padding:0 18px}.spirit-hero{grid-template-columns:1fr;padding:32px 24px;border-radius:8px 8px 50px 8px}.spirit-hero h1{font-size:2.8rem}.meaning-art{display:none}.stats{gap:20px}.stats span{width:40%}.module-grid,.activity-grid,.reading-grid{grid-template-columns:1fr}.route-grid{gap:9px}.route-grid a{padding:16px;font-size:.9rem}.lesson,.practice-area,.integrate,.facilitate,.planner,.game-panel{padding:23px 19px}.studio-filters{padding:18px}.lab-header{padding:20px}.lab-header nav{gap:15px}.game-menu button{flex:1 1 40%;font-size:.85rem}.page-intro h1{font-size:2.65rem}.care{padding:22px}.tools button{font-size:.9rem}.reading blockquote{font-size:1.22rem}}@media print{.lab-header,.lab-footer,.care,.game-menu,.tools,.studio-filters,#plan-import,.skip{display:none!important}body,main{background:#fff;color:#000;padding:0}.planner,.lesson,.practice-area,.integrate{border:0;padding:0}.planner textarea{height:auto;min-height:80px;border:1px solid #aaa;break-inside:avoid}.reading,.module-card,.activity-card{break-inside:avoid}.reading-grid{grid-template-columns:1fr 1fr}a{color:#000}.page-intro{padding-top:0}#plan-status{display:none}}

#plan-print-view{display:none}@media print{#practice-form,.planner>p,.planner>label{display:none!important}#plan-print-view{display:block}#plan-print-view p{white-space:pre-wrap;overflow-wrap:anywhere}#plan-print-view h3{break-after:avoid}}
