nav{grid-template-columns:repeat(5,1fr);padding-left:max(6px,(100vw - 650px)/2);padding-right:max(6px,(100vw - 650px)/2)}
.home-plan,.recovery-card,.trend-card,.progress-card,.timeline-card{background:var(--card);border:1px solid var(--line);border-radius:19px;padding:15px}.home-plan b,.recovery-card b{font-size:14px}.home-plan p,.recovery-card p{margin:6px 0 0;color:var(--muted);font-size:12px;line-height:1.55}.recovery-head{display:flex;align-items:center;justify-content:space-between}.completeness{font-size:11px;color:var(--green);font-weight:750}.completeness-track{height:7px;background:#e8e9e3;border-radius:8px;overflow:hidden;margin:11px 0}.completeness-track i{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--lime));border-radius:8px}.missing-pills{display:flex;gap:6px;flex-wrap:wrap}.missing-pills span,.confidence-badge{font-size:10px;padding:6px 8px;border-radius:9px;background:#eef0e9;color:var(--muted)}
.trend-card{overflow:hidden}.trend-head{display:flex;justify-content:space-between;align-items:end}.trend-head strong{font-size:24px}.trend-head span{font-size:11px;color:var(--muted)}.trend-bars{height:100px;display:grid;grid-template-columns:repeat(7,1fr);align-items:end;gap:7px;margin-top:16px}.trend-day{text-align:center}.trend-day i{display:block;min-height:3px;background:var(--green);border-radius:7px 7px 3px 3px}.trend-day.today i{background:var(--lime)}.trend-day span{display:block;font-size:9px;color:var(--muted);margin-top:6px}.trend-note{font-size:11px;color:var(--muted);margin:12px 0 0}
.progress-list{display:grid;gap:8px}.progress-card{display:grid;grid-template-columns:1fr auto;gap:5px 12px}.progress-card strong{font-size:14px}.progress-card b{color:var(--green);font-size:14px}.progress-card span{font-size:11px;color:var(--muted)}.progress-card .spark{grid-column:1/3;height:4px;background:#e6e8e1;border-radius:5px;overflow:hidden;margin-top:6px}.progress-card .spark i{display:block;height:100%;background:var(--green)}
.timeline-tools{display:flex;gap:7px;margin:-8px 0 15px}.timeline-tools button{border:1px solid var(--line);background:var(--card);padding:8px 13px;border-radius:13px;font-size:11px}.timeline-tools button.active{background:var(--ink);color:white;border-color:var(--ink)}#dailyTimeline{display:grid;gap:10px}.timeline-card{width:100%;text-align:left;display:grid;grid-template-columns:54px 1fr auto;gap:12px;align-items:center}.timeline-date{border-right:1px solid var(--line);padding-right:10px}.timeline-date strong,.timeline-date span{display:block}.timeline-date strong{font-size:20px}.timeline-date span{font-size:9px;color:var(--muted)}.timeline-main b,.timeline-main span{display:block}.timeline-main b{font-size:13px}.timeline-main span{font-size:11px;color:var(--muted);margin-top:5px}.timeline-card>i{font-style:normal;color:var(--green);font-size:18px}
.record-actions{display:flex;gap:7px;margin-top:10px}.record-actions button{border:1px solid var(--line);background:#f2f4ee;border-radius:10px;padding:7px 10px;color:var(--green);font-size:10px}.detail-quality{display:flex;gap:6px;flex-wrap:wrap;margin:-7px 0 15px}.confidence-badge.low{color:#a35c31;background:#fff0e5}.confidence-badge.medium{color:#75661d;background:#f9f3d9}.confidence-badge.high{color:#286d4c;background:#e3f2e9}
.edit-sheet{max-height:88vh;overflow:auto}.edit-sheet .sheet-head button:last-child{text-align:right;font-weight:700}.edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.edit-grid label{font-size:11px;color:var(--muted)}.edit-grid label.wide{grid-column:1/3}.edit-grid input,.edit-grid textarea{display:block;width:100%;margin-top:6px;border:1px solid var(--line);border-radius:12px;background:white;padding:11px;font-size:14px}.merge-action{grid-column:1/3;border:1px solid var(--line);background:#eef2eb;border-radius:12px;padding:11px;color:var(--green)}
.recovery-action{border:0;background:var(--ink);color:white;border-radius:11px;padding:9px 12px;font-size:11px;margin-top:12px}.recovery-sheet>p{font-size:12px;color:var(--muted);margin:18px 2px 10px}.recovery-sheet textarea{width:100%;border:1px solid var(--line);border-radius:15px;background:white;padding:13px;font-size:16px;resize:none}.recovery-sheet .sheet-head button:last-child{text-align:right;font-weight:700}.recovery-result{background:#e5ede3;border-radius:15px;padding:13px;margin-top:12px;font-size:12px;line-height:1.55}
#voiceWorkout.listening{background:#cfeaa4;color:#173021}.sync-state{position:fixed;right:14px;bottom:calc(74px + env(safe-area-inset-bottom));z-index:8;background:#17201ded;color:white;border-radius:12px;padding:8px 11px;font-size:10px;opacity:0;transform:translateY(8px);transition:.2s;pointer-events:none}.sync-state.show{opacity:1;transform:none}
@media(max-width:370px){.status-hero{grid-template-columns:92px 1fr}.status-orb{width:90px;height:90px}.home-grid{gap:5px}.timeline-card{grid-template-columns:48px 1fr auto}}
.balance-legend{display:flex;justify-content:space-between;font-size:11px;margin-top:15px;color:#ad5635}.balance-legend span+span{color:#807264}.balance-chart{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;position:relative;padding-top:12px}.balance-day{text-align:center;min-width:0;position:relative;z-index:1}.balance-day>b{display:block;font-size:11px;font-variant-numeric:tabular-nums;height:19px;font-weight:650;color:#ad5635}.balance-day.deficit>b{color:#807264}.balance-day.unknown>b{color:var(--muted)}.balance-track{height:104px;position:relative}.balance-track i{display:block;position:absolute;left:15%;width:70%;bottom:50%;background:#bd6442;border-radius:5px 5px 0 0}.deficit .balance-track i{top:50%;bottom:auto;background:#ad9b85;border-radius:0 0 5px 5px}.balanced .balance-track i{background:#8c8175}.balance-track em{position:absolute;top:calc(50% + 8px);left:0;right:0;font-size:9px;font-style:normal;color:var(--muted)}.balance-day>span{display:block;font-size:10px;color:var(--muted);margin-top:6px}.balance-day.today>span{color:var(--ink);font-weight:750}.balance-zero{position:absolute;top:83px;left:0;right:0;border-top:1px solid #baa99680}.balance-zero>span{position:absolute;left:-8px;top:-7px;font-size:9px;color:var(--muted);background:var(--card);padding-right:3px}.balance-card .trend-head{gap:8px}.balance-card .trend-head strong{font-variant-numeric:tabular-nums}.balance-card .trend-note{font-size:10px;line-height:1.5}
button.balance-day{border:0;background:none;padding:0;font-family:inherit;cursor:pointer}.energy-detail{border-top:1px solid var(--line);margin-top:14px;padding-top:12px;font-size:12px;line-height:1.6}.energy-detail p{margin:8px 0;color:var(--muted)}.energy-detail summary{cursor:pointer;color:var(--ink)}
