@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap";.daily-estimate{min-width:0;padding:24px}.daily-estimate .section-title{margin-bottom:8px}.daily-estimate .section-title button{padding:6px 12px;font-size:12px}.daily-estimate .estimate-note{color:var(--text-muted);margin:0;font-size:11px;line-height:1.6}.daily-estimate .estimate-boundary{margin-top:16px}.estimate-calories{--estimate-color:var(--macro-protein);margin-top:18px}.estimate-label{justify-content:space-between;align-items:center;gap:8px;font-size:13px;display:flex}.estimate-label strong{font-variant-numeric:tabular-nums;font-size:22px}.estimate-track{background:var(--surface-container-low);border-radius:99px;height:10px;margin:12px 0 6px;overflow:hidden}.estimate-track i{background:var(--estimate-color);height:100%;display:block}.daily-estimate small{color:var(--text-muted);font-size:10px}.estimate-macro{margin-top:16px}.estimate-amount{align-items:center;gap:6px;display:inline-flex}.daily-estimate .estimate-amount input{border:1px solid var(--border-subtle);background:var(--surface);width:78px;min-width:0;color:var(--text-main);text-align:right;font-variant-numeric:tabular-nums;border-radius:8px;padding:6px 8px;font-size:15px}.daily-estimate .estimate-slider{appearance:none;cursor:pointer;width:100%;height:32px;accent-color:var(--estimate-color);background:0 0;border:0;margin:2px 0 0;padding:0;display:block}.estimate-slider::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--estimate-color) var(--estimate-fill), var(--surface-container-low) var(--estimate-fill));border-radius:99px;height:10px}.estimate-slider::-webkit-slider-thumb{appearance:none;border:2px solid var(--surface);background:var(--estimate-color);width:22px;height:22px;box-shadow:0 0 0 1px var(--estimate-color);border-radius:50%;margin-top:-6px}.estimate-slider::-moz-range-track{background:var(--surface-container-low);border-radius:99px;height:10px}.estimate-slider::-moz-range-progress{background:var(--estimate-color);border-radius:99px;height:10px}.estimate-slider::-moz-range-thumb{border:2px solid var(--surface);background:var(--estimate-color);border-radius:50%;width:18px;height:18px}.daily-estimate input:focus-visible{outline:2px solid var(--primary);outline-offset:3px}@media (width<=768px){.app .daily-estimate{padding:16px}.app .daily-estimate .estimate-slider{height:44px}.app .daily-estimate .estimate-amount input{min-height:40px}}.meal-batch-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px;display:flex}.meal-batch-toolbar span{color:var(--text-muted);font-size:12px}.meal-batch-toolbar small{flex-basis:100%}.meal-selection-mark{vertical-align:middle;width:20px;height:20px;color:var(--primary,#006c49);border:1px solid;border-radius:4px;place-items:center;margin-right:8px;display:inline-grid}.meal-food[aria-pressed=true] .meal-selection-mark{background:var(--primary,#006c49);color:#fff}.meal-record-form{gap:12px;display:grid}.meal-record-form label{color:var(--text-muted);gap:6px;font-size:12px;font-weight:600;display:grid}.meal-record-form fieldset{border:0;gap:12px;min-width:0;margin:0;padding:0;display:grid}.meal-record-form input,.meal-record-form select{border:1px solid var(--border-subtle);background:var(--surface-container-low);width:100%;min-width:0;min-height:40px;color:var(--text-main);border-radius:10px;padding:8px 10px}.meal-record-form :is(input,select):focus-visible{outline:2px solid var(--primary);outline-offset:2px}.meal-record-help{color:var(--text-muted);font-size:12px}.dark .meal-record-form :is(input,select){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.ai-dialog,.app .modal.ai-dialog{flex-direction:column;width:min(92vw,560px);max-height:min(100dvh - 48px,760px);padding:18px;display:flex;overflow:hidden}.ai-dialog .section-title{z-index:2;background:var(--surface,#fff);flex:none;margin:0 0 6px;padding:4px 0 10px;position:static}.ai-dialog-body{overscroll-behavior:contain;flex:auto;min-height:0;padding-top:2px;overflow-y:auto}.ai-dialog .ai-conversation{gap:8px;margin:8px 0;display:grid}.ai-dialog .ai-message{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface-subtle);color:var(--text-main);border-radius:10px;margin:0;padding:10px}.ai-dialog .ai-message.user{border-left:3px solid var(--primary)}.ai-dialog .ai-answer{border-left:3px solid var(--primary);background:var(--surface-subtle);color:var(--text-main);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:10px;margin:8px 0;padding:9px 11px;font-size:13px;line-height:1.45}.ai-dialog .ai-form{gap:8px;display:grid}.ai-dialog .ai-form textarea{resize:vertical;width:100%;min-height:68px}.ai-dialog .ai-form-actions{justify-content:space-between;gap:8px;margin-top:0}.ai-dialog .ai-form-actions button{min-height:40px}.ai-dialog .ai-target-chip{border:1px solid var(--border-subtle);color:var(--text-muted);border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;font-size:12px;display:flex}.ai-dialog .ai-target-chip span{overflow-wrap:anywhere;min-width:0}.ai-dialog .ai-target-chip button{color:var(--primary);flex:none;font-size:12px}.ai-dialog .ai-image{overflow-wrap:anywhere;align-items:center;gap:10px;display:flex}.ai-dialog .ai-image img{object-fit:contain;width:64px;height:52px}.ai-dialog .ai-images{gap:8px;max-height:220px;display:grid;overflow-y:auto}.ai-dialog .ai-image img,.ai-dialog .ai-image button{flex-shrink:0}.ai-dialog .ai-image span{flex:1;min-width:0}.ai-dialog .ai-save-all{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin:10px 0 0;display:flex}.ai-dialog .ai-save-all>span{color:var(--text-muted);font-size:12px}.ai-dialog .ai-draft-card{overflow-wrap:anywhere;background:var(--surface-container-low);box-shadow:none;border:0;border-radius:12px;margin-top:10px;padding:12px}.ai-dialog .ai-draft-headline{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 10px;margin-bottom:8px;display:flex}.ai-dialog .ai-draft-headline strong{min-width:0;font-size:14px;line-height:1.35}.ai-dialog .ai-draft-headline [role=status]{color:var(--text-muted);flex:none;font-size:11px}.ai-dialog .ai-result-block{background:0 0;border:0;margin-top:8px;padding:4px 0}.ai-dialog .ai-result-block+.ai-result-block{border-top:1px solid var(--border-light);padding-top:12px}.ai-dialog .ai-result-target{color:var(--text-main);margin-bottom:8px;font-size:14px}.ai-dialog .ai-result-target strong{font-size:17px;line-height:1.35}.ai-dialog .ai-meal-metadata{flex-wrap:wrap;align-items:baseline;gap:3px 0;display:flex}.ai-dialog .ai-meal-metadata span+span:before{content:"·";padding:0 7px}.ai-dialog .food-nutrient-grid{margin:12px 0 4px}.ai-dialog .food-nutrient-grid dd{font-size:clamp(23px,4.5vw,28px)}.ai-dialog .ai-nutrition-status{color:var(--text-muted);margin:4px 0;font-size:11px}.ai-dialog .ai-nutrition-status button{color:var(--primary);font-size:12px}.ai-dialog .ai-nutrient-caption{color:var(--text-muted);margin:0;font-size:11px}.ai-dialog .ai-result-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;margin:10px 0 4px;font-size:12px;display:grid}.ai-dialog .ai-result-grid>div{min-width:0}.ai-dialog .ai-result-grid dt{color:var(--text-muted);font-size:11px}.ai-dialog .ai-result-grid dd{color:var(--text-main);overflow-wrap:anywhere;margin:3px 0 0}.ai-dialog .ai-field-wide{grid-column:1/-1}.ai-dialog .ai-result-grid [class*=nutrient-] strong{color:var(--nutrient-tone)}.ai-dialog .ai-result-change{flex-wrap:wrap;align-items:baseline;gap:4px 7px;display:flex}.ai-dialog .ai-result-change>span:first-child{color:var(--text-muted)}.ai-dialog .ai-result-change>span[aria-hidden]{color:var(--text-tertiary,#66736a)}.ai-dialog .ai-result-change strong{color:var(--text-main)}.ai-dialog .ai-result-empty{color:var(--text-muted);margin:4px 0;font-size:12px}.ai-dialog .ai-edit-details,.ai-dialog .ai-process-details{color:var(--text-muted);margin-top:8px;font-size:12px}.ai-dialog .ai-edit-details>summary,.ai-dialog .ai-process-details>summary{cursor:pointer;color:var(--text-muted);padding:6px 0}.ai-dialog .ai-process-details{border:0}.ai-dialog .ai-process-details p{overflow-wrap:anywhere;margin:5px 0;line-height:1.45}.ai-dialog .ai-edit-details .ai-record-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:8px;display:grid}.ai-dialog .ai-record-fields label{overflow-wrap:anywhere;flex-direction:column;gap:5px;min-width:0;display:flex}.ai-dialog .ai-record-fields input,.ai-dialog .ai-record-fields select,.ai-dialog .ai-record-fields textarea{box-sizing:border-box;border:1px solid var(--border-subtle,#ddd);background:var(--surface,#fff);width:100%;min-width:0;min-height:40px;color:var(--text-main,#222);border-radius:10px;padding:8px}.ai-dialog .ai-record-fields small{color:var(--text-muted,#626c60);white-space:normal}.ai-dialog .ai-candidates{gap:6px;display:grid}.ai-dialog .ai-missing-box{margin-top:8px;padding:8px 10px}.ai-dialog .ai-missing-box p{margin:2px 0}.ai-dialog .ai-record-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.ai-dialog .ai-record-actions>button{min-width:0;padding:8px 10px}.ai-dialog .ai-record-actions>.primary{grid-column:1/-1}@media (width<=768px){.app .modal.ai-dialog{max-height:calc(var(--visible-height,100dvh) - 32px);padding:14px}.app .modal.ai-dialog .section-title{padding:2px 0 8px}}@media (width<=480px){.app .modal.ai-dialog{width:min(100%,560px)}.ai-dialog .ai-edit-details .ai-record-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-dialog .ai-record-fields :is(input,select,textarea){font-size:16px}}.nutrient-calories,.nutrient-protein{--nutrient-tone:var(--macro-protein)}.nutrient-carbs{--nutrient-tone:var(--macro-carbs)}.nutrient-fat{--nutrient-tone:var(--macro-fat)}.food-nutrient-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:8px 0;display:grid}.food-nutrient-grid>div{min-width:0}.food-nutrient-grid dt{color:var(--text-muted);font-size:11px}.food-nutrient-grid dd{color:var(--nutrient-tone);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:3px 0 0;font-size:21px;font-weight:700;line-height:1.25}.app .food-detail-modal{padding:22px}.app .food-detail-modal .section-title{margin-bottom:16px}.app .food-detail-modal .food-serving-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.app .food-detail-modal .food-nutrition-inputs{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:6px}.app .food-detail-modal .food-nutrition-inputs label{color:var(--nutrient-tone)}.app .food-detail-modal .food-nutrition-inputs input{font-variant-numeric:tabular-nums;padding:0 8px}.food-nutrition-caption{color:var(--text-muted);margin:16px 0 0;font-size:11px}.app .food-detail-modal :is(input,select){border-radius:9px;width:100%;min-width:0;height:42px;margin-top:5px}.food-weight-preview{border:1px solid var(--border-light);background:var(--surface-container-low);border-radius:12px;margin-top:18px;padding:14px}.food-preview-heading{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.food-preview-heading strong{font-size:13px}.food-preview-heading span,.food-weight-preview>p{color:var(--text-muted);font-size:11px}.app .food-detail-modal .food-preview-input{grid-template-columns:1fr minmax(90px,45%);align-items:center;gap:10px;margin:8px 0 12px;display:grid}.app .food-detail-modal .food-preview-input input{margin:0}.food-weight-preview>p{margin:8px 0 0}.app .food-detail-modal .modal-actions{margin-top:16px}@media (width<=768px){.app .food-detail-modal{padding:16px}.app .food-detail-modal :is(input,select){font-size:16px}.food-nutrient-grid{gap:6px}.food-nutrient-grid dd{font-size:19px}}@media (width<=360px){.app .food-detail-modal .food-nutrition-inputs{grid-template-columns:repeat(2,minmax(0,1fr))}}.modal.recipe-dialog{overscroll-behavior:contain;background:var(--surface);width:min(640px,100%);max-height:calc(100dvh - 48px);color:var(--text-main);overflow-y:auto}.recipe-dialog fieldset{border:0;gap:14px;min-width:0;margin:0;padding:0;display:grid}.recipe-dialog fieldset .section-title{margin:0}.recipe-dialog h3{margin:0;font-size:15px}.recipe-dialog label{gap:6px;min-width:0;display:grid}.recipe-dialog input{border:1px solid var(--border-subtle);background:var(--surface);width:100%;min-width:0;height:40px;color:var(--text-main);border-radius:10px;padding:0 10px}.recipe-dialog input:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.recipe-choices{border:1px solid var(--border-subtle);border-radius:10px;max-height:180px;overflow-y:auto}.recipe-choice,.recipe-item{align-items:center;gap:12px;padding:8px 10px;display:flex}.recipe-choice+.recipe-choice,.recipe-ingredient+.recipe-ingredient{border-top:1px solid var(--border-light)}.recipe-choice strong,.recipe-item strong{overflow-wrap:anywhere;flex:1;min-width:0}.recipe-choice button,.recipe-item button{flex:none}.recipe-items{max-height:260px;overflow-y:auto}.recipe-dialog .recipe-weight{flex:none;align-items:center;gap:6px;width:130px;display:flex}.recipe-weight span,.recipe-help{color:var(--text-muted)}.recipe-help{margin:0;font-size:13px}.recipe-summary{gap:4px;min-width:0;display:grid}.recipe-summary small{overflow-wrap:anywhere}.recipe-nutrients{white-space:nowrap;font-variant-numeric:tabular-nums;justify-content:space-between;gap:8px;font-size:12px;line-height:1.5;display:flex}.recipe-nutrients>span{color:var(--nutrient-tone)}.recipe-ingredient>.recipe-nutrients{margin:0 10px 8px}.recipe-total{gap:3px;padding:0 10px;display:grid}.recipe-total>span{color:var(--text-muted);font-size:11px}@media (width<=480px){.recipe-choice,.recipe-item{gap:8px;padding:8px 0}.recipe-choices .recipe-choice{padding:8px}.recipe-dialog .recipe-weight{width:102px}.recipe-item{flex-wrap:wrap}.recipe-item strong{flex-basis:100%}.recipe-item .recipe-weight{flex:1}.recipe-ingredient>.recipe-nutrients{margin:0 0 8px}.recipe-total{padding:0}.recipe-nutrients{gap:4px;font-size:11px}}.recipe-meal-fields{gap:8px;min-width:0;display:grid}.recipe-meal-fields .section-title{gap:8px;margin:0}.recipe-meal-fields .section-title strong{overflow-wrap:anywhere;min-width:0}.recipe-meal-fields .section-title>span{flex:none}.recipe-meal-ingredients{max-height:260px;overflow-y:auto}.recipe-meal-weight{align-items:center;gap:8px;padding:8px 0;display:flex}.recipe-meal-weight>span:first-child{overflow-wrap:anywhere;flex:1;min-width:0}.recipe-meal-weight input{border:1px solid var(--border-subtle);width:80px;min-width:0;height:40px;color:var(--text-main);background:var(--surface);border-radius:10px;padding:0 8px}.recipe-meal-weight input:disabled{opacity:.7}.recipe-meal-selected{gap:12px;margin-bottom:12px;display:grid}.recipe-meal-card{border:1px solid var(--border-subtle);background:var(--surface);border-radius:10px;padding:12px}.recipe-meal-card>button{margin-top:8px}.recipe-picker{margin-top:16px}.recipe-picker .picker-list{max-height:180px}.recipe-meal-meta{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin-top:12px;display:grid}.recipe-meal-meta label{min-width:0;color:var(--text-muted);gap:5px;font-size:12px;display:grid}.recipe-meal-meta :is(input,select){border:1px solid var(--border-subtle);background:var(--surface);width:100%;min-width:0;height:40px;color:var(--text-main);border-radius:10px;padding:0 6px}.app .add-page .recipe-picker .picker-list button{justify-content:space-between;align-items:center;display:flex}.recipe-picker .picker-list button>div{flex:1;min-width:0}.recipe-picker .picker-list button>span{white-space:nowrap;color:var(--primary);flex:none;font-size:12px}@media (width<=360px){.recipe-meal-meta{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:8px}.recipe-meal-meta input[type=date]{padding-inline:3px;font-size:14px}}.meal-search-page{gap:20px;min-width:0;display:grid}.meal-search-page h1{margin:0;font-size:24px}.meal-search-page>.section-title{gap:12px;margin-bottom:0}.meal-search-filters{flex-wrap:wrap;align-items:end;gap:12px;padding:20px;display:flex}.meal-search-filters label{min-width:0;color:var(--text-muted);flex:145px;gap:6px;font-size:13px;display:grid}.meal-search-filters .meal-search-query{flex:2 240px}.meal-search-filters input,.meal-search-filters select{box-sizing:border-box;border:1px solid var(--border-light);background:var(--surface-subtle);width:100%;min-width:0;height:40px;color:var(--text-main);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;border-radius:10px;padding:0 12px}.meal-search-filters input:focus-visible,.meal-search-filters select:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.dark .meal-search-filters input,.dark .meal-search-filters select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.meal-search-filters>button,.meal-search-pagination button{background:var(--surface-subtle);min-height:40px;color:var(--primary);padding:8px 12px;font-size:13px;font-weight:600}.meal-search-pagination button:disabled{opacity:.45;cursor:not-allowed}.meal-search-count{color:var(--text-muted);margin:0;font-size:14px}.meal-search-error{color:var(--danger,#dc2626);flex-basis:100%;margin:0}.meal-search-pagination{justify-content:center;align-items:center;gap:16px;display:flex}.meal-search-page .meal-groups{max-height:none;overflow:visible}@media (width<=768px){.meal-search-page{gap:14px}.meal-search-page h1{font-size:20px}.meal-search-filters{padding:16px}.meal-search-filters .meal-search-query{flex-basis:100%}.meal-search-filters label{flex-basis:calc(50% - 12px)}.meal-search-filters>button{flex:calc(50% - 12px)}}.navigation-settings .section-title{justify-content:space-between;gap:12px}.navigation-settings .section-title button{padding:7px 10px;font-size:12px}.navigation-settings>.settings-hint{margin:8px 0 12px;line-height:1.6}.navigation-order-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.navigation-order-list li{min-width:0}.navigation-order-item{background:var(--surface-container-low);border:1px solid var(--border-subtle);width:100%;min-height:46px;color:var(--text-main);text-align:left;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;align-items:center;gap:12px;padding:10px 12px;display:flex}.navigation-order-item strong{flex:1;font-size:13px;font-weight:600}.navigation-order-number{color:var(--text-muted);font-variant-numeric:tabular-nums;width:16px;font-size:12px}.navigation-order-grip{color:var(--text-muted);font-size:22px;line-height:1}.navigation-order-item.dragging{cursor:grabbing;color:var(--primary);border-color:var(--primary);background:var(--surface);box-shadow:0 2px 8px #006c491a}.navigation-settings>.navigation-order-status{color:var(--primary);min-height:18px;margin:0;font-size:12px}:where(.responsive-columns){grid-template-columns:var(--layout-columns,minmax(0,2fr) minmax(0,1fr));gap:24px;display:grid}:where(.responsive-cards){grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:16px;display:grid}:where(.responsive-form){grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}:where(.responsive-toolbar){flex-wrap:wrap;align-items:center;gap:12px;display:flex}:where(.dashboard-side,.food-rail,.settings-right){--layout-columns:minmax(0,1fr)}:where(.search-row,.grocery-toolbar){flex-wrap:nowrap}.responsive-columns>*,.responsive-cards>*,.responsive-form>*{min-width:0}.responsive-scroll{overscroll-behavior-x:contain;max-width:100%;overflow-x:auto}@media (width>=769px){.app{grid-template-rows:1fr auto;grid-template-columns:184px minmax(0,1fr);display:grid}.app .site-header{overscroll-behavior-y:contain;border-bottom:0;border-right:1px solid var(--border-subtle);grid-area:1/1/3;align-self:start;min-width:0;height:100dvh;position:sticky;top:0;overflow-y:auto}.app .header-inner{flex-flow:column;justify-content:flex-start;align-items:stretch;gap:24px;width:100%;max-width:none;height:100%;min-height:0;margin:0;padding:24px 16px}.app .brand-nav{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:28px;width:100%;min-width:0}.app .brand{justify-content:center}.app .desktop-nav{flex-direction:column;flex:none;justify-content:flex-start;align-items:stretch}.app .desktop-nav button{text-align:left;flex:none;width:100%;min-height:44px;padding:10px 14px}.app .desktop-nav button.active{color:#fff;background:#006c49}.app .desktop-nav button:focus-visible{outline-offset:-3px}.app .header-actions{flex-wrap:wrap;justify-content:center;gap:8px;width:100%;margin-top:auto}.app .page-shell{grid-area:1/2;width:100%;min-width:0;max-width:none;margin:0;padding:28px clamp(20px,2vw,40px) 80px}.app>footer{grid-area:2/2;width:100%;min-width:0;max-width:none;margin:0;padding:32px clamp(20px,2vw,40px)}}@media (width>=769px) and (width<=1285px){.app :is(.dashboard-top,.dashboard-main,.food-layout,.settings-layout,.add-layout){grid-template-columns:minmax(0,1fr)}.app .summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app :is(.dashboard-side,.food-rail,.settings-right){grid-template-columns:minmax(0,1fr)}.app :is(.date-switch,.backup-actions-row,.chart-controls,.weight-chart-heading){flex-wrap:wrap}}@media (width<=768px){.app .dashboard-page{gap:var(--page-gap);grid-template-columns:minmax(0,1fr);display:grid}.app .dashboard-top,.app .dashboard-main{display:contents}.app .dashboard-top>.nutrition-card{order:1}.app .dashboard-main>.intake-card{order:2}.app .dashboard-top>.vital-stack{order:3}.app .dashboard-main>.dashboard-side{order:4}.app .dashboard-top .weight-card{width:100%;max-width:none}.app .weight-card .weight-content{grid-template-columns:minmax(115px,1fr) minmax(0,1.35fr);align-items:center;gap:8px;display:grid}.app .weight-card .weight-note{white-space:normal;flex-basis:auto;justify-self:stretch;gap:3px;min-height:44px;padding:6px 8px;display:grid}.app .weight-card .weight-note b,.app .weight-card .weight-note span{white-space:normal;line-height:1.35}.app .sleep-card .sleep-summary{grid-template-columns:minmax(115px,1fr) minmax(0,1.35fr);align-items:center;gap:4px 8px;display:grid}.app .sleep-card .sleep-summary>strong{grid-column:1}.app .sleep-card .sleep-times{justify-content:flex-start;align-items:center;gap:4px;min-width:0;display:flex}.app .sleep-card .sleep-times>span{white-space:nowrap;padding:6px 8px}body:has(.app .modal-backdrop){overflow:hidden}.app{--nav-height:64px;--page-gap:clamp(12px, 3vw, 20px);min-height:100dvh}.app.app.dark{filter:none;background:var(--bg-app);--bg-app:#121b18;--surface:#1b2923;--surface-subtle:#24352d;--surface-container-low:#24352d;--surface-container:#304238;--text-main:#edf5ef;--text-muted:#c5d4ca;--text-tertiary:#a6baad;--border-light:#3c5145;--border-subtle:#52695b;--primary:#78d8ad;--primary-hover:#57bd91;--primary-tint:#284d3c}.app.dark :is(.primary,.brand>span){color:#fff!important;background:#006c49!important}.app.dark :is(.food-line,.ai-draft-card,.ai-fact-item,.ai-action-item,.ai-form textarea,.inline-form input,.inline-form select){background:var(--surface);color:var(--text-main)}.app.dark :is(.ai-gate-notice,.ai-missing-box){color:#ffde9b;background:#3e3422}.app.dark :is(.ai-gate-notice p,.ai-missing-box p){color:#ffde9b}.app.dark :is(.modal,.modal input,.modal select,.modal textarea,.settings-page input,.settings-page select,.add-page input,.add-page select){background:var(--surface);color:var(--text-main)}.app.dark .selected-food-item{background:var(--surface-subtle)!important;border-color:var(--border-light)!important}.app .site-header{height:auto;padding-top:env(safe-area-inset-top);background:var(--bg-app)}.app .header-inner{flex-wrap:nowrap;gap:12px;min-height:60px;padding:8px 16px}.app .brand-nav{flex:1;width:auto}.app .header-actions{flex-wrap:nowrap;justify-content:flex-end;gap:8px;width:auto}.app .header-actions .primary{padding:8px 14px!important}.app .mobile-nav{z-index:40;bottom:max(8px, env(safe-area-inset-bottom));left:max(8px, env(safe-area-inset-left));right:max(8px, env(safe-area-inset-right));scrollbar-width:none;overscroll-behavior-x:contain;position:fixed;overflow-x:auto}.app .mobile-nav::-webkit-scrollbar{display:none}.app .mobile-nav button{flex:1 0 calc(20% - 3.2px);min-width:52px;min-height:44px;padding:8px 2px;font-size:12px}.app .mobile-nav button:focus-visible{outline-offset:-3px}.app.keyboard-open .mobile-nav{display:none}.app .page-shell{padding:16px max(12px, env(safe-area-inset-right)) calc(var(--nav-height) + env(safe-area-inset-bottom) + 24px) max(12px, env(safe-area-inset-left))}.app footer{padding:20px 16px calc(var(--nav-height) + env(safe-area-inset-bottom) + 20px);gap:12px}.app .action-toast{max-width:calc(100% - 24px);bottom:calc(var(--nav-height) + env(safe-area-inset-bottom) + 12px);overflow-wrap:anywhere}.app .responsive-columns,.app .responsive-form{gap:var(--page-gap);grid-template-columns:minmax(0,1fr)!important}.app .responsive-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,148px),1fr));gap:12px}.app .responsive-toolbar{flex-wrap:wrap;gap:10px}.app .responsive-toolbar>input{flex:100%;width:100%}.app :is(.page-title,.section-title,.chart-head,.chart-controls,.weight-chart-heading,.ratio-head,.macro-mode-row,.backup-actions-row){flex-wrap:wrap;gap:10px}.app .page-title h1{font-size:clamp(22px,6vw,28px)}.app :is(.section-title h2,.weight-chart-heading){overflow-wrap:anywhere;min-width:0}.app :is(.dashboard-top,.dashboard-main,.food-layout,.settings-layout,.add-layout){gap:var(--page-gap)}.app :is(.nutrition-card,.intake-card,.heat-card,.personal-card,.chart-card,.picker-card,.selected-card,.settings-card){min-width:0;padding:16px}.app :is(input,select,textarea){min-width:0;max-width:100%;font-size:16px}.app :is(button,.meal-food[role=button],.food-line[role=button]){min-height:40px}.app .date-switch{flex-wrap:wrap;gap:8px}.app .date-switch .calendar-trigger,.app .date-switch>button{padding:8px;font-size:12px}.app .date-switch-actions{gap:8px;width:100%;margin-left:0;display:flex}.app .date-switch-actions button{flex:1}.app .date-calendar{width:min(270px,100vw - 24px);left:0}.app .heat-grid button small{font-size:clamp(8px,2.3vw,11px)}.app .nutrition-layout{align-items:stretch}.app .calorie-ring{flex-shrink:0;align-self:center}.app .macro-stack{width:100%;min-width:0}.app :is(.macro-header,.macro-footer,.weekly-intake-title,.weekly-intake-summary){flex-wrap:wrap;gap:6px}.app .dashboard-page .meal-food{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.app .dashboard-page .meal-food>span:first-child{grid-column:1/3;min-width:0}.app .dashboard-page .meal-food>b{text-align:right;grid-area:1/3;font-size:12px}.app .dashboard-page .meal-food>.meal-macro{grid-row:2}.app .meal-food strong{white-space:normal;overflow-wrap:anywhere}.app .foods-page .food-head{display:none}.app .foods-page .food-table{max-height:304px}.app .foods-page .food-line{grid-template-columns:repeat(4,minmax(0,1fr)) 42px;gap:4px 6px;min-height:76px;padding:10px}.app .foods-page .food-line>b{text-align:left;white-space:nowrap;grid-row:2;min-width:0;font-size:11px}.app .foods-page .food-line>span:first-child{white-space:normal;grid-column:1/5;min-width:0;display:block;overflow:visible}.app .foods-page .food-line>span:last-child{grid-area:1/5/3;place-self:center end}.app .foods-page .food-line strong{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;font-size:13px;line-height:1.35;display:block;overflow:visible}.app .foods-page .food-line .action-btn-danger{min-width:40px;padding:6px 4px;font-size:11px}.app .food-rail .meal-food{flex-wrap:wrap;justify-content:space-between;display:flex}.app .inline-form{flex-wrap:wrap}.app .inline-form :is(input,select){flex:140px;width:100%}.app .analysis-page .analysis-summary-card{min-height:156px;padding:14px}.app .analysis-summary-card>strong{flex-wrap:wrap;margin-top:14px;font-size:clamp(24px,6vw,32px)}.app .analysis-summary-head{gap:4px}.app .summary-icon{flex-shrink:0;width:28px;height:28px}.app .macro-summary-labels{flex-wrap:wrap;margin-top:12px}.app .summary-time-lines span{flex-wrap:wrap}.app .energy-form{flex-wrap:wrap;min-width:0}.app .energy-form .segmented{flex-wrap:nowrap;align-items:stretch;max-width:100%;height:auto;min-height:48px;padding:4px}.app .energy-form .segmented button{white-space:nowrap;flex:1;min-width:0;height:auto;min-height:40px}.app .energy-result{flex-wrap:wrap;width:100%;margin-left:0}.app .segmented{flex-wrap:wrap;max-width:100%;display:flex}.app .segmented button{padding:7px 9px}.app .bar-chart{overscroll-behavior-x:contain;max-width:100%;overflow-x:auto}.app .sleep-axis{grid-template-columns:40px minmax(0,1fr) 32px;gap:5px;font-size:10px}.app .sleep-axis span:nth-child(2),.app .sleep-axis span:nth-child(4),.app .sleep-axis span:nth-child(6),.app .sleep-axis span:nth-child(7){display:none}.app .sleep-row{grid-template-columns:40px minmax(0,1fr) 32px;gap:5px}.app .sleep-row em{font-size:10px}.app .sleep-row i{grid-template-rows:1fr 1fr;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;padding:3px 5px;font-size:9px;line-height:1;display:grid}.app .sleep-row i>span:first-child{grid-area:1/1}.app .sleep-row i>span:last-child{text-align:right;grid-area:1/2}.app .sleep-row i>b{text-align:center;grid-area:2/1/auto/-1}.app .weight-chart-scroll .line-chart{--weight-plot-padding:12px}.app .weight-chart-controls{gap:10px;margin-bottom:4px}.app .weight-chart-controls .segmented{flex-wrap:nowrap;width:100%}.app .weight-chart-controls .segmented button{white-space:nowrap;flex:1;min-width:0;padding:7px 6px}.app .weight-chart-scroll .axis-labels span{font-size:11px}.app .settings-page .profile-grid{grid-template-columns:minmax(0,1fr)}.app .target-input{grid-template-columns:minmax(0,1fr) 90px}.app .target-input>span{grid-column:2}.app .macro-number-grid{grid-template-columns:minmax(0,1fr)}.app .macro-number-field{grid-template-columns:minmax(0,1fr) minmax(100px,auto)}.app .macro-number-field small{grid-column:1/-1}.app .backup-actions-row .modal-actions{flex-wrap:wrap}.app .grocery-grid{grid-template-columns:minmax(0,1fr)!important;min-width:0!important}.app .grocery-columns-control{display:none}.app :is(.grocery-heading,.grocery-toolbar){flex-direction:column;align-items:stretch}.app .grocery-toolbar{flex-wrap:nowrap}.app .grocery-toolbar>input{flex:none;width:100%}.app .grocery-toolbar-options{justify-content:space-between;width:100%}.app :is(.grocery-actions,.grocery-toolbar-options){flex-wrap:wrap}.app .grocery-actions button{flex:1}.app .grocery-detail-layout{grid-template-columns:minmax(0,1fr);gap:16px}.app .grocery-history{border-left:none;border-top:1px solid var(--border-light);padding:16px 0 0}.app .grocery-form-pair{grid-template-columns:minmax(0,1fr)}.app .grocery-detail-modal :is(button,input,select){min-height:40px;font-size:16px}.app .modal-backdrop{overscroll-behavior:contain;top:var(--visible-top,0px);height:var(--visible-height,100dvh);padding:12px;padding-top:max(12px, env(safe-area-inset-top));padding-bottom:max(12px, env(safe-area-inset-bottom));align-items:flex-start;bottom:auto;overflow-y:auto}.app :is(.modal,.grocery-modal){min-width:0;max-width:560px;max-height:calc(var(--visible-height,100dvh) - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overscroll-behavior:contain;overflow-wrap:anywhere;margin:auto;padding:18px;overflow-y:auto;width:100%!important}.app .grocery-modal{max-width:860px}.app .modal-actions{flex-wrap:wrap;gap:8px}.app .modal-actions button{flex:auto}.app .ai-dialog{max-width:560px}.app .ai-dialog :is(.ai-fact-item,.ai-action-item,.ai-draft-headline){flex-wrap:wrap}.app .ai-dialog img{object-fit:contain;max-width:100%;max-height:180px}.app .ai-form-actions{flex-wrap:wrap}.app .ai-form-actions button{flex:1}.app .ai-form textarea{font-size:16px}.app .form-grid{grid-template-columns:minmax(0,1fr)}.app .compact-food-head,.app .selected-head{display:none}.app .picker-list button{grid-template-columns:repeat(4,minmax(0,1fr))}.app .picker-list button>strong{grid-column:1/-1}.app .selected-food-toolbar{align-items:flex-start!important}.app .selected-food-toolbar>strong{overflow-wrap:anywhere;width:100%}.app .selected-food-toolbar>div,.app .selected-food-weights,.app .selected-food-weights>div{flex-wrap:wrap}.app .selected-food-nutrients{flex-wrap:wrap;font-size:11px!important}.app .meal-tabs{flex-wrap:wrap}.app .save-bar{flex-wrap:wrap;gap:10px}.app .meal-total{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}}@media (width<=360px){.app .personal-grid{grid-template-columns:minmax(0,1fr)}.app .sleep-card .sleep-times{gap:2px}.app .sleep-card .sleep-times>span{padding:4px 3px;font-size:10px}}@media (prefers-reduced-motion:reduce){.mobile-nav{scroll-behavior:auto}}@media (width<=768px){.app .analysis-page .summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app .analysis-page .analysis-summary-card{min-height:0;padding:12px}.app .analysis-page .analysis-summary-card>strong{margin:8px 0 3px;font-size:clamp(22px,5.5vw,28px)}.app .analysis-page .analysis-summary-head{gap:6px}.app .analysis-page .summary-icon{flex-basis:26px;width:26px;height:26px}.app .analysis-page .summary-icon svg{width:17px;height:17px}.app .analysis-page .summary-time-lines{gap:2px;font-size:10px}.app .analysis-page .summary-time-lines span{flex-wrap:nowrap;gap:4px}.app .analysis-page .summary-time-lines strong{font-size:12px}.app .analysis-page .macro-summary-labels{flex-wrap:nowrap;margin:0 0 4px;font-size:9px}.app .analysis-page .macro-summary-bar{height:8px}.app .analysis-page .macro-summary-grams{margin-top:3px;font-size:9px}}.app .page-shell:has(.add-page){padding-top:0}.app .add-page .page-title{margin:0 0 12px}.app .add-page .add-header{margin-bottom:12px;padding:12px 16px}.app .add-page .manual-meal-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.app .add-page .manual-meal-fields label{min-width:0;color:var(--text-muted);font-size:12px}.app .add-page .manual-meal-fields :is(input,select){background:var(--surface);color:var(--text-main);border-color:var(--border-subtle)!important;height:40px!important}.app .add-page :is(.picker-card,.selected-card){padding:16px}.app .add-page .manual-food-search{flex-wrap:nowrap;gap:8px;display:flex}.app .add-page .manual-food-search input{flex:1;width:0;min-width:0}.app .add-page .manual-food-search button{flex:none}.app .add-page .picker-list{grid-auto-rows:76px;gap:8px;max-height:244px}.app .add-page .picker-list button{gap:8px;height:76px;min-height:76px;padding:8px 12px}.app .add-page .picker-list button>div{min-width:0}.app .add-page .picker-list strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.35;display:-webkit-box;overflow:hidden}.app .add-page .picker-list small{color:var(--text-muted);font-size:11px;display:block}.app .add-page .picker-status{color:var(--primary);flex-shrink:0;font-size:12px;font-weight:600}.app .add-page .picker-list :is(button:hover,button.picked){background:var(--primary-tint);border-color:var(--primary)}.app .add-page .picker-list button:disabled{opacity:1;cursor:default}.app .add-page .selected-food-toolbar{grid-template-columns:minmax(0,1fr);gap:10px;display:grid!important}.app .add-page .manual-weight-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.app .add-page .manual-weight-actions button{white-space:nowrap;height:40px;min-height:40px;padding:0 10px;font-size:12px}.app .add-page .manual-weight-actions.with-count{grid-template-columns:repeat(4,minmax(0,1fr))}.app .add-page .manual-weight-actions.with-count button{padding-inline:4px}.app .add-page .manual-serving-input{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.app .add-page .manual-serving-input label{align-items:center;gap:4px;display:flex}.app .add-page .selected-food-weights label{color:var(--text-muted);font-size:12px!important}.app .add-page .selected-food-weights input{height:40px;font-size:16px;border-color:var(--border-subtle)!important;width:96px!important;padding:0 8px!important}.app .add-page .selected-food-weights>div{flex-wrap:wrap;gap:8px!important}@media (width<=768px){.app .add-page .manual-meal-fields{gap:8px}.app .add-page .manual-meal-fields input[type=date]{padding-inline:4px!important}.app .add-page .selected-food-toolbar>strong{width:auto}.app.dark .add-page :is(.meal-total,.save-bar){background:var(--surface-subtle);border-color:var(--border-subtle)}.app.dark .add-page .meal-total :is(strong,span){color:var(--text-main)}.app.dark .add-page .meal-total>div:first-child :is(strong,span){color:var(--primary)}.app.dark .add-page .selected-food-nutrients{color:var(--text-muted)!important}.app.dark .add-page .selected-food-weights>div>span:last-child{color:var(--primary)!important}.app.dark .add-page .mode-toggle-btn.active{color:#fff;border-color:var(--primary);background:#006c49}}.app .add-page .selected-food-nutrients{font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:6px 16px;margin-top:10px;font-weight:600;line-height:1.6;display:flex;font-size:14px!important}.app .add-page .selected-food-nutrients>span{white-space:nowrap}.app .add-page .selected-food-nutrients>span,.app .add-page .meal-total .stat strong{color:var(--nutrient-tone)}:root{--font-body:"Plus Jakarta Sans", "Microsoft YaHei", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-display:"Space Grotesk", "Plus Jakarta Sans", "Microsoft YaHei", sans-serif;--bg-app:#faf8ff;--surface:#fff;--surface-subtle:#f2f3ff;--surface-container-low:#f2f3ff;--surface-container:#eaedff;--surface-container-high:#e2e7ff;--surface-container-highest:#dae2fd;--text-main:#131b2e;--text-muted:#3c4a42;--text-tertiary:#6c7a71;--border-light:#bbcabf38;--border-subtle:#bbcabf;--primary:#006c49;--primary-hover:#00563a;--primary-tint:#e0f5eb;--primary-container:#10b981;--secondary:#acf847;--secondary-text:#102000;--macro-carbs:#3b82f6;--macro-protein:#10b981;--macro-fat:#f59e0b;--color-danger:#ba1a1a;--color-danger-bg:#ffdad6;--radius-card:16px;--radius-card-sm:12px;--radius-pill:9999px;--shadow-sm:0 1px 4px #0f172a08;--shadow-card:0 1px 6px #0f172a0a;--shadow-modal:0 20px 48px #11182729;font-family:var(--font-body);color:var(--text-main);background:var(--bg-app);font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{background:var(--bg-app);min-width:320px;color:var(--text-main);margin:0;font-size:14px;line-height:1.5}button,input,select,textarea{font-family:inherit;font-size:inherit}button{color:inherit;cursor:pointer;background:0 0;border:0;transition:background-color .15s,opacity .15s,box-shadow .15s}.app{background:var(--bg-app);min-height:100vh;color:var(--text-main);transition:filter .2s}.app.dark{filter:invert(.92)hue-rotate(180deg);background:#e5e5e5}.site-header{z-index:30;border-bottom:1px solid var(--border-subtle);-webkit-backdrop-filter:blur(16px);background:#faf8ffeb;height:64px;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:20px;max-width:1440px;height:100%;margin:0 auto;padding:0 32px;display:flex}.brand-nav{align-items:center;gap:28px;display:flex}.brand{white-space:nowrap;color:var(--text-main);align-items:center;gap:10px;text-decoration:none;display:flex}.brand>span{background:var(--primary);color:#fff;width:36px;height:36px;font-family:var(--font-display);border-radius:12px;place-items:center;font-size:16px;font-weight:700;display:grid;box-shadow:0 1px 4px #006c4929}.brand strong{font-family:var(--font-display);letter-spacing:-.02em;font-size:18px;font-weight:600}.brand small{border-radius:var(--radius-pill);background:var(--secondary);color:var(--secondary-text);letter-spacing:.04em;text-transform:uppercase;padding:3px 7px;font-size:10px;font-weight:700}.header-actions{align-items:center;gap:12px;min-width:0;display:flex}.demo-notice{text-overflow:ellipsis;white-space:nowrap;max-width:260px;color:var(--text-muted);font-size:12px;overflow:hidden}.state-control{border:1px solid var(--border-subtle);background:var(--surface);color:var(--text-muted);box-shadow:var(--shadow-sm);border-radius:10px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;display:flex}.state-control select{color:var(--text-main);cursor:pointer;background:0 0;border:0;outline:0;font-size:12px}.today{border:1px solid var(--border-subtle);border-radius:var(--radius-pill);background:var(--surface);color:var(--text-muted);box-shadow:var(--shadow-sm);padding:6px 14px;font-size:12px;font-weight:500}.round-button,.avatar-button{background:var(--surface-container-low);width:36px;height:36px;color:var(--text-muted);border-radius:50%;place-items:center;font-size:13px;transition:all .15s;display:grid}.round-button:hover{background:var(--surface-container);color:var(--text-main)}.avatar-button{background:var(--primary);color:#fff;font-weight:700}.page-shell{max-width:1440px;margin:0 auto;padding:28px 32px 80px}footer{max-width:1440px;color:var(--text-tertiary);border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;margin:0 auto;padding:32px;font-size:12px;display:flex}.card{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.primary{border-radius:var(--radius-pill)!important;background:var(--primary)!important;color:#fff!important;padding:10px 22px!important;font-size:14px!important;font-weight:600!important;box-shadow:0 4px 12px #006c4933!important}.primary:hover:not(:disabled){background:var(--primary-hover)!important;box-shadow:0 6px 16px #006c4947!important}.primary:disabled{opacity:.45;cursor:not-allowed;box-shadow:none!important}.section-title{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.section-title h2{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text-main);margin:0;font-size:18px;font-weight:700}.section-title span{color:var(--text-tertiary);font-size:12px}.section-title button{background:var(--primary-tint);color:var(--primary);border-radius:8px;padding:6px 12px;font-size:12px;font-weight:600}.section-title button:hover{background:#cbefdd}.page-title{justify-content:space-between;align-items:flex-start;margin:8px 0 24px;display:flex}.page-title h1{font-family:var(--font-display);letter-spacing:-.03em;color:var(--text-main);margin:0;font-size:32px;font-weight:700}.page-title p{color:var(--text-muted);margin:6px 0 0;font-size:13px}.date-switch{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px;display:flex}.date-switch-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.ai-record-btn{border:1px solid var(--primary-container);background:var(--surface);color:var(--primary);box-shadow:var(--shadow-sm);cursor:pointer;border-radius:10px;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.ai-record-btn:hover{background:var(--primary-tint);border-color:var(--primary);color:var(--primary-hover)}.date-switch button,.date-control button{background:var(--surface);border:1px solid var(--border-subtle);color:var(--text-muted);box-shadow:var(--shadow-sm);border-radius:10px;padding:8px 14px;font-size:12px;font-weight:500}.date-switch button:hover,.date-control button:hover{background:var(--surface-container-low);color:var(--text-main)}.date-switch-picker{border:1px solid var(--border-subtle);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:10px;align-items:center;gap:6px;padding:7px 10px;display:inline-flex;position:relative}.date-switch-picker input{width:136px;color:var(--text-main);font:inherit;cursor:pointer;background:0 0;border:0;font-size:14px;font-weight:600}.date-switch-picker .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.date-switch-picker small{color:var(--primary);font-size:11px;font-weight:600}.dashboard-top,.dashboard-main{grid-template-columns:minmax(0,2fr) minmax(340px,1fr);gap:24px;display:grid}.dashboard-main{margin-top:24px}.nutrition-card,.weight-card,.sleep-card,.intake-card,.heat-card,.personal-card{padding:24px}.nutrition-layout{align-items:center;gap:36px;display:flex}.calorie-ring{isolation:isolate;background:conic-gradient(var(--macro-protein) var(--intake-progress,0%), var(--surface-container-low,#e3f5ec) 0);border:0;border-radius:50%;flex-direction:column;flex:0 0 154px;justify-content:center;align-items:center;width:154px;height:154px;display:flex;position:relative;box-shadow:inset 0 0 0 4px #f7fbf9}.calorie-ring:before{content:"";background:var(--surface,#fff);z-index:-1;border-radius:50%;position:absolute;inset:14px}.calorie-ring strong{font-family:var(--font-display);color:var(--text-main);font-variant-numeric:tabular-nums;font-size:28px;font-weight:700;line-height:1.1}.calorie-ring span{color:var(--text-muted);font-size:12px;font-weight:500}.calorie-ring small{color:var(--text-tertiary);margin-top:6px;font-size:11px}.macro-stack{flex:1;gap:16px;min-width:0;display:grid}.macro{min-width:0}.macro>div:first-child,.macro-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:6px;display:flex}.macro strong{color:var(--text-main);font-size:14px;font-weight:600}.macro span,.macro small{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:12px}.macro-rest{color:var(--primary);align-items:baseline;gap:3px;font-size:13px;font-weight:500;line-height:1;display:inline-flex}.macro-rest-label{color:var(--text-muted);font-size:12px;font-weight:500}.macro .macro-rest-num{font-family:var(--font-display);color:var(--primary);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:18px;font-weight:700}.macro-current{align-items:baseline;gap:7px;display:inline-flex}.macro-current-label{color:var(--text-muted);font-size:12px;font-weight:500}.macro .macro-current-num{color:var(--primary);font-family:var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:18px;font-weight:700}.macro-current-num small{color:var(--text-muted);margin-left:2px;font-family:inherit;font-size:12px;font-weight:500}.macro-goal{color:var(--text-tertiary);white-space:nowrap;font-size:11px}.macro-rest-unit{color:var(--text-muted);font-size:12px;font-weight:500}.track{border-radius:var(--radius-pill);background:var(--surface-container);height:8px;overflow:hidden}.track i{border-radius:var(--radius-pill);height:100%;transition:width .3s;display:block}.track.unavailable{background:repeating-linear-gradient(135deg, var(--surface-container), var(--surface-container) 5px, var(--surface-container-low) 5px, var(--surface-container-low) 10px)}.green{background:var(--macro-protein)}.blue{background:var(--macro-carbs)}.orange{background:var(--macro-fat)}.macro small{margin-top:5px;font-size:11px;display:block}.vital-stack{gap:20px;display:grid}.weight-card,.sleep-card{min-height:0}.weight-content,.sleep-summary{justify-content:space-between;align-items:center;gap:16px;display:flex}.weight-content>div:first-child{gap:4px;display:grid}.weight-content span{color:var(--text-muted);font-size:12px}.weight-note small{color:var(--text-tertiary);margin-top:5px;font-size:11px;display:block}.weight-content strong,.sleep-summary>strong{font-family:var(--font-display);color:var(--text-main);font-variant-numeric:tabular-nums;font-size:28px;font-weight:700}.weight-content strong small,.sleep-summary strong small{font-family:var(--font-body);color:var(--text-muted);margin-left:2px;font-size:13px;font-weight:500}.weight-note{background:#f0fdf4;border:1px solid #dcfce7;border-radius:12px;gap:4px;padding:12px 16px;display:grid}.weight-note b{color:#166534;font-size:12px;font-weight:600}.weight-note span{color:#15803d;font-size:11px}.weight-card .weight-note{border-radius:10px;align-items:center;gap:10px;display:flex}.sleep-card .sleep-summary>strong.sleep-score-tier-best{color:#006c49}.sleep-card .sleep-summary>strong.sleep-score-tier-good{color:#10b981}.sleep-card .sleep-summary>strong.sleep-score-tier-fair{color:#b45309}.sleep-card .sleep-summary>strong.sleep-score-tier-poor{color:#ba1a1a}.weight-comparison-dialog{max-width:420px}.weight-comparison-dialog h2{color:var(--text-main);margin:0 0 20px;font-size:18px}.weight-comparison-dialog label{color:var(--text-muted);gap:8px;font-size:13px;display:grid}.weight-comparison-dialog input{border:1px solid var(--border-subtle);background:var(--surface);width:100%;min-height:42px;color:var(--text-main);border-radius:10px;padding:0 12px}.weight-comparison-dialog input:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.sleep-summary span{background:var(--surface-container-low);color:var(--text-muted);border-radius:10px;padding:8px 12px;font-size:12px;font-weight:500}.meal-groups{gap:16px;display:grid}.meal-group{border-radius:var(--radius-card-sm);background:var(--surface-subtle);border-left:4px solid var(--macro-protein);padding:16px 18px}.meal-group.tone-1{border-color:var(--macro-carbs)}.meal-group.tone-2{border-color:#8b5cf6}.meal-group.tone-3{border-color:#84cc16}.meal-heading{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding-bottom:10px;display:flex}.meal-heading div{align-items:center;gap:10px;display:flex}.meal-heading strong{color:var(--text-main);font-size:14px;font-weight:600}.meal-heading small,.meal-heading>b{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:12px}.meal-food{color:var(--text-muted);font-variant-numeric:tabular-nums;border-bottom:1px solid #bbcabf47;grid-template-columns:1.6fr repeat(3,.6fr) .8fr;align-items:center;gap:10px;padding:10px 4px;font-size:12px;display:grid}.meal-food-interactive{cursor:pointer;touch-action:pan-y;-webkit-user-select:none;user-select:none}.meal-food-interactive:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:6px}.meal-food:last-child{border-bottom:0}.meal-food>span:first-child{gap:2px;display:grid}.meal-food strong{color:var(--text-main);font-size:13px;font-weight:600}.meal-food small{color:var(--text-tertiary);font-size:11px}.meal-food>b{text-align:right;color:var(--text-main);font-weight:600}.dashboard-side{align-content:start;gap:20px;display:grid}.week-labels,.heat-grid{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.week-labels{color:var(--text-tertiary);text-align:center;margin-bottom:8px;font-size:11px;font-weight:500}.heat-grid span{background:var(--surface-container-low);height:32px;color:var(--text-muted);font-variant-numeric:tabular-nums;border-radius:8px;place-items:center;font-size:11px;display:grid}.heat-grid .level-1{color:#065f46;background:#d1fae5;font-weight:600}.heat-grid .level-2{color:#064e3b;background:#a7f3d0;font-weight:600}.heat-grid .level-3{color:#fff;background:#34d399;font-weight:600}.heat-grid .level-4{color:#fff;background:#059669;font-weight:600}.heat-legend{color:var(--text-tertiary);justify-content:flex-end;align-items:center;gap:6px;margin-top:14px;font-size:11px;display:flex}.heat-legend i{background:#d1fae5;border-radius:3px;width:12px;height:12px}.heat-legend i:nth-of-type(2){background:#a7f3d0}.heat-legend i:nth-of-type(3){background:#34d399}.heat-legend i:nth-of-type(4){background:#059669}.dashboard-heatmap-card{padding:22px}.heatmap-month-control{color:var(--text-main);align-items:center;gap:8px;display:inline-flex}.heatmap-month-control strong{text-align:center;font-variant-numeric:tabular-nums;min-width:88px;font-size:13px}.heatmap-month-control button{border:1px solid var(--border-subtle);background:var(--surface);width:28px;height:28px;color:var(--text-muted);border-radius:8px;place-items:center;padding:0;font-size:18px;line-height:1;display:grid}.heatmap-calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;display:grid}.heatmap-weekday{color:var(--text-tertiary);text-align:center;padding:2px 0 5px;font-size:11px}.heatmap-day{background:var(--surface-container-low);min-width:0;min-height:42px;color:var(--text-muted);font-variant-numeric:tabular-nums;cursor:pointer;border:1px solid #0000;border-radius:8px;align-content:center;justify-items:center;gap:2px;padding:3px 1px;font-size:11px;display:grid}.heatmap-day small{color:inherit;font-size:9px;line-height:1}.heatmap-day:hover{border-color:var(--primary)}.heatmap-day.selected{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}.heatmap-day.empty{cursor:default;background:0 0}.heatmap-day.level-1,.calorie-legend i.level-1{color:#103d2b;background:#81bf9c}.heatmap-day.level-2,.calorie-legend i.level-2{color:#fff;background:#24835e}.heatmap-day.level-3,.calorie-legend i.level-3{color:#fff;background:#076b4d}.heatmap-day.level-4,.calorie-legend i.level-4{color:#fff;background:#77773a}.heatmap-day.level-5,.calorie-legend i.level-5{color:#fff;background:#946f36}.heatmap-day.level-6,.calorie-legend i.level-6{color:#fff;background:#805631}.dashboard-heatmap-card .section-title{flex-wrap:wrap;gap:10px}.dashboard-heatmap-card h2{font-size:16px}.heatmap-day{border-radius:10px;gap:5px;min-height:50px;font-size:13px;font-weight:700}.heatmap-day small{font-size:10px;font-weight:600}.heatmap-day.selected{outline:2px solid var(--primary);outline-offset:2px;box-shadow:inset 0 0 0 2px var(--surface)}.heatmap-scale-note{color:var(--text-muted);text-align:right;margin:8px 0 0;font-size:10px;line-height:1.6}.calorie-legend{margin-top:16px}.nutrition-card .live-calorie-ring{isolation:isolate;width:180px;height:180px;box-shadow:none;border:0;flex-basis:180px;gap:4px;position:relative}.live-calorie-ring:before{content:"";background:var(--surface);z-index:-1;border-radius:50%;position:absolute;inset:14px}.live-calorie-ring>strong{letter-spacing:-1px;font-size:30px}.live-calorie-ring>span{font-size:11px;font-weight:600}.live-calorie-ring .calorie-remaining{background:var(--surface-container-low);color:var(--primary);border-radius:20px;padding:4px 9px;font-size:10px;font-weight:700}.nutrition-card .nutrition-layout{gap:26px}.nutrition-card .macro-stack{gap:12px}.macro-panel{background:var(--surface-container-low);border-radius:18px;padding:15px 17px}.macro-panel .macro-header{flex-wrap:nowrap;align-items:center;margin-bottom:11px}.macro-panel .macro-header>strong{align-items:center;gap:7px;font-size:12px;font-weight:700;display:inline-flex}.macro-panel .macro-header>strong:before{content:"";background:var(--macro-tone);border-radius:50%;width:8px;height:8px}.macro-blue{--macro-tone:var(--macro-carbs)}.macro-green{--macro-tone:var(--macro-protein)}.macro-orange{--macro-tone:var(--macro-fat)}.macro-panel .macro-remaining{color:var(--macro-tone);white-space:nowrap;font-size:11px;font-weight:600}.macro-panel .macro-remaining b{font-size:17px;font-weight:750}.macro-panel .track{background:var(--surface-container-high);height:10px}.macro-panel .macro-footer{justify-content:space-between;gap:6px;margin-top:9px;display:flex}.macro-panel .macro-footer span{color:var(--text-muted);font-size:10px;font-weight:600}.dashboard-top .weight-card{background:linear-gradient(145deg, var(--surface) 15%, var(--surface-container-low) 100%);border-top:4px solid var(--primary);flex-direction:column;padding:16px 20px;display:flex}.weight-card .weight-badge{color:var(--primary);background:var(--surface-container-low);border-radius:20px;padding:6px 10px;font-size:11px;font-weight:700}.weight-card .weight-content{flex-direction:row;flex:1;justify-content:space-between;align-items:center;gap:12px}.weight-card .weight-content>div:first-child{gap:10px}.weight-card .weight-content>div:first-child>span{font-size:13px;font-weight:650}.weight-card .weight-content strong{letter-spacing:-1px;color:var(--primary);font-size:30px;font-weight:750;line-height:1}.weight-card .weight-content strong small{letter-spacing:0;font-size:13px;font-weight:600}.weight-card .weight-note{background:var(--surface);border:1px solid var(--border-subtle);cursor:pointer;text-align:left;min-width:0;padding:8px 10px}.weight-card .weight-note b{white-space:nowrap}.weight-card .weight-note span{color:var(--text-muted);white-space:nowrap;font-size:10px;font-weight:650}.intake-card .meal-macro{font-size:12px;font-weight:650}.intake-card .meal-carbs{color:#2563eb}.intake-card .meal-protein{color:#07825d}.intake-card .meal-fat{color:#a9680c}.weight-axis-labels{min-height:28px;position:relative}.weight-axis-labels span{white-space:nowrap;font-size:10px}.weight-period-note{color:var(--text-muted);margin:10px 0 16px;font-size:11px;line-height:1.6}.personal-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.personal-grid .stat strong{white-space:nowrap}.personal-grid .stat strong small{font-family:var(--font-body);font-weight:400}.heat-card .section-title-actions{gap:6px}.heat-card .section-title-actions button{width:26px;height:26px;padding:0;font-size:20px;line-height:1}.heat-card .section-title h2{font-size:16px}.stat{gap:4px;display:grid}.personal-grid .stat,.plan-kpis .stat,.weight-kpis .stat,.energy-row .stat{border-radius:var(--radius-card-sm);background:var(--surface-subtle);border:1px solid var(--border-light);padding:14px 16px}.stat span{color:var(--text-muted);font-size:12px;font-weight:500}.stat strong{font-family:var(--font-display);color:var(--text-main);font-variant-numeric:tabular-nums;font-size:20px;font-weight:700}.stat small{color:var(--text-tertiary);font-size:11px}.summary-grid{grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:24px;display:grid}.analysis-summary-card{box-sizing:border-box;min-height:164px;padding:22px 24px}.analysis-summary-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.analysis-summary-head>span{color:var(--text-main);font-size:13px;font-weight:650}.summary-icon{border-radius:50%;flex:0 0 38px;place-items:center;width:38px;height:38px;display:grid}.summary-icon svg{width:23px;height:23px}.summary-icon-calories{color:#008a62;background:#c8fae7}.summary-icon-weight{color:#548b00;background:#dafa9a;border-radius:12px}.summary-icon-sleep{color:#0564d8;background:#e7edff}.summary-icon-macros{color:#223a5a;background:#eceeff}.analysis-summary-card>strong{color:#101d35;font-family:var(--font-display);font-variant-numeric:tabular-nums;margin:17px 0 7px;font-size:36px;font-weight:700;line-height:1.12;display:block}.analysis-summary-card>strong small{color:var(--text-main);font-family:var(--font-body);margin-left:6px;font-size:13px;font-weight:600}.analysis-summary-card>p{color:#008263;margin:0;font-size:11px;font-weight:600;line-height:1.5}.analysis-summary-card>p.summary-alert{color:#c34343}.analysis-summary-card>p.summary-time-lines{color:var(--text-main);gap:3px;display:grid}.summary-time-lines span{justify-content:space-between;gap:12px;display:flex}.summary-time-lines strong{color:#075bd4;font-variant-numeric:tabular-nums;font-size:13px}.macro-summary-card{flex-direction:column;display:flex}.macro-summary-caption{color:var(--text-muted);margin-top:5px;font-size:11px}.macro-summary-labels,.macro-summary-grams{justify-content:space-between;align-items:center;gap:8px;display:flex}.macro-summary-labels{color:var(--text-main);margin:17px 0 12px;font-size:11px;font-weight:650}.macro-summary-labels>span{white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.macro-dot{border-radius:50%;flex:0 0 9px;width:9px;height:9px;display:inline-block}.macro-dot.carbs,.macro-summary-bar .carbs{background:var(--macro-carbs)}.macro-dot.protein,.macro-summary-bar .protein{background:var(--macro-protein)}.macro-dot.fat,.macro-summary-bar .fat{background:var(--macro-fat)}.macro-summary-bar{background:var(--surface-container-low);border-radius:99px;width:100%;height:18px;display:flex;overflow:hidden}.macro-summary-grams{color:var(--text-muted);font-variant-numeric:tabular-nums;margin-top:8px;font-size:10px}.summary-card{padding:22px}.summary-card>span{color:var(--text-muted);font-size:13px;font-weight:500}.summary-card>strong{font-family:var(--font-display);color:var(--text-main);font-variant-numeric:tabular-nums;margin:10px 0 6px;font-size:26px;font-weight:700;display:block}.summary-card>strong small{color:var(--text-muted);font-family:var(--font-body);margin-left:6px;font-size:12px;font-weight:500}.summary-card p{color:#059669;margin:0;font-size:12px;font-weight:500}.chart-card{margin-bottom:24px;padding:24px}.chart-head,.chart-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.chart-head .section-title{margin:0}.chart-controls{justify-content:flex-end}.segmented{background:var(--surface-container-low);border:1px solid var(--border-subtle);border-radius:12px;gap:4px;padding:4px;display:flex}.segmented button{color:var(--text-muted);border-radius:8px;padding:6px 14px;font-size:12px;font-weight:500}.segmented button.selected{color:var(--primary);background:#fff;font-weight:700;box-shadow:0 2px 6px #0000000f}.legend{color:var(--text-muted);align-items:center;gap:20px;margin:20px 0 12px;font-size:12px;display:flex}.legend span:before{content:"";background:currentColor;border-radius:3px;width:9px;height:9px;margin-right:6px;display:inline-block}.legend .green{color:var(--macro-protein);background:0 0}.legend .blue{color:var(--macro-carbs);background:0 0}.legend .orange{color:var(--macro-fat);background:0 0}.legend em{color:#dc2626;margin-left:auto;font-style:normal;font-weight:500}.bar-chart{border-bottom:1px solid var(--border-subtle);background:repeating-linear-gradient(to bottom, transparent 0, transparent 55px, var(--surface-container-high) 56px);justify-content:space-around;align-items:flex-end;height:270px;padding:28px 24px 0;display:flex}.bar-column{cursor:pointer;flex-direction:column;justify-content:flex-end;align-items:center;width:64px;height:100%;display:flex}.bar-column:hover .bar-total{color:var(--primary);font-weight:700}.bar-column:hover .stack-bar{filter:brightness(1.05);opacity:.94}.bar-total{color:var(--text-muted);font-variant-numeric:tabular-nums;margin-bottom:6px;font-size:11px;font-weight:600;transition:color .15s}.stack-bar{border-radius:8px 8px 0 0;flex-direction:column-reverse;width:100%;transition:filter .15s,opacity .15s;display:flex;overflow:hidden}.stack-bar i{background:var(--macro-protein);height:35%}.stack-bar i:nth-child(2){background:var(--macro-carbs);height:42%}.stack-bar i:nth-child(3){background:var(--macro-fat);height:23%}.stack-bar i.bar-seg-fat{background:var(--macro-fat)}.stack-bar i.bar-seg-pro{background:var(--macro-protein)}.stack-bar i.bar-seg-carb{background:var(--macro-carbs)}.chart-tooltip{pointer-events:none;z-index:1000;background:var(--surface);color:var(--text-main);border:1px solid var(--border-subtle);border-radius:12px;min-width:180px;padding:10px 14px;font-size:12px;animation:.12s ease-out tooltipFadeIn;position:fixed;box-shadow:0 8px 24px #0f172a24}@keyframes tooltipFadeIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.chart-tooltip-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding-bottom:6px;display:flex}.chart-tooltip-header strong{color:var(--text-muted);font-size:12px}.chart-tooltip-total{font-family:var(--font-display);color:var(--text-main);font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}.chart-tooltip-items{flex-direction:column;gap:5px;display:flex}.calorie-tooltip{min-width:194px}.chart-tooltip-row{justify-content:space-between;align-items:center;gap:12px;font-size:12px;display:flex}.chart-tooltip-row .label{color:var(--text-muted);align-items:center;gap:6px;display:flex}.chart-tooltip-row .dot{border-radius:2px;width:8px;height:8px;display:inline-block}.chart-tooltip-row .dot.carbs{background:var(--macro-carbs)}.chart-tooltip-row .dot.protein{background:var(--macro-protein)}.chart-tooltip-row .dot.fat{background:var(--macro-fat)}.chart-tooltip-row .val{font-variant-numeric:tabular-nums;color:var(--text-main);font-weight:600}.chart-tooltip-row .kcal-sub{color:var(--text-tertiary);margin-left:3px;font-size:11px}.weight-tooltip-val{align-items:baseline;gap:6px;margin:4px 0 2px;display:flex}.weight-tooltip-val .label{color:var(--text-muted);font-size:12px}.weight-tooltip-val strong{font-family:var(--font-display);color:var(--primary);font-variant-numeric:tabular-nums;font-size:22px;font-weight:700}.weight-tooltip-val small{color:var(--text-muted);font-size:12px}.weight-tooltip-diff{background:var(--surface-container-high);color:var(--primary);border-radius:9999px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.bar-column small{color:var(--text-tertiary);margin-top:8px;font-size:11px}.weight-kpis{grid-template-columns:repeat(4,1fr);gap:14px;margin:20px 0;display:grid}.line-chart{border-radius:var(--radius-card-sm);background:linear-gradient(var(--surface), var(--surface-container-low));border:1px solid var(--border-light);padding:8px 28px 0}.line-chart svg{width:100%;height:200px;display:block}.axis-labels,.sleep-axis{color:var(--text-tertiary);justify-content:space-between;padding-top:6px;font-size:11px;display:flex}.sleep-axis{scrollbar-gutter:stable;grid-template-columns:55px minmax(0,1fr) 40px;gap:14px;margin:8px 0 14px;display:grid;overflow-y:hidden}.sleep-axis>div{grid-column:2;height:17px;position:relative}.sleep-axis span{white-space:nowrap;position:absolute;transform:translate(-50%)}.sleep-axis span:first-child{transform:none}.sleep-axis span:last-child{transform:translate(-100%)}.sleep-legend{background:var(--surface-container-low);color:var(--text-muted);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:8px 14px;font-size:11px;display:flex}.sleep-legend-rule{color:var(--text-main);font-weight:600}.sleep-legend-items{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.sleep-legend-item{align-items:center;gap:5px;display:flex}.sleep-legend-item i{border-radius:3px;width:10px;height:10px;display:inline-block}.sleep-legend-item i.tier-best{background:#006c49}.sleep-legend-item i.tier-good{background:#10b981}.sleep-legend-item i.tier-fair{background:#f59e0b}.sleep-legend-item i.tier-poor{background:#ba1a1a}.sleep-chart{overscroll-behavior-y:contain;scroll-snap-type:y mandatory;scrollbar-gutter:stable;gap:12px;height:296px;display:grid;overflow-y:auto}.sleep-week-page{scroll-snap-align:start;scroll-snap-stop:always;grid-template-rows:repeat(7,32px);gap:12px;height:296px;display:grid}.sleep-row{color:var(--text-muted);grid-template-columns:55px 1fr 40px;align-items:center;gap:14px;font-size:12px;display:grid}.sleep-row>div{background:var(--surface-container-low);border-radius:8px;height:32px}.sleep-row i{color:#fff;background:#10b981;border-radius:8px;justify-content:space-between;align-items:center;height:32px;padding:0 12px;font-size:11px;font-style:normal;font-weight:500;transition:filter .15s,transform .15s;display:flex}.sleep-row i:hover{filter:brightness(1.08)}.sleep-row i.best,.sleep-row i.tier-best{color:#fff;background:#006c49}.sleep-row i.good,.sleep-row i.tier-good{color:#fff;background:#10b981}.sleep-row i.fair,.sleep-row i.tier-fair{color:#131b2e;background:#f59e0b}.sleep-row i.poor,.sleep-row i.tier-poor{color:#fff;background:#ba1a1a}.sleep-row i.long{color:#fff;background:#2563eb}.sleep-row em{text-align:center;color:#059669;font-size:11px;font-style:normal;font-weight:700}.sleep-row em.tier-best{color:#006c49}.sleep-row em.tier-good{color:#10b981}.sleep-row em.tier-fair{color:#b45309}.sleep-row em.tier-poor{color:#ba1a1a}.food-layout{grid-template-columns:minmax(0,2fr) minmax(360px,1fr);align-items:start;gap:24px;display:grid}.food-layout>section,.food-rail,.food-table{min-width:0}.search-row{align-items:center;gap:12px;margin-bottom:16px;display:flex}.search-row input{border:1px solid var(--border-subtle);background:var(--surface);width:100%;min-width:0;height:46px;color:var(--text-main);box-shadow:var(--shadow-sm);border-radius:12px;outline:0;flex:auto;padding:0 16px;font-size:13px;transition:border-color .15s,box-shadow .15s}.search-row input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #006c491f}.search-row button{background:var(--surface-container-low);border:1px solid var(--border-subtle);color:var(--text-muted);white-space:nowrap;border-radius:10px;padding:10px 16px;font-size:12px;font-weight:600}.search-row button:hover:not(:disabled){background:var(--surface-container);color:var(--text-main)}.food-table{overflow:hidden}.food-head,.food-line{grid-template-columns:2fr repeat(4,.65fr) 1.2fr;align-items:center;gap:12px;display:grid}.food-head{background:var(--surface-subtle);color:var(--text-muted);border-bottom:1px solid var(--border-subtle);padding:14px 20px;font-size:12px;font-weight:600}.food-line{font-variant-numeric:tabular-nums;background:#fff;border-bottom:1px solid #bbcabf47;padding:14px 20px;font-size:13px;transition:background-color .15s}.food-line:nth-child(2n){background:var(--surface)}.food-line:hover{background:var(--primary-tint)}.food-line>span:first-child{align-items:center;gap:10px;min-width:0;display:flex}.food-line strong{min-width:0;color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.food-line small{border-radius:var(--radius-pill);background:var(--primary-tint);color:var(--primary);white-space:nowrap;padding:2px 8px;font-size:11px;font-weight:600}.red{color:#dc2626;font-weight:600}.blue-text{color:var(--macro-carbs);font-weight:600}.green-text{color:var(--macro-protein);font-weight:600}.orange-text{color:var(--macro-fat);font-weight:600}.pager{color:var(--text-muted);border-top:1px solid var(--border-subtle);background:var(--surface-subtle);justify-content:space-between;align-items:center;padding:14px 20px;font-size:12px;display:flex}.pager>div{align-items:center;gap:10px;display:flex}.pager button{border:1px solid var(--border-subtle);color:var(--text-main);background:#fff;border-radius:8px;padding:6px 14px;font-size:12px;font-weight:500}.pager button:hover:not(:disabled){background:var(--surface-container-low)}.pager button:disabled{opacity:.4;cursor:not-allowed}.food-rail{align-content:start;gap:20px;display:grid}.recipes,.plan-card{padding:22px}.recipe{background:var(--surface-subtle);border:1px solid var(--border-light);text-align:left;border-radius:12px;grid-template-columns:1fr auto;width:100%;margin-top:10px;padding:14px 16px;transition:all .15s;display:grid}.recipe:hover{background:#f0fdf4;border-color:#a7f3d0}.recipe strong{color:var(--text-main);font-size:13px;font-weight:600}.recipe small{color:var(--text-muted);grid-column:1;margin-top:4px;font-size:12px;display:block}.recipe span{color:var(--primary);grid-area:1/2/3;align-self:center;font-size:12px;font-weight:600}.status-pill{border-radius:var(--radius-pill);background:var(--secondary);color:var(--secondary-text);padding:4px 10px;font-size:11px;font-weight:700;display:inline-block}.plan-card h3{font-family:var(--font-display);color:var(--text-main);margin:14px 0 6px;font-size:16px;font-weight:700}.plan-card>p,.settings-card>p{color:var(--text-muted);margin:0 0 16px;font-size:12px}.plan-kpis{grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;display:grid}.inline-empty{text-align:center;color:var(--text-tertiary);padding:44px 20px;font-size:13px}.add-header{margin-bottom:24px;padding:22px 24px;position:relative}.add-title,.date-control,.meal-tabs{align-items:center;display:flex}.add-title{justify-content:space-between}.add-title>button{background:var(--surface-container-low);border:1px solid var(--border-subtle);color:var(--text-muted);border-radius:10px;padding:8px 14px;font-size:12px;font-weight:600}.add-title>div{flex:1;margin-left:14px}.add-title h1{font-family:var(--font-display);color:var(--text-main);margin:0;font-size:22px;font-weight:700}.add-title p{color:var(--text-muted);margin:4px 0 0;font-size:12px}.date-control{gap:10px}.date-control strong{color:var(--text-main);font-size:13px;font-weight:600}.meal-tabs{border-top:1px solid var(--border-subtle);justify-content:flex-end;gap:8px;margin-top:20px;padding-top:16px}.meal-tabs>span{color:var(--text-muted);margin-right:auto;font-size:13px;font-weight:500}.meal-tabs button{background:var(--surface-container-low);border:1px solid var(--border-subtle);color:var(--text-muted);border-radius:10px;align-items:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:600;display:flex}.meal-tabs button.active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 2px 8px #006c4940}.meal-tabs b{border-radius:var(--radius-pill);background:#ffffff4d;padding:2px 6px;font-size:11px}.add-layout{grid-template-columns:1fr 1fr;gap:24px;display:grid}.picker-card,.selected-card{padding:22px}.compact-food-head,.picker-list button,.selected-head,.selected-line{grid-template-columns:1.6fr repeat(4,.6fr);align-items:center;gap:10px;display:grid}.compact-food-head{color:var(--text-tertiary);text-transform:uppercase;padding:10px 14px;font-size:11px;font-weight:600}.picker-list{gap:8px;max-height:440px;padding-right:4px;display:grid;overflow-y:auto}.picker-list button{border:1px solid var(--border-light);background:var(--surface-subtle);text-align:left;font-variant-numeric:tabular-nums;border-radius:12px;padding:12px 14px;font-size:12px;transition:all .15s}.picker-list button:hover,.picker-list button.picked{background:#f0fdf4;border-color:#a7f3d0}.picker-list strong{color:var(--text-main);font-size:13px;font-weight:600}.dashed-button{border:1px dashed var(--primary);width:100%;color:var(--primary);background:#fff;border-radius:12px;margin-top:14px;padding:14px;font-size:13px;font-weight:600;transition:all .15s}.dashed-button:hover{background:var(--primary-tint)}.selected-title{align-items:center;gap:12px;margin-bottom:16px;display:flex}.selected-title h2{font-family:var(--font-display);margin:0;font-size:18px;font-weight:700}.selected-title span{border-radius:var(--radius-pill);background:var(--primary-tint);color:var(--primary);padding:4px 10px;font-size:12px;font-weight:600}.selected-title button{color:var(--color-danger);margin-left:auto;font-size:12px;font-weight:600}.selected-head,.selected-line{grid-template-columns:1.7fr repeat(4,.55fr) .5fr}.selected-head{color:var(--text-tertiary);border-bottom:1px solid var(--border-subtle);padding:10px 8px;font-size:11px;font-weight:600}.selected-line{font-variant-numeric:tabular-nums;border-bottom:1px solid #bbcabf47;padding:12px 8px;font-size:12px}.selected-line>span:first-child{gap:4px;display:grid}.selected-line strong{font-size:13px;font-weight:600}.selected-line label{color:var(--text-muted);align-items:center;gap:4px;display:flex}.selected-line input{border:1px solid var(--border-subtle);border-radius:6px;width:60px;padding:4px 6px;font-size:12px}.selected-line button{color:var(--color-danger);font-size:12px;font-weight:500}.meal-total{border-radius:var(--radius-card-sm);background:#f0fdf4;border:1px solid #dcfce7;grid-template-columns:1.5fr repeat(4,.7fr);align-items:center;gap:10px;margin-top:18px;padding:16px 18px;display:grid}.meal-total>div:first-child{gap:4px;display:grid}.meal-total>div:first-child strong{color:#166534;font-size:13px}.meal-total>div:first-child span{color:#15803d;font-size:11px}.meal-total .stat strong{font-size:16px}.save-bar{border-radius:var(--radius-card);border:1px solid var(--border-light);box-shadow:var(--shadow-card);background:#fff;justify-content:flex-end;gap:12px;margin-top:24px;padding:18px 24px;display:flex}.save-bar>button:first-child{border-radius:var(--radius-pill);background:var(--surface-container-low);border:1px solid var(--border-subtle);color:var(--text-muted);padding:10px 22px;font-size:13px;font-weight:600}.settings-layout{grid-template-columns:minmax(0,1.4fr) minmax(340px,1fr);gap:24px;display:grid}.settings-left,.settings-right{align-content:start;gap:24px;display:grid}.settings-card{padding:24px}.profile-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.choice-row{background:var(--surface-container-low);border:1px solid var(--border-subtle);border-radius:12px;gap:6px;margin-top:8px;padding:4px;display:flex}.choice-row button{color:var(--text-muted);border-radius:8px;flex:1;padding:8px;font-size:12px;font-weight:500}.choice-row button.selected{color:var(--primary);background:#fff;font-weight:700;box-shadow:0 2px 6px #0000000f}.subheading{color:var(--text-main);margin:22px 0 12px;font-size:14px;font-weight:600}.activity-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.activity-grid button{border:1px solid var(--border-light);text-align:left;background:var(--surface-subtle);border-radius:12px;gap:4px;padding:14px 16px;transition:all .15s;display:grid;position:relative}.activity-grid button:hover{background:#fff;border-color:#cbd5e1}.activity-grid button.selected{background:#f0fdf4;border-color:#34d399}.activity-grid strong{color:var(--text-main);font-size:13px;font-weight:600}.activity-grid span{color:var(--text-muted);font-size:11px}.activity-grid b{color:var(--primary);font-size:11px;font-weight:700;position:absolute;top:12px;right:12px}.energy-row{grid-template-columns:1fr 1fr auto;align-items:stretch;gap:12px;margin-top:18px;display:grid}.energy-row>button{background:var(--primary-tint);color:var(--primary);border:1px solid #006c4926;border-radius:12px;padding:0 16px;font-size:12px;font-weight:600}.ratio-head{justify-content:space-between;align-items:center;display:flex}.ratio-head .section-title{margin:0}.ratio-ok,.ratio-error{border-radius:var(--radius-pill);padding:4px 10px;font-size:11px;font-weight:600}.ratio-ok{color:#166534;background:#dcfce7}.ratio-error{color:#991b1b;background:#fee2e2}.target-input{background:var(--surface-subtle);border:1px solid var(--border-light);border-radius:12px;grid-template-columns:1fr 120px auto;align-items:center;gap:12px;margin:18px 0;padding:14px 16px;font-size:13px;font-weight:500;display:grid!important}.target-input input{border:1px solid var(--border-subtle);border-radius:8px;height:38px;margin:0;padding:0 10px;font-size:14px}.target-input span{color:var(--text-muted);font-size:12px}.range-row{margin-top:16px;display:block;position:relative}.range-row>span{justify-content:space-between;align-items:center;margin-bottom:6px;font-size:13px;display:flex}.range-row input{border-radius:var(--radius-pill);background:var(--surface-container);cursor:pointer;outline:none;width:calc(100% - 50px);height:6px}.range-row>small{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:12px;position:absolute;bottom:0;right:0}.export-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.export-grid button{background:var(--surface-subtle);border:1px solid var(--border-light);text-align:left;border-radius:12px;gap:4px;padding:14px 16px;transition:all .15s;display:grid}.export-grid button:hover{background:#fff;border-color:#cbd5e1}.export-grid strong{color:var(--text-main);font-size:13px;font-weight:600}.export-grid span{color:var(--text-muted);font-size:11px}.overwrite{color:var(--text-muted);align-items:center;gap:8px;margin:16px 0 10px;font-size:12px;display:flex!important}.drop-zone{border:1px dashed var(--primary);width:100%;color:var(--primary);text-align:center;background:#fff;border-radius:14px;gap:4px;padding:28px;transition:all .15s;display:grid}.drop-zone:hover{background:var(--primary-tint)}.drop-zone strong{font-size:13px;font-weight:600}.drop-zone span{color:var(--text-muted);font-size:11px}.theme-row{margin:8px 0 18px}.select-label{color:var(--text-muted);margin-top:16px;font-size:12px;font-weight:500;display:block}.select-label select{border:1px solid var(--border-subtle);width:100%;height:42px;color:var(--text-main);background:#fff;border-radius:10px;margin-top:6px;padding:0 12px;font-size:13px;display:block}.modal-backdrop{z-index:60;-webkit-backdrop-filter:blur(6px);background:#11182773;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.meal-delete-confirm-backdrop{z-index:70}.meal-delete-confirm h2{color:var(--text-main);margin:0;font-size:18px}.meal-delete-confirm>p{color:var(--text-muted);margin:12px 0 20px;line-height:1.6}.modal{width:min(580px,100%);box-shadow:var(--shadow-modal);background:#fff;padding:28px}.custom-food-form label,.profile-grid label,.settings-card>label{color:var(--text-muted);font-size:12px;font-weight:500;display:block}.custom-food-form input,.profile-grid input{border:1px solid var(--border-subtle);width:100%;height:42px;color:var(--text-main);background:#fff;border-radius:10px;outline:0;margin-top:6px;padding:0 12px;font-size:13px;transition:border-color .15s;display:block}.custom-food-form input:focus,.profile-grid input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #006c491f}.form-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px;display:grid}.modal-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.modal-actions button{background:var(--surface-container-low);border:1px solid var(--border-subtle);color:var(--text-muted);border-radius:10px;padding:10px 18px;font-size:13px;font-weight:600}.modal-actions button:hover{background:var(--surface-container);color:var(--text-main)}.state-card{border:1px solid var(--border-light);border-radius:var(--radius-card);text-align:center;background:#fff;flex-direction:column;justify-content:center;align-items:center;min-height:500px;padding:48px;display:flex}.state-card h2{font-family:var(--font-display);margin:18px 0 8px;font-size:22px;font-weight:700}.state-card p{color:var(--text-muted);max-width:380px;font-size:13px}.state-card button{border-radius:var(--radius-pill);background:var(--primary);color:#fff;margin-top:18px;padding:10px 22px;font-size:13px;font-weight:600}.state-mark{background:var(--primary-tint);width:52px;height:52px;color:var(--primary);font-family:var(--font-display);border-radius:50%;place-items:center;font-size:24px;font-weight:700;display:grid}.state-card.error .state-mark{color:#dc2626;background:#fee2e2}.spinner{border:4px solid #d1fae5;border-top-color:var(--primary);border-radius:50%;width:48px;height:48px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.demo-mode{border-radius:var(--radius-pill);color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0;padding:6px 12px;font-size:12px;font-weight:600}.demo-mode.configured{color:#065f46;background:#ecfdf5;border-color:#6ee7b7}.demo-mode.unconfigured{color:#92400e;background:#fffbeb;border-color:#fde68a}.config-badge-btn{border-radius:var(--radius-pill);background:var(--surface-container-low);color:var(--text-muted);border:1px solid var(--border-subtle);cursor:pointer;padding:6px 14px;font-size:12px;font-weight:600;transition:all .15s}.config-badge-btn:hover{background:var(--surface-container);color:var(--text-main)}.config-summary-bar{background:var(--surface-subtle);color:var(--text-muted);border:1px solid var(--border-light);border-radius:12px;margin:12px 0 18px;padding:10px 16px;font-size:12px;line-height:1.6}.config-summary-bar code{background:var(--surface-container);color:var(--text-main);border-radius:4px;padding:2px 6px;font-family:monospace}.config-detail-card{border-radius:var(--radius-card-sm);background:var(--surface-subtle);border:1px solid var(--border-light);margin:16px 0;padding:14px 18px;font-size:13px}.config-item-row{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:8px 0;display:flex}.config-item-row:last-child{border-bottom:0}.text-ok{color:#059669;font-family:monospace;font-weight:600}.text-missing{color:#dc2626;font-family:monospace;font-weight:600}.config-guide-box{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px;margin-top:16px;padding:14px 18px;font-size:12px}.config-guide-box h4{color:#065f46;margin:0 0 8px;font-size:13px}.config-guide-box ol{margin:0;padding-left:20px;line-height:1.6}.notice-note{color:var(--text-tertiary);margin:8px 0 0;font-size:12px}.badge-pill{border-radius:var(--radius-pill);margin-left:6px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.badge-food{color:#0369a1;background:#e0f2fe}.badge-meal{color:#b45309;background:#fef3c7}.badge-metric{color:#15803d;background:#dcfce7}.action-btn-danger{background:var(--color-danger-bg);cursor:pointer;border:1px solid #fecaca;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .15s;color:var(--color-danger)!important}.action-btn-danger:hover{background:#fee2e2}.action-btn-restore{cursor:pointer;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .15s;color:#059669!important}.action-btn-restore:hover{background:#d1fae5}.action-btn-edit{cursor:pointer;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .15s;color:#2563eb!important}.action-btn-edit:hover{background:#dbeafe}.mode-toggle-btn{background:var(--surface-container-low);color:var(--text-muted);border:1px solid var(--border-subtle);cursor:pointer;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:500;transition:all .15s}.mode-toggle-btn.active{background:var(--primary);color:#fff;border-color:var(--primary);font-weight:600}.form-error{color:var(--color-danger);background:var(--color-danger-bg);border:1px solid #fecaca;border-radius:8px;margin:10px 0;padding:8px 12px;font-size:12px}.history-table{border-collapse:collapse;width:100%;margin-top:12px}.history-table th,.history-table td{text-align:left;border-bottom:1px solid var(--border-subtle);padding:10px 14px;font-size:12px}.history-table th{background:var(--surface-subtle);color:var(--text-muted);font-weight:600}.offline-banner{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:12px;margin:-8px 0 20px;padding:12px 18px;font-size:13px}.import-controls{gap:12px;margin-top:16px;display:grid}.import-controls label{color:var(--text-muted);gap:6px;font-size:12px;display:grid}.import-controls select{border:1px solid var(--border-subtle);background:#fff;border-radius:8px;height:38px;padding:0 10px}.import-report{color:#065f46;background:#f0fdf4;border:1px solid #a7f3d0;border-radius:12px;gap:8px;margin-top:14px;padding:14px 16px;font-size:12px;display:grid}.import-report small{color:#047857;line-height:1.5}.ai-form textarea{resize:vertical;border:1px solid var(--border-subtle);width:100%;color:var(--text-main);border-radius:10px;outline:0;padding:12px;font-size:13px;transition:border-color .15s;display:block}.ai-form textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #006c491f}.ai-draft{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px;gap:12px;margin-top:16px;padding:16px;font-size:12px;display:grid}.ai-draft p{color:#15803d;margin:6px 0 0;line-height:1.5}.ai-missing{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:10px 14px}.ai-draft .modal-actions{margin-top:0}.ai-dialog{width:92%;max-width:560px}.ai-dialog-header{align-items:center;gap:8px;display:flex}.ai-badge-icon{font-size:18px;line-height:1}.ai-gate-body{padding:10px 0 4px}.ai-gate-notice{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:12px;align-items:flex-start;gap:14px;margin-bottom:16px;padding:14px 16px;display:flex}.ai-gate-icon{font-size:22px;line-height:1}.ai-gate-notice strong{margin-bottom:4px;font-size:14px;display:block}.ai-gate-notice p{color:#b45309;margin:0;font-size:12px;line-height:1.5}.ai-gate-desc{color:var(--text-muted);margin-bottom:20px;font-size:13px;line-height:1.6}.ai-dialog-body{padding-top:6px}.ai-tip-text{color:var(--text-muted);margin-bottom:14px;font-size:13px;line-height:1.5}.ai-form-actions{justify-content:flex-end;gap:10px;margin-top:10px;display:flex}.ai-draft-card{color:#131b2e;background:#f0fdf4;border:1px solid #10b98159;border-radius:12px;margin-top:18px;padding:16px}.ai-draft-headline{justify-content:space-between;align-items:center;margin-bottom:12px;font-size:14px;display:flex}.ai-subhead{letter-spacing:.04em;color:var(--text-muted);text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:700;display:block}.ai-facts-section,.ai-actions-section{margin-top:12px}.ai-facts-list,.ai-actions-list{gap:6px;display:grid}.ai-fact-item{background:#ffffffd9;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:6px 10px;font-size:12px;display:flex}.certain-tag{color:#15803d;background:#dcfce7;border-radius:6px;padding:2px 6px;font-size:10px;font-weight:600}.uncertain-tag{color:#b45309;background:#fef3c7;border-radius:6px;padding:2px 6px;font-size:10px;font-weight:600}.ai-missing-box{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;margin-top:12px;padding:10px 12px;font-size:12px}.ai-missing-box p{margin:4px 0 0;line-height:1.4}.ai-action-item{background:#fff;border:1px solid #bbcabf66;border-radius:8px;align-items:baseline;gap:10px;padding:8px 10px;font-size:12px;display:flex}.ai-action-item code{color:var(--primary);background:var(--surface-container-low);border-radius:4px;padding:2px 6px;font-size:11px;font-weight:700}.ai-empty-actions{color:var(--text-muted);margin-top:10px;font-size:12px}.inline-form{gap:10px;margin-bottom:14px;display:flex}.inline-form input,.inline-form select{border:1px solid var(--border-subtle);background:#fff;border-radius:10px;flex:1;height:40px;padding:0 12px;font-size:13px}@media (width<=1101px){.header-inner,.page-shell{padding-left:24px;padding-right:24px}.summary-grid{grid-template-columns:repeat(2,1fr)}.site-header{height:auto}.header-inner{flex-wrap:wrap;gap:8px 16px;height:auto;min-height:64px;padding-top:8px;padding-bottom:8px}.brand-nav{justify-content:space-between;gap:12px;width:100%}.brand-nav nav{flex:auto;justify-content:space-evenly;min-width:0}.brand-nav nav button{white-space:nowrap;flex:none;padding:7px 10px}.header-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;width:100%}.demo-notice{display:none}.dashboard-top,.dashboard-main,.food-layout,.settings-layout{grid-template-columns:1fr}.dashboard-side,.food-rail,.settings-right{grid-template-columns:1fr 1fr}.add-layout{grid-template-columns:1fr}.date-control{margin:14px 0 0;position:static}}@media (width<=768px){.header-inner{padding:8px 16px}.brand-nav nav{scrollbar-width:none;justify-content:flex-start;overflow-x:auto}.brand-nav nav::-webkit-scrollbar{display:none}.brand-nav nav button{flex:none}.header-actions{justify-content:flex-start}.page-shell{padding:16px 16px 60px}.summary-grid,.dashboard-side,.food-rail,.settings-right,.profile-grid,.activity-grid{grid-template-columns:1fr}.nutrition-layout{flex-direction:column;gap:20px}.export-grid{grid-template-columns:1fr}}@media (width>=769px) and (width<=900px){.food-rail{grid-template-columns:minmax(0,1fr)}.food-head,.food-line{grid-template-columns:minmax(0,1.6fr) repeat(4,minmax(0,.6fr)) minmax(0,1fr);gap:8px;padding-left:12px;padding-right:12px}.food-head{font-size:11px}.food-line{font-size:12px}.food-line>*{min-width:0}.food-line>span:first-child{gap:6px}.food-line small{text-overflow:ellipsis;max-width:78px;overflow:hidden}.food-line>span:last-child{gap:4px!important}.food-line .action-btn-edit,.food-line .action-btn-danger{padding-left:6px;padding-right:6px}}.analysis-page .bar-chart{justify-content:space-between;gap:16px;overflow-x:auto}.analysis-page .bar-column{flex-shrink:0}.night-sleep-card .section-title h2{align-items:center;gap:10px;display:flex}.night-sleep-card .section-title h2:before{content:"";background:var(--macro-carbs);border-radius:50%;width:9px;height:9px}.night-sleep-chart{padding:5px 4px 10px;overflow-x:auto}.night-sleep-axis,.night-sleep-rows{min-width:720px}.night-sleep-axis{border-bottom:1px solid var(--border-subtle);height:36px;margin-bottom:18px;padding-left:78px;padding-right:66px}.night-sleep-axis>div{height:100%;position:relative}.night-sleep-axis span{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:10px;position:absolute;top:5px;transform:translate(-50%)}.night-sleep-axis .key-hour{color:var(--text-main);font-weight:800}.night-sleep-rows{gap:10px;display:grid}.night-sleep-row{grid-template-columns:64px minmax(0,1fr) 52px;align-items:center;gap:14px;margin-top:14px;font-size:12px;display:grid}.night-sleep-rows .night-sleep-row{margin-top:0}.night-sleep-row>time{color:var(--text-main);text-align:center;font-variant-numeric:tabular-nums;font-weight:700}.night-sleep-track{background:var(--surface-container-low);border-radius:15px;height:40px;position:relative}.night-sleep-bar{color:#fff;box-sizing:border-box;font-variant-numeric:tabular-nums;border-radius:9px;justify-content:space-between;align-items:center;gap:8px;height:30px;padding:0 12px;font-size:12px;font-weight:700;display:flex;position:absolute;top:5px;overflow:hidden}.night-sleep-bar>span{white-space:nowrap;flex-shrink:0}.sleep-clock{align-items:center;gap:6px;display:inline-flex}.sleep-clock svg{flex-shrink:0;width:20px;height:20px}.sleep-duration-pill{white-space:nowrap;background:#002d2440;border-radius:20px;padding:3px 9px;font-size:12px;position:absolute;left:50%;transform:translate(-50%)}.sleep-tone-excellent{color:#043d2c;background:#0eae80}.sleep-tone-excellent .sleep-duration-pill{background:#c5f8e1}.sleep-tone-good{background:#047857}.sleep-tone-fair{background:#075c46}.sleep-tone-poor{background:#886129}.sleep-tone-unknown{background:#526a60}.sleep-quality{text-align:center;font-size:11px;font-weight:700}.sleep-quality-excellent,.sleep-quality-good{color:var(--primary)}.sleep-quality-fair{color:var(--text-muted)}.sleep-quality-poor{color:#926425}.sleep-quality-unknown{color:var(--text-tertiary)}.duration-only-bar{justify-content:center}.duration-only-label{opacity:.82;margin-left:auto;font-size:10px}.sleep-no-duration{height:100%;color:var(--text-muted);justify-content:center;align-items:center;font-size:11px;display:flex}.date-switch>strong{position:relative}.dashboard-date-input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.settings-page .settings-layout{grid-template-columns:minmax(0,1.45fr) minmax(310px,1fr);gap:16px}.settings-page .settings-left,.settings-page .settings-right{align-items:start;gap:16px}.settings-page .settings-card{padding:18px 20px}.settings-page .section-title{margin-bottom:12px}.settings-page details>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;list-style:none;display:flex}.settings-page details>summary::-webkit-details-marker{display:none}.settings-page details>summary>span{gap:7px;display:grid}.settings-page details>summary strong{font-size:16px}.settings-page details>summary small,.settings-hint,.macro-mode-row>small{color:var(--text-muted);font-size:12px}.settings-page details>summary b{color:var(--primary);white-space:nowrap;background:var(--surface-container-low);border-radius:7px;padding:6px 10px;font-size:12px}.settings-page details[open]>summary{border-bottom:1px solid var(--border-subtle);margin-bottom:14px;padding-bottom:14px}.settings-page .profile-grid{gap:12px}.settings-page .activity-grid{gap:8px}.settings-page .activity-grid button{padding:10px 12px}.settings-page .energy-row{gap:10px;margin-top:14px}.settings-page .energy-row .stat{padding:12px}.settings-page .subheading{margin:16px 0 10px}.macro-mode-row{flex-wrap:wrap;align-items:center;gap:14px;margin-top:8px;display:flex}.macro-mode-row .choice-row{margin:0;padding:3px}.macro-mode-row .choice-row button{white-space:nowrap;padding:6px 14px}.settings-page .macro-number-grid{gap:10px}.settings-page .drop-zone{min-height:0;padding:16px}.settings-page .theme-row{margin-top:6px}.settings-page .recycle-settings>p{margin:0 0 12px;font-size:12px}.settings-page .recycle-settings>div:not(.section-title){max-height:260px!important}.settings-page .recycle-settings>div>div{gap:10px;background:var(--surface-container-low)!important;border-color:var(--border-subtle)!important}.settings-page summary:focus-visible{outline:2px solid var(--primary);outline-offset:6px;border-radius:4px}.dashboard-top{align-items:start}.dashboard-top .nutrition-card{align-self:start}.dashboard-top .vital-stack{gap:14px}.dashboard-top .weight-card{justify-self:end;width:min(100%,320px);padding:16px 20px}.dashboard-top .weight-content{flex-flow:row;justify-content:space-between;align-items:center;gap:12px}.dashboard-top .weight-note{padding:8px 10px}.dashboard-top .sleep-card{padding:16px 24px}.dashboard-top .sleep-card .section-title{margin-bottom:12px}.health-record-modal{width:min(520px,100%);padding:24px}.health-record-heading{justify-content:flex-start;gap:12px;margin-bottom:22px}.health-record-heading>div{flex:1;min-width:0}.health-record-heading h2{margin:0;font-size:18px}.health-record-heading p{color:var(--text-muted);margin:4px 0 0;font-size:12px;line-height:1.5}.health-record-heading>button{min-width:36px;min-height:36px;padding:4px;font-size:20px;line-height:1}.health-record-icon{background:var(--primary-tint);width:42px;height:42px;color:var(--primary);border-radius:14px;flex:0 0 42px;place-items:center;font-size:21px;display:grid}.health-record-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.health-record-grid label{border:1px solid var(--border-light);background:var(--surface-container-low);min-width:0;color:var(--text-muted);border-radius:12px;gap:7px;padding:12px;font-size:12px;font-weight:600;display:grid}.health-record-grid input,.health-record-grid select{box-sizing:border-box;border:1px solid var(--border-subtle);background:var(--surface);width:100%;min-width:0;height:42px;color:var(--text-main);border-radius:10px;padding:7px 10px;font-size:15px;transition:border-color .15s,box-shadow .15s}.health-record-grid input:focus,.health-record-grid select:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 14%, transparent);outline:0}.health-record-modal .modal-actions{margin-top:20px}.dark .settings-page .choice-row button.selected{background:var(--surface)}.dark .settings-page .activity-grid button.selected{background:var(--surface-container-low)}@media (width<=900px){.settings-page .settings-layout{grid-template-columns:minmax(0,1fr)}.settings-page .recycle-settings{grid-column:1/-1}}@media (width<=520px){.settings-page .settings-card{padding:16px}.settings-page .profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-page .macro-number-grid{gap:6px}.settings-page .macro-number-field{padding:8px}}.heat-grid span[title],.meal-food[role=button]{cursor:pointer}.meal-food[role=button]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.analysis-page .bar-column{min-width:46px}.analysis-page .analysis-summary-card{border-radius:18px;min-height:188px}.analysis-summary-card>strong{margin-top:22px;font-size:36px}.summary-note-icon{vertical-align:middle;margin-right:7px;font-size:19px;display:inline-block}.analysis-page .bar-chart.weekly-bars{justify-content:safe center;gap:clamp(24px,4vw,64px)}.foods-page .food-table{scrollbar-gutter:stable;overscroll-behavior:contain;max-height:207px;overflow:auto}.foods-page .food-head{z-index:1;position:sticky;top:0}.foods-page .food-head,.foods-page .food-line{grid-template-columns:minmax(150px,2fr) repeat(4,minmax(58px,.65fr)) 52px}.foods-page .food-line{min-height:40px;padding-top:4px;padding-bottom:4px}.food-line[role=button]{cursor:pointer}.food-line[role=button]:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.heat-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.heat-grid>span,.heat-grid>button{aspect-ratio:1;border:0;border-radius:8px;min-width:0;height:auto}.heat-grid>button{background:var(--surface-container-low);color:var(--text-muted);font-variant-numeric:tabular-nums;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:2px;font-size:11px;display:flex}.heat-grid>button b{font-size:12px}.heat-grid>button small{white-space:nowrap;font-size:clamp(8px,.7vw,11px)}.heat-grid>button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.weight-chart-heading{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.weight-target-distance{color:var(--text-muted);white-space:nowrap;align-items:baseline;gap:6px;font-size:12px;display:inline-flex}.weight-target-distance strong{color:var(--primary);font-variant-numeric:tabular-nums;font-size:17px}.analysis-page .bar-chart{padding:28px 24px 22px;display:block}.calorie-plot{height:100%;margin:0 auto;display:flex;position:relative}.analysis-page .calorie-plot .bar-column{flex:1;width:auto;min-width:0;height:100%;position:relative}.calorie-plot .stack-bar{flex-shrink:0;width:64px;position:absolute;bottom:0}.calorie-plot .bar-total{white-space:nowrap;margin-bottom:6px;position:absolute}.calorie-plot .bar-column>small{white-space:nowrap;margin-top:6px;font-size:10px;position:absolute;top:100%}.calorie-goal-guide{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.section-title-actions{align-items:center;gap:8px;display:flex}.section-title .value-visibility-button{width:26px;height:26px;color:var(--text-muted);background:0 0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:4px;display:inline-flex}.value-visibility-button svg{width:18px;height:18px}.value-visibility-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.backup-actions-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.settings-page .backup-actions-row .section-title{white-space:nowrap;margin:0}.backup-actions-row .modal-actions{flex-wrap:nowrap;gap:8px;margin:0}.backup-actions-row button{white-space:nowrap}.action-toast{z-index:80;border:1px solid var(--border-subtle);background:var(--surface);max-width:calc(100vw - 32px);color:var(--text-main);box-shadow:var(--shadow-modal);border-radius:12px;align-items:center;gap:16px;padding:12px 16px;font-size:12px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.action-toast button{color:var(--text-muted);padding:2px 6px;font-size:18px}.analysis-page .weekly-bars .bar-column{width:72px;min-width:72px}.dark .analysis-summary-card>strong{color:var(--text-main)}.dark .summary-time-lines strong{color:#7fb5ff}.nutrition-settings .target-input{grid-template-columns:1fr 100px auto;margin:12px 0;padding:10px 12px}.macro-number-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.macro-number-field{background:var(--surface-container-low);border-top:3px solid;border-radius:9px;gap:7px;padding:10px 12px;font-size:12px;display:grid}.macro-number-field>span{align-items:center;gap:7px;display:flex}.macro-number-field input{border:1px solid var(--border-subtle);box-sizing:border-box;border-radius:7px;width:100%;min-width:0;height:34px;margin:0;padding:5px 8px}.macro-number-field small{color:var(--text-muted)}.macro-number-field .gram-value-row input{flex:1;width:0}.macro-number-field .gram-value-row small{white-space:nowrap;flex-shrink:0}.meal-food .meal-macro.carbs{color:var(--macro-carbs)}.meal-food .meal-macro.protein{color:var(--macro-protein)}.meal-food .meal-macro.fat{color:var(--macro-fat)}.dashboard-calendar-control{position:relative}.date-switch .calendar-trigger{align-items:center;gap:8px;font-weight:700;display:flex}.calendar-trigger svg{fill:none;stroke:currentColor;stroke-width:1.8px;width:17px;height:17px}.date-calendar{z-index:40;width:290px;padding:14px;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 12px 40px #0002}.calendar-month{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.calendar-direct{gap:6px;margin-bottom:12px;font-size:12px;display:grid}.calendar-direct input{border:1px solid var(--border-subtle);border-radius:7px;padding:7px}.calendar-days{text-align:center;grid-template-columns:repeat(7,1fr);align-items:center;gap:3px;display:grid}.calendar-days>span{color:var(--text-muted);padding:5px 0;font-size:11px}.date-switch .calendar-days button{border:none;min-width:0;padding:7px 0}.date-switch .calendar-days button.selected{background:var(--primary);color:var(--on-primary)}.sleep-row i.tier-unknown{color:#fff;background:#526a60}.sleep-row em.tier-unknown{color:var(--text-muted)}.weekly-intake-progress{border-top:1px solid var(--border-light);margin-top:20px;padding-top:14px;font-size:12px}.weekly-intake-label{flex-wrap:wrap;justify-content:space-between;gap:10px;display:flex}.weekly-intake-progress small{color:var(--text-muted);font-size:11px}.weekly-intake-track{background:var(--surface-container-low);border-radius:8px;height:7px;margin:10px 0 7px;overflow:hidden}.weekly-intake-track i{background:var(--weekly-intake-color,var(--primary));border-radius:inherit;height:100%;display:block}.energy-advice{margin-bottom:24px;padding:22px 26px}.energy-heading{align-items:flex-start;display:flex}.energy-heading h2{margin:0;font-size:17px}.energy-controls-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;margin-top:20px;display:flex}.energy-result{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-left:auto;display:flex}.energy-result span{font-size:13px;line-height:1.8}.energy-form{flex-wrap:wrap;align-items:center;gap:14px;margin:0;display:flex}.energy-form .segmented{box-sizing:border-box;border:0;height:36px;padding:0 4px}.energy-form .segmented button{box-sizing:border-box;height:36px}.energy-form label{border:1px solid var(--border-light);background:var(--surface-subtle);border-radius:10px;align-items:center;gap:8px;padding:8px 10px;font-size:12px;display:flex}.energy-form input,.energy-form select,.weight-date-filter input{border:1px solid var(--border-subtle);background:var(--surface);height:36px;color:var(--text-main);border-radius:8px;min-width:0;padding:6px 10px;font-size:13px;transition:border-color .15s,box-shadow .15s}.energy-form input:focus,.energy-form select:focus,.weight-date-filter input:focus{border-color:var(--primary);outline:0;box-shadow:0 0 0 3px #006c491f}.energy-form input{width:84px}.energy-result>button{background:var(--surface-container-low);color:var(--primary);border-radius:8px;padding:9px 14px;font-size:12px}.energy-status{color:var(--text-muted);margin:4px 0 0;font-size:11px}.weight-chart-layout{grid-template-columns:minmax(0,1fr) 250px;gap:24px;display:grid}.weight-chart-main{min-width:0}.weight-chart-frame{grid-template-columns:40px minmax(0,1fr);align-items:start;gap:8px;display:grid}.weight-y-axis{width:40px;height:200px;fill:var(--text-tertiary);font-family:var(--font-body);font-variant-numeric:tabular-nums;margin-top:9px;font-size:11px;display:block;overflow:visible}.weight-axis-line{stroke:var(--border-subtle);stroke-width:1px}.weight-grid-line{stroke:var(--border-light);stroke-width:1px}.weight-target-distance{white-space:normal;flex-wrap:wrap}.weekly-weight-changes{box-sizing:border-box;border:1px solid var(--border-light);border-radius:var(--radius-card-sm);background:linear-gradient(var(--surface), var(--surface-container-low));min-width:0;margin-top:8px;padding:8px 12px}.weekly-weight-changes h3{margin:0 0 10px;font-size:13px}.weekly-weight-list{scrollbar-gutter:stable;max-height:240px;overflow-y:auto}.weekly-weight-row{border-top:1px solid var(--border-light);white-space:nowrap;justify-content:space-between;align-items:center;gap:8px;padding:10px 0;font-size:11px;display:flex}.weekly-weight-row>span{align-items:center;gap:5px;display:flex}.weekly-weight-row em{color:var(--primary);font-size:10px;font-style:normal}.weekly-weight-row strong{font-size:12px}.weekly-weight-row strong.increase{color:var(--color-danger)}.weekly-weight-row strong.decrease{color:var(--primary)}.weekly-weight-row strong>span{font-size:15px;line-height:1}.weekly-weight-row.year-boundary{font-size:10px}.weekly-weight-row.year-boundary em{font-size:9px}.weekly-weight-row.year-boundary strong{font-size:11px}.weight-chart-controls{flex-wrap:wrap}.weight-change-toggle{border:1px solid var(--border-light);background:var(--surface);min-height:36px;color:var(--primary);white-space:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:8px;padding:8px 14px;font-size:12px;font-weight:600;display:inline-flex}.weight-change-toggle:hover,.weight-change-toggle[aria-pressed=true]{background:var(--surface-container-low);border-color:var(--primary)}.weight-change-toggle span{font-variant-numeric:tabular-nums;min-width:16px}.weight-date-filter{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:12px;margin:8px 0 18px;display:flex}.weight-date-filter label{align-items:center;gap:8px;font-size:12px;display:flex}.weight-date-filter small,.weight-chart-empty{color:var(--text-muted);font-size:12px}.weight-date-filter [role=alert]{color:var(--color-danger)}.weight-chart-scroll{overscroll-behavior-x:contain;border-radius:var(--radius-card-sm);max-width:100%;overflow-x:auto}.weight-chart-scroll:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.weight-chart-scroll .line-chart{--weight-plot-padding:24px;padding:8px var(--weight-plot-padding) 4px;box-sizing:border-box}.weight-chart-scroll .axis-labels{height:24px;margin:0;display:block;position:relative}.weight-chart-scroll .axis-labels span{white-space:nowrap;font-size:10px;position:absolute;transform:translate(-50%)}.weight-chart-scroll svg{height:200px}.weight-chart-hint{color:var(--text-tertiary);margin:8px 2px 0;font-size:11px}@media (width<=1100px){.weight-chart-layout{grid-template-columns:minmax(0,1fr);gap:18px}.weekly-weight-changes{padding:10px 12px}.weekly-weight-list{max-height:190px}}@media (width<=600px){.energy-advice{padding:18px}.energy-form{gap:12px}.energy-form .segmented{width:100%}.energy-form label{flex-wrap:wrap}.energy-controls-row{align-items:stretch}.energy-result{width:100%;margin-left:0}.energy-result span{font-size:12px}.weight-date-filter{justify-content:flex-start}.weight-chart-controls{justify-content:flex-start;width:100%}}@media (width<=1000px){.macro-summary-labels{flex-wrap:wrap}}@media (width<=640px){.macro-number-grid{grid-template-columns:1fr}.macro-number-field{grid-template-columns:1fr 100px;align-items:center}.macro-number-field small{grid-column:1/-1}.nutrition-settings .target-input{grid-template-columns:1fr 90px}.nutrition-settings .target-input>span{grid-column:2}.date-calendar{width:270px;left:-60px}}.dashboard-page .meal-food>.meal-food-name{display:block}.meal-food-name small{white-space:nowrap;margin-left:4px;display:inline}.meal-edit-first-row{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:10px;display:grid}.meal-edit-first-row label{min-width:0}.meal-edit-first-row input{border:1px solid #cbd5e1;border-radius:8px;width:100%;min-width:0;padding:8px}.meal-edit-food-name{color:var(--text-muted);overflow-wrap:anywhere;margin:0 0 12px}.meal-edit-first-row input[type=date]{padding-inline:4px}.analysis-page .analysis-summary-card{flex-direction:column;justify-content:space-between;min-height:0;padding:16px 18px;display:flex}.analysis-page .analysis-summary-card>strong{margin:10px 0 4px;font-size:32px}.analysis-page .macro-summary-progress{min-width:0}.analysis-page .macro-summary-labels{align-items:center;gap:0;margin:0 0 4px;font-size:10px;line-height:1.2;display:grid}.analysis-page .macro-summary-labels>span{text-align:center;text-overflow:clip;white-space:nowrap;min-width:0;display:block;overflow:hidden}.analysis-page .macro-summary-labels>.carbs{color:var(--macro-carbs)}.analysis-page .macro-summary-labels>.protein{color:var(--macro-protein)}.analysis-page .macro-summary-labels>.fat{color:var(--macro-fat)}.analysis-page .macro-summary-bar{height:10px}.analysis-page .macro-summary-grams{margin-top:4px}.dashboard-top .weight-card{justify-self:stretch;width:100%;max-width:none}:root{--radius-button:10px;--radius-navigation:16px;--button-transition:background-color .15s ease, color .15s ease, opacity .15s ease, box-shadow .15s ease}.app :is(button,[role=button],input:is([type=button],[type=submit],[type=reset])){transition:var(--button-transition);border-radius:var(--radius-button)!important}:is(button,[role=button],input:is([type=button],[type=submit],[type=reset])):focus-visible{outline:2px solid var(--primary);outline-offset:2px}:is(button,input:is([type=button],[type=submit],[type=reset])):disabled{cursor:not-allowed}.primary-nav{background:var(--surface-container-low);border-radius:var(--radius-navigation);border:1px solid #bbcabf59;align-items:center;gap:4px;padding:4px;display:flex}.primary-nav button{color:var(--text-muted);white-space:nowrap;padding:8px 14px;font-size:14px;font-weight:600}.primary-nav button:hover:not(:disabled){color:var(--text-main);background:#fff9}.primary-nav button.active{color:#fff;background:#006c49;box-shadow:0 2px 8px #006c4940}@media (prefers-reduced-motion:reduce){button,[role=button],input:is([type=button],[type=submit],[type=reset]){transition:none}}html{-webkit-tap-highlight-color:transparent}:is(button,[role=button],a):focus:not(:focus-visible){outline:none}
