:root{--bg:#e8f3f9;--paper:#f9fcfe;--ink:#314b5c;--muted:#8198a7;--accent:#6f9db8;--line:#d7e5ed}
*{box-sizing:border-box}html,body{margin:0;width:100%;min-height:100%;background:#e8f3f9;color:var(--ink)}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
button{font:inherit}.app{width:100%;max-width:430px;min-height:100dvh;margin:auto;padding:calc(12px + env(safe-area-inset-top)) 22px calc(82px + env(safe-area-inset-bottom));background:radial-gradient(circle at 75% 0,#fff 0,rgba(255,255,255,.5) 20%,transparent 43%),linear-gradient(#eff8fc,#dfedf6)}
.page{display:none}.page.active{display:block}
.top{height:52px;display:grid;grid-template-columns:42px 1fr 42px;align-items:center}.round{width:38px;height:38px;border:0;border-radius:50%;background:rgba(255,255,255,.6);color:#7697aa;display:grid;place-items:center}.round:last-child{justify-self:end}.round svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.dateblock{text-align:center;line-height:1.2}.dateblock strong{display:block;font-size:12px;font-weight:600;color:#708b9c}.dateblock span{display:block;margin-top:3px;font-size:8px;font-weight:700;letter-spacing:.14em;color:#91a4b0;text-transform:uppercase}
.week-strip{height:66px;display:grid;grid-template-columns:repeat(7,1fr);gap:3px;margin:5px 0 10px}.week-day{border:0;background:transparent;border-radius:15px;padding:7px 1px;color:#7890a0;text-align:center}.week-day b{display:block;font-size:8px;letter-spacing:.05em}.week-day span{display:block;font-size:8px;line-height:1.15;margin-top:7px}.week-day i{display:block;width:4px;height:4px;border-radius:50%;background:#91a9b8;margin:6px auto 0}.week-day.selected{background:#73a3bf;color:white;box-shadow:0 8px 20px rgba(85,133,161,.18)}.week-day.selected i{background:white}
.greeting h1,.page-title{font:400 35px/1 Georgia,serif;letter-spacing:-.025em;margin:0}.greeting p,.page-sub{font-size:11px;color:var(--muted);margin:6px 0 13px}.practice-area{display:flex;flex-direction:column}
.practice-card{background:rgba(250,253,254,.9);border:1px solid white;border-radius:20px;overflow:hidden;box-shadow:0 13px 32px rgba(65,104,128,.08)}
.hero{position:relative;width:100%;aspect-ratio:16/9;background:linear-gradient(155deg,#cfe0ea,#94b4c8);overflow:hidden}.hero img{width:100%;height:100%;object-fit:cover}.hero-placeholder{position:absolute;inset:0;background:linear-gradient(170deg,rgba(255,255,255,.15),transparent);display:grid;place-items:center;font:italic 13px Georgia,serif;color:#69899c}.play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:54px;height:54px;border:0;border-radius:50%;background:rgba(255,255,255,.93);color:#6d9ab4;font-size:18px;box-shadow:0 7px 20px rgba(56,91,112,.14)}.duration{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);font-size:9px;color:white}
.card-body{flex:0 0 auto;padding:14px 17px 11px}.eyebrow{font-size:8px;font-weight:750;letter-spacing:.16em;color:#8198a7;margin:0 0 6px}.practice-title{font:400 24px Georgia,serif;margin:0 0 4px}.meta{font-size:9px;color:#8098a8;margin-bottom:9px}.action{width:100%;display:flex;align-items:center;justify-content:space-between;border:0;border-top:1px solid var(--line);background:transparent;padding:10px 0;color:#456579;text-align:left;font-size:10px;font-weight:600}.action.alt{color:#668da4}.action .circle{width:23px;height:23px;border:1px solid #93b5c9;border-radius:50%;display:grid;place-items:center;margin-right:8px}.action .left{display:flex;align-items:center}.chev{font-size:19px;font-weight:300;color:#7799ad}.intention{flex:0 0 auto;margin-top:10px;background:rgba(250,253,254,.7);border-radius:17px;padding:11px 15px}.intention blockquote{font:italic 13px Georgia,serif;margin:4px 0 0;color:#58798d}
.rest-card{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(250,253,254,.72);border-radius:20px;text-align:center}.rest-card h2{font:400 25px Georgia,serif;margin:8px}.rest-card p{font-size:10px;line-height:1.6;color:var(--muted)}
.month{font:400 23px Georgia,serif;margin:22px 0 12px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.dow{text-align:center;font-size:8px;color:#91a1aa}.day{height:38px;display:grid;place-items:center;font-size:10px;border-radius:50%}.day.today{outline:1px solid #8aa8b9}.dot{width:3px;height:3px;border-radius:50%;background:var(--accent)}
.track{display:grid;grid-template-columns:62px 1fr 30px;gap:11px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}.thumb{width:62px;height:62px;border-radius:11px;background:#b8cfdd;overflow:hidden}.thumb img{width:100%;height:100%;object-fit:cover}.track h3{font:400 16px Georgia,serif;margin:0 0 3px}.track p{font-size:9px;color:var(--muted);margin:0}.small-play{width:29px;height:29px;border:0;border-radius:50%;background:white;color:var(--accent)}.next{font:700 7px sans-serif;color:var(--accent);letter-spacing:.1em}.audio-panel{text-align:center;margin-top:10px}.audio-panel audio{width:100%;height:34px}.simple-button{border:0;background:none;color:#648ba2;font-size:9px}.hidden{display:none}
.bottom-nav{position:fixed;left:50%;bottom:0;transform:translateX(-50%);width:min(430px,100%);height:calc(56px + env(safe-area-inset-bottom));padding:4px 24px env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(3,1fr);background:rgba(239,248,252,.94);backdrop-filter:blur(18px);border-top:1px solid rgba(100,135,155,.08);z-index:10}.bottom-nav button{border:0;background:none;color:#849aa7;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:8px}.bottom-nav svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.bottom-nav button.active{color:#6191ad}.toast{position:fixed;bottom:calc(76px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%,10px);opacity:0;background:#4f6e80;color:#fff;padding:7px 12px;border-radius:20px;font-size:9px;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}
.greeting h1{font-size:31px}.greeting p{margin-bottom:8px}.practice-area{height:calc(100% - 128px)}.hero{min-height:145px}.card-body{padding:10px 15px 8px}.action{padding:7px 0}.intention{margin-top:6px;padding:8px 13px}}

.action{border-radius:12px;padding-left:2px;padding-right:2px}
.action .iconbox{width:28px;height:28px;border-radius:50%;background:#edf5f9;color:#6f96ae;display:grid;place-items:center;margin-right:9px}
.action .iconbox svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.action.done .iconbox{background:#75a987;color:white}
.action small{font-size:8px;color:#8aa0ae}

/* v8 — more breathing, same compact feel */
.top{margin-bottom:4px}
.week-strip{margin:10px 0 18px}
.greeting{margin-bottom:6px}
.greeting p{margin:8px 0 18px}
.practice-card{margin-top:2px}
.intention{margin-top:16px;padding:13px 15px}
@media(max-height:760px){
  .week-strip{margin:7px 0 12px}
  .greeting p{margin:6px 0 12px}
  .intention{margin-top:10px}
}
