:root{--ink:#56453d;--forest:#655047;--mint:#c7b9a7;--cream:#fbfaf3;--paper:#fffef9;--gold:#b89b73;--rose:#947265;--line:rgba(86,69,61,.13);--shadow:0 24px 60px rgba(77,61,53,.12);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--cream)}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 5% 0%,#dcece6 0,transparent 30%),radial-gradient(circle at 95% 20%,#f1dfd4 0,transparent 26%),var(--cream);overflow-x:hidden}.ambient{position:fixed;border-radius:50%;filter:blur(2px);opacity:.3;pointer-events:none}.ambient-a{width:360px;height:360px;background:#9ccbbe;right:-210px;top:30%}.ambient-b{width:300px;height:300px;background:#e7bd9e;left:-190px;bottom:4%}button,input,textarea{font:inherit}.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;position:sticky;top:0;z-index:20;background:rgba(247,243,234,.78);backdrop-filter:blur(18px);border-bottom:1px solid rgba(23,53,49,.08)}.brand{border:0;background:transparent;display:flex;align-items:center;gap:12px;color:var(--ink);font-family:Georgia,serif;font-size:1.35rem;cursor:pointer}.brand-mark{display:grid;place-items:center;width:37px;height:37px;border-radius:50%;background:var(--forest);color:white;font-style:italic}.top-actions{display:flex;align-items:center;gap:10px}.save-state{font-size:.78rem;color:#668079}.lang-toggle{border:1px solid var(--line);background:rgba(255,255,255,.72);border-radius:999px;padding:9px 13px;color:var(--forest);font-weight:800;cursor:pointer}.bottom-nav{position:fixed;z-index:30;left:50%;bottom:18px;transform:translateX(-50%);display:flex;gap:4px;padding:7px;border-radius:22px;background:rgba(25,58,52,.94);box-shadow:0 18px 40px rgba(12,34,30,.24);backdrop-filter:blur(12px)}.bottom-nav button{min-width:88px;border:0;border-radius:16px;padding:8px 12px;background:transparent;color:#bdd0cb;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:7px}.bottom-nav button span{font-size:1.15rem}.bottom-nav button b{font-size:.79rem}.bottom-nav button.active{background:#f8f3e9;color:var(--forest)}main{position:relative;z-index:2;width:min(1100px,90vw);margin:0 auto;padding:46px 0 125px}.hero{display:grid;grid-template-columns:1.25fr .75fr;gap:34px;align-items:stretch}.hero-copy,.hero-card,.panel,.module-card,.journal-card,.result-card{background:rgba(255,253,248,.84);border:1px solid rgba(255,255,255,.75);box-shadow:var(--shadow);border-radius:30px}.hero-copy{padding:clamp(30px,5vw,64px);min-height:465px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.hero-copy:after{content:"";position:absolute;width:220px;height:220px;border:54px solid rgba(143,190,179,.22);border-radius:50%;right:-100px;top:-90px}.eyebrow{font-size:.74rem;letter-spacing:.19em;font-weight:900;color:var(--rose)}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:500;margin:0}.hero h1{font-size:clamp(3rem,6vw,5.5rem);line-height:.94;letter-spacing:-.055em;margin:18px 0 24px;max-width:680px}.hero h1 em,.welcome-card h1 em{font-weight:400;color:var(--rose)}.lead{font-size:1.08rem;line-height:1.7;color:#506862;max-width:590px}.primary,.secondary{border:0;border-radius:999px;padding:14px 21px;font-weight:800;cursor:pointer}.primary{background:var(--forest);color:white}.secondary{background:#e3eee9;color:var(--forest)}.hero-actions{display:flex;gap:12px;margin-top:20px;flex-wrap:wrap}.hero-card{background:var(--forest);color:white;padding:34px;display:flex;flex-direction:column;justify-content:space-between;min-height:465px;position:relative;overflow:hidden}.hero-card:before{content:"";position:absolute;width:250px;height:250px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#e3b99a,#bd776f 32%,#6fa89a 70%,#285b52);right:-65px;top:-38px}.hero-card>*{position:relative}.hero-card .number{font-family:Georgia,serif;font-size:5rem;line-height:1}.hero-card p{color:#c7dad5;line-height:1.6}.mini-progress{height:9px;background:rgba(255,255,255,.13);border-radius:99px;overflow:hidden}.mini-progress span{display:block;height:100%;background:#edc596;border-radius:99px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:55px 0 22px}.section-head h2{font-size:clamp(2rem,4vw,3.4rem);letter-spacing:-.035em}.section-head p{max-width:430px;color:#61766f;line-height:1.6}.module-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.module-card{padding:28px;display:grid;grid-template-columns:auto 1fr;gap:19px;cursor:pointer;transition:.25s transform,.25s box-shadow;text-align:left;color:var(--ink)}.module-card:hover{transform:translateY(-4px);box-shadow:0 26px 65px rgba(24,56,50,.18)}.module-index{width:47px;height:47px;display:grid;place-items:center;border-radius:50%;background:#e4efea;color:var(--forest);font-weight:900}.module-card.complete .module-index{background:var(--forest);color:#fff}.module-card h3{font-size:1.55rem;margin:2px 0 8px}.module-card p{margin:0;color:#62756f;line-height:1.55}.module-card small{display:inline-block;margin-top:17px;color:var(--rose);font-weight:800}.view-header{display:flex;align-items:center;gap:18px;margin-bottom:30px}.back{width:45px;height:45px;border:1px solid var(--line);border-radius:50%;background:white;color:var(--forest);font-size:1.25rem;cursor:pointer}.view-header h1{font-size:clamp(2.3rem,5vw,4.7rem);letter-spacing:-.045em}.panel{padding:clamp(24px,4vw,44px);margin-bottom:22px}.panel h2{font-size:2rem;margin-bottom:14px}.panel p,.panel li{font-size:1rem;line-height:1.72;color:#4e6660}.insight{border-left:4px solid var(--gold);padding:13px 18px;background:#fbf2e4;border-radius:0 13px 13px 0;margin:22px 0}.exercise{background:var(--forest);color:white}.exercise h2,.exercise p{color:white}.exercise p{opacity:.82}.field-label{display:block;font-weight:800;margin:20px 0 8px}.scale{display:flex;justify-content:space-between;gap:8px}.scale button{flex:1;min-height:46px;border:1px solid rgba(255,255,255,.25);border-radius:12px;background:rgba(255,255,255,.08);color:white;cursor:pointer}.scale button.selected{background:#f0c899;color:var(--forest);border-color:#f0c899}.exercise textarea,.journal-card textarea,.journal-card input{width:100%;border:1px solid var(--line);background:#fffefb;border-radius:15px;padding:15px;color:var(--ink);outline:none}.exercise textarea{min-height:118px}.exercise textarea:focus,.journal-card textarea:focus,.journal-card input:focus{box-shadow:0 0 0 3px rgba(143,190,179,.35)}.complete-btn{margin-top:18px;background:#efc898;color:var(--forest)}.journal-card{padding:clamp(24px,4vw,42px)}.journal-card h2{font-size:2rem;margin-bottom:8px}.journal-card p{color:#637872}.journal-card textarea{min-height:180px}.journal-list{display:grid;gap:12px;margin-top:20px}.journal-entry{padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}.journal-entry time{font-size:.78rem;color:var(--rose);font-weight:800}.journal-entry p{margin:8px 0 0;white-space:pre-wrap}.progress-ring{width:185px;height:185px;border-radius:50%;display:grid;place-items:center;margin:10px auto 25px;background:conic-gradient(var(--forest) var(--value),#e1ebe6 0);position:relative}.progress-ring:after{content:"";position:absolute;width:140px;height:140px;background:var(--paper);border-radius:50%}.progress-ring strong{position:relative;z-index:1;font-family:Georgia,serif;font-size:2.5rem}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stat{padding:17px;border-radius:17px;background:#e6efe9;text-align:center}.stat strong{display:block;font-size:1.5rem}.welcome-layer{position:fixed;inset:0;z-index:100;background:rgba(19,47,42,.88);backdrop-filter:blur(16px);display:grid;place-items:center;padding:20px}.welcome-layer.hidden{display:none}.welcome-card{width:min(620px,95vw);text-align:center;background:var(--paper);border-radius:34px;padding:clamp(28px,6vw,58px);box-shadow:0 30px 90px rgba(0,0,0,.25)}.welcome-card h1{font-size:clamp(2.1rem,5vw,3.8rem);line-height:1.05;letter-spacing:-.04em;margin:17px 0}.welcome-card p{line-height:1.65;color:#61756f}.orb{width:92px;height:92px;border-radius:50%;margin:0 auto;background:conic-gradient(from 40deg,#d8a28a,#bd7770,#8dbeb0,#d5c17e,#d8a28a);padding:10px}.orb span{display:block;width:100%;height:100%;border-radius:50%;background:var(--paper)}.language-choices{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:27px}.language-choices button{border:1px solid var(--line);border-radius:18px;background:#edf3ef;color:var(--forest);padding:18px;cursor:pointer}.language-choices button:hover{background:var(--forest);color:#fff}.language-choices strong,.language-choices small{display:block}.language-choices strong{font-size:1.08rem}.language-choices small{margin-top:5px;opacity:.7}.empty{text-align:center;padding:40px;color:#687b75}.footer-note{text-align:center;color:#71847e;font-size:.8rem;margin-top:40px}
@media(max-width:760px){.topbar{height:66px;padding:0 18px}.save-state{display:none}main{width:min(92vw,620px);padding-top:24px}.hero{grid-template-columns:1fr}.hero-copy,.hero-card{min-height:390px}.hero h1{font-size:3.35rem}.module-grid{grid-template-columns:1fr}.section-head{display:block}.bottom-nav{bottom:10px;width:calc(100% - 20px);justify-content:space-around}.bottom-nav button{min-width:0;flex:1;padding:9px 5px;flex-direction:column;gap:2px}.bottom-nav button b{font-size:.68rem}.stat-grid{grid-template-columns:1fr 1fr}.language-choices{grid-template-columns:1fr}.view-header h1{font-size:2.5rem}.panel h2{font-size:1.7rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.brand{width:142px;height:76px;justify-content:center;overflow:hidden;font-size:0}
.brand img{width:132px;height:132px;object-fit:contain;display:block}
.welcome-logo{width:190px;height:190px;object-fit:contain;display:block;margin:-38px auto -24px}
.welcome-layer{background:rgba(73,58,51,.88)}
.bottom-nav{background:rgba(86,69,61,.95);box-shadow:0 18px 40px rgba(77,61,53,.23)}
body{background:radial-gradient(circle at 5% 0%,#eee7dc 0,transparent 30%),radial-gradient(circle at 95% 20%,#f1e8dc 0,transparent 26%),var(--cream)}
.ambient-a{background:#d8cbb9}.ambient-b{background:#eadbc7}
.hero-copy:after{border-color:rgba(196,176,150,.22)}
.hero-card:before{background:radial-gradient(circle at 35% 30%,#f0e6d7,#d4bea0 35%,#a8927f 70%,#655047)}
.hero-card p{color:#eadfd5}.mini-progress span{background:#d9c29d}
.lead,.section-head p,.module-card p,.panel p,.panel li,.journal-card p{color:#75675f}
.secondary,.module-index,.stat{background:#eee8de}.scale button.selected,.complete-btn{background:#d9c29d;border-color:#d9c29d}
.exercise textarea:focus,.journal-card textarea:focus,.journal-card input:focus{box-shadow:0 0 0 3px rgba(196,176,150,.35)}
.progress-ring{background:conic-gradient(var(--forest) var(--value),#e9e2d8 0)}
.language-choices button{background:#f2eee7}.topbar{background:rgba(251,250,243,.84);border-color:rgba(86,69,61,.08)}
@media(max-width:760px){.brand{width:118px;height:62px}.brand img{width:112px;height:112px}.welcome-logo{width:160px;height:160px;margin:-28px auto -20px}}
.module-intro{position:relative;overflow:hidden}.module-intro:after{content:"";position:absolute;width:170px;height:170px;border:36px solid rgba(184,155,115,.12);border-radius:50%;right:-82px;top:-80px}.content-count{display:inline-block;font-size:.72rem;letter-spacing:.14em;font-weight:900;color:var(--rose);margin-bottom:18px}.lesson-stack{display:grid;gap:14px;margin-bottom:22px}.lesson{background:rgba(255,254,249,.9);border:1px solid var(--line);border-radius:22px;box-shadow:0 12px 35px rgba(77,61,53,.07);overflow:hidden}.lesson summary{list-style:none;display:grid;grid-template-columns:44px 1fr 30px;gap:14px;align-items:center;padding:22px 25px;cursor:pointer}.lesson summary::-webkit-details-marker{display:none}.lesson summary span{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#eee8de;color:var(--forest);font-size:.78rem;font-weight:900}.lesson summary h2{font-size:1.45rem}.lesson summary b{font-size:1.45rem;font-weight:400;transition:transform .2s}.lesson[open] summary b{transform:rotate(45deg)}.lesson-body{padding:0 28px 27px 83px;border-top:1px solid transparent}.lesson-body p,.lesson-body li{line-height:1.72;color:#75675f}.lesson-body ul{padding-left:21px}.lesson-body li{margin-bottom:8px}.action-plan h2{font-size:2rem;margin:10px 0}.action-list{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:22px}.action-item{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid var(--line);border-radius:15px;background:#f7f3ec;cursor:pointer;line-height:1.45}.action-item input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--forest);flex:none}.action-item:has(input:checked){background:#e9e1d5;border-color:#b9a48a}.action-item:has(input:checked) span{text-decoration:line-through;text-decoration-color:#a38e79;color:#827267}
@media(max-width:760px){.lesson summary{grid-template-columns:40px 1fr 20px;padding:18px}.lesson summary h2{font-size:1.2rem}.lesson-body{padding:0 20px 22px}.action-list{grid-template-columns:1fr}}
