:root{--bg:#f7f1e9;--surface:rgba(255,253,249,.88);--card:#fffdfa;--ink:#30241d;--muted:#766a61;--line:#e8ddd2;--accent:#9b6044;--accent2:#d69b73;--soft:#f1dfcf;--sage:#80927b;--shadow:0 22px 60px rgba(82,54,38,.12)}[data-mode="dark"]{--bg:#1e1916;--surface:rgba(41,33,29,.9);--card:#2b231f;--ink:#f5eee7;--muted:#bfb0a5;--line:#493c35;--accent:#d89a75;--accent2:#edbd91;--soft:#49342a;--sage:#9fb19b;--shadow:0 22px 60px rgba(0,0,0,.28)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:var(--bg);color:var(--ink);font-family:Manrope,system-ui,sans-serif;transition:.25s;background-image:radial-gradient(circle at 10% 5%,rgba(214,155,115,.18),transparent 28rem),radial-gradient(circle at 90% 80%,rgba(128,146,123,.13),transparent 26rem)}button,input,textarea{font:inherit}.glow{position:fixed;border-radius:50%;filter:blur(80px);pointer-events:none;opacity:.2}.glow-one{width:260px;height:260px;background:var(--accent2);top:-80px;right:12%}.glow-two{width:300px;height:300px;background:var(--sage);bottom:-130px;left:5%}.topbar{height:72px;padding:0 max(22px,calc((100% - 1320px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 84%,transparent);backdrop-filter:blur(18px);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}.brand span{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--accent);color:white;font-family:Prata,serif}.brand b{font-size:14px}.top-actions{display:flex;gap:8px}.icon-button{width:40px;height:40px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink);cursor:pointer;font-size:20px}.layout{width:min(1320px,calc(100% - 36px));margin:30px auto 80px;display:grid;grid-template-columns:290px minmax(0,1fr);gap:30px;position:relative}.sidebar{position:sticky;top:102px;align-self:start;display:grid;gap:18px}.profile-card,.nav-card,.day-card,.panel,.stat-card,.intro-card{background:var(--surface);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);backdrop-filter:blur(16px)}.profile-card{padding:25px;text-align:center}.eyebrow{margin:0 0 9px;color:var(--accent);font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.profile-card h1{font:400 28px/1.18 Prata,serif;margin:0 0 8px}.muted{color:var(--muted);line-height:1.6}.progress-ring{--progress:0deg;width:100px;height:100px;margin:22px auto 10px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--accent) var(--progress),var(--line) 0);position:relative}.progress-ring:after{content:"";position:absolute;inset:8px;border-radius:50%;background:var(--card)}.progress-ring strong{position:relative;z-index:1}.progress-caption{font-size:12px;color:var(--muted);margin:0}.nav-card{padding:10px}.nav-item{width:100%;border:0;background:transparent;color:var(--muted);padding:13px 14px;border-radius:15px;text-align:left;cursor:pointer;display:flex;gap:11px;align-items:center}.nav-item:hover,.nav-item.active{background:var(--soft);color:var(--ink)}blockquote{margin:0;padding:4px 18px;color:var(--muted);font:400 17px/1.5 Prata,serif;border-left:2px solid var(--accent)}blockquote small{display:block;font:500 10px/1.5 Manrope,sans-serif;margin-top:8px;text-transform:uppercase;letter-spacing:.08em}.content{min-width:0}.view-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:8px 0 24px}.view-head h2,.intro-card h2,dialog h2{font:400 clamp(30px,4vw,48px)/1.08 Prata,serif;margin:0}.view-head p{margin:8px 0 0}.day-switch{display:flex;align-items:center;gap:8px}.day-switch button{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:12px;width:42px;height:42px;cursor:pointer}.day-number{font-weight:700;white-space:nowrap}.day-card{overflow:hidden}.day-hero{padding:32px;background:linear-gradient(135deg,var(--soft),color-mix(in srgb,var(--card) 74%,var(--sage)));position:relative}.day-hero:after{content:"✦";position:absolute;right:34px;top:19px;font-size:74px;color:var(--accent);opacity:.12}.stage-tag{display:inline-flex;padding:7px 11px;border-radius:999px;background:var(--card);color:var(--accent);font-size:11px;font-weight:700}.day-hero h3{font:400 clamp(28px,4vw,44px)/1.12 Prata,serif;margin:17px 0 10px;max-width:720px}.day-hero p{max-width:760px;line-height:1.7;margin:0;color:var(--muted)}.day-body{padding:30px}.intention{border-left:3px solid var(--accent);padding:3px 0 3px 18px;margin:0 0 28px;font-size:17px;line-height:1.7}.period{display:grid;grid-template-columns:46px 1fr;gap:14px;padding:22px 0;border-top:1px solid var(--line)}.period-icon{width:42px;height:42px;display:grid;place-items:center;background:var(--soft);border-radius:13px}.period h4{margin:0 0 6px;font-size:15px}.period p{margin:0 0 12px;color:var(--muted);line-height:1.65}.example{padding:14px 16px;border-radius:14px;background:color-mix(in srgb,var(--soft) 70%,transparent);font-size:13px;color:var(--muted)}.example b{color:var(--ink)}label.field{display:block;margin:14px 0 0;font-size:13px;font-weight:700}.field textarea,.field input,dialog input,dialog textarea{width:100%;margin-top:8px;border:1px solid var(--line);border-radius:14px;padding:14px;background:var(--card);color:var(--ink);resize:vertical;outline:none}.field textarea:focus,.field input:focus,dialog input:focus,dialog textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.checkline{display:flex;gap:10px;align-items:flex-start;margin:12px 0;color:var(--muted);font-size:14px}.checkline input{accent-color:var(--accent);margin-top:3px}.timer-row{display:flex;align-items:center;gap:12px;margin-top:12px}.timer{font-size:25px;font-weight:700;font-variant-numeric:tabular-nums}.small-button,.primary,.complete-button{border:0;border-radius:13px;padding:11px 15px;cursor:pointer}.small-button{background:var(--soft);color:var(--ink)}.complete-button,.primary{background:var(--accent);color:#fff;font-weight:700}.complete-button{width:100%;padding:16px;margin-top:22px}.complete-button.done{background:var(--sage)}.program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.program-day{padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--ink);text-align:left;cursor:pointer;min-height:145px}.program-day:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.program-day.done{border-color:var(--sage);background:color-mix(in srgb,var(--sage) 13%,var(--card))}.program-day small{color:var(--accent);font-weight:700}.program-day h3{font:400 18px/1.3 Prata,serif;margin:12px 0 0}.stage-divider{grid-column:1/-1;font:400 25px Prata,serif;margin:22px 0 0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}.stat-card{padding:20px}.stat-card strong{font:400 30px Prata,serif;display:block}.stat-card span{font-size:12px;color:var(--muted)}.panel,.intro-card{padding:28px;margin-bottom:18px}.panel h3{font:400 24px Prata,serif;margin:0 0 14px}.reflection-list{display:grid;gap:10px}.reflection-item{padding:14px;border-radius:13px;background:var(--soft);font-size:13px}.steps{counter-reset:step;display:grid;gap:16px}.steps div{position:relative;padding-left:50px}.steps div:before{counter-increment:step;content:counter(step);position:absolute;left:0;top:0;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:#fff;font-weight:700}.steps h3{margin:0 0 5px;font-size:15px}.steps p{margin:0;color:var(--muted);line-height:1.6}.notice{padding:16px;border-radius:14px;background:var(--soft);color:var(--muted);font-size:13px;line-height:1.65}dialog{width:min(560px,calc(100% - 28px));border:1px solid var(--line);border-radius:25px;padding:0;background:var(--card);color:var(--ink);box-shadow:var(--shadow)}dialog::backdrop{background:rgba(30,22,18,.56);backdrop-filter:blur(6px)}dialog form{padding:30px}dialog label{display:block;margin-top:18px;font-size:13px;font-weight:700}dialog .primary{width:100%;margin-top:20px;padding:14px}.toast{position:fixed;left:50%;bottom:25px;transform:translate(-50%,20px);opacity:0;background:var(--ink);color:var(--card);padding:11px 16px;border-radius:999px;z-index:30;transition:.25s;font-size:13px}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:950px){.layout{grid-template-columns:1fr}.sidebar{position:static;grid-template-columns:1fr 1fr}.sidebar blockquote{display:none}.nav-card{display:flex;overflow-x:auto;grid-column:1/-1}.nav-item{min-width:105px;justify-content:center;text-align:center;font-size:12px}.nav-item span{display:none}.profile-card{text-align:left;position:relative}.progress-ring{position:absolute;right:22px;top:18px;width:76px;height:76px}.progress-caption{padding-right:85px}.program-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.layout{width:min(100% - 22px,1320px);margin-top:16px}.brand b{display:none}.sidebar{grid-template-columns:1fr}.nav-card{display:flex;position:fixed;left:8px;right:8px;bottom:8px;z-index:20;box-shadow:0 12px 35px rgba(0,0,0,.22)}.nav-item{padding:12px 8px;min-width:90px}.profile-card{padding:20px}.profile-card h1{font-size:22px;max-width:70%}.view-head{align-items:flex-start;flex-direction:column}.view-head h2{font-size:32px}.day-switch{align-self:stretch;justify-content:space-between}.day-hero,.day-body{padding:22px}.period{grid-template-columns:38px 1fr}.period-icon{width:36px;height:36px}.program-grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.topbar{height:62px}.content{padding-bottom:68px}}
.field-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.voice-button{border:1px solid var(--line);border-radius:999px;padding:7px 11px;background:var(--soft);color:var(--ink);font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}.voice-button.listening{background:#b23b3b;color:#fff;animation:pulse 1s infinite}@keyframes pulse{50%{opacity:.62}}
.affirmation-hero{position:relative;overflow:hidden;padding:32px;margin-bottom:18px;border-radius:24px;color:#fff;background:linear-gradient(135deg,#6a22ff,#ef2fb8 52%,#ff9d19);box-shadow:0 22px 60px rgba(112,36,255,.28)}.affirmation-hero:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-60px;top:-90px;background:rgba(255,255,255,.2)}.affirmation-hero h3{font:400 30px/1.2 Prata,serif;margin:8px 0}.affirmation-hero p{max-width:700px;line-height:1.65;margin:0}.affirmation-symbol{font-size:38px;color:#fff59a}.affirmation-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.tiny{font-size:12px;margin-bottom:0}#affirmationText{line-height:1.85}
.paper-practice{display:grid;grid-template-columns:1fr auto;gap:18px;padding:22px;margin:0 0 24px;border:2px dashed color-mix(in srgb,var(--accent) 55%,var(--line));border-radius:18px;background:color-mix(in srgb,var(--soft) 70%,var(--card))}.paper-practice h4{margin:10px 0 8px}.paper-practice ol{margin:0;padding-left:22px;line-height:1.75}.paper-practice p{margin:8px 0 0;color:var(--muted);font-size:12px}.paper-badge{display:inline-block;padding:5px 10px;border-radius:999px;background:var(--accent);color:#fff;font-size:11px;font-weight:700}.gratitude14{margin:10px 0 24px;border:1px solid var(--line);border-radius:18px;background:var(--card);overflow:hidden}.gratitude14 summary{display:flex;justify-content:space-between;gap:12px;padding:18px;cursor:pointer;color:var(--ink)}.gratitude14 summary span{color:var(--muted);font-size:12px}.gratitude-inner{padding:0 20px 22px}.gratitude-inner>p{color:var(--muted);line-height:1.6}@media(max-width:620px){.paper-practice{grid-template-columns:1fr}.gratitude14 summary{align-items:flex-start;flex-direction:column}}
