:root{--cream:#f4f0e4;--paper:#fffdf6;--ink:#17362d;--muted:#5f6f68;--forest:#245442;--moss:#6f8a5e;--fern:#b7c89b;--gold:#e5b45b;--clay:#b96b52;--blue:#5c8191;--line:#d9d7c8;--shadow:0 18px 50px rgba(31,62,49,.1);--radius:28px;--serif:Georgia,'Times New Roman',serif;--sans:'Trebuchet MS','Segoe UI',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);line-height:1.6}button,input{font:inherit}button,a{touch-action:manipulation}a{color:inherit}button{color:inherit}.skip{position:fixed;top:8px;left:8px;z-index:100;background:var(--ink);color:white;padding:10px 14px;border-radius:8px;transform:translateY(-160%)}.skip:focus{transform:none}#storage-warning{background:#fff0cc;color:#603d06;text-align:center;padding:10px 20px;font-size:.88rem}.header{height:76px;position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:36px;padding:0 max(24px,calc((100vw - 1240px)/2));background:rgba(244,240,228,.92);border-bottom:1px solid rgba(23,54,45,.12);backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;gap:9px;text-decoration:none;font-family:var(--serif);font-size:1.4rem;font-weight:bold;white-space:nowrap}.brand.small{font-size:1.05rem}.brand-mark{display:grid;place-items:center;width:31px;height:31px;border-radius:50% 50% 45% 55%;background:var(--forest);color:var(--cream);font-family:var(--sans);font-size:.85rem;transform:rotate(-8deg)}.brand-dot{color:var(--clay)}.desktop-nav{display:flex;gap:28px;margin-right:auto}.desktop-nav a{position:relative;text-decoration:none;font-weight:700;font-size:.92rem;padding:27px 2px 24px}.desktop-nav a[aria-current]::after{content:'';position:absolute;height:3px;left:0;right:0;bottom:17px;border-radius:3px;background:var(--clay)}.header-right{display:flex;align-items:center;gap:18px}.beta-label{font-size:.65rem;font-weight:800;letter-spacing:.14em;color:var(--muted)}.icon-button{display:grid;place-items:center;width:40px;height:40px;text-decoration:none;border:1px solid var(--line);border-radius:50%;background:var(--paper);font-size:1.2rem}.mobile-nav{display:none}main{min-height:calc(100vh - 190px)}.loading{padding:20vh 24px;text-align:center;font-family:var(--serif);font-size:1.35rem}.feed-intro,.page-heading,.practice-heading{max-width:1180px;margin:0 auto;padding:72px 24px 42px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:64px;align-items:end}.kicker{margin:0 0 12px;color:var(--clay);font-size:.76rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.feed-intro h1,.page-heading h1,.practice-heading h1,.about-hero h1{max-width:820px;margin:0;font-family:var(--serif);font-size:clamp(2.8rem,6vw,5.8rem);line-height:.95;letter-spacing:-.055em;font-weight:500}.intro-note,.page-heading>p,.practice-heading>div>p:last-child{max-width:400px;margin:0;color:var(--muted);font-size:1.05rem}.filter-row{position:sticky;top:76px;z-index:15;max-width:1180px;margin:0 auto 30px;padding:12px 24px;display:flex;gap:9px;align-items:center;background:linear-gradient(var(--cream) 78%,transparent)}.filter-row.compact{position:static}.filter-row button,.difficulty-row button{border:1px solid var(--line);border-radius:999px;background:var(--paper);padding:9px 15px;font-size:.83rem;font-weight:800;cursor:pointer}.filter-row button[aria-pressed=true],.difficulty-row button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:white}.result-count{margin-left:auto;color:var(--muted);font-size:.78rem}.feed-grid{max-width:1180px;margin:0 auto;padding:0 24px 84px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.discovery-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:0 2px 0 rgba(23,54,45,.03);transition:transform .22s ease,box-shadow .22s ease}.discovery-card:hover{transform:translateY(-4px) rotate(-.2deg);box-shadow:var(--shadow)}.discovery-card:nth-child(3n):hover{transform:translateY(-4px) rotate(.25deg)}.card-link{height:100%;display:grid;grid-template-columns:42% 58%;text-decoration:none}.discovery-card.featured{grid-column:1/-1}.featured .card-link{grid-template-columns:52% 48%}.post-art{position:relative;min-height:300px;overflow:hidden;background:linear-gradient(145deg,#b7c89b,#416d5a)}.post-art::before,.post-art::after{content:'';position:absolute;border:2px solid rgba(255,253,246,.55);border-radius:51% 49% 60% 40%}.post-art::before{width:170px;height:250px;left:-35px;bottom:-90px;transform:rotate(28deg)}.post-art::after{width:130px;height:210px;right:-40px;top:-70px;transform:rotate(-20deg)}.art-orbit{position:absolute;width:170px;height:170px;border:1px solid rgba(255,253,246,.66);border-radius:50%;left:50%;top:48%;transform:translate(-50%,-50%) rotate(18deg)}.art-orbit::before{content:'';position:absolute;width:12px;height:12px;border-radius:50%;background:var(--gold);top:11px;left:28px;box-shadow:93px 124px 0 rgba(255,253,246,.8)}.art-seed{position:absolute;width:88px;height:120px;left:50%;top:50%;border-radius:72% 28% 68% 32%;background:rgba(255,253,246,.22);transform:translate(-50%,-50%) rotate(33deg)}.art-glyph{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-family:var(--serif);font-size:3rem;color:var(--paper);text-shadow:0 3px 16px rgba(0,0,0,.15)}.art-space,.art-light{background:linear-gradient(145deg,#203e49,#698ea0)}.art-earth,.art-atom{background:linear-gradient(145deg,#a96d50,#d8a66a)}.art-language,.art-word{background:linear-gradient(145deg,#6f596f,#a88391)}.art-math,.art-shape{background:linear-gradient(145deg,#375668,#7d9da0)}.art-animal,.art-plant,.art-fungi,.art-water{background:linear-gradient(145deg,#507458,#a8bc75)}.card-copy{position:relative;padding:32px 34px 30px;display:flex;flex-direction:column;align-items:flex-start}.topic{display:inline-flex;padding:5px 9px;border-radius:999px;background:#e9efe1;color:#3e6049;font-size:.67rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.topic-science{background:#e2edf0;color:#315f6d}.topic-language{background:#eee6ec;color:#75566e}.topic-math{background:#e5eceb;color:#365a5d}.seen{position:absolute;right:32px;top:36px;color:var(--muted);font-size:.7rem}.card-copy h2{margin:21px 0 12px;font-family:var(--serif);font-size:clamp(1.55rem,3vw,2.35rem);font-weight:500;line-height:1.08;letter-spacing:-.035em}.card-copy p{margin:0 0 28px;color:var(--muted);font-size:.95rem}.read-cue{margin-top:auto;border-bottom:1px solid var(--ink);font-size:.78rem;font-weight:900}.save-button{position:absolute;right:15px;bottom:15px;z-index:2;width:43px;height:43px;border:1px solid var(--line);border-radius:50%;background:rgba(255,253,246,.93);font-size:1.3rem;cursor:pointer}.save-button[aria-pressed=true]{color:var(--clay)}.story{max-width:1180px;margin:0 auto;padding:34px 24px 70px}.back-link{display:inline-block;margin-bottom:26px;color:var(--muted);text-decoration:none;font-size:.86rem;font-weight:800}.story-header{display:grid;grid-template-columns:1fr 1fr;min-height:530px;border:1px solid var(--line);border-radius:36px;overflow:hidden;background:var(--paper)}.story-title{padding:clamp(38px,7vw,82px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.story-title h1{margin:25px 0 22px;font-family:var(--serif);font-size:clamp(2.7rem,5.5vw,5.2rem);line-height:.96;letter-spacing:-.055em;font-weight:500}.story-title>p{margin:0;color:var(--muted);font-size:1.1rem}.story-actions{width:100%;display:flex;align-items:center;gap:16px;margin-top:40px}.story-actions span{color:var(--muted);font-size:.78rem}.post-art.large{min-height:530px}.story-body{display:grid;grid-template-columns:minmax(0,700px) minmax(240px,1fr);gap:64px;margin-top:70px}.story-copy>section:not(.question-card):not(.sources){position:relative;padding:0 0 54px 66px}.section-marker{position:absolute;left:0;top:5px;color:var(--clay);font-size:.72rem;font-weight:900}.story-copy h2{margin:0 0 15px;font-family:var(--serif);font-size:2rem;font-weight:500;letter-spacing:-.03em}.story-copy p{margin:0;font-family:var(--serif);font-size:1.13rem;line-height:1.78}.story-aside{position:relative}.preference-card{position:sticky;top:112px;padding:25px;border:1px solid var(--line);border-radius:22px;background:rgba(255,253,246,.75)}.preference-card>p{margin:0;color:var(--clay);font-size:.72rem;font-weight:900;text-transform:uppercase}.preference-card h2{margin:6px 0 18px;font-family:var(--serif);font-weight:500}.preference-card>div{display:flex;gap:8px}.preference-card button{border:1px solid var(--line);background:var(--paper);border-radius:10px;padding:9px;cursor:pointer;font-size:.75rem;font-weight:800}.preference-card small{display:block;margin-top:12px;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ink);border-radius:999px;padding:11px 18px;text-decoration:none;cursor:pointer;font-weight:900;font-size:.82rem}.button.primary{background:var(--ink);color:white}.button.quiet{background:transparent}.question-card{margin:0 0 60px;padding:36px;border-radius:28px;background:#e7ede1}.question-card h2{font-size:2.2rem}.answer-list{display:grid;gap:10px;margin-top:25px}.answer-list button{display:flex;align-items:center;gap:14px;border:1px solid rgba(23,54,45,.2);border-radius:14px;background:var(--paper);padding:13px;text-align:left;cursor:pointer}.answer-list button span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--cream);font-size:.75rem;font-weight:900}.answer-list button.correct{border-color:#3f7c58;background:#edf8ec}.answer-list button.chosen-wrong{border-color:#b96b52;background:#fff0ec}.answer-explanation{padding-top:20px;font-family:var(--sans)!important;font-size:.95rem!important}.sources{padding:34px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.sources ul{padding:0;list-style:none}.sources li+li{margin-top:10px}.sources a{font-weight:800}.sources>p:last-child{font-family:var(--sans);font-size:.75rem;color:var(--muted)}.related{max-width:1180px;margin:0 auto;padding:0 24px 90px}.related>h2{font-family:var(--serif);font-size:2.5rem;font-weight:500}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.related-grid .card-link{display:block}.related-grid .post-art{min-height:210px}.related-grid .card-copy{min-height:270px}.related-grid .card-copy h2{font-size:1.55rem}.practice-heading{grid-template-columns:1fr auto}.practice-stat{width:120px;height:120px;border-radius:44% 56% 50% 50%;background:var(--forest);color:white;display:grid;place-content:center;text-align:center;transform:rotate(4deg)}.practice-stat strong{font-family:var(--serif);font-size:2.5rem;line-height:1}.practice-stat span{font-size:.68rem}.difficulty-row{max-width:760px;margin:-18px auto 22px;padding:0 24px;display:flex;gap:8px}.practice-card{max-width:720px;margin:0 auto 90px;padding:34px;border:1px solid var(--line);border-radius:32px;background:var(--paper);box-shadow:var(--shadow)}.practice-progress{display:flex;justify-content:space-between;color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase}.listen-button{width:100%;margin:34px 0 25px;padding:35px;border:0;border-radius:24px;background:#e6ede1;cursor:pointer;display:grid;place-items:center}.listen-button>span{font-size:2.3rem}.listen-button strong{font-family:var(--serif);font-size:1.8rem;font-weight:500}.listen-button small{color:var(--muted)}.example{text-align:center;color:var(--muted);font-family:var(--serif);font-style:italic}.practice-card form{margin-top:30px}.practice-card label{display:block;margin-bottom:8px;font-weight:800}.spell-entry{display:flex;gap:10px}.spell-entry input{min-width:0;flex:1;border:1px solid var(--line);border-radius:999px;background:#faf8ef;padding:13px 18px;font-size:1.05rem}.practice-card form>small{display:block;margin-top:7px;color:var(--muted);font-size:.7rem}.spell-feedback{margin-top:28px;padding:24px;border-radius:20px;background:#fff0ec}.spell-feedback.good{background:#eaf4e3}.spell-feedback h2{font-family:var(--serif);font-size:2rem}.spell-feedback p{font-size:.9rem}.audio-unavailable{text-align:center;padding:38px 10px}.audio-unavailable h2{font-family:var(--serif);font-size:3rem;margin:5px}.practice-shell.complete{max-width:750px;margin:90px auto;padding:70px 24px;text-align:center}.practice-shell h1{font-family:var(--serif);font-size:clamp(2.6rem,6vw,5rem);font-weight:500;line-height:1}.practice-bloom{font-size:4rem;color:var(--gold)}.page-heading{display:block}.page-heading>p{margin-top:22px}.settings-grid,.about-grid{max-width:1080px;margin:0 auto 90px;padding:0 24px;display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.settings-card{padding:31px;border:1px solid var(--line);border-radius:24px;background:var(--paper)}.settings-card h2,.about-grid h2{font-family:var(--serif);font-size:2rem;font-weight:500;margin:0}.settings-card>p{color:var(--muted)}.preference-row{display:flex;align-items:center;justify-content:space-between;padding:13px 0;border-top:1px solid var(--line)}.preference-row>div{display:grid;grid-template-columns:32px 90px 32px;align-items:center}.preference-row button{height:32px;border:1px solid var(--line);background:var(--cream);border-radius:50%;cursor:pointer}.preference-row output{text-align:center;font-size:.72rem}.button-stack{display:flex;flex-direction:column;align-items:stretch;gap:9px;margin-top:20px}.file-button{position:relative}.file-button input{position:absolute;width:1px;height:1px;opacity:0}.text-button{border:0;background:none;text-decoration:underline;cursor:pointer;padding:8px}.danger{color:#944b3b}.settings-card dl{display:flex;gap:25px}.settings-card dl div{display:flex;flex-direction:column}.settings-card dt{font-size:.7rem;color:var(--muted)}.settings-card dd{margin:0;font-family:var(--serif);font-size:2rem}.topic-counts{padding:0;list-style:none}.topic-counts li{display:flex;justify-content:space-between;padding:8px 0;border-top:1px solid var(--line);font-size:.82rem}.about-hero{max-width:1080px;margin:0 auto;padding:90px 24px 70px}.about-hero>p:last-child{max-width:650px;color:var(--muted);font-size:1.1rem}.about-grid{grid-template-columns:1.3fr .7fr}.about-grid>section{padding:40px;border-top:1px solid var(--ink)}.about-grid ol{padding:0;list-style:none;counter-reset:steps}.about-grid li{counter-increment:steps;display:grid;grid-template-columns:40px 1fr;padding:18px 0;border-bottom:1px solid var(--line)}.about-grid li::before{content:counter(steps);color:var(--clay);font-weight:bold}.about-grid li span{grid-column:2;color:var(--muted)}.empty-state{max-width:700px;margin:80px auto;padding:70px 24px;text-align:center}.empty-state>span{display:grid;place-items:center;width:80px;height:80px;margin:0 auto 25px;border-radius:50%;background:#e5eadd;font-family:var(--serif);font-size:2rem}.empty-state h1,.empty-state h2{font-family:var(--serif);font-size:2.6rem;font-weight:500}.footer{min-height:110px;padding:30px max(24px,calc((100vw - 1180px)/2));border-top:1px solid var(--line);display:flex;align-items:center;gap:34px;color:var(--muted);font-size:.78rem}.footer span{margin-right:auto}#toast{position:fixed;z-index:100;left:50%;bottom:24px;max-width:calc(100vw - 30px);transform:translate(-50%,140%);background:var(--ink);color:white;padding:12px 18px;border-radius:999px;box-shadow:var(--shadow);transition:transform .25s ease;font-size:.82rem}#toast.show{transform:translate(-50%,0)}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
@media(max-width:850px){.header{padding:0 20px}.desktop-nav,.beta-label{display:none}.header-right{margin-left:auto}.mobile-nav{position:fixed;z-index:30;left:10px;right:10px;bottom:10px;display:grid;grid-template-columns:repeat(4,1fr);padding:6px;border:1px solid var(--line);border-radius:22px;background:rgba(255,253,246,.95);box-shadow:0 12px 34px rgba(23,54,45,.2);backdrop-filter:blur(12px)}.mobile-nav a{display:grid;place-items:center;text-decoration:none;padding:7px 2px;border-radius:16px;color:var(--muted);font-size:.62rem;font-weight:800}.mobile-nav a>span{font-size:1rem}.mobile-nav a[aria-current]{background:var(--ink);color:white}.feed-intro,.practice-heading{grid-template-columns:1fr;gap:25px;padding-top:52px}.feed-grid{grid-template-columns:1fr}.discovery-card.featured{grid-column:auto}.featured .card-link,.card-link{grid-template-columns:42% 58%}.post-art{min-height:280px}.story-header{grid-template-columns:1fr}.story-title{padding:42px 30px}.story-header .post-art{min-height:390px;grid-row:1}.story-body{grid-template-columns:1fr;margin-top:48px}.story-aside{grid-row:1}.preference-card{position:static}.related-grid{grid-template-columns:1fr}.related-grid .card-link{display:grid}.settings-grid,.about-grid{grid-template-columns:1fr}.filter-row{overflow-x:auto}.result-count{display:none}.footer{padding-bottom:100px;flex-wrap:wrap}.footer span{width:100%;order:3}}
@media(max-width:560px){.header{height:66px}.filter-row{top:66px}.feed-intro h1,.page-heading h1,.practice-heading h1,.about-hero h1{font-size:2.9rem}.feed-intro{padding-bottom:30px}.filter-row{padding-left:16px;padding-right:16px}.feed-grid{padding:0 14px 75px;gap:16px}.card-link,.featured .card-link,.related-grid .card-link{display:block}.post-art{min-height:220px}.card-copy{padding:25px 24px 74px}.card-copy h2{font-size:1.75rem}.save-button{bottom:18px;right:18px}.story{padding:20px 13px 70px}.story-header{border-radius:25px}.story-header .post-art{min-height:300px}.story-title h1{font-size:2.9rem}.story-body{gap:35px}.story-copy>section:not(.question-card):not(.sources){padding-left:42px}.question-card{padding:25px}.related{padding-left:14px;padding-right:14px}.practice-heading{padding-left:20px;padding-right:20px}.practice-stat{width:96px;height:96px}.practice-card{margin-left:12px;margin-right:12px;padding:22px}.spell-entry{display:grid}.settings-grid,.about-grid{padding:0 14px}.settings-card,.about-grid>section{padding:25px}.footer{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.discovery-card:hover{transform:none}}
@media(forced-colors:active){.topic,.button,.filter-row button,.mobile-nav a[aria-current]{border:1px solid ButtonText}.post-art{border:1px solid CanvasText}}
.answer-label{margin-left:auto;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em}
