/* Round 2 account and report surfaces; existing diary and portion layout retained. */
.preview-notice{display:none}
.r2-lead{font-size:30px;line-height:1.18;letter-spacing:-.6px;margin:4px 0 12px}.r2-sub{color:#555;margin:6px 0 14px}.r2-kicker{font-weight:700;color:#07594f;margin-bottom:10px}.r2-gap{display:grid;gap:12px}.r2-row{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}.r2-row>*{min-width:0}.r2-row .ghost{width:auto}.r2-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.r2-note{padding:10px 12px;border:1px solid #9adbd3;background:#edf7f4;color:#31544a;margin:10px 0}.r2-muted{color:#555}.r2-status{width:auto;max-width:100%;font-weight:500;padding:8px 10px;min-height:44px}.page-title{gap:6px}.r2-metric{font-size:32px;font-weight:750;letter-spacing:-.6px;margin:6px 0}.r2-ring{width:104px;height:104px;border-radius:50%;display:grid;place-items:center;flex:none;background:#d5dadd}.r2-ring>span{display:grid;place-content:center;text-align:center;width:82px;height:82px;border-radius:50%;background:white}.r2-ring b{font-size:25px}.r2-ring small{display:block;font-size:16px}.r2-insights{display:grid;grid-template-columns:104px minmax(0,1fr);gap:14px;align-items:center}.r2-insights h3{font-size:18px}.r2-insights .ghost{margin-top:8px}.r2-fibre{grid-column:1/-1;border-top:1px solid #ddd;padding-top:12px;display:flex;gap:10px;justify-content:space-between;align-items:center;flex-wrap:wrap}.r2-fibre button{width:auto}
.r2-tabs{display:flex;flex-wrap:wrap;gap:8px}.r2-tabs button{flex:1;min-width:70px;border:1px solid #a8b8b3;border-radius:12px;padding:10px 12px;background:white;color:#444;font-weight:650}.r2-tabs button[aria-pressed=true]{background:#e7f6f3;border-color:#07594f;color:#07594f}.r2-badge{display:inline-block;border:1px solid #bbc8c3;padding:3px 7px;border-radius:7px;margin:5px 0;color:#444;font-size:16px}.r2-fields>div{padding:12px 0;border-bottom:1px solid #eee}.r2-fields>div:last-child{border:0}.r2-fields .r2-row{align-items:start}.r2-fields small{display:block;color:#555;margin-top:6px}.r2-fields b{text-align:right}.r2-legend{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.r2-dot{display:inline-block;width:11px;height:11px;border-radius:3px;margin-right:6px}.r2-chart{display:flex;gap:8px;align-items:end;min-height:148px;margin-top:16px}.r2-col{flex:1;text-align:center;min-width:0;font-size:16px;color:#444}.r2-stack{display:flex;flex-direction:column-reverse;height:100px;background:#f1f3f2;border:1px solid #d5dadd;margin-bottom:6px;border-radius:5px;overflow:hidden}.r2-stack i{display:block;min-height:0}.r2-stack.empty{border-style:dashed;background:none}.r2-stack.empty:after{content:'—';margin:auto;color:#555}.r2-table-wrap{overflow-x:auto}.r2-table{width:100%;border-collapse:collapse;font-size:16px}.r2-table caption{text-align:left;font-weight:650;margin:12px 0}.r2-table td,.r2-table th{text-align:left;border-bottom:1px solid #ddd;padding:10px 6px;overflow-wrap:anywhere}.r2-food{padding:14px 0;border-bottom:1px solid #ddd}.r2-food h3{font-size:18px}.r2-food p{margin:6px 0}.r2-food .ghost{margin-top:10px}.r2-spaced{margin-top:14px}.r2-date{width:100%}.r2-section-title{font-size:20px;margin:4px 0 10px}.r2-danger{color:#9e2525;border-color:#bf7373}.r2-example{color:#555;margin:10px 0}.r2-auth nav{display:none}.r2-auth #screen-title,.r2-auth #save-state,.r2-auth #undo-bar{display:none}.r2-auth .page-title{display:none}.r2-auth main{padding-top:22px}.r2-auth #install-banner{display:none!important}
#tab-signin .c,#tab-onboarding .c{padding:20px}#tab-signin p,#tab-onboarding p{margin:10px 0 16px}#r2-auth-message,#r2-account-message,#r2-migration-result{overflow-wrap:anywhere}#r2-email-form label{display:block;margin:12px 0 6px}#r2-email-form .kbtn{margin-top:12px}.r2-captcha{margin-top:12px;min-height:65px}#r2-code-form .kbtn{margin-top:12px}#r2-shelf{padding:14px}#r2-shelf .remembered:first-child{padding-top:0}#r2-history-results .r2-food:first-child{padding-top:0}#tab-history .r2-two label,#r2-filters label{display:block}#tab-nutrition,#tab-processed{padding-bottom:16px}#r2-photo-choice{min-height:48px}
.r2-auth main{background:linear-gradient(165deg,#f7fbfa 0%,#edf8f5 55%,#f5f5f5 100%)}#tab-signin{width:100%;max-width:480px;margin:auto}.r6-auth-intro{padding:14px 6px 6px}.r6-auth-intro .r2-lead{font-size:34px;max-width:420px;margin-bottom:10px}.r6-auth-intro>p:not(.r2-kicker){color:var(--mut);max-width:420px}.r6-auth-benefits{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 4px}.r6-auth-benefits span{padding:7px 10px;border-radius:999px;background:#e0f3ef;color:#07594f;font-size:14px;font-weight:700}.r6-auth-card{margin-top:8px}.r6-auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;background:#edf1f0;border-radius:14px;margin-bottom:16px}.r6-auth-tabs button{min-height:44px;border:0;border-radius:10px;background:transparent;color:var(--mut);font-weight:750}.r6-auth-tabs button[aria-pressed=true]{background:var(--card);color:var(--ink);box-shadow:0 1px 4px #1112}.r6-auth-card input{min-height:50px;background:#fff}.r6-auth-card .kbtn{min-height:50px}.r6-auth-card .check-row{font-size:14px;line-height:1.45}.r6-auth-card .r2-note{font-size:14px;margin-bottom:0}
@media(min-width:600px){.r2-insights{grid-template-columns:104px 1fr}.r2-auth main{padding-top:34px}.r2-lead{font-size:34px}.r6-auth-intro .r2-lead{font-size:40px}}
@media(max-width:380px){.r2-legend{grid-template-columns:1fr}.r2-chart{gap:5px}.r2-two{grid-template-columns:1fr}}

.r2-detail .page-title #save-state{display:none}.r2-detail .tab.on{gap:10px}.diary-summary{padding:16px}.diary-summary .mac3{margin-top:10px;border-top-width:4px;padding-top:10px}.ring b{font-size:36px}.r2-insights{grid-template-columns:80px minmax(0,1fr);gap:10px}.r2-insights .r2-ring{width:80px;height:80px}.r2-insights .r2-ring>span{width:62px;height:62px}.r2-insights .r2-ring b{font-size:21px}.r2-insights .r2-ring small{font-size:16px}.r2-insights .ghost{padding:8px 12px}.r2-fibre{padding-top:10px}.r2-fibre p{font-size:16px}

/* Round 3 finish: existing layout, native sheets, restrained motion. */
:root{--bg:#f5f5f5;--ink:#111111;--mut:#444444;--carbs:#f59e0b;--fat:#64748b;--line:#e2e8e6}
body{background:linear-gradient(160deg,var(--bg),var(--soft));font-feature-settings:"cv11","ss01";font-variant-numeric:tabular-nums}
.c{box-shadow:0 1px 2px #11111105,0 6px 24px #11111106;border:0}
h2,h3,.r2-lead{letter-spacing:-.025em;line-height:1.2}p{line-height:1.5}
.r2-lead{font-weight:750}.r2-kicker{font-size:14px;letter-spacing:.025em}.r2-metric{font-size:36px;font-weight:750;line-height:1.15}
.r2-ring{position:relative}.r2-ring svg{position:absolute;inset:0;width:100%;height:100%}.r2-ring>span{position:relative;background:var(--card);width:74%;height:74%}.r2-insights .r2-ring>span{width:72%;height:72%}
.r2-chart{padding-top:12px;border-bottom:1px solid var(--line)}
.r2-day-chart{margin-top:14px;text-align:center}.r2-day-stack{display:flex;height:22px;background:#f1f3f2;border:1px solid #a8b8b3;border-radius:5px;overflow:hidden;margin-bottom:5px}.r2-day-stack i{display:block;height:100%;flex:none}.r2-day-stack.empty:after{content:'—';margin:auto;color:var(--mut)}
.r3-fibre-chart svg{width:100%;height:auto;display:block}.r3-fibre-chart{margin:20px 0;color:var(--ink)}
.r2-tabs button,.ghost,.kbtn,nav button{transition:background-color .16s,border-color .16s,transform .16s,box-shadow .16s;touch-action:manipulation}
button:active{transform:scale(.975)}button:disabled{opacity:.6;cursor:wait}nav button.on:after{content:'';position:absolute;bottom:4px;left:40%;right:40%;height:3px;background:var(--teal);border-radius:4px}
.food-result{border:1px solid var(--line);border-radius:14px;padding:16px;margin:8px 0;background:var(--card)}
.r2-food{padding:18px 0}.r2-fields small,.r2-sub,.r2-muted{color:var(--mut)}
.r3-skeleton{height:96px;border-radius:14px;margin:12px 0;background:linear-gradient(100deg,var(--line) 25%,var(--card) 45%,var(--line) 65%);background-size:220% 100%;animation:r3-shimmer 1.2s linear infinite}
@keyframes r3-shimmer{to{background-position:-220% 0}}
@keyframes r3-sheet{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
dialog[open]{animation:r3-sheet .24s cubic-bezier(.2,.7,.2,1)}dialog::backdrop{background:#11111166;backdrop-filter:blur(3px)}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}button:active{transform:none}}

.r3-final{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}

.r2-insights .r2-ring small{font-size:12px;line-height:1.3;white-space:nowrap}.r2-ring b{line-height:1.2}

.r3-target-editor{display:grid;grid-template-columns:minmax(0,1fr) 7rem;gap:.5rem;align-items:center;margin:1rem 0 1.5rem}.r3-target-editor input{width:100%;min-height:44px}.r3-target-editor .r3-reference{grid-column:1/-1;margin:.25rem 0}.r3-target-editor button{grid-column:1/-1;justify-self:start}.r3-target-editor label{font-size:.875rem}

/* Round 4 reports: compact totals first, sources and definitions on demand. */
.r2-report-view .page-title,.r2-report-view .preview-notice{display:none}.r2-report-view main{padding-top:10px}.r4-report-head{display:flex;align-items:center;gap:12px}.r4-report-head h2{font-size:24px;margin:0}.r4-report-head .ghost{width:auto;min-width:72px;min-height:48px;padding:8px 12px}.r4-report-tools{display:grid;grid-template-columns:minmax(0,1fr) 154px;gap:8px;align-items:end}.r4-report-tools label{margin:0}.r4-report-tools label span{display:block;font-size:14px;font-weight:650;margin:0 0 3px}.r4-report-tools input{min-height:48px;padding:8px}.r4-report-tools .r2-tabs button{min-height:48px;padding:8px}#r2-processed-period{flex-wrap:nowrap;gap:4px}#r2-processed-period button{min-width:0;padding:8px 4px}.r4-range{margin:0;color:var(--mut);font-size:15px}.r4-nutrient-list{display:grid}.r4-nutrient-row{padding:7px 0;border-bottom:1px solid var(--line)}.r4-nutrient-row:last-child{border-bottom:0}.r4-nutrient-value{display:flex;gap:12px;justify-content:space-between;align-items:baseline}.r4-nutrient-value b{text-align:right}.r4-nutrient-row .bar{height:6px;margin:4px 0 2px}.r4-nutrient-row .bar i{display:block;height:100%;background:var(--teal);border-radius:inherit}.r4-nutrient-row small{display:block;color:var(--mut);line-height:1.3}.r4-empty{margin:0;color:var(--mut)}#r2-nutrition-content[hidden],#r2-processing-summary[hidden]{display:none}@media(max-width:360px){.r4-report-tools{grid-template-columns:1fr}.r4-report-tools label{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px}.r4-report-tools label span{margin:0}}

/* Account recovery and optional social sign-in. */
.r5-text-button{display:block;width:auto;min-height:48px;margin:8px auto 0;padding:8px 12px;border:0;background:transparent;color:var(--teal-deep);font-weight:700;text-decoration:underline;text-underline-offset:3px}.r5-auth-divider{display:flex;align-items:center;gap:12px;margin:18px 0}.r5-auth-divider:before,.r5-auth-divider:after{content:"";height:1px;background:var(--line);flex:1}.r5-auth-divider span{color:var(--mut);font-size:16px}.r5-back{width:auto;margin-bottom:2px;justify-self:start;align-self:flex-start}#r2-social .check-row{margin-bottom:14px}#tab-reset-request .c,#tab-recovery .c{padding:20px}#tab-reset-request p,#tab-recovery p{margin:10px 0 16px}#r2-reset-request-message,#r2-recovery-message{overflow-wrap:anywhere}#r2-reset-request-form label,#r2-recovery-form label{display:block;margin:12px 0 6px}#r2-reset-request-form .kbtn,#r2-recovery-form .kbtn{margin-top:12px}

/* Round 6: compact daily hierarchy and quieter system status. */
body:not(.r2-auth) header{padding:calc(10px + env(safe-area-inset-top)) 16px 8px}
body:not(.r2-auth) main{padding-top:10px;gap:10px}
body:not(.r2-auth) .page-title h2{font-size:27px}
body:not(.r2-auth) .r2-status{min-height:36px;padding:4px 6px;border:0;background:transparent;font-size:14px;font-weight:650;text-decoration:underline;text-underline-offset:3px}
#tab-today .daynav button{border:0;background:transparent}
#tab-today #default-note{padding:10px 12px;border:0;background:var(--soft);font-size:15px;text-align:left}
#tab-today .diary-summary{padding:15px 16px}
#tab-today .ring b{font-size:34px}
#tab-today .kcal-left{font-size:22px}
#tab-today .diary-summary .mac3{margin-top:9px;padding-top:9px}
#tab-today .r2-insights{padding:14px;grid-template-columns:72px minmax(0,1fr)}
#tab-today .r2-insights .r2-ring{width:72px;height:72px}
#tab-today .r2-insights h3{margin:0 0 4px;font-size:17px}
#tab-today .r2-insights p{margin:4px 0}
#tab-today .r2-insights .ghost{display:inline-block;width:auto;min-height:44px;margin-top:4px;padding:8px 12px}
#tab-today .r2-fibre{padding-top:9px}
nav button{font-size:12px;font-weight:700}
.r6-auth-intro .r2-kicker{display:none}
.r6-summary-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.r6-summary-head .r5-text-button{margin:0;min-height:44px;text-decoration:none}.r6-log-actions{display:grid;gap:8px}.r6-log-actions>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.r6-log-filters{padding:12px}.r6-log-filters summary{font-weight:700}.r6-log-filters[open] summary{margin-bottom:12px}.r6-account-links{padding:4px 16px}.r6-account-links>a,.r6-account-links>button{width:100%;min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);text-decoration:none;text-align:left}.r6-account-links>:last-child{border-bottom:0}.r6-account-links small{display:block;color:var(--mut);font-weight:500;margin-top:2px}.r6-account-email{font-weight:750;margin:0}.r6-account-session{display:grid;grid-template-columns:1fr 1fr;gap:8px}.r6-account-session .ghost{min-width:0;padding-inline:8px}.r6-account-session [hidden]{display:none}.r6-account-session .r2-danger{grid-column:1/-1;margin-top:4px}.r6-profile-form{display:grid;gap:10px}.r6-profile-form label{font-weight:700;margin-top:4px}.r6-profile-form .r2-two>div{min-width:0}.r6-profile-form .r2-two label{display:block;margin-bottom:6px}#about-saved{min-height:24px;margin:0;color:var(--teal-deep);font-weight:700}
.r6-week-grid{display:grid;grid-template-columns:1fr 1fr;margin:10px 0 12px;border-block:1px solid var(--line)}.r6-week-grid>div{padding:11px 8px}.r6-week-grid>div:nth-child(odd){border-right:1px solid var(--line)}.r6-week-grid>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.r6-week-grid small{display:block;color:var(--mut);line-height:1.25}.r6-week-grid b{display:block;margin-top:3px;font-size:19px}
#r6-data-privacy .r2-danger{margin-top:12px}
.r6-target-core{padding:2px 16px}.r6-target-reference{grid-column:1/-1}.r6-target-reference summary{font-size:14px;color:var(--mut);font-weight:650}.r6-target-reference .r3-reference{margin:8px 0 0}.r6-target-more>summary{font-weight:750}.r6-target-more>p{color:var(--mut)}.r6-target-list{display:grid}.r6-target-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(104px,38%);gap:6px 12px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}.r6-target-row:first-child{border-top:0}.r6-target-row>label{font-weight:700}.r6-target-row>input{min-width:0}.r6-target-row>.ghost{grid-column:1/-1;justify-self:start;width:auto;min-height:44px;margin:0;padding:6px 0;border:0;color:var(--teal-deep);text-align:left}.r6-target-more:not([open]) .r6-target-list{display:none}

/* Round 7: diary-first Today. Calories and macros lead; reports follow meals. */
#tab-today .diary-summary{padding:14px 16px 13px}
#tab-today .ringrow{gap:14px}
#tab-today .ring{width:112px;height:112px;flex:none;display:grid;background:conic-gradient(var(--teal) 0 0deg,#e9eeec 0deg 360deg)}
#tab-today .ring>span{width:88px;height:88px;display:grid;text-align:center}
#tab-today .ring b{font-size:30px;margin:0}
#tab-today .ring small{font-size:13px;line-height:1.25}
#tab-today .kcal-left{font-size:24px}
#tab-today .diary-summary .mac3{margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}
#tab-today .mac3 .bar i{background:var(--teal)!important}
#tab-today .r7-log-primary{min-height:50px;font-size:17px}
#tab-today #default-note{width:auto;min-height:44px;margin:-7px auto -7px;padding:6px 10px;background:transparent;text-decoration:underline;text-underline-offset:3px}
#tab-today .meal-title{min-height:36px}
#tab-today .meal-title h2{margin:0}
#tab-today .r7-insights-title{margin-top:4px}
#tab-today .r2-insights{margin-bottom:2px}
nav{gap:2px;padding-inline:4px}
nav button{font-size:11px}
