:root{--f7-theme-color:#2dbd4f;--ink:#222326;--muted:#77787d;--surface:#fff;--canvas:#f6f6f6;--green:#2dbd4f;--green-soft:#e9f8ec;--food:#ff8a45;--food-soft:#fff1e8;--blue:#5b7cfa;--blue-soft:#eef1ff;--line:rgba(60,60,67,.1)}
*{box-sizing:border-box}
[hidden]{display:none!important}
:root{--f7-theme-color:#168239;--green:#168239;--muted:#606168}
.summary-card{grid-template-columns:1fr!important}
.routine-row{grid-template-columns:32px 1fr 32px!important}
.return-hint{font-size:14px;line-height:1.5;color:#555}
.completed .routine-copy{opacity:1!important}
button:focus-visible,a:focus-visible{outline:3px solid #175bb9;outline-offset:3px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
body,.page{background:var(--canvas);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue",sans-serif}
.page-content{padding:calc(env(safe-area-inset-top) + 20px) 18px 0;max-width:560px;margin:auto}
.day-header{padding:0 4px 17px}
.eyebrow{display:flex;justify-content:space-between;color:var(--muted);font-size:13px;font-weight:650}
.eyebrow>span:last-child{font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.demo-dot,.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#ff9f0a;margin-right:4px}
.live-dot{background:var(--green)}
.day-header h1{font-size:40px;line-height:1;letter-spacing:-.045em;margin:12px 0 5px;font-weight:750}
.day-header>p{margin:0;color:var(--muted);font-size:15px;text-transform:capitalize}
.date-rail{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-top:22px}
.date-pill{border:0;background:transparent;border-radius:18px;min-height:64px;color:var(--muted);display:flex;flex-direction:column;align-items:center;justify-content:center}
.date-pill span{font-size:11px;text-transform:uppercase;font-weight:750}
.date-pill strong{font-size:19px;margin-top:3px}
.date-pill.active{background:var(--green);color:#fff;box-shadow:0 8px 22px #2dbd4f3b}
.summary-card{display:grid;grid-template-columns:1fr 76px;gap:16px;align-items:center;background:linear-gradient(135deg,#26272a,#37393d);color:#fff;border-radius:28px;padding:23px;margin:4px 0 32px;box-shadow:0 11px 28px #2222221c}
.summary-label{font-size:11px;color:#bfc0c4;text-transform:uppercase;letter-spacing:.08em;font-weight:750}
.summary-card strong{display:block;font-size:22px;margin:6px 0 4px;letter-spacing:-.025em}
.summary-card p{color:#d0d0d3;font-size:13px;line-height:1.4;margin:0}
.progress-ring{--progress:0deg;width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#36d45c var(--progress),#ffffff20 0);position:relative}
.progress-ring:after{content:"";position:absolute;inset:7px;border-radius:50%;background:#303135}
.progress-ring span{z-index:1;font-size:14px;font-weight:750}
.content-section{margin-bottom:32px}
.section-heading{display:flex;align-items:end;justify-content:space-between;padding:0 4px 11px}
.section-kicker{display:block;text-transform:uppercase;letter-spacing:.09em;font-size:11px;font-weight:800;margin-bottom:3px}
.section-kicker.movement{color:var(--green)}
.section-kicker.food{color:var(--food)}
.section-kicker.neutral{color:var(--muted)}
.section-heading h2{font-size:26px;line-height:1.1;margin:0;letter-spacing:-.035em}
.section-stat{color:var(--muted);font-size:13px;font-weight:650}
.section-shell{background:var(--surface);border-radius:27px;overflow:hidden;box-shadow:0 1px 0 #00000008}
.section-intro{display:flex;gap:13px;align-items:center;padding:19px;border-bottom:1px solid var(--line)}
.section-intro strong{font-size:16px}
.section-intro p{margin:3px 0 0;color:var(--muted);font-size:13px}
.section-symbol{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;font-size:26px}
.movement-symbol{background:var(--green-soft);color:var(--green)}
.routine-row{display:grid;grid-template-columns:38px 26px 1fr 28px;gap:9px;align-items:center;padding:15px 14px;border-bottom:1px solid var(--line);min-height:88px}
.routine-row:last-child{border-bottom:0}
.done-control{width:35px;height:35px;border-radius:50%;border:2px solid #d8d8dc;background:#fff;color:#fff;font-size:18px;font-weight:800;padding:0}
.completed .done-control{background:var(--green);border-color:var(--green)}
.state-mark{width:10px;height:10px;margin-left:12px;border-radius:50%;border:0;background:#d8d8dc;color:#fff;font-size:15px;font-weight:800;display:grid;place-items:center}
.completed .state-mark{width:28px;height:28px;margin-left:3px;background:var(--green)}
.routine-number{font-size:11px;font-weight:800;color:#b2b2b6}
.routine-copy{text-align:left;border:0;background:none;padding:4px 0;color:var(--ink)}
.routine-copy strong{font-size:16px;letter-spacing:-.01em}
.routine-copy p{margin:3px 0;color:#55565a;font-size:13px;line-height:1.3}
.routine-copy span{font-size:12px;color:var(--muted);font-weight:650}
.completed .routine-copy{opacity:.5}
.chevron{border:0;background:transparent;color:#b4b4b7;font-size:28px;padding:8px 5px}
.nutrition-overview{display:flex;justify-content:space-between;align-items:end;padding:20px 19px;background:linear-gradient(135deg,#fff8f3,#fff)}
.nutrition-overview span,.nutrition-overview small{display:block;color:var(--muted);font-size:12px}
.nutrition-overview strong{display:block;font-size:22px;margin:3px 0}
.balance-bars{display:flex;gap:3px;height:36px;align-items:end}
.balance-bars i{display:block;width:7px;background:var(--food);border-radius:6px}
.balance-bars i:nth-child(1){height:55%}
.balance-bars i:nth-child(2){height:90%}
.balance-bars i:nth-child(3){height:72%}
.balance-bars i:nth-child(4){height:100%}
.meal-row{display:grid;grid-template-columns:74px 1fr 38px;align-items:center;min-height:84px;padding:10px 14px;border-top:1px solid var(--line)}
.meal-time{align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.meal-time i{width:9px;height:9px;border-radius:50%;background:var(--food);margin-bottom:5px}
.meal-time span{font-size:11px;color:var(--muted);font-weight:750}
.meal-main{text-align:left;border:0;background:none;padding:6px;min-height:56px}
.meal-main strong{display:block;font-size:15px;color:var(--ink)}
.meal-main small{display:block;color:var(--muted);margin-top:4px}
.completed .meal-main{opacity:.5}
.fact-card,.quiet-card{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;background:#fff;border-radius:19px;padding:14px;margin-bottom:8px}
.fact-icon{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;font-size:20px}
.food-bg{background:var(--food-soft);color:var(--food)}
.move-bg{background:var(--green-soft);color:var(--green)}
.fact-card strong,.quiet-card strong{font-size:14px}
.fact-card p,.quiet-card p{margin:2px 0 0;color:var(--muted);font-size:12px}
.undo{border:0;background:#f1f1f3;color:var(--muted);border-radius:10px;padding:8px;font-size:12px}
.quiet-card{display:block;padding:19px}
.section-empty{padding:24px;color:var(--muted);font-size:14px}
.bottom-space{height:112px}
.quick-bar{position:absolute;z-index:50;left:0;right:0;bottom:0;padding:16px max(18px,calc((100% - 560px)/2)) calc(13px + env(safe-area-inset-bottom));background:linear-gradient(transparent,rgba(246,246,246,.95) 30%,var(--canvas) 55%);pointer-events:none}
.quick-bar button{pointer-events:auto;height:58px;border-radius:19px;font-size:16px;font-weight:750;box-shadow:0 8px 24px #2dbd4f38}
.quick-bar span{font-size:22px;vertical-align:-1px}
.sheet-modal{height:auto;max-height:86vh;border-radius:28px 28px 0 0;overflow:hidden}
.sheet-modal .page-content{padding:19px 19px calc(30px + env(safe-area-inset-bottom))}
.sheet-content h2{font-size:29px;letter-spacing:-.035em;margin:6px 0}
.detail-description,.sheet-lead{font-size:16px;color:#55565b;line-height:1.45}
.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:22px 0}
.detail-grid>div{background:#f2f2f4;border-radius:16px;padding:13px}
.detail-grid span{display:block;color:var(--muted);font-size:11px}
.detail-grid strong{display:block;margin-top:5px;font-size:15px}
.tip{background:#f2f2f4;border-radius:18px;padding:16px;margin:18px 0}
.tip p{margin:5px 0 0;color:var(--muted)}
.external,.add-sheet #saveFact{border-radius:16px}
.type-picker{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0}
.type-option{height:49px;border:0;border-radius:15px;background:#f2f2f4;font-weight:750}
.type-option.selected{background:var(--green);color:#fff}
.add-sheet .list{margin:12px 0 18px}
.auth-error{position:fixed;z-index:10001;inset:0;background:var(--canvas);display:grid;place-content:center;text-align:center;padding:30px}
.auth-error p{color:var(--muted)}
.auth-error.hidden{display:none!important}
#toast{position:fixed;z-index:10000;left:50%;bottom:calc(84px + env(safe-area-inset-bottom));transform:translateX(-50%) translateY(10px);background:#222326ee;color:#fff;border-radius:999px;padding:11px 17px;font-size:13px;font-weight:650;opacity:0;transition:.2s;pointer-events:none;white-space:nowrap}
#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
@media(min-width:700px){body{background:#e4e4e7}
.view{max-width:560px;margin:auto;box-shadow:0 0 70px #0002}
}
