@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600&family=Inter:wght@400;500;600&display=swap";:root{--background: #FAF9F7;--card: #FFFFFF;--text: #222222;--muted: #7A7A7A;--gold: #CC9933;--completed: #A3B18A;--border: #ECE8E1}*{box-sizing:border-box}html{background:var(--background)}body{margin:0;font-family:Inter,system-ui,sans-serif;color:var(--text);background:var(--background)}button,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}h1,h2,h3{font-family:Cormorant Garamond,Georgia,serif;font-weight:500;margin:0;line-height:1.05}h1{font-size:3.4rem}h2{font-size:2.8rem}h3{font-size:1.75rem}p{margin:0}.app-shell{min-height:100vh;padding-bottom:2rem}.main-container{width:100%;max-width:430px;margin:0 auto;padding:1.5rem 1.25rem}.app-header{position:sticky;top:0;z-index:10;border-bottom:1px solid rgba(236,232,225,.75);background:#faf9f7f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1rem 1.25rem}.header-inner{max-width:430px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.header-brand{text-align:center}.header-brand h1{font-size:1.35rem}.header-brand p{margin-top:.25rem;font-size:.67rem;text-transform:uppercase;letter-spacing:.24em;color:var(--muted)}.header-spacer{width:34px;height:34px}.icon-button{width:34px;height:34px;border:0;border-radius:999px;background:#fff;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 4px 18px #0000000d}.splash-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem}.splash-content{text-align:center}.splash-content h1{margin-top:1.5rem}.splash-content p,.centered-block p{margin-top:.85rem;font-size:.74rem;text-transform:uppercase;letter-spacing:.3em;color:var(--muted)}.brand-mark{margin:0 auto;border-radius:999px;background:#fff;border:1px solid rgba(204,153,51,.35);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 18px #0000000d;overflow:hidden}.brand-mark img{max-width:82%;max-height:82%;object-fit:contain}.brand-mark-sm{width:48px;height:48px}.brand-mark-md{width:70px;height:70px}.brand-mark-lg{width:88px;height:88px}.centered-block{text-align:center;margin:2.5rem 0}.centered-block h1{margin-top:1.25rem}.program-selection h2{margin-bottom:1rem}.stack{display:grid;gap:1rem}.card{border:1px solid rgba(236,232,225,.85);background:#fff;border-radius:1.5rem;padding:1.25rem;box-shadow:0 8px 25px #00000009}.muted-card{opacity:.72}.program-card,.exercise-card{display:flex;align-items:flex-start;gap:1rem}.program-emoji,.hero-emoji{font-size:2rem;line-height:1}.program-content{flex:1}.row-between{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.row-between.top{align-items:flex-start}.program-content h3{font-size:1.65rem}.program-content p,.body-muted{color:var(--muted);font-size:.92rem;line-height:1.75}.pill{display:inline-flex;border-radius:999px;background:#f4f1ec;color:var(--muted);padding:.35rem .65rem;font-size:.68rem;white-space:nowrap}.button{border:0;width:100%;min-height:46px;border-radius:1rem;padding:.8rem 1.1rem;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;font-weight:600;font-size:.9rem;transition:transform .12s ease,opacity .12s ease}.button:active{transform:scale(.99)}.button-primary{color:#fff;box-shadow:0 6px 18px #cc993340}.button-secondary{background:#fff;color:var(--text);border:1px solid var(--border)}.button-ghost{background:transparent;color:var(--muted)}.button-danger{background:#fff;border:1px solid #F3D3D3;color:#b42318}.mt-sm{margin-top:.5rem}.mt{margin-top:1rem}.mt-lg{margin-top:1.5rem}.lead{margin-top:1.25rem;color:var(--muted);font-size:1rem;line-height:1.85}.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.2em;font-size:.78rem}.eyebrow.small{font-size:.68rem;line-height:1.5}.small{font-size:.82rem!important}.tiny{font-size:.72rem!important}.question{margin-bottom:.85rem;font-size:.92rem;line-height:1.55}.body-text{font-size:.94rem;line-height:1.75}.exercise-title-inline{font-size:1.05rem}.summary-grid{margin-top:1rem;display:grid;grid-template-columns:repeat(4,1fr);gap:.55rem}.summary-card{text-align:center;padding:.95rem .5rem}.summary-card p{font-family:Cormorant Garamond,Georgia,serif;font-size:2rem;line-height:1}.summary-card span{display:block;margin-top:.35rem;color:var(--muted);font-size:.65rem}.status-completed{color:var(--completed)}.status-progress{color:var(--gold)}.status-pending{color:#cfcfcf}.status-row{margin-top:1rem;color:var(--muted);display:flex;align-items:center;gap:.5rem;font-size:.9rem}.rating-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:.25rem}.rating-button{aspect-ratio:1/1;border-radius:999px;border:1px solid #E5E5E5;background:#fff;color:var(--muted);font-size:.72rem;padding:0}.rating-button-active{border-color:var(--gold);background:var(--gold);color:#fff}.textarea{width:100%;min-height:112px;border:1px solid #E6E0D7;border-radius:1rem;background:var(--background);padding:1rem;color:var(--text);outline:none;resize:vertical;line-height:1.6}.textarea:focus{border-color:var(--gold)}.detail{border:1px solid var(--border);background:var(--background);border-radius:1rem;padding:1rem}.detail summary{cursor:pointer;color:var(--gold);text-transform:uppercase;letter-spacing:.18em;font-size:.74rem}.detail p{margin-top:.6rem;color:var(--muted);font-size:.9rem;line-height:1.75}.two-buttons{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.practice-select{display:flex;align-items:center;gap:.75rem;width:100%;text-align:left;border:1px solid var(--border);border-radius:1rem;background:var(--background);padding:.9rem;color:var(--text)}.practice-select:disabled{opacity:.4}.final-quote{margin-top:1.5rem;font-family:Cormorant Garamond,Georgia,serif;font-size:1.55rem;line-height:1.25}.error-banner{position:fixed;left:1rem;right:1rem;top:1rem;z-index:30;background:#fff;border:1px solid #F3D3D3;color:#b42318;border-radius:1rem;padding:.85rem 1rem;box-shadow:0 8px 25px #00000014;font-size:.9rem}@media (max-width: 360px){h1{font-size:2.85rem}h2{font-size:2.35rem}.summary-grid{grid-template-columns:repeat(2,1fr)}.rating-grid{gap:.18rem}}
