:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f6f8f7;--surface:#fff;--surface-soft:#f8fbfa;--surface-muted:#eef6f2;--text:#111827;--muted:#63716f;--subtle:#9aa6a2;--line:#dfe7e4;--line-strong:#c6d3cf;--green:#087a53;--green-strong:#055d3f;--green-soft:#e7f4ed;--red:#dc2626;--red-soft:#fff1f1;--blue:#2f72d6;--blue-soft:#eaf2ff;--yellow:#f2a900;--yellow-soft:#fff7df;--purple:#7c5bd6;--shadow:0 12px 34px #0f282014;--shadow-lg:0 24px 80px #0f172a38;--radius:10px;--radius-lg:14px;background:var(--bg);color:var(--text);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:Microsoft YaHei UI,PingFang SC,Noto Sans SC,Segoe UI,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}.dark-mode{--bg:#101411;--surface:#171c19;--surface-soft:#1d2420;--surface-muted:#243028;--text:#edf4ef;--muted:#a6b4ad;--subtle:#77847d;--line:#2c3932;--line-strong:#405348;--green:#4aa978;--green-strong:#6bc492;--green-soft:#4aa97829;--red-soft:#dc26261f;--blue-soft:#2f72d624;--yellow-soft:#f2a9001f;--shadow:0 14px 38px #00000047;--shadow-lg:0 28px 90px #00000073}*{box-sizing:border-box}body,.food-table,.quick-food-table,.library-table,.library-results,.library-detail,.library-inline,.provider-order,.bulk-review-list,.model-chain,.record-list,.record-detail-panel,.profile-main,.settings-main,.modal-panel,.advanced-filters,.timeline-chart{scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--green) 32%, var(--line-strong)) transparent}body::-webkit-scrollbar{width:9px;height:9px}.food-table::-webkit-scrollbar{width:9px;height:9px}.quick-food-table::-webkit-scrollbar{width:9px;height:9px}.library-table::-webkit-scrollbar{width:9px;height:9px}.library-results::-webkit-scrollbar{width:9px;height:9px}.library-detail::-webkit-scrollbar{width:9px;height:9px}.library-inline::-webkit-scrollbar{width:9px;height:9px}.provider-order::-webkit-scrollbar{width:9px;height:9px}.bulk-review-list::-webkit-scrollbar{width:9px;height:9px}.model-chain::-webkit-scrollbar{width:9px;height:9px}.record-list::-webkit-scrollbar{width:9px;height:9px}.record-detail-panel::-webkit-scrollbar{width:9px;height:9px}.profile-main::-webkit-scrollbar{width:9px;height:9px}.settings-main::-webkit-scrollbar{width:9px;height:9px}.modal-panel::-webkit-scrollbar{width:9px;height:9px}.advanced-filters::-webkit-scrollbar{width:9px;height:9px}.timeline-chart::-webkit-scrollbar{width:9px;height:9px}body::-webkit-scrollbar-track{background:0 0}.food-table::-webkit-scrollbar-track{background:0 0}.quick-food-table::-webkit-scrollbar-track{background:0 0}.library-table::-webkit-scrollbar-track{background:0 0}.library-results::-webkit-scrollbar-track{background:0 0}.library-detail::-webkit-scrollbar-track{background:0 0}.library-inline::-webkit-scrollbar-track{background:0 0}.provider-order::-webkit-scrollbar-track{background:0 0}.bulk-review-list::-webkit-scrollbar-track{background:0 0}.model-chain::-webkit-scrollbar-track{background:0 0}.record-list::-webkit-scrollbar-track{background:0 0}.record-detail-panel::-webkit-scrollbar-track{background:0 0}.profile-main::-webkit-scrollbar-track{background:0 0}.settings-main::-webkit-scrollbar-track{background:0 0}.modal-panel::-webkit-scrollbar-track{background:0 0}.advanced-filters::-webkit-scrollbar-track{background:0 0}.timeline-chart::-webkit-scrollbar-track{background:0 0}body::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--green) 28%, var(--line-strong));background-clip:padding-box;border:2px solid #0000;border-radius:999px}.food-table::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--green) 28%, var(--line-strong));background-clip:padding-box;border:2px solid #0000;border-radius:999px}.quick-food-table::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--green) 28%, var(--line-strong));background-clip:padding-box;border:2px solid #0000;border-radius:999px}.library-table::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--green) 28%, var(--line-strong));background-clip:padding-box;border:2px solid #0000;border-radius:999px}.library-results::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--green) 28%, var(--line-strong));background-clip:padding-box;border:2px solid #0000;border-radius:999px}.library-detail::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--green) 28%, var(--line-strong));background-clip:padding-box;border:2px solid #0000;border-radius:999px}.library-inline::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--green) 28%, var(--line-strong));background-clip:padding-box;border:2px solid #0000;border-radius:999px}.provider-order::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--green) 28%, var(--line-strong));background-clip:padding-box;border:2px solid #0000;border-radius:999px}.bulk-review-list::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--green) 28%, var(--line-strong));background-clip:padding-box;border:2px solid #0000;border-radius:999px}.model-chain::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--green) 28%, var(--line-strong));background-clip:padding-box;border:2px solid #0000;border-radius:999px}.record-list::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--green) 28%, var(--line-strong));background-clip:padding-box;border:2px solid #0000;border-radius:999px}.record-detail-panel::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--green) 28%, var(--line-strong));background-clip:padding-box;border:2px solid #0000;border-radius:999px}.profile-main::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--green) 28%, var(--line-strong));background-clip:padding-box;border:2px solid #0000;border-radius:999px}.settings-main::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--green) 28%, var(--line-strong));background-clip:padding-box;border:2px solid #0000;border-radius:999px}.modal-panel::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--green) 28%, var(--line-strong));background-clip:padding-box;border:2px solid #0000;border-radius:999px}.advanced-filters::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--green) 28%, var(--line-strong));background-clip:padding-box;border:2px solid #0000;border-radius:999px}.timeline-chart::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--green) 28%, var(--line-strong));background-clip:padding-box;border:2px solid #0000;border-radius:999px}html,body,#root{min-width:320px;min-height:100%;margin:0}body{background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 75%, transparent), transparent 420px), var(--bg)}button,input,select,textarea{font:inherit;color:inherit}button{letter-spacing:0;cursor:pointer;background:0 0;border:0}button:disabled{cursor:not-allowed;opacity:.62}input,select,textarea{border:1px solid color-mix(in srgb, var(--line) 72%, var(--surface));background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 98%, white), var(--surface-soft));border-radius:8px;outline:none;width:100%;min-width:0;transition:border-color .16s,box-shadow .16s,background .16s}select{appearance:none;background:linear-gradient(45deg, transparent 50%, color-mix(in srgb, var(--green) 72%, var(--muted)) 50%) calc(100% - 18px) 52% / 6px 6px no-repeat, linear-gradient(135deg, color-mix(in srgb, var(--green) 72%, var(--muted)) 50%, transparent 50%) calc(100% - 13px) 52% / 6px 6px no-repeat, linear-gradient(180deg, color-mix(in srgb, var(--surface) 98%, white), var(--surface-soft));min-height:38px;padding:0 38px 0 12px;font-weight:800}select:hover{border-color:color-mix(in srgb, var(--green) 28%, var(--line-strong))}select option{color:var(--text);background:var(--surface);font-weight:750}input[type=checkbox]{appearance:none;background:linear-gradient(180deg, var(--surface), var(--surface-soft));border:1px solid color-mix(in srgb, var(--line-strong) 80%, var(--surface));border-radius:6px;place-content:center;width:20px;height:20px;margin:0;display:grid;box-shadow:inset 0 1px #ffffffa6}input[type=checkbox]:before{content:"";clip-path:polygon(14% 44%,0 58%,38% 100%,100% 18%,86% 4%,36% 68%);background:#fff;width:10px;height:10px;transition:transform .12s;transform:scale(0)}input[type=checkbox]:checked{background:var(--green);border-color:var(--green);box-shadow:0 6px 14px color-mix(in srgb, var(--green) 18%, transparent)}input[type=checkbox]:checked:before{transform:scale(1)}input[type=checkbox]:focus-visible,button:focus-visible,[role=button]:focus-visible,.icon-button:focus-visible,.outline-button:focus-visible,.ghost-button:focus-visible,.primary-button:focus-visible,.user-button:focus-visible{outline:3px solid color-mix(in srgb, var(--green) 22%, transparent);outline-offset:2px}button:active,.icon-button:active,.outline-button:active,.ghost-button:active,.primary-button:active,.user-button:active{transform:translateY(1px)}button:disabled,.icon-button:disabled,.outline-button:disabled,.ghost-button:disabled,.primary-button:disabled{cursor:not-allowed;opacity:.52;transform:none}input:focus,select:focus,textarea:focus{border-color:color-mix(in srgb, var(--green) 55%, var(--line));box-shadow:0 0 0 3px color-mix(in srgb, var(--green) 14%, transparent)}textarea{resize:vertical}.app-frame{min-height:100vh}.topbar{z-index:20;background:color-mix(in srgb, var(--surface) 94%, transparent);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px)saturate(160%);backdrop-filter:blur(18px)saturate(160%);align-items:center;gap:20px;min-height:64px;padding:0 28px;display:flex;position:sticky;top:0}.brand,.main-nav button,.top-actions,.sync-chip,.user-button,.panel-title,.page-title,.panel-actions,.detail-head,.calibration-head,.section-inline,.library-inline-head,.modal-heading,.modal-actions{align-items:center;display:flex}.brand{color:var(--text);gap:11px;text-decoration:none}.brand-mark{color:#fff;background:linear-gradient(145deg, var(--green), var(--green-strong));width:38px;height:38px;box-shadow:0 12px 26px color-mix(in srgb, var(--green) 22%, transparent);border-radius:12px;place-items:center;display:grid}.brand-copy strong{font-size:21px;font-weight:900;line-height:1;display:block}.brand-copy em{color:var(--muted);margin-top:3px;font-size:12px;font-style:normal;font-weight:700;display:block}.main-nav{align-self:stretch;gap:26px;margin-left:26px;display:flex}.main-nav button{color:var(--muted);gap:7px;padding:0 4px;font-weight:800;position:relative}.main-nav button.active{color:var(--green)}.main-nav button.active:after{content:"";background:var(--green);border-radius:999px 999px 0 0;height:3px;position:absolute;bottom:0;left:0;right:0}.top-actions{gap:10px;margin-left:auto}.sync-chip{min-height:34px;color:var(--green);background:var(--green-soft);border:1px solid color-mix(in srgb, var(--green) 26%, var(--line));border-radius:999px;gap:7px;padding:0 11px;font-size:13px;font-weight:800}.sync-chip span{color:var(--muted);font-weight:650}.sync-chip.syncing svg{animation:.8s linear infinite spin}.icon-button,.user-button{min-width:36px;min-height:36px;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:10px;justify-content:center;gap:7px;padding:0 10px}.icon-button:hover,.user-button:hover,.outline-button:hover,.ghost-button:hover{border-color:var(--line-strong);background:var(--surface-muted)}.icon-button.subtle{min-width:32px;min-height:32px;color:var(--muted)}.user-button span{font-weight:800}.estimate-grid{grid-template-columns:minmax(280px,.95fr) minmax(420px,1.12fr) minmax(280px,.95fr);grid-auto-rows:minmax(0,1fr);align-items:stretch;gap:12px;width:min(1500px,100% - 20px);height:clamp(610px,100dvh - 94px,752px);min-height:min(600px,100dvh - 96px);margin:8px auto 12px;display:grid}.visually-hidden-file{clip:rect(0 0 0 0);white-space:nowrap;opacity:0;pointer-events:none;border:0;width:1px;height:1px;position:absolute;overflow:hidden}.page-shell{width:min(1500px,100% - 48px);margin:18px auto 26px}.panel,.modal-panel,.records-toolbar,.analytics-kpis,.panel-lite{background:color-mix(in srgb, var(--surface) 96%, transparent);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.panel{min-width:0;padding:14px}.capture-panel,.recognition-panel,.summary-panel{min-height:0;overflow:hidden}.capture-panel,.summary-panel{flex-direction:column;display:flex}.recognition-panel{grid-template-rows:auto minmax(0,1fr) minmax(150px,.76fr);gap:10px;display:grid}.capture-panel,.summary-panel{scrollbar-gutter:stable;overflow-y:auto}.recognition-panel .food-table{scrollbar-gutter:stable;min-height:168px;overflow:auto}.recognition-panel .library-inline{scrollbar-gutter:stable;min-height:150px;overflow:auto}.compact .panel{padding:14px}.compact .meal-dropzone,.compact .meal-dropzone img,.compact .dropzone-empty{height:162px;min-height:162px}.compact .panel-title{margin-bottom:10px}.compact .field-block,.compact .manual-entry{margin-top:8px}.compact .field-block textarea{min-height:54px;max-height:66px}.compact .manual-entry textarea{min-height:180px}.compact .privacy-note{margin-top:7px}.panel-title,.page-title{flex-wrap:wrap;justify-content:space-between;gap:14px;margin-bottom:14px}.panel-title{border-bottom:1px solid var(--line);padding-bottom:12px}.panel-title>div,.page-title>div{min-width:0}.panel-title span{color:var(--green);margin-bottom:6px;font-size:12px;font-weight:900;display:block}.panel-title h1,.page-title h1,.modal-heading h2{color:var(--text);margin:0;font-size:22px;font-weight:900;line-height:1.15}.page-title h1{font-size:30px}.panel-title p,.page-title p,.modal-heading p{color:var(--muted);margin:6px 0 0;font-size:14px}.panel-actions{flex-wrap:wrap;gap:10px}.segmented{background:var(--surface);border:1px solid var(--line);border-radius:10px;grid-auto-flow:column;gap:0;display:inline-grid;overflow:hidden}.segmented button{min-height:38px;color:var(--muted);border-left:1px solid var(--line);padding:0 18px;font-size:14px;font-weight:800}.segmented button:first-child{border-left:0}.segmented button.active{color:#fff;background:linear-gradient(145deg, var(--green), var(--green-strong))}.range-tabs{grid-auto-flow:unset;grid-template-columns:repeat(6,minmax(64px,1fr));width:100%;min-width:0}.range-tabs button{white-space:nowrap;min-width:0;padding:0 10px}.capture-tabs{grid-template-columns:repeat(3,1fr);width:100%;margin-bottom:12px}.capture-tabs button{justify-content:center;align-items:center;gap:7px;display:inline-flex}.meal-dropzone{border:1px solid var(--line);background:var(--surface-soft);border-radius:12px;min-height:278px;display:block;position:relative;overflow:hidden}.meal-dropzone input{z-index:1;opacity:0;cursor:pointer;position:absolute;inset:0}.meal-dropzone img{object-fit:cover;width:100%;height:278px;display:block}.floating-action{z-index:2;color:#fff;background:#111827a8;border-radius:8px;align-items:center;gap:6px;min-height:34px;padding:0 12px;font-weight:800;display:inline-flex;position:absolute;bottom:12px;right:12px}.dropzone-empty{min-height:278px;color:var(--muted);text-align:center;place-items:center;gap:8px;display:grid}.dropzone-empty strong{color:var(--text)}.thumb-rail{grid-template-columns:repeat(4,1fr) 74px;gap:9px;margin-top:12px;display:grid}.thumb-rail img,.thumb-rail button{border:1px solid var(--line);border-radius:10px;height:58px}.thumb-rail img{object-fit:cover;width:100%}.thumb-rail img.active{border-color:var(--green);box-shadow:0 0 0 2px var(--green-soft)}.thumb-rail button{color:var(--muted);background:var(--surface-soft);place-items:center;gap:2px;font-size:12px;font-weight:800;display:grid}.field-block,.manual-entry{color:var(--text);gap:7px;margin-top:12px;font-size:13px;font-weight:800;display:grid}.field-block textarea,.manual-entry textarea{padding:12px;line-height:1.55}.field-block em{color:var(--subtle);justify-self:end;font-size:12px;font-style:normal}.primary-button,.danger-primary,.outline-button,.ghost-button,.ghost-full{white-space:nowrap;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 16px;font-size:14px;font-weight:900;display:inline-flex}.primary-button{color:#fff;background:linear-gradient(145deg, var(--green), var(--green-strong));box-shadow:0 12px 24px color-mix(in srgb, var(--green) 20%, transparent)}.danger-primary{color:#fff;background:linear-gradient(145deg,#e11d2e,#c81422);width:100%}.outline-button,.ghost-button,.ghost-full{color:var(--text);background:var(--surface);border:1px solid var(--line)}.ghost-button.danger-link{color:var(--red);border-color:color-mix(in srgb, var(--red) 22%, var(--line))}.ghost-button.danger-link:hover,.ghost-button.danger-link:focus-visible{color:#fff;background:var(--red);border-color:var(--red)}.outline-button.full,.ghost-full{width:100%}.capture-panel .primary-button{width:100%;margin-top:12px}.privacy-note,.modal-footer-note{color:var(--muted);justify-content:center;align-items:center;gap:7px;margin:12px 0 0;font-size:12px;display:flex}.food-table{scrollbar-gutter:stable both-edges;border:1px solid var(--line);border-radius:10px;overflow:auto}.food-row{background:var(--surface);border-top:1px solid var(--line);grid-template-columns:minmax(86px,1.18fr) minmax(48px,.5fr) 68px 38px 52px 38px 28px;align-items:center;gap:3px;min-height:58px;padding:7px 6px;display:grid}.food-row:not(.table-head),.food-row>*{min-width:0}.food-row:first-child{border-top:0}.table-head{min-height:42px;color:var(--muted);background:var(--surface-soft);font-size:11px;font-weight:900;line-height:1.2}.food-name{grid-template-columns:24px minmax(0,1fr);align-items:center;gap:6px;display:grid}.food-name input{height:32px;padding:0 7px;font-weight:850}.muted{color:var(--muted);font-size:12px;font-weight:750}.muted small{color:var(--subtle);margin-top:2px;font-size:11px;display:block}.number-stepper{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-columns:22px minmax(24px,1fr) 22px;display:grid;overflow:hidden}.number-stepper button{background:var(--surface-soft);place-items:center;display:grid}.number-stepper input{text-align:center;border:0;border-left:1px solid var(--line);border-right:1px solid var(--line);border-radius:0;height:32px;padding:0}.food-row select{height:32px;padding:0 18px 0 5px}.confidence{gap:4px;display:grid}.confidence i,.progress,.bar-line i,.rank-row i,.macro-target i,.stacked-macro i{background:var(--line);border-radius:999px;height:8px;display:block;overflow:hidden}.confidence i b,.progress b,.bar-line b,.rank-row u,.macro-target b{background:var(--green);border-radius:inherit;height:100%;display:block}.confidence span{color:var(--green);font-size:11px;font-weight:850}.food-row>strong{white-space:nowrap;font-size:13px}.food-row .icon-button.subtle{min-width:30px;min-height:30px;padding:0}.library-inline{border-top:1px solid var(--line);flex-direction:column;flex:0 286px;min-height:0;margin-top:10px;padding-top:10px;display:flex}.library-inline-head{flex-wrap:wrap;justify-content:space-between;gap:8px;margin-bottom:10px}.library-inline-head>span{color:var(--muted);font-size:12px;font-weight:850}.library-inline-head>div{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:inline-flex}.library-inline-head button{color:var(--green);align-items:center;gap:5px;font-weight:850;display:inline-flex}.search-field,.global-search{background:var(--surface);border:1px solid var(--line);border-radius:9px;align-items:center;gap:10px;min-height:42px;padding:0 12px;display:flex}.search-field input,.global-search input{box-shadow:none;background:0 0;border:0}.global-search button{color:#fff;background:var(--green);border-radius:7px;flex:none;min-height:30px;padding:0 12px;font-size:12px;font-weight:900}.food-table-empty{padding:10px}.recognition-panel .food-table-empty .empty-state{min-height:104px}.onboarding-panel{background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;gap:8px;margin-top:10px;padding:11px;display:grid}.onboarding-panel>strong{color:var(--green);align-items:center;gap:7px;font-size:13px;display:inline-flex}.onboarding-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.onboarding-steps span{min-width:0;color:var(--muted);align-items:center;gap:6px;font-size:11px;font-weight:800;display:flex}.onboarding-steps b{color:#fff;background:var(--green);border-radius:50%;flex:none;place-items:center;width:18px;height:18px;font-size:11px;display:grid}.quick-food-table{border:1px solid var(--line);scrollbar-gutter:stable;border-radius:9px;flex:auto;min-height:0;max-height:100%;margin-top:10px;display:grid;overflow:auto}.recognition-panel .quick-food-table{scrollbar-gutter:stable;min-height:118px;max-height:100%;overflow:auto}.quick-food-table button{text-align:left;border-top:1px solid var(--line);grid-template-columns:minmax(120px,1.1fr) minmax(96px,.85fr) 92px auto;align-items:center;gap:8px;min-height:36px;padding:0 10px;display:grid}.quick-food-table button>*{min-width:0}.quick-food-table button:first-child{border-top:0}.quick-food-empty{min-height:44px;color:var(--muted);justify-content:center;align-items:center;gap:7px;padding:10px;font-size:12px;font-weight:800;display:flex}.quick-food-table span,.quick-food-table em,.quick-food-table b,.quick-food-table strong,.quick-food-table small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-style:normal;overflow:hidden}.quick-food-table span{color:var(--text);font-size:13px;font-weight:850}.quick-food-table b{min-height:26px;color:var(--green);background:color-mix(in srgb, var(--green-soft) 70%, var(--surface));border:1px solid color-mix(in srgb, var(--green) 24%, var(--line));text-align:right;border-radius:999px;justify-content:center;align-items:center;padding:0 8px;display:inline-flex}.quick-food-table strong{color:var(--text);gap:1px;font-size:12px;font-weight:900;line-height:1.15;display:grid}.quick-food-table small{color:var(--muted);font-size:10.5px;font-weight:800}.quick-starter-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%;display:grid}.quick-starter-grid button{min-height:30px;color:var(--text);text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:0 8px;font-size:12px;font-weight:850}.quick-starter-grid button:hover,.quick-starter-grid button:focus-visible{color:var(--green);border-color:color-mix(in srgb, var(--green) 36%, var(--line));box-shadow:0 0 0 3px color-mix(in srgb, var(--green) 10%, transparent);outline:0}.meal-type-strip{background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;margin-bottom:8px;padding:7px;display:grid}.meal-type-strip>span{color:var(--muted);padding-left:3px;font-size:12px;font-weight:950}.meal-type-strip>div{background:var(--surface);border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.meal-type-strip button{min-width:0;min-height:30px;color:var(--muted);border-left:1px solid var(--line);font-size:12px;font-weight:900}.meal-type-strip button:first-child{border-left:0}.meal-type-strip button:hover,.meal-type-strip button:focus-visible{color:var(--green);background:var(--green-soft)}.meal-type-strip button.active{color:#fff;background:var(--green)}.result-card{border:1px solid var(--line);background:var(--surface);border-radius:12px;grid-template-columns:minmax(96px,.72fr) minmax(126px,1fr);gap:12px;padding:12px;display:grid}.result-card span{color:var(--muted);font-weight:800}.result-card>div>strong{color:var(--red);margin-top:4px;font-size:38px;font-weight:950;line-height:.95;display:block}.result-card strong em{color:var(--red);margin-left:5px;font-size:18px;font-style:normal}.goal-block{align-content:center;gap:6px;display:grid}.goal-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.goal-heading span{flex-wrap:wrap;align-items:baseline;gap:6px;min-width:0;display:inline-flex}.goal-heading em{white-space:nowrap;font-style:normal}.goal-heading b{white-space:nowrap}.goal-block button{width:28px;height:28px;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:8px;place-items:center;display:inline-grid}.goal-block button:hover{color:var(--green);border-color:color-mix(in srgb, var(--green) 34%, var(--line));background:var(--green-soft)}.goal-block small{color:var(--muted);font-weight:750}.macro-summary{border:1px solid var(--line);border-radius:10px;grid-template-columns:repeat(3,1fr);margin-top:7px;display:grid;overflow:hidden}.macro{text-align:center;border-left:1px solid var(--line);gap:3px;padding:8px;display:grid}.macro:first-child{border-left:0}.macro span{color:var(--muted);font-size:13px;font-weight:800}.macro strong{font-size:19px}.macro em{color:var(--muted);font-size:12px;font-style:normal}.macro.green strong{color:var(--green)}.macro.blue strong{color:var(--blue)}.macro.yellow strong{color:var(--yellow)}.range-strip{grid-template-columns:1fr .74fr;gap:8px;margin-top:7px;display:grid}.range-strip span,.insight-note,.summary-drawer{color:var(--muted);background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;padding:8px 10px;font-size:13px;font-weight:800}.range-strip strong{color:var(--text)}.insight-note{color:var(--green);background:var(--green-soft);align-items:flex-start;gap:9px;margin-top:7px;display:flex}.calibration{border-top:1px solid var(--line);gap:6px;margin-top:10px;padding-top:10px;display:grid}.calibration-head{justify-content:space-between}.calibration-head button{color:var(--muted);align-items:center;gap:5px;font-weight:800;display:inline-flex}.factor-row{grid-template-columns:28px minmax(76px,1fr) 20px minmax(150px,1.45fr) auto;align-items:center;gap:6px;display:grid}.factor-row strong{font-size:13px}.factor-options{border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.factor-options button{border-left:1px solid var(--line);min-height:28px;font-size:13px;font-weight:850}.factor-options button:first-child{border-left:0}.factor-options .active{color:#fff;background:var(--green)}.factor-row em{color:var(--muted);font-style:normal;font-weight:800}.summary-drawer{justify-content:space-between;align-items:center;width:100%;margin:8px 0 6px;display:flex}.ghost-full{width:100%;margin-top:6px}.page-title{margin-bottom:18px}.records-toolbar{grid-template-columns:1fr;align-items:start;gap:10px;padding:12px;display:grid}.insight-filter-panel{gap:8px;margin-bottom:16px;padding:10px}.insight-filter-panel .records-filter-main{grid-template-columns:minmax(260px,.9fr) minmax(360px,1.1fr)}.insight-filter-panel .records-filter-grid{grid-template-columns:minmax(136px,.72fr) auto minmax(110px,auto);align-items:end;padding-top:8px}.records-page{grid-template-rows:auto auto minmax(0,1fr);height:auto;min-height:min(620px,100dvh - 120px);margin-block:14px 20px;display:grid;overflow:visible}.records-page .page-title{margin-bottom:10px}.records-filter-main{grid-template-columns:minmax(260px,1fr) minmax(420px,.85fr);align-items:center;gap:12px;display:grid}.records-filter-grid{border-top:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:start;gap:10px;padding-top:10px;display:grid}.records-filter-grid .select-field input{min-height:38px;padding:0 10px}.filter-clear{align-self:end;min-height:38px}.secondary-filter-toggle{min-height:38px;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-weight:850;display:none}.secondary-filter-toggle b{color:#fff;background:var(--green);border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;line-height:1;display:inline-grid}.secondary-filter-toggle[aria-expanded=true]{color:var(--green);background:var(--green-soft);border-color:color-mix(in srgb, var(--green) 28%, var(--line))}.secondary-filter-fields{display:contents}.secondary-filter-collapsible .records-filter-grid{grid-template-columns:minmax(136px,.72fr) auto minmax(110px,auto);align-items:start}.secondary-filter-collapsible .secondary-filter-toggle{align-self:end;display:inline-flex}.secondary-filter-collapsible .secondary-filter-fields{border-top:1px dashed var(--line);grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;padding-top:8px;display:none}.secondary-filter-collapsible .secondary-filter-fields.open{display:grid}.date-range-status{width:fit-content;max-width:100%;min-height:28px;color:var(--subtle);background:var(--surface-soft);border:1px solid var(--line);border-radius:8px;align-items:center;gap:7px;padding:0 10px;font-size:12px;font-weight:850;display:inline-flex}.date-range-status svg{color:var(--green);flex:none}.filter-summary{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding-top:2px;display:grid}.filter-summary>div{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.filter-chip,.filter-summary-clear{min-width:0;min-height:28px;color:var(--text);border-radius:8px;justify-content:center;align-items:center;font-size:12px;font-weight:850;display:inline-flex}.filter-chip{background:color-mix(in srgb, var(--green) 8%, var(--surface));border:1px solid color-mix(in srgb, var(--green) 24%, var(--line));gap:6px;max-width:min(100%,280px);padding:0 8px}.filter-chip span{color:var(--muted);white-space:nowrap;font-size:11px;font-weight:900}.filter-chip strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.filter-chip svg{color:var(--green);flex:none}.filter-chip:hover,.filter-chip:focus-visible{color:var(--green);border-color:color-mix(in srgb, var(--green) 48%, var(--line))}.filter-summary-clear{color:var(--muted);border:1px solid var(--line);background:0 0;padding:0 10px}.filter-summary-clear:hover,.filter-summary-clear:focus-visible{color:var(--text);background:var(--surface-soft)}.filter-stat-strip{grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:6px;min-width:0;display:grid}.filter-stat-strip span{min-height:32px;color:var(--muted);background:var(--surface-soft);border:1px solid var(--line);border-radius:9px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding:0 10px;display:grid}.filter-stat-strip b{white-space:nowrap;font-size:11px;font-weight:950}.filter-stat-strip strong{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:950;overflow:hidden}.filter-stat-strip span.active{color:var(--green);background:color-mix(in srgb, var(--green-soft) 74%, var(--surface));border-color:color-mix(in srgb, var(--green) 26%, var(--line))}.filter-stat-strip span.muted strong{color:var(--muted)}.records-toolbar select,.insight-toolbar select{min-height:42px;padding:0 34px 0 12px}.records-kpis,.analytics-kpis{border:1px solid var(--line);border-radius:12px;grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:0;display:grid;overflow:hidden}.records-kpis .stat-tile{padding:12px}.records-kpis .stat-tile svg{width:38px;height:38px;padding:9px}.records-kpis .stat-tile strong{font-size:20px}.analytics-kpis{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:18px}.analytics-kpis .stat-tile{grid-template-columns:40px minmax(0,1fr);padding:14px}.analytics-kpis .stat-tile svg{width:40px;height:40px;padding:10px}.analytics-kpis .stat-tile strong{white-space:nowrap;font-size:clamp(19px,1.6vw,22px)}.stat-tile{background:var(--surface);border-left:1px solid var(--line);grid-template-columns:44px minmax(0,1fr);align-items:center;gap:2px 12px;padding:18px;display:grid}.stat-tile:first-child{border-left:0}.stat-tile svg{width:44px;height:44px;color:var(--green);background:var(--green-soft);border-radius:50%;grid-row:1/span 3;padding:11px}.stat-tile.red svg{color:var(--red);background:var(--red-soft)}.stat-tile span{color:var(--muted);font-size:13px;font-weight:850}.stat-tile strong{font-size:24px;line-height:1}.stat-tile em{color:var(--muted);font-size:12px;font-style:normal}.records-layout{grid-template-columns:minmax(480px,.95fr) minmax(500px,1.05fr);gap:16px;min-height:0;margin-top:16px;display:grid;overflow:visible}.record-list-panel,.record-detail-panel{min-height:0}.record-list-panel{grid-template-rows:auto minmax(0,auto);display:grid;overflow:visible}.records-layout-empty{grid-template-columns:minmax(0,1fr)}.records-layout-empty .record-detail-panel{display:none}.records-layout-empty .record-list{min-height:0}.record-detail-panel{max-height:min(740px,100dvh - 170px);overflow:auto}.record-list-panel h2,.record-detail-panel h2,.record-detail-panel h3,.library-results h2,.settings-section h3,.panel-lite h3{margin:0 0 12px;font-size:18px}.record-list{align-content:start;min-height:0;max-height:min(740px,100dvh - 170px);display:grid;overflow:auto}.record-row-card{text-align:left;border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) 72px 72px 58px;align-items:center;gap:12px;min-height:62px;padding:9px 12px;display:grid}.record-row-card.active{background:linear-gradient(90deg, var(--green-soft), transparent);box-shadow:4px 0 0 var(--green) inset}.record-row-select{text-align:left;border-radius:9px;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:12px;min-width:0;padding:0;display:grid}.record-row-select:hover strong,.record-row-select:focus-visible strong,.record-row-select[aria-current=true] strong{color:var(--green)}.record-row-card img,.library-name img,.record-thumb,.food-thumb{object-fit:cover;border-radius:8px;width:42px;height:42px}.record-thumb,.food-thumb.synthetic{color:var(--green);background:var(--green-soft);border:1px solid color-mix(in srgb, var(--green) 22%, var(--line));flex:none;place-items:center;display:inline-grid}.food-thumb.real{background:var(--surface);border:1px solid var(--line);flex:none;box-shadow:0 1px #0f172a0a}.food-thumb.synthetic{text-align:center;isolation:isolate;position:relative;overflow:hidden}.food-thumb.synthetic.no-photo{border-style:solid;box-shadow:inset 0 1px #ffffffc2,0 1px #0f172a0a}.food-thumb.synthetic.no-photo:before{aspect-ratio:1;content:"";background:radial-gradient(circle at 35% 35%, color-mix(in srgb, currentColor 18%, transparent), transparent 56%), linear-gradient(135deg, color-mix(in srgb, currentColor 12%, transparent), transparent 64%);opacity:.86;z-index:-1;border-radius:999px;width:68%;position:absolute;inset:-22% -18% auto auto}.food-thumb.synthetic.no-photo:after{content:"";background:color-mix(in srgb, currentColor 44%, transparent);opacity:.7;border-radius:999px;width:18px;height:3px;position:absolute;inset:auto 7px 7px auto}.food-thumb.synthetic b{z-index:1;color:color-mix(in srgb, currentColor 84%, var(--text));letter-spacing:0;font-size:13px;font-weight:950;line-height:1;position:relative}.food-thumb.synthetic .thumb-watermark{opacity:.22;position:absolute;top:5px;right:5px}.food-thumb.small svg{opacity:.86;position:static}.food-thumb.synthetic.cat-protein,.food-thumb.synthetic.cat-seafood{color:#9f3412;background:#fff0e8;border-color:#f3c4ad}.food-thumb.synthetic.cat-vegetable,.food-thumb.synthetic.cat-fruit,.food-thumb.synthetic.cat-soy{color:var(--green);background:var(--green-soft)}.food-thumb.synthetic.cat-staple,.food-thumb.synthetic.cat-dimsum,.food-thumb.synthetic.cat-dish{color:#8a5a05;background:var(--yellow-soft);border-color:#ead69a}.food-thumb.synthetic.cat-dairy,.food-thumb.synthetic.cat-drink{color:var(--blue);background:var(--blue-soft);border-color:#bfd5fb}.food-thumb.synthetic.cat-snack,.food-thumb.synthetic.cat-seasoning,.food-thumb.synthetic.cat-nuts{color:#7c3aed;background:color-mix(in srgb, var(--purple) 12%, var(--surface));border-color:color-mix(in srgb, var(--purple) 30%, var(--line))}.record-thumb.label{color:var(--blue);background:var(--blue-soft)}.record-thumb.manual{color:#a16207;background:var(--yellow-soft)}.food-thumb.small{width:34px;height:34px}.food-thumb.large{place-content:center;width:128px;height:94px}.food-thumb.large b{background:color-mix(in srgb, currentColor 9%, var(--surface));border:1px solid color-mix(in srgb, currentColor 20%, transparent);border-radius:12px;place-items:center;width:42px;height:42px;font-size:18px;display:grid}.food-thumb.large .thumb-watermark{opacity:.26;top:10px;right:12px}.record-row-card strong,.record-row-select strong{font-size:15px}.record-row-card em,.record-row-select em{color:var(--muted);margin-top:3px;font-size:12px;font-style:normal;display:block}.meal-pill,.risk-chip{min-height:26px;color:var(--green);background:var(--green-soft);border-radius:999px;place-items:center;padding:0 9px;font-size:12px;font-weight:850;display:inline-grid}.risk-chip{border:1px solid #0000}.risk-chip-positive{color:#047857;background:#e4f7ec;border-color:#b9ebcf}.risk-chip-alert{color:#92400e;background:#fff5db;border-color:#f8d481}.risk-chip-neutral{color:#475569;background:#f1f5f9;border-color:#dbe3ec}.risk-chip-info{color:#075985;background:#e5f3fb;border-color:#bddff0}.meal-pill.breakfast{color:#0b7a53}.meal-pill.lunch{color:#a16207;background:var(--yellow-soft)}.meal-pill.dinner{color:#4f46e5;background:#eef2ff}.meal-pill.snack{color:#2563eb;background:var(--blue-soft)}.record-actions{color:var(--muted);gap:12px;display:inline-flex}.record-actions button{border-radius:7px;place-items:center;width:26px;height:26px;display:grid}.record-actions button:hover,.record-actions button:focus-visible{color:var(--green);background:var(--green-soft);outline:0}.detail-head{justify-content:space-between;gap:12px;margin-bottom:14px}.detail-head>div{flex-wrap:wrap;gap:8px;display:flex}.detail-form-grid,.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.settings-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.detail-form-grid input,.detail-form-grid select,.detail-notes textarea,.form-field input,.form-field select{min-height:42px;padding:0 12px}.detail-notes{color:var(--muted);gap:7px;margin-top:12px;font-size:13px;font-weight:850;display:grid}.detail-notes textarea{padding:12px}.tag-row{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.tag-row span,.tag-row button{min-height:28px;color:var(--text);background:var(--surface-soft);border:1px solid var(--line);border-radius:999px;padding:0 10px;font-size:12px;font-weight:850}.equation-card,.correction-equation,.summary-topline{border:1px solid var(--line);background:var(--surface-soft);border-radius:10px;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:center;gap:12px;margin:14px 0;padding:15px;display:grid}.correction-equation{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr)}.metric{gap:5px;display:grid}.metric span{color:var(--muted);font-size:13px;font-weight:850}.metric strong{color:var(--text);font-size:20px}.metric.green strong{color:var(--green)}.metric.red strong{color:var(--red)}.metric em{color:var(--muted);font-size:12px;font-style:normal}.detail-food-list{border:1px solid var(--line);border-radius:10px;max-height:170px;display:grid;overflow:auto}.detail-food-list div{border-top:1px solid var(--line);grid-template-columns:minmax(120px,1fr) 100px 70px 90px;align-items:center;gap:10px;min-height:38px;padding:0 12px;display:grid}.detail-food-list div:first-child{border-top:0}.detail-food-list em{color:var(--muted);font-style:normal}.insight-toolbar{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:10px;margin:0 0 14px;display:flex}.insight-toolbar .segmented{max-width:100%}.insight-toolbar select{width:auto;min-width:132px}.insights-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,.85fr);gap:16px;display:grid}.timeline-panel{grid-row:span 3}.timeline-panel,.donut-panel,.meal-bars,.ranking-panel,.macro-panel{min-width:0;overflow:hidden}.legend{color:var(--muted);gap:18px;font-size:13px;font-weight:800;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.legend i{background:var(--green);border-radius:999px;width:22px;height:8px}.legend .goal{border-top:2px dashed var(--green);background:0 0;border-radius:0}.timeline-chart{grid-template-columns:repeat(var(--day-count,30), minmax(14px, 1fr));border-bottom:1px solid var(--line);gap:6px;height:clamp(220px,38vh,300px);padding:26px 8px 28px;display:grid;position:relative;overflow-x:auto}.timeline-chart:before{left:8px;right:8px;top:var(--goal-line-top,44%);content:"";border-top:2px dashed color-mix(in srgb, var(--green) 70%, transparent);position:absolute}.timeline-chart div{border-radius:8px;outline:0;grid-template-rows:22px 1fr 20px;place-items:end center;gap:6px;display:grid}.timeline-chart span{opacity:0;color:var(--muted);font-size:10px}.timeline-chart div:hover span,.timeline-chart div:focus span,.timeline-chart div:focus-visible span,.timeline-chart div:active span{opacity:1}.timeline-chart div:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--green) 18%, transparent)}.timeline-chart div:focus-visible i,.timeline-chart div:focus-visible .macro-stack{outline:2px solid color-mix(in srgb, var(--green) 62%, transparent);outline-offset:3px}.timeline-chart i{background:linear-gradient(180deg, #19a270, var(--green));border-radius:999px 999px 3px 3px;width:100%;max-width:16px;display:block}.timeline-chart .over i{background:linear-gradient(180deg, #f7c948, var(--green))}.timeline-chart .macro-stack{border-radius:999px 999px 3px 3px;flex-direction:column-reverse;width:100%;max-width:18px;min-height:8px;display:flex;overflow:hidden}.timeline-chart .macro-stack i{background:var(--green);border-radius:0;width:100%;max-width:none;min-height:2px}.timeline-chart .macro-stack .protein,.macro-legend .protein{background:var(--green)}.timeline-chart .macro-stack .carbs,.macro-legend .carbs{background:var(--blue)}.timeline-chart .macro-stack .fat,.macro-legend .fat{background:#f2b636}.timeline-chart em{color:var(--muted);opacity:0;white-space:nowrap;font-size:9px;font-style:normal}.timeline-chart div:nth-child(3n+1) em,.timeline-chart div:last-child em{opacity:1}.chart-footer{border:1px solid var(--line);border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:0;margin-top:14px;display:grid;overflow:hidden}.chart-footer .metric{text-align:center;border-left:1px solid var(--line);padding:12px}.chart-footer .metric:first-child{border-left:0}.donut-layout{grid-template-columns:118px minmax(0,1fr);align-items:center;gap:14px;display:grid}.donut{width:112px;height:112px;box-shadow:inset 0 0 0 31px var(--surface);border-radius:50%}.donut-layout p{color:var(--muted);align-items:center;gap:9px;margin:8px 0;font-size:13px;font-weight:800;display:flex}.donut-layout strong{color:var(--text);margin-left:auto}.meal-dot{background:#f2b636;border-radius:50%;width:9px;height:9px}.dot-1{background:var(--green)}.dot-2{background:var(--blue)}.dot-3{background:var(--purple)}.bar-line,.rank-row,.macro-target{color:var(--muted);grid-template-columns:52px minmax(0,1fr) 76px;align-items:center;gap:12px;margin:14px 0;font-size:13px;font-weight:850;display:grid}.rank-row{grid-template-columns:24px minmax(90px,1fr) minmax(0,1.4fr) 54px}.rank-row b{color:#d97706;font-size:18px}.rank-row u{background:var(--green)}.macro-target{grid-template-columns:90px 58px minmax(0,1fr) 70px}.insight-summary{grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:16px;margin-top:18px;display:grid}.insight-summary svg{color:#fff;background:var(--green);border-radius:50%;width:48px;height:48px;padding:11px}.insight-summary span{color:var(--muted);flex:1}.insight-summary strong{color:var(--text);display:block}.insight-summary button{color:var(--green);align-items:center;gap:6px;font-weight:900;display:inline-flex}.insights-empty{min-height:0;padding:18px}.global-search{min-height:42px;margin-bottom:4px}.global-search input{font-size:15px}.library-filter-panel{border-bottom:1px solid var(--line);gap:7px;min-height:0;margin-bottom:10px;padding-bottom:10px;display:grid;position:relative;overflow:visible}.library-page{grid-template-rows:auto auto minmax(0,1fr);height:auto;min-height:min(600px,100dvh - 116px);margin-block:10px 16px;display:grid;overflow:visible}.library-page .page-title{margin-bottom:10px}.page-title-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.page-title-actions .outline-button{min-height:36px;padding-inline:12px}.category-strip,.sub-category-strip{flex-wrap:wrap;gap:5px;margin-bottom:0;padding-bottom:0;display:flex;overflow:visible}.filter-layer{grid-template-columns:58px minmax(0,1fr);align-items:start;gap:8px;min-height:0;display:grid;overflow:visible}.filter-layer+.filter-layer{border-top:1px solid var(--line);padding-top:6px}.filter-layer>span{color:var(--muted);white-space:nowrap;padding-top:6px;font-size:11px;font-weight:900}.category-strip.wrap,.sub-category-strip.wrap{align-content:start;padding:0 0 4px}.category-strip button,.sub-category-strip button{min-height:25px;color:var(--muted);white-space:normal;border:1px solid #0000;border-radius:8px;align-items:center;gap:5px;padding:0 6px;font-size:10.8px;font-weight:850;line-height:1.15;display:inline-flex}.category-strip button.active,.sub-category-strip button.active{color:#fff;background:var(--green);border-color:var(--green)}.sub-category-strip button{color:var(--text);background:var(--surface);border-color:var(--line)}.advanced-filters{z-index:auto;background:color-mix(in srgb, var(--surface-soft) 72%, var(--surface));border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(auto-fit,minmax(168px,1fr));align-items:stretch;gap:7px;max-height:none;padding:9px;display:none;position:static;overflow:visible;box-shadow:inset 0 1px #fff9}.advanced-filters.open{margin-top:4px;display:grid}.filter-group{border:0;min-width:0;margin:0;padding:0}.filter-group legend,.select-field>span{color:var(--muted);margin-bottom:5px;font-size:11px;font-weight:900;display:block}.filter-group>div{grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:4px;display:grid}.filter-group button{min-width:0;min-height:32px;color:var(--text);text-align:center;background:color-mix(in srgb, var(--surface) 88%, var(--surface-soft));border:1px solid var(--line);border-radius:8px;justify-content:center;align-items:center;gap:2px;padding:5px 7px;display:grid;box-shadow:inset 0 1px #ffffff85}.filter-group button span{white-space:normal;overflow-wrap:anywhere;font-size:11px;font-weight:900;line-height:1.15}.filter-group button small{color:var(--muted);white-space:normal;overflow-wrap:anywhere;font-size:9.5px;font-weight:750;line-height:1.15;display:block}.filter-group button.active{color:var(--green);background:color-mix(in srgb, var(--green-soft) 82%, var(--surface));border-color:color-mix(in srgb, var(--green) 44%, var(--line));box-shadow:inset 0 -2px 0 var(--green), 0 5px 12px color-mix(in srgb, var(--green) 8%, transparent)}.filter-group button:hover,.filter-group button:focus-visible{border-color:color-mix(in srgb, var(--green) 30%, var(--line));box-shadow:0 0 0 3px color-mix(in srgb, var(--green) 9%, transparent);outline:0}.filter-group button.active small{color:var(--green)}.advanced-filters .filter-group button{grid-template-rows:auto auto;display:grid}.advanced-filters .filter-group button small{max-width:100%}.select-field{align-content:start;display:grid}.select-field select{min-width:0;min-height:34px;color:var(--text);background-color:color-mix(in srgb, var(--surface) 90%, var(--surface-soft));border-color:var(--line);border-radius:9px;padding-left:11px;padding-right:34px;font-weight:850;box-shadow:inset 0 1px #ffffff8c}.textarea-field textarea{resize:vertical;min-height:86px;padding:10px 12px}.compact-reset{grid-column:auto;align-self:end;min-height:34px;padding-inline:12px}.custom-food-form{background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 96%, white), var(--surface-soft));border:1px solid color-mix(in srgb, var(--green) 18%, var(--line));border-radius:12px;grid-template-columns:repeat(6,minmax(92px,1fr));align-items:end;gap:8px;margin-top:4px;padding:10px;display:grid;box-shadow:inset 0 1px #ffffff8a}.custom-food-form label:first-of-type{grid-column:span 2}.custom-food-title{flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:baseline;gap:6px 12px;padding-bottom:2px;display:flex}.custom-food-title strong{color:var(--text);font-size:14px;font-weight:950}.custom-food-title span{color:var(--muted);font-size:12px;font-weight:800}.custom-food-form label{gap:5px;min-width:0;display:grid;position:relative}.custom-food-form label span{color:var(--muted);font-size:11px;font-weight:900}.custom-food-form input,.custom-food-form select{min-height:36px;padding-inline:10px}.custom-food-form label:has(em) input{padding-right:58px}.custom-food-form label:has(em):nth-of-type(4) input{padding-right:84px}.custom-food-form label em{color:var(--muted);pointer-events:none;font-size:10.5px;font-style:normal;font-weight:850;position:absolute;bottom:10px;right:10px}.custom-food-actions{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;align-items:end;gap:7px;min-width:0;display:flex}.custom-food-actions .ghost-button,.custom-food-actions .primary-button{min-height:36px;padding-inline:12px}.library-empty-create{place-items:center;gap:12px;min-height:260px;padding:18px;display:grid}.library-empty-create .empty-state{min-height:0;padding:0}.library-layout{grid-template-columns:minmax(520px,1.02fr) minmax(380px,.98fr);align-items:start;gap:14px;min-height:0;display:grid;overflow:hidden}.library-results,.library-detail{height:auto;min-height:0;max-height:min(720px,100dvh - 170px);overflow:auto}.library-results{grid-template-rows:auto auto minmax(0,1fr);display:grid}.library-table{border:1px solid var(--line);border-radius:10px;min-height:0;max-height:none;overflow:auto}.library-results-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.library-results-head>div:first-child{min-width:0}.library-results-head h2{margin:0}.library-results-head span{color:var(--muted);font-size:12px;font-weight:850}.library-bulk-actions{flex:none;justify-content:flex-end;align-items:center;gap:7px;display:flex}.library-bulk-actions em{color:var(--muted);white-space:nowrap;font-size:12px;font-style:normal;font-weight:900}.library-bulk-actions .ghost-button,.library-bulk-add{min-height:32px;padding-inline:10px;font-size:12px}.library-bulk-add{color:#fff;background:var(--green);border:1px solid var(--green);border-radius:8px;justify-content:center;align-items:center;gap:5px;font-weight:900;display:inline-flex}.library-bulk-add:disabled{color:var(--muted);background:var(--surface-soft);border-color:var(--line)}.library-selection-bar{background:color-mix(in srgb, var(--green-soft) 74%, var(--surface));border:1px solid color-mix(in srgb, var(--green) 22%, var(--line));border-radius:10px;justify-content:space-between;align-items:center;gap:10px;margin:-2px 0 10px;padding:8px 10px;display:flex}.library-selection-bar>span,.library-selection-bar>div{align-items:center;gap:8px;display:inline-flex}.library-selection-bar>span{min-width:0;color:var(--green);font-size:12px;font-weight:900}.library-selection-bar>div{flex:none}.library-selection-bar .ghost-button,.library-selection-bar .library-bulk-add{min-height:30px;padding-inline:9px}.library-page.bulk-review-open{padding-bottom:150px}.library-bulk-review{z-index:96;background:color-mix(in srgb, var(--surface) 98%, transparent);border:1px solid var(--line-strong);width:min(520px,100vw - 24px);max-height:min(560px,100dvh - 88px);box-shadow:var(--shadow-lg);border-radius:12px;gap:10px;padding:12px;display:grid;position:fixed;bottom:18px;right:clamp(12px,3vw,30px);overflow:auto}.bulk-review-head,.bulk-review-row,.bulk-review-actions{align-items:center;display:flex}.bulk-review-head{justify-content:space-between;gap:12px}.bulk-review-head strong,.bulk-review-row b{color:var(--text);font-weight:950}.bulk-review-head span,.bulk-review-row em{color:var(--muted);margin-top:2px;font-size:12px;font-style:normal;font-weight:800;display:block}.bulk-review-list{border:1px solid var(--line);border-radius:10px;display:grid;overflow:hidden}.bulk-review-row{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) 118px 72px 32px;gap:10px;min-height:54px;padding:8px;display:grid}.bulk-review-row:first-child{border-top:0}.bulk-review-row>span{min-width:0}.bulk-review-row b{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.bulk-review-row .number-stepper input{height:30px}.bulk-review-row strong{white-space:nowrap;justify-self:end;font-size:13px}.bulk-review-actions{justify-content:flex-end;gap:8px}.bulk-review-actions .primary-button,.bulk-review-actions .ghost-button{min-height:34px}.library-row{text-align:left;border-top:1px solid var(--line);grid-template-columns:32px minmax(132px,1.14fr) minmax(132px,.76fr) minmax(72px,.48fr) 78px 82px;align-items:center;gap:8px;width:100%;min-height:56px;padding:7px 9px;display:grid}.library-row>*{min-width:0}.library-row:first-child{border-top:0}.library-row.active{background:linear-gradient(90deg, var(--green-soft), transparent);box-shadow:3px 0 0 var(--green) inset}.library-row.menu-open{z-index:5;position:relative}.library-row.checked{background:var(--surface)}.library-row.checked.active{background:linear-gradient(90deg, var(--green-soft), transparent)}.library-select-toggle{color:#0000;background:var(--surface);border:1px solid var(--line-strong);border-radius:7px;place-items:center;width:28px;height:28px;display:grid;position:relative;box-shadow:inset 0 1px #ffffff9e}.library-select-toggle svg{opacity:0;width:15px;height:15px;transition:opacity .12s,transform .12s;transform:scale(.72)}.library-row.checked .library-select-toggle:after{content:"";border:1px solid color-mix(in srgb, var(--green) 26%, transparent);pointer-events:none;border-radius:11px;position:absolute;inset:-5px}.library-select-toggle[aria-checked=true]{color:#fff;background:var(--green);border-color:var(--green);box-shadow:0 8px 18px color-mix(in srgb, var(--green) 18%, transparent)}.library-select-toggle[aria-checked=true] svg,.library-select-toggle[aria-checked=mixed] svg{opacity:1;transform:scale(1)}.library-select-toggle[aria-checked=mixed]{color:#fff;background:color-mix(in srgb, var(--green) 82%, var(--text));border-color:var(--green)}.library-select-toggle:disabled{opacity:.45;cursor:not-allowed}.library-select-all{justify-self:center}.library-select-toggle:hover,.library-select-toggle:focus-visible{border-color:var(--green);box-shadow:0 0 0 3px color-mix(in srgb, var(--green) 12%, transparent);outline:0}.library-name{grid-template-columns:34px minmax(0,1fr);align-items:center;gap:4px 10px;min-width:0;display:grid}.library-name-button{width:100%;color:inherit;text-align:left;border:1px solid #0000;border-radius:8px;margin:-3px 0;padding:3px 4px;transition:background .16s,border-color .16s,box-shadow .16s}.library-name-button:hover,.library-name-button:focus-visible{background:color-mix(in srgb, var(--green-soft) 54%, transparent);border-color:color-mix(in srgb, var(--green) 18%, transparent);box-shadow:0 0 0 3px color-mix(in srgb, var(--green) 9%, transparent);outline:0}.library-name-button[aria-current=true]{background:color-mix(in srgb, var(--green-soft) 68%, transparent);border-color:color-mix(in srgb, var(--green) 24%, transparent)}.library-name strong{text-overflow:ellipsis;white-space:nowrap;grid-column:2;overflow:hidden}.library-name small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:750;overflow:hidden}.library-name-meta{grid-column:2;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px;min-width:0;display:grid}.library-source-pill{min-height:20px;color:var(--muted);white-space:nowrap;background:var(--surface-soft);border:1px solid var(--line);border-radius:999px;align-items:center;padding:0 6px;font-size:10.5px;font-weight:950;line-height:1;display:inline-flex}.library-source-pill.source-foundation{color:#075985;background:#e0f2fe;border-color:#bae6fd}.library-source-pill.source-survey{color:#047857;background:#dff7eb;border-color:#b7ebd0}.library-source-pill.source-curated{color:#92400e;background:#fff7dd;border-color:#fde68a}.library-source-pill.source-openfoodfacts{color:#6d28d9;background:#f0e7ff;border-color:#ddd6fe}.library-source-pill.source-custom{color:#115e59;background:#e6fffb;border-color:#99f6e4}.library-source-pill.source-image{color:#155e75;background:#e6f7fb;border-color:#bae6fd}.library-source-pill.source-no-image{color:var(--muted);background:var(--surface-soft);border-color:var(--line)}.library-macro-line{border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden}.library-macro-line b{min-height:28px;color:var(--muted);text-align:center;border-left:1px solid var(--line);padding:6px 7px;font-size:11px;font-weight:850}.library-macro-line b:first-child{border-left:0}.library-tags,.library-row-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.library-tags{min-width:0}.library-kcal{justify-items:end;line-height:1;display:grid}.library-kcal strong{font-size:19px}.library-kcal em{color:var(--muted);font-size:11px;font-style:normal;font-weight:850}.library-kcal small{max-width:78px;color:var(--muted);text-align:right;white-space:normal;margin-top:4px;font-size:10.5px;font-weight:850;line-height:1.15}.library-row-actions{flex-wrap:nowrap;justify-content:flex-end;min-width:0}.library-row .library-row-actions,.library-row.table-head span:last-child{z-index:2;background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--surface) 92%, transparent) 28%);padding-left:8px;position:sticky;right:0}.library-row.table-head span:last-child{background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--surface-soft) 94%, transparent) 28%)}.library-row.active .library-row-actions{background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--green-soft) 82%, var(--surface)) 28%)}.library-row.checked .library-row-actions{background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--surface) 92%, transparent) 28%)}.library-row.checked.active .library-row-actions{background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--green-soft) 86%, var(--surface)) 28%)}.library-row-actions .ghost-button,.library-row-actions .library-add-action{min-height:30px;padding-inline:6px;font-size:12px}.library-add-action{min-height:30px;color:var(--green);background:var(--surface);border:1px solid color-mix(in srgb, var(--green) 45%, var(--line));border-radius:7px;flex:auto;place-items:center;font-weight:900;display:grid}.library-add-action:hover,.library-add-action:focus-visible{color:#fff;background:var(--green);outline:0}.library-more-root{flex:none;place-items:center;display:inline-grid;position:relative}.library-more-button{width:30px;height:30px;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:7px;place-items:center;display:grid}.library-more-button:hover,.library-more-button:focus-visible,.library-more-button[aria-expanded=true]{color:var(--green);background:color-mix(in srgb, var(--green-soft) 62%, var(--surface));border-color:color-mix(in srgb, var(--green) 35%, var(--line));outline:0}.library-row-menu{z-index:120;background:var(--surface);border:1px solid var(--line);min-width:154px;box-shadow:var(--shadow-lg);border-radius:10px;padding:6px;display:grid;position:fixed}.library-row-menu.floating{max-width:calc(100vw - 16px)}.library-row-menu.top{transform-origin:100% 100%}.library-row-menu.bottom{transform-origin:100% 0}.library-row-menu button{min-height:32px;color:var(--text);text-align:left;border-radius:7px;align-items:center;padding:0 9px;font-size:12px;font-weight:850;display:flex}.library-row-menu button:hover,.library-row-menu button:focus-visible{color:var(--green);background:color-mix(in srgb, var(--green-soft) 72%, var(--surface));outline:0}.library-row-menu .danger-menu-item{color:var(--red)}.library-row-menu .danger-menu-item:hover,.library-row-menu .danger-menu-item:focus-visible{color:var(--red);background:var(--red-soft)}.library-detail{align-content:start;gap:14px;scroll-margin-top:12px;display:grid;position:relative}.detail-close{color:var(--muted);position:absolute;top:12px;right:12px}.detail-close:focus-visible{color:var(--green);background:var(--green-soft);outline:2px solid color-mix(in srgb, var(--green) 52%, transparent);outline-offset:2px}.food-detail-head{grid-template-columns:128px minmax(0,1fr) 120px;align-items:center;gap:18px;display:grid}.food-detail-head h2{margin:0;font-size:24px}.food-detail-head h2 b{color:var(--green);background:var(--green-soft);border-radius:6px;margin-left:10px;padding:3px 8px;font-size:12px}.food-detail-head p,.food-detail-head span,.food-detail-head small{color:var(--muted);display:block}.food-detail-head .source-badges{flex-wrap:wrap;gap:6px;margin:8px 0 0;display:flex}.food-detail-head .source-badges span{min-height:24px;color:var(--muted);background:var(--surface-soft);border:1px solid var(--line);border-radius:999px;align-items:center;padding:0 8px;font-size:12px;font-weight:850;display:inline-flex}.food-detail-head .source-badges .source-foundation{color:#075985;background:#e0f2fe;border-color:#bae6fd}.food-detail-head .source-badges .source-survey{color:#047857;background:#dff7eb;border-color:#b7ebd0}.food-detail-head .source-badges .source-curated{color:#92400e;background:#fff7dd;border-color:#fde68a}.food-detail-head .source-badges .source-openfoodfacts{color:#6d28d9;background:#f0e7ff;border-color:#ddd6fe}.food-detail-head .source-badges .source-custom{color:#115e59;background:#e6fffb;border-color:#99f6e4}.food-detail-head .source-badges .source-brand{color:#155e75;background:#ecfeff;border-color:#a5f3fc}.food-detail-head .source-badges .source-barcode{color:#334155;background:#f8fafc;border-color:#cbd5e1}.food-detail-head .source-badges .source-detail,.food-detail-head .source-badges .source-no-image{color:var(--muted);background:var(--surface)}.food-detail-head .source-badges .source-image{color:#155e75;background:#e6f7fb;border-color:#bae6fd}.food-detail-head>strong{text-align:center;font-size:30px}.food-detail-head>strong em{color:var(--muted);font-size:14px;font-style:normal;display:block}.serving-card,.nutrition-grid,.health-tip,.component-meter,.source-flow,.summary-bottom{border:1px solid var(--line);background:var(--surface-soft);border-radius:10px;padding:14px}.serving-card,.nutrition-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.nutrition-grid{grid-template-columns:repeat(5,1fr)}.serving-card label{gap:6px;display:grid}.serving-card select{min-height:38px;padding:0 34px 0 10px}.health-tip{color:var(--green);gap:10px;display:flex}.health-tip span{color:var(--muted)}.health-tip strong{color:var(--green);display:block}.component-meter strong{margin-bottom:10px;display:block}.component-meter-head{grid-template-columns:minmax(0,1fr) auto;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:grid}.component-meter-head span{color:var(--muted);font-size:12px;font-weight:750}.macro-legend{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.macro-legend span{min-height:26px;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:999px;align-items:center;gap:6px;padding:0 8px;font-size:12px;font-weight:850;display:inline-flex}.macro-legend i{border-radius:50%;width:10px;height:10px}.macro-legend .protein{background:var(--green)}.macro-legend .carbs{background:var(--blue)}.macro-legend .fat{background:var(--yellow)}.macro-legend .other{background:#a3a3a3}.component-meter-bar,.stacked-macro i{background:var(--line);border-radius:999px;height:12px;display:flex;overflow:hidden}.component-meter i,.stacked-macro b{height:100%;display:block}.component-meter i:first-child,.stacked-macro b:first-child{background:var(--green)}.component-meter i:nth-child(2),.stacked-macro b:nth-child(2){background:var(--blue)}.component-meter i:nth-child(3),.stacked-macro b:nth-child(3){background:var(--yellow)}.component-meter i:nth-child(4){background:#a3a3a3}.component-meter p{color:var(--muted);flex-wrap:wrap;gap:8px;margin:12px 0 0;font-size:12px;font-weight:800;display:flex}.nutrient-legend{justify-content:center;margin-top:10px}.nutrient-legend span{color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:999px;align-items:center;gap:0;padding:4px 8px;display:inline-flex}.component-chips{margin-top:10px}.component-chips span{min-height:26px;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:999px;align-items:center;padding:0 9px;display:inline-flex}.detail-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0a0e0c75;place-items:center;padding:14px;display:grid;position:fixed;inset:0}.modal-panel{width:min(980px,100vw - 36px);max-height:min(720px,100dvh - 36px);box-shadow:var(--shadow-lg);outline:none;padding:12px;overflow:auto}.modal-profile{grid-template-rows:auto minmax(0,1fr);width:min(900px,100vw - 36px);display:grid;overflow:hidden}.modal-settings{grid-template-rows:auto minmax(0,1fr);width:min(980px,100vw - 36px);display:grid;overflow:hidden}.modal-summary,.modal-help{width:min(960px,100vw - 48px)}.modal-account{grid-template-rows:auto minmax(0,1fr);width:min(1080px,100vw - 36px);display:grid;overflow:hidden}.modal-heading{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:10px;margin-bottom:10px;padding-bottom:10px}.profile-layout,.settings-layout{grid-template-columns:118px minmax(0,1fr);gap:12px;min-height:0;display:grid}.modal-content-frame{grid-template-rows:minmax(0,1fr) auto;min-height:0;display:grid;overflow:hidden}.modal-content-frame>.profile-layout,.modal-content-frame>.settings-layout,.modal-content-frame>.account-main{min-height:0;overflow:hidden}.modal-sticky-actions{border-top:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;gap:10px;margin-top:10px;padding:8px 0 0;display:flex}.modal-sticky-actions>span{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:850;overflow:hidden}.modal-sticky-actions>div{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:8px;display:flex}.profile-sidebar,.settings-sidebar{border-right:1px solid var(--line);align-content:start;gap:6px;padding-right:12px;display:grid}.profile-sidebar button,.settings-sidebar button{width:100%;min-height:34px;color:var(--text);text-align:left;background:var(--surface);border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;padding:0 10px;font-weight:850;display:inline-flex}.profile-sidebar button.active,.settings-sidebar button.active{color:var(--green);background:var(--green-soft)}.profile-main,.settings-main{align-content:start;gap:10px;min-width:0;min-height:0;display:grid}.modal-settings .settings-layout{min-height:0;max-height:min(610px,100dvh - 128px)}.modal-settings .settings-main{scrollbar-gutter:stable;max-height:none;padding-bottom:clamp(62px,9dvh,96px);padding-right:6px;scroll-padding-bottom:clamp(62px,9dvh,96px);overflow:auto}.modal-profile .profile-layout{min-height:0;max-height:min(610px,100dvh - 128px)}.modal-profile .profile-main{scrollbar-gutter:stable;max-height:none;padding-bottom:clamp(62px,9dvh,96px);padding-right:6px;scroll-padding-bottom:clamp(62px,9dvh,96px);overflow:auto}.modal-account .account-main{scrollbar-gutter:stable;max-height:min(660px,100dvh - 136px);padding-bottom:clamp(72px,12dvh,118px);padding-right:6px;scroll-padding-bottom:clamp(72px,12dvh,118px);overflow:auto}.modal-profile .form-field input,.modal-profile .form-field select,.modal-settings .form-field input,.modal-settings .form-field select,.modal-settings .select-field select{min-height:38px}.modal-profile .form-grid,.modal-settings .settings-grid{gap:9px}.profile-hero{grid-template-columns:60px minmax(0,1fr);align-items:center;gap:9px;display:grid}.avatar-editor{width:56px;height:56px;color:var(--green);background:var(--surface-soft);border:1px solid var(--line);border-radius:50%;place-items:center;display:grid;position:relative}.avatar-editor svg{width:34px;height:34px}.profile-hero h3{align-items:center;gap:10px;margin:0;font-size:19px;display:flex}.profile-hero p,.profile-hero blockquote{color:var(--muted)}.profile-hero b{color:var(--green);background:var(--green-soft);border-radius:6px;margin-top:5px;padding:4px 9px;display:inline-flex}.profile-hero blockquote{border-top:1px solid var(--line);grid-column:1/-1;margin:0;padding-top:10px;font-size:13px;font-weight:700;line-height:1.45}.profile-kpis{border:1px solid var(--line);border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(142px,1fr));gap:0;margin:4px 0;display:grid;overflow:hidden}.profile-kpis .metric{border-left:1px solid var(--line);padding:8px 9px}.profile-kpis .metric:first-child{border-left:0}.profile-kpis .metric strong{font-size:18px}.profile-content-grid{grid-template-columns:minmax(0,1fr);gap:10px;display:grid}.profile-form-stack{gap:8px;min-width:0;display:grid}.profile-section-card{border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:10px}.profile-section-card+.profile-section-card{margin-top:0}.profile-form h3,.daily-advice h3{margin:0 0 8px}.form-field{color:var(--muted);gap:5px;font-size:13px;font-weight:850;display:grid}.form-field div{align-items:center;gap:8px;display:flex;position:relative}.form-field div input{padding-right:48px}.form-field em{color:var(--muted);font-style:normal;position:absolute;right:12px}.compact-fields{border-top:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));padding-top:10px}.daily-advice{border-left:0;grid-template-columns:minmax(132px,.44fr) minmax(220px,1fr) minmax(150px,.58fr);align-items:start;gap:8px 12px;padding:10px;display:grid}.daily-advice h3{grid-column:1/-1}.daily-advice>strong{color:var(--green);grid-column:1;font-size:22px;display:block}.daily-advice>strong em{color:var(--muted);margin-left:4px;font-size:16px;font-style:normal}.daily-advice>p{grid-column:1}.daily-advice>.metric{grid-area:2/3}.stacked-macro{grid-area:2/2/span 2;margin:10px 0}.stacked-macro p{color:var(--muted);justify-content:space-between;gap:8px;font-size:12px;font-weight:800;display:flex}.stacked-macro b:first-child{width:29%}.stacked-macro b:nth-child(2){width:45%}.stacked-macro b:nth-child(3){width:26%}.target-summary{border-top:1px solid var(--line);grid-area:3/3;margin-top:10px;padding-top:10px}.target-summary p{color:var(--muted);justify-content:space-between;display:flex}.profile-data-actions{background:0 0;justify-content:flex-end;margin-top:0}.modal-actions{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:12px;padding-top:12px}.account-grid{grid-template-columns:minmax(340px,.92fr) minmax(420px,1.08fr);gap:12px;display:grid}.account-card{border:1px solid var(--line);background:var(--surface);border-radius:10px;min-width:0;padding:16px}.account-tabs{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;margin:0 0 12px;display:grid}.account-tabs button{min-height:38px;color:var(--muted);font-weight:900}.account-tabs .active{color:var(--green);box-shadow:0 2px 0 var(--green)}.account-card .form-field{margin-top:10px}.check-row{color:var(--text);align-items:center;gap:9px;margin:20px 0;font-weight:850;display:flex}.check-row input{width:18px;height:18px;margin:0;display:grid}.security-note{color:var(--muted);justify-content:flex-start;gap:7px;margin-top:12px;font-size:13px;line-height:1.35;display:flex}.signed-user,.sync-box{border:1px solid var(--line);background:var(--surface-soft);border-radius:10px;align-items:center;gap:12px;padding:12px;display:flex}.signed-user strong{font-size:20px;display:block}.signed-user b,.sync-box b{color:var(--green);background:var(--green-soft);border-radius:5px;padding:3px 8px;font-size:12px}.signed-user em,.sync-box em{color:var(--muted);margin-top:5px;font-style:normal;display:block}.sync-box{margin-bottom:8px}.sync-box span{flex:1}.sync-box svg{color:var(--green)}.sync-row{color:var(--muted);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;margin:0;padding:9px 12px;display:flex}.sync-row b{color:var(--text);font-size:13px}.sync-row svg{color:var(--green);flex:none}.sync-scope{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.sync-scope .sync-row{background:var(--surface);border:1px solid var(--line);border-radius:9px;grid-column:1/-1}.sync-scope-row{background:var(--surface);border:1px solid var(--line);border-radius:9px;gap:4px;min-width:0;margin:0;padding:9px 10px;display:grid}.sync-scope-row span{color:var(--muted);font-size:12px;font-weight:850}.sync-scope-row b{color:var(--text);overflow-wrap:anywhere;font-size:13px;line-height:1.35}.sync-scope-row.include{border-color:color-mix(in srgb, var(--green) 18%, var(--line))}.sync-scope-row.exclude{background:color-mix(in srgb, #fef3c7 26%, var(--surface));border-color:color-mix(in srgb, #d97706 18%, var(--line))}.sync-scope-row.backup{background:color-mix(in srgb, var(--green-soft) 44%, var(--surface))}.account-actions{justify-content:space-between;margin:24px 0;display:flex}.danger-zone{background:var(--red-soft);border:1px solid color-mix(in srgb, var(--red) 28%, var(--line));border-radius:10px;grid-template-columns:1fr 240px 130px;align-items:end;gap:12px;padding:18px;display:grid}.danger-zone strong{color:var(--red)}.danger-zone p{color:var(--muted);grid-column:1;margin:4px 0 0}.danger-zone input{grid-column:2;min-height:42px;padding:0 12px}.danger-zone button{color:#fff;background:var(--red);border-radius:8px;min-height:42px;font-weight:900}.settings-section{border:1px solid var(--line);background:var(--surface);border-radius:12px;margin-bottom:8px;padding:12px}.settings-section+.settings-section{margin-top:10px}.model-summary-strip{grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:8px;margin-bottom:8px;display:grid}.model-summary-strip span{color:var(--muted);background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;gap:4px;padding:9px 10px;font-size:12px;font-weight:800;display:grid}.model-summary-strip strong{color:var(--text);font-size:13px}.toggle-row{min-height:42px;color:var(--text);grid-template-columns:1fr 54px;align-items:center;gap:12px;font-weight:850;display:grid}.toggle-row input{clip:rect(0 0 0 0);clip-path:inset(50%);width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.toggle-row i{background:color-mix(in srgb, var(--line-strong) 72%, var(--surface));border:1px solid color-mix(in srgb, var(--line-strong) 80%, var(--surface));border-radius:999px;width:50px;height:28px;position:relative;box-shadow:inset 0 1px 2px #0f172a14}.toggle-row i b{background:linear-gradient(#fff,#f5f7f6);border-radius:50%;width:22px;height:22px;transition:transform .18s,box-shadow .18s;position:absolute;top:3px;left:3px;box-shadow:0 3px 8px #0f172a2e}.toggle-row input:checked+i{background:var(--green);border-color:var(--green)}.toggle-row input:checked+i b{transform:translate(22px)}.toggle-row input:focus-visible+i{border-color:var(--green);box-shadow:0 0 0 3px color-mix(in srgb, var(--green) 18%, transparent)}.section-inline{justify-content:space-between}.section-inline span{color:var(--green);align-items:center;gap:6px;font-size:13px;font-weight:850;display:inline-flex}.provider-tabs{border:1px solid var(--line);border-radius:10px 10px 0 0;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));display:grid;overflow:hidden}.provider-tabs button{border-left:1px solid var(--line);min-height:36px;padding:0 8px;font-size:12px;font-weight:850}.provider-tabs button:first-child{border-left:0}.provider-tabs .active{color:var(--green);background:var(--green-soft)}.provider-order{background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;gap:5px;max-height:none;margin-top:8px;padding:8px;display:grid;overflow:visible}.provider-order-row{background:var(--surface);border:1px solid var(--line);border-radius:10px;grid-template-columns:minmax(0,1fr) minmax(178px,auto);align-items:center;gap:8px;min-height:42px;padding:5px 8px;display:grid}.provider-order-row.active{border-color:color-mix(in srgb, var(--green) 42%, var(--line));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--green) 16%, transparent)}.provider-order-row.active .provider-status{border-color:color-mix(in srgb, var(--green) 34%, var(--line))}.provider-order-copy{min-width:0}.provider-order-copy strong,.provider-order-copy span{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.provider-order-copy span{color:var(--muted);font-size:12px}.provider-status{min-height:20px;color:var(--muted);vertical-align:1px;background:var(--surface-soft);border:1px solid var(--line);border-radius:999px;align-items:center;margin-left:8px;padding:0 7px;font-size:11px;font-weight:900;display:inline-flex}.provider-status.ready,.model-chain-step.ready b{color:var(--green);background:var(--green-soft);border-color:color-mix(in srgb, var(--green) 32%, var(--line))}.provider-status.missing-key,.model-chain-step.missing-key b{color:color-mix(in srgb, #b45309 86%, var(--text));background:color-mix(in srgb, #fef3c7 74%, var(--surface));border-color:color-mix(in srgb, #d97706 24%, var(--line))}.provider-status.missing-model,.provider-status.missing-endpoint,.model-chain-step.missing-model b,.model-chain-step.missing-endpoint b{color:var(--red);background:color-mix(in srgb, var(--red) 8%, var(--surface));border-color:color-mix(in srgb, var(--red) 18%, var(--line))}.provider-order-actions{align-items:center;gap:6px;display:inline-flex}.provider-order-actions .icon-button{width:32px;height:32px}.provider-order-actions .outline-button{min-height:32px;padding:0 10px}.model-form{border:1px solid var(--line);border-top:0;border-radius:0 0 10px 10px;grid-template-columns:repeat(2,minmax(210px,1fr));align-items:start;gap:8px;padding:10px;display:grid}.model-form .status-dot{grid-column:1/-1;align-self:end}.model-form>.outline-button{justify-self:start}.model-form>.form-field,.model-form>.select-field{min-width:0}.model-preset-chips{flex-wrap:wrap;grid-column:1/-1;gap:6px;display:flex}.model-preset-chips button{min-height:28px;color:var(--green);background:var(--green-soft);border:1px solid color-mix(in srgb, var(--green) 22%, var(--line));border-radius:999px;align-items:center;gap:4px;padding:0 9px;font-size:12px;font-weight:900;display:inline-flex}.model-preset-chips button:hover,.model-preset-chips button:focus-visible{border-color:var(--green);box-shadow:0 0 0 3px color-mix(in srgb, var(--green) 11%, transparent);outline:0}.model-chain{background:color-mix(in srgb, var(--surface-soft) 82%, var(--surface));border:1px solid var(--line);border-radius:10px;grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(178px,1fr));gap:7px;padding:8px;display:grid}.model-chain-step{background:var(--surface);border:1px solid var(--line);border-radius:8px;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:2px 8px;min-width:0;padding:8px;display:grid}.model-chain-step>span{width:22px;height:22px;color:var(--muted);background:var(--surface-soft);border:1px solid var(--line);border-radius:999px;grid-row:span 2;place-items:center;font-size:11px;font-weight:950;display:grid}.model-chain-step strong,.model-chain-step em{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.model-chain-step strong{font-size:12px}.model-chain-step em{color:var(--muted);grid-column:2;font-size:11px;font-style:normal;font-weight:800}.model-chain-step b{min-height:22px;color:var(--muted);border:1px solid var(--line);border-radius:999px;grid-area:1/3/span 2;align-items:center;padding:0 7px;font-size:11px;display:inline-flex}.model-chain-empty{color:var(--muted);font-size:12px;font-weight:850}.status-dot{color:var(--green);min-width:0;font-weight:900}.status-dot:before{content:"";background:var(--green);border-radius:50%;width:8px;height:8px;margin-right:8px;display:inline-block}.status-dot.warn{color:color-mix(in srgb, #b45309 88%, var(--text))}.status-dot.warn:before{background:#d97706}.status-dot.error{color:var(--red)}.status-dot.error:before{background:var(--red)}.status-dot.loading:before{animation:.9s ease-in-out infinite pulse}.data-actions{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.data-action{border:1px solid var(--line);background:var(--surface-soft);border-radius:10px;gap:9px;padding:16px;display:grid}.data-action svg{color:var(--green)}.data-action span{min-height:38px;color:var(--muted);font-size:13px}.about-section{gap:12px;display:grid}.about-grid{border:1px solid var(--line);border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:0;display:grid;overflow:hidden}.about-grid .metric{border-left:1px solid var(--line);padding:14px}.about-grid .metric:first-child{border-left:0}.summary-dialog{gap:16px;display:grid}.summary-topline{grid-template-columns:1fr 1.4fr 1fr 1fr;margin:0}.source-flow{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.source-flow b{color:var(--green);border:1px solid color-mix(in srgb, var(--green) 40%, var(--line));border-radius:9px;align-items:center;gap:8px;padding:10px 12px;display:inline-flex}.summary-review-grid{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:16px;display:grid}.panel-lite{box-shadow:none;padding:16px}.summary-food-table{display:grid}.summary-food-table div{border-top:1px solid var(--line);grid-template-columns:minmax(150px,1fr) 100px 70px 90px 90px minmax(150px,1.1fr);align-items:center;gap:12px;min-height:58px;padding-block:6px;display:grid}.summary-food-table div:first-child{border-top:0}.summary-food-table em{color:var(--muted);font-size:12px;font-style:normal;display:block}.summary-food-table i{background:var(--line);border-radius:999px;height:7px;display:block;overflow:hidden}.summary-food-table u{background:var(--green);height:100%;display:block}.summary-food-table small{color:var(--muted)}.correction-row{border-top:1px solid var(--line);grid-template-columns:44px minmax(0,1fr) 150px 84px;align-items:center;gap:12px;min-height:72px;display:grid}.correction-row:first-of-type{border-top:0}.correction-row>span{background:var(--surface-soft);border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.correction-row em{color:var(--muted);font-size:12px;font-style:normal;font-weight:600;display:block}.correction-row select{min-height:36px;padding:0 10px}.correction-row b{text-align:right;font-size:18px}.summary-bottom{grid-template-columns:28px minmax(0,1fr) repeat(2,minmax(150px,180px));align-items:center;gap:12px;display:grid}.help-steps{grid-template-columns:repeat(4,1fr);gap:28px;margin-bottom:28px;display:grid}.help-steps div{border:1px solid var(--line);background:var(--surface);border-radius:12px;min-height:210px;padding:22px}.help-steps b{color:#fff;background:var(--green);border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.help-steps h3{margin:18px 0 12px}.help-steps p,.help-dialog details p{color:var(--muted);line-height:1.7}.help-dialog details{border:1px solid var(--line);background:var(--surface);border-radius:10px;margin-top:10px}.help-dialog summary{cursor:pointer;align-items:center;gap:12px;min-height:56px;padding:0 18px;font-weight:900;display:flex}.help-dialog summary span{width:28px;height:28px;color:var(--green);background:var(--green-soft);border-radius:6px;place-items:center;display:grid}.help-dialog summary svg{margin-left:auto}.help-dialog details p{margin:0;padding:0 58px 16px}.empty-state{min-height:180px;color:var(--muted);text-align:center;place-items:center;gap:9px;display:grid}.empty-state.compact{align-content:center;gap:7px;min-height:132px;padding:14px}.empty-state strong{color:var(--text)}.empty-state span{max-width:460px;line-height:1.45}.empty-state-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:4px;display:flex}.empty-state-actions .outline-button,.empty-state-actions .primary-button{min-height:34px;padding:0 13px}.toast{z-index:90;color:#fff;max-width:min(380px,100vw - 32px);box-shadow:var(--shadow-lg);pointer-events:none;background:#111827;border-radius:10px;padding:13px 16px;font-weight:900;line-height:1.35;animation:.18s both toast-in;position:fixed;bottom:24px;right:24px}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.42}}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}@media (width<=1220px){.topbar{flex-wrap:wrap;padding:12px 18px}.main-nav{order:3;justify-content:space-around;width:100%;min-height:42px;margin:0}.estimate-grid{grid-template-columns:minmax(220px,.86fr) minmax(330px,1.18fr) minmax(220px,.86fr);gap:10px;width:min(100% - 16px,1188px);height:min(700px,100dvh - 122px);min-height:min(600px,100dvh - 122px)}.insights-grid,.summary-review-grid,.account-grid,.sync-scope{grid-template-columns:1fr}.insight-toolbar{justify-content:flex-start;margin:0 0 18px}.advanced-filters{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(136px,.7fr) auto;gap:5px}.custom-food-form{grid-template-columns:repeat(auto-fit,minmax(118px,1fr))}.custom-food-form label:first-of-type{grid-column:span 2}.custom-food-actions{grid-column:1/-1;justify-content:flex-end}.compact-reset{grid-column:auto}.records-filter-main,.insight-filter-panel .records-filter-main,.model-summary-strip{grid-template-columns:1fr}.records-filter-grid{grid-template-columns:repeat(3,minmax(140px,1fr))}.summary-bottom{grid-template-columns:28px minmax(0,1fr)}.summary-bottom .outline-button,.summary-bottom .primary-button{grid-column:span 1}}@media (width<=1180px){.library-page,.records-page{height:auto;min-height:0;overflow:visible}.library-layout,.records-layout{grid-template-columns:1fr}.library-results,.library-detail,.record-detail-panel{height:auto;max-height:none}.library-table,.record-list{max-height:min(560px,56dvh)}.library-detail .detail-actions{margin:0 -4px -4px;padding:10px 4px 4px}}@media (width<=860px){.page-shell,.estimate-grid{width:min(100% - 24px,720px)}.estimate-grid,.profile-layout,.settings-layout,.profile-content-grid{grid-template-columns:1fr;height:auto;min-height:0}.profile-sidebar,.settings-sidebar{border-right:0;border-bottom:1px solid var(--line);grid-auto-flow:column;padding-bottom:10px;padding-right:0;overflow-x:auto}.modal-sticky-actions{flex-direction:column;align-items:stretch}.modal-sticky-actions>div{justify-content:stretch}.modal-sticky-actions .outline-button,.modal-sticky-actions .primary-button{flex:150px}.library-detail.mobile-open{z-index:88;background:var(--surface);border-color:var(--line-strong);max-height:none;box-shadow:var(--shadow-lg);padding-bottom:118px;position:fixed;inset:10px;overflow:auto}.library-detail.mobile-open .detail-close{z-index:90;background:var(--surface);border:1px solid var(--line);justify-self:end;margin:-4px -4px 0 0;position:sticky;top:0}.library-detail.mobile-open .detail-actions{z-index:90;background:color-mix(in srgb, var(--surface) 94%, transparent);border:1px solid var(--line);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;padding:10px;position:fixed;bottom:18px;left:18px;right:18px}.records-toolbar,.records-filter-grid,.records-kpis,.analytics-kpis,.detail-form-grid,.form-grid,.settings-grid,.about-grid,.profile-kpis,.nutrition-grid,.serving-card,.data-actions,.help-steps,.summary-topline,.summary-bottom,.equation-card,.correction-equation,.model-form{grid-template-columns:1fr}.insight-filter-panel .records-filter-grid{grid-template-columns:minmax(0,1fr) auto;gap:8px}.insight-filter-panel .secondary-filter-toggle{align-self:end;min-width:112px;display:inline-flex}.insight-filter-panel .secondary-filter-fields{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:none}.insight-filter-panel .secondary-filter-fields.open{display:grid}.insight-filter-panel .filter-clear,.insight-filter-panel .date-range-status,.insight-filter-panel .filter-summary{grid-column:1/-1}.insights-page .analytics-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-bottom:6px}.insights-page .analytics-kpis .stat-tile{grid-template-columns:32px minmax(0,1fr);gap:1px 8px;min-width:0;padding:8px 9px}.insights-page .analytics-kpis .stat-tile svg{width:32px;height:32px;padding:8px}.insights-page .analytics-kpis .stat-tile strong{text-overflow:ellipsis;min-width:0;font-size:17px;overflow:hidden}.insights-page .analytics-kpis .stat-tile span,.insights-page .analytics-kpis .stat-tile em{font-size:11px}.filter-summary{grid-template-columns:1fr}.filter-summary-clear{justify-self:start}.insight-filter-panel .filter-stat-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.insight-filter-panel .filter-stat-strip span{grid-template-columns:1fr;gap:1px;min-height:36px;padding:4px 6px}.insight-filter-panel .filter-stat-strip b{font-size:10px}.insight-filter-panel .filter-stat-strip strong{font-size:11px}.advanced-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;max-height:none;padding:6px;overflow:visible}.advanced-filters .filter-group:nth-of-type(3){grid-column:1/-1}.advanced-filters .filter-group legend,.advanced-filters .select-field>span{margin-bottom:3px}.filter-group>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:3px}.filter-group button{min-height:38px;padding:4px 6px}.filter-group button small{display:none}.advanced-filters .select-field select,.advanced-filters .compact-reset{min-height:30px}.custom-food-form{grid-template-columns:repeat(2,minmax(0,1fr))}.custom-food-title,.custom-food-actions{grid-column:1/-1}.provider-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.library-results,.library-detail{height:auto;max-height:none;overflow:visible}.library-table{max-height:min(520px,52dvh);overflow:auto}.library-results-head{flex-wrap:wrap;align-items:flex-start}.library-bulk-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.library-selection-bar{flex-direction:column;align-items:flex-start}.library-selection-bar>div{width:100%}.library-selection-bar .ghost-button,.library-selection-bar .library-bulk-add{flex:1 1 0}.library-page .page-title-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;width:100%;display:grid}.library-page .page-title-actions .outline-button{width:100%;min-height:34px;padding-inline:8px}.library-filter-panel{gap:5px;margin-bottom:10px;padding-bottom:10px}.filter-layer{grid-template-columns:1fr;gap:5px}.filter-layer+.filter-layer{padding-top:4px}.record-list{max-height:min(520px,46dvh)}.record-detail-panel{max-height:min(720px,68dvh)}.category-strip button,.sub-category-strip button{min-height:28px;padding-inline:7px;font-size:11px}.food-row,.library-row,.quick-food-table button,.summary-food-table div,.detail-food-list div{grid-template-columns:1fr}.library-row{grid-template-columns:34px minmax(0,1fr) auto;grid-template-areas:"select name kcal""macro macro macro""tags tags actions";align-items:start;gap:6px 8px;padding:8px}.library-row .library-select-toggle{grid-area:select;margin-top:2px}.library-row .library-name{grid-area:name}.library-row .library-macro-line{grid-area:macro}.library-row .library-tags{grid-area:tags}.library-row .library-kcal{grid-area:kcal;justify-items:end;min-width:54px;padding-top:1px}.library-kcal strong{font-size:18px}.library-kcal small{white-space:normal;max-width:62px;margin-top:2px;font-size:9.5px}.library-row .library-row-actions{grid-area:actions;justify-content:flex-end;align-self:end}.library-row .library-name{grid-template-columns:32px minmax(0,1fr);gap:2px 8px}.library-name-button{margin:-2px 0;padding:2px}.library-row .food-thumb{border-radius:7px;width:32px;height:32px}.library-macro-line b{min-height:24px;padding:4px 5px;font-size:10.5px}.library-tags{gap:4px}.library-tags .risk-chip{min-height:22px;padding-inline:7px;font-size:11px}.library-row-actions .library-add-action{min-width:74px}.library-bulk-review{width:auto;max-height:min(70dvh,560px);padding:10px;bottom:10px;left:10px;right:10px}.bulk-review-row{grid-template-columns:minmax(0,1fr) 112px 54px 30px;gap:7px;min-height:50px;padding:7px}.bulk-review-row strong{font-size:12px}.library-select-toggle{width:26px;height:26px}.library-row .library-row-actions,.library-row.table-head span:last-child{background:0 0;justify-content:flex-start;padding-left:0;position:static}.food-row.table-head,.library-row.table-head,.top-actions .sync-chip span,.user-button span{display:none}.timeline-chart{grid-template-columns:repeat(var(--day-count,30), 20px);overflow-x:auto}.food-row{min-width:0}.factor-row{grid-template-columns:28px minmax(0,1fr) 20px}.factor-row .factor-options,.factor-row .number-stepper{grid-column:1/-1}.insight-summary{grid-template-columns:40px minmax(0,1fr)}.insight-summary button{grid-column:1/-1;justify-self:start}.daily-advice{border-top:1px solid var(--line);border-left:0;grid-template-columns:1fr;padding-top:14px;padding-left:0}.daily-advice h3,.daily-advice>strong,.daily-advice>p,.daily-advice>.metric,.daily-advice .stacked-macro,.daily-advice .target-summary{grid-area:auto/1}.provider-order-row{grid-template-columns:1fr}.provider-order-actions{flex-wrap:wrap;justify-content:flex-start}}@media (width<=560px){.topbar{grid-template-columns:auto minmax(0,1fr);gap:6px 8px;min-height:0;padding:6px 10px 7px;display:grid}.brand-copy em{display:none}.brand-mark{width:34px;height:34px}.brand{grid-area:1/1;gap:8px;min-width:0}.brand-copy strong{font-size:18px}.top-actions{grid-area:1/2;justify-content:flex-end;gap:5px;min-width:0;margin-left:0}.sync-chip{justify-content:center;min-width:32px;min-height:32px;padding:0;font-size:0}.sync-chip span,.user-button span,.user-button svg:last-child{display:none}.icon-button,.user-button{border-radius:9px;min-width:32px;min-height:32px;padding:0 7px}.main-nav{order:initial;grid-area:2/1/auto/-1;grid-template-columns:repeat(4,minmax(0,1fr));justify-content:stretch;gap:0;width:100%;min-height:34px;display:grid}.main-nav button{justify-content:center;min-width:0;min-height:34px;padding:0 2px;font-size:12px}.records-filter-grid{grid-template-columns:1fr}.range-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.range-tabs button{min-height:34px;font-size:12px}.onboarding-steps{grid-template-columns:1fr}.profile-sidebar,.settings-sidebar{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row;overflow-x:visible}.primary-button,.outline-button,.ghost-button,.ghost-full{white-space:normal}.page-title-actions{justify-content:stretch;width:100%}.page-title-actions .outline-button{flex:136px}.custom-food-form{grid-template-columns:1fr}.custom-food-form label:first-of-type{grid-column:1/-1}.custom-food-actions{flex-direction:column-reverse;align-items:stretch;min-width:0}.custom-food-actions .ghost-button,.custom-food-actions .primary-button{width:100%}.record-row-card{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title kcal""meal actions";gap:6px 10px;min-height:76px;padding:10px}.record-row-select{grid-area:title;grid-template-columns:44px minmax(0,1fr);gap:10px}.record-row-select .record-thumb{width:44px;height:44px}.record-row-select strong,.record-row-select em{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.record-row-card>b{grid-area:meal;justify-self:start}.record-row-card>strong{grid-area:kcal;justify-self:end}.record-actions{grid-area:actions;justify-self:end}.library-row{gap:6px;min-height:0;padding:10px}.library-add-action{flex:150px;width:auto}.panel,.modal-panel{padding:12px}.modal-backdrop{align-items:end;padding:8px}.modal-panel{width:100%;max-height:calc(100dvh - 16px)}.result-card,.macro-summary,.range-strip,.food-detail-head,.profile-hero,.danger-zone,.detail-actions{grid-template-columns:1fr}.filter-layer{grid-template-columns:1fr;gap:4px}.filter-layer>span{padding-top:0}.category-strip.wrap,.sub-category-strip.wrap{max-height:none}.source-flow span,.equation-card>span,.correction-equation>span{display:none}.result-card>div>strong{font-size:44px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
