:root{--tc-background: #fbf6ef;--tc-surface: #fffdf9;--tc-surface-soft: #f6eee5;--tc-surface-raised: #ffffff;--tc-text: #2f2927;--tc-text-muted: #776d68;--tc-outline: #eadfd5;--tc-primary: #ee5d5d;--tc-primary-strong: #dc4d52;--tc-primary-soft: #fde5df;--tc-secondary: #579e98;--tc-secondary-soft: #e2f1ee;--tc-avatar-outline: #b9aaa2;--tc-card-caption: #f4eadf;--tc-interest-caption: #ecddd0;--tc-collection-available: #fbbf24;--tc-font-display: Roboto, "Segoe UI", Arial, sans-serif;--tc-font-ui: Inter, ui-sans-serif, system-ui, sans-serif;--tc-shadow: 0 10px 30px rgba(87, 62, 49, .1);color:var(--tc-text);background:var(--tc-background);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root[data-theme=dark]{--tc-background: #0f172a;--tc-surface: #172033;--tc-surface-soft: #1e293b;--tc-surface-raised: #1e293b;--tc-text: #f8fafc;--tc-text-muted: #cbd5e1;--tc-outline: #475569;--tc-primary: #7dd3fc;--tc-primary-strong: #38bdf8;--tc-primary-soft: #1e3a5f;--tc-secondary: #d0bcff;--tc-secondary-soft: #322344;--tc-avatar-outline: #64748b;--tc-card-caption: #24324a;--tc-interest-caption: #2b3d5d;--tc-shadow: 0 12px 34px rgba(2, 6, 23, .42);color-scheme:dark}.tap-highlight-clip{overflow:hidden}.tap-highlight-circle{-webkit-clip-path:circle(50%);clip-path:circle(50%)}.tap-highlight-rounded{-webkit-clip-path:inset(0 round 14px);clip-path:inset(0 round 14px)}.tap-highlight-pill{-webkit-clip-path:inset(0 round 999px);clip-path:inset(0 round 999px)}.app-shell-recipe-editor,.main-surface-recipe-editor{min-height:100dvh;background:#fff;color:#111}.main-surface-recipe-editor{padding:0}.recipe-edit-page{position:relative;width:min(100%,820px);min-height:100dvh;margin:0 auto;padding:50px 0 0;background:#fff;color:#171717;font-family:Roboto,Arial,sans-serif}.recipe-edit-page button,.recipe-edit-page input,.recipe-edit-page textarea,.recipe-edit-page select{font:inherit}.recipe-edit-back{position:absolute;z-index:4;top:7px;left:4px;display:grid;width:48px;height:48px;padding:12px;place-items:center;border:0;background:transparent;color:#e040fb;cursor:pointer}.recipe-edit-icon{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.recipe-edit-add-row{display:flex;justify-content:flex-end;gap:10px;padding:10px}.recipe-new-button{display:inline-flex;width:250px;height:50px;align-items:center;justify-content:center;gap:7px;border:0;border-radius:20px;background:#00e5ff;color:#000;box-shadow:0 2px 3px #00000029;cursor:pointer}.recipe-new-button .recipe-edit-icon{width:21px}.recipe-delete-button{display:inline-flex;min-height:50px;align-items:center;justify-content:center;gap:7px;padding:0 18px;border:1px solid #c62828;border-radius:20px;background:#fff;color:#b71c1c;cursor:pointer}.recipe-delete-button .recipe-edit-icon{width:21px}.recipe-edit-error{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 20px;padding:12px 14px;border-radius:8px;background:#ffebee;color:#b3261e}.recipe-edit-error button{border:0;background:transparent;color:inherit;font-size:22px;cursor:pointer}.recipe-edit-loading{display:grid;min-height:280px;place-items:center;color:#777}.recipe-edit-section{width:100%}.recipe-edit-section-title{display:flex;align-items:center;gap:8px;margin:10px 30px 1px;color:#111;font-size:16px;font-weight:700;text-align:center}.recipe-edit-section-title:before,.recipe-edit-section-title:after{content:"";height:1px;flex:1;background:#9e9e9e}.recipe-edit-section-title span{padding:7px 2px;white-space:nowrap}.recipe-edit-id{display:flex;align-items:center;justify-content:space-between;padding:2px 40px 8px}.recipe-publication-control{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;margin:0 40px 14px;padding:13px 15px;border:1px solid #a5d6a7;border-radius:16px;background:#f1f8f3}.recipe-publication-control.is-draft{border-color:#ffcc80;background:#fff8e8}.recipe-publication-control>div{display:grid;min-width:0;gap:2px}.recipe-publication-control span{color:#616161;font-size:12px}.recipe-publication-control strong{color:#1b5e20;font-size:16px}.recipe-publication-control.is-draft strong{color:#9a5a00}.recipe-publication-control small{color:#616161;font-size:12px;line-height:1.35}.recipe-publication-control>button{min-height:40px;padding:0 15px;border:0;border-radius:20px;background:#2e7d32;color:#fff;font:inherit;font-size:13px;font-weight:750;cursor:pointer}.recipe-publication-control.is-published>button{background:#f1e7e7;color:#9f2f2f}.recipe-round-button{display:inline-grid;width:42px;height:42px;flex:0 0 auto;padding:8px;place-items:center;border:1px solid #e1bee7;border-radius:50%;background:#0096881a;color:#00695c;cursor:pointer;transition:background .15s,transform .15s}.recipe-round-button:hover:not(:disabled){background:#00968838;transform:scale(1.03)}.recipe-round-button:disabled{opacity:.35;cursor:default}.recipe-round-button.brown{color:#795548}.recipe-main-image{position:relative;display:block;width:200px;height:200px;margin:0 auto 10px;overflow:hidden;border:1.5px solid #00bcd4;border-radius:8px;background:#00bcd41a;cursor:pointer}.recipe-main-image img{width:100%;height:100%;object-fit:cover}.recipe-main-image>span{position:absolute;inset:0;display:grid;place-items:center;background:#0000004d;color:#fff}.recipe-main-image>span .recipe-edit-icon{width:30px;height:30px}.recipe-main-image input{display:none}.recipe-gallery-editor{display:grid;gap:8px;padding:0 20px 12px}.recipe-gallery-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#111}.recipe-gallery-heading span,.recipe-gallery-hint{color:#666;font-size:12px}.recipe-gallery-error{padding:7px 10px;border-radius:8px;background:#ffebee;color:#b3261e}.recipe-gallery-strip{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px}.recipe-gallery-strip>.recipe-media-add{height:140px}.recipe-gallery-tile{overflow:visible}.recipe-gallery-tile img,.recipe-gallery-tile video{border-radius:8px}.recipe-gallery-cover,.recipe-gallery-cover-action{position:absolute;right:5px;bottom:5px;left:5px;min-height:26px;padding:5px 8px;border:0;border-radius:8px;background:#00695ce0;color:#fff;font-size:11px;text-align:center}.recipe-gallery-cover-action{cursor:pointer}.recipe-gallery-order{position:absolute;bottom:37px;left:5px;display:flex;gap:4px}.recipe-gallery-order button{display:grid;width:27px;height:27px;padding:0;place-items:center;border:0;border-radius:50%;background:#0000009e;color:#fff;font-size:22px}.recipe-gallery-order button:disabled{opacity:.28}.recipe-edit-field{display:block;width:calc(100% - 40px);min-height:48px;margin:10px 20px;padding:10px;border:0;border-radius:10px;outline:0;background:#f3fffe;color:#111;resize:vertical;box-sizing:border-box}.recipe-edit-field:focus{box-shadow:inset 0 0 0 2px #00968852}.recipe-edit-inline-field{display:flex;min-height:60px;align-items:center;justify-content:space-evenly;gap:20px;padding:2px 20px;color:#111}.recipe-edit-inline-field>span{min-width:145px;text-align:right}.recipe-edit-inline-field .recipe-edit-field{width:150px;margin:6px 0}.recipe-edit-inline-field select{width:min(260px,55vw);padding:10px 4px;border:0;border-bottom:1px solid #777;outline:0;background:#fff;color:#111}.recipe-edit-nutrition{padding:5px 15px 15px;text-align:center}.recipe-edit-nutrition p{margin:8px 0 5px}.recipe-edit-nutrition div{display:flex;justify-content:space-evenly;gap:10px;font-size:14px}.recipe-edit-tools{display:flex;min-height:54px;align-items:center;justify-content:flex-end;gap:8px;padding:2px 40px}.recipe-edit-center{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 0}.recipe-sections-list{display:grid;gap:6px}.recipe-section-row{display:flex;align-items:flex-start;gap:8px;padding:0 12px}.recipe-section-row>.recipe-round-button{margin-top:9px}.recipe-section-card{min-width:0;flex:1;padding:2px 0 8px}.recipe-section-card>.recipe-edit-field{width:100%;margin:7px 0;background:#e0f7fa;font-weight:600}.recipe-ingredient-list{display:grid;gap:5px}.recipe-ingredient-card{position:relative;display:flex;min-height:76px;align-items:center;gap:8px;padding:5px 9px 5px 5px;border-radius:15px;background:#e0f2f1;color:#111}.recipe-ingredient-card>.recipe-round-button{width:34px;height:34px;border-radius:10px;border-color:#009688;background:#fff}.recipe-ingredient-copy{display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}.recipe-ingredient-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recipe-ingredient-copy small{color:#555;font-size:12px}.recipe-ingredient-card>.recipe-edit-field{width:82px;margin:0;background:#fff;text-align:center}.recipe-replacement-chip{width:fit-content;max-width:100%;padding:3px 8px;overflow:hidden;border:1px solid #009688;border-radius:14px;background:#fff;color:#00695c;font-size:12px;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.recipe-replacement-control{position:relative}.recipe-replacement-control>.recipe-round-button{width:34px;height:34px;border-radius:10px;border-color:#009688;background:#fff}.recipe-replacement-popover{position:absolute;z-index:20;top:40px;right:0;display:grid;width:min(340px,75vw);gap:8px;padding:12px;border-radius:12px;background:#fff;box-shadow:0 5px 22px #00000042}.recipe-replacement-popover select,.recipe-replacement-popover input{min-width:0;padding:10px;border:1px solid #bbb;border-radius:6px;background:#fff;color:#111}.recipe-replacement-popover button{justify-self:end;padding:8px 14px;border:0;border-radius:18px;background:#00897b;color:#fff}.recipe-add-ingredient{display:grid;grid-template-columns:minmax(140px,1fr) 95px auto;gap:7px;padding:8px 0 0}.recipe-add-ingredient input{min-width:0;padding:10px;border:0;border-radius:10px;background:#f3fffe;color:#111}.recipe-add-ingredient button{display:inline-flex;align-items:center;gap:3px;border:0;border-radius:18px;background:#00897b;color:#fff;cursor:pointer}.recipe-add-ingredient button:disabled{opacity:.4}.recipe-edit-page .recipe-step-list{padding:0 20px}.recipe-edit-page .recipe-step{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr)}.recipe-edit-page .recipe-step-timeline{position:relative;display:flex;justify-content:center}.recipe-edit-page .recipe-step-timeline:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;background:#00bcd4;transform:translate(-50%)}.recipe-edit-page .recipe-step.first .recipe-step-timeline:before{top:20px}.recipe-edit-page .recipe-step.last .recipe-step-timeline:before{bottom:calc(100% - 21px)}.recipe-edit-page .recipe-step-timeline span{position:relative;z-index:1;display:grid;width:30px;height:30px;margin-top:10px;place-items:center;border-radius:50%;background:#00bcd4;color:#fff;font-size:13px;font-weight:700}.recipe-edit-page .recipe-step-content{min-width:0;padding:10px}.recipe-edit-page .recipe-step-description{display:flex;align-items:flex-start;gap:6px}.recipe-edit-page .recipe-step-description textarea{min-height:56px;flex:1;padding:10px;border:0;border-radius:10px;outline:0;background:#a1f3ec;color:#111;resize:vertical}.recipe-edit-page .recipe-step-description .recipe-round-button{width:40px;height:40px;border:0;background:transparent;color:#00acc1}.recipe-edit-page .recipe-step-note{display:flex;align-items:center;margin-top:8px;border-radius:10px;background:#fff8e1;color:#f9a825}.recipe-edit-page .recipe-step-note>.recipe-edit-icon{margin-left:10px;flex:0 0 auto}.recipe-edit-page .recipe-step-note textarea{min-height:46px;flex:1;padding:12px 10px;border:0;outline:0;background:transparent;color:#111;resize:vertical}.recipe-edit-page .recipe-step-media{position:relative;display:flex;height:150px;align-items:stretch;gap:10px;padding:10px 8px 0}.recipe-edit-page .recipe-step-media>small{position:absolute;right:8px;bottom:-2px;left:8px;z-index:2;padding:3px;overflow:hidden;background:#ffffffe6;color:#b3261e;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.recipe-media-add{display:flex;width:100px;flex:0 0 100px;flex-direction:column;align-items:center;justify-content:center;border:1.5px solid #00bcd4;border-radius:8px;background:#00bcd41a;color:#00acc1;cursor:pointer}.recipe-media-add .recipe-edit-icon{width:30px;height:30px}.recipe-media-add span{font-size:12px}.recipe-media-add input{display:none}.recipe-media-loading{align-self:center;color:#777}.recipe-media-strip{display:flex;min-width:0;flex:1;gap:10px;overflow-x:auto}.recipe-media-tile{position:relative;width:140px;height:140px;flex:0 0 140px;overflow:hidden;border-radius:8px;background:#eee}.recipe-media-tile>button:first-of-type{width:100%;height:100%;padding:0;border:0;background:transparent}.recipe-media-tile img,.recipe-media-tile video{width:100%;height:100%;object-fit:cover}.recipe-media-drag{position:absolute;top:4px;left:4px;display:grid;width:25px;height:25px;place-items:center;border-radius:50%;background:#0000008c;color:#fff;cursor:grab}.recipe-media-drag .recipe-edit-icon{width:16px;height:16px}.recipe-media-delete{position:absolute;top:4px;right:4px;display:grid;width:26px;height:26px;padding:0;place-items:center;border:0;border-radius:50%;background:#0009;color:#fff;font-size:20px;cursor:pointer}.recipe-image-preview{position:fixed;z-index:100;inset:0;display:grid;padding:16px;place-items:center;background:#000000c7}.recipe-image-preview img{max-width:100%;max-height:100%;object-fit:contain}.recipe-edit-empty{padding:18px;color:#777;text-align:center}.recipe-category-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;padding:8px 20px}.recipe-category-tags button{padding:5px 9px;border:1px solid #009688;border-radius:20px;background:#fff;color:#111;cursor:pointer}.recipe-category-tags button:first-letter{color:#555}.recipe-category-add{position:relative;display:flex;width:240px;margin:8px auto;align-items:center}.recipe-category-add input{min-width:0;flex:1;padding:10px;border:0;border-bottom:1px solid #777;background:#fff;color:#111}.recipe-category-add button{display:grid;width:40px;height:40px;place-items:center;border:0;background:transparent;color:#00897b}.recipe-category-add button:disabled{opacity:.3}.recipe-category-suggestions{position:absolute;z-index:30;top:calc(100% + 2px);right:40px;left:0;max-height:240px;overflow-y:auto;border-radius:0 0 8px 8px;background:#fff;box-shadow:0 5px 18px #0000003d}.recipe-category-suggestions button{display:block;width:100%;height:auto;padding:10px 12px;border-radius:0;color:#111;text-align:left}.recipe-category-suggestions button:hover,.recipe-category-suggestions button:focus{outline:0;background:#e0f2f1}.recipe-edit-bottom-space{height:200px}.recipe-modal{position:fixed;z-index:120;inset:0;display:grid;padding:20px;place-items:center;background:#0000006b}.recipe-modal-card{display:grid;width:min(440px,100%);max-height:min(720px,90dvh);gap:12px;padding:24px;overflow:auto;border-radius:28px;background:#fff;color:#111;box-shadow:0 8px 30px #00000047}.recipe-modal-card h2{margin:0 0 8px;font-size:22px}.recipe-modal-card>input,.recipe-modal-card>textarea{padding:12px;border:1px solid #9e9e9e;border-radius:5px;background:#fff;color:#111}.recipe-modal-card>div:last-child{display:flex;justify-content:flex-end;gap:8px}.recipe-modal-card button{padding:9px 14px;border:0;border-radius:18px;background:transparent;color:#00796b;cursor:pointer}.recipe-modal-card button:last-child{background:#00796b;color:#fff}.recipe-modal-card.recipe-delete-dialog{width:min(390px,100%)}.recipe-delete-dialog p{margin:0 0 8px;color:#444}.recipe-modal-card .recipe-delete-confirm:last-child{background:#c62828;color:#fff}.recipe-modal-card.recipe-publication-dialog{width:min(410px,100%)}.recipe-publication-dialog p{margin:0 0 8px;color:#444;line-height:1.5}.recipe-modal-card .recipe-publication-confirm:last-child{background:#2e7d32;color:#fff}.recipe-modal-card .recipe-unpublication-confirm:last-child{background:#b3261e;color:#fff}.recipe-modal-card button:disabled{opacity:.4}.recipe-modal-error{margin:0;color:#b3261e}.recipe-catalog-add{display:flex;gap:8px}.recipe-catalog-add input{min-width:0;flex:1;padding:10px;border:1px solid #aaa;border-radius:6px}.recipe-catalog-list{display:grid;overflow:auto}.recipe-catalog-list>div{display:grid;grid-template-columns:1fr auto auto;align-items:center;border-bottom:1px solid #eee}.recipe-catalog-list button{display:grid;width:40px;height:40px;padding:8px;place-items:center;background:transparent!important;color:#00796b!important}@media(max-width:600px){.recipe-edit-add-row{flex-wrap:wrap;padding-top:4px}.recipe-new-button{width:230px}.recipe-delete-button{min-height:44px}.recipe-edit-section-title{margin-right:20px;margin-left:20px}.recipe-edit-id,.recipe-edit-tools{padding-right:20px;padding-left:20px}.recipe-publication-control{margin-right:20px;margin-left:20px;grid-template-columns:1fr}.recipe-publication-control>button{width:100%}.recipe-edit-nutrition div{gap:5px;font-size:11px}.recipe-section-row{padding-right:8px;padding-left:8px}.recipe-ingredient-card{display:grid;grid-template-columns:34px minmax(0,1fr) 72px 34px}.recipe-ingredient-copy{min-width:0}.recipe-ingredient-card>.recipe-edit-field{width:72px;margin:0}.recipe-add-ingredient{grid-template-columns:1fr 82px}.recipe-add-ingredient button{grid-column:1 / -1;min-height:38px;justify-content:center}.recipe-edit-page .recipe-step-list{padding:0 8px}.recipe-edit-page .recipe-step{grid-template-columns:36px minmax(0,1fr)}.recipe-edit-page .recipe-step-content{padding-right:2px;padding-left:6px}.recipe-edit-page .recipe-step-description .recipe-round-button{width:34px}.recipe-edit-inline-field{gap:10px}.recipe-edit-inline-field>span{min-width:124px;font-size:14px}}*{box-sizing:border-box}.app-boot-screen{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:#0f172a}.app-boot-screen img{width:92px;height:92px;border:3px solid #fff;border-radius:50%;animation:cookie-progress-spin 1s linear infinite}.route-transition{animation:route-enter .24s cubic-bezier(.2,.72,.25,1) both}.route-transition-food-forward{animation:route-enter-food-forward .32s cubic-bezier(.22,.78,.24,1) both}.route-transition-food-back{animation:route-enter-food-back .32s cubic-bezier(.22,.78,.24,1) both}.app-shell.app-shell-main,.app-shell.app-shell-food-tracker,.route-transition-food-forward,.route-transition-food-back{background:#0f172a}.main-surface-recipe-details.route-transition{animation:none}@keyframes route-enter{0%{opacity:0}to{opacity:1}}@keyframes route-enter-food-forward{0%{opacity:.7;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes route-enter-food-back{0%{opacity:.7;transform:translate(-32%)}to{opacity:1;transform:translate(0)}}.smooth-image{opacity:0;transition:opacity .28s ease}.smooth-image-ready{opacity:1}.smooth-image-loader{position:absolute;inset:0;display:grid;place-items:center;opacity:1;pointer-events:none;transition:opacity .24s ease-out}.smooth-image-loader-ready{opacity:0}@media(prefers-reduced-motion:reduce){.route-transition,.route-transition-food-forward,.route-transition-food-back{animation:none}.smooth-image{opacity:1;transition:none}.smooth-image-loader{transition:none}}body{margin:0;min-width:320px;min-height:100vh}button,input{font:inherit}a{color:inherit}.app-shell{min-height:100vh;background:linear-gradient(180deg,#0f172af5,#0f172a),#0f172a}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;min-height:56px;padding:0 20px;border-bottom:1px solid rgba(148,163,184,.18);background:#0f172ae6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar-navigation{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;padding:4px 8px}.topbar-navigation .brand{justify-self:center}.topbar-navigation-slot{width:48px;height:48px}.topbar-profile-title{min-width:0;align-self:center;justify-self:start;overflow:hidden;color:#f8fafc;font-size:17px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.topbar-back-button{display:grid;width:48px;height:48px;padding:0;place-items:center;border:0;border-radius:50%;background:transparent;color:#f8fafc;cursor:pointer}.topbar-back-button:hover{background:#94a3b824}.topbar-back-button:focus-visible{outline:2px solid #38bdf8;outline-offset:1px}.topbar-back-button svg{width:26px;height:26px;fill:currentColor}.brand{color:#f8fafc;font-size:15px;font-weight:700;letter-spacing:0;text-decoration:none}.main-surface{width:min(1120px,100%);margin:0 auto;padding:24px 16px 48px}.page{display:grid;gap:20px}.page-header{display:grid;gap:6px}.page-title{margin:0;color:#f8fafc;font-size:36px;line-height:1.12;letter-spacing:0}.page-subtitle{margin:0;color:#cbd5e1;font-size:15px}.panel{border:1px solid rgba(148,163,184,.18);border-radius:8px;background:#1e293bdb;padding:18px}.form-grid{display:grid;gap:14px}.field{display:grid;gap:6px}.field label{color:#cbd5e1;font-size:13px}.field input{width:100%;border:1px solid rgba(148,163,184,.28);border-radius:8px;background:#0f172ab8;color:#f8fafc;padding:11px 12px;outline:none}.field input:focus{border-color:#38bdf8;box-shadow:0 0 0 3px #38bdf829}.button-row{display:flex;flex-wrap:wrap;gap:10px}.primary-button,.secondary-button,.ghost-button{min-height:40px;border-radius:8px;padding:0 14px;cursor:pointer}.primary-button{border:1px solid #38bdf8;background:#38bdf8;color:#082f49;font-weight:700}.secondary-button{border:1px solid rgba(148,163,184,.34);background:#0f172ab8;color:#f8fafc}.ghost-button{border:1px solid rgba(148,163,184,.22);background:transparent;color:#cbd5e1}.primary-button:disabled,.secondary-button:disabled,.ghost-button:disabled{cursor:wait;opacity:.62}.alert{border-radius:8px;padding:12px;font-size:14px}.alert-error{border:1px solid rgba(248,113,113,.38);background:#7f1d1d57;color:#fecaca}.alert-success{border:1px solid rgba(34,197,94,.34);background:#14532d57;color:#bbf7d0}.page-state{padding:32px 0;color:#cbd5e1}.recipe-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px}.recipe-card{overflow:hidden;border:1px solid rgba(148,163,184,.18);border-radius:8px;background:#1e293bdb;text-decoration:none}.recipe-card img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover;background:#111827}.recipe-card-body{display:grid;gap:8px;padding:12px}.recipe-card-title{margin:0;color:#f8fafc;font-size:15px;line-height:1.28}.macro-row{display:flex;flex-wrap:wrap;gap:6px;color:#cbd5e1;font-size:12px}.detail-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:18px}.detail-hero img{width:100%;border-radius:8px;aspect-ratio:4 / 3;object-fit:cover;background:#111827}.section-list{display:grid;gap:12px}@media(max-width:760px){.topbar{padding:0 14px}.main-surface{padding:18px 12px 36px}.detail-hero{grid-template-columns:1fr}}.recipe-image-wrap{position:relative}.icon-button{display:inline-grid;place-items:center;width:38px;height:38px;border:1px solid rgba(148,163,184,.34);border-radius:999px;background:#0f172ac2;color:#f8fafc;font-size:22px;line-height:1;cursor:pointer}.icon-button-active{border-color:#facc15b8;color:#facc15}.recipe-image-wrap .icon-button{position:absolute;top:8px;right:8px}.title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.rich-text{color:#111827;background:#f8fafc}.rich-text p,.rich-text div{color:#111827}.ingredient-section,.recipe-step{display:grid;gap:8px}.ingredient-grid{display:flex;flex-wrap:wrap;gap:8px}.ingredient-pill{border:1px solid rgba(148,163,184,.2);border-radius:999px;background:#0f172a73;color:#e2e8f0;padding:5px 9px;font-size:13px}.media-strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}.step-media{width:100%;aspect-ratio:4 / 3;border-radius:8px;object-fit:cover;background:#111827}.notes-panel{border:1px solid rgba(148,163,184,.18);border-radius:8px;background:#e5e7eb;color:#111827;padding:12px}.notes-header{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;background:transparent;color:#111827;font-weight:700;cursor:pointer;padding:4px 0}.note-wrap{position:relative}.note-wrap textarea{width:100%;min-height:150px;resize:vertical;border:0;border-radius:8px;background:#fff;color:#1e3a8a;font-family:Courier New,monospace;font-style:italic;font-size:16px;padding:12px 12px 32px;outline:none}.note-count{position:absolute;right:10px;bottom:8px;border-radius:999px;background:#0f172a14;color:#475569;padding:2px 8px;font-size:12px}.notes-save-button{position:absolute;top:8px;right:8px;display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;border-radius:50%;background:#dbeafe;opacity:.25;cursor:pointer}.notes-save-button.has-changes{opacity:1}.notes-save-button:disabled{cursor:default}.notes-save-button span{font-size:18px;line-height:1}.note-count-error{color:#dc2626}.full-button{width:100%}.pay-stub{display:grid;justify-items:center;gap:16px;text-align:center}.pay-stub-image{width:180px;height:180px;border:5px solid #f8fafc;border-radius:999px;object-fit:cover}.topnav{display:flex;align-items:center;gap:12px;color:#cbd5e1;font-size:13px}.topnav a{text-decoration:none}.quick-nav,.story-row,.story-grid,.story-view-list,.message-list,.list-table{display:grid;gap:12px}.quick-nav{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.quick-tile,.story-chip,.main-asset-tile{border:1px solid rgba(148,163,184,.18);border-radius:8px;background:#1e293bdb;color:#f8fafc;padding:14px;text-decoration:none}.story-row{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.story-chip{display:grid;gap:4px}.story-chip-preview,.story-chip-placeholder{width:48px;height:48px;border-radius:50%;object-fit:cover;background:#e5e7eb}.main-asset-tile{display:grid;gap:8px;align-content:start}.main-asset-tile img{width:100%;aspect-ratio:1 / 1;object-fit:cover;border-radius:6px}.story-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.story-card{display:grid;gap:8px;text-decoration:none}.story-view-card{display:grid;gap:10px}.story-view-card img{width:100%;max-height:520px;border-radius:8px;object-fit:contain;background:#111827}.list-row,.message-row{display:grid;gap:6px;border-bottom:1px solid rgba(148,163,184,.14);padding:10px 0}.list-row{grid-template-columns:minmax(0,1fr) minmax(100px,160px) 90px}.message-row{justify-items:start}.message-row p{margin:0}.message-user{justify-items:end;text-align:right}@media(max-width:820px){.topnav{display:none}.list-row{grid-template-columns:1fr}}.admin-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);gap:14px;align-items:start}.admin-user-row{display:grid;grid-template-columns:80px minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;border:0;border-bottom:1px solid rgba(148,163,184,.14);background:transparent;color:#e2e8f0;padding:10px 0;text-align:left;cursor:pointer}.analytics-grid,.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.metric-box,.macro-box{display:grid;gap:6px}.analytics-card-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.analytics-card-body{display:grid;gap:6px}.metric-box span,.log-box{color:#cbd5e1;font-size:13px}.log-box{max-height:320px;overflow:auto;margin:0;white-space:pre-wrap}.book-toggle-grid{display:flex;flex-wrap:wrap;gap:8px}.tag-button{border:1px solid rgba(148,163,184,.28);border-radius:999px;background:#0f172a9e;color:#cbd5e1;padding:7px 10px;cursor:pointer}.tag-button-active{border-color:#38bdf8;background:#38bdf829;color:#e0f2fe}.macro-box strong{color:#f8fafc;font-size:24px}.food-search{display:grid;gap:12px;border:1px solid rgba(148,163,184,.14);border-radius:8px;padding:12px}@media(max-width:900px){.admin-split,.admin-user-row{grid-template-columns:1fr}}.story-fullscreen{position:fixed;inset:0;z-index:20;background:#101010;color:#fff;display:grid;place-items:center;overflow:hidden}.story-fullscreen-image{max-width:100%;max-height:100%;object-fit:contain}.story-close{position:absolute;z-index:2;top:18px;right:20px;border:0;background:transparent;color:#fff;font-size:30px;cursor:pointer}.story-progress{position:absolute;z-index:2;top:12px;left:14px;right:60px;display:flex;gap:4px}.story-progress span{height:3px;flex:1;background:#777}.story-progress .story-progress-done{background:#fff}.story-zone{position:absolute;inset-block:0;width:32%;border:0;background:transparent;cursor:pointer}.story-zone-left{left:0}.story-zone-right{right:0}.story-caption{position:absolute;left:0;right:0;bottom:0;padding:60px 24px 28px;background:linear-gradient(transparent,#000000d1)}.story-caption h1{margin:0 0 8px;font-size:inherit}.story-caption p{margin:0 0 12px}.story-caption a{color:#fff}.story-caption-with-link{padding-right:96px}.story-link-button{position:absolute;left:75%;top:75%;z-index:4;display:grid;place-items:center;width:52px;height:52px;padding:0;border:1px solid rgba(255,255,255,.75);border-radius:50%;background:#101010ad;color:#fff;box-shadow:0 4px 16px #00000052;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transform:translate(-50%,-50%);cursor:pointer}.story-link-button:hover{background:#fff3}.story-link-button:focus-visible{outline:2px solid #fff;outline-offset:3px}.story-link-button svg{width:25px;height:25px;fill:currentColor}.app-shell-ingredient-editor{min-height:100vh;background:#fff;color:#212121}.main-surface-ingredient-editor{width:100%;max-width:none;margin:0;padding:0}.ingredient-editor-page{position:relative;min-height:100vh;background:#fff;color:#212121}.ingredient-editor-appbar{position:sticky;top:0;z-index:8;display:flex;align-items:center;gap:8px;min-height:72px;padding:8px 12px;background:#fff;color:#000}.ingredient-editor-back{flex:0 0 auto;display:grid;place-items:center;width:48px;height:48px;padding:0;border:0;border-radius:50%;background:transparent;color:#263238;cursor:pointer}.ingredient-editor-back:hover{background:#0000000f}.ingredient-editor-back svg,.ingredient-editor-search svg,.ingredient-editor-fab svg,.ingredient-editor-action svg,.ingredient-links-add svg,.ingredient-link-delete svg,.ingredient-image-editor svg,.ingredient-validation-dialog svg,.ingredient-ranking-link svg{width:24px;height:24px;fill:currentColor}.ingredient-ranking-link{flex:0 0 48px;display:grid;width:48px;height:48px;place-items:center;padding:0;border:0;border-radius:50%;background:#e0f7fa;color:#006064;cursor:pointer}.ingredient-ranking-link:hover{background:#b2ebf2}.ingredient-editor-search{flex:1;position:relative;min-width:0}.ingredient-editor-search>svg{position:absolute;top:50%;left:16px;z-index:1;width:22px;height:22px;transform:translateY(-50%);color:#616161;pointer-events:none}.ingredient-editor-search input{width:100%;height:54px;padding:0 18px 0 50px;border:1px solid #9e9e9e;border-radius:30px;outline:0;background:#fff;color:#212121;font-size:16px}.ingredient-editor-search input::placeholder{color:#757575;opacity:1}.ingredient-editor-search input:focus{border-color:#0097a7;box-shadow:0 0 0 1px #0097a7}.ingredient-catalog-filter{position:sticky;top:72px;z-index:7;display:flex;justify-content:flex-end;padding:2px 16px 8px;background:#fff}.ingredient-catalog-filter button{min-height:38px;padding:7px 15px;border:1px solid #b0bec5;border-radius:999px;background:#fff;color:#455a64;font:inherit;font-size:13px;cursor:pointer}.ingredient-catalog-filter button.is-active{border-color:#0097a7;background:#b2ebf2;color:#004d40}.ingredient-catalog-filter button:focus-visible{outline:2px solid #0097a7;outline-offset:2px}.ingredient-catalog-switch{position:sticky;top:72px;z-index:7;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px 16px 8px;background:#fff}.ingredient-catalog-switch button{min-height:42px;border:1px solid #b0bec5;background:#fff;color:#455a64;font:inherit;font-size:13px;cursor:pointer}.ingredient-catalog-switch button:first-child{border-radius:22px 4px 4px 22px}.ingredient-catalog-switch button:last-child{border-radius:4px 22px 22px 4px}.ingredient-catalog-switch button.is-active{border-color:#0097a7;background:#b2ebf2;color:#004d40;font-weight:700}.ingredient-list-content{display:grid;padding:0 16px 96px}.ingredient-list-card{width:100%;margin:8px 0;padding:13px 16px 12px;border:0;border-radius:10px;background:#f5f5f5;color:#212121;box-shadow:0 2px 4px #0000002e;font:inherit;text-align:left;cursor:pointer}.ingredient-list-card:hover{background:#f0f0f0;box-shadow:0 3px 7px #0003}.ingredient-list-card:focus-visible{outline:2px solid #0097a7;outline-offset:2px}.ingredient-list-card-title{display:flex;align-items:center;justify-content:space-between;min-width:0}.ingredient-list-id{flex:0 0 auto;margin-right:10px;padding:2px 6px;border-radius:5px;background:#9e9e9e;color:#fff;font-size:12px;line-height:18px}.ingredient-list-name{flex:1;min-width:0;display:-webkit-box;overflow:hidden;color:#212121;font-size:16px;line-height:21px;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:3}.ingredient-list-category{flex:0 1 auto;margin-left:12px;color:#607d8b;font-size:14px;font-style:italic;text-align:right;overflow-wrap:anywhere}.ingredient-photo-status{flex:0 0 auto;margin-left:10px;padding:3px 7px;border-radius:999px;font-size:11px;font-style:normal;font-weight:600;white-space:nowrap}.ingredient-photo-status.is-loaded{background:#dcedc8;color:#33691e}.ingredient-photo-status.is-missing{background:#fff3e0;color:#a84300}.catalog-barcode-count{flex:0 0 auto;margin-left:10px;padding:3px 7px;border-radius:999px;background:#e0f2f1;color:#00695c;font-size:11px;font-weight:700;white-space:nowrap}.catalog-private-list-badge{flex:0 0 auto;margin-left:10px;padding:3px 7px;border-radius:999px;background:#fff3e0;color:#a84300;font-size:11px;font-weight:700;white-space:nowrap}.ingredient-list-macros{margin-top:5px;color:#616161;font-size:14px;line-height:20px}.ingredient-list-message{display:grid;min-height:180px;place-items:center;color:#424242;text-align:center}.ingredient-loading-spinner{width:42px;height:42px;border:4px solid #b2ebf2;border-top-color:#0097a7;border-radius:50%;animation:ingredient-spinner .8s linear infinite}@keyframes ingredient-spinner{to{transform:rotate(360deg)}}.ingredient-editor-fab{position:fixed;right:24px;bottom:24px;z-index:12;display:grid;place-items:center;width:56px;height:56px;padding:0;border:0;border-radius:16px;background:#b2ebf2;color:#004d40;box-shadow:0 4px 9px #0000003d;cursor:pointer}.ingredient-editor-fab:hover{background:#9fe2e9}.ingredient-sheet-backdrop{position:fixed;inset:0;z-index:70;display:flex;align-items:flex-end;justify-content:center;background:#00000057}.ingredient-editor-sheet{position:relative;width:min(720px,100%);max-height:calc(100dvh - 24px);overflow-y:auto;border-radius:10px 10px 0 0;background:#fff;color:#212121;box-shadow:0 -4px 18px #0003;overscroll-behavior:contain}.ingredient-sheet-handle{width:32px;height:4px;margin:10px auto 0;border-radius:999px;background:#9e9e9e}.ingredient-editor-sheet>form{padding:12px 2px 0}.ingredient-editor-media-row{display:flex;align-items:center;justify-content:space-evenly;min-height:140px}.ingredient-editor-id{padding:2px 6px;border-radius:5px;background:#000;color:#fff;font-size:12px;line-height:18px}.catalog-private-badge{padding:6px 10px;border-radius:999px;background:#fff3e0;color:#a84300;font-size:12px;font-weight:700}.ingredient-image-editor{position:relative;display:grid;place-items:center;width:100px;height:100px;padding:0;overflow:hidden;border:1.5px solid #9e9e9e;border-radius:8px;background:#9e9e9e1a;color:#1976d2;cursor:pointer}.ingredient-image-editor img{display:block;width:100%;height:100%;object-fit:cover}.ingredient-image-editor>span:not(.ingredient-image-uploading){display:grid;place-items:center;gap:4px;color:#1976d2;font-size:12px}.ingredient-image-editor>span:not(.ingredient-image-uploading) svg{width:30px;height:30px}.ingredient-image-editor-missing{border-color:#1976d2;background:#2196f31a}.ingredient-image-uploading{position:absolute;inset:0;display:grid;place-items:center;background:#ffffffd1;color:#424242;font-size:12px}.ingredient-image-status{position:absolute;right:4px;bottom:4px;max-width:calc(100% - 8px);padding:2px 5px;border-radius:999px;font-size:9px!important;font-weight:700;line-height:14px;white-space:nowrap}.ingredient-image-status.is-loaded{background:#33691ee6;color:#fff!important}.ingredient-image-status.is-missing{background:#a84300e6;color:#fff!important}.ingredient-editor-file{display:none}.ingredient-editor-main-fields,.ingredient-editor-macros{display:grid;gap:4px}.ingredient-editor-main-fields{grid-template-columns:repeat(2,minmax(0,1fr));margin:6px 0 8px}.ingredient-editor-macros{grid-template-columns:repeat(4,minmax(0,1fr))}.ingredient-editor-main-fields label,.ingredient-editor-macros label{min-width:0}.ingredient-category-field{position:relative;min-width:0}.ingredient-category-options{position:absolute;top:calc(100% + 2px);left:0;z-index:6;width:200px;max-height:240px;overflow-y:auto;background:#fff;color:#212121;box-shadow:0 3px 8px #00000047}.ingredient-category-options button{display:block;width:100%;min-height:42px;padding:8px 16px;border:0;background:#fff;color:#212121;font:inherit;text-align:left;cursor:pointer}.ingredient-category-options button:hover,.ingredient-category-options button[aria-selected=true]{background:#eee}.ingredient-editor-main-fields input,.ingredient-editor-macros input{width:100%;height:48px;min-height:48px;padding:0 10px;border:0;border-radius:10px;outline:0;background:#00bcd4;color:#fff;font-size:16px}.ingredient-editor-main-fields input::placeholder,.ingredient-editor-macros input::placeholder{color:#fff;opacity:1}.ingredient-editor-main-fields input:focus,.ingredient-editor-macros input:focus{box-shadow:inset 0 0 0 2px #00838f}.catalog-serving-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin:12px 10px 4px}.catalog-serving-fields label{display:grid;gap:5px;min-width:0;color:#616161;font-size:12px}.catalog-serving-fields small{color:#8a8a8a;font-size:11px;font-weight:400}.catalog-serving-fields input{width:100%;min-height:44px;padding:0 12px;border:1px solid #b0bec5;border-radius:9px;outline:0;background:#fff;color:#212121;font:inherit;font-size:15px}.catalog-serving-fields input:focus{border-color:#0097a7;box-shadow:0 0 0 1px #0097a7}.catalog-serving-fields input:disabled{background:#eceff1;color:#90a4ae}.catalog-recipe-amount-rule{display:grid;gap:8px;margin:12px 10px 4px;padding:12px;border-radius:10px;background:#f3e5f5}.catalog-recipe-amount-rule label{display:grid;gap:5px;color:#4a148c;font-size:12px;font-weight:700}.catalog-recipe-amount-rule select{width:100%;min-height:44px;padding:0 10px;border:1px solid #ab47bc;border-radius:9px;background:#fff;color:#212121;font:inherit}.catalog-recipe-amount-rule small{color:#6a1b9a;line-height:1.4}.catalog-recipe-comment{display:grid;gap:6px;margin:12px 10px 4px;color:#455a64;font-size:12px;font-weight:700}.catalog-recipe-comment small{color:#8a8a8a;font-size:11px;font-weight:400}.catalog-recipe-comment textarea{width:100%;min-height:92px;resize:vertical;padding:10px 12px;border:1px solid #b0bec5;border-radius:9px;outline:0;background:#fff;color:#212121;font:inherit;font-size:14px;line-height:1.4}.catalog-recipe-comment textarea:focus{border-color:#0097a7;box-shadow:0 0 0 1px #0097a7}.ingredient-editor-actions{display:flex;align-items:center;justify-content:space-around;padding:10px}.ingredient-editor-action{display:grid;place-items:center;width:48px;height:48px;padding:0;border:0;border-radius:50%;background:#b2ebf2;cursor:pointer}.ingredient-editor-action:disabled{cursor:wait;opacity:.55}.ingredient-editor-cancel{color:#f44336}.ingredient-editor-confirm{color:#2e7d32}.ingredient-editor-error{padding:8px 10px;color:#b71c1c;font-size:13px;text-align:center}.ingredient-editor-form-error{margin:0 10px 10px;border-radius:6px;background:#ffebee}.catalog-barcodes-editor{margin:12px 10px 4px;padding:10px;border-radius:10px;background:#eceff1}.catalog-barcodes-editor h3{margin:0 0 8px;font-size:15px}.catalog-barcodes-editor>div:not(.catalog-barcode-add){display:flex;min-height:40px;align-items:center;justify-content:space-between;border-bottom:1px solid #cfd8dc}.catalog-barcodes-editor code{font-size:15px}.catalog-barcodes-editor>div>button{display:grid;width:38px;height:38px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#b71c1c;cursor:pointer}.catalog-barcodes-editor svg{width:20px;height:20px;fill:currentColor}.catalog-barcode-add{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px;margin-top:10px}.catalog-barcode-add input{min-width:0;min-height:42px;background:#fff;color:#212121}.catalog-barcode-add button{min-height:42px;padding:0 10px;border:0;border-radius:8px;background:#0097a7;color:#fff;font:inherit;cursor:pointer}.catalog-publish-button{display:block;min-height:46px;margin:14px auto 2px;padding:0 20px;border:0;border-radius:23px;background:#00695c;color:#fff;font:inherit;font-weight:700;cursor:pointer}.catalog-publish-button:disabled{cursor:wait;opacity:.55}.catalog-delete-button{display:block;min-height:44px;margin:12px auto 2px;padding:0 20px;border:1px solid #b3261e;border-radius:22px;background:transparent;color:#b3261e;font:inherit;font-weight:700;cursor:pointer}.catalog-delete-button:disabled{cursor:wait;opacity:.55}.catalog-barcode-camera{width:min(620px,100%);padding:12px;border-radius:16px;background:#102027;color:#fff;box-shadow:0 8px 28px #00000073}.catalog-barcode-camera-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:10px}.catalog-barcode-camera-toolbar button,.catalog-barcode-camera-toolbar select{min-height:40px;border:1px solid #607d8b;border-radius:8px;background:#263238;color:#fff}.catalog-barcode-camera-toolbar button{padding:0 12px}.catalog-barcode-camera-view{position:relative;overflow:hidden;cursor:pointer}.catalog-barcode-camera-view video{display:block;width:100%;max-height:55vh;object-fit:cover;background:#000}.catalog-barcode-camera-view span{position:absolute;top:50%;left:5%;width:90%;height:38%;border:2px solid #80deea;border-radius:12px;transform:translateY(-50%);pointer-events:none}.catalog-barcode-camera p{margin:10px 4px 2px;color:#b2ebf2;text-align:center;font-size:13px}.ingredient-links-editor{margin:0 10px;padding:8px;border-radius:10px;background:#00bcd4}.ingredient-links-title{padding:0 0 6px;color:#fff;text-align:center}.ingredient-editor-state{padding:14px;color:#fff;text-align:center}.ingredient-link-card{display:flex;align-items:center;gap:8px;margin:6px 0;padding:10px 8px 10px 16px;border-radius:4px;background:#fff;color:#212121;box-shadow:0 1px 3px #00000038}.ingredient-link-fields{flex:1;display:grid;gap:6px;min-width:0}.ingredient-link-fields label{display:grid;color:#616161;font-size:12px}.ingredient-link-fields input{width:100%;min-height:34px;padding:2px 0;border:0;border-bottom:1px solid #9e9e9e;border-radius:0;outline:0;background:#fff;color:#212121;font-size:16px}.ingredient-link-fields input:focus{border-bottom:2px solid #0097a7}.ingredient-link-delete{flex:0 0 auto;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:transparent;color:#424242;cursor:pointer}.ingredient-link-delete:hover{background:#0000000f}.ingredient-links-add{display:grid;place-items:center;width:56px;height:56px;margin:8px auto 0;padding:0;border:0;border-radius:50%;background:#b2ebf2;color:#004d40;box-shadow:0 3px 7px #00000038;cursor:pointer}.ingredient-links-add:disabled{cursor:wait;opacity:.6}.ingredient-editor-bottom-space{height:180px}.ingredient-validation-backdrop{position:fixed;inset:0;z-index:3;display:grid;place-items:center;padding:24px;background:#00000052}.barcode-capture-backdrop{z-index:140}.ingredient-validation-dialog{width:min(320px,100%);padding:24px;border-radius:28px;background:#fff;color:#212121;box-shadow:0 8px 28px #00000040}.ingredient-validation-dialog h2{margin:0 0 20px;font-size:20px;font-weight:500}.ingredient-validation-dialog button{display:grid;place-items:center;width:48px;height:48px;margin-left:auto;padding:0;border:0;border-radius:50%;background:transparent;color:#0097a7;cursor:pointer}.catalog-publish-dialog{width:min(420px,100%);padding:24px;border-radius:24px;background:#fff;color:#212121;box-shadow:0 8px 28px #00000040}.catalog-publish-dialog h2{margin:0 0 12px;font-size:21px}.catalog-publish-dialog p{margin:0;color:#546e7a;line-height:1.45}.catalog-publish-dialog>div{display:flex;justify-content:flex-end;gap:8px;margin-top:22px}.catalog-publish-dialog button{min-height:42px;padding:0 16px;border:0;border-radius:21px;background:transparent;color:#00695c;font:inherit;font-weight:700;cursor:pointer}.catalog-publish-dialog button:last-child{background:#00695c;color:#fff}.catalog-publish-dialog button:disabled{cursor:wait;opacity:.55}.catalog-delete-dialog button:last-child{background:#b3261e;color:#fff}.ingredient-editor-snackbar{position:fixed;left:50%;bottom:24px;z-index:90;max-width:calc(100% - 32px);padding:14px 18px;border-radius:4px;background:#323232;color:#fff;box-shadow:0 3px 8px #00000047;transform:translate(-50%);font-size:14px}.food-ranking-page{min-height:100vh;background:#f3f6f7;color:#263238}.food-ranking-appbar{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:64px;padding:4px 16px 4px 8px;border-bottom:1px solid #cfd8dc;background:#fff}.food-ranking-appbar>button:first-child{display:grid;width:48px;height:48px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#263238;cursor:pointer}.food-ranking-appbar svg{width:24px;height:24px;fill:currentColor}.food-ranking-appbar h1{margin:0;font-size:21px;font-weight:600}.food-ranking-new{min-height:40px;padding:0 16px;border:0;border-radius:20px;background:#e0f7fa;color:#006064;font:inherit;font-weight:700;cursor:pointer}.food-ranking-layout{display:grid;grid-template-columns:minmax(210px,280px) minmax(0,760px);gap:20px;justify-content:center;padding:20px 16px 56px}.food-ranking-rules{min-width:0}.food-ranking-rules h2,.food-ranking-card h2{margin:0 0 12px;font-size:17px}.food-ranking-rules>button{display:grid;gap:3px;width:100%;margin-bottom:8px;padding:12px 14px;border:1px solid #cfd8dc;border-radius:12px;background:#fff;color:#263238;font:inherit;text-align:left;cursor:pointer}.food-ranking-rules>button.is-active{border-color:#0097a7;background:#e0f7fa}.food-ranking-rules>button span{overflow:hidden;color:#607d8b;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.food-ranking-editor{display:grid;gap:14px;min-width:0}.food-ranking-card{padding:18px;border:1px solid #dbe2e5;border-radius:16px;background:#fff}.food-ranking-card label{display:grid;gap:6px;margin-bottom:14px;color:#455a64;font-size:13px;font-weight:700}.food-ranking-card label:last-child{margin-bottom:0}.food-ranking-card input{width:100%;min-height:46px;padding:0 13px;border:1px solid #b0bec5;border-radius:10px;outline:0;background:#fff;color:#212121;font:inherit}.food-ranking-card input:focus{border-color:#0097a7;box-shadow:0 0 0 1px #0097a7}.food-ranking-card>p{margin:2px 0 0;color:#607d8b;font-size:13px;line-height:1.45}.food-ranking-pinned{display:grid;gap:8px;margin:0;padding:0;list-style:none}.food-ranking-pinned li{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:54px;padding:7px 8px;border-radius:10px;background:#f3f7f8}.food-ranking-position{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:#0097a7;color:#fff;font-size:13px;font-weight:700}.food-ranking-pinned li>span:nth-child(2),.food-ranking-candidates button>span{display:grid;min-width:0}.food-ranking-pinned strong,.food-ranking-candidates strong{overflow-wrap:anywhere}.food-ranking-pinned small,.food-ranking-candidates small{margin-top:2px;color:#78909c}.food-ranking-pinned li>div{display:flex;gap:4px}.food-ranking-pinned button{width:36px;height:36px;padding:0;border:0;border-radius:50%;background:#fff;color:#006064;font-size:20px;cursor:pointer}.food-ranking-pinned button:disabled{opacity:.3}.food-ranking-pinned .food-ranking-remove{color:#b71c1c}.food-ranking-candidates{display:grid;max-height:340px;overflow-y:auto}.food-ranking-candidates button{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:8px 4px;border:0;border-bottom:1px solid #eceff1;background:#fff;color:#263238;font:inherit;text-align:left;cursor:pointer}.food-ranking-candidates b{color:#00838f;font-size:13px;white-space:nowrap}.food-ranking-empty{color:#78909c!important}.food-ranking-error{padding:12px;border-radius:10px;background:#ffebee;color:#b71c1c}.food-ranking-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.food-ranking-actions button{min-height:46px;padding:0 22px;border:0;border-radius:23px;font:inherit;font-weight:700;cursor:pointer}.food-ranking-save{background:#00838f;color:#fff}.food-ranking-delete{background:#ffebee;color:#b71c1c}.food-ranking-actions button:disabled{cursor:wait;opacity:.55}@media(max-width:520px){.ingredient-editor-appbar{padding-inline:4px 8px}.ingredient-editor-search input{font-size:15px}.ingredient-list-content{padding-inline:16px}.ingredient-list-card{padding-inline:12px}.ingredient-list-category{max-width:34%;margin-left:8px}.ingredient-editor-fab{right:18px;bottom:18px}.ingredient-editor-sheet{max-height:calc(100dvh - 8px)}.ingredient-editor-bottom-space{height:220px}.catalog-barcode-add{grid-template-columns:minmax(0,1fr) auto}.catalog-barcode-add button:last-child{grid-column:1 / -1}.food-ranking-appbar{padding-right:8px}.food-ranking-appbar h1{font-size:18px}.food-ranking-layout{grid-template-columns:1fr;padding:12px 10px 40px}.food-ranking-rules{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.food-ranking-rules h2,.food-ranking-rules>p{display:none}.food-ranking-rules>button{flex:0 0 auto;width:min(220px,75vw);margin:0}.food-ranking-card{padding:14px}.food-ranking-pinned li{grid-template-columns:28px minmax(0,1fr)}.food-ranking-pinned li>div{grid-column:2;justify-content:flex-end}}.app-shell-diet-tips-admin,.main-surface-diet-tips-admin{min-height:100dvh;background:#f4f1ea}.main-surface-diet-tips-admin{padding:0}.diet-tips-admin-page{width:min(100%,980px);min-height:100dvh;margin:0 auto;color:#28261f;background:#f4f1ea}.diet-tips-admin-appbar{position:sticky;z-index:10;top:0;display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:13px;align-items:center;padding:max(18px,env(safe-area-inset-top)) 18px 16px;color:#fff;background:linear-gradient(145deg,#697257,#3f4934);box-shadow:0 4px 18px #343b2c2e}.diet-tips-admin-appbar>button{min-width:44px;height:44px;border:0;border-radius:14px;color:inherit;background:#ffffff21;font:inherit;font-size:28px;cursor:pointer}.diet-tips-admin-appbar>div{min-width:0;display:grid;gap:2px}.diet-tips-admin-appbar span{color:#ffffffad;font-size:11px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.diet-tips-admin-appbar h1{margin:0;overflow:hidden;font-size:22px;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.diet-tips-admin-appbar .diet-tips-admin-new{width:auto;padding:0 16px;color:#34402a;background:#f4d99d;font-size:13px;font-weight:850}.diet-tips-admin-layout{display:grid;grid-template-columns:minmax(250px,340px) minmax(0,1fr);gap:16px;padding:18px 18px calc(32px + env(safe-area-inset-bottom))}.diet-tips-admin-list{min-width:0;display:grid;align-content:start;gap:9px}.diet-tips-admin-list>p{margin:0;padding:18px;color:#817b70;text-align:center}.diet-tips-admin-list>button{width:100%;display:grid;gap:5px;padding:14px 15px;border:1px solid #e2dbcf;border-radius:16px;color:inherit;text-align:left;background:#fff;box-shadow:0 3px 12px #453d300a;cursor:pointer}.diet-tips-admin-list>button.is-active{border-color:#788466;box-shadow:0 0 0 2px #69775626}.diet-tips-admin-list strong{font-size:14px;line-height:1.25}.diet-tips-admin-list small{color:#8b8377;font-size:11px}.diet-tips-admin-list p{display:-webkit-box;overflow:hidden;margin:3px 0 0;color:#635e55;font-size:12px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:3}.diet-tip-status-on,.diet-tip-status-off{width:max-content;padding:4px 7px;border-radius:99px;font-size:9px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.diet-tip-status-on{color:#536344;background:#e2ead9}.diet-tip-status-off{color:#847d72;background:#ebe7e0}.diet-tips-admin-editor{min-width:0;display:grid;align-content:start;gap:16px;padding:20px;border:1px solid #e2dbcf;border-radius:20px;background:#fff;box-shadow:0 8px 28px #453d300f}.diet-tips-admin-editor>label{display:grid;gap:7px;color:#676158;font-size:12px;font-weight:800}.diet-tips-admin-editor input,.diet-tips-admin-editor select,.diet-tips-admin-editor textarea{width:100%;box-sizing:border-box;padding:11px 12px;border:1px solid #d9d2c7;border-radius:11px;color:#29271f;background:#faf9f6;font:inherit;font-size:15px;outline:0}.diet-tips-admin-editor input:focus,.diet-tips-admin-editor select:focus,.diet-tips-admin-editor textarea:focus{border-color:#768363;box-shadow:0 0 0 3px #6977561f}.diet-tips-admin-editor textarea{min-height:150px;resize:vertical;line-height:1.5}.diet-tips-admin-editor label>small{color:#948d82;font-weight:500}.diet-tips-admin-editor .diet-tips-admin-toggle{grid-template-columns:20px minmax(0,1fr);align-items:center}.diet-tips-admin-toggle input{width:20px;height:20px;margin:0;accent-color:#667455}.diet-tips-admin-error{padding:11px 13px;border-radius:11px;color:#9c3f35;background:#f7e4df;font-size:12px}.diet-tips-admin-actions{display:grid;grid-template-columns:auto minmax(150px,1fr);gap:10px}.diet-tips-admin-actions button{min-height:48px;padding:0 18px;border:0;border-radius:12px;font:inherit;font-size:14px;font-weight:850;cursor:pointer}.diet-tips-admin-actions button:disabled{opacity:.55;cursor:wait}.diet-tips-admin-delete{color:#9a4639;background:#f5e4df}.diet-tips-admin-save{color:#fff;background:#5c694c;box-shadow:0 7px 18px #4652392e}@media(max-width:700px){.diet-tips-admin-layout{grid-template-columns:1fr;padding:13px 13px calc(28px + env(safe-area-inset-bottom))}.diet-tips-admin-list{grid-auto-flow:column;grid-auto-columns:minmax(220px,78vw);overflow-x:auto;overscroll-behavior-inline:contain;padding:2px 2px 7px;scroll-snap-type:inline proximity}.diet-tips-admin-list>button{scroll-snap-align:start}.diet-tips-admin-editor{padding:17px}}@media(max-width:430px){.diet-tips-admin-appbar{grid-template-columns:40px minmax(0,1fr) auto;gap:9px;padding-inline:12px}.diet-tips-admin-appbar>button{min-width:40px;height:40px;border-radius:12px}.diet-tips-admin-appbar .diet-tips-admin-new{padding-inline:11px}.diet-tips-admin-appbar h1{font-size:19px}.diet-tips-admin-actions{grid-template-columns:1fr}.diet-tips-admin-actions>span{display:none}}.diet-start-wizard{width:min(100%,720px);min-height:100dvh;margin:0 auto;padding-bottom:calc(28px + env(safe-area-inset-bottom));color:#f8fafc;background:#0f172a}.diet-start-wizard>header{position:sticky;z-index:10;top:0;display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;padding:max(13px,env(safe-area-inset-top)) 15px 11px;border-bottom:1px solid rgba(148,163,184,.12);background:#0f172af0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.diet-start-wizard>header>button{display:grid;width:44px;height:44px;place-items:center;padding:0;border:1px solid rgba(148,163,184,.22);border-radius:50%;color:#e2e8f0;background:#1e293b;font:inherit;font-size:28px;cursor:pointer}.diet-start-wizard>header>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.diet-start-wizard>header span{font-size:15px;font-weight:800}.diet-start-wizard>header strong{color:#7dd3fc;font-size:11px}.diet-start-progress{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;padding:0 16px 12px;background:#0f172a}.diet-start-progress i{height:4px;border-radius:99px;background:#334155}.diet-start-progress i.is-active{background:linear-gradient(90deg,#8b5cf6,#38bdf8)}.diet-start-card{display:grid;gap:16px;margin:12px 14px 0;padding:20px;border:1px solid rgba(148,163,184,.18);border-radius:21px;background:radial-gradient(circle at 90% 0,rgba(56,189,248,.11),transparent 36%),#172235;box-shadow:0 12px 34px #0003}.diet-start-title{display:grid;gap:6px}.diet-start-title>span{color:#7dd3fc;font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.diet-start-title h1{margin:0;font-size:clamp(25px,7vw,33px);line-height:1.08}.diet-start-title p{margin:1px 0 0;color:#cbd5e1;font-size:13px;line-height:19px}.diet-start-card>label,.diet-start-grid>label{display:grid;gap:7px;color:#e2e8f0;font-size:13px;font-weight:750}.diet-start-card input,.diet-start-card select{box-sizing:border-box;width:100%;min-height:50px;padding:0 13px;border:1px solid #475569;border-radius:12px;outline:0;color:#fff;color-scheme:dark;background:#0f172a;font:inherit;font-size:15px}.diet-start-card input:focus,.diet-start-card select:focus{border-color:#38bdf8;box-shadow:0 0 0 3px #38bdf81f}.diet-start-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.diet-start-grid label>span{position:relative;display:block}.diet-start-grid label>span input{padding-right:64px}.diet-start-grid label>span em{position:absolute;top:50%;right:13px;color:#94a3b8;font-size:11px;font-style:normal;transform:translateY(-50%)}.diet-start-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.diet-start-choice button{display:grid;gap:5px;min-height:94px;padding:14px;border:1px solid #475569;border-radius:14px;color:#e2e8f0;text-align:left;background:#0f172a;font:inherit;cursor:pointer}.diet-start-choice button.is-active{border-color:#a78bfa;background:#6d28d930;box-shadow:0 0 0 3px #a78bfa1a}.diet-start-choice strong{font-size:15px}.diet-start-choice small{color:#94a3b8;font-size:11px;line-height:16px}.diet-start-calibration{padding:14px 15px;border:1px solid rgba(167,139,250,.3);border-radius:14px;background:#6d28d921}.diet-start-calibration strong{color:#ddd6fe;font-size:14px}.diet-start-calibration p{margin:6px 0 0;color:#c4b5fd;font-size:12px;line-height:18px}.diet-start-error{margin:0;padding:11px 13px;border:1px solid rgba(251,113,133,.25);border-radius:12px;color:#fecdd3;background:#be185d21;font-size:12px}.diet-start-primary,.diet-start-secondary{width:100%;min-height:52px;border:0;border-radius:13px;color:#fff;font:inherit;font-size:15px;font-weight:850;cursor:pointer}.diet-start-primary{background:linear-gradient(135deg,#0284c7,#0ea5e9);box-shadow:0 7px 22px #0ea5e938}.diet-start-primary:disabled{opacity:.45;box-shadow:none;cursor:not-allowed}.diet-start-secondary{margin-top:-7px;color:#94a3b8;background:transparent}.diet-start-disclaimer>div:nth-child(2){display:grid;gap:11px;padding:15px;border-radius:15px;background:#0f172ab3}.diet-start-disclaimer>div:nth-child(2) p{margin:0;color:#cbd5e1;font-size:12px;line-height:18px}.diet-start-review{display:grid;gap:0;margin:0;overflow:hidden;border:1px solid rgba(148,163,184,.16);border-radius:14px}.diet-start-review>div{display:grid;grid-template-columns:105px minmax(0,1fr);gap:12px;padding:12px 13px;border-bottom:1px solid rgba(148,163,184,.12)}.diet-start-review>div:last-child{border-bottom:0}.diet-start-review dt{color:#94a3b8;font-size:11px}.diet-start-review dd{margin:0;color:#f8fafc;font-size:13px;font-weight:750;text-align:right}.diet-start-state{min-height:240px;align-content:center;text-align:center}.diet-start-state p{margin:0;color:#cbd5e1}@media(max-width:480px){.diet-start-grid,.diet-start-choice{grid-template-columns:1fr}.diet-start-wizard>header>div{display:grid;gap:2px}.diet-start-card{padding:17px}}.food-weekly-prompt-backdrop{position:fixed;inset:0;z-index:170;display:flex;align-items:flex-end;justify-content:center;padding:14px;background:#020617bd;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:food-day-backdrop-in .2s ease-out both}.food-weekly-prompt{box-sizing:border-box;width:min(440px,100%);display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px;padding:20px;border:1px solid rgba(125,211,252,.25);border-radius:22px;color:#f8fafc;background:radial-gradient(circle at 20% 0,rgba(56,189,248,.16),transparent 38%),#172235;box-shadow:0 18px 50px #00000080;animation:food-day-sheet-in .3s cubic-bezier(.2,.75,.2,1) both}.food-weekly-prompt-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;color:#fde68a;background:#fbbf2421}.food-weekly-prompt-icon svg{width:25px;height:25px;fill:currentColor}.food-weekly-prompt>div{display:grid;gap:4px}.food-weekly-prompt small{color:#7dd3fc;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.food-weekly-prompt h2{margin:0;font-size:21px;line-height:26px}.food-weekly-prompt p{margin:3px 0 0;color:#cbd5e1;font-size:13px;line-height:19px}.food-weekly-prompt>button{grid-column:1 / -1;min-height:48px;border:0;border-radius:13px;font:inherit;font-size:15px;font-weight:800;cursor:pointer}.food-weekly-prompt-primary{margin-top:4px;color:#fff;background:linear-gradient(135deg,#0284c7,#0ea5e9)}.food-weekly-prompt-later{margin-top:-6px;color:#7dd3fc;background:transparent}.app-shell-diet-progress,.main-surface-diet-progress{min-height:100dvh;background:#0f172a}.main-surface-diet-progress{width:100%;max-width:none;margin:0;padding:0}.diet-progress-page{width:min(100%,840px);min-height:100dvh;margin:0 auto;color:#f8fafc;background:#0f172a}.diet-progress-appbar{position:sticky;z-index:20;top:0;display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:center;padding:max(14px,env(safe-area-inset-top)) 14px 13px;border-bottom:1px solid rgba(148,163,184,.12);background:#0f172af0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.diet-progress-appbar>button{width:44px;height:44px;display:grid;place-items:center;padding:0;border:1px solid rgba(148,163,184,.22);border-radius:50%;color:#e2e8f0;background:#1e293bb8;font:inherit;font-size:28px;cursor:pointer}.diet-progress-appbar>div{min-width:0;display:grid;gap:2px}.diet-progress-appbar>div span{color:#7dd3fc;font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.diet-progress-appbar h1{margin:0;overflow:hidden;font-size:21px;line-height:26px;text-overflow:ellipsis;white-space:nowrap}.diet-progress-appbar>strong{padding:7px 10px;border-radius:99px;color:#fde68a;background:#fbbf241f;font-size:11px}.diet-weekly-wizard-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:0 16px 12px;background:#0f172a}.diet-weekly-wizard-progress i{height:4px;border-radius:99px;background:#334155}.diet-weekly-wizard-progress i.is-active{background:linear-gradient(90deg,#0284c7,#38bdf8)}.diet-weekly-wizard{display:grid;gap:14px;padding:8px 15px calc(28px + env(safe-area-inset-bottom))}.diet-weekly-intro{display:grid;gap:7px;padding:20px;overflow:hidden;border:1px solid rgba(125,211,252,.18);border-radius:20px;background:radial-gradient(circle at 90% 0,rgba(56,189,248,.14),transparent 42%),#172235}.diet-weekly-intro>span{color:#7dd3fc;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.diet-weekly-intro h2{margin:0;font-size:clamp(24px,7vw,31px);line-height:1.08}.diet-weekly-intro p{margin:2px 0 0;color:#cbd5e1;font-size:13px;line-height:19px}.diet-weekly-form,.diet-weekly-survey{display:grid;gap:12px}.diet-weekly-measurement{display:grid;gap:8px;padding:15px;border:1px solid rgba(148,163,184,.18);border-radius:16px;background:#172235}.diet-weekly-measurement>span:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#f8fafc;font-size:14px;font-weight:800}.diet-weekly-measurement>span:first-child b,.diet-weekly-measurement>span:first-child small{color:#7dd3fc;font-size:9px;letter-spacing:.04em;text-transform:uppercase}.diet-weekly-measurement>span:first-child small{color:#64748b}.diet-weekly-measurement>span:last-child{position:relative;display:block}.diet-weekly-measurement input{width:100%;height:54px;box-sizing:border-box;padding:0 54px 0 14px;border:1px solid #475569;border-radius:12px;outline:0;color:#fff;background:#0f172a;font:inherit;font-size:21px;font-weight:750}.diet-weekly-measurement input:focus{border-color:#38bdf8;box-shadow:0 0 0 3px #38bdf81f}.diet-weekly-measurement em{position:absolute;top:50%;right:15px;color:#94a3b8;font-size:13px;font-style:normal;transform:translateY(-50%)}.diet-weekly-extra-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px;border:1px dashed rgba(148,163,184,.3);border-radius:16px;color:#e2e8f0;text-align:left;background:#1e293b99;font:inherit;cursor:pointer}.diet-weekly-extra-toggle>span{display:grid;gap:3px}.diet-weekly-extra-toggle strong{font-size:14px}.diet-weekly-extra-toggle small{color:#94a3b8;font-size:11px}.diet-weekly-extra-toggle b{color:#7dd3fc;font-size:25px}.diet-weekly-extra-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.diet-weekly-error{margin:0;padding:11px 13px;border:1px solid rgba(251,113,133,.22);border-radius:12px;color:#fecdd3;background:#be185d21;font-size:12px}.diet-weekly-profile-note{margin:0;padding:11px 13px;border:1px solid rgba(125,211,252,.2);border-radius:12px;color:#cbd5e1;background:#0ea5e914;font-size:12px;line-height:17px}.diet-weekly-profile-note a{color:#7dd3fc;font-weight:750;text-underline-offset:2px}.diet-weekly-primary{width:100%;min-height:54px;border:0;border-radius:14px;color:#fff;background:linear-gradient(135deg,#0284c7,#0ea5e9);box-shadow:0 8px 22px #0ea5e933;font:inherit;font-size:16px;font-weight:850;cursor:pointer}.diet-weekly-scale,.diet-weekly-choice{display:grid;gap:13px;margin:0;padding:17px;border:1px solid rgba(148,163,184,.18);border-radius:17px;background:#172235}.diet-weekly-scale legend,.diet-weekly-choice legend{padding:0 3px;color:#f8fafc;font-size:15px;font-weight:800}.diet-weekly-scale>div{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.diet-weekly-scale button,.diet-weekly-choice button{min-height:44px;border:1px solid #475569;border-radius:11px;color:#cbd5e1;background:#0f172a;font:inherit;font-weight:750;cursor:pointer}.diet-weekly-scale button.is-active,.diet-weekly-choice button.is-active{border-color:#38bdf8;color:#fff;background:#0369a1;box-shadow:0 0 0 3px #38bdf81a}.diet-weekly-scale>small{display:flex;justify-content:space-between;gap:12px;color:#64748b;font-size:10px}.diet-weekly-scale>small span:last-child{max-width:48%;text-align:right}.diet-weekly-choice>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.diet-weekly-choice button{padding:8px;font-size:12px}.diet-weekly-dashboard{display:grid;gap:13px;padding:14px 14px calc(30px + env(safe-area-inset-bottom))}.diet-weekly-result-hero{display:grid;gap:7px;padding:20px;border:1px solid rgba(251,191,36,.24);border-radius:21px;background:radial-gradient(circle at 90% 0,rgba(251,191,36,.15),transparent 38%),#172235}.diet-weekly-result-hero>span{color:#fde68a;font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.diet-weekly-result-hero h2{margin:0 0 7px;font-size:27px}.diet-weekly-result-hero>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.diet-weekly-result-value{min-width:0;display:grid;gap:4px}.diet-weekly-result-value span{color:#94a3b8;font-size:10px}.diet-weekly-result-value strong{overflow:hidden;color:#f8fafc;font-size:16px;line-height:20px;text-overflow:ellipsis}.diet-weekly-pending-card{width:100%;display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:11px;align-items:center;padding:13px 14px;border:1px solid rgba(251,113,133,.28);border-radius:16px;color:#fff;text-align:left;background:#be185d1a;font:inherit;cursor:pointer}.diet-weekly-pending-card>span{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#e11d48;font-weight:900}.diet-weekly-pending-card>div{min-width:0;display:grid;gap:3px}.diet-weekly-pending-card strong{font-size:14px}.diet-weekly-pending-card small{color:#fecdd3;font-size:11px}.diet-weekly-pending-card>b{color:#fda4af;font-size:28px}.diet-weekly-chart-card{display:grid;gap:14px;padding:17px;border:1px solid rgba(148,163,184,.18);border-radius:19px;background:#172235}.diet-weekly-chart-card>header{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.diet-weekly-chart-card>header>div{display:grid;gap:3px}.diet-weekly-chart-card>header span,.diet-weekly-history>div>span{color:#7dd3fc;font-size:10px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.diet-weekly-chart-card h2,.diet-weekly-history h2{margin:0;font-size:19px}.diet-weekly-chart-card>header small{color:#64748b;font-size:10px;text-align:right}.diet-weekly-metric-toggles{display:flex;flex-wrap:wrap;gap:7px}.diet-weekly-metric-toggles button{min-height:32px;padding:0 10px;border:1px solid #475569;border-radius:99px;color:#94a3b8;background:#0f172a;font:inherit;font-size:11px;font-weight:750;cursor:pointer}.diet-weekly-metric-toggles button.is-active{background:#0f172abf}.diet-weekly-metric-toggles button:disabled{opacity:.3;cursor:not-allowed}.diet-weekly-chart-empty{min-height:170px;display:grid;place-content:center;gap:5px;border-radius:14px;color:#94a3b8;text-align:center;background:#0f172a}.diet-weekly-chart-empty strong{color:#cbd5e1;font-size:14px}.diet-weekly-chart-empty span{font-size:11px}.diet-weekly-chart{position:relative;padding:4px 0 22px 34px}.diet-weekly-chart svg{width:100%;height:210px;overflow:visible}.diet-weekly-chart line{stroke:#334155;stroke-width:.7;vector-effect:non-scaling-stroke}.diet-weekly-chart line.zero{stroke:#64748b;stroke-dasharray:3 3}.diet-weekly-chart polyline{fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.diet-weekly-chart-axis{position:absolute;top:4px;bottom:22px;left:0;display:flex;flex-direction:column;justify-content:space-between;color:#64748b;font-size:9px}.diet-weekly-chart-weeks{position:absolute;right:0;bottom:0;left:34px;display:flex;justify-content:space-between;color:#64748b;font-size:9px}.diet-weekly-history{display:grid;gap:9px}.diet-weekly-history>div:first-child{display:grid;gap:3px;padding:5px 3px}.diet-weekly-report-card{overflow:hidden;border:1px solid rgba(148,163,184,.18);border-radius:16px;background:#172235}.diet-weekly-report-card>button{position:relative;width:100%;display:block;padding:14px 40px 15px 15px;border:0;color:inherit;text-align:left;background:transparent;font:inherit;cursor:pointer}.diet-weekly-report-summary{min-width:0;display:grid;gap:11px}.diet-weekly-report-summary>span{color:#7dd3fc;font-size:10px;font-weight:750}.diet-weekly-report-summary>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px 10px}.diet-weekly-report-card>button>b{position:absolute;top:10px;right:14px;color:#7dd3fc;font-size:24px}.diet-weekly-compact-value{min-width:0;display:grid;gap:2px}.diet-weekly-compact-value>span{overflow:hidden;color:#94a3b8;font-size:9px;font-weight:750;letter-spacing:.035em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.diet-weekly-compact-value>strong{display:flex;min-width:0;align-items:baseline;gap:4px;color:#f8fafc;font-size:20px;line-height:24px;font-weight:520;white-space:nowrap}.diet-weekly-compact-value small{color:#94a3b8;font-size:12px;font-weight:550}.diet-weekly-compact-value i{margin-left:1px;color:#64748b;font-size:18px;font-style:normal;font-weight:850}.diet-weekly-compact-value i.is-down{color:#34d399}.diet-weekly-compact-value i.is-up{color:#fb7185}.diet-weekly-report-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:15px;border-top:1px solid rgba(148,163,184,.14);background:#0f172a6b}.diet-weekly-empty{display:grid;gap:5px;padding:24px 18px;border:1px dashed #334155;border-radius:16px;color:#94a3b8;text-align:center}.diet-weekly-empty strong{color:#e2e8f0}.diet-weekly-empty p{margin:0;font-size:12px;line-height:18px}.diet-weekly-footnote{margin:0;padding:4px 6px;color:#64748b;font-size:10px;line-height:15px}.diet-weekly-test-card{display:grid;gap:13px;padding:16px;border:1px dashed #c9b98e;border-radius:17px;background:#fffaf0}.diet-weekly-test-card>div{display:grid;gap:4px}.diet-weekly-test-card span{color:#a06d25;font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.diet-weekly-test-card strong{color:#3d382f;font-size:15px}.diet-weekly-test-card small{color:#81786b;font-size:11px;line-height:16px}.diet-weekly-test-card button{min-height:44px;border:0;border-radius:12px;color:#fff;background:#697656;font:inherit;font-size:13px;font-weight:800;cursor:pointer}.diet-weekly-test-card button.diet-weekly-test-delete{color:#a44338;background:#f5e4df}.diet-measurement-choice{display:grid!important;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:10px!important;padding:10px 2px;border-top:1px solid #eee9e1}.diet-measurement-choice input{width:20px!important;min-height:20px!important;height:20px;padding:0!important;accent-color:#687456}.diet-measurement-choice small{color:#999186;font-size:10px;font-weight:600}@media(max-width:580px){.diet-weekly-result-hero>div{grid-template-columns:repeat(2,minmax(0,1fr))}.diet-weekly-extra-fields{grid-template-columns:1fr}.diet-weekly-report-details{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:410px){.diet-weekly-choice>div{grid-template-columns:1fr}.diet-weekly-choice button{min-height:40px}.diet-weekly-chart-card{padding:14px}.diet-weekly-chart-card>header{align-items:flex-start;flex-direction:column}.diet-weekly-chart-card>header small{text-align:left}.diet-weekly-report-card>button{padding-right:34px;padding-left:12px}.diet-weekly-report-summary>div{gap:11px 7px}.diet-weekly-compact-value>strong{font-size:18px}.diet-weekly-compact-value>span{font-size:8px}}@media(prefers-reduced-motion:reduce){.food-tracker-appbar>button.food-progress-button-due{animation:none}}.app-shell-food-tracker{min-height:100vh;overflow-x:hidden;background:#0f172a;color:#e6e1e5;font-family:Roboto,Segoe UI,Arial,sans-serif}.main-surface-food-tracker{width:100%;max-width:none;min-height:100vh;margin:0;padding:0}.food-view-transition{width:100%;min-height:100vh}.food-view-transition-forward{animation:food-page-forward .24s cubic-bezier(.2,.75,.25,1) both}.food-view-transition-backward{animation:food-page-backward .24s cubic-bezier(.2,.75,.25,1) both}@keyframes food-page-forward{0%{opacity:.75;transform:translate(32px)}to{opacity:1;transform:translate(0)}}@keyframes food-page-backward{0%{opacity:.75;transform:translate(-32px)}to{opacity:1;transform:translate(0)}}.food-tracker-page,.food-quantity-page{min-height:100vh;background:#0f172a;color:#e6e1e5}.food-tracker-page svg,.food-product-search-page svg,.food-quantity-page svg,.food-user-product-page svg{width:24px;height:24px;fill:currentColor}.food-product-search-page button,.food-quantity-page button,.food-user-product-page button,.food-recipe-diary-page button,.user-recipe-builder button{-webkit-tap-highlight-color:transparent}.food-tracker-appbar,.food-quantity-appbar{position:sticky;top:0;z-index:20;display:flex;min-height:64px;align-items:center;padding:4px 8px 4px 16px;background:#1e293b;color:#e6e1e5}.food-tracker-title{min-width:0;flex:1;touch-action:pan-y;-webkit-user-select:none;user-select:none}.food-tracker-title h1{margin:0;font-size:22px;font-weight:400;line-height:27px}.food-week-carousel{width:254px;max-width:100%;overflow:hidden}.food-week-track{display:flex;width:100%;will-change:transform}.food-week-track-settling{transition:transform .18s cubic-bezier(.2,.75,.25,1)}.food-week-page{box-sizing:border-box;display:flex;min-width:0;flex:0 0 100%;overflow:hidden;padding-inline:4px}.food-week-picker{display:grid;width:max-content;grid-template-columns:repeat(7,30px);align-items:center;gap:5px;padding:4px 3px 5px}.food-week-day{position:relative;display:grid;width:30px;height:30px;place-items:center;padding:0;border:1px solid rgba(148,163,184,.32);border-radius:50%;outline:0;background:#0f172a47;color:#d7dce4;font:inherit;font-size:10px;font-weight:700;cursor:pointer;-webkit-tap-highlight-color:transparent}.food-week-day:hover{background:#94a3b821}.food-week-day:focus-visible{box-shadow:0 0 0 2px #d0bcffb8}.food-week-day-today{border-color:#38bdf8;color:#bae6fd}.food-week-day-selected{outline:2px solid #fbbf24;outline-offset:2px}.food-week-day:disabled{opacity:.28;cursor:default}.food-week-day>span{display:block;color:inherit;font-size:inherit;line-height:1}.food-week-day-with-food>span{transform:translateY(-2px)}.food-week-day-with-workout>span{transform:translateY(2px)}.food-week-day-with-food.food-week-day-with-workout>span{transform:none}.food-week-day-with-workout:before{position:absolute;top:4px;left:50%;width:3px;height:3px;border-radius:50%;background:#f472b6;box-shadow:0 0 0 .5px #f472b633;content:"";transform:translate(-50%)}.food-week-day-with-food:after{position:absolute;bottom:4px;left:50%;width:3px;height:3px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 .5px #22c55e29;content:"";transform:translate(-50%)}.food-week-day-selected.food-week-day-with-workout:before{background:#f9a8d4;box-shadow:0 0 0 1px #f9a8d438}.food-week-day-selected.food-week-day-with-food:after{background:#f8fafc;box-shadow:0 0 0 1px #fff3}.food-tracker-date-label{display:block;margin-top:1px;margin-left:7px;color:#cac4d0;font-size:12px;line-height:16px}.food-tracker-title .food-tracker-date-label{width:max-content;max-width:calc(100% - 12px);overflow:hidden;padding:1px 5px;border:0;border-radius:7px;background:transparent;font:inherit;font-size:12px;line-height:16px;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.food-tracker-title .food-tracker-date-label:hover{color:#fff;background:#ffffff14}.food-tracker-appbar>button,.food-date-button,.food-quantity-appbar>button{position:relative;display:grid;width:48px;height:48px;flex:0 0 48px;place-items:center;overflow:hidden;padding:0;border:0;border-radius:50%;background:transparent;color:#e6e1e5;cursor:pointer}.food-tracker-appbar>button:hover,.food-date-button:hover,.food-quantity-appbar>button:hover{background:#e6e1e514}.food-tracker-appbar>button.food-progress-button{width:42px;height:42px;flex-basis:42px;margin:0 3px;overflow:visible;border:0;color:#f8fafc}.food-progress-button>i{position:absolute;top:-2px;right:-1px;width:10px;height:10px;border:2px solid #1e293b;border-radius:50%;background:#fb7185;box-shadow:0 0 0 2px #fb71852e}.food-tracker-appbar>button.food-progress-button-due{border:1px solid #fb7185;color:#fecdd3;background:#fb71851a;animation:food-progress-attention 1.8s ease-in-out infinite}@keyframes food-progress-attention{0%,to{box-shadow:0 0 #fb718500}50%{box-shadow:0 0 0 5px #fb71851f}}.food-calendar-backdrop{position:fixed;inset:0;z-index:21;background:transparent}.food-date-calendar{position:absolute;top:calc(100% + 6px);right:8px;z-index:22;box-sizing:border-box;width:min(340px,calc(100vw - 16px));padding:14px;border:1px solid rgba(148,163,184,.35);border-radius:18px;background:#1e293b;color:#e6e1e5;box-shadow:0 12px 36px #0000007a}.food-date-calendar>header{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;margin-bottom:8px}.food-date-calendar>header strong{font-size:16px;text-align:center}.food-date-calendar>header button{display:grid;width:40px;height:40px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#e6e1e5;font:inherit;font-size:30px;cursor:pointer}.food-date-calendar>header button:last-child{justify-self:end}.food-date-calendar button:disabled{cursor:default;opacity:.3}.food-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.food-calendar-weekday{padding:5px 0 7px;color:#94a3b8;font-size:11px;font-weight:700;text-align:center}.food-calendar-grid>button{position:relative;display:grid;min-width:0;height:40px;place-items:center;padding:0 0 6px;border:0;border-radius:12px;background:transparent;color:#e6e1e5;font:inherit;cursor:pointer}.food-calendar-grid>button:hover{background:#d0bcff1a}.food-calendar-grid>button.food-calendar-today{box-shadow:inset 0 0 0 1px #d0bcff}.food-calendar-grid>button.food-calendar-selected{background:#6d28d9;color:#fff;box-shadow:none;font-weight:800}.food-calendar-grid>button.food-calendar-marked:after{position:absolute;bottom:5px;left:50%;width:4px;height:4px;border-radius:50%;content:"";background:#22c55e;transform:translate(-50%)}.food-calendar-grid>button.food-calendar-selected.food-calendar-marked:after{background:#bbf7d0}.food-calendar-empty{height:40px}.food-date-calendar>footer{display:flex;justify-content:flex-end;margin-top:8px}.food-date-calendar>footer button{min-height:36px;padding:0 12px;border:0;border-radius:18px;background:transparent;color:#d0bcff;font:inherit;font-weight:700;cursor:pointer}.food-tracker-content{padding-bottom:24px}.food-date-transition-next{animation:food-date-slide-next .22s cubic-bezier(.2,.75,.25,1) both}.food-date-transition-previous{animation:food-date-slide-previous .22s cubic-bezier(.2,.75,.25,1) both}@keyframes food-date-slide-next{0%{opacity:.72;transform:translate(28px)}to{opacity:1;transform:translate(0)}}@keyframes food-date-slide-previous{0%{opacity:.72;transform:translate(-28px)}to{opacity:1;transform:translate(0)}}.food-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:start;padding:16px 16px 10px}.food-summary>div{display:flex;min-width:0;flex-direction:column;align-items:flex-end}.food-summary span{color:#e6e1e5a6;font-size:22px;line-height:28px}.food-summary strong{max-width:100%;overflow:hidden;color:#e6e1e5;font-size:24px;font-weight:500;line-height:32px;text-overflow:ellipsis}.food-summary .food-summary-emphasized{font-weight:800}.food-meal-card{margin:8px 16px;overflow:hidden;border-radius:16px;background:#1e293b;color:#e6e1e5}.food-meal-heading{display:flex;min-height:63px;align-items:center;gap:12px;padding:9px 12px 9px 16px;-webkit-tap-highlight-color:transparent}.food-meal-heading-toggleable{cursor:pointer}.food-meal-icon{display:grid;width:32px;height:32px;flex:0 0 32px;place-items:center;color:#ffb300}.food-meal-icon svg{width:32px;height:32px}.food-meal-heading h2{min-width:0;flex:1;margin:0;overflow:hidden;font-size:24px;font-weight:700;line-height:32px;text-overflow:ellipsis;white-space:nowrap}.food-meal-calories{display:flex;min-width:72px;flex-direction:column;align-items:flex-end}.food-meal-calories strong{font-size:28px;font-weight:800;line-height:34px}.food-meal-calories span{font-size:14px}.food-meal-heading>button{display:grid;width:48px;height:48px;flex:0 0 48px;place-items:center;padding:0;border:0;border-radius:50%;outline:0;background:transparent;color:#d0bcff;cursor:pointer;-webkit-tap-highlight-color:transparent}.food-meal-heading>button svg{width:40px;height:40px}.food-meal-heading>button:hover{background:#d0bcff14}.food-divider{height:1px;background:#cac4d038}.food-meal-heading+.food-divider{margin-left:60px}.food-meal-macro-row{display:flex;align-items:center;outline:0;cursor:pointer;-webkit-tap-highlight-color:transparent}.food-meal-macro-row:hover{background:#e6e1e509}.food-meal-macro-row:focus-visible{box-shadow:inset 0 0 0 2px #d0bcffa6}.food-meal-heading,.food-meal-card-expanded .food-meal-macro-row,.food-meal-card-expanded .food-meal-macro-row:hover{background:#1e293b}.food-meal-card-collapsed .food-meal-macro-row{background:#18243a}.food-meal-macro-row .food-macro-values{min-width:0;flex:1}.food-meal-toggle-icon{display:grid;width:48px;height:48px;flex:0 0 48px;place-items:center;margin-right:8px;color:#a6a1a9}.food-meal-toggle-icon svg{width:22px;height:22px}.food-macro-values{display:grid;min-height:47px;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;padding:10px 16px}.food-macro-values span{color:#b9b4bc;font-size:20px;line-height:28px;text-align:right}.food-item-swipe{position:relative;overflow:hidden}.food-item-delete-bg{position:absolute;inset:0;display:flex;align-items:center;justify-content:flex-end;padding-right:24px;background:#b3261e;color:#f9dedc}.food-item-row{position:relative;padding:12px 16px 12px 64px;background:#172033;cursor:pointer;touch-action:pan-y;transition:transform .16s ease;-webkit-tap-highlight-color:transparent}.food-item-swipe+.food-item-swipe .food-item-row:before{position:absolute;top:0;right:16px;left:64px;height:1px;content:"";background:#94a3b824}.food-item-main{display:flex;align-items:flex-start}.food-item-main>div{min-width:0;flex:1}.food-item-main h3{display:-webkit-box;margin:0;overflow:hidden;color:#e6e1e5;font-size:22px;font-weight:400;line-height:28px;overflow-wrap:break-word;-webkit-box-orient:vertical;-webkit-line-clamp:3}.food-item-main span{display:block;margin-top:3px;color:#a6a1a9;font-size:16px;line-height:24px}.food-item-main>strong{margin-left:12px;color:#b9b4bc;font-size:24px;font-weight:700;line-height:32px}.food-item-main>svg{width:32px;height:32px;margin-left:12px;color:#a6a1a9}.food-item-macros{min-height:33px;grid-template-columns:repeat(4,minmax(0,1fr)) 44px;padding:10px 0 0}.food-item-macros span{font-size:20px}.food-daily-metrics{margin:30px 16px 8px}.food-daily-metrics>h2{margin:0 2px 10px;color:#a5d8ff;font-size:15px;font-weight:700;letter-spacing:.02em;line-height:20px}.food-daily-metrics-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:hidden;border:1px solid rgba(56,189,248,.28);border-radius:16px;background:#132033}.food-daily-metrics-card-three{grid-template-columns:repeat(3,minmax(0,1fr))}.food-daily-metrics-card>button{display:grid;min-width:0;min-height:108px;grid-template-columns:38px minmax(0,1fr);align-items:start;gap:10px;padding:15px 13px;border:0;background:transparent;color:#e6e1e5;font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent}.food-daily-metrics-card-three>button{grid-template-columns:1fr;justify-items:center;gap:5px;padding:12px 6px;text-align:center}.food-daily-metrics-card-three .food-daily-metric-copy{width:100%;align-items:center}.food-daily-metrics-card-three .food-daily-metric-copy small{font-size:11px}.food-daily-metrics-card-three .food-daily-metric-copy strong{max-width:100%;font-size:15px;line-height:20px}.food-daily-metrics-card-three .food-daily-metric-copy strong.food-daily-metric-empty{font-size:13px}.food-daily-metrics-card-three .food-steps-progress{width:100%}.food-daily-metrics-card>button+button{border-left:1px solid rgba(148,163,184,.18)}.food-daily-metrics-card>button:hover{background:#38bdf80f}.food-daily-metric-icon{display:grid;width:36px;height:36px;place-items:center;border-radius:50%;background:#38bdf81f;color:#38bdf8}.food-daily-metric-icon svg{width:22px;height:22px}.food-daily-metric-copy{display:flex;min-width:0;flex-direction:column}.food-daily-metric-copy small{color:#a5d8ff;font-size:13px;line-height:18px}.food-daily-metric-copy strong{margin-top:2px;overflow:hidden;color:#f8fafc;font-size:19px;line-height:25px;text-overflow:ellipsis;white-space:nowrap}.food-daily-metric-copy strong.food-daily-metric-empty{color:#cbd5e1;font-size:15px;font-weight:500}.food-daily-metric-copy em{margin-top:3px;color:#7dd3fc;font-size:12px;font-style:normal;line-height:16px}.food-steps-progress{height:3px;margin-top:7px;overflow:hidden;border-radius:2px;background:#94a3b840}.food-steps-progress>i{display:block;height:100%;border-radius:inherit;background:#38bdf8}.food-daily-metrics-card>button.food-daily-metric-goal-exceeded:hover{background:#fbbf240f}.food-daily-metric-goal-exceeded .food-daily-metric-icon{background:#fbbf2421;color:#fbbf24}.food-daily-metric-goal-exceeded .food-daily-metric-copy small,.food-daily-metric-goal-exceeded .food-daily-metric-copy em{color:#fbbf24}.food-daily-metric-goal-exceeded .food-steps-progress>i{background:#fbbf24}.food-daily-training-button .food-daily-metric-icon{background:#f472b621;color:#f9a8d4}.food-daily-training-button .food-daily-metric-copy small,.food-daily-training-button .food-daily-metric-copy em{color:#f9a8d4}.food-daily-metrics-card-three .food-daily-training-button .food-daily-metric-copy{justify-content:center}.food-daily-metrics-card-three>button.food-daily-training-button-rated{background:#22c55e12}.food-daily-metrics-card-three>button.food-daily-training-button-rated:hover{background:#22c55e1f}.food-daily-training-button-rated .food-daily-metric-icon{background:#22c55e29;color:#86efac}.food-daily-training-button-rated .food-daily-metric-copy small,.food-daily-training-button-rated .food-daily-metric-copy strong,.food-daily-training-button-rated .food-daily-metric-copy em{color:#86efac}.food-day-completion-entry{margin:12px 16px 30px}.food-day-completion-entry>button{display:grid;width:100%;min-height:88px;grid-template-columns:42px minmax(0,1fr) 24px;align-items:center;gap:12px;padding:14px;border:1px solid rgba(56,189,248,.28);border-radius:16px;background:#132033;color:#e6e1e5;font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent}.food-day-completion-entry>button:hover{background:#38bdf814}.food-day-completion-entry>button .food-daily-metric-icon{color:#fde68a;background:#fbbf2424;font-size:22px}.food-day-completion-entry>button.food-day-completion-entry-done{border-color:#4ade8057;background:#10281f}.food-day-completion-entry>button.food-day-completion-entry-done .food-daily-metric-icon{color:#bbf7d0;background:#22c55e29}.food-day-completion-entry .food-daily-metric-copy{display:grid;gap:3px}.food-day-completion-entry .food-daily-metric-copy small{color:#94a3b8;font-size:12px}.food-day-completion-entry .food-daily-metric-copy strong{color:#f8fafc;font-size:18px;line-height:23px}.food-day-completion-entry>button:not(.food-day-completion-entry-done) .food-daily-metric-copy>strong{color:#fde68a}.food-day-completion-entry .food-daily-metric-copy em{color:#7dd3fc;font-size:12px;font-style:normal}.food-grocery-entry{display:grid;gap:8px;margin:22px 16px 8px}.food-grocery-entry>button:first-child{display:grid;min-height:82px;grid-template-columns:38px minmax(0,1fr) 24px;align-items:center;gap:12px;padding:14px 16px;border:1px solid rgba(52,211,153,.28);border-radius:16px;background:#132033;color:#e6e1e5;font:inherit;text-align:left;cursor:pointer}.food-grocery-entry>button:first-child:hover{background:#34d39914}.food-grocery-entry>button:first-child:disabled{opacity:.65;cursor:wait}.food-grocery-entry .food-daily-metric-icon{background:#34d39921;color:#6ee7b7}.food-grocery-entry .food-daily-metric-copy small,.food-grocery-entry .food-daily-metric-copy em{color:#6ee7b7}.food-grocery-entry .food-daily-metric-copy strong{margin-top:0;font-size:17px}.food-grocery-entry>button:first-child>svg{width:22px;height:22px;color:#64748b}.food-grocery-open-existing{justify-self:end;padding:4px 2px;border:0;background:transparent;color:#7dd3fc;font:inherit;font-size:12px;cursor:pointer}.food-grocery-page{min-height:100dvh;background:#0f172a;color:#f8fafc}.food-grocery-appbar{position:sticky;top:0;z-index:20;display:grid;min-height:72px;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:8px;padding:max(8px,env(safe-area-inset-top)) 10px 8px;border-bottom:1px solid rgba(148,163,184,.14);background:#0f172af5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.food-grocery-appbar>button{display:grid;width:48px;height:48px;place-items:center;border:0;border-radius:50%;background:transparent;color:#e2e8f0;cursor:pointer}.food-grocery-appbar>button:hover{background:#94a3b81f}.food-grocery-appbar>button:disabled{opacity:.3}.food-grocery-appbar svg{width:24px;height:24px}.food-grocery-appbar div{min-width:0}.food-grocery-appbar small{color:#94a3b8;font-size:11px}.food-grocery-appbar h1{margin:1px 0 0;font-size:20px;line-height:25px}.food-grocery-page>main{display:grid;gap:14px;padding:18px 16px calc(32px + env(safe-area-inset-bottom))}.food-grocery-summary{display:grid;grid-template-columns:auto minmax(80px,1fr) auto;align-items:center;gap:10px;color:#cbd5e1;font-size:12px}.food-grocery-summary>div{height:5px;overflow:hidden;border-radius:999px;background:#25344a}.food-grocery-summary>div i{display:block;height:100%;border-radius:inherit;background:#34d399;transition:width .25s ease}.food-grocery-summary small{color:#94a3b8}.food-grocery-skipped{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;padding:12px 14px;border:1px solid rgba(251,191,36,.24);border-radius:14px;background:#78350f29;color:#fde68a}.food-grocery-skipped>svg{width:22px;height:22px;margin-top:1px}.food-grocery-skipped strong{font-size:13px}.food-grocery-skipped p{margin:2px 0;color:#fef3c7;font-size:12px}.food-grocery-skipped small{color:#d6b96d;font-size:11px;line-height:16px}.food-grocery-error{padding:11px 13px;border-radius:12px;background:#7f1d1d59;color:#fecaca;font-size:13px}.food-grocery-items{overflow:hidden;border:1px solid rgba(148,163,184,.18);border-radius:16px;background:#132033}.food-grocery-item{display:grid;min-height:68px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px 14px;cursor:pointer;-webkit-tap-highlight-color:transparent}.food-grocery-item+.food-grocery-item{border-top:1px solid rgba(148,163,184,.12)}.food-grocery-item input{position:absolute;opacity:0;pointer-events:none}.food-grocery-checkbox{display:grid;width:25px;height:25px;place-items:center;border:2px solid #64748b;border-radius:50%;color:transparent;font-size:15px;font-weight:800}.food-grocery-item input:checked+.food-grocery-checkbox{border-color:#34d399;background:#34d399;color:#062b20}.food-grocery-item-copy{display:flex;min-width:0;flex-direction:column}.food-grocery-item-copy strong{overflow:hidden;font-size:15px;line-height:20px;text-overflow:ellipsis;white-space:nowrap}.food-grocery-item-copy small{overflow:hidden;color:#94a3b8;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.food-grocery-quantity{max-width:112px;color:#a7f3d0;font-size:13px;line-height:18px;text-align:right}.food-grocery-item.is-checked .food-grocery-item-copy,.food-grocery-item.is-checked .food-grocery-quantity{opacity:.48;text-decoration:line-through}.food-grocery-empty{display:grid;justify-items:center;padding:60px 24px;color:#94a3b8;text-align:center}.food-grocery-empty>svg,.food-grocery-empty .food-product-ingredient-icon{width:52px;height:52px;margin-bottom:14px;opacity:.55}.food-grocery-empty h2{margin:0;color:#e2e8f0;font-size:19px}.food-grocery-empty p{max-width:280px;margin:8px 0 0;font-size:13px;line-height:19px}.food-grocery-clear-confirm{color:#fca5a5!important}.food-day-completion-stars{display:flex;min-height:28px;align-items:center;gap:5px;font-size:25px;line-height:1}.food-day-completion-stars i{font-style:normal}.food-day-completion-stars strong{color:#cbd5e1;font-size:17px}.food-day-completion-star-gold{color:#fbbf24;filter:drop-shadow(0 0 5px rgba(251,191,36,.55))}.food-day-completion-star-regular{color:#cbd5e1;filter:drop-shadow(0 0 4px rgba(203,213,225,.3))}.food-day-completion-star-none{color:#64748b;filter:none}.food-day-completion-arrow{color:#7dd3fc;font-size:32px;font-weight:300;line-height:1}.food-day-completion-backdrop{position:fixed;inset:0;z-index:140;display:flex;align-items:flex-end;justify-content:center;background:#000000b3;animation:food-day-backdrop-in .2s ease-out both}.food-day-completion-sheet{box-sizing:border-box;width:min(560px,100%);max-height:calc(100dvh - 12px);overflow-y:auto;padding:8px 18px max(18px,env(safe-area-inset-bottom));border:1px solid rgba(148,163,184,.28);border-bottom:0;border-radius:26px 26px 0 0;background:radial-gradient(circle at 50% -10%,rgba(56,189,248,.16),transparent 34%),#172235;color:#f8fafc;box-shadow:0 -16px 46px #0000007a;animation:food-day-sheet-in .32s cubic-bezier(.2,.75,.2,1) both}.food-day-completion-sheet>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:4px 2px 15px}.food-day-completion-sheet>header>div{display:grid;gap:2px}.food-day-completion-sheet>header span{color:#7dd3fc;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.food-day-completion-sheet>header h2{margin:0;font-size:27px;line-height:33px}.food-day-completion-sheet>header small{color:#94a3b8;font-size:13px}.food-day-completion-sheet>header button{display:grid;width:44px;height:44px;flex:0 0 44px;place-items:center;padding:0;border:0;border-radius:50%;background:#94a3b81a;color:#cbd5e1;font:inherit;font-size:30px;line-height:1;cursor:pointer}.food-diet-timeline{display:none;position:relative;height:22px;margin:-4px 3px 14px;padding-top:8px}.food-diet-timeline-track{position:relative;display:flex;height:10px;overflow:hidden;border:1px solid rgba(226,232,240,.2);border-radius:99px;background:#334155;box-shadow:inset 0 1px 2px #00000047}.food-diet-timeline-track>i{display:block;height:100%}.food-diet-timeline-calibration{background:#8b5cf6}.food-diet-timeline-deficit{background:#0ea5e9}.food-diet-timeline-exit{background:#fbbf24}.food-diet-timeline-future{position:absolute;inset:0 0 0 auto;background:#0f172aad}.food-diet-timeline-track>span{position:absolute;top:0;bottom:0;width:1px;background:#0f172a7a;transform:translate(-.5px)}.food-diet-timeline>em{position:absolute;top:3px;width:2px;height:18px;border-radius:2px;background:#f8fafc;box-shadow:0 0 6px #ffffffbf;transform:translate(-1px)}.food-diet-timeline>em:before{position:absolute;top:-3px;left:50%;width:7px;height:7px;border-radius:2px;background:#f8fafc;content:"";transform:translate(-50%) rotate(45deg)}.food-day-completion-list{display:grid;gap:10px}.food-day-completion-row{display:grid;gap:11px;padding:14px 15px;border:1px solid rgba(148,163,184,.18);border-radius:15px;background:#0f172ab8;opacity:0;transform:translateY(12px);animation:food-day-row-in .3s ease-out forwards}.food-day-completion-row-heading{display:grid;grid-template-columns:minmax(0,1fr) 42px;align-items:center;gap:12px}.food-day-completion-row-heading>div{min-width:0;display:grid;gap:3px}.food-day-completion-row-heading span:first-child{color:#94a3b8;font-size:12px;font-weight:700}.food-day-completion-row-heading strong{overflow:hidden;color:#f8fafc;font-size:16px;text-overflow:ellipsis;white-space:nowrap}.food-day-completion-progress{position:relative;height:8px;overflow:hidden;border-radius:99px;background:#334155}.food-day-completion-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0ea5e9,#38bdf8,#4ade80);transform:scaleX(0);transform-origin:left center;animation:food-day-progress-fill .65s cubic-bezier(.22,.8,.25,1) forwards}.food-day-completion-progress-overflow i{animation-timing-function:linear}.food-day-completion-progress b{position:absolute;inset:0 auto 0 0;display:block;border-radius:inherit;background:linear-gradient(90deg,#f59e0b,#fbbf24);box-shadow:1px 0 5px #fbbf24a6;transform:scaleX(0);transform-origin:left center;animation:food-day-progress-fill .55s cubic-bezier(.25,.8,.45,1) forwards}.food-day-rating{display:grid;width:42px;height:42px;place-items:center;opacity:0;font-size:34px;line-height:1;transform:scale(.2) rotate(-24deg);animation:food-day-rating-in .38s cubic-bezier(.2,1.55,.4,1) forwards}.food-day-rating-gold{color:#fbbf24;filter:drop-shadow(0 0 8px rgba(251,191,36,.7));text-shadow:0 1px 0 #fff3b0}.food-day-rating-regular{color:#cbd5e1;filter:drop-shadow(0 0 5px rgba(203,213,225,.35))}.food-day-rating-none{color:#64748b;font-size:34px;font-weight:400}.food-day-completion-row:nth-child(1){animation-delay:.08s}.food-day-completion-row:nth-child(1) .food-day-completion-progress i{animation-delay:.28s}.food-day-completion-row:nth-child(1) .food-day-completion-progress b{animation-delay:.93s}.food-day-completion-row:nth-child(1) .food-day-rating{animation-delay:1.62s}.food-day-completion-row:nth-child(2){animation-delay:.6s}.food-day-completion-row:nth-child(2) .food-day-completion-progress i{animation-delay:.8s}.food-day-completion-row:nth-child(2) .food-day-completion-progress b{animation-delay:1.45s}.food-day-completion-row:nth-child(2) .food-day-rating{animation-delay:2.14s}.food-day-completion-row:nth-child(3){animation-delay:1.12s}.food-day-completion-row:nth-child(3) .food-day-completion-progress i{animation-delay:1.32s}.food-day-completion-row:nth-child(3) .food-day-completion-progress b{animation-delay:1.97s}.food-day-completion-row:nth-child(3) .food-day-rating{animation-delay:2.66s}.food-day-completion-row:nth-child(4){animation-delay:1.64s}.food-day-completion-row:nth-child(4) .food-day-completion-progress i{animation-delay:1.84s}.food-day-completion-row:nth-child(4) .food-day-completion-progress b{animation-delay:2.49s}.food-day-completion-row:nth-child(4) .food-day-rating{animation-delay:3.18s}.food-day-completion-total{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:12px;padding:15px 16px;border:1px solid rgba(251,191,36,.25);border-radius:16px;background:linear-gradient(135deg,#fbbf241f,#0ea5e914);opacity:0;transform:translateY(12px);animation:food-day-row-in .35s ease-out 3.55s forwards}.food-day-completion-total>div{display:grid;gap:2px}.food-day-completion-total>div>span{color:#fde68a;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.food-day-completion-total>div>strong{color:#fff;font-size:18px;line-height:24px}.food-day-completion-total>div>strong small{color:#cbd5e1;font-size:15px;font-weight:700}.food-day-completion-total>p{max-width:180px;margin:0;color:#f8fafc;font-size:15px;font-weight:750;line-height:20px;text-align:right}.food-day-completion-tip{display:grid;margin-top:10px;padding:14px 15px;grid-template-columns:34px minmax(0,1fr);gap:11px;border:1px solid rgba(125,211,252,.23);border-radius:16px;background:#0ea5e914;opacity:0;transform:translateY(12px);animation:food-day-row-in .35s ease-out 3.92s forwards}.food-day-completion-tip>span{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#fbbf2424;color:#fde68a;font-size:20px}.food-day-completion-tip>div{display:grid;gap:4px}.food-day-completion-tip strong{color:#7dd3fc;font-size:13px}.food-day-completion-tip p{margin:0;color:#dbeafe;font-size:13px;line-height:18px}.food-day-completion-action{min-height:66px;display:grid;place-items:center;padding-top:13px}.food-day-completion-action>span{color:#94a3b8;font-size:13px;animation:food-day-status-pulse .8s ease-in-out infinite alternate}.food-day-completion-action>button{width:100%;min-height:52px;border:0;border-radius:14px;background:linear-gradient(135deg,#0284c7,#0ea5e9);color:#fff;box-shadow:0 6px 20px #0ea5e947;font:inherit;font-size:17px;font-weight:800;cursor:pointer;animation:food-day-finish-in .35s cubic-bezier(.2,1.45,.4,1) both}@keyframes food-day-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes food-day-sheet-in{0%{transform:translateY(32px)}to{transform:none}}@keyframes food-day-row-in{to{opacity:1;transform:none}}@keyframes food-day-progress-fill{to{transform:scaleX(1)}}@keyframes food-day-rating-in{70%{opacity:1;transform:scale(1.15) rotate(5deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes food-day-finish-in{0%{opacity:0;transform:translateY(9px) scale(.96)}to{opacity:1;transform:none}}@keyframes food-day-status-pulse{0%{opacity:.45}to{opacity:1}}@media(prefers-reduced-motion:reduce){.food-day-completion-backdrop,.food-day-completion-sheet,.food-day-completion-row,.food-day-completion-progress i,.food-day-completion-progress b,.food-day-rating,.food-day-completion-total,.food-day-completion-tip,.food-day-completion-action>button{animation:none;opacity:1;transform:none}.food-day-completion-action>span{animation:none}}.food-metric-sheet-backdrop{position:fixed;inset:0;z-index:120;display:flex;align-items:flex-end;justify-content:center;background:#00000094}.food-metric-sheet{box-sizing:border-box;width:min(520px,100%);min-height:min(310px,calc(100dvh - 24px));padding:8px 18px max(18px,env(safe-area-inset-bottom));border:1px solid rgba(148,163,184,.24);border-bottom:0;border-radius:24px 24px 0 0;background:#1e293b;color:#f8fafc;box-shadow:0 -12px 36px #00000057}.food-metric-sheet-handle{width:42px;height:4px;margin:0 auto 8px;border-radius:2px;background:#64748b}.food-metric-sheet>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.food-metric-sheet>header h2{margin:0;font-size:22px;line-height:28px}.food-metric-sheet>header span{color:#94a3b8;font-size:13px;line-height:18px}.food-metric-sheet>header button{display:grid;width:44px;height:44px;flex:0 0 44px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#cbd5e1;font:inherit;font-size:30px;line-height:1;cursor:pointer}.food-metric-form{margin-top:14px}.food-metric-input-row{display:grid;grid-template-columns:minmax(0,1fr) 108px;gap:8px}.main-surface-food-tracker .food-metric-input-row input{box-sizing:border-box;width:100%;height:54px;padding:0 16px;border:1px solid #64748b;border-radius:12px;outline:0;background:#0f172a;color:#f8fafc;font:inherit;font-size:21px}.main-surface-food-tracker .food-metric-input-row input:focus{border-color:#38bdf8;box-shadow:inset 0 0 0 1px #38bdf8}.food-metric-input-row>button{min-height:54px;padding:0 12px;border:0;border-radius:12px;background:#0ea5e9;color:#fff;font:inherit;font-size:14px;font-weight:700;cursor:pointer}.food-metric-error{margin:8px 0 0;color:#fca5a5;font-size:13px}.food-metric-sheet .food-metric-delete{min-height:42px;margin-top:12px;padding:0 4px;border:0;background:transparent;color:#fca5a5;font:inherit;font-size:14px;font-weight:700;cursor:pointer}.food-training-rating-sheet{min-height:min(300px,calc(100dvh - 24px))}.food-training-rating-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:22px}.food-training-rating-options>button{display:grid;min-width:0;min-height:0;aspect-ratio:1;place-items:center;align-content:center;padding:5px;border:1px solid rgba(148,163,184,.24);border-radius:15px;background:#0f172a;color:#cbd5e1;font:inherit;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,transform .12s ease}.food-training-rating-options>button:active{transform:scale(.96)}.food-training-rating-options>button>span{font-size:clamp(25px,8vw,36px);line-height:1}.food-training-rating-options>button.is-active{border-color:currentColor;box-shadow:inset 0 0 0 1px currentColor}.food-training-rating-1{color:#cbd5e1!important;background:#64748b24!important}.food-training-rating-2{color:#fdba74!important;background:#f973161f!important}.food-training-rating-3{color:#fde047!important;background:#eab3081f!important}.food-training-rating-4{color:#bef264!important;background:#84cc161f!important}.food-training-rating-5{color:#86efac!important;background:#22c55e24!important}.food-product-search-page{min-height:100vh;background:#0f172a;color:#e6e1e5}.food-product-search-page video{display:block;width:100%;max-height:420px;background:#111}.food-camera-viewport{position:relative;overflow:hidden;background:#111;cursor:pointer;-webkit-tap-highlight-color:transparent}.food-camera-scan-frame{position:absolute;top:50%;left:50%;width:min(90%,620px);height:42%;border:2px solid rgba(255,255,255,.82);border-radius:14px;box-shadow:0 0 0 999px #0000002e;transform:translate(-50%,-50%);pointer-events:none}.food-camera-scan-frame:before{position:absolute;top:50%;right:10%;left:10%;height:2px;content:"";background:#d0bcffcc;box-shadow:0 0 8px #d0bcffbf;transform:translateY(-50%)}.food-camera-recognizing .food-camera-scan-frame{border-color:#9ee7df;animation:food-camera-scan-pulse .55s ease-in-out infinite alternate}@keyframes food-camera-scan-pulse{0%{opacity:.72;transform:translate(-50%,-50%) scale(.985)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.food-camera-message{margin:10px 16px 0;padding:12px 14px;border-radius:10px;text-align:center;font-weight:600}.food-camera-message-loading{display:flex;align-items:center;justify-content:center;gap:9px;background:#153b3a;color:#9ee7df}.food-camera-loader{width:18px;height:18px;flex:0 0 18px;border:2px solid rgba(158,231,223,.3);border-top-color:#9ee7df;border-radius:50%;animation:food-spin .7s linear infinite}.food-camera-message-error{background:#4a2025;color:#ffb4ab;animation:food-camera-error-in .28s ease-out both}.food-camera-enrichment{min-height:82px;flex-direction:column;gap:12px;line-height:1.4}.food-camera-message-actions{display:flex;justify-content:center;gap:10px}.food-camera-message-actions button{min-height:40px;padding:8px 16px;border:1px solid currentColor;border-radius:10px;background:transparent;color:inherit;font:inherit;cursor:pointer}.food-camera-message-actions button:first-child{border-color:#9ee7df;background:#153b3a;color:#9ee7df}.food-enrichment-candidates{display:grid;width:100%;gap:10px;text-align:left}.food-enrichment-candidates article{display:grid;gap:8px;padding:12px;border:1px solid #526176;border-radius:12px;background:#172235;color:#f4f6fa}.food-enrichment-candidates article strong{font-size:14px;line-height:1.35}.food-enrichment-candidates article small{color:#bdc7d6;font-size:12px}.food-enrichment-candidate-macros{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;color:#dce5f2;font-size:12px;text-align:center}.food-enrichment-candidate-actions{display:flex;flex-wrap:wrap;gap:8px}.food-enrichment-candidate-actions button,.food-enrichment-candidate-actions a{display:inline-flex;min-height:36px;align-items:center;justify-content:center;padding:7px 12px;border:1px solid #6e8099;border-radius:9px;background:transparent;color:#dce5f2;font:inherit;font-size:13px;text-decoration:none;cursor:pointer}.food-enrichment-candidate-actions button{border-color:#22b866;background:#15944f;color:#fff;font-weight:700}@keyframes food-camera-error-in{0%{opacity:0;transform:translateY(-7px) scale(.98)}65%{opacity:1;transform:translateY(2px) scale(1)}to{opacity:1;transform:translateY(0) scale(1)}}.food-search-appbar{position:sticky;top:0;z-index:20;display:flex;min-height:72px;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid rgba(202,196,208,.14);background:#1e293b;color:#e6e1e5}.food-search-appbar>button{display:grid;width:48px;height:48px;flex:0 0 48px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#e6e1e5;cursor:pointer}.food-search-appbar>button:hover{background:#e6e1e514}.food-search-appbar>h1{min-width:0;flex:1;margin:0;font-size:21px}.food-search-appbar>.food-product-search-field{box-sizing:border-box;display:grid;width:auto;height:54px;min-width:0;flex:1;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:10px;padding:0 17px;border:1px solid #64748b;border-radius:30px;background:#0f172a}.food-search-appbar>.food-product-search-field:focus-within{border-color:#d0bcff;box-shadow:inset 0 0 0 1px #d0bcff}.food-search-appbar .food-product-search-field>svg{position:static;width:24px;height:24px;color:#a6a1a9;transform:none;pointer-events:none}.main-surface-food-tracker .food-search-appbar .food-product-search-field>input,.main-surface-food-tracker .food-search-appbar .food-product-search-field>input:focus{box-sizing:border-box;width:100%;height:100%;min-width:0;min-height:0;padding:0;border:0;border-radius:0;outline:0;background:transparent;box-shadow:none;color:#e6e1e5;font:inherit;font-size:16px}.main-surface-food-tracker .food-search-appbar .food-product-search-field>input::placeholder{color:#a6a1a9;opacity:1}.food-product-search-page main>h2{margin:0;padding:16px 20px 4px;color:#b9b4bc;font-size:16px;font-weight:500}.food-product-scopes{display:flex;gap:8px;padding:10px 16px 2px;background:#0f172a}.food-product-scopes button{min-height:38px;padding:0 15px;border:1px solid #64748b;border-radius:20px;background:transparent;color:#cbd5e1;font:inherit;cursor:pointer}.food-product-scopes button.active{border-color:#d0bcff;background:#4c1d95;color:#fff}.food-product-list{padding:0 0 16px}.food-product-list{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.food-product-list>button{display:block;width:calc(100% - 32px);min-height:80px;margin:8px 16px;padding:12px 16px;border:1px solid rgba(202,196,208,.1);border-radius:12px;background:#1e293b;color:#e6e1e5;box-shadow:0 2px 5px #00000047;font:inherit;text-align:left;cursor:pointer}.food-product-list>button>div{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:10px}.food-product-list>button>div:first-child>span{flex:0 0 auto;padding:2px 6px;border-radius:5px;background:#475569;color:#f8fafc;font-size:12px}.food-product-list strong{min-width:0;flex:1;display:-webkit-box;overflow:hidden;font-size:16px;line-height:21px;overflow-wrap:break-word;-webkit-box-orient:vertical;-webkit-line-clamp:3}.food-product-list>button>div:last-child{margin-top:4px}.food-product-list em{color:#b9b4bc;font-size:13px}.food-product-list small{color:#a6a1a9;font-size:12px;text-align:right}.food-product-result{display:grid;grid-template-columns:minmax(0,1fr) auto;width:calc(100% - 32px);min-height:80px;margin:8px 16px;overflow:hidden;border:1px solid rgba(202,196,208,.1);border-radius:12px;background:#1e293b;box-shadow:0 2px 5px #00000047}.food-product-result>button{border:0;background:transparent;color:#e6e1e5;font:inherit;text-align:left;cursor:pointer}.food-product-result>button:first-child{display:flex;min-width:0;flex-direction:column;justify-content:center;gap:7px;padding:12px 16px}.food-product-result>button:first-child>div{display:flex;min-width:0;align-items:center;gap:8px}.food-product-result>button:first-child span{flex:0 0 auto;padding:2px 6px;border-radius:5px;background:#475569;color:#f8fafc;font-size:12px}.food-product-result>button:first-child em{padding:2px 7px;border-radius:10px;background:#14532d;color:#dcfce7;font-size:11px;font-style:normal;white-space:nowrap}.food-product-result .food-product-edit{min-width:86px;padding:8px 12px;border:0;border-left:1px solid rgba(202,196,208,.14);background:#334155;color:#d0bcff;font:inherit;font-size:13px;font-weight:600;cursor:pointer}.food-recent-swipe{position:relative;width:calc(100% - 32px);min-height:80px;margin:8px 16px;overflow:hidden;border-radius:12px;background:#8f2530}.food-recent-delete-bg{position:absolute;inset:0 0 0 auto;display:flex;width:112px;align-items:center;justify-content:center;gap:6px;color:#fff;font-size:13px;font-weight:700}.food-recent-delete-bg svg{width:20px;height:20px;fill:currentColor}.food-recent-swipe>button{position:relative;display:block;width:100%;min-height:80px;padding:12px 16px;border:1px solid rgba(202,196,208,.1);border-radius:12px;background:#1e293b;color:#e6e1e5;box-shadow:0 2px 5px #00000047;font:inherit;text-align:left;touch-action:pan-y;transition:transform .16s ease;cursor:pointer;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.food-recent-swipe>button>div{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:10px}.food-recent-swipe>button>div:last-child{justify-content:flex-end;margin-top:4px}.food-recent-swipe strong{min-width:0;flex:1;display:-webkit-box;overflow:hidden;font-size:16px;line-height:21px;overflow-wrap:break-word;-webkit-box-orient:vertical;-webkit-line-clamp:3}.food-recent-swipe small{color:#a6a1a9;font-size:12px;text-align:right}.food-product-search-title{display:flex;min-width:0;flex:1;flex-direction:column;align-items:flex-start;gap:2px}.food-product-search-title>strong{min-width:0;width:100%;flex:0 1 auto}.food-product-search-title>small{width:100%;overflow:hidden;color:#7f8da3;font-size:12px;font-weight:500;line-height:16px;text-align:left;text-overflow:ellipsis;white-space:nowrap}.food-recent-swipe-selected,.food-catalog-result-selected{box-shadow:inset 0 0 0 1px #22c55e}.food-batch-selected{display:inline-flex;flex:0 0 auto;align-items:center;gap:8px;margin-left:auto}.food-batch-selected>small{color:#bbf7d0;font-size:13px;font-style:normal;white-space:nowrap}.food-batch-selected>i{display:grid;width:28px;height:28px;flex:0 0 28px;place-items:center;border-radius:50%;background:#16a34a;color:#fff;font-size:17px;font-style:normal;font-weight:800}.food-batch-selected[role=checkbox]{cursor:pointer}.food-batch-selected-off>small{color:#a6a1a9}.food-batch-selected-off>i{box-sizing:border-box;border:2px solid #94a3b8;background:transparent}.food-catalog-batch-active main{padding-bottom:92px}.food-batch-add-button{position:fixed;z-index:30;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));left:16px;width:min(520px,calc(100% - 32px));min-height:54px;margin:auto;border:0;border-radius:14px;background:#16a34a;color:#fff;box-shadow:0 6px 22px #0006;font:inherit;font-size:17px;font-weight:800;cursor:pointer}.food-batch-add-button:hover{background:#15803d}.food-search-state,.food-spinner{display:grid;min-height:calc(100vh - 72px);place-items:center;padding:24px;text-align:center}.food-spinner>span,.food-button-spinner{width:36px;height:36px;border:4px solid rgba(208,188,255,.22);border-top-color:#d0bcff;border-radius:50%;animation:food-spin .8s linear infinite}.food-scanner-appbar{align-items:stretch}.food-scanner-appbar-content{display:flex;min-width:0;flex:1;flex-direction:column;justify-content:center;gap:4px}.food-scanner-appbar-content label{display:flex;min-width:0;align-items:center;gap:8px;color:#cac4d0;font-size:12px}.food-scanner-appbar-content select{min-width:0;min-height:38px;flex:1;padding:6px 10px;border:1px solid #64748b;border-radius:9px;background:#0f172a;color:#e6e1e5;font:inherit;font-size:13px}.food-scanner-appbar-content small{color:#a6a1a9;font-size:11px;line-height:14px}@keyframes food-spin{to{transform:rotate(360deg)}}.food-quantity-appbar{position:static;min-height:56px;padding:4px 8px;background:#1e293b}.food-quantity-appbar>strong{min-width:0;overflow:hidden;font-size:18px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.food-quantity-product{padding:18px 16px 20px;background:#1e293b}.food-quantity-product span{display:block;margin-bottom:4px;color:#a6a1a9;font-size:17px;font-weight:600}.food-quantity-product h1{margin:0;color:#f8fafc;font-size:25px;line-height:32px}.food-quantity-page>form{display:flex;flex-direction:column;align-items:stretch;padding:14px 14px 24px}.food-duck-ai{margin:0 0 14px;padding:12px;border:1px solid rgba(148,163,184,.34);border-radius:12px;background:#1e293b}.food-duck-ai>p{margin:0 0 10px;color:#cbd5e1;font-size:14px}.food-duck-ai button{min-height:42px;padding:0 16px;border:0;border-radius:10px;background:#334155;color:#f8fafc;font:inherit;font-size:14px;font-weight:600;cursor:pointer}.food-duck-ai button:disabled{opacity:.45;cursor:default}.food-weight-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(64px,112px);gap:8px}.main-surface-food-tracker .food-weight-row input{height:54px;padding:0 18px;border:1px solid #64748b;border-radius:10px;outline:0;background:#1e293b;color:#f8fafc;font:inherit;font-size:20px}.main-surface-food-tracker .food-weight-row input:focus{border:2px solid #d0bcff;padding:0 17px}.food-weight-row>span{display:grid;height:54px;place-items:center;border:1px solid #64748b;border-radius:10px;background:#1e293b;color:#e6e1e5;font-size:16px}.main-surface-food-tracker .food-weight-row>select{box-sizing:border-box;min-width:0;height:54px;padding:0 30px 0 12px;overflow:hidden;border:1px solid #64748b;border-radius:10px;outline:0;background:#1e293b;color:#e6e1e5;color-scheme:dark;font:inherit;font-size:15px;font-weight:600;text-overflow:ellipsis;cursor:pointer}.main-surface-food-tracker .food-weight-row>select:focus{border:2px solid #d0bcff;padding-left:11px}.food-serving-equivalent{margin:6px 2px 0;color:#94a3b8;font-size:12px;line-height:16px}.food-meal-choice{display:grid;margin-top:14px;padding:10px 0;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;border:0;border-radius:12px;background:#172033}.food-meal-choice>span{color:#cbd5e1;font-size:14px;font-weight:600;line-height:18px}.main-surface-food-tracker .food-meal-choice select{box-sizing:border-box;width:100%;height:48px;padding:0 12px;border:1px solid rgba(148,163,184,.55);border-radius:10px;outline:0;background:#1e293b;color:#f8fafc;color-scheme:dark;font:inherit;font-size:15px;font-weight:600;cursor:pointer}.main-surface-food-tracker .food-meal-choice select:focus{border:2px solid #d0bcff;padding-inline:11px}.food-quantity-page .food-quantity-save{min-height:52px;margin-top:14px;border:0;border-radius:12px;background:#16a34a;color:#fff;font:inherit;font-size:16px;font-weight:700;text-transform:uppercase;cursor:pointer;box-shadow:0 3px 8px #00000047}.food-quantity-page .food-quantity-save:hover{background:#15803d}.food-quantity-page .food-quantity-save:disabled{opacity:.5}.food-quantity-nutrition{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:28px;overflow:hidden;border:1px solid rgba(226,232,240,.3);border-radius:12px;background:#475569}.food-quantity-nutrition>div{display:flex;min-height:60px;flex-direction:column;align-items:center;justify-content:center;padding:5px 10px;text-align:center}.food-quantity-nutrition>div:nth-child(odd){border-right:1px solid rgba(226,232,240,.55)}.food-quantity-nutrition>div:nth-child(-n+2){border-bottom:1px solid rgba(226,232,240,.55)}.food-quantity-nutrition span{color:#e2e8f0;font-size:13px}.food-quantity-nutrition strong{margin-top:3px;color:#fff;font-size:18px;line-height:23px}.food-quantity-nutrition small{font-size:.8em}.food-quantity-category{margin:18px 2px 0;color:#a6a1a9;font-size:13px;line-height:18px}.food-button-spinner{display:inline-block;width:18px;height:18px;border-width:2px;border-color:#381e7240;border-top-color:#381e72}.food-dialog-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:16px;background:#0000008f}.food-dialog{width:min(420px,100%);overflow:hidden;border-radius:28px;background:#211f26;color:#e6e1e5;box-shadow:0 8px 28px #0000006b}.food-dialog>h2{margin:0;padding:24px 24px 12px;font-size:24px;font-weight:400}.food-dialog-content{padding:0 24px}.food-dialog-content p{margin:0}.food-dialog-actions{display:flex;min-height:72px;align-items:center;justify-content:flex-end;gap:8px;padding:12px 24px 16px}.food-dialog-actions button{min-height:40px;padding:0 16px;border:0;border-radius:20px;background:transparent;color:#d0bcff;font:inherit;font-weight:500;cursor:pointer}.food-dialog-actions .food-dialog-filled{background:#d0bcff;color:#381e72}.food-snackbar{position:fixed;right:16px;bottom:24px;left:16px;z-index:120;max-width:560px;margin:auto;padding:14px 16px;border-radius:4px;background:#e6e1e5;color:#1d1b20;box-shadow:0 4px 18px #0000006b}.food-user-product-page{min-height:100vh;background:#0f172a;color:#e6e1e5;font-family:Roboto,Segoe UI,Arial,sans-serif}.food-user-product-page button,.food-user-product-page input,.food-user-product-page select,.food-user-product-page textarea,.food-user-product-page fieldset,.food-user-product-page legend{font-family:Roboto,Segoe UI,Arial,sans-serif}.food-user-product-page>form{display:flex;width:min(620px,100%);box-sizing:border-box;flex-direction:column;gap:16px;margin:0 auto;padding:20px 16px 36px}.food-user-required-fields{display:grid;gap:16px}.food-user-required-fields>h2{margin:0;color:#d0bcff;font-size:16px;line-height:22px}.food-user-product-page label{display:flex;flex-direction:column;gap:7px;color:#e2e8f0;font-size:14px;font-weight:600}.food-user-product-page label small{color:#94a3b8;font-size:12px;font-weight:400}.main-surface-food-tracker .food-user-product-page input{box-sizing:border-box;width:100%;min-height:50px;padding:0 14px;border:1px solid #64748b;border-radius:10px;outline:0;background:#1e293b;color:#f8fafc;font:inherit;font-size:16px}.main-surface-food-tracker .food-user-product-page input:focus{border:2px solid #d0bcff;padding:0 13px}.main-surface-food-tracker .food-user-product-page input:disabled{opacity:.45}.food-catalog-header{position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(202,196,208,.14);background:#1e293b}.food-catalog-titlebar{display:flex;min-height:58px;align-items:center;gap:6px;padding:4px 8px}.food-catalog-context{display:flex;min-width:0;flex:1;flex-direction:column;justify-content:center;padding:4px 4px 4px 6px}.food-catalog-context strong{overflow:hidden;color:#f8fafc;font-size:21px;font-weight:600;line-height:25px;text-overflow:ellipsis;white-space:nowrap}.food-catalog-context span{overflow:hidden;color:#cbd5e1;font-size:14px;line-height:19px;text-overflow:ellipsis;white-space:nowrap}.food-catalog-titlebar>button{display:grid;width:48px;height:48px;flex:0 0 48px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#e6e1e5;cursor:pointer}.food-catalog-titlebar>button:hover{background:#e6e1e514}.food-catalog-titlebar svg{width:24px;height:24px;fill:currentColor}.food-catalog-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:0 12px}.food-catalog-tabs button{position:relative;display:flex;min-height:48px;align-items:center;justify-content:center;gap:8px;padding:0 10px;border:0;background:transparent;color:#aab4c4;font:inherit;font-size:14px;font-weight:700;cursor:pointer}.food-catalog-tabs button:after{position:absolute;right:18px;bottom:0;left:18px;height:3px;border-radius:3px 3px 0 0;content:"";background:transparent}.food-catalog-tabs button.active{color:#fff}.food-catalog-tabs button.active:after{background:#22c55e}.food-catalog-tabs svg,.food-catalog-tabs .food-product-ingredient-icon{width:21px;height:21px}.food-catalog-tabs svg{fill:currentColor}.food-catalog-tab-products .food-product-ingredient-icon{color:#aab4c4}.food-catalog-tab-products.active .food-product-ingredient-icon{color:#fff}.food-catalog-tab-recipes svg{color:#d8b4fe}.food-catalog-search-row{display:flex;align-items:center;gap:6px;padding:8px 8px 12px 12px}.food-catalog-search-row>button{display:grid;width:48px;height:48px;flex:0 0 48px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#e6e1e5;cursor:pointer}.food-catalog-search-row>button:hover{background:#e6e1e514}.food-catalog-search-row>button svg{width:24px;height:24px;fill:currentColor}.food-catalog-search-field{box-sizing:border-box;display:grid;width:auto;height:50px;min-width:0;flex:1;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:10px;margin:0;padding:0 17px;border:1px solid #64748b;border-radius:26px;background:#0f172a}.food-catalog-search-field:focus-within{border-color:#d0bcff;box-shadow:inset 0 0 0 1px #d0bcff}.food-catalog-search-field svg{width:24px;height:24px;fill:currentColor;color:#a6a1a9}.main-surface-food-tracker .food-catalog-search-field input,.main-surface-food-tracker .food-catalog-search-field input:focus{box-sizing:border-box;width:100%;height:100%;min-width:0;padding:0;border:0;border-radius:0;outline:0;background:transparent;box-shadow:none;color:#e6e1e5;font:inherit;font-size:16px}.main-surface-food-tracker .food-catalog-search-field input::placeholder{color:#a6a1a9;opacity:1}.food-catalog-result{display:flex;border-bottom:1px solid rgba(148,163,184,.2)}.food-catalog-result>button:first-child{display:flex;min-width:0;flex:1;flex-direction:column;align-items:stretch;gap:7px;padding:14px 18px;border:0;background:#172033;color:#f8fafc;text-align:left;cursor:pointer}.food-catalog-result>button:first-child>div{display:flex;min-width:0;align-items:center;gap:8px}.food-catalog-result strong{display:-webkit-box;min-width:0;overflow:hidden;flex:1;line-height:21px;overflow-wrap:break-word;-webkit-box-orient:vertical;-webkit-line-clamp:3}.food-catalog-result>button:first-child>small{display:block;width:100%;color:#b8c3d6;text-align:right}.food-catalog-result em{color:#d8b4fe;font-size:12px;font-style:normal}.food-catalog-kind{display:inline-grid;width:24px;height:24px;flex:0 0 24px;place-items:center;color:#22d3ee}.food-catalog-kind svg,.food-catalog-kind .food-product-ingredient-icon{width:22px;height:22px}.food-catalog-kind svg{fill:currentColor}.food-catalog-result-product .food-catalog-kind{color:#fff}.food-catalog-result-recipe .food-catalog-kind{color:#c084fc}.food-catalog-result-recipe>button:first-child{display:grid;grid-template-columns:72px minmax(0,1fr);grid-template-rows:auto auto;gap:5px 12px;padding:10px 12px}.food-catalog-recipe-image{width:72px;height:72px;grid-row:1 / span 2;align-self:center;border-radius:13px;background:#0f172a;object-fit:cover}.food-catalog-result-recipe>button:first-child>div,.food-catalog-result-recipe>button:first-child>small{grid-column:2}.food-catalog-result-recipe>button:first-child>small{align-self:start;text-align:left}.food-catalog-edit-icon{display:grid;width:52px;flex:0 0 52px;place-items:center;padding:0;border:0;border-left:1px solid rgba(148,163,184,.2);background:#1e293b;color:#d8b4fe;cursor:pointer}.food-catalog-edit-icon svg{width:23px;height:23px;fill:currentColor}.food-catalog-lock{display:inline-grid;width:20px;height:20px;flex:0 0 20px;place-items:center;color:#fcd34d!important}.food-catalog-lock svg{width:18px;height:18px;fill:currentColor}.food-product-ingredient-icon{display:inline-block;flex:0 0 auto;background:currentColor;-webkit-mask:url(/assets/icons/categories/fruits.svg) center / contain no-repeat;mask:url(/assets/icons/categories/fruits.svg) center / contain no-repeat}.food-recipe-diary-page{min-height:100dvh;background:#0f172a;color:#f8fafc}.food-recipe-diary-page .food-quantity-appbar{gap:8px}.food-recipe-diary-page .food-quantity-appbar button{display:grid;width:48px;height:48px;flex:0 0 48px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#e6e1e5;cursor:pointer}.food-recipe-diary-page .food-quantity-appbar button svg{width:24px;height:24px;fill:currentColor}.food-recipe-diary-page .food-quantity-appbar strong{font-size:18px;font-weight:500}.food-recipe-diary-hero{display:flex;align-items:center;gap:16px;padding:22px 18px 14px}.food-recipe-diary-hero img{width:88px;height:88px;flex:0 0 88px;border-radius:16px;object-fit:cover;background:#1e293b}.food-recipe-diary-hero>div{min-width:0;flex:1}.food-recipe-diary-hero-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.food-recipe-diary-community-actions{display:flex;align-items:center;gap:4px}.food-recipe-edit-icon{display:grid;width:40px;height:40px;flex:0 0 40px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#d8b4fe;cursor:pointer}.food-recipe-edit-icon svg{width:24px;height:24px;fill:currentColor}.food-recipe-copy-header-action{color:#86efac}.food-recipe-copy-header-action.is-checking svg{animation:food-decompose-checking .75s linear infinite;opacity:.7}.food-community-share-control{position:relative;display:inline-flex}.food-community-share-button{display:grid;width:40px;height:40px;flex:0 0 40px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#7dd3fc;cursor:pointer}.food-community-share-button:hover{background:#7dd3fc1a}.food-community-share-button:focus-visible{outline:2px solid #7dd3fc;outline-offset:2px}.food-community-share-button svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.8}.food-community-share-control>small{position:absolute;top:44px;right:0;z-index:5;width:max-content;max-width:210px;padding:7px 10px;border-radius:9px;background:#334155;color:#f8fafc;font-size:11px;box-shadow:0 6px 20px #0000004d}.food-recipe-diary-hero h1{margin:8px 0 0;font-size:24px;line-height:1.15}.food-recipe-chip,.food-recipe-lock{display:inline-grid;width:28px;height:28px;margin:0 6px 4px 0;place-items:center;color:#c084fc}.food-recipe-chip svg,.food-recipe-lock svg{width:24px;height:24px;fill:currentColor}.food-recipe-lock{color:#fcd34d}.food-recipe-diary-page>main{display:grid;gap:16px;padding:10px 18px 32px}.food-recipe-yield-card{display:grid;gap:12px;padding:16px;border:1px solid rgba(34,197,94,.28);border-radius:14px;background:#142235}.food-recipe-yield-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(126px,52%);gap:12px;align-items:start}.food-recipe-yield-heading>div{display:grid;gap:4px}.food-recipe-yield-heading strong{color:#f8fafc;font-size:17px}.food-recipe-yield-heading small,.food-recipe-yield-heading span{color:#aebbd0;font-size:13px;line-height:1.35}.food-recipe-yield-heading>div:last-child{text-align:right}.food-recipe-yield-heading>div:last-child strong{color:#86efac;font-size:18px;line-height:1.25;white-space:nowrap}.food-recipe-yield-heading>div:last-child .food-recipe-yield-nutrition-long{font-size:15px}.food-recipe-yield-input{display:grid;gap:6px;color:#cbd5e1}.food-recipe-yield-input>div{display:grid;grid-template-columns:minmax(0,1fr) 52px;gap:8px}.main-surface-food-tracker .food-recipe-yield-input input{box-sizing:border-box;width:100%;min-width:0;min-height:48px;padding:0 12px;border:1px solid #64748b;border-radius:10px;outline:0;background:#1e293b;color:#fff;font:inherit;font-size:18px}.main-surface-food-tracker .food-recipe-yield-input input:focus{border-color:#86efac;box-shadow:inset 0 0 0 1px #86efac}.main-surface-food-tracker .food-recipe-yield-input input::placeholder{color:#94a3b8;opacity:1}.food-recipe-yield-input>div>span{display:grid;min-height:48px;place-items:center;border:1px solid #64748b;border-radius:10px;background:#1e293b;color:#cbd5e1}.food-recipe-portions{display:grid;gap:7px;color:#cbd5e1}.food-recipe-portions input{min-height:52px;padding:0 14px;border:1px solid #64748b;border-radius:10px;outline:0;background:#1e293b;color:#fff;font:inherit;font-size:20px}.food-recipe-quantity-row{display:grid;grid-template-columns:minmax(0,1fr) 108px;gap:8px}.food-recipe-quantity-row select{min-height:52px;padding:0 10px;border:1px solid #64748b;border-radius:10px;outline:0;background:#1e293b;color:#fff;font:inherit;font-size:17px}@media(max-width:420px){.food-recipe-yield-heading{grid-template-columns:minmax(0,1fr)}.food-recipe-yield-heading>div:last-child{text-align:left}}.food-recipe-nutrition{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:7px;align-items:center;padding:16px;border-radius:14px;background:#1e293b;transition:opacity .18s ease}.food-recipe-nutrition-calculating{opacity:.72}.food-recipe-nutrition strong{color:#d8b4fe;font-size:20px}.food-recipe-nutrition span{color:#cbd5e1;text-align:center}.food-recipe-nutrition small{grid-column:1 / -1;color:#94a3b8}.food-recipe-open,.food-recipe-locked button{min-height:46px;border:1px solid #a78bfa;border-radius:12px;background:transparent;color:#ddd6fe;font:inherit;cursor:pointer}.food-recipe-replacements,.food-recipe-locked{display:grid;gap:12px;padding:16px;border-radius:14px;background:#172033}.food-recipe-replacements h2{margin:0;font-size:18px}.food-recipe-replacements label{display:grid;gap:6px}.food-recipe-replacements select{min-height:46px;padding:0 10px;border:1px solid #64748b;border-radius:10px;background:#1e293b;color:#fff}.food-recipe-locked p,.food-recipe-replacements p{margin:0;color:#cbd5e1;line-height:1.45}.food-user-pan-calculator{display:grid;gap:13px;padding:16px;border:1px solid rgba(167,139,250,.32);border-radius:15px;background:#172033}.food-user-pan-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.food-user-pan-heading>div{display:grid;gap:4px}.food-user-pan-heading strong{color:#f8fafc;font-size:17px}.food-user-pan-heading small{color:#aebbd0;line-height:1.35}.food-user-pan-heading>span{flex:0 0 auto;padding:5px 8px;border-radius:10px;background:#8b5cf62b;color:#d8b4fe;font-size:11px}.food-user-pan-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.food-user-pan-fields label{display:grid;gap:5px;color:#cbd5e1;font-size:13px}.food-user-pan-fields input,.food-user-pan-fields select{box-sizing:border-box;width:100%;min-height:44px;padding:0 10px;border:1px solid #64748b;border-radius:10px;outline:0;background:#1e293b;color:#fff;font:inherit;font-size:15px}.food-user-pan-fields input:focus,.food-user-pan-fields select:focus{border-color:#a78bfa;box-shadow:inset 0 0 0 1px #a78bfa}.food-user-pan-calculator>p{margin:0;color:#aebbd0;font-size:13px;line-height:1.4}.food-user-pan-calculator>p strong{color:#86efac}.food-recipe-version-note{margin:0;padding:12px;border-radius:10px;background:#fbbf241c;color:#fde68a}.food-recipe-diary-page .food-quantity-save{min-height:52px;border:0;border-radius:12px;background:#16a34a;color:#fff;box-shadow:0 3px 8px #00000047;font:inherit;font-size:16px;font-weight:700;text-transform:uppercase;cursor:pointer}.food-recipe-diary-page .food-quantity-save:hover{background:#15803d}.food-recipe-diary-page .food-quantity-save:disabled{opacity:.5;cursor:default}.food-recipe-diary-page .food-quantity-save.food-quantity-save-silent-disabled:disabled{opacity:1}.food-item-recipe-kind{display:inline-flex!important;align-items:center;gap:5px}.food-item-recipe-kind>svg{width:18px;height:18px;fill:#c084fc}.food-item-recipe-kind>span{display:inline-grid;place-items:center}.food-item-recipe-kind>span svg{width:15px;height:15px;fill:#fcd34d}.food-recipe-more-button{position:relative;display:inline-grid;width:24px;height:24px;overflow:hidden;place-items:center;padding:0;border:0;border-radius:50%;background:#94a3b821;color:#cbd5e1;cursor:pointer;clip-path:circle(50%);isolation:isolate;-webkit-tap-highlight-color:transparent}.food-recipe-more-button:hover,.food-recipe-more-button:focus-visible,.food-recipe-more-button[aria-expanded=true]{background:#cbd5e13d;outline:0}.food-recipe-more-button:active{background:#cbd5e152}.food-recipe-more-button svg{width:16px;height:16px;fill:currentColor}.food-recipe-menu-backdrop{position:fixed;z-index:60;inset:0;background:transparent}.food-recipe-item-menu{position:fixed;display:grid;width:min(292px,calc(100vw - 24px));gap:2px;padding:6px;border:1px solid rgba(148,163,184,.2);border-radius:16px;background:#211f26;box-shadow:0 12px 32px #00000075}.food-recipe-menu-item{display:grid;min-height:46px;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:10px;padding:8px 12px;border:0;border-radius:11px;background:transparent;color:#e6e1e5;font:inherit;font-size:14px;line-height:19px;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent}.food-recipe-menu-item:hover,.food-recipe-menu-item:focus-visible{background:#cbd5e11f;outline:0}.food-recipe-menu-item:active{background:#cbd5e133}.food-recipe-menu-item:disabled{cursor:wait;opacity:.65}.food-recipe-menu-item svg{width:21px;height:21px;fill:currentColor;color:#c4b5fd}.food-recipe-copy-menu-action svg{color:#86efac}.food-recipe-menu-item.is-checking svg{animation:food-decompose-checking .75s linear infinite;opacity:.7}@keyframes food-decompose-checking{to{transform:rotate(360deg)}}.food-recipe-copy-snackbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.food-recipe-copy-snackbar button{min-height:34px;padding:0 8px;border:0;background:transparent;color:#6750a4;font:inherit;font-weight:700;cursor:pointer}.food-catalog-load-more{display:block;min-width:180px;min-height:44px;margin:8px auto 24px;padding:0 18px;border:0;border-radius:12px;background:#334155;color:#f8fafc;font:inherit;font-weight:700;cursor:pointer}.food-catalog-load-more:disabled{opacity:.55;cursor:default}.food-local-search-note{padding:8px 16px;background:#0ea5e914;color:#7dd3fc;font-size:12px;text-align:center}.food-create-recipe-dialog .food-dialog-content{display:grid;gap:14px}.food-create-recipe-dialog label{display:grid;gap:6px;color:#e2e8f0;font-size:14px;font-weight:600}.main-surface-food-tracker .food-create-recipe-dialog input,.main-surface-food-tracker .food-create-recipe-dialog textarea{box-sizing:border-box;width:100%;padding:12px 14px;border:1px solid #64748b;border-radius:10px;outline:0;background:#1e293b;color:#f8fafc;font:inherit;font-size:16px;resize:vertical}.main-surface-food-tracker .food-create-recipe-dialog input{min-height:50px}.main-surface-food-tracker .food-create-recipe-dialog input:focus,.main-surface-food-tracker .food-create-recipe-dialog textarea:focus{border-color:#d0bcff;box-shadow:inset 0 0 0 1px #d0bcff}.food-user-barcode-field{display:grid;grid-template-columns:minmax(0,1fr) 52px;gap:8px}.food-user-barcode-field>button{display:grid;min-height:50px;place-items:center;padding:0;border:1px solid #64748b;border-radius:10px;background:#334155;color:#e6e1e5;cursor:pointer}.food-user-barcode-field>button:hover{background:#475569}.food-user-barcode-field svg{width:24px;height:24px;fill:currentColor}.food-user-product-page fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:2px 0 0;padding:16px;border:1px solid rgba(148,163,184,.45);border-radius:12px}.food-user-product-page legend{padding:0 7px;color:#d0bcff;font-size:14px}.food-serving-fields{display:grid;grid-template-columns:minmax(0,2fr) minmax(90px,1fr);gap:12px}.food-form-error{padding:12px 14px;border:1px solid #ef4444;border-radius:10px;background:#7f1d1d59;color:#fecaca;font-size:14px}.food-user-product-save,.food-user-product-archive{min-height:52px;border:0;border-radius:12px;font:inherit;font-size:15px;font-weight:700;cursor:pointer}.food-user-product-save{background:#16a34a;color:#fff}.food-user-product-save:disabled{opacity:.55}.food-user-product-archive{background:transparent;color:#fca5a5}@media(max-width:430px){.food-search-appbar{gap:3px;padding-inline:6px}.food-search-appbar>button{width:44px;flex-basis:44px}.food-user-product-page fieldset{grid-template-columns:1fr}.food-week-carousel{width:232px}.food-week-picker{grid-template-columns:repeat(7,28px);gap:4px;padding-inline:2px}.food-week-day{width:28px;height:28px;font-size:9px}}@media(max-width:350px){.food-tracker-appbar{padding-right:4px;padding-left:8px}.food-tracker-appbar>button{width:42px;height:42px;flex-basis:42px}}@media(max-width:600px){.food-tracker-title h1{font-size:19px;line-height:24px}.food-summary{padding-right:10px;padding-left:10px}.food-summary span{font-size:13px;line-height:20px}.food-summary strong{font-size:17px;line-height:24px}.food-meal-card,.food-daily-metrics{margin-right:10px;margin-left:10px}.food-meal-heading{gap:8px;padding-left:12px}.food-meal-heading h2{font-size:18px;line-height:26px}.food-meal-calories{min-width:58px}.food-meal-calories strong{font-size:17px;line-height:24px}.food-meal-calories span{font-size:11px}.food-meal-heading>button{width:40px;height:40px;flex-basis:40px}.food-meal-heading>button svg{width:28px;height:28px}.food-meal-heading+.food-divider{margin-left:52px}.food-meal-toggle-icon{width:40px;height:40px;flex-basis:40px;margin-right:4px}.food-meal-toggle-icon svg{width:18px;height:18px}.food-item-row{padding-left:52px}.food-item-swipe+.food-item-swipe .food-item-row:before{left:52px}.food-item-main h3{font-size:17px;line-height:24px}.food-item-main span{font-size:13px;line-height:20px}.food-item-main>strong{font-size:16px;line-height:22px}.food-item-main>svg{width:18px;height:18px;margin-top:2px;margin-left:6px}.food-macro-values span,.food-item-macros span{font-size:14px;line-height:22px}.food-scanner-appbar{padding-right:8px;padding-left:4px}}@media(prefers-reduced-motion:reduce){.food-view-transition-forward,.food-view-transition-backward,.food-date-transition-next,.food-date-transition-previous,.food-camera-message-error,.food-camera-recognizing .food-camera-scan-frame{animation:none}.food-week-track-settling{transition:none}}textarea,select,input:not([type=checkbox]):not([type=file]){width:100%;min-height:40px;border:1px solid rgba(148,163,184,.28);border-radius:8px;background:#0f172ab8;color:#f8fafc;padding:10px 12px}textarea{min-height:100px;resize:vertical}select{appearance:auto}.split-panel{display:grid;grid-template-columns:minmax(220px,.75fr) minmax(0,1.25fr);gap:14px;align-items:start}.split-panel>aside{min-width:0}.split-panel>aside .list-row{display:grid;grid-template-columns:1fr;width:100%;border:0;text-align:left;background:transparent;color:inherit;cursor:pointer}.split-panel>aside .list-row.selected{border-left:3px solid #38bdf8;padding-left:8px;background:#38bdf81a}.ingredient-detail-grid{display:grid;grid-template-columns:minmax(160px,240px) minmax(0,1fr);gap:20px;align-items:center}.ingredient-detail-grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:999px}.media-editor{display:grid;gap:10px}.media-item{display:grid;gap:6px}.compact-panel{padding:12px}.compact-number-input{width:88px;min-width:0}@media(max-width:720px){.topbar{overflow-x:auto;justify-content:flex-start;gap:16px}.topnav{display:flex;flex:0 0 auto;overflow-x:auto;white-space:nowrap;max-width:70vw}.topbar>.ghost-button{flex:0 0 auto}.split-panel,.ingredient-detail-grid{grid-template-columns:1fr}.ingredient-detail-grid img{width:min(220px,70vw);justify-self:center}.page-title{font-size:30px}}.nav-feedback-link{display:inline-flex;align-items:center;gap:5px}.unread-badge{min-width:18px;padding:1px 5px;border-radius:999px;background:#ef4444;color:#fff;font-size:11px;line-height:16px;text-align:center}.recipe-editor-image{width:min(100%,320px);aspect-ratio:4 / 3;object-fit:cover;border-radius:6px;background:#edf1ef}.story-thumb{width:56px;height:56px;object-fit:cover;border-radius:4px;background:#edf1ef}.drawer-trigger{width:38px;height:38px;flex:0 0 38px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#0f172a;font-size:22px;line-height:1;cursor:pointer}.drawer-trigger:hover{background:#f1f5f9}.drawer-backdrop{position:fixed;inset:0;z-index:30;padding:0;border:0;outline:0;appearance:none;background:#0000008a;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.side-drawer{position:fixed;inset:0 auto 0 0;z-index:31;display:flex;width:304px;max-width:calc(100vw - 56px);flex-direction:column;overflow-y:auto;border-radius:0 16px 16px 0;background:#1e293b;box-shadow:10px 0 28px #0000004d;color:#fff;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.side-drawer *{-webkit-tap-highlight-color:transparent}.drawer-header{display:flex;height:190px;padding:18px 16px;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;background:#2196f3;color:#fff}.drawer-header>.drawer-icon{width:24px;height:24px;margin-top:6px}.drawer-header span{white-space:pre-line;font-size:16px;line-height:24px;text-align:center}.drawer-header>strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:18px}.drawer-profile-avatar{display:grid;box-sizing:border-box;width:64px;height:64px;margin-top:2px;place-items:center;border:2px solid #fff;border-radius:50%;object-fit:cover}.drawer-profile-avatar-fallback{border-color:#38bdf859;background:#0f172a;color:#7dd3fc}.drawer-profile-avatar-fallback>svg{width:34px;height:34px;fill:currentColor}.drawer-content{display:flex;min-height:0;flex:1;flex-direction:column;padding:8px 0 12px}.drawer-tile{display:grid;width:100%;min-height:56px;grid-template-columns:24px minmax(0,1fr) auto;gap:12px;align-items:center;padding:8px 16px;border:0;border-radius:0;background:transparent;color:#fff;font:inherit;text-align:left;text-decoration:none;cursor:pointer}.drawer-tile-with-subtitle{min-height:68px}.drawer-tile:hover{background:#ffffff14}.drawer-tile:disabled{cursor:default;opacity:.65}.drawer-tile-copy{display:grid;min-width:0;gap:2px}.drawer-tile-copy strong{font-size:16px;font-weight:400;line-height:20px}.drawer-tile-copy small{color:#ffffffb3;font-size:14px;line-height:18px}.drawer-icon{display:block;width:24px;height:24px;fill:currentColor;color:#fff}.drawer-tile .unread-badge{margin-left:auto}.drawer-error{margin:8px 16px;color:#fecaca;font-size:12px}.drawer-status{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px;margin:12px 12px 4px;padding:12px;border:1px solid;border-radius:10px;font-size:14px;line-height:20px}.drawer-status>span:first-child{display:grid;width:24px;height:24px;place-items:center;border:2px solid currentColor;border-radius:50%;font-weight:700;line-height:1}.drawer-status-error{border-color:#fecaca;background:#fef2f2;color:#b91c1c}.drawer-status-success{border-color:#bbf7d0;background:#f0fdf4;color:#15803d}.drawer-divider{height:1.5px;margin:0;background:#94a3b8}.drawer-footer{margin-top:auto;padding-top:12px}.drawer-version{padding:0 16px 4px;color:#ffffff8c;font-size:12px}.drawer-logout-dialog-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:16px;background:#0000008f;animation:backdrop-in .16s ease-out both}.drawer-logout-dialog{width:min(380px,100%);overflow:hidden;border-radius:28px;background:#211f26;color:#e6e1e5;box-shadow:0 8px 28px #0000006b;animation:dialog-in .2s ease-out both}.drawer-logout-dialog h2{margin:0;padding:24px 24px 12px;font-size:24px;font-weight:400}.drawer-logout-dialog p{margin:0;padding:0 24px;line-height:1.45}.drawer-logout-dialog-actions{display:flex;min-height:72px;align-items:center;justify-content:flex-end;gap:8px;padding:12px 24px 16px}.drawer-logout-dialog-actions button{min-height:40px;padding:0 16px;border:0;border-radius:20px;background:transparent;color:#d0bcff;font:inherit;font-weight:500;cursor:pointer}.drawer-logout-dialog-actions .drawer-logout-confirm{background:#d0bcff;color:#381e72}@media(max-width:720px){.drawer-trigger{display:inline-flex;align-items:center;justify-content:center}}.ingredient-grid{display:grid;gap:8px}.ingredient-card{display:flex;align-items:stretch;gap:8px;padding:0;border:1px solid #d6e1de;border-radius:8px;background:#f4f8f7;overflow:hidden}.ingredient-card-main{display:flex;align-items:center;gap:10px;min-width:0;flex:1;padding:11px 12px;color:#17211f;text-decoration:none}.ingredient-card-main:hover{background:#e7f1ee}.ingredient-card-icon{width:24px;color:#0f766e;font-size:18px;text-align:center}.ingredient-card-name{min-width:0;flex:1;overflow-wrap:anywhere}.ingredient-card-amount{white-space:nowrap;color:#52645e}.ingredient-replace{align-self:center;margin-right:8px;white-space:nowrap}.ingredient-section-title{display:block;margin:10px 0 8px;color:#52645e}.recipe-steps{display:grid;gap:8px}.recipe-step{border-left:3px solid #14b8a6;border-radius:6px;background:#f5f9f8;overflow:hidden}.recipe-step-trigger{display:flex;align-items:flex-start;gap:12px;width:100%;padding:14px;border:0;background:transparent;color:#17211f;font:inherit;text-align:left}.recipe-step-trigger:not(:disabled){cursor:pointer}.recipe-step-trigger:not(:disabled):hover{background:#e7f1ee}.step-index{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex:0 0 28px;border-radius:50%;background:#14b8a6;color:#fff;font-weight:700}.step-description{flex:1;white-space:pre-wrap;overflow-wrap:anywhere}.step-chevron{color:#0f766e;font-size:24px;line-height:24px}.step-note{margin:0 14px 12px 54px;padding:10px 12px;border:1px solid #f4d48c;border-radius:6px;background:#fff8e5;color:#5d4a18;white-space:pre-wrap}.recipe-step-media{margin:0 14px 14px 54px}.step-image-button{padding:0;border:0;background:transparent;cursor:zoom-in}.media-lightbox{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:20px;background:#0f172ad1}.media-lightbox-content{position:relative;display:flex;align-items:center;justify-content:center;width:min(1100px,100%);height:min(90vh,800px)}.media-lightbox-media{max-width:90%;max-height:90%;object-fit:contain}.media-lightbox-close,.media-lightbox-prev,.media-lightbox-next{position:absolute;z-index:1;border:0;border-radius:50%;background:#ffffffe6;color:#17211f;cursor:pointer}.media-lightbox-close{top:0;right:0;width:36px;height:36px;font-size:24px}.media-lightbox-prev,.media-lightbox-next{top:50%;width:42px;height:42px;font-size:32px;line-height:32px;transform:translateY(-50%)}.media-lightbox-prev{left:0}.media-lightbox-next{right:0}.media-lightbox-count{position:absolute;bottom:0;left:50%;padding:4px 10px;border-radius:12px;background:#ffffffe6;transform:translate(-50%)}.ingredient-card-main{cursor:pointer;font:inherit;text-align:left}.ingredient-sheet-backdrop{position:fixed;inset:0;z-index:50;display:flex;align-items:flex-end;justify-content:center;background:#0f172a75}.ingredient-sheet{display:grid;gap:16px;width:min(680px,100%);max-height:86vh;overflow-y:auto;padding:20px;border-radius:14px 14px 0 0;background:#fff;box-shadow:0 -8px 28px #0f172a33}.ingredient-sheet-main{display:grid;grid-template-columns:minmax(150px,200px) 1fr;gap:22px;align-items:center}.ingredient-sheet-main img{width:100%;aspect-ratio:1;border-radius:12px;object-fit:cover;background:#edf1ef}.ingredient-nutrition{display:grid;gap:7px}.ingredient-nutrition span,.ingredient-shops>span{color:#52645e;font-style:italic}.ingredient-shops{display:grid;gap:7px}.ingredient-shops a{color:#0f766e;overflow-wrap:anywhere}.ingredient-sheet-comment{padding:13px 15px;border:1px solid #d6e1de;border-radius:10px;background:#f3f8f6;color:#31433e;font-size:14px;line-height:1.45;white-space:pre-wrap}@media(max-width:560px){.ingredient-sheet-main{grid-template-columns:1fr}.ingredient-sheet-main img{width:min(220px,70vw);justify-self:center}}.recipe-categories{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:-8px 0 14px;color:#52645e;font-size:14px}.recipe-categories span{padding:3px 8px;border:1px solid #d6e1de;border-radius:999px;background:#f3f8f6}.recipe-macro-header{display:flex;align-items:center;justify-content:center;gap:28px;margin:10px 0 14px;padding:12px 0}.portion-control,.macro-total{display:grid;gap:6px}.macro-label{color:#52645e;font-size:13px}.macro-total strong{font-size:14px}@media(max-width:560px){.recipe-macro-header{align-items:stretch;flex-direction:column;gap:10px}}.tati-post{margin:4px 0 24px;padding:16px 18px;border-left:4px solid #b86a54;border:1px solid #e9ded6;border-left-width:4px;border-radius:8px;background:#f8f3ef}.tati-post-author{margin-bottom:12px;color:#17211f;font-weight:700}.tati-post-collapsed{display:block;width:100%;padding:0;border:0;background:transparent;color:#17211f;font:inherit;line-height:1.35;text-align:left;cursor:pointer;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}.tati-post-toggle{margin-top:8px;padding:0;border:0;background:transparent;color:#9b4d3b;font:inherit;cursor:pointer}.detail-hero{display:flex;flex-direction:column;gap:0}.detail-hero>.page-header{order:2;padding:18px 8px 10px;text-align:center}.detail-hero>img,.detail-hero>video{order:1;width:100%;aspect-ratio:1 / 1;border-radius:8px;object-fit:cover;background:#111827}.editor-nutrition{display:grid;gap:4px;padding:10px 12px;border:1px solid #d6e1de;border-radius:6px;background:#f3f8f6}.food-dialog-backdrop{position:fixed;inset:0;z-index:70;display:grid;place-items:center;padding:16px;background:#0f172a75}.food-dialog{width:min(420px,100%);display:grid;gap:16px}.story-card-preview{width:100%;aspect-ratio:1 / 1;border-radius:50%;object-fit:cover;background:#e5e7eb}.story-card-placeholder{border:4px solid #d1d5db}.recipe-book-badge{position:absolute;right:8px;bottom:8px;padding:4px 7px;border-radius:999px;background:#0f766ee6;color:#fff;font-size:11px;font-weight:700}.ingredient-image-button{padding:0;border:0;background:transparent;cursor:zoom-in}.main-search-tile{display:flex;align-items:center;gap:10px;min-height:72px;margin-bottom:12px;font-size:1.05rem}.main-search-icon{padding-right:10px;border-right:1px solid rgba(148,163,184,.35);color:#cbd5e1}.story-link-error{position:fixed;top:16px;left:50%;z-index:22;max-width:calc(100% - 32px);transform:translate(-50%);padding:10px 14px;background:#7f1d1d;color:#fff;border-radius:6px}.confidentiality-footer{display:flex;flex-direction:column;align-items:center;gap:2px;padding:14px 10px 18px;color:var(--muted);font-size:10px;text-align:center}.confidentiality-footer button{padding:0;border:0;background:none;color:var(--accent);font:inherit;text-decoration:underline;cursor:pointer}.legal-dialog-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:16px;background:#0009}.legal-dialog{width:min(560px,100%);max-height:min(80vh,640px);overflow:auto}:root{--surface: #ffffff;--surface-muted: #f3f8f6;--line: #d6e1de;--text: #17211f;--muted: #52645e;--accent: #0f766e;color:var(--text);background:var(--surface);color-scheme:light}body{background:var(--surface);color:var(--text)}.app-shell{background:var(--surface)}.topbar{background:#fffffff0;border-bottom-color:var(--line)}.brand,.page-title{color:var(--text)}.page-subtitle,.page-state{color:var(--muted)}.panel{border-color:var(--line);background:var(--surface);box-shadow:0 2px 10px #17211f0a}.recipe-card,.quick-tile,.story-chip,.main-asset-tile{border-color:var(--line);background:var(--surface);color:var(--text);box-shadow:0 2px 8px #17211f0d;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.recipe-card:hover,.quick-tile:hover,.story-chip:hover,.main-asset-tile:hover{border-color:#9fcac0;box-shadow:0 8px 18px #17211f1a;transform:translateY(-2px)}.recipe-card img{transition:transform .24s ease,opacity .24s ease}.recipe-card:hover img{transform:scale(1.025)}textarea,select,input:not([type=checkbox]):not([type=file]){border-color:var(--line);background:var(--surface);color:var(--text)}.field label{color:var(--muted)}.primary-button,.secondary-button,.ghost-button,.drawer-link,.drawer-action{transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.primary-button:hover,.secondary-button:hover,.ghost-button:hover{transform:translateY(-1px)}.page{animation:none}.drawer-backdrop{animation:backdrop-in .16s ease-out both}.side-drawer{animation:drawer-in .2s cubic-bezier(.2,.8,.2,1) both}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes drawer-in{0%{opacity:0;transform:translate(-18px)}to{opacity:1;transform:translate(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.recipe-card{position:relative;min-height:220px;aspect-ratio:4 / 3;border-radius:8px;background:#dfeae7}.recipe-card .recipe-image-wrap{position:absolute;inset:0;overflow:hidden}.recipe-card .recipe-image-wrap:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#0f172a14 35%,#0f172ac7)}.recipe-card .recipe-image-wrap>img{width:100%;height:100%;aspect-ratio:auto}.recipe-card-body{position:absolute;z-index:1;inset:auto 12px 12px;display:grid;gap:7px;padding:0;color:#fff}.recipe-card-title{width:fit-content;max-width:100%;padding:5px 9px;border-radius:20px;background:#0f172a94;color:#fff;font-size:13px;line-height:1.25}.recipe-card .macro-row{width:fit-content;max-width:100%;padding:4px 9px;border-radius:20px;background:#0f172a94;color:#fff}.recipe-card .recipe-book-badge{inset:10px auto auto 10px;z-index:2}.recipe-card .icon-button{z-index:2}.list-row,.message-row,.admin-user-row{border-bottom-color:#e2ebe8}.admin-user-row{color:var(--text)}.metric-box span,.log-box{color:var(--muted)}.macro-box strong{color:var(--text)}.tag-button{border-color:var(--line);background:var(--surface-muted);color:var(--text)}.tag-button-active{border-color:#43a99b;background:#e2f2ee;color:#14534d}.food-search{border-color:var(--line);background:var(--surface-muted)}.main-search-icon{border-right-color:var(--line);color:var(--muted)}.topnav{color:var(--muted)}.recipe-book-badge-1{background:#2563ebe6}.recipe-book-badge-2{background:#ea580ce6}.recipe-book-badge-3{background:#db2777e6}.recipe-book-badge-4{background:#16a34ae6}.recipe-book-badge-5{background:#84cc16e6;color:#17211f}.recipe-book-badge-6{background:#f59e0beb;color:#17211f}.recipe-book-badge--1{background:#2563ebeb}.drawer-backdrop.drawer-closing{animation:backdrop-out .18s ease-in both}.side-drawer.drawer-closing{animation:drawer-out .2s cubic-bezier(.4,0,1,1) both}.drawer-backdrop.drawer-closing,.side-drawer.drawer-closing{pointer-events:none}@keyframes backdrop-out{0%{opacity:1}to{opacity:0}}@keyframes drawer-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-18px)}}.drawer-toggle{grid-template-columns:24px minmax(0,1fr) auto}.drawer-switch{display:inline-flex;align-items:center;width:52px;height:32px;padding:2px;border:2px solid #fff;border-radius:999px;background:transparent;transition:background .15s ease,border-color .15s ease}.drawer-toggle .drawer-switch{margin-right:12px}.drawer-switch span{width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .15s ease}.drawer-switch-on{border-color:#bb86fc;background:#bb86fc}.drawer-switch-on span{transform:translate(20px)}.ingredient-sheet-backdrop,.food-dialog-backdrop,.legal-dialog-backdrop{animation:backdrop-in .16s ease-out both}.ingredient-sheet{animation:sheet-up .22s cubic-bezier(.2,.8,.2,1) both}.food-dialog,.legal-dialog{animation:dialog-in .2s ease-out both}.media-lightbox{animation:backdrop-in .16s ease-out both}@keyframes sheet-up{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes dialog-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.story-progress span{position:relative;overflow:hidden}.story-progress-active:after{content:"";position:absolute;inset:0;background:#fff;transform-origin:left;animation:story-progress-fill 5s linear both}@keyframes story-progress-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.recipe-book-badge{display:grid;place-items:center;width:30px;height:30px;padding:4px;border-radius:50%}.recipe-book-badge img{width:20px;height:20px;object-fit:contain;filter:brightness(0) invert(1)}.recipe-book-badge-5 img,.recipe-book-badge-6 img{filter:brightness(0)}.main-collections{width:100%}.main-section-title{margin:5px 20px 10px;font-size:14px;font-weight:400}.recipe-card-book--1{border-color:#2196f3}.recipe-card-book-0{border-color:#17211f}.recipe-card-book-1{border-color:#536dfe}.recipe-card-book-2{border-color:#f28c28}.recipe-card-book-3{border-color:#e83e8c}.recipe-card-book-4{border-color:#35a853}.recipe-card-book-5{border-color:#8bc34a}.recipe-card-book-6{border-color:#f5b400}.recipe-card{aspect-ratio:1 / 1;min-height:180px}.recipe-card-body{inset:12px;height:calc(100% - 24px);align-content:space-between}.filter-toggle{display:inline-flex;align-items:center;gap:6px}.filter-toggle-icon{width:22px;height:22px;object-fit:contain}.meal-heading{display:flex;align-items:center;gap:10px;padding:12px 12px 10px 16px}.meal-icon{color:#d99a19;font-size:28px;line-height:1}.meal-heading-name{display:grid;flex:1;gap:2px;min-width:0}.meal-heading-name .recipe-card-title{padding:0;background:transparent;color:var(--text);font-size:20px}.meal-heading-name small{color:var(--muted)}.meal-calories{font-size:22px}.meal-expand,.meal-add{flex:0 0 auto}.meal-add{width:40px;height:40px;font-size:24px}.recipe-card .recipe-book-badge{inset:auto 8px 15px auto;padding:5px;border:3px solid rgba(255,255,255,.55);background:#0000002e}.recipe-card .recipe-book-badge img{filter:brightness(0) invert(1)}.recipe-card .recipe-book-badge img{width:20px;height:20px;aspect-ratio:1 / 1;background:transparent;object-fit:contain;border-radius:0}.recipe-card .recipe-book-badge{box-sizing:border-box;width:36px;height:36px;line-height:0}.recipe-card .icon-button{box-sizing:border-box;padding:0;line-height:0;font-family:Segoe UI Symbol,Arial,sans-serif;font-size:24px;text-align:center}.recipe-card-link{display:block;height:100%;color:inherit;text-decoration:none}.recipe-card>.icon-button{position:absolute;top:8px;right:8px;z-index:3}.detail-media-frame{position:relative}.detail-media-carousel{display:flex;width:100%;overflow-x:auto;overflow-y:hidden;border-radius:8px;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x pan-y}.detail-media-carousel::-webkit-scrollbar{display:none}.detail-media-carousel>video,.detail-media-carousel>.detail-media-image{display:block;width:100%;aspect-ratio:1 / 1;flex:0 0 100%;padding:0;border:0;border-radius:8px;overflow:hidden;background:#111827;scroll-snap-align:start;scroll-snap-stop:always}.detail-media-carousel>video,.detail-media-carousel>.detail-media-image img{width:100%;height:100%;object-fit:cover}.detail-media-carousel>.detail-media-image img{display:block}.detail-media-preview-image{pointer-events:none}.detail-media-carousel>.detail-media-image img.detail-media-image-pending{opacity:0}.detail-media-carousel>.detail-media-image img.detail-media-image-loaded{animation:detail-media-fade .3s ease-out both}.detail-media-carousel>.detail-media-image img.detail-media-cover-instant,.detail-media-carousel>.detail-media-preview-image img{animation:none}.detail-media-dots{position:absolute;z-index:4;right:0;bottom:34px;left:0;display:flex;justify-content:center;gap:6px;pointer-events:none}.detail-media-dots button{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:#ffffff94;box-shadow:0 1px 3px #00000073;pointer-events:auto}.detail-media-dots button.active{width:18px;border-radius:6px;background:#fff}@keyframes detail-media-fade{0%{opacity:0}to{opacity:1}}.recipe-details-page .pay-stub{animation:detail-media-fade .3s ease-out both}.detail-action-panel{position:absolute;top:10px;right:10px;z-index:3;display:flex;gap:6px}.detail-action-panel .icon-button,.detail-share-button{width:44px;height:44px;border:0;border-radius:50%;background:#80808099;color:#facc15;cursor:pointer}.detail-action-panel .icon-button.icon-button-active{border:0;color:#facc15;background:#80808099}.detail-share-button{display:grid;place-items:center}.detail-share-svg{width:22px;height:22px;color:#fff}.detail-share-feedback{position:absolute;top:50px;right:0;width:max-content;max-width:240px;padding:8px 12px;border-radius:8px;background:#17211feb;color:#fff;font-size:12px}.detail-media-handle{position:absolute;right:0;bottom:-1px;left:0;height:30px;border-radius:20px 20px 0 0;background:#ffffffe6;pointer-events:none}.detail-media-handle:after{content:"";position:absolute;top:14px;left:50%;width:40px;height:2px;transform:translate(-50%);background:#777}.detail-heading{text-align:center}.detail-heading .page-title{max-width:720px;margin:14px auto 8px;font-size:26px}.detail-heading .page-title{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}.detail-section-divider{display:flex;align-items:center;gap:12px;margin:10px 30px 1px;color:#17211f;font-size:16px;font-weight:700}.detail-section-divider:before,.detail-section-divider:after{content:"";height:1px;flex:1;background:#9aa7a2}.recipe-macro-header{align-items:center}.macro-total{display:grid;grid-template-columns:repeat(4,minmax(48px,1fr));gap:10px;align-items:center}.macro-total{display:flex;min-width:min(360px,100%);flex-direction:column;align-items:center;gap:4px;text-align:center}.macro-item{display:grid;justify-items:center;text-align:center}.macro-symbol{color:#52645e;font-size:22px;line-height:1}.macro-header-svg{width:25px;height:25px;color:#52645e}.portion-button{width:38px;height:38px;border:0;border-radius:8px;background:#eef2f1;color:#17211f;font-size:22px;cursor:pointer}.recipe-steps{position:relative}.recipe-steps:before{content:"";position:absolute;top:14px;bottom:14px;left:13px;width:2px;background:#14b8a6}.recipe-step:last-child:after{content:"";position:absolute;top:28px;bottom:0;left:11px;z-index:1;width:5px;background:var(--surface, #fff)}.recipe-step{position:relative;border-left:0;border-radius:0;background:transparent;padding-left:38px}.recipe-step-trigger{position:relative;border-radius:8px;background:#f5f9f8;padding:12px 10px 12px 48px}.recipe-step-trigger .step-index{position:absolute;top:12px;left:-38px;z-index:3}.recipe-step-trigger .step-index{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;font-family:Arial,sans-serif;font-size:20px;line-height:1;font-weight:400;padding:0 0 2px}.recipe-step-trigger .step-index-media{font-size:18px;padding-bottom:1px}.recipe-step-trigger .step-index-expanded{font-size:20px;padding-bottom:1px;transform:none}.step-indicator-svg{display:block;width:18px;height:18px}.recipe-step-media{display:flex;gap:10px;overflow-x:auto;overflow-y:hidden;height:300px;padding:8px;margin:0 0 14px}.recipe-step-media{scrollbar-width:thin;scrollbar-color:#8b9a96 transparent;touch-action:pan-x}.recipe-step-media-scrollable{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:pan-x pan-y;cursor:grab;-webkit-user-select:none;user-select:none}.recipe-step-media-scrollable:active{cursor:grabbing}.recipe-step-media::-webkit-scrollbar{height:1px}.recipe-step-media::-webkit-scrollbar-track{background:transparent}.recipe-step-media::-webkit-scrollbar-thumb{background:#8b9a96}.recipe-step-media .step-media{flex:0 0 280px;width:280px;height:280px;aspect-ratio:1}.recipe-step-expanded .recipe-step-media{animation:recipe-step-open .18s ease-out both}.step-note{display:flex;align-items:flex-start;gap:8px}.step-note-icon{flex:0 0 auto;font-size:18px;line-height:1.2}.step-note-svg{display:block;width:19px;height:19px}@keyframes recipe-step-open{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.tati-post-author-row{display:flex;align-items:center;gap:12px;margin-bottom:12px}.tati-post-author-row img{width:48px;height:48px;border:2px solid #fff;border-radius:50%;object-fit:cover;box-shadow:0 2px 6px #00000024}.tati-post-author{margin:0}.tati-post-body{max-height:6em;overflow:hidden;transition:max-height .18s ease-out}.tati-post-body-expanded{max-height:1000px}.tati-post-toggle{min-height:28px}.step-media-indicator{display:flex;justify-content:center;gap:6px;margin:-4px 0 12px}.step-media-indicator button{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:#b8c6c2;cursor:pointer}.step-media-indicator button.active{width:18px;border-radius:6px;background:#14b8a6}.notes-panel .primary-button{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:42px;padding:8px 12px}.notes-panel .primary-button>span:first-child{font-size:20px;line-height:1}.notes-keyboard-spacer{height:300px}.ingredient-section-card{margin:12px 5px;padding:12px 5px;border-radius:20px;background:#e5e7eb}.ingredient-section-card .ingredient-section-title{display:block;padding:5px;color:#52645e;font-size:12px;font-style:italic;text-align:center}.ingredient-section-card .ingredient-grid{gap:6px}.ingredient-card{border:0;border-radius:10px;background:#d1d5db;box-shadow:none;transition:background .18s ease,transform .18s ease}.ingredient-card:active{transform:scale(.99)}.ingredient-card-main{gap:14px;padding:8px 14px;background:transparent}.ingredient-card-main{border:0;box-shadow:none;appearance:none}.ingredient-card-main:hover{background:#c8ced1}.ingredient-card-icon{color:#17211f;font-size:20px}.ingredient-card-name{font-size:14px;color:#111827}.ingredient-card-amount{color:#111827}.ingredient-card-actions{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:4px;padding:4px 8px 4px 0}.ingredient-replace{min-width:78px;min-height:30px;padding:4px 11px;border:0;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:12px;cursor:pointer}.ingredient-replace:hover{background:#bfdbfe}.replacement-dots{display:flex;gap:4px;align-items:center}.replacement-dots span{width:6px;height:6px;border-radius:999px;background:#6b7280;transition:width .18s ease,background .18s ease}.replacement-dots span.active{width:14px;background:#14b8a6}.ingredient-card-name{animation:ingredient-name-in .18s ease-out}@keyframes ingredient-name-in{0%{opacity:.2;transform:translate(6px)}to{opacity:1;transform:translate(0)}}.ingredient-card.replacement-state-1 .ingredient-replace{background:#fef3c7;color:#92400e}.ingredient-card.replacement-state-2 .ingredient-replace{background:#fee2e2;color:#991b1b}.ingredient-card.replacement-state-3 .ingredient-replace{background:#dcfce7;color:#166534}.ingredient-card.replacement-state-4 .ingredient-replace{background:#f3e8ff;color:#6b21a8}.ingredient-card-main:focus-visible,.ingredient-card-amount:focus-visible,.ingredient-replace:focus-visible,.replacement-dots:focus-visible{outline:2px solid #0f766e;outline-offset:2px}.ingredients-panel{border:0;border-radius:0;background:transparent;box-shadow:none;padding:5px 0}.app-shell-login{min-height:100dvh;background:#0f172a;color:#f8fafc}.main-surface-login{width:100%;min-height:100dvh;margin:0;padding:0}.login-page{display:grid;grid-template-rows:minmax(0,1fr) 65px;min-height:100dvh;overflow:hidden;background:#0f172a;color:#f8fafc;font-family:Roboto,Segoe UI,sans-serif}.login-body{position:relative;display:grid;min-height:0;place-items:center}.login-scroll-view{width:100%;max-height:100%;overflow-y:auto;padding:24px 16px}.login-content{display:flex;width:min(680px,100%);min-height:100%;margin:auto;flex-direction:column;justify-content:center;align-items:stretch}.login-avatar{display:block;width:214px;height:214px;align-self:center;border:7px solid #fff;border-radius:50%;object-fit:cover}.login-title{margin:0;color:#f8fafc;font-size:28px;font-weight:700;line-height:1.3;text-align:center}.login-instructions{margin:16px 0 0;color:#757575;font-size:16px;line-height:1.5;text-align:center}.login-instructions a{color:#bb86fc;text-decoration:underline}.login-form{display:grid;gap:0;margin-top:32px;padding:0 8px}.login-code-field{position:relative;display:block;padding-bottom:24px}.login-code-field input{width:100%;min-height:56px;padding:14px 48px;border:1px solid #8e98a8;border-radius:15px;background:transparent;color:#f8fafc;caret-color:#d0bcff;font-size:16px;line-height:24px;text-align:center;outline:none}.login-code-field input::placeholder{color:#9ca3af;opacity:1}.login-code-field input:hover{border-color:#f8fafc}.login-code-field input:focus{border:2px solid #d0bcff;padding:13px 47px}.login-code-field input:disabled{color:#77808f;border-color:#596273;cursor:default}.login-field-label{position:absolute;top:-8px;left:13px;z-index:1;padding:0 4px;background:#0f172a;color:#cbd5e1;font-size:12px;line-height:16px}.login-code-field:focus-within .login-field-label{color:#d0bcff}.login-security-icon{position:absolute;top:16px;left:17px;width:24px;height:24px;fill:currentColor;color:#cbd5e1}.login-code-counter{position:absolute;right:12px;bottom:2px;color:#9ca3af;font-size:12px}.login-submit{display:inline-grid;width:100%;min-height:52px;margin-top:0;place-items:center;border:0;border-radius:20px;background:#d0bcff;color:#381e72;font:inherit;font-size:16px;font-weight:600;cursor:pointer}.login-submit:focus-visible{outline:3px solid #fff;outline-offset:2px}.login-submit:disabled{background:#d0bcff61;color:#f8fafc61;cursor:default}.login-error{display:flex;align-items:center;gap:8px;margin-top:16px;padding:12px;border:1px solid #ef9a9a;border-radius:8px;background:#ffebee;color:#d32f2f;font-size:14px}.login-error-icon{display:inline-grid;width:22px;height:22px;flex:0 0 22px;place-items:center;border:2px solid currentColor;border-radius:50%;font-weight:700}.cookie-progress{display:block;width:96px;height:96px;flex:0 0 96px;overflow:hidden;border:3px solid #fff;border-radius:50%;background:transparent;animation:cookie-progress-spin 1s linear infinite}.cookie-progress img{display:block;width:100%;height:100%;object-fit:cover}.cookie-progress-compact{width:20px;height:20px;flex-basis:20px;border-width:1px}@keyframes cookie-progress-spin{to{transform:rotate(1turn)}}.login-legal-footer{display:flex;height:65px;flex-direction:column;align-items:center;justify-content:center;background:#1e293b;box-shadow:0 -1px 3px #00000059;color:#f8fafc;font-size:10px;line-height:1.4;text-align:center}.login-legal-footer button{padding:0;border:0;background:none;color:#2196f3;font:inherit;cursor:pointer}.login-legal-backdrop{position:fixed;inset:0;z-index:80;display:flex;align-items:flex-end;justify-content:center;background:#0009}.login-legal-sheet{width:min(680px,100%);max-height:80dvh;overflow-y:auto;padding:20px;border-radius:20px 20px 0 0;background:#1e293b;color:#f8fafc}.login-legal-header{position:sticky;top:-20px;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:16px;margin:-20px -20px 0;padding:16px 20px 12px;background:#1e293b}.login-legal-header h2{margin:0;font-size:22px}.login-legal-header button{width:48px;height:48px;border:0;border-radius:50%;background:transparent;color:#f8fafc;font-size:28px;cursor:pointer}.login-legal-document{padding:4px 0 12px}.login-legal-document p{margin:14px 0 0;white-space:pre-line;font-size:14px;line-height:1.55}.set-password-page{display:grid;grid-template-rows:minmax(0,1fr) 65px;min-height:100dvh;overflow:hidden;background:#0f172a;color:#f8fafc;font-family:Roboto,Segoe UI,sans-serif}.set-password-body{display:grid;min-height:0;place-items:center}.set-password-scroll-view{width:100%;max-height:100%;box-sizing:border-box;overflow-y:auto;padding:24px 16px}.set-password-content{display:flex;width:min(420px,100%);min-height:100%;margin:auto;flex-direction:column;justify-content:center;align-items:stretch}.set-password-avatar{display:block;width:214px;height:214px;align-self:center;border:7px solid #fff;border-radius:50%;object-fit:cover}.set-password-form{display:grid;align-items:stretch;margin-top:24px}.set-password-form h1{margin:0;color:#f8fafc;font-size:28px;font-weight:700;line-height:36px;text-align:center}.set-password-subtitle{margin:16px 0 0;color:#757575;font-size:16px;line-height:24px;text-align:center}.set-password-field{position:relative;display:block;margin:24px 8px 0}.set-password-field+.set-password-field{margin-top:16px}.set-password-field input{width:100%;min-height:56px;box-sizing:border-box;padding-top:14px;padding-right:52px!important;padding-bottom:14px;padding-left:52px!important;border:1px solid #8e98a8;border-radius:15px;outline:0;appearance:none;background:#0f172a!important;color:#f8fafc!important;-webkit-text-fill-color:#f8fafc!important;caret-color:#d0bcff;color-scheme:dark;font:inherit;font-size:16px;line-height:24px}.set-password-field input::placeholder{color:#9ca3af;opacity:1}.set-password-field input:-webkit-autofill,.set-password-field input:-webkit-autofill:hover,.set-password-field input:-webkit-autofill:focus{border-color:#8e98a8;box-shadow:0 0 0 1000px #0f172a inset;-webkit-text-fill-color:#f8fafc}.set-password-field input:hover:not(:disabled){border-color:#f8fafc}.set-password-field input:focus{padding-top:13px;padding-right:51px!important;padding-bottom:13px;padding-left:51px!important;border:2px solid #d0bcff}.set-password-field input:disabled{border-color:#596273;color:#77808f!important;-webkit-text-fill-color:#77808f!important;cursor:default}.set-password-field input:disabled::placeholder{color:#77808f}.set-password-field-label{position:absolute;top:-8px;left:13px;z-index:1;padding:0 4px;background:#0f172a;color:#cbd5e1;font-size:12px;line-height:16px}.set-password-field:focus-within .set-password-field-label{color:#d0bcff}.set-password-glyph{width:24px;height:24px;fill:currentColor}.set-password-field>.set-password-glyph{position:absolute;top:16px;left:16px;color:#cbd5e1;pointer-events:none}.set-password-visibility{position:absolute;top:7px;right:5px;display:grid;width:42px;height:42px;padding:0;place-items:center;border:0;border-radius:50%;background:transparent;color:#cbd5e1;cursor:pointer}.set-password-visibility:hover:not(:disabled){background:#f8fafc14}.set-password-visibility:focus-visible{outline:2px solid #d0bcff;outline-offset:0}.set-password-visibility:disabled{color:#596273;cursor:default}.set-password-submit{display:inline-grid;min-height:52px;margin:24px 8px 0;padding:14px 24px;place-items:center;border:0;border-radius:20px;background:#d0bcff;color:#381e72;font:inherit;font-size:16px;font-weight:600;cursor:pointer}.set-password-submit:hover:not(:disabled){filter:brightness(1.04)}.set-password-submit:focus-visible{outline:3px solid #fff;outline-offset:2px}.set-password-submit:disabled{background:#d0bcff61;color:#f8fafc61;cursor:default}.set-password-message{display:flex;align-items:center;gap:8px;margin-top:16px;padding:12px;border:1px solid;border-radius:8px;font-size:14px;line-height:20px}.set-password-message .set-password-glyph{flex:0 0 24px}.set-password-message-error{border-color:#ef9a9a;background:#ffebee;color:#d32f2f}.set-password-message-info{border-color:#a5d6a7;background:#e8f5e9;color:#388e3c}@media(max-height:650px){.login-content{justify-content:flex-start}.login-avatar{width:164px;height:164px}.set-password-content{justify-content:flex-start}}@media(max-width:480px){.login-scroll-view{padding:16px 8px}.login-content{width:100%}.login-instructions{padding:0 8px}.set-password-scroll-view{padding:24px 16px}}.ingredient-card-icon img{display:block;width:24px;height:24px;object-fit:contain}.ingredient-image-fallback{padding:28px;object-fit:contain!important;background:#edf1ef!important}.ingredient-card-actions{flex:0 0 auto;padding:4px 0}.ingredient-card-amount{display:flex;align-items:center;flex:0 0 auto;min-width:48px;padding:0 12px 0 4px;border:0;background:transparent;font:inherit;font-size:14px;text-align:right;cursor:pointer}.replacement-dots{display:none}.recipe-floating-back{position:fixed;top:25vh;left:0;z-index:12;display:grid;place-items:center;width:42px;height:42px;border-radius:0 21px 21px 0;background:#14b8a6eb;color:#fff;font-size:27px;line-height:1;text-decoration:none;box-shadow:0 2px 8px #17211f29}.ingredient-sheet{position:relative;padding:28px 20px 20px;border-radius:20px 20px 0 0;animation:ingredient-sheet-open .18s ease-out both}.ingredient-sheet:before{content:"";position:absolute;top:10px;left:50%;width:40px;height:3px;border-radius:999px;background:#9aa7a2;transform:translate(-50%)}@keyframes ingredient-sheet-open{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.notes-save-svg{display:block;width:19px;height:19px}.main-surface-login{max-width:none}.login-page{background:#0f172a}.login-scroll-view{padding:24px 16px}.login-content{width:min(460px,100%);min-height:auto;justify-content:flex-start}.login-version{min-height:16px;color:#737b89;font-size:11px;line-height:16px;text-align:right}.login-avatar{width:112px;height:112px;margin-top:8px;border-width:4px}.login-auth-card{display:flex;margin-top:24px;padding:0 20px;flex-direction:column;align-items:stretch}.login-title{font-size:24px;line-height:32px}.login-subtitle{margin:6px 0 0;color:#6f7279;font-size:16px;line-height:24px;text-align:center}.login-form-fields{display:grid;gap:16px;margin-top:18px}.login-field{position:relative;display:flex;min-height:48px;align-items:center;border:1px solid #f8fafc;border-radius:15px;color:#f8fafc}.login-field:focus-within{border-width:1.6px}.login-field>.login-glyph{position:absolute;left:10px;width:24px;height:24px;pointer-events:none}.login-field input{width:100%;min-height:46px;padding:10px 52px!important;border:0!important;border-radius:15px;background:transparent!important;box-shadow:none!important;color:#f8fafc!important;font-size:16px;outline:0}.login-field input::placeholder{color:#f8fafc;opacity:1}.login-field input:disabled{opacity:.55}.login-password-toggle{position:absolute;right:5px;display:grid;width:42px;height:42px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#f8fafc;cursor:pointer}.login-password-toggle .login-glyph{width:25px;height:25px}.login-code-counter{position:absolute;right:10px;bottom:-19px;color:#9ca3af;font-size:11px}.login-telegram-help{margin:0 0 2px;color:#757575;font-size:16px;line-height:1.45;text-align:center}.login-telegram-help a{color:#d0bcff;text-decoration:underline}.login-action-row{display:flex;gap:12px;margin-top:18px}.login-primary-action,.login-quick-action{display:grid;min-height:48px;overflow:hidden;place-items:center;border-radius:24px;appearance:none;font:inherit;font-size:16px;cursor:pointer}.login-primary-action{flex:2 1 0;border:0;background:#1e293b;color:#cf7cff}.login-quick-action{flex:1 1 0;border:1px solid #fff;background:transparent;color:#fff}.login-quick-action .login-glyph{width:20px;height:20px}.login-primary-action:disabled,.login-quick-action:disabled{opacity:.55;cursor:default}.login-primary-action:focus-visible{outline:2px solid #d0bcff;outline-offset:2px}.login-quick-action:focus-visible{outline:2px solid #d0bcff;outline-offset:-3px}.login-primary-action:active,.login-quick-action:active,.login-secondary-actions button:active{clip-path:inset(0 round 24px)}.login-password-toggle:active{clip-path:circle(50%)}.login-divider{height:1.2px;margin:20px 0;background:#cf7cff}.login-secondary-actions{display:grid;gap:8px}.login-secondary-actions button{display:inline-flex;min-height:48px;overflow:hidden;align-items:center;justify-content:center;gap:8px;padding:10px 24px;border:1.4px solid #cf7cff;border-radius:24px;appearance:none;background:transparent;color:#cf7cff;font:inherit;cursor:pointer}.login-secondary-actions button:disabled{opacity:.5;cursor:default}.login-secondary-actions .login-glyph{width:19px;height:19px}.login-guest-access{display:block;margin-top:18px;padding:0;border:0;background:transparent;text-align:center}.login-guest-access>span{color:#f8fafc;font-size:14px;font-weight:650}.login-guest-access>button{display:grid;width:100%;min-height:48px;box-sizing:border-box;place-content:center;gap:1px;overflow:hidden;padding:10px 24px;border:1.4px solid #7dd3fc;border-radius:24px;background:#38bdf81a;color:#7dd3fc;font:inherit;cursor:pointer;text-align:center}.login-guest-access>button>span,.login-guest-access>button>small{display:block;text-align:center}.login-guest-access>button>small{font-size:11px;font-weight:600;line-height:1.25}.login-guest-access>button:active{clip-path:inset(0 round 24px);background:#38bdf82e}.login-guest-access>button:focus-visible{outline:2px solid #d0bcff;outline-offset:2px}.login-guest-access>button:disabled{opacity:.5;cursor:default}.login-guest-access>small{color:#94a3b8;font-size:11px;line-height:16px}.login-glyph{display:block;fill:currentColor}.login-message{display:grid;grid-template-columns:24px minmax(0,1fr) 28px;gap:8px;align-items:start;margin-top:16px;padding:12px;border:1px solid;border-radius:12px;font-size:14px}.login-message-error{border-color:#ef9a9a;background:#ffebee;color:#d32f2f}.login-message-info{border-color:#a5d6a7;background:#e8f5e9;color:#388e3c}.login-message-icon{display:grid;width:22px;height:22px;place-items:center;border:2px solid currentColor;border-radius:50%;font-weight:700}.login-message button{width:28px;height:28px;padding:0;border:0;background:transparent;color:inherit;font-size:20px;cursor:pointer}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}@media(max-width:480px){.login-scroll-view{padding:20px 16px}.login-auth-card{padding:0}}@media(max-height:820px){.login-scroll-view{padding-top:12px;padding-bottom:16px}.login-avatar{width:92px;height:92px;margin-top:4px}.login-auth-card{margin-top:14px}.login-form-fields{margin-top:12px}.login-action-row{margin-top:14px}.login-divider{margin:14px 0}}.app-shell-main{display:flex;height:100dvh;flex-direction:column;overflow:hidden;background:#0f172a;color:#f8fafc}.topbar-main{position:relative;width:100%;min-height:56px;flex:0 0 56px;overflow:visible;padding:0 4px;border:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.main-profile-button{position:relative;display:grid;width:48px;height:48px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#f8fafc;cursor:pointer}.main-profile-button:hover{background:#ffffff14}.main-profile-button:focus-visible{outline:2px solid #d0bcff;outline-offset:-2px}.main-profile-button>svg{width:24px;height:24px;fill:currentColor}.main-profile-button>img,.main-profile-avatar-fallback{display:grid;box-sizing:border-box;width:38px;height:38px;place-items:center;border:2px solid #fff;border-radius:50%;object-fit:cover}.main-profile-avatar-fallback>svg{width:24px;height:24px;fill:currentColor}.main-profile-button .unread-badge{position:absolute;top:1px;right:1px;min-width:18px;min-height:18px;line-height:16px}.main-surface-main{width:100%;max-width:none;height:auto;min-height:0;flex:1;margin:0;padding:0;overflow:hidden;background:#0f172a}.main-surface-main>.alert{position:fixed;top:58px;right:8px;left:8px;z-index:20}.main-page{display:grid;grid-template-rows:minmax(0,1fr) 65px;width:100%;height:100%;overflow:hidden;background:#0f172a;color:#f8fafc}.main-page-scroll{display:flex;min-height:0;overflow-x:hidden;overflow-y:auto;flex-direction:column;gap:5px;overscroll-behavior-y:contain;scrollbar-color:rgba(208,188,255,.45) transparent;scrollbar-width:thin}.main-page-scroll>*{flex-shrink:0}.main-horizontal-strip{display:flex;width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap;align-items:stretch;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-x pan-y;cursor:grab;-webkit-user-select:none;user-select:none}.main-horizontal-strip:active{cursor:grabbing}.main-horizontal-strip::-webkit-scrollbar{display:none}.main-stories-section{width:100%;padding-top:10px}.main-stories-strip{height:140px;gap:10px;align-items:flex-start;padding:0 10px}.story-circle{display:flex;width:80px;flex:0 0 80px;flex-direction:column;align-items:center;gap:5px;color:#f8fafc;text-align:center;text-decoration:none}.story-circle-ring{position:relative;display:grid;width:80px;height:80px;flex:0 0 80px;place-items:center;padding:0;border-radius:50%}.story-circle-ring-svg{position:absolute;inset:0;display:block;width:80px;height:80px}.story-circle-image{position:relative;z-index:1;display:grid;width:74px;height:74px;place-items:center;padding:3px;overflow:hidden;border-radius:50%;background:#fff}.story-circle-image img,.story-circle-placeholder{display:block;width:68px;height:68px;border-radius:50%;object-fit:cover}.story-circle-placeholder{display:grid;place-items:center;background:#d1d5db;color:#ffffff8c}.story-circle-placeholder .main-inline-icon{width:25px;height:25px}.story-circle-title{display:-webkit-box;width:80px;overflow:hidden;color:#f8fafc;font-size:12px;line-height:14px;-webkit-box-orient:vertical;-webkit-line-clamp:3}.main-stories-placeholder{height:150px;padding-top:10px}.story-placeholder-item{display:flex;width:80px;flex:0 0 80px;flex-direction:column;align-items:center;gap:5px}.story-placeholder-item span{width:80px;height:80px;border-radius:50%;background:#d1d5db}.story-placeholder-item i{width:60px;height:28px;border-radius:6px;background:#d1d5db}.main-quick-actions{position:relative;display:grid;width:min(100%,620px);grid-template-columns:minmax(0,1fr) 62px;gap:8px;margin:0 auto;padding:2px 16px 7px}.main-search-tile{display:flex;width:100%;min-width:0;min-height:132px;margin:0;overflow:hidden;align-items:center;justify-content:center;gap:16px;padding:18px 20px;border:1px solid rgba(208,188,255,.55);border-radius:22px;background:#322344;color:#f8fafc;font-size:17px;font-weight:600;line-height:22px;text-align:center;text-decoration:none;-webkit-tap-highlight-color:transparent}.main-search-tile .main-inline-icon{width:48px;height:48px;flex:0 0 48px;color:#d0bcff}.main-quick-actions-side{display:grid;grid-template-rows:62px 62px;gap:8px}.main-quick-action{display:grid;box-sizing:border-box;width:62px;height:62px;place-items:center;overflow:hidden;padding:10px;border:1px solid rgba(56,189,248,.48);border-radius:18px;background:#1e293b;color:#65c4ee;text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent}.main-quick-action .main-inline-icon{width:100%;height:100%;fill:currentColor}.main-courses-action{border-color:#fbbf248c;color:#f6c74d}.main-search-tile:active,.main-quick-action:active{filter:brightness(.86)}.main-search-tile:focus-visible,.main-quick-action:focus-visible{outline:2px solid #fff;outline-offset:2px}.main-quick-actions-notice{position:fixed;right:16px;bottom:calc(81px + env(safe-area-inset-bottom));left:16px;z-index:150;max-width:560px;margin:auto;padding:13px 16px;border-radius:12px;background:#e6e1e5;color:#1d1b20;box-shadow:0 4px 18px #0000006b;text-align:center;animation:main-quick-actions-notice-in .18s ease-out both}@keyframes main-quick-actions-notice-in{0%{opacity:0;transform:translateY(8px)}}.main-inline-icon{display:block;fill:currentColor}.main-section{width:100%}.main-section>h2{margin:5px 0 5px 20px;color:#f8fafc;font-family:Roboto,Segoe UI,Arial,sans-serif;font-size:18px;font-weight:400;line-height:24px;letter-spacing:.25px}.main-categories-strip{height:140px;gap:10px;padding:10px;background:#1e293b}.main-category-card{position:relative;display:block;width:120px;height:120px;flex:0 0 120px;overflow:hidden;border:1px solid #fff;border-radius:20px;color:#fff;text-decoration:none}.main-category-card img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center;pointer-events:none}.main-category-card span{position:absolute;right:8px;bottom:8px;left:8px;padding:3px;border-radius:10px;background:#0003;font-family:serif;font-size:14px;font-weight:500;line-height:20px;letter-spacing:.1px}.main-collections>h2{margin-bottom:10px;font-size:14px;line-height:20px}.main-books-strip{height:180px;gap:8px;padding:8px 4px;background:#1e293b}.main-book-card{display:block;width:109.333px;height:164px;flex:0 0 109.333px;overflow:hidden;border:1.5px solid #fff;color:#fff;text-decoration:none}.main-book-card img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center;pointer-events:none}.main-dishes-section>h2{margin-top:10px;margin-bottom:10px}.main-dishes-strip{display:flex;height:400px;grid-template-columns:none;gap:10px;padding:10px;background:#1e293b}.main-dish-card{position:relative;display:block;width:200px;height:380px;min-height:0;flex:0 0 200px;overflow:hidden;border:1.5px solid #fff;border-radius:20px;background:#1e293b;color:#fff;text-decoration:none}.main-dish-card>img{display:block;width:100%;height:100%;min-height:0;object-fit:cover;object-position:top center;pointer-events:none}.main-dish-label,.main-dish-caption{position:absolute;left:2px;padding:5px 10px;border-radius:20px;color:#fff;font-family:Calibri,Arial,sans-serif;font-size:12px;line-height:16px}.main-dish-label{top:2px;right:auto}.main-dish-caption{right:2px;bottom:2px;display:flex;flex-direction:column;align-items:center;gap:0;text-align:center}.main-dish-caption strong{display:-webkit-box;overflow:hidden;font-size:12px;font-weight:400;-webkit-box-orient:vertical;-webkit-line-clamp:3}.main-dish-caption small{font-size:12px}.main-dish-label-0,.main-dish-caption-0{background:#9c27b080}.main-dish-label-1,.main-dish-caption-1{background:#2196f380}.main-dish-label-2,.main-dish-caption-2{background:#4caf5080}.main-dishes-loading{height:72px;flex:0 0 72px}.main-dishes-error{display:grid;min-height:72px;place-items:center;color:#f8fafc}.main-page-bottom-space{height:50px;flex:0 0 50px}.main-confidentiality-footer{display:flex;height:65px;padding:0 10px;flex-direction:column;align-items:center;justify-content:center;background:#1e293b;box-shadow:0 -1px 3px #00000059;color:#f8fafc;font-size:10px;line-height:14px;text-align:center}.main-confidentiality-footer button{color:#2196f3}.app-shell-main .legal-dialog{border-color:#475569;background:#1e293b;color:#f8fafc}.app-shell-main .legal-dialog .page-title{color:#f8fafc}.app-shell-recipe-list{min-height:100vh;min-height:100svh;min-height:100dvh;overflow:visible;background:var(--tc-background);color:var(--tc-text);font-family:var(--tc-font-ui)}.main-surface-recipe-list{width:100%;max-width:none;min-height:100vh;min-height:100svh;min-height:100dvh;margin:0;padding:0;overflow:visible;background:var(--tc-background)}.recipe-list-page{--recipe-list-safe-top: env(safe-area-inset-top, 0px);--recipe-list-header-background: linear-gradient(135deg, var(--tc-primary-soft), var(--tc-surface));position:relative;width:100%;min-height:100vh;min-height:100svh;min-height:100dvh;overflow-x:clip;overflow-y:visible;background:var(--tc-background);color:var(--tc-text);font-size:14px;line-height:20px;scrollbar-width:none}.recipe-list-page::-webkit-scrollbar{display:none}.recipe-list-page-restoring .recipe-list-grid{visibility:hidden}.recipe-list-return-loader{position:fixed;inset:calc(80px + var(--recipe-list-safe-top)) 0 0;z-index:14;display:grid;place-items:center;background:var(--tc-background)}.recipe-list-filterbar{position:sticky;top:0;z-index:15;width:100%;height:calc(80px + var(--recipe-list-safe-top));padding-top:var(--recipe-list-safe-top);overflow:hidden;border-bottom:1px solid var(--tc-outline);background:var(--recipe-list-header-background);box-shadow:0 7px 22px #2f292724;transition:height .16s ease}.recipe-list-filterbar-expanded{height:calc(204px + var(--recipe-list-safe-top))}html.capacitor-android .recipe-list-page{--recipe-list-safe-top: 0px}.recipe-list-search-row{display:flex;width:100%;height:80px;align-items:center;gap:4px;padding:8px 8px 8px 16px}.recipe-list-filterbar-expanded .recipe-list-search-row{height:80px}.recipe-list-search-field{display:flex;min-width:0;height:58px;flex:1;align-items:center;overflow:hidden;border:1px solid var(--tc-outline);border-radius:20px;background:var(--tc-surface-raised);box-shadow:0 5px 16px #573e3114}.recipe-list-search-field input{min-width:0;height:58px;flex:1;padding:0;border:0!important;outline:0;background:transparent!important;color:var(--tc-text)!important;font-family:var(--tc-font-ui);font-size:14px;font-weight:500;line-height:20px}.recipe-list-search-field input::placeholder{color:var(--tc-text-muted);font:inherit;opacity:1}.recipe-search-edge-button{display:grid;width:44px;height:58px;flex:0 0 44px;place-items:center;padding:0;border:0;background:transparent;color:var(--tc-text-muted)}button.recipe-search-edge-button{cursor:pointer}.recipe-search-clear{color:var(--tc-primary-strong)}.recipe-search-edge-button svg{width:24px;height:24px;fill:currentColor}.recipe-search-mode{width:48px;flex-basis:48px}.recipe-search-mode img{width:25px;height:25px;object-fit:contain}.recipe-filter-button{position:relative;display:grid;width:58px;height:58px;flex:0 0 58px;place-items:center;padding:0;border:0;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent}.recipe-filter-button:focus{outline:0}.recipe-filter-button:before{content:"";position:absolute;width:43px;height:43px;border:1px solid var(--tc-outline);border-radius:14px;background:var(--tc-secondary-soft);transition:background-color .15s ease,border-color .15s ease,transform .1s ease}.recipe-filter-button[aria-expanded=true]:before{border-color:color-mix(in srgb,var(--tc-primary) 55%,var(--tc-outline));background:var(--tc-primary-soft)}.recipe-filter-button:active:before{transform:scale(.94)}.recipe-filter-button:focus-visible:before{outline:2px solid var(--tc-primary);outline-offset:2px}.recipe-filter-button img{position:relative;z-index:1;width:25px;height:25px;object-fit:contain}.recipe-list-filter-panel{display:grid;height:116px;grid-template-rows:58px 58px}.recipe-filter-row{display:grid;min-width:0;grid-template-columns:139px minmax(0,1fr);align-items:center;padding:0 16px;color:var(--tc-text);font-size:14px;line-height:20px}.recipe-filter-select-wrap{position:relative;display:block;min-width:0}.recipe-filter-select-wrap select{display:block;width:100%;height:50px;padding:0 44px 0 14px;border:1px solid var(--tc-outline)!important;border-radius:20px;outline:0;background:var(--tc-surface-raised)!important;color:var(--tc-text)!important;font-family:inherit;font-size:16px;font-weight:400;line-height:24px;appearance:none}.recipe-filter-row:first-child .recipe-filter-select-wrap:before{content:"–";position:absolute;top:50%;right:46px;z-index:1;color:var(--tc-text);font-size:16px;line-height:1;pointer-events:none;transform:translateY(-55%)}.recipe-filter-book-icon{position:absolute;top:50%;right:12px;width:16px;height:16px;pointer-events:none;fill:var(--tc-secondary);transform:translateY(-50%)}.recipe-list-error{position:fixed;top:88px;right:8px;left:8px;z-index:25}.recipe-list-grid{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;background:var(--tc-background)}.guest-recipe-list-end{display:grid;justify-items:center;gap:9px;max-width:340px;margin:24px auto calc(72px + env(safe-area-inset-bottom,0px));padding:25px 24px 0;border-top:1px solid color-mix(in srgb,var(--tc-outline) 55%,transparent);text-align:center}.guest-recipe-list-end-icon{display:grid;width:44px;height:44px;place-items:center;border:1px solid var(--tc-outline);border-radius:50%;color:var(--tc-text-muted)}.guest-recipe-list-end-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.guest-recipe-list-end strong{max-width:280px;color:var(--tc-text);font-size:15px;line-height:1.4}.guest-recipe-list-end a{color:var(--tc-primary-strong);font-size:13px;font-weight:700;text-decoration:none}.recipe-list-grid .recipe-list-card{position:relative;min-width:0;min-height:0;aspect-ratio:7 / 10;overflow:hidden;border:0;border-radius:0;background:var(--tc-surface-soft);box-shadow:none;color:#fff;transition:none}.recipe-list-grid .recipe-list-card:hover{border:0;box-shadow:none;transform:none}.recipe-list-card .recipe-card-link{position:absolute;inset:0;height:auto}.recipe-list-card .recipe-image-wrap{position:absolute;inset:0;overflow:hidden}.recipe-list-card .recipe-image-wrap:after{display:none}.recipe-list-card .recipe-image-wrap>img{position:relative;z-index:1;display:block;width:100%;height:100%;aspect-ratio:auto;border-radius:0;background:#111827;object-fit:cover;transition:opacity .24s ease}.recipe-list-card:hover .recipe-image-wrap>img{transform:none}.recipe-list-card .recipe-card-body{position:absolute;inset:0;z-index:1;display:block;width:100%;height:100%;padding:0;pointer-events:none}.recipe-list-card .recipe-card-title{position:absolute;top:25px;right:56px;left:16px;display:-webkit-box;width:fit-content;max-width:calc(100% - 72px);max-height:61px;margin:0;overflow:hidden;padding:5px 9px;border-radius:20px;background:#0000004d;color:#fff;font-family:Calibri,Arial,sans-serif;font-size:12px;font-weight:400;line-height:17px;text-overflow:ellipsis;-webkit-box-orient:vertical;-webkit-line-clamp:3}.recipe-list-card .macro-row{position:absolute;bottom:15px;left:15px;width:fit-content;max-width:calc(100% - 76px);padding:6px 9px;border-radius:30px;background:#0000004d;color:#fff;font-family:serif;font-size:12px;line-height:17px}.recipe-list-card.recipe-card-book--1 .recipe-card-title,.recipe-list-card.recipe-card-book--1 .macro-row{background:#2196f34d}.recipe-list-card.recipe-card-book-1 .recipe-card-title,.recipe-list-card.recipe-card-book-1 .macro-row{background:#536dfe4d}.recipe-list-card.recipe-card-book-2 .recipe-card-title,.recipe-list-card.recipe-card-book-2 .macro-row{background:#ff98004d}.recipe-list-card.recipe-card-book-3 .recipe-card-title,.recipe-list-card.recipe-card-book-3 .macro-row{background:#e91e634d}.recipe-list-card.recipe-card-book-4 .recipe-card-title,.recipe-list-card.recipe-card-book-4 .macro-row{background:#4caf504d}.recipe-list-card.recipe-card-book-5 .recipe-card-title,.recipe-list-card.recipe-card-book-5 .macro-row{background:#8bc34a4d}.recipe-list-card.recipe-card-book-6 .recipe-card-title,.recipe-list-card.recipe-card-book-6 .macro-row{background:#ffc1074d}.recipe-list-card .recipe-book-badge{position:absolute;right:8px;bottom:15px;left:auto;z-index:2;display:grid;box-sizing:border-box;width:36px;height:36px;place-items:center;padding:5px;border:3px solid rgba(255,255,255,.5);border-radius:50%;background:transparent}.recipe-list-card .recipe-book-badge img{width:20px;height:20px;border-radius:0;filter:brightness(0) invert(1);object-fit:contain}.recipe-publication-badge{position:absolute;z-index:3;top:10px;left:10px;padding:5px 9px;border:1px solid rgba(255,193,7,.78);border-radius:999px;background:#302208e6;color:#ffd166;font-size:11px;font-weight:800;letter-spacing:.01em}.recipe-list-card>.icon-button{position:absolute;top:17px;right:8px;z-index:3;display:grid;width:48px;height:48px;place-items:center;padding:0;border:0;background:transparent;color:#ffc107;font-family:Segoe UI Symbol,Arial,sans-serif;font-size:28px;line-height:1}.recipe-list-card>.icon-button.icon-button-active{border:0;background:transparent;color:#ffc107}.recipe-list-placeholder{position:relative;display:grid;aspect-ratio:7 / 10;place-items:center;border:1px solid var(--tc-outline);border-radius:10px;background:var(--tc-surface-soft)}.recipe-list-placeholder-1{background:color-mix(in srgb,var(--tc-surface-soft) 88%,var(--tc-primary-soft))}.recipe-list-placeholder-2{background:color-mix(in srgb,var(--tc-surface-soft) 90%,var(--tc-secondary-soft))}.recipe-list-placeholder-3{background:var(--tc-surface-raised)}.recipe-list-placeholder-4{background:color-mix(in srgb,var(--tc-background) 74%,var(--tc-surface-soft))}.recipe-list-placeholder-5{background:color-mix(in srgb,var(--tc-surface-soft) 82%,var(--tc-primary-soft))}.recipe-list-placeholder span{width:26px;height:26px;border:3px solid rgba(255,255,255,.35);border-top-color:var(--tc-primary);border-radius:50%;animation:recipe-list-spin .8s linear infinite}@keyframes recipe-list-spin{to{transform:rotate(360deg)}}.recipe-list-sentinel{width:1px;height:1px}.recipe-list-back{position:fixed;bottom:25vh;bottom:25svh;left:0;z-index:18;display:grid;width:50px;height:50px;place-items:center;border:1px solid var(--tc-outline);border-left:0;border-radius:0 15px 15px 0;background:var(--recipe-list-header-background);color:var(--tc-text);text-decoration:none}.recipe-list-back:hover{box-shadow:0 5px 16px #2f29272e}.recipe-list-back svg{width:28px;height:28px;fill:currentColor;transform:translate(-2px)}.recipe-list-snackbar{position:fixed;right:16px;bottom:24px;left:16px;z-index:30;max-width:560px;margin:0 auto;padding:14px 16px;border-radius:4px;border:1px solid var(--tc-outline);background:var(--tc-surface-raised);color:var(--tc-text);box-shadow:var(--tc-shadow);font-size:14px}:root[data-theme=dark] .recipe-filter-button img,:root[data-theme=dark] .recipe-search-mode img{filter:brightness(0) invert(1)}@media(min-width:600px){.recipe-list-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:800px){.recipe-list-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(min-width:1000px){.recipe-list-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.app-shell-recipe-details{min-height:100dvh;background:#fff;color:#000;font-family:Roboto,Segoe UI,Arial,sans-serif}.main-surface-recipe-details{width:100%;min-height:100dvh;margin:0;padding:0;background:#fff}:root[data-theme=dark] .app-shell-recipe-details,:root[data-theme=dark] .main-surface-recipe-details{background:#0f172a}html:has(.app-shell-recipe-details),body:has(.app-shell-recipe-details){scrollbar-width:none}html:has(.app-shell-recipe-details)::-webkit-scrollbar,body:has(.app-shell-recipe-details)::-webkit-scrollbar{width:0;height:0}.recipe-details-page{display:block;min-height:100dvh;overflow:visible;background:#fff;color:#000;font-size:14px;line-height:20px;animation:none}.recipe-details-page .panel{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.recipe-details-loading{display:grid;min-height:100dvh;place-items:center;background:#fff}.recipe-details-error{display:grid;min-height:100dvh;place-content:center;justify-items:center;gap:8px;padding:24px;color:#000;text-align:center}.recipe-details-error strong{font-size:18px}.recipe-details-error>span{color:#0000008a}.recipe-details-page .detail-media-frame{width:100%}.recipe-details-page .detail-media-carousel,.recipe-details-page .detail-media-carousel>video,.recipe-details-page .detail-media-carousel>.detail-media-image{width:100%;aspect-ratio:1;border-radius:0}.recipe-details-page .detail-action-panel{top:10px;right:10px;gap:2px}.recipe-details-page .detail-action-panel .icon-button,.recipe-details-page .detail-share-button{display:grid;width:48px;height:48px;place-items:center;padding:0;border:0;border-radius:50%;background:#80808099}.recipe-details-page .detail-action-panel .icon-button{color:#ffc107;font-family:Segoe UI Symbol,Arial,sans-serif;font-size:28px;line-height:1}.recipe-details-page .detail-media-handle{border-radius:20px 20px 0 0}.recipe-details-page .detail-heading{padding:20px 16px 18px;text-align:center}.recipe-details-page .detail-heading .page-title{margin:0 auto;color:#000;font-size:26px;font-weight:700;line-height:37px}.recipe-details-page .recipe-categories{display:block;margin:14px 0 0;color:#9e9e9e;font-size:16px;line-height:23px}.recipe-details-page .recipe-categories span{padding:0;border:0;background:transparent}.recipe-details-page .recipe-categories span:not(:last-child):after{content:", "}.recipe-details-page .tati-post{margin:4px 20px 24px;padding:16px 16px 14px 20px;border:1px solid #e9ded6;border-left:4px solid #b86a54;border-radius:8px;background:#f8f3ef;color:#000;animation:detail-description-enter .3s ease-out both}@keyframes detail-description-enter{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.recipe-details-page .tati-post{animation:none}}.recipe-details-page .tati-post-author-row img{width:48px;height:48px}.recipe-details-page .tati-post-author{font-size:16px;line-height:24px}.recipe-details-page .tati-post-collapsed,.recipe-details-page .tati-post .rich-text{color:#000;font-size:16px;line-height:21.6px}.recipe-details-page .tati-post-toggle{font-size:14px;font-weight:500;line-height:20px}.recipe-details-page .tati-post .rich-text,.recipe-details-page .tati-post .rich-text p,.recipe-details-page .tati-post .rich-text div,.recipe-details-page .tati-post .rich-text span{background:transparent!important}.recipe-details-page .recipe-macro-header{display:flex;margin:10px 0 14px;padding:12px 0;flex-direction:row!important;align-items:center!important;justify-content:space-evenly;gap:0;font-family:Roboto,Segoe UI,Arial,sans-serif}.recipe-details-page .portion-control,.recipe-details-page .macro-total{min-width:0;flex:0 1 42%;justify-items:center;color:#000;text-align:center}.recipe-details-page .macro-label{color:#000;font-size:14px;line-height:20px}.recipe-details-page .macro-total strong{color:#000;font-size:14px;font-weight:400;line-height:20px}.recipe-details-page .macro-total .muted{color:#616161;font-size:12px;line-height:17px}.recipe-details-page .macro-header-svg{color:#000}.recipe-details-page .portion-value-button{min-height:30px;padding:4px 10px;border:0;border-radius:999px;background:transparent;font:inherit;cursor:pointer}.recipe-details-page .portion-value-button span{border-bottom:1px dashed currentColor}.recipe-details-page .portion-value-button:focus-visible{outline:2px solid #bb86fc;outline-offset:1px}.recipe-details-page .portion-control .button-row{flex-wrap:nowrap;gap:0}.recipe-details-page .portion-button{width:66px;height:34px;border-radius:18px;background:#eee;color:#bb86fc;font-size:20px}.portion-editor-backdrop{position:fixed;inset:0;z-index:1200;display:grid;padding:20px;place-items:center;background:#0000007a;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.portion-editor-dialog{display:grid;width:min(330px,100%);gap:16px;padding:22px;border:1px solid #ded5e5;border-radius:22px;background:#fff;color:#111;box-shadow:0 18px 60px #0000003d;font-family:Roboto,Segoe UI,Arial,sans-serif}.portion-editor-dialog h2{margin:0;font-size:20px;text-align:center}.portion-editor-dialog label{display:grid;gap:7px;color:#616161;font-size:13px}.portion-editor-dialog input{width:100%;height:48px;padding:8px 14px;border:1px solid #cbbdd5;border-radius:14px;outline:0;background:#faf8fc;color:#111;font:inherit;font-size:20px;text-align:center}.portion-editor-dialog input:focus{border-color:#8c5ab5;box-shadow:0 0 0 3px #8c5ab524}.portion-editor-dialog input[aria-invalid=true]{border-color:#c74747}.portion-editor-dialog p{margin:-8px 0 0;color:#b3261e;font-size:12px;text-align:center}.portion-editor-dialog>div{display:grid;grid-template-columns:1fr 1fr;gap:10px}.portion-editor-dialog>div button{min-height:42px;border:0;border-radius:999px;font:inherit;cursor:pointer}.portion-editor-cancel{background:#eee;color:#424242}.portion-editor-save{background:#8c5ab5;color:#fff}.recipe-scaling-tabs{display:grid;width:min(480px,calc(100% - 32px));margin:12px auto 4px;padding:3px;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));border-radius:20px;background:#eee}.recipe-scaling-tabs button{min-height:38px;padding:6px 12px;border:0;border-radius:17px;background:transparent;color:#424242;font:inherit;font-size:14px}.recipe-scaling-tabs button[aria-selected=true]{background:#fff;color:#6f3ca0;font-weight:700;box-shadow:0 1px 5px #00000029}.recipe-pan-calculator{width:min(520px,calc(100% - 24px));margin:12px auto 16px;padding:14px;border:1px solid #e4d9ed;border-radius:16px;background:#faf7fc;color:#111}.recipe-pan-source{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:5px 12px;padding-bottom:10px;border-bottom:1px solid #e4d9ed}.recipe-pan-source strong{text-align:right}.recipe-pan-source span,.recipe-pan-target label span{color:#616161;font-size:12px}.recipe-pan-material-value{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px}.recipe-pan-material-value>button{display:inline-grid;width:22px;height:22px;padding:0;place-items:center;border:1px solid #a68bb8;border-radius:50%;background:#f2e8f8;color:#6f3ca0;font:inherit;font-size:13px;font-weight:800;cursor:pointer}.recipe-pan-material-value>button:focus-visible{outline:2px solid #6f3ca0;outline-offset:2px}.recipe-pan-info-backdrop{position:fixed;z-index:100;inset:0;display:grid;padding:20px;place-items:center;background:#0f172aa8}.recipe-pan-info-dialog{position:relative;display:grid;width:min(390px,100%);gap:11px;justify-items:center;padding:24px 22px 20px;border-radius:22px;background:#faf7fc;color:#111;box-shadow:0 18px 48px #00000057;text-align:center}.recipe-pan-info-dialog p{margin:0;color:#424242;font-size:14px;line-height:1.55}.recipe-pan-info-dialog a{color:#6f3ca0;font-weight:700}.recipe-pan-info-icon{color:#6f3ca0;font-size:36px;font-weight:800;line-height:1}.recipe-pan-info-close{position:absolute;top:9px;right:11px;width:36px;height:36px;padding:0;border:0;border-radius:50%;background:#efe3f7;color:#616161;font-size:25px;cursor:pointer}.recipe-pan-info-ok{min-width:130px;min-height:44px;margin-top:3px;padding:0 20px;border:0;border-radius:22px;background:#6f3ca0;color:#fff;font:inherit;font-weight:700;cursor:pointer}.recipe-pan-target{display:grid;gap:10px;padding:12px 0;grid-template-columns:repeat(2,minmax(0,1fr))}.recipe-pan-target label{display:grid;gap:5px}.recipe-pan-target input,.recipe-pan-target select{width:100%;min-height:42px;padding:8px 10px;border:1px solid #cbbdd5;border-radius:10px;background:#fff;color:#111;font:inherit}.recipe-pan-portions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 0 12px}.recipe-pan-portions>div:first-child{display:grid;gap:2px}.recipe-pan-portions>div:first-child>span{font-size:14px;font-weight:700}.recipe-pan-portions>div:first-child>small{color:#616161;font-size:11px}.recipe-pan-portions-stepper{display:grid;grid-template-columns:38px 58px 38px;align-items:center;gap:6px}.recipe-pan-portions-stepper button{width:38px;height:38px;border:0;border-radius:50%;background:#e8d9f2;color:#6f3ca0;font:inherit;font-size:22px;cursor:pointer}.recipe-pan-portions-stepper input{width:58px;height:38px;padding:5px;border:1px solid #cbbdd5;border-radius:10px;background:#fff;color:#111;font:inherit;font-weight:700;text-align:center}.recipe-pan-result{display:grid;gap:3px;padding:10px 12px;border-radius:10px;background:#efe3f7;text-align:center}.recipe-pan-result.invalid{background:#fff3e0;color:#8a4b08}.recipe-pan-result span{font-size:13px}.recipe-pan-result small{color:#616161}.recipe-pan-hint{margin:10px 0 0;color:#616161;font-size:12px;line-height:17px}@media(max-width:460px){.recipe-pan-target{grid-template-columns:1fr}}.recipe-details-page .detail-section-divider{display:grid;gap:7px;margin:10px 30px 1px;color:#000;font-size:16px;font-weight:700;line-height:23px;text-align:center}.recipe-details-page .detail-section-divider:before,.recipe-details-page .detail-section-divider:after{width:100%;height:1px;background:#9e9e9e;content:""}.recipe-details-page .detail-section-divider span{grid-row:2}.recipe-details-page .detail-section-divider:after{grid-row:3}.recipe-details-page .ingredient-section-card{margin:5px 10px;padding:5px;border-radius:20px;background:#eee}.recipe-details-page .ingredient-section-card .ingredient-grid{display:grid;gap:0}.recipe-details-page .ingredient-section-title{color:#607d8b;font-size:12px;font-style:italic;font-weight:400;line-height:17px;text-align:center}.recipe-details-page .ingredient-card{position:relative;min-height:42px;margin:4px 0;gap:0;border:0;border-radius:10px;background:#e0e0e0;color:#000}.recipe-details-page .ingredient-card-main{width:100%;align-self:stretch;gap:14px;padding:8px 70px 8px 14px;border-radius:inherit;color:#000;-webkit-tap-highlight-color:transparent}.recipe-details-page .ingredient-card-has-replacements .ingredient-card-main{padding-right:160px}.recipe-details-page .ingredient-card-main:hover,.recipe-details-page .ingredient-card-main:active{background:#00bcd414}.recipe-details-page .ingredient-card-main-sweetener{min-height:50px}.recipe-details-page .ingredient-card-open{display:flex;min-width:0;padding:0;align-items:center;gap:14px;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.recipe-details-page .ingredient-card-open .ingredient-card-name{overflow:hidden;overflow-wrap:normal;text-overflow:ellipsis;white-space:nowrap}.recipe-details-page .ingredient-card-icon{width:24px;height:24px;color:#fff}.recipe-details-page .ingredient-card-icon img{filter:brightness(0) invert(1)}.recipe-details-page .ingredient-card-name,.recipe-details-page .ingredient-card-amount{color:#000;font-size:14px;line-height:20px}.recipe-details-page .ingredient-card-amount{position:absolute;top:50%;right:14px;display:block;min-width:42px;padding:0;pointer-events:none;transform:translateY(-50%);text-align:right}.recipe-details-page .ingredient-card-sugar-equivalent .ingredient-card-amount{min-width:48px;line-height:17px;pointer-events:auto;text-align:center}.recipe-details-page .ingredient-sugar-equivalent-value{display:grid;justify-items:center;line-height:1;text-align:center}.recipe-details-page .ingredient-sugar-equivalent-value small{font-size:10px;font-weight:500;line-height:11px}.recipe-details-page .ingredient-sugar-equivalent-value strong{font-size:14px;font-weight:400;line-height:16px}.recipe-details-page .ingredient-sugar-equivalent-footer{display:flex;align-items:center;justify-content:center;gap:2px}.recipe-details-page .ingredient-sugar-equivalent-taste{font-size:12px}.recipe-details-page .ingredient-sugar-equivalent-taste-copy{display:grid;justify-items:center;line-height:12px;text-align:center}.recipe-details-page .ingredient-card-actions{position:absolute;top:50%;right:66px;z-index:1;flex-direction:row;padding:0;transform:translateY(-50%)}.recipe-details-page .ingredient-replace{overflow:hidden;color:#1565c0;font-size:12px;font-weight:400;line-height:17px;text-transform:lowercase}.recipe-details-page .ingredient-replace:active{border-radius:999px;box-shadow:inset 0 0 0 999px #1565c01f;transform:scale(.98)}.recipe-details-page .ingredient-sweetener-help{display:grid;width:26px;height:26px;flex:0 0 26px;padding:0;place-items:center;border:1px solid #1565c0;border-radius:50%;background:transparent;color:#1565c0;font-size:14px;font-weight:700;cursor:pointer}.recipe-details-page .ingredient-sugar-equivalent-footer .ingredient-sweetener-help{width:14px;height:14px;flex-basis:14px;border-width:1px;font-size:8px;line-height:1}.recipe-details-page .ingredient-sweetener-help:focus-visible{outline:2px solid #0f766e;outline-offset:2px}.recipe-sweetener-info-dialog p{text-align:left}.recipe-details-page .section-list{margin:0}.recipe-details-page .recipe-steps{display:grid;gap:0;padding:8px 0}.recipe-details-page .recipe-steps:before{top:23px;bottom:23px;left:34px;background:#00bcd4}.recipe-details-page .recipe-step{min-height:48px;padding:0 20px 0 60px;border:0;background:transparent;overflow:visible}.recipe-details-page .recipe-step:last-child:after{left:32px;background:#fff}.recipe-details-page .recipe-step-trigger{min-height:48px;padding:10px 0;border-radius:0;background:transparent;color:#000}.recipe-details-page .recipe-step-trigger:not(:disabled):hover{background:#00bcd40f}.recipe-details-page .recipe-step-trigger .step-index{top:9px;left:-40px;width:30px;height:30px;flex-basis:30px;background:#00bcd4}.recipe-details-page .step-description{color:#000;font-size:14px;line-height:20px}.recipe-details-page .step-note{margin:0 0 10px;padding:12px;border-color:#ffe082;border-radius:8px;background:#fff8e1;color:#000000de;font-size:14px;line-height:18.9px}.recipe-details-page .recipe-step-media{margin:0 0 14px}.recipe-details-page .recipe-notes{padding-bottom:8px;background:#fff;color:#000}.recipe-details-page .recipe-comment{padding:10px 30px 20px;color:#000;font-size:16px;line-height:normal}.recipe-details-page .recipe-comment>:first-child{margin-top:0}.recipe-details-page .recipe-comment>:last-child{margin-bottom:0}.recipe-details-page .notes-panel{margin:8px;padding:12px;border:0;border-radius:8px;background:#eee;color:#000}.recipe-details-page .notes-header{color:#000;font-size:14px;font-weight:400;line-height:20px}.recipe-details-page .note-wrap textarea{font-size:16px;line-height:24px}.recipe-details-page .note-wrap textarea::placeholder{font-family:Roboto,Segoe UI,Arial,sans-serif;font-size:14px;font-style:normal;font-weight:400;line-height:21px}.recipe-details-page .ingredient-sheet{width:min(680px,100%);padding:28px 16px 20px}.recipe-details-page .ingredient-sheet .title-row{padding:0}.recipe-details-page .ingredient-sheet .title-row h2{margin:0;font-size:18px}.recipe-details-page .ingredient-sheet-close{width:48px;height:48px;padding:0;border:0;background:transparent;color:#424242;font-size:27px;line-height:1;cursor:pointer}.recipe-details-page .ingredient-sheet-main{display:grid;grid-template-columns:180px minmax(0,1fr)!important;gap:30px;padding:20px 0}.recipe-details-page .ingredient-image-button img{width:180px;height:180px;border-radius:20px;object-fit:cover}.recipe-details-page .ingredient-nutrition{align-content:center;color:#000}.recipe-details-page .ingredient-nutrition span{color:#9e9e9e;font-size:12px}.recipe-details-page .ingredient-nutrition strong{font-weight:400}.recipe-details-page .ingredient-shops{padding:16px 0}.recipe-details-page .ingredient-sheet-comment{margin:0;border-left:4px solid #14b8a6}.recipe-details-page .recipe-floating-back{top:auto;bottom:25vh;bottom:25svh;width:50px;height:50px;border:1px solid #f5f5f5;border-left:0;border-radius:0 15px 15px 0;background:#607d8bcc;box-shadow:none;font-size:0}.recipe-details-page .recipe-floating-back:hover{background:#00bcd480}.recipe-details-page .recipe-floating-back svg{width:28px;height:28px;fill:currentColor;transform:translate(-2px)}.recipe-details-page .pay-stub{min-height:100dvh;padding:24px 20px;place-content:center;color:#000}.recipe-details-page .pay-stub-image{width:210px;height:210px;border:5px solid #fff}.recipe-details-page .pay-stub .page-subtitle{max-width:760px;color:#000;text-align:center}@media(max-width:560px){.recipe-details-page .detail-heading{padding-right:12px;padding-left:12px}.recipe-details-page .detail-heading .page-title{font-size:26px}.recipe-details-page .recipe-macro-header{flex-direction:row!important}.recipe-details-page .portion-button{width:64px}.recipe-details-page .tati-post{margin-right:20px;margin-left:20px}.recipe-details-page .ingredient-sheet-main{grid-template-columns:180px minmax(0,1fr)!important;gap:20px}.recipe-details-page .ingredient-sheet{overflow-x:hidden}}.ingredient-editor-page .ingredient-editor-search input{height:54px;min-height:54px;padding:0 18px 0 50px;border:1px solid #9e9e9e;border-radius:30px;background:#fff;color:#212121}.ingredient-editor-sheet .ingredient-editor-main-fields input,.ingredient-editor-sheet .ingredient-editor-macros input{height:48px;min-height:48px;padding:0 10px;border:0;border-radius:10px;background:#00bcd4;color:#fff}.ingredient-editor-sheet .ingredient-link-fields input{min-height:34px;padding:2px 0;border:0;border-bottom:1px solid #9e9e9e;border-radius:0;background:#fff;color:#212121}.app-shell-admin-users{min-height:100dvh;background:#fff;color:#1d1b20;font-family:Roboto,Segoe UI,Arial,sans-serif}.main-surface-admin-users{width:100%;max-width:none;min-height:100dvh;margin:0;padding:0}.admin-users-page{position:relative;min-height:100dvh;background:#fff;color:#1d1b20}.admin-users-appbar{position:sticky;top:0;z-index:20;display:flex;min-height:72px;align-items:center;gap:4px;padding:8px 4px;background:#fff;color:#000}.admin-users-appbar-button{display:grid;width:48px;height:48px;flex:0 0 48px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#1d1b20;cursor:pointer}.admin-users-appbar-button:hover{background:#1d1b2014}.admin-users-appbar-button:focus-visible{outline:2px solid #00838f;outline-offset:2px}.admin-users-appbar-button svg,.admin-users-fab svg,.admin-user-actions svg{width:24px;height:24px;fill:currentColor}.admin-users-search{position:relative;min-width:0;flex:1}.admin-users-search>svg{position:absolute;top:50%;left:14px;z-index:1;width:24px;height:24px;color:#49454f;fill:currentColor;pointer-events:none;transform:translateY(-50%)}.admin-users-page .admin-users-search input{width:100%;height:56px;min-height:56px;padding:0 14px 0 50px;border:1px solid #79747e;border-radius:4px;outline:0;background:#fff;color:#1d1b20;font:inherit;font-size:16px}.admin-users-page .admin-users-search input::placeholder{color:#49454f;opacity:1}.admin-users-page .admin-users-search input:focus{border:2px solid #00838f;padding-left:49px}.admin-users-list{display:grid;gap:8px;padding:12px 12px 96px}.admin-users-page-state{display:grid;min-height:calc(100dvh - 96px);place-items:center;color:#1d1b20;text-align:center}.admin-user-card{display:block;padding:10px 12px;border:0;border-radius:12px;outline:0;background:#fff;color:#1d1b20;box-shadow:0 1px 2px #0000002e,0 1px 3px #0000001f;cursor:pointer}.admin-user-card:hover{background:#f8f8f8}.admin-user-card:focus-visible{outline:2px solid #00838f;outline-offset:2px}.admin-user-card-main{display:flex;min-width:0;align-items:flex-start;gap:12px}.admin-user-avatar{display:grid;width:40px;height:40px;flex:0 0 40px;place-items:center;overflow:hidden;border-radius:50%;background:#b2ebf2;color:#004d40;font-size:16px}.admin-user-card-copy{min-width:0;flex:1}.admin-user-card-copy strong{display:block;overflow:hidden;color:#1d1b20;font-size:16px;font-weight:500;line-height:24px;text-overflow:ellipsis;white-space:nowrap}.admin-user-card-copy>span{display:-webkit-box;margin-top:4px;overflow:hidden;color:#1d1b20;font-size:14px;line-height:20px;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:3}.admin-user-actions{margin-top:8px}.admin-user-actions>div{display:flex;justify-content:flex-end}.admin-user-actions button{display:grid;width:48px;height:42px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#49454f;cursor:pointer}.admin-user-actions button:hover{background:#1d1b2014}.admin-user-actions button:focus-visible{outline:2px solid #00838f;outline-offset:-2px}.admin-user-actions button:disabled{cursor:wait;opacity:.5}.admin-users-fab{position:fixed;right:24px;bottom:24px;z-index:25;display:grid;width:56px;height:56px;place-items:center;padding:0;border:0;border-radius:16px;background:#b2ebf2;color:#004d40;box-shadow:0 3px 8px #00000047;cursor:pointer}.admin-users-fab:hover{background:#9de4ed}.admin-users-fab:focus-visible{outline:2px solid #00838f;outline-offset:3px}.admin-users-dialog-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;overflow-y:auto;padding:24px 16px;background:#00000052}.admin-users-dialog{width:min(var(--admin-dialog-width),calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:hidden;border-radius:28px;background:#fff;color:#1d1b20;box-shadow:0 8px 30px #00000047}.admin-users-dialog>h2{margin:0;padding:24px 24px 16px;color:#1d1b20;font-size:24px;font-weight:400;line-height:32px}.admin-users-dialog-content{max-height:calc(100dvh - 186px);overflow-y:auto;padding:0 24px;overscroll-behavior:contain}.admin-users-dialog-actions{display:flex;min-height:72px;align-items:center;justify-content:flex-end;gap:8px;padding:12px 24px 16px}.admin-users-text-button,.admin-users-filled-button{min-width:64px;min-height:40px;padding:0 18px;border:0;border-radius:20px;font:inherit;font-size:14px;font-weight:500;letter-spacing:.1px;cursor:pointer}.admin-users-text-button{background:transparent;color:#00838f}.admin-users-filled-button{background:#00838f;color:#fff}.admin-users-text-button:hover{background:#00838f14}.admin-users-filled-button:hover{background:#006f79}.admin-users-text-button:disabled,.admin-users-filled-button:disabled{cursor:default;opacity:.45}.admin-user-editor-form,.admin-user-premium-form{display:grid;gap:10px;padding-top:8px}.admin-users-field{position:relative;display:block;padding-top:7px}.admin-users-field>span{position:absolute;top:0;left:12px;z-index:1;padding:0 4px;background:#fff;color:#49454f;font-size:12px;line-height:16px;pointer-events:none}.admin-users-page .admin-users-field input{width:100%;height:56px;min-height:56px;padding:8px 14px 0;border:1px solid #79747e;border-radius:4px;outline:0;background:#fff;color:#1d1b20;font:inherit;font-size:16px}.admin-users-page .admin-users-field input:focus{border:2px solid #00838f;padding-right:13px;padding-left:13px}.admin-users-field:focus-within>span{color:#00838f}.admin-users-page .admin-users-field input::placeholder{color:#79747e;opacity:1}.admin-users-page .admin-users-field input:disabled{background:#f4f2f4;color:#1d1b2061}.admin-users-field small{display:block;padding:4px 12px 0;color:#b3261e;font-size:12px}.admin-user-switch-row{display:flex;min-height:56px;align-items:center;justify-content:space-between;gap:16px;color:#1d1b20;font-size:16px;cursor:pointer}.admin-user-switch{position:relative;display:block;width:52px;height:32px;flex:0 0 52px;border:2px solid #79747e;border-radius:16px;background:#e6e0e9;transition:background .16s ease,border-color .16s ease}.admin-user-switch i{position:absolute;top:50%;left:6px;width:16px;height:16px;border-radius:50%;background:#79747e;transform:translateY(-50%);transition:left .16s ease,width .16s ease,height .16s ease,background .16s ease}.admin-user-switch-on{border-color:#00838f;background:#00838f}.admin-user-switch-on i{left:24px;width:24px;height:24px;background:#fff}.admin-user-switch-disabled{cursor:default;opacity:.45}.admin-user-books-list{max-height:420px;overflow-y:auto}.admin-user-book-tile{display:flex;min-height:64px;align-items:center;gap:16px;cursor:pointer}.admin-user-book-tile input{width:18px;height:18px;flex:0 0 18px;accent-color:#00838f}.admin-user-book-tile>span{display:grid;gap:2px;min-width:0}.admin-user-book-tile strong{color:#1d1b20;font-size:16px;font-weight:400}.admin-user-book-tile small{color:#49454f;font-size:14px}.admin-users-dialog-loading{display:grid;min-height:140px;place-items:center}.admin-users-dialog-error{min-height:100px;padding:24px 0;color:#b3261e}.admin-users-confirm-copy{margin:8px 0 12px;color:#1d1b20}.admin-user-deletion-preview{display:grid;gap:14px;padding-bottom:4px;color:#1d1b20}.admin-user-deletion-preview>p{margin:0;line-height:1.45}.admin-user-deletion-preview>ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.admin-user-deletion-preview>ul li{display:grid;gap:2px;padding:10px 12px;border-radius:10px;background:#f5f2f6}.admin-user-deletion-preview>ul li>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-user-deletion-preview>ul li strong{font-size:14px;font-weight:600}.admin-user-deletion-preview>ul li span{display:grid;min-width:28px;height:28px;place-items:center;padding:0 7px;border-radius:14px;background:#e7e0e8;font-size:13px;font-weight:700}.admin-user-deletion-preview>ul li small{color:#625b65;font-size:12px;line-height:1.35}.admin-user-token-warning{display:grid;gap:3px;padding:12px;border:1px solid #f0b7b3;border-radius:10px;background:#ffedea;color:#7d2b27}.admin-user-token-warning span{font-size:13px;line-height:1.4}.admin-user-delete-check{display:flex;align-items:flex-start;gap:10px;color:#1d1b20;font-size:14px;line-height:1.4;cursor:pointer}.admin-user-delete-check input{width:18px;height:18px;flex:0 0 18px;margin-top:1px;accent-color:#b3261e}.admin-users-delete-confirm{background:#b3261e}.admin-users-delete-confirm:hover{background:#8c1d18}.admin-users-payment-link{margin:8px 0 12px;color:#1d1b20;line-height:1.5;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text}.admin-users-spinner{display:inline-block;width:20px;height:20px;border:2px solid rgba(0,131,143,.24);border-top-color:#00838f;border-radius:50%;animation:admin-users-spin .8s linear infinite}.admin-users-filled-button .admin-users-spinner,.admin-user-actions .admin-users-spinner{border-color:#ffffff59;border-top-color:currentColor}.admin-users-page-state .admin-users-spinner{width:96px;height:96px;border:3px solid #fff;background:transparent url(/assets/images/cookie.webp) center / cover no-repeat;box-shadow:0 0 0 1px #0000000f}@keyframes admin-users-spin{to{transform:rotate(360deg)}}.admin-users-snackbar{position:fixed;right:16px;bottom:24px;left:16px;z-index:100;max-width:560px;margin:0 auto;padding:14px 16px;border-radius:4px;background:#323232;color:#fff;box-shadow:0 4px 16px #0000004d;font-size:14px}@media(max-width:520px){.admin-users-appbar{padding-right:0;padding-left:0}.admin-users-list{padding-right:8px;padding-left:8px}.admin-users-dialog-backdrop{padding:12px 8px}.admin-users-dialog{width:min(var(--admin-dialog-width),calc(100vw - 16px));max-height:calc(100dvh - 24px)}.admin-users-dialog>h2{padding:20px 20px 14px;font-size:22px}.admin-users-dialog-content{max-height:calc(100dvh - 154px);padding:0 20px}.admin-users-dialog-actions{min-height:64px;padding:10px 20px 14px}}.app-shell-admin-analytics{min-height:100dvh;background:#0f172a;color:#e6e1e5;font-family:Roboto,Segoe UI,Arial,sans-serif}.main-surface-admin-analytics{width:100%;max-width:none;min-height:100dvh;margin:0;padding:0}.admin-analytics-page{min-height:100dvh;background:#0f172a;color:#e6e1e5}.admin-analytics-appbar{position:sticky;top:0;z-index:30;display:flex;min-height:64px;align-items:center;gap:4px;padding:4px 8px;background:#1e293b;color:#e6e1e5}.admin-analytics-appbar>button,.admin-analytics-icon-button{display:grid;width:48px;height:48px;flex:0 0 48px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#e6e1e5;cursor:pointer}.admin-analytics-appbar>button:hover,.admin-analytics-icon-button:hover{background:#e6e1e514}.admin-analytics-appbar>button:focus-visible,.admin-analytics-icon-button:focus-visible{outline:2px solid #d0bcff;outline-offset:2px}.admin-analytics-appbar svg,.admin-analytics-icon-button svg,.admin-analytics-search-button svg,.admin-analytics-log-search label>svg,.admin-analytics-card-header svg{width:24px;height:24px;fill:currentColor}.admin-analytics-appbar h1{margin:0;padding:0 8px;color:#e6e1e5;font-size:22px;font-weight:400;line-height:28px}.admin-analytics-content{padding-bottom:24px}.admin-analytics-section-title{margin:0;padding:18px 16px 8px;color:#e6e1e5;font-size:22px;font-weight:400;line-height:28px}.admin-analytics-summary-toolbar{display:flex;min-height:48px;align-items:center;padding:0 12px}.admin-analytics-summary-toolbar>.admin-analytics-icon-button{margin-left:auto}.admin-analytics-segments{display:inline-flex;height:40px;align-items:stretch;overflow:hidden;border:1px solid #938f99;border-radius:20px}.admin-analytics-segments>button{position:relative;min-width:64px;padding:0 16px;border:0;border-left:1px solid #938f99;background:transparent;color:#e6e1e5;font:inherit;font-size:14px;font-weight:500;white-space:nowrap;cursor:pointer}.admin-analytics-segments>button:first-child{border-left:0}.admin-analytics-segments>button:hover{background:#e6e1e514}.admin-analytics-segments>button:focus-visible{z-index:1;outline:2px solid #d0bcff;outline-offset:-2px}.admin-analytics-segments>.admin-analytics-segment-selected{padding-left:34px;background:#4a4458;color:#eaddff}.admin-analytics-segments>.admin-analytics-segment-selected:before{position:absolute;top:50%;left:14px;width:12px;height:6px;border-bottom:2px solid currentColor;border-left:2px solid currentColor;content:"";transform:translateY(-70%) rotate(-45deg)}.admin-analytics-summary-cards{display:block}.admin-analytics-card,.admin-analytics-log-card{overflow:hidden;border:0;border-radius:12px;background:#1e293b;color:#e6e1e5;box-shadow:0 1px 2px #00000057,0 1px 3px #0000003d}.admin-analytics-card{margin:8px 12px}.admin-analytics-card-header{display:flex;width:100%;min-height:48px;align-items:center;justify-content:space-between;gap:12px;padding:10px 8px 10px 12px;border:0;background:transparent;color:#e6e1e5;font:inherit;text-align:left;cursor:pointer}.admin-analytics-card-header:hover{background:#e6e1e50f}.admin-analytics-card-header:focus-visible{outline:2px solid #d0bcff;outline-offset:-2px}.admin-analytics-card-header>span{min-width:0;flex:1;font-size:16px;font-weight:500;line-height:24px}.admin-analytics-card-header svg{flex:0 0 24px}.admin-analytics-card-body{padding:0 12px 12px;color:#e6e1e5;animation:admin-analytics-expand .18s ease-in-out}.admin-analytics-card-body[hidden]{display:none}.admin-analytics-monthly-controls{overflow-x:auto;margin-bottom:8px;scrollbar-width:none}.admin-analytics-monthly-controls::-webkit-scrollbar{display:none}@keyframes admin-analytics-expand{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.admin-analytics-metric-row{display:flex;min-width:0;align-items:center;padding:3px 0;gap:12px;font-size:14px;line-height:20px}.admin-analytics-metric-row>span{min-width:0;flex:1;overflow:hidden;color:#e6e1e5;text-overflow:ellipsis;white-space:nowrap}.admin-analytics-metric-row>strong{flex:0 0 auto;color:#e6e1e5;font-size:14px;font-weight:500}.admin-analytics-recipe-day{padding-bottom:10px}.admin-analytics-recipe-day:last-child{padding-bottom:0}.admin-analytics-recipe-day>strong{display:block;margin-bottom:4px;color:#e6e1e5;font-size:14px;font-weight:500;line-height:20px}.admin-analytics-loading{display:grid;min-height:88px;place-items:center;padding:24px}.admin-analytics-loading>span,.admin-analytics-pull-indicator>span{display:block;width:36px;height:36px;border:4px solid rgba(208,188,255,.25);border-top-color:#d0bcff;border-radius:50%;animation:admin-analytics-spin .8s linear infinite}@keyframes admin-analytics-spin{to{transform:rotate(360deg)}}.admin-analytics-info{margin:8px 12px;padding:12px;border-radius:8px;background:#49454f;color:#e6e1e5;font-size:14px;line-height:20px}.admin-analytics-info-error{background:#8c1d18;color:#f9dedc}.admin-analytics-logs-toolbar{padding:0 12px 8px}.admin-analytics-log-search{display:flex;align-items:center;gap:8px}.admin-analytics-log-search>label{position:relative;display:block;min-width:0;flex:1;padding-top:7px}.admin-analytics-log-search label>span{position:absolute;top:0;left:48px;z-index:2;padding:0 4px;background:#0f172a;color:#cac4d0;font-size:12px;line-height:16px;pointer-events:none}.admin-analytics-log-search label>svg{position:absolute;top:calc(50% + 3px);left:14px;z-index:1;color:#cac4d0;pointer-events:none;transform:translateY(-50%)}.admin-analytics-page .admin-analytics-log-search input{width:100%;height:56px;min-height:56px;padding:8px 14px 0 50px;border:1px solid #938f99;border-radius:4px;outline:0;background:transparent;color:#e6e1e5;font:inherit;font-size:16px}.admin-analytics-page .admin-analytics-log-search input:focus{border:2px solid #d0bcff;padding-left:49px}.admin-analytics-log-search label:focus-within>span{color:#d0bcff}.admin-analytics-search-button{display:grid;width:48px;height:48px;flex:0 0 48px;place-items:center;padding:0;border:0;border-radius:50%;background:#d0bcff;color:#381e72;cursor:pointer}.admin-analytics-search-button:hover{background:#c5aef8}.admin-analytics-search-button:focus-visible{outline:2px solid #eaddff;outline-offset:2px}.admin-analytics-lines-row{display:grid;grid-template-columns:auto minmax(0,1fr) 48px 48px;align-items:center;gap:0;margin-top:8px}.admin-analytics-log-card{margin:8px 12px 16px}.admin-analytics-log-line{padding:10px;border-top:1px solid rgba(202,196,208,.22);color:#e6e1e5;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;line-height:17px;overflow-wrap:anywhere;white-space:pre-wrap;-webkit-user-select:text;user-select:text}.admin-analytics-log-line:first-child{border-top:0}.admin-analytics-pull-indicator{position:fixed;top:72px;left:50%;z-index:40;display:grid;width:48px;height:48px;place-items:center;border-radius:50%;background:#1e293b;box-shadow:0 2px 8px #00000059;transform:translate(-50%)}.admin-analytics-pull-indicator>span{width:26px;height:26px;border-width:3px}@media(max-width:430px){.admin-analytics-segments>button{min-width:54px;padding-right:12px;padding-left:12px}.admin-analytics-segments>.admin-analytics-segment-selected{padding-left:30px}.admin-analytics-segments>.admin-analytics-segment-selected:before{left:11px}.admin-analytics-lines-row{grid-template-columns:minmax(0,auto) 1fr 44px 44px}.admin-analytics-lines-row .admin-analytics-icon-button{width:44px;flex-basis:44px}}.app-shell-feedback{height:100dvh;min-height:100dvh;overflow:hidden;background:#0f172a;color:#e6e1e5;font-family:Roboto,Segoe UI,Arial,sans-serif}.main-surface-feedback{width:100%;max-width:none;height:100dvh;min-height:100dvh;margin:0;padding:0;overflow:hidden}.feedback-page{position:relative;display:flex;width:100%;height:100dvh;min-height:0;flex-direction:column;overflow:hidden;background:#0f172a;color:#e6e1e5}.feedback-appbar{position:relative;z-index:20;display:flex;width:100%;min-height:64px;flex:0 0 64px;align-items:center;padding:4px 8px;background:#1e293b;color:#e6e1e5}.feedback-appbar>button,.feedback-appbar-actions>button,.feedback-settings-menu>button{display:grid;width:48px;height:48px;flex:0 0 48px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#e6e1e5;cursor:pointer}.feedback-appbar>button:hover,.feedback-appbar-actions>button:hover,.feedback-settings-menu>button:hover{background:#e6e1e514}.feedback-appbar>button:focus-visible,.feedback-appbar-actions>button:focus-visible,.feedback-settings-menu>button:focus-visible{outline:2px solid #d0bcff;outline-offset:2px}.feedback-appbar svg,.feedback-unread-switch>svg,.feedback-message-menu svg,.feedback-popup-menu svg,.feedback-composer button svg{width:24px;height:24px;fill:currentColor}.feedback-appbar h1{min-width:0;flex:1;margin:0;overflow:hidden;padding:0 8px;color:#e6e1e5;font-size:22px;font-weight:400;line-height:28px;text-overflow:ellipsis;white-space:nowrap}.feedback-appbar-actions{display:flex;flex:0 0 auto;align-items:center}.feedback-chat-body{display:flex;min-height:0;flex:1;flex-direction:column}.feedback-message-list,.feedback-thread-list{min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.feedback-message-list{padding:12px 12px 16px}.feedback-loading,.feedback-page-state{display:grid;min-height:100%;place-items:center;padding:24px;color:#e6e1e5;text-align:center}.feedback-loading>span,.feedback-button-spinner{display:block;width:36px;height:36px;border:4px solid rgba(208,188,255,.25);border-top-color:#d0bcff;border-radius:50%;animation:feedback-spin .8s linear infinite}@keyframes feedback-spin{to{transform:rotate(360deg)}}.feedback-bubble-row{display:flex;width:100%;justify-content:flex-start}.feedback-bubble-row-right{justify-content:flex-end}.feedback-bubble{position:relative;max-width:320px;margin:4px 0;padding:8px 12px 6px;border-radius:12px;background:#36343b;color:#e6e1e5;font-size:14px;line-height:20px}.feedback-bubble-right{background:#4f378b;color:#eaddff}.feedback-bubble-main{display:flex;min-width:0;align-items:flex-start}.feedback-bubble p{min-width:0;margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.feedback-bubble a{color:#d0bcff;font-weight:600;text-decoration:underline;text-decoration-color:currentColor}.feedback-bubble a.feedback-link-right{color:#eaddff}.feedback-deleted-message{color:#cac4d0;font-style:italic}.feedback-bubble small{display:block;margin-top:4px;color:#cac4d0;font-size:11px;line-height:16px}.feedback-message-menu{position:relative;width:28px;height:28px;flex:0 0 28px;margin-left:4px}.feedback-message-menu>button{display:grid;width:28px;height:28px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer}.feedback-message-menu>button:hover{background:#ffffff1a}.feedback-message-menu>button svg{width:18px;height:18px}.feedback-popup-menu{position:absolute;top:30px;right:0;z-index:60;min-width:176px;overflow:hidden;padding:8px 0;border-radius:4px;background:#211f26;color:#e6e1e5;box-shadow:0 4px 14px #00000073}.feedback-popup-menu>button{display:flex;width:100%;min-height:48px;align-items:center;gap:12px;padding:0 16px;border:0;background:transparent;color:#e6e1e5;font:inherit;font-size:14px;text-align:left;white-space:nowrap;cursor:pointer}.feedback-popup-menu>button:hover{background:#e6e1e514}.feedback-popup-menu>button svg{width:20px;height:20px}.feedback-composer{display:flex;flex:0 0 auto;align-items:flex-end;gap:8px;padding:8px 12px 12px;background:#0f172a}.feedback-page .feedback-composer textarea{field-sizing:content;width:100%;min-width:0;min-height:56px;max-height:136px;flex:1;resize:none;padding:15px 14px;border:1px solid #938f99;border-radius:4px;outline:0;background:transparent;color:#e6e1e5;font:inherit;font-size:16px;line-height:24px}.feedback-page .feedback-composer textarea::placeholder{color:#cac4d0;opacity:1}.feedback-page .feedback-composer textarea:focus{border:2px solid #d0bcff;padding:14px 13px}.feedback-composer>button{display:grid;width:48px;height:48px;flex:0 0 48px;place-items:center;margin-bottom:4px;padding:0;border:0;border-radius:50%;background:#d0bcff;color:#381e72;cursor:pointer}.feedback-composer>button:hover{background:#c5aef8}.feedback-composer>button:disabled{cursor:default;opacity:.38}.feedback-composer>button:focus-visible{outline:2px solid #eaddff;outline-offset:2px}.feedback-button-spinner{width:18px;height:18px;border-width:2px;border-color:#381e7240;border-top-color:#381e72}.feedback-unread-switch{display:grid;min-height:64px;flex:0 0 64px;grid-template-columns:40px minmax(0,1fr) 52px;align-items:center;gap:16px;padding:4px 16px;color:#e6e1e5;cursor:pointer}.feedback-unread-switch>svg{color:#cac4d0}.feedback-unread-switch>span{font-size:16px}.feedback-unread-switch>i{position:relative;display:block;width:52px;height:32px;border:2px solid #938f99;border-radius:16px;background:#36343b}.feedback-unread-switch>i>b{position:absolute;top:50%;left:6px;width:16px;height:16px;border-radius:50%;background:#938f99;transform:translateY(-50%);transition:left .16s ease,width .16s ease,height .16s ease}.feedback-unread-switch>i.feedback-switch-on{border-color:#d0bcff;background:#d0bcff}.feedback-unread-switch>i.feedback-switch-on>b{left:24px;width:24px;height:24px;background:#381e72}.feedback-divider{height:1px;flex:0 0 1px;background:#cac4d038}.feedback-thread-tile{display:grid;width:100%;min-height:72px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px 16px;border:0;border-top:1px solid rgba(202,196,208,.22);background:transparent;color:#e6e1e5;font:inherit;text-align:left;cursor:pointer}.feedback-thread-tile:first-child{border-top:0}.feedback-thread-tile:hover{background:#e6e1e50f}.feedback-thread-tile:focus-visible{outline:2px solid #d0bcff;outline-offset:-2px}.feedback-thread-avatar{display:grid;width:40px;height:40px;place-items:center;overflow:hidden;border-radius:50%;background:#4f378b;color:#eaddff;font-size:14px}.feedback-thread-copy{display:grid;min-width:0;gap:2px}.feedback-thread-copy strong{overflow:hidden;color:#e6e1e5;font-size:16px;font-weight:400;text-overflow:ellipsis;white-space:nowrap}.feedback-thread-copy small{display:-webkit-box;overflow:hidden;color:#cac4d0;font-size:14px;font-weight:400;line-height:19px;-webkit-box-orient:vertical;-webkit-line-clamp:2}.feedback-thread-trailing{display:flex;min-width:42px;flex-direction:column;align-items:flex-end;justify-content:center;gap:4px}.feedback-thread-trailing time{color:#cac4d0;font-size:12px;white-space:nowrap}.feedback-unread-badge{display:grid;min-width:22px;min-height:22px;place-items:center;padding:0 6px;border-radius:11px;background:#f2b8b5;color:#601410;font-size:12px;font-weight:600}.feedback-settings-menu{position:relative}.feedback-settings-popup{top:48px;right:0;min-width:232px}.feedback-menu-check{display:grid;width:24px;height:24px;flex:0 0 24px;place-items:center}.feedback-dialog-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;overflow-y:auto;padding:24px 16px;background:#0000008f}.feedback-dialog{width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:hidden;border-radius:28px;background:#211f26;color:#e6e1e5;box-shadow:0 8px 30px #0000007a}.feedback-dialog>h2{margin:0;padding:24px 24px 16px;color:#e6e1e5;font-size:24px;font-weight:400;line-height:32px}.feedback-dialog-content{padding:0 24px}.feedback-dialog-content>p{margin:8px 0 12px;color:#e6e1e5}.feedback-page .feedback-dialog-content textarea{width:100%;min-height:56px;max-height:220px;resize:vertical;padding:14px;border:1px solid #938f99;border-radius:4px;outline:0;background:transparent;color:#e6e1e5;font:inherit;font-size:16px;line-height:24px}.feedback-page .feedback-dialog-content textarea:focus{border:2px solid #d0bcff;padding:13px}.feedback-dialog-content>small{display:block;padding-top:4px;color:#cac4d0;font-size:12px;text-align:right}.feedback-dialog-actions{display:flex;min-height:72px;align-items:center;justify-content:flex-end;gap:8px;padding:12px 24px 16px}.feedback-text-button,.feedback-filled-button{min-width:64px;min-height:40px;padding:0 18px;border:0;border-radius:20px;font:inherit;font-size:14px;font-weight:500;cursor:pointer}.feedback-text-button{background:transparent;color:#d0bcff}.feedback-filled-button{background:#d0bcff;color:#381e72}.feedback-text-button:hover{background:#d0bcff14}.feedback-filled-button:hover{background:#c5aef8}.feedback-filled-button:disabled{opacity:.38;cursor:default}.feedback-snackbar{position:fixed;right:16px;bottom:24px;left:16px;z-index:120;max-width:560px;margin:0 auto;padding:14px 16px;border-radius:4px;background:#e6e1e5;color:#1d1b20;box-shadow:0 4px 18px #0000006b;font-size:14px}@media(max-width:420px){.feedback-thread-tile{padding-right:12px;padding-left:12px}.feedback-bubble{max-width:calc(100vw - 72px)}.feedback-dialog-backdrop{padding:12px 8px}.feedback-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 24px)}}.app-update-backdrop{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:20px;background:#020617c7}.app-update-dialog{width:min(100%,420px);max-height:calc(100dvh - 40px);overflow:auto;box-sizing:border-box;padding:22px;border:1px solid rgba(148,163,184,.3);border-radius:20px;background:#172033;color:#e2e8f0;box-shadow:0 24px 70px #00000080}.app-update-dialog h2{margin:0 0 12px;color:#f8fafc;font-size:22px}.app-update-dialog p{margin:10px 0;line-height:1.5}.app-update-notes{white-space:pre-wrap;color:#cbd5e1}.app-update-progress{display:grid;gap:8px;margin-top:18px;color:#cbd5e1;font-size:14px}.app-update-progress progress{width:100%;height:8px;accent-color:#16a34a}.app-update-error{padding:10px 12px;border-radius:10px;background:#dc262629;color:#fecaca}.app-update-status{color:#bbf7d0}.app-update-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.app-update-actions button{min-height:44px;padding:0 18px;border:0;border-radius:12px;background:#334155;color:#f8fafc;font:inherit;font-weight:700}.app-update-actions button:disabled{opacity:.55}.app-update-actions .app-update-confirm{background:#16a34a}.app-shell-profile{min-height:100dvh;background:#0f172a;color:#f8fafc}.app-shell-profile .topbar{border-bottom-color:#94a3b82e;background:#0f172af0}.app-shell-profile .brand,.app-shell-profile .topbar-back-button{color:#f8fafc}.main-surface-profile{width:100%;max-width:none;min-height:calc(100dvh - 56px);margin:0;padding:24px 16px 48px;background:#0f172a;color:#f8fafc}.profile-page{width:min(720px,calc(100% - 24px));margin:0 auto;padding:24px 0 64px;display:grid;gap:16px;color:#f8fafc}.profile-account-readiness{display:grid;justify-items:start;gap:10px}.profile-ready-badge{flex:0 0 auto;padding:7px 11px;border:1px solid #64748b;border-radius:999px;background:#1e293b;color:#cbd5e1;font-size:12px;font-weight:700}.profile-ready-badge-complete{border-color:#22c55e73;background:#16a34a29;color:#86efac}.profile-completion-hint{padding:14px 16px;border:1px solid rgba(250,204,21,.32);border-radius:14px;background:#854d0e38;color:#fef3c7}.profile-completion-hint ul{margin:7px 0 0;padding-left:20px}.profile-card{display:grid;gap:16px;padding:20px;border:1px solid rgba(148,163,184,.22);border-radius:18px;background:#1e293b;box-shadow:0 8px 28px #0000002e}.profile-card h2{margin:0;font-size:20px}.profile-avatar-editor{display:flex;align-items:center;gap:16px}.profile-avatar-editor>div{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.profile-avatar-editor small{flex-basis:100%;color:#94a3b8}.profile-avatar-large{width:96px;height:96px;flex:0 0 96px;border:2px solid rgba(56,189,248,.35);border-radius:50%;object-fit:cover;background:#0f172a}.profile-avatar-fallback{display:grid;place-items:center;color:#7dd3fc;font-size:34px;font-weight:700}.profile-avatar-fallback svg{width:48px;height:48px;fill:currentColor}.profile-danger-link{border:0;background:transparent;color:#c62828;padding:8px;cursor:pointer}.profile-field{display:grid;gap:7px}.profile-field>span{font-weight:700}.profile-field>span i{color:#94a3b8;font-size:12px;font-style:normal;font-weight:400}.profile-field input,.profile-field textarea,.profile-field select,.profile-inline-form input{width:100%;box-sizing:border-box;border:1px solid #64748b;border-radius:12px;padding:12px 14px;outline:0;background:#0f172a;color:#f8fafc;font:inherit}.profile-field input:focus,.profile-field textarea:focus,.profile-field select:focus,.profile-inline-form input:focus{border-color:#38bdf8;box-shadow:0 0 0 3px #38bdf824}.profile-field input::placeholder,.profile-field textarea::placeholder,.profile-inline-form input::placeholder{color:#94a3b8}.profile-field textarea{resize:none}.profile-field small{justify-self:end;color:#94a3b8}.profile-rdi-input{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.profile-rdi-input>span{color:#cbd5e1}.profile-body-composition-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}@media(max-width:520px){.profile-body-composition-fields{grid-template-columns:1fr}}.profile-food-toggle-settings{overflow:hidden;border:1px solid rgba(148,163,184,.2);border-radius:14px;background:#0f172a6b}.profile-setting-toggle{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 14px;padding:13px 14px;cursor:pointer}.profile-setting-toggle+.profile-setting-toggle{border-top:1px solid rgba(148,163,184,.16)}.profile-setting-toggle strong{min-width:0;color:#f8fafc;font-size:14px;line-height:20px}.profile-setting-toggle input{width:20px;height:20px;margin:0;accent-color:#38bdf8;cursor:pointer}.profile-setting-toggle small{grid-column:1 / -1;color:#94a3b8;font-size:12px;font-weight:400;line-height:17px}.profile-setting-toggle:focus-within{background:#0ea5e90f}.profile-autosave-status{min-height:20px;margin:-2px 0 0;color:#94a3b8;font-size:13px;line-height:20px;text-align:right}.profile-autosave-status-saving,.profile-autosave-status-pending{color:#7dd3fc}.profile-autosave-status-saved{color:#86efac}.profile-autosave-status-error{color:#fda4af}.profile-diet-mode{display:grid;gap:13px;padding:20px;border:1px solid rgba(125,211,252,.2);border-radius:18px;background:#1e293b;box-shadow:0 8px 28px #0000002e}.profile-diet-mode.is-active{border-color:#34d39957;background:linear-gradient(135deg,#0596691f,#1e293b 58%)}.profile-diet-mode>div{display:grid;gap:4px}.profile-diet-mode>div span{color:#6ee7b7;font-size:11px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.profile-diet-mode>div strong{font-size:18px}.profile-diet-mode>div small{color:#94a3b8;font-size:12px}.profile-diet-mode>button{width:100%;min-height:52px;border:0;border-radius:13px;color:#fff;font:inherit;font-size:15px;font-weight:800;cursor:pointer}.profile-diet-start{background:linear-gradient(135deg,#0284c7,#0ea5e9);box-shadow:0 7px 20px #0ea5e938}.profile-diet-stop{border:1px solid rgba(251,113,133,.45)!important;color:#fecdd3!important;background:#be185d1f}.profile-diet-dialog-backdrop{position:fixed;inset:0;z-index:140;display:grid;place-items:center;padding:18px;background:#020617b8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:backdrop-in .16s ease-out both}.profile-diet-dialog{display:grid;justify-items:center;width:min(390px,100%);padding:26px 22px 20px;border:1px solid rgba(251,113,133,.28);border-radius:24px;background:#1e293b;color:#f8fafc;box-shadow:0 24px 70px #00000075;text-align:center;animation:dialog-in .2s ease-out both}.profile-diet-dialog-icon{display:grid;width:44px;height:44px;place-items:center;margin-bottom:14px;border:1px solid rgba(251,113,133,.48);border-radius:50%;background:#be185d29;color:#fda4af;font-size:25px;font-weight:800}.profile-diet-dialog h2{margin:0;font-size:22px;font-weight:800}.profile-diet-dialog p{margin:10px 0 0;color:#e2e8f0;line-height:1.45}.profile-diet-dialog .profile-diet-dialog-note{margin-top:7px;color:#94a3b8;font-size:13px}.profile-diet-dialog-actions{display:grid;width:100%;gap:9px;margin-top:22px}.profile-diet-dialog-actions button{min-height:48px;border:0;border-radius:13px;background:#334155;color:#f8fafc;font:inherit;font-weight:750;cursor:pointer}.profile-diet-dialog-actions button:focus-visible{outline:2px solid #7dd3fc;outline-offset:2px}.profile-diet-dialog-actions .profile-diet-dialog-confirm{border:1px solid rgba(251,113,133,.45);background:#be185d2e;color:#fecdd3}.profile-check{display:flex;align-items:flex-start;gap:10px;line-height:1.4}.profile-check input{width:18px;height:18px;margin-top:1px;accent-color:#18a54a}.profile-check a{color:#7dd3fc;text-underline-offset:2px}.profile-public-setting{position:relative;display:flex;align-items:flex-start;gap:8px}.profile-public-setting .profile-check{min-width:0}.profile-help-button{display:grid;width:24px;height:24px;flex:0 0 24px;place-items:center;padding:0;border:1px solid #7dd3fc;border-radius:50%;background:transparent;color:#7dd3fc;font-size:14px;font-weight:800;cursor:pointer}.profile-help-popover{position:absolute;z-index:5;top:32px;left:28px;width:min(430px,calc(100vw - 68px));padding:12px 14px;border:1px solid rgba(125,211,252,.35);border-radius:12px;background:#0f172a;color:#e2e8f0;box-shadow:0 8px 30px #0000005c;font-size:14px;line-height:1.45}.profile-action-button,.profile-secondary-button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:0 18px;border-radius:12px;font:inherit;font-weight:700;text-decoration:none;cursor:pointer}.profile-action-button{border:0;background:#16a34a;color:#fff;box-shadow:0 3px 8px #00000047}.profile-action-button:hover{background:#15803d}.profile-secondary-button{border:1px solid #64748b;background:#334155;color:#f8fafc}.profile-secondary-button:hover{border-color:#94a3b8;background:#475569}.profile-action-button:disabled,.profile-secondary-button:disabled{opacity:.55;cursor:wait}.profile-save-button{justify-self:start;min-width:150px}.profile-account-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.profile-account-row strong{display:grid;justify-items:end;text-align:right}.profile-account-row em{color:#86efac;font-size:12px;font-style:normal}.profile-inline-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.profile-email-change{display:grid;gap:12px;padding-top:4px}.profile-email-change>div{display:flex;justify-content:flex-end;gap:8px}.profile-loading{padding:32px;text-align:center;color:#cbd5e1}.profile-toast{position:fixed;z-index:150;top:max(14px,env(safe-area-inset-top));right:16px;left:16px;display:flex;width:min(560px,calc(100% - 32px));min-height:50px;margin:auto;align-items:center;justify-content:space-between;gap:12px;padding:12px 12px 12px 16px;border:1px solid rgba(134,239,172,.45);border-radius:14px;background:#14532d;color:#f0fdf4;box-shadow:0 8px 30px #00000061;animation:profile-toast-in .18s ease-out both}.profile-toast-error{border-color:#fca5a580;background:#7f1d1d;color:#fef2f2}.profile-toast button{display:grid;width:32px;height:32px;flex:0 0 32px;place-items:center;padding:0;border:0;border-radius:50%;background:#ffffff1f;color:inherit;font-size:22px;cursor:pointer}@keyframes profile-toast-in{0%{opacity:0;transform:translateY(-12px)}}.community-rules-page{width:min(760px,calc(100% - 24px));margin:0 auto;padding:12px 0 64px;color:#e2e8f0}.community-rules-page header{padding:8px 0 18px;border-bottom:1px solid rgba(148,163,184,.24)}.community-rules-page h1{margin:2px 0 8px;color:#fff;font-size:clamp(30px,7vw,44px);line-height:1.1}.community-rules-page h2{margin:0 0 8px;color:#f8fafc;font-size:20px}.community-rules-page p{margin:0;color:#cbd5e1;line-height:1.65}.community-rules-page section{padding:22px 0;border-bottom:1px solid rgba(148,163,184,.16)}.community-rules-page footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;padding-top:24px}.community-rules-eyebrow{color:#4ade80!important;font-size:12px;font-weight:800;letter-spacing:.14em}.admin-profile-avatar-row{display:flex;align-items:center;gap:14px}.admin-profile-avatar-row>img,.admin-profile-avatar-row>span{width:68px;height:68px;border-radius:50%;object-fit:cover;background:#e8eef2}.admin-profile-avatar-row>span{display:grid;place-items:center}.admin-profile-avatar-row svg{width:32px;height:32px;fill:#607d8b}.admin-profile-avatar-row>div{display:grid;justify-items:start;gap:4px}.admin-user-avatar-image{object-fit:cover}.admin-users-field textarea{width:100%;box-sizing:border-box;resize:vertical;font:inherit}@media(max-width:560px){.profile-ready-badge{justify-self:start}.profile-avatar-editor{align-items:flex-start}.profile-avatar-large{width:80px;height:80px;flex-basis:80px}.profile-inline-form{grid-template-columns:1fr}}.app-shell-story-editor{min-height:100vh;background:#fff;color:#212121;font-family:Roboto,Segoe UI,Arial,sans-serif}.main-surface-story-editor{width:100%;max-width:none;min-height:100vh;margin:0;padding:0}.story-editor-page{position:relative;min-height:100vh;background:#fff;color:#212121}.story-editor-page svg{width:24px;height:24px;fill:currentColor}.story-editor-appbar{position:sticky;top:0;z-index:20;display:flex;min-height:64px;align-items:center;padding:4px 8px;background:#fff;color:#000;box-shadow:0 1px #0000000f}.story-editor-icon-button{display:grid;width:48px;height:48px;flex:0 0 48px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#212121;cursor:pointer}.story-editor-icon-button:hover{background:#0000000f}.story-editor-icon-button:focus-visible,.story-editor-page button:focus-visible{outline:2px solid #00838f;outline-offset:2px}.story-editor-title{display:flex;min-width:0;flex:1;align-items:center;justify-content:space-around;gap:16px;padding-right:8px}.story-editor-title h1{margin:0;color:#212121;font-size:22px;font-weight:400;line-height:28px}.story-editor-add-set{display:inline-flex;min-height:44px;align-items:center;gap:8px;padding:0 16px;border:0;border-radius:8px;background:#ccff90;color:#1b1b1b;font:inherit;font-size:14px;font-weight:500;cursor:pointer;box-shadow:0 1px 2px #0000002e}.story-editor-add-set:hover{background:#bfff72}.story-set-list{min-height:calc(100vh - 64px);padding:8px}.story-set-card{margin:4px 0;padding:16px;overflow:hidden;border:1px solid #9e9e9e;border-radius:15px;background:#fff;color:#212121;box-shadow:0 3px 6px #0000001f;transition:background .2s ease,height .3s ease;cursor:pointer}.story-set-card-hidden{background:#e0e0e0}.story-set-summary{display:flex;min-height:24px;align-items:center;justify-content:space-between;gap:16px}.story-set-summary>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.story-set-summary svg{flex:0 0 24px}.story-set-expanded{padding-top:8px;cursor:default}.story-set-status{display:grid;min-height:48px;grid-template-columns:minmax(80px,1fr) minmax(0,1fr) 48px;align-items:center}.story-set-status>span:nth-child(2){color:#616161;text-align:center}.story-save-button{color:#d1c4e9}.story-save-active{color:#673ab7}.story-checkbox{display:inline-flex;min-height:48px;align-items:center;gap:8px;cursor:pointer}.story-checkbox input{width:18px;height:18px;margin:0;accent-color:#00838f}.story-field{position:relative;display:block;padding-top:7px}.story-field>span{position:absolute;top:0;left:12px;z-index:1;padding:0 4px;background:inherit;color:#616161;font-size:12px;line-height:16px;pointer-events:none}.main-surface-story-editor .story-field input,.main-surface-story-editor .story-field textarea{width:100%;min-height:48px;padding:13px 12px 7px;border:0;border-bottom:1px solid #757575;border-radius:4px 4px 0 0;outline:0;background:#00000009;color:#212121;font:inherit;font-size:16px;resize:none}.story-field textarea{line-height:22px}.story-field:focus-within>span{color:#00838f}.main-surface-story-editor .story-field input:focus,.main-surface-story-editor .story-field textarea:focus{border-bottom:2px solid #00838f}.main-surface-story-editor .story-field-outlined input,.main-surface-story-editor .story-field-outlined textarea{border:1px solid #79747e;border-radius:4px;background:#fff}.main-surface-story-editor .story-field-outlined input:focus,.main-surface-story-editor .story-field-outlined textarea:focus{border:2px solid #00838f;padding:12px 11px 6px}.story-field-outlined>span{background:#fff}.story-strip-label{margin:18px 0 4px}.story-editor-strip{display:flex;height:160px;align-items:center;overflow-x:auto;padding:4px 0 10px;scrollbar-width:thin}.story-add-story{display:grid;width:64px;height:64px;flex:0 0 64px;place-items:center;margin:0 8px 0 0;padding:0;border:0;border-radius:50%;background:transparent;color:#424242;cursor:pointer}.story-add-story svg{width:40px;height:40px}.story-editor-tile{position:relative;width:120px;height:150px;flex:0 0 120px;margin:0 4px;padding:0;overflow:hidden;border:0;border-radius:8px;background:#9e9e9e;cursor:pointer}.story-editor-tile>img{display:block;width:100%;height:100%;object-fit:cover}.story-editor-tile-hidden>img{opacity:.4}.story-broken-image{position:absolute;inset:0;display:grid;place-items:center;color:#424242}.story-broken-image[hidden]{display:none}.story-visibility{position:absolute;top:4px;right:4px;display:grid;width:24px;height:24px;place-items:center;padding:4px;border-radius:4px;background:#ffffffb3;color:#212121}.story-visibility svg{width:16px;height:16px}.story-visibility-hidden{background:#00000073;color:#fff}.story-delete-set{display:inline-flex;min-height:48px;align-items:center;gap:8px;margin:8px;padding:0 16px;border:0;border-radius:8px;background:#f44336;color:#fff;font:inherit;font-weight:500;cursor:pointer}.story-sheet-backdrop{position:fixed;inset:0;z-index:80;display:flex;align-items:flex-end;justify-content:center;background:#00000057}.story-editor-sheet{position:relative;width:min(760px,100%);height:66dvh;min-height:30dvh;max-height:90dvh;overflow-y:auto;background:#fff;color:#212121;box-shadow:0 -5px 20px #0000003d}.story-sheet-close{position:sticky;top:8px;z-index:4;display:grid;width:48px;height:48px;place-items:center;margin:8px 8px 0 auto;padding:0;border:0;border-radius:50%;background:#fff;color:#212121;box-shadow:0 1px 4px #0000002e;cursor:pointer}.story-sheet-close-saving{color:#00838f}.story-sheet-content{padding:0 16px 24px}.story-sheet-saving{min-height:18px;color:#757575;font-size:12px;text-align:center}.story-sheet-meta{display:flex;min-height:48px;align-items:center;justify-content:space-between;gap:12px}.story-sheet-editor-row{display:flex;align-items:flex-start;gap:10px}.story-sheet-fields{display:grid;min-width:0;flex:1;gap:5px}.story-sheet-media{display:flex;width:110px;flex:0 0 110px;flex-direction:column;align-items:center}.story-image-upload{position:relative;display:grid;width:100px;height:100px;place-items:center;overflow:hidden;border:1px solid #9e9e9e;border-radius:8px;background:#eee;cursor:pointer}.story-image-upload img{width:100%;height:100%;object-fit:cover}.story-image-upload input{display:none}.story-image-upload>span{position:absolute;inset:0;display:grid;place-items:center;background:#fffc;font-size:12px}.story-recipe-button{display:inline-flex;width:60px;height:40px;align-items:center;justify-content:center;gap:2px;margin:12px 6px 0;padding:0;border:0;border-radius:20px;background:#c2e7ff;color:#001d35;cursor:pointer}.story-delete-story{min-width:78px;min-height:58px;margin:20px 0;padding:8px 16px;border:0;border-radius:20px;background:#f44336;color:#fff;font:inherit;cursor:pointer}.story-dialog-backdrop{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:24px 16px;background:#00000061}.story-dialog{width:min(560px,100%);max-height:calc(100dvh - 48px);overflow-y:auto;border-radius:28px;background:#fff;color:#212121;box-shadow:0 8px 30px #0000004d}.story-dialog h2{margin:0;padding:24px 24px 12px;font-size:24px;font-weight:400}.story-dialog-content{padding:0 24px;line-height:22px}.story-dialog-actions{display:flex;min-height:64px;align-items:center;justify-content:flex-end;gap:8px;padding:8px 16px 16px}.story-dialog-actions button{min-height:40px;padding:0 16px;border:0;border-radius:20px;background:transparent;color:#00838f;font:inherit;font-weight:500;cursor:pointer}.story-dialog-actions .story-dialog-danger{color:#d32f2f}.story-recipe-dialog{width:min(560px,calc(100vw - 32px))}.story-recipe-search{display:flex;align-items:flex-end;gap:8px;padding:0 24px}.story-recipe-search .story-field{flex:1}.story-recipe-search>button{display:grid;width:48px;height:48px;place-items:center;padding:0;border:0;border-radius:12px;background:#c2e7ff;color:#001d35;cursor:pointer}.story-recipe-results{height:200px;overflow-y:auto;padding:16px 24px 0}.story-recipe-results>button{display:flex;width:100%;min-height:56px;align-items:center;gap:8px;margin:4px 0;padding:8px 16px;border:0;border-radius:12px;background:#fff;color:#212121;box-shadow:0 1px 4px #0003;font:inherit;text-align:left;cursor:pointer}.story-recipe-results>button>span{flex:1}.story-recipe-results small{color:#00000042}.story-editor-loading{display:grid;min-height:calc(100dvh - 64px);place-items:center}.story-editor-loading-compact{min-height:200px}.story-editor-loading img{width:96px;height:96px;border:3px solid #fff;border-radius:50%;animation:story-editor-spin 1s linear infinite}@keyframes story-editor-spin{to{transform:rotate(360deg)}}.story-editor-snackbar{position:fixed;right:16px;bottom:24px;left:16px;z-index:150;max-width:560px;margin:auto;padding:14px 16px;border-radius:4px;background:#323232;color:#fff;box-shadow:0 4px 16px #0000004d}.story-editor-snackbar-error{background:#b3261e}@media(max-width:520px){.story-editor-title{gap:8px}.story-editor-title h1{font-size:20px}.story-editor-add-set{padding:0 12px}.story-set-card{padding:14px}.story-sheet-content{padding-right:12px;padding-left:12px}.story-sheet-meta{font-size:13px}.story-sheet-editor-row{gap:6px}.story-sheet-media{width:104px;flex-basis:104px}}.main-surface-recipe-editor .recipe-edit-field{min-height:48px;margin:10px 20px;padding:10px;border:0;border-radius:10px;background:#f3fffe;color:#111}.main-surface-recipe-editor .recipe-edit-inline-field .recipe-edit-field{width:150px;margin:6px 0}.recipe-pan-editor{width:min(560px,calc(100% - 32px));margin:12px auto 18px;padding:16px;border:1px solid #d7cadf;border-radius:14px;background:#faf7fc;color:#111}.recipe-pan-editor-toggle{display:flex;min-height:48px;align-items:center;gap:12px;font-weight:700}.recipe-pan-editor-toggle input{width:20px;height:20px;accent-color:#7b4aa1}.recipe-pan-editor-fields{display:grid;gap:10px;margin-top:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.recipe-pan-editor-fields label{display:grid;gap:5px}.recipe-pan-editor-fields label span,.recipe-pan-editor-fields small{color:#616161;font-size:12px}.recipe-pan-editor-fields input,.recipe-pan-editor-fields select{min-height:44px;padding:8px 10px;border:1px solid #b9a9c3;border-radius:9px;background:#fff;color:#111;font:inherit}.recipe-pan-editor-fields small{grid-column:1 / -1}.recipe-pan-editor-disabled{margin:4px 0 12px;color:#616161;font-size:13px}.recipe-pan-editor-save{min-height:44px;margin-top:12px;padding:8px 16px;border:0;border-radius:22px;background:#7b4aa1;color:#fff;font:inherit;font-weight:700}.recipe-pan-editor-save:disabled{background:#c8becd}.recipe-pan-editor-save.is-saved{background:#2e7d32}.recipe-pan-editor-status{display:block;min-height:16px;margin-top:5px;color:#2e7d32;font-size:12px;font-weight:700}@media(max-width:520px){.recipe-pan-editor-fields{grid-template-columns:1fr}}.main-surface-recipe-editor .recipe-section-card>.recipe-edit-field{width:100%;margin:7px 0;background:#e0f7fa}.main-surface-recipe-editor .recipe-ingredient-card>.recipe-edit-field{width:82px;min-height:44px;margin:0;background:#fff}.main-surface-recipe-editor .recipe-step-description textarea{min-height:56px;padding:10px;border:0;border-radius:10px;background:#a1f3ec}.main-surface-recipe-editor .recipe-step-note textarea{min-height:46px;padding:12px 10px;border:0;border-radius:10px;background:transparent}@media(max-width:600px){.main-surface-recipe-editor .recipe-ingredient-card>.recipe-edit-field{width:72px;margin:0}}.recipe-card-link-checking{pointer-events:none;opacity:.72}.app-shell-passkeys{min-height:100dvh;background:#0f172a;color:#fff;font-family:Roboto,Segoe UI,Arial,sans-serif}.main-surface-passkeys{width:100%;max-width:none;min-height:100dvh;margin:0;padding:0}.passkeys-page{position:relative;display:flex;min-height:100dvh;flex-direction:column;background:#0f172a;color:#fff}.passkeys-page svg{width:24px;height:24px;fill:currentColor}.passkeys-appbar{display:flex;min-height:64px;flex:0 0 64px;align-items:center;padding:4px 8px;background:#0f172a;color:#fff}.passkeys-appbar h1{margin:0 0 0 8px;font-size:22px;font-weight:400;line-height:28px}.passkeys-back,.passkeys-delete{display:grid;width:48px;height:48px;flex:0 0 48px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#fff;cursor:pointer}.passkeys-back:hover,.passkeys-delete:hover{background:#ffffff14}.passkeys-content{display:flex;min-height:0;flex:1;flex-direction:column;padding:16px}.passkeys-message{width:100%;margin:0 0 12px;padding:12px;border:1px solid;border-radius:12px;font-size:14px;line-height:20px}.passkeys-message-warning{border-color:#fed7aa;background:#fff7ed;color:#7c2d12}.passkeys-message-error{border-color:#fecaca;background:#fef2f2;color:#7f1d1d}.passkeys-message+.passkeys-add{margin-top:4px}.passkeys-add{display:inline-flex;width:100%;min-height:40px;align-items:center;justify-content:center;gap:8px;padding:0 24px;border:0;border-radius:20px;background:#263449;color:#d0bcff;box-shadow:0 1px 2px #00000059;font:inherit;font-size:14px;font-weight:500;letter-spacing:.1px;cursor:pointer}.passkeys-add:hover:not(:disabled){background:#2e3d53}.passkeys-add:disabled,.passkeys-delete:disabled{opacity:.38;cursor:default}.passkeys-list-area{position:relative;min-height:160px;flex:1;margin-top:16px}.passkeys-list{display:grid;gap:8px}.passkeys-card{display:grid;min-height:104px;grid-template-columns:40px minmax(0,1fr) 48px;align-items:center;padding:8px 4px 8px 16px;border-radius:12px;background:#1e293b;color:#fff;box-shadow:0 1px 2px #0000004d;margin:4px}.passkeys-card>svg{color:#fff}.passkeys-card-copy{min-width:0;padding:0 8px}.passkeys-card-copy h2{margin:0 0 3px;overflow:hidden;font-size:16px;font-weight:400;line-height:24px;text-overflow:ellipsis;white-space:nowrap}.passkeys-card-copy span{display:block;color:#cac4d0;font-size:14px;line-height:19px}.passkeys-progress,.passkeys-empty{position:absolute;inset:0;display:grid;place-items:center;margin:0;text-align:center}.passkeys-progress>span{width:36px;height:36px;border:4px solid rgba(208,188,255,.25);border-top-color:#d0bcff;border-radius:50%;animation:passkeys-spin .8s linear infinite}@keyframes passkeys-spin{to{transform:rotate(360deg)}}.passkeys-snackbar{position:fixed;right:16px;bottom:max(24px,env(safe-area-inset-bottom));left:16px;z-index:150;max-width:560px;margin:auto;padding:14px 16px;border-radius:4px;background:#323232;color:#fff;box-shadow:0 4px 16px #0000004d;font-size:14px;line-height:20px;animation:passkeys-snackbar-in .18s ease-out both}@keyframes passkeys-snackbar-in{0%{opacity:0;transform:translateY(12px)}}.passkeys-page button:focus-visible{outline:2px solid #d0bcff;outline-offset:2px}.app-shell-food-tracker,.main-surface-food-tracker,.main-surface-food-tracker button,.main-surface-food-tracker input,.main-surface-food-tracker textarea,.main-surface-food-tracker select{font-family:Roboto,Segoe UI,Arial,sans-serif}.main-surface-food-tracker label.food-catalog-search-field>input,.main-surface-food-tracker label.food-catalog-search-field>input:hover,.main-surface-food-tracker label.food-catalog-search-field>input:focus{appearance:none;-webkit-appearance:none;box-sizing:border-box;width:100%;height:100%;min-width:0;min-height:0;padding:0;border:0;border-radius:0;outline:0;background:transparent;box-shadow:none;color:#e6e1e5}.main-surface-food-tracker label.food-catalog-search-field>input:-webkit-autofill{-webkit-text-fill-color:#e6e1e5;box-shadow:0 0 0 1000px #0f172a inset}.food-recipe-scopes{grid-template-columns:repeat(4,minmax(0,1fr))}.food-recipe-scopes button{min-width:0;padding:0 6px;font-size:13px;white-space:nowrap}.food-product-admin-scopes{overflow-x:auto;scrollbar-width:none}.food-product-admin-scopes::-webkit-scrollbar{display:none}.food-product-admin-scopes button{flex:0 0 auto}.food-catalog-result .food-product-publish{min-width:112px;padding:8px 10px;border:0;border-left:1px solid rgba(202,196,208,.14);background:#15803d;color:#fff;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.food-catalog-result .food-product-publish:hover{background:#166534}.food-catalog-result .food-product-publish:disabled{opacity:.6;cursor:default}.food-recipe-scope-block{display:grid;gap:4px}.food-recipe-quota{padding:0 18px;color:#9ca3af;font-size:12px;text-align:right}.user-recipe-builder{min-height:100dvh;background:#0f172a;color:#f8fafc}.user-recipe-builder>header{position:sticky;z-index:30;top:0;display:grid;min-height:58px;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;background:#1e293b;box-shadow:0 2px 8px #00000047}.user-recipe-builder>header>button{display:grid;width:48px;height:48px;padding:0;place-items:center;border:0;border-radius:50%;background:transparent;color:#e6e1e5}.user-recipe-builder>header svg{width:24px;height:24px;fill:currentColor}.user-recipe-builder>header h1{grid-column:2;margin:0;overflow:hidden;font-size:19px;font-weight:500;text-align:center;text-overflow:ellipsis;white-space:nowrap}.user-recipe-builder>main{display:grid;width:min(680px,100%);gap:14px;margin:auto;padding:16px 14px 40px}.user-recipe-builder-section{display:grid;gap:12px;padding:16px;border-radius:16px;background:#172033;box-shadow:0 1px 3px #0000003d}.user-recipe-builder-section h2{margin:0;color:#d8b4fe;font-size:17px}.user-recipe-builder-section h2 small,.user-recipe-builder-section label small{color:#94a3b8;font-size:12px;font-weight:400}.user-recipe-builder-section label{display:grid;gap:6px;color:#cbd5e1;font-size:14px}.main-surface-food-tracker .user-recipe-builder input,.main-surface-food-tracker .user-recipe-builder textarea{box-sizing:border-box;width:100%;min-width:0;padding:12px 13px;border:1px solid #64748b;border-radius:10px;outline:0;background:#1e293b;color:#f8fafc;box-shadow:none;font:inherit;font-size:16px;resize:vertical}.main-surface-food-tracker .user-recipe-builder input:focus,.main-surface-food-tracker .user-recipe-builder textarea:focus{border-color:#d0bcff;box-shadow:inset 0 0 0 1px #d0bcff}.user-recipe-builder-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.user-recipe-category-options{display:flex;flex-wrap:wrap;gap:7px}.user-recipe-category-options button{min-height:34px;padding:0 12px;border:1px solid #64748b;border-radius:18px;background:transparent;color:#cbd5e1;font:inherit;cursor:pointer}.user-recipe-category-options button.active{border-color:#22c55e;background:#22c55e29;color:#fff}.user-recipe-builder-list,.user-recipe-step-list{display:grid;gap:8px}.user-recipe-builder-list article{display:grid;min-height:48px;grid-template-columns:minmax(0,1fr) 94px 40px;align-items:center;gap:8px;padding:4px 4px 4px 12px;border-radius:10px;background:#1e293b}.user-recipe-builder-list article strong{color:#cbd5e1;font-size:14px}.user-recipe-ingredient-amount{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;overflow:hidden;border:1px solid #64748b;border-radius:9px;background:#0f172a}.main-surface-food-tracker .user-recipe-builder .user-recipe-ingredient-amount input{width:100%;min-width:0;min-height:40px;padding:0 6px;border:0;border-radius:0;background:transparent;box-shadow:none;color:#f8fafc;font:inherit;font-size:15px;text-align:right}.user-recipe-ingredient-amount>span{padding:0 8px 0 3px;color:#94a3b8;font-size:13px}.user-recipe-ingredient-amount:focus-within{border-color:#d0bcff;box-shadow:inset 0 0 0 1px #d0bcff}.user-recipe-ingredient-amount.invalid{border-color:#f87171}.user-recipe-builder-list article.user-recipe-ingredient-card{display:grid;min-height:0;grid-template-columns:minmax(0,1fr);gap:10px;padding:10px;border:1px solid rgba(148,163,184,.18);border-radius:14px;background:#1e293b}.user-recipe-ingredient-main{display:grid;grid-template-columns:minmax(0,1fr) 112px 40px;align-items:center;gap:8px}.user-recipe-ingredient-main>span{color:#f8fafc;font-size:14px}.user-recipe-ingredient-delete{color:#f87171!important}.user-recipe-replacements-list{display:grid;gap:7px;padding-top:3px}.user-recipe-replacements-list>div{display:grid;grid-template-columns:minmax(0,1fr) 112px 34px;align-items:center;gap:8px;padding:7px 7px 7px 10px;border-radius:11px;background:#111a2d}.user-recipe-replacements-list>div>span{display:flex;min-width:0;align-items:center;gap:7px;color:#cbd5e1;font-size:13px}.user-recipe-replacements-list>div>span small{color:#a78bfa;font-size:11px}.user-recipe-replacements-list>div>button{width:34px!important;height:34px!important;color:#fda4af!important;font-size:22px}.user-recipe-replacement-amount{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;overflow:hidden;border:1px solid #475569;border-radius:9px;background:#0f172a}.main-surface-food-tracker .user-recipe-builder .user-recipe-replacement-amount input{min-height:36px;padding:0 5px;border:0;border-radius:0;background:transparent;text-align:right}.user-recipe-replacement-amount>span{padding:0 7px 0 2px;color:#94a3b8;font-size:12px}.user-recipe-replacement-add{display:grid;grid-template-columns:minmax(0,1fr) 90px;gap:8px}.user-recipe-replacement-add>button{width:auto!important;min-height:38px;padding:0 12px!important;border:1px solid #64748b!important;border-radius:10px!important;color:#e2e8f0!important;font:inherit;font-size:13px}.user-recipe-replacement-add>button:first-of-type{border-color:#8b5cf6!important;background:#8b5cf629!important}.user-recipe-add-replacement{display:inline-flex!important;width:fit-content!important;height:34px!important;gap:7px;padding:0 11px!important;border:1px dashed #64748b!important;border-radius:17px!important;color:#c4b5fd!important;font:inherit;font-size:13px}.user-recipe-add-replacement:disabled{opacity:.45}.user-recipe-pan-toggle{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px!important}.user-recipe-pan-toggle span{display:grid;gap:4px}.main-surface-food-tracker .user-recipe-builder .user-recipe-pan-toggle input{width:22px;height:22px;accent-color:#8b5cf6}.user-recipe-pan-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:2px}.user-recipe-pan-fields>small{grid-column:1 / -1;color:#94a3b8;line-height:1.45}.main-surface-food-tracker .user-recipe-builder select{box-sizing:border-box;width:100%;min-height:44px;padding:0 11px;border:1px solid #64748b;border-radius:10px;background:#1e293b;color:#f8fafc;font:inherit}.user-recipe-builder-list article button,.user-recipe-step-list article button{display:grid;width:40px;height:40px;padding:0;place-items:center;border:0;border-radius:50%;background:transparent;color:#f87171}.user-recipe-builder-list article svg,.user-recipe-step-list article svg{width:22px;height:22px;fill:currentColor}.user-recipe-publication{margin:14px 0 0;padding:16px;border:1px solid rgba(255,255,255,.14);border-radius:18px;background:#25222a;color:#f3edf7}.user-recipe-publication-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.user-recipe-publication-heading h2{margin:0 0 5px;font-size:17px}.user-recipe-publication-heading span{color:#b9f6ca;font-size:14px;font-weight:700}.user-recipe-publication-heading small{color:#cac4d0;white-space:nowrap}.user-recipe-publication>p{margin:12px 0 0;color:#cac4d0;line-height:1.45}.user-recipe-publication-rejected .user-recipe-publication-heading span{color:#ffb4ab}.user-recipe-publication-pending .user-recipe-publication-heading span{color:#d0bcff}.user-recipe-publication-reason{margin-top:12px;padding:12px;border-radius:12px;background:#ffb4ab1a;color:#ffdad6}.user-recipe-publication-reason p{margin:5px 0 0;white-space:pre-wrap}.user-recipe-publication-hint{color:#f6d28b!important}.user-recipe-publication-error{margin-top:12px;padding:10px 12px;border-radius:10px;background:#8c1d18;color:#f9dedc}.food-publication-profile-button{display:inline-flex;width:100%;min-height:46px;margin-top:10px;align-items:center;justify-content:center;padding:0 16px;border:1px solid #b9f6ca;border-radius:14px;background:#b9f6ca1a;color:#b9f6ca;font:inherit;font-weight:700;cursor:pointer}.food-publication-profile-button:hover{background:#b9f6ca2b}.food-publication-profile-button:focus-visible{outline:2px solid #b9f6ca;outline-offset:2px}.food-recipe-publication-profile-hint{margin:12px 0 0;color:#f6d28b;line-height:1.45}.food-recipe-publication-standalone .food-quantity-save{width:100%;margin:12px 0 0}.food-recipe-publication-standalone .user-recipe-delete{margin-top:12px}.user-recipe-publication-actions{margin-top:14px}.user-recipe-publication-actions .food-quantity-save{margin:0;width:100%}.user-recipe-publication-withdraw{width:100%;min-height:46px;border:1px solid #ffb4ab;border-radius:14px;background:transparent;color:#ffb4ab;font-weight:700}.food-recipe-publication{margin:14px 0;padding:15px;border:1px solid rgba(255,255,255,.13);border-radius:16px;background:#25222a}.food-recipe-publication>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px}.food-recipe-publication h2{margin:0;font-size:17px}.food-recipe-publication>div:first-child span{color:#b9f6ca;font-size:13px;font-weight:700}.food-recipe-publication.status-pending>div:first-child span{color:#d0bcff}.food-recipe-publication.status-rejected>div:first-child span{color:#ffb4ab}.food-recipe-publication>p{margin:10px 0 0;color:#cac4d0;line-height:1.45}.food-recipe-publication-reason{margin-top:10px;padding:10px;border-radius:10px;background:#ffb4ab1a;color:#ffdad6}.food-recipe-publication-reason p{margin:4px 0 0;white-space:pre-wrap}.food-recipe-publication-error{margin-top:10px;color:#ffb4ab}.food-recipe-publication>a{display:inline-flex;margin-top:9px;color:#b9f6ca;font-weight:700}.food-recipe-publication-actions{margin-top:12px}.food-recipe-publication-actions button{width:100%;min-height:44px;border-radius:14px;font-weight:700}.food-recipe-publication-actions .publish{border:0;background:#2e7d32;color:#fff}.food-recipe-publication-actions .withdraw{border:1px solid #ffb4ab;background:transparent;color:#ffb4ab}.food-community-filters{display:flex;align-items:center;gap:8px;overflow-x:auto;padding:8px 12px 10px}.food-community-filters label{flex:0 0 auto}.food-community-filters label>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.food-community-filters select{min-height:38px;padding:0 34px 0 12px;border:1px solid #79747e;border-radius:19px;background:#25222a;color:#e6e1e5;font:inherit}.food-community-author-filter span{margin-left:5px;font-size:19px;line-height:1}.food-community-recipe-list{display:grid;gap:14px}.food-community-recipe-card{overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:#25222a;box-shadow:0 8px 22px #0000002e}.food-community-recipe-main{display:grid;width:100%;grid-template-columns:minmax(120px,38%) 1fr}.food-community-recipe-image-button{display:block;min-width:0;min-height:185px;padding:0;overflow:hidden;border:0;background:transparent;cursor:pointer}.food-community-recipe-image-button>img{display:block;width:100%;height:100%;object-fit:cover}.food-community-recipe-copy{display:flex;min-width:0;padding:13px 12px 10px;flex-direction:column}.food-community-recipe-details-button{min-width:0;flex:1;padding:0;border:0;background:transparent;color:#e6e1e5;text-align:left;cursor:pointer}.food-community-recipe-copy h3{display:-webkit-box;overflow:hidden;margin:0 0 10px;font-size:18px;line-height:23px;-webkit-box-orient:vertical;-webkit-line-clamp:2}.food-community-recipe-macros{display:flex;flex-wrap:wrap;gap:5px 9px;font-size:12px}.food-community-recipe-macros strong{color:#b9f6ca}.food-community-recipe-macros span{color:#cac4d0}.food-community-recipe-details-button>small{display:block;margin-top:9px;color:#938f99}.food-community-recipe-categories{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.food-community-recipe-categories span{max-width:100%;overflow:hidden;padding:4px 7px;border-radius:9px;background:#36313b;color:#cac4d0;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.food-community-recipe-social{display:flex;min-width:0;min-height:40px;margin-top:10px;align-items:center;justify-content:space-between;gap:6px}.food-community-recipe-author{display:flex;width:auto;min-width:0;min-height:36px;flex:1;padding:0;align-items:center;gap:9px;border:0;background:transparent;color:#e6e1e5;text-align:left}.food-community-recipe-author img,.food-community-recipe-author>span{display:grid;width:28px;height:28px;flex:0 0 28px;place-items:center;border-radius:50%;object-fit:cover;background:#6750a4;color:#fff;font-weight:800}.food-community-recipe-author strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.food-community-recipe-social .food-community-like-control{padding:0}.food-community-recipe-social .food-community-like-button{min-width:48px;height:34px;padding:0 8px}.food-community-like-control{display:grid;flex:0 0 auto;padding:6px 10px 6px 4px;justify-items:center}.food-community-like-button{display:inline-flex;min-width:52px;height:38px;padding:0 10px;align-items:center;justify-content:center;gap:5px;border:1px solid rgba(255,255,255,.16);border-radius:19px;background:transparent;color:#cac4d0;font:inherit;cursor:pointer}.food-community-like-button svg{width:21px;height:21px;fill:transparent;stroke:currentColor;stroke-width:1.8}.food-community-like-button span{min-width:1ch}.food-community-like-button.is-liked{border-color:#fb71858c;background:#f43f5e1f;color:#fda4af}.food-community-like-button.is-liked svg{fill:currentColor}.food-community-like-button:disabled{opacity:.55;cursor:wait}.food-community-like-control>small{color:#ffb4ab;font-size:10px}.food-community-recipe-detail-social{display:flex;justify-content:flex-end}.food-community-recipe-detail-social .food-community-like-control{padding:0}.food-community-shared-page{min-height:100dvh;background:#0f172a;color:#f8fafc}.app-shell-community-recipe{background:#0f172a}.main-surface-community-recipe{width:100%;margin:0;padding:0}.main-surface-community-recipe>.page-state{min-height:100dvh;padding:24px}.food-community-shared-page>.food-quantity-appbar{position:sticky;top:0;z-index:20;gap:8px}.food-community-shared-page>.food-quantity-appbar>button{display:grid;width:48px;height:48px;flex:0 0 48px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:#e6e1e5;cursor:pointer}.food-community-shared-page>.food-quantity-appbar>strong{min-width:0;flex:1;overflow:hidden;font-size:17px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.food-community-shared-page>main{width:min(100%,760px);margin:0 auto;padding:18px 16px 36px}.food-community-recipe-view-author{display:flex;flex-direction:column;gap:2px;margin-top:7px}.food-community-recipe-view-author span{color:#b9f6ca;font-size:12px;font-weight:700}.food-community-recipe-view-author strong{color:#cac4d0;font-size:14px}.food-community-recipe-detail-author{display:flex;align-items:flex-start;gap:12px;padding:14px;border-radius:14px;background:#25222a;color:#e6e1e5;text-decoration:none}.food-community-recipe-detail-author>img,.food-community-recipe-detail-author>span{display:grid;width:46px;height:46px;flex:0 0 46px;place-items:center;border-radius:50%;object-fit:cover;background:#6750a4;color:#fff;font-size:18px;font-weight:800}.food-community-recipe-detail-author div{min-width:0}.food-community-recipe-detail-author small{display:block;color:#938f99}.food-community-recipe-detail-author strong{display:block;margin-top:2px}.food-community-recipe-detail-author p{margin:6px 0 0;color:#cac4d0;line-height:1.4}.food-community-recipe-detail-categories{display:flex;flex-wrap:wrap;gap:6px}.food-community-recipe-detail-categories span{padding:6px 9px;border-radius:10px;background:#36313b;color:#cac4d0;font-size:12px}.community-author-page{min-height:calc(100vh - 64px);padding:28px 16px;background:#141217;color:#e6e1e5}.community-author-card{width:min(520px,100%);margin:0 auto;padding:28px 22px;border:1px solid rgba(255,255,255,.12);border-radius:22px;background:#25222a;text-align:center}.community-author-card>img,.community-author-card>span{display:grid;width:104px;height:104px;margin:0 auto;place-items:center;border-radius:50%;object-fit:cover;background:#6750a4;color:#fff;font-size:38px;font-weight:800}.community-author-card h1{margin:18px 0 10px;font-size:27px}.community-author-card p{margin:0;color:#cac4d0;line-height:1.55;white-space:pre-wrap}.community-author-card .community-author-empty{color:#938f99}.community-author-state{padding:48px 20px;color:#cac4d0;text-align:center}.community-author-state.error{color:#ffb4ab}@media(max-width:420px){.food-community-recipe-main{grid-template-columns:132px minmax(0,1fr)}.food-community-recipe-image-button{min-height:185px}.food-community-recipe-copy{padding:12px 10px 9px}}.app-shell-admin-publications,.main-surface-admin-publications{min-height:100%;background:#141217}.main-surface-admin-publications{padding:0}.admin-publications-page{min-height:100vh;background:#141217;color:#e6e1e5}.admin-publications-appbar{position:sticky;z-index:10;top:0;display:grid;grid-template-columns:48px 1fr 48px;align-items:center;min-height:72px;padding:8px 12px;background:#211f24;box-shadow:0 1px #ffffff14}.admin-publications-appbar button{display:grid;width:44px;height:44px;place-items:center;border:0;border-radius:50%;background:transparent;color:#e6e1e5}.admin-publications-appbar svg{width:25px;height:25px;fill:currentColor}.admin-publications-appbar h1{margin:0;font-size:20px;line-height:26px}.admin-publications-appbar span{color:#cac4d0;font-size:13px}.admin-publications-filters{position:sticky;z-index:9;top:72px;display:flex;gap:6px;overflow-x:auto;padding:10px 12px;background:#1b181e}.admin-publications-filters button{min-height:38px;padding:0 15px;border:1px solid #49454f;border-radius:20px;background:transparent;color:#cac4d0;white-space:nowrap}.admin-publications-filters button.active{border-color:#b9f6ca;background:#b9f6ca1f;color:#b9f6ca}.admin-publications-content{display:grid;grid-template-columns:minmax(280px,380px) minmax(0,1fr);min-height:calc(100vh - 130px)}.admin-publications-list{border-right:1px solid rgba(255,255,255,.1);background:#1b181e}.admin-publication-list-item{display:block;width:100%;padding:15px 16px;border:0;border-bottom:1px solid rgba(255,255,255,.09);background:transparent;color:inherit;text-align:left}.admin-publication-list-item:hover,.admin-publication-list-item.active{background:#d0bcff1a}.admin-publication-list-item>div{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.admin-publication-list-item strong{font-size:15px;line-height:20px}.admin-publication-list-item p{margin:7px 0 4px;color:#cac4d0}.admin-publication-list-item small{color:#938f99}.admin-publication-status{display:inline-flex;flex:0 0 auto;padding:3px 8px;border-radius:9px;background:#36313b;color:#e6e1e5;font-size:11px;font-weight:700}.admin-publication-status.status-pending{background:#d0bcff2e;color:#eaddff}.admin-publication-status.status-approved{background:#b9f6ca24;color:#b9f6ca}.admin-publication-status.status-rejected{background:#ffb4ab24;color:#ffb4ab}.admin-publications-detail{min-width:0}.admin-publication-page-state{padding:36px 20px;color:#cac4d0;text-align:center}.admin-publication-page-state.error{color:#ffb4ab}.admin-publication-review{width:min(760px,100%);margin:0 auto;padding:22px 24px 48px}.admin-publication-review-close{flex:0 0 auto;min-height:36px;padding:0 12px;border:1px solid #79747e;border-radius:12px;background:transparent;color:#e6e1e5}.admin-publication-review-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.admin-publication-review-meta{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:8px 12px}.admin-publication-review>header small{color:#938f99}.admin-publication-review h2{margin:14px 0 6px;font-size:28px}.admin-publication-review>header p{margin:0;color:#cac4d0}.admin-publication-gallery{display:flex;gap:10px;overflow-x:auto;margin:20px 0;scroll-snap-type:x mandatory}.admin-publication-gallery figure{position:relative;flex:0 0 min(80%,520px);height:310px;margin:0;overflow:hidden;border-radius:16px;background:#25222a;scroll-snap-align:start}.admin-publication-gallery img{width:100%;height:100%;object-fit:cover}.admin-publication-gallery figcaption{position:absolute;right:10px;bottom:10px;padding:4px 9px;border-radius:10px;background:#000000a6;color:#fff;font-size:12px}.admin-publication-review section{margin-top:22px}.admin-publication-review h3{margin:0 0 10px;font-size:17px}.admin-publication-review section>p{color:#cac4d0;line-height:1.55;white-space:pre-wrap}.admin-publication-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.admin-publication-facts div{padding:12px;border-radius:12px;background:#25222a}.admin-publication-facts span{display:block;margin-bottom:5px;color:#938f99;font-size:12px}.admin-publication-ingredients{margin:0;padding:0;list-style:none}.admin-publication-ingredients li{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.09)}.admin-publication-ingredients li>span{display:grid;gap:4px}.admin-publication-ingredients li small{color:#b9a7d4;font-size:12px}.admin-publication-steps{margin:0;padding-left:24px}.admin-publication-steps li{padding:7px 0 7px 5px;color:#cac4d0;line-height:1.5}.admin-publication-categories{display:flex;flex-wrap:wrap;gap:7px}.admin-publication-categories span{padding:6px 10px;border-radius:12px;background:#36313b}.admin-publication-old-reason{padding:14px;border-radius:14px;background:#ffb4ab1a}.admin-publication-decision{padding:16px;border-radius:16px;background:#25222a}.admin-publication-decision label span{display:block;margin-bottom:8px;font-weight:700}.admin-publication-decision textarea{box-sizing:border-box;width:100%;padding:12px;border:1px solid #79747e;border-radius:12px;outline:0;resize:vertical;background:#1b181e;color:#e6e1e5;font:inherit}.admin-publication-decision textarea:focus{border:2px solid #d0bcff;padding:11px}.admin-publication-decision>div:last-child{display:flex;justify-content:flex-end;gap:10px;margin-top:12px}.admin-publication-decision button{min-height:44px;padding:0 20px;border-radius:14px;font-weight:700}.admin-publication-decision .reject{border:1px solid #ffb4ab;background:transparent;color:#ffb4ab}.admin-publication-decision .approve{border:0;background:#2e7d32;color:#fff}.admin-publication-remove{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px 18px;padding:16px;border:1px solid rgba(255,180,171,.25);border-radius:16px;background:#ffb4ab14}.admin-publication-remove p{margin:5px 0 0;color:#cac4d0;line-height:1.45}.admin-publication-remove button{min-height:44px;padding:0 18px;border:1px solid #ffb4ab;border-radius:14px;background:transparent;color:#ffb4ab;font-weight:700}.admin-publication-remove button:disabled{opacity:.55}.admin-publication-remove .admin-publication-error{grid-column:1 / -1;margin-top:0}.admin-publication-error{margin-top:10px;color:#ffb4ab}@media(max-width:760px){.admin-publications-content{display:block}.admin-publications-list{border-right:0}.admin-publications-detail{min-height:30vh}.admin-publications-detail:has(.admin-publication-review){position:fixed;z-index:30;inset:0;overflow-y:auto;background:#141217}.admin-publication-review{padding:18px 14px 40px}.admin-publication-review:before{content:"Снимок рецепта";display:block;margin-bottom:14px;color:#cac4d0;font-weight:700}.admin-publication-facts{grid-template-columns:repeat(2,1fr)}.admin-publication-gallery figure{flex-basis:88%;height:240px}.admin-publication-remove{grid-template-columns:1fr}.admin-publication-remove button{width:100%}}.user-recipe-add-row{display:grid;grid-template-columns:minmax(0,1fr) 78px 44px;gap:8px}.user-recipe-ingredient-picker{position:relative;min-width:0}.user-recipe-ingredient-picker>input{height:100%}.user-recipe-ingredient-suggestions{position:absolute;z-index:50;top:calc(100% + 4px);right:0;left:0;max-height:260px;overflow-y:auto;border:1px solid #64748b;border-radius:10px;background:#1e293b;box-shadow:0 10px 24px #0006;overscroll-behavior:contain}.user-recipe-ingredient-suggestions button,.user-recipe-ingredient-suggestions>span{display:block;box-sizing:border-box;width:100%;min-height:44px;padding:11px 13px;border:0;border-bottom:1px solid rgba(148,163,184,.2);border-radius:0;background:transparent;color:#f8fafc;font:inherit;text-align:left}.user-recipe-ingredient-suggestions button:last-child{border-bottom:0}.user-recipe-ingredient-suggestions button:hover,.user-recipe-ingredient-suggestions button.active{background:#334155}.user-recipe-ingredient-suggestions>span{color:#94a3b8}.user-recipe-add-row>button{display:grid;width:44px;height:44px;padding:0;place-items:center;align-self:end;border:0;border-radius:50%;background:#16a34a;color:#fff}.user-recipe-add-row>button:disabled{opacity:.4}.user-recipe-add-row>button svg{width:24px;height:24px;fill:currentColor}.user-recipe-step-list article{display:grid;grid-template-columns:30px minmax(0,1fr) 40px;align-items:start;gap:8px}.user-recipe-step-list article>span{display:grid;width:28px;height:28px;margin-top:8px;place-items:center;border-radius:50%;background:#22c55e;color:#fff;font-weight:700}.user-recipe-step-list article button{margin-top:4px}.user-recipe-step-list article button:disabled{opacity:.25}.user-recipe-add-step{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:7px;border:1px solid #64748b;border-radius:12px;background:transparent;color:#d8b4fe;font:inherit}.user-recipe-add-step svg{width:22px;height:22px;fill:currentColor}.user-recipe-photo{display:grid!important;min-height:150px;overflow:hidden;place-items:center;border:1px dashed #64748b;border-radius:14px;background:#1e293b;cursor:pointer}.user-recipe-photo img{width:100%;max-height:280px;object-fit:contain}.user-recipe-photo>span{display:inline-flex;align-items:center;gap:8px;color:#cbd5e1}.user-recipe-photo svg{width:26px;height:26px;fill:#c084fc}.user-recipe-photo input{display:none}.user-recipe-photo-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.user-recipe-photo-gallery>article,.user-recipe-photo-gallery>.user-recipe-photo{position:relative;min-height:130px;margin:0;overflow:hidden;border-radius:14px;background:#1e293b}.user-recipe-photo-gallery>article img{display:block;width:100%;height:150px;object-fit:cover}.user-recipe-photo-gallery>article>span{position:absolute;bottom:7px;left:7px;padding:4px 8px;border-radius:10px;background:#16a34ae6;color:#fff;font-size:11px}.user-recipe-photo-gallery>article>button{position:absolute;top:7px;right:7px;display:grid;width:34px;height:34px;padding:7px;place-items:center;border:0;border-radius:50%;background:#0f172acc;color:#fff}.user-recipe-photo-gallery>article>button svg{width:20px;height:20px;fill:currentColor}.user-recipe-nutrition-preview>p,.user-recipe-nutrition-preview>small{margin:0;color:#94a3b8;font-size:13px;line-height:1.45}.user-recipe-nutrition-row{display:grid;grid-template-columns:minmax(118px,1fr) repeat(4,auto);align-items:center;gap:10px;padding:12px;border-radius:10px;background:#1e293b;color:#cbd5e1;font-size:13px}.user-recipe-nutrition-row strong{color:#f8fafc;font-size:14px}.user-recipe-save{width:100%;min-height:52px;border:0;border-radius:14px;background:#16a34a;color:#fff;box-shadow:0 3px 8px #00000047;font:inherit;font-size:16px;font-weight:700;cursor:pointer}.user-recipe-delete{width:100%;min-height:52px;border:0;border-radius:14px;background:#dc2626;color:#fff;box-shadow:0 3px 8px #00000047;font:inherit;font-size:16px;font-weight:700;cursor:pointer}.user-recipe-delete:hover{background:#b91c1c}.user-recipe-delete:disabled{opacity:.5;cursor:default}.user-recipe-delete-dialog .food-dialog-actions .user-recipe-delete-confirm{background:#dc2626;color:#fff}.food-user-recipe-details{display:grid;gap:12px}.food-user-recipe-details>div{padding:15px;border-radius:14px;background:#172033}.food-user-recipe-details>.food-user-recipe-gallery{display:flex;gap:10px;padding:0 0 6px;overflow-x:auto;border-radius:0;background:transparent;scroll-snap-type:x mandatory}.food-user-recipe-gallery img{width:min(78vw,320px);aspect-ratio:1;flex:0 0 min(78vw,320px);border-radius:14px;object-fit:cover;scroll-snap-align:start}.food-user-recipe-details h2{margin:0 0 10px;color:#d8b4fe;font-size:18px}.food-user-recipe-details p{margin:0;color:#e2e8f0;line-height:1.5;white-space:pre-wrap}.food-user-recipe-details ul,.food-user-recipe-details ol{display:grid;gap:8px;margin:0;padding-left:22px}.food-user-recipe-details ul{padding:0;list-style:none}.food-user-recipe-details ul li{display:flex;align-items:center;justify-content:space-between;gap:9px}.food-user-recipe-details ul li>strong{margin-left:auto;text-align:right}.food-sweetener-help{display:grid;width:26px;height:26px;flex:0 0 26px;padding:0;place-items:center;border:1px solid #7dd3fc;border-radius:50%;background:transparent;color:#7dd3fc;font:inherit;font-size:13px;font-weight:800;cursor:pointer}.food-sweetener-help:focus-visible{outline:2px solid #d8b4fe;outline-offset:2px}.food-user-recipe-details li{color:#e2e8f0;line-height:1.45}@media(max-width:420px){.food-recipe-scopes button{font-size:12px}.user-recipe-builder-grid{grid-template-columns:1fr}.user-recipe-add-row{grid-template-columns:minmax(0,1fr) 68px 44px}.user-recipe-nutrition-row{grid-template-columns:repeat(4,1fr)}.user-recipe-nutrition-row strong{grid-column:1 / -1}}.app-shell-access{min-height:100dvh;background:#0f172a;color:#f8fafc;font-family:Roboto,Segoe UI,Arial,sans-serif}.main-surface-access{width:100%;max-width:none;min-height:100dvh;margin:0;padding:0;background:#0f172a}.access-page{width:min(100%,1040px);margin:0 auto;color:#f8fafc}.product-details-page{display:block;width:100%;min-height:100dvh;margin:0;background:#0f172a;color:#f8fafc}.product-details-content{display:grid;width:min(100%,1040px);margin:0 auto;gap:20px;padding:20px 16px 48px}.access-appbar{position:sticky;top:0;z-index:10;display:flex;min-height:56px;align-items:center;padding:4px 8px;background:#1e293b;box-shadow:0 1px 3px #00000047}.access-back-button{display:grid;width:48px;height:48px;padding:0;place-items:center;border-radius:50%;color:#f8fafc;text-decoration:none}.access-back-button:hover{background:#ffffff14}.access-back-button:focus-visible{outline:2px solid #22d3ee;outline-offset:0}.access-back-button svg{width:26px;height:26px;fill:currentColor}.access-page-intro{display:grid;max-width:720px;gap:8px;padding:8px 0 4px}.access-page-intro h1,.product-details-copy h1{margin:0;color:#f8fafc;font-size:clamp(30px,6vw,48px);line-height:1.08}.access-page-intro p,.product-details-copy>p{margin:0;color:#cbd5e1;font-size:16px;line-height:1.6}.access-eyebrow,.access-product-kind{color:#7dd3fc;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.access-premium-hero{display:grid;grid-template-columns:108px minmax(0,1fr) minmax(180px,auto);gap:24px;align-items:center;padding:28px;overflow:hidden;border:1px solid rgba(125,211,252,.35);border-radius:24px;background:radial-gradient(circle at 12% 20%,rgba(56,189,248,.2),transparent 35%),#172033;box-shadow:0 20px 45px #02061740}.access-premium-active{border-color:#34d3998c}.access-premium-icon{display:grid;width:108px;height:108px;place-items:center;border-radius:24px;background:#ffffff14}.access-premium-icon img{width:62px;height:62px;filter:brightness(0) invert(1)}.access-premium-copy{display:grid;gap:7px}.access-premium-copy h2,.access-section-heading h2,.product-preview-section h2{margin:0;color:#f8fafc;font-size:26px;line-height:1.2}.access-premium-copy p,.access-premium-copy ul{margin:0}.access-premium-copy p,.access-premium-copy li{color:#dbeafe}.access-premium-copy ul{display:flex;flex-wrap:wrap;gap:6px 18px;padding:0;list-style:none;font-size:13px}.access-premium-copy li:before{content:"✓";margin-right:6px;color:#34d399;font-weight:800}.access-status{width:fit-content;margin-top:4px;padding:5px 9px;border-radius:999px;background:#0f172aa8;color:#bae6fd;font-size:12px}.access-premium-action{display:grid;min-width:180px;gap:10px;justify-items:stretch}.access-premium-action>strong{font-size:25px;text-align:center}.access-premium-action .primary-button,.product-details-purchase>.primary-button,.product-details-purchase>.ghost-button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;text-decoration:none}.access-catalog-section,.product-preview-section{display:grid;gap:18px}.access-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.access-section-heading>div{display:grid;gap:5px}.access-section-heading>p{max-width:420px;margin:0;color:#94a3b8;font-size:14px}.access-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.access-product-card{display:grid;min-width:0;grid-template-columns:112px minmax(0,1fr);overflow:hidden;border:1px solid rgba(148,163,184,.2);border-radius:18px;background:#172033;color:#f8fafc;text-decoration:none;transition:border-color .18s ease,transform .18s ease}.access-product-card:hover{transform:translateY(-2px);border-color:#7dd3fc8c}.access-product-owned{border-color:#34d3996b}.access-product-cover{position:relative;min-height:168px;overflow:hidden;background:#0f172a}.access-product-cover img{width:100%;height:100%;object-fit:cover}.access-product-cover span,.product-details-cover>span{position:absolute;top:10px;left:10px;padding:4px 7px;border-radius:999px;background:#0f172acc;color:#fff;font-size:10px;font-weight:800;letter-spacing:.08em}.access-product-body{display:flex;min-width:0;padding:15px;flex-direction:column;align-items:flex-start;gap:5px}.access-product-body h3{margin:0;font-size:18px;line-height:1.2}.access-product-body p{margin:0;color:#cbd5e1;font-size:13px}.access-lifetime-label{color:#86efac;font-size:12px;font-weight:700}.access-product-body strong{margin-top:auto;padding-top:10px;font-size:18px}.access-explainer{padding:18px 20px;border:1px solid rgba(148,163,184,.18);border-radius:16px;background:#1e293b}.access-explainer strong{color:#f8fafc}.access-explainer p{margin:5px 0 0;color:#cbd5e1;line-height:1.55}.product-details-hero{display:grid;grid-template-columns:minmax(210px,280px) minmax(260px,1fr) 240px;gap:28px;align-items:center;padding:28px;border:1px solid rgba(148,163,184,.22);border-radius:20px;background:#1e293b}.product-access-check{display:grid;min-height:min(520px,72dvh);place-items:center}.product-details-premium{grid-template-columns:180px minmax(320px,1fr) 240px;border-color:#7dd3fc47;background:radial-gradient(circle at 9% 18%,rgba(56,189,248,.08),transparent 32%),linear-gradient(145deg,#0f172a,#111827);box-shadow:0 24px 60px #02061747}.product-details-cover{position:relative;width:100%;overflow:hidden;border-radius:18px;background:#334155;box-shadow:0 16px 30px #02061759;aspect-ratio:2 / 3}.product-details-premium .product-details-cover{display:grid;width:168px;place-items:center;align-self:start;justify-self:start;border:1px solid rgba(255,255,255,.1);border-radius:36px;background:linear-gradient(145deg,#ffffff1a,#38bdf80f);box-shadow:inset 0 1px #ffffff14,0 18px 38px #0206173d;aspect-ratio:1}.product-details-cover img{width:100%;height:100%;object-fit:cover}.product-details-premium .product-details-cover img{width:45%;height:45%;object-fit:contain;filter:brightness(0) invert(1)}.product-details-copy{display:grid;gap:12px}.product-details-premium .product-details-copy{gap:15px}.product-details-premium .product-details-copy h1{width:100%;max-width:none;font-size:clamp(31px,4vw,46px);text-align:center}.premium-benefit-grid{display:grid;gap:9px}.premium-benefit{display:grid;grid-template-columns:42px minmax(0,1fr);gap:11px;align-items:center;padding:10px 12px;border:1px solid rgba(125,211,252,.2);border-radius:15px;background:linear-gradient(145deg,#ffffff1a,#38bdf80f)}.premium-benefit>span{display:grid;width:42px;height:42px;place-items:center;border-radius:13px;background:#38bdf821;color:#7dd3fc}.premium-benefit svg{width:23px;height:23px;fill:currentColor}.premium-benefit>div{display:grid;gap:2px}.premium-benefit strong{color:#f8fafc;font-size:14px;line-height:1.25}.premium-benefit small{color:#aebed1;font-size:12px;line-height:1.35}.premium-benefit .premium-inline-diamond{width:21px;height:21px;margin-left:5px;fill:currentColor;color:#7dd3fc;vertical-align:-5px}.product-details-copy ul{display:grid;gap:8px;margin:0;padding:0;color:#dbeafe;list-style:none}.product-details-copy li:before{content:"✓";margin-right:8px;color:#34d399;font-weight:800}.product-facts{display:flex;flex-wrap:wrap;gap:8px}.product-facts span{padding:6px 9px;border-radius:999px;background:#334155;color:#e0f2fe;font-size:12px;font-weight:700}.product-details-purchase-column{display:grid;min-width:0;gap:10px}.product-details-purchase{display:grid;min-width:0;gap:10px;padding:18px;border-radius:18px;border:1px solid #cbd5e1;background:#f1f5f9;color:#0f172a}.product-details-purchase>strong{font-size:30px;text-align:center}.product-details-purchase>small{color:#64748b;text-align:center}.product-details-purchase .form-grid{gap:8px}.product-details-purchase>.ghost-button{border-color:#94a3b8;background:transparent;color:#334155}.premium-purchase-note{display:grid;gap:7px;padding:13px 15px;border:1px solid rgba(125,211,252,.2);border-radius:15px;background:#0f172a61;color:#cbd5e1;font-size:12px;line-height:1.4}.premium-purchase-note span{position:relative;padding-left:16px}.premium-purchase-note span:before{position:absolute;left:0;color:#7dd3fc;content:"•"}.product-access-state{padding:8px 10px;border-radius:10px;background:#14532d85;color:#bbf7d0;font-size:13px;text-align:center}.product-access-warning{padding:8px 10px;border-radius:10px;background:#78350f7a;color:#fde68a;font-size:13px;text-align:center}.product-old-price{margin-bottom:-8px;color:#64748b;text-align:center;text-decoration:line-through}.product-preview-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.product-preview-card{display:grid;min-width:0;overflow:hidden;border:1px solid rgba(148,163,184,.18);border-radius:14px;background:#1e293b;color:#f8fafc;text-decoration:none}.product-preview-card img{width:100%;aspect-ratio:1;object-fit:cover}.product-preview-card span{display:-webkit-box;padding:10px;overflow:hidden;font-size:13px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:3}.product-preview-loading{display:grid;min-height:180px;place-items:center}.product-all-recipes{display:inline-flex;min-height:52px;padding:0 16px 0 22px;align-items:center;justify-self:center;gap:10px;border:1px solid rgba(125,211,252,.42);border-radius:26px;background:linear-gradient(135deg,#0ea5e933,#3b82f621);color:#f0f9ff;box-shadow:0 10px 28px #0284c71f;font-size:14px;font-weight:700;text-decoration:none;transition:transform .18s ease,border-color .18s ease,background .18s ease}.product-all-recipes strong{display:grid;min-width:34px;height:30px;padding:0 8px;place-items:center;border-radius:15px;background:#e0f2fe;color:#075985;font-size:12px}.product-all-recipes svg{width:21px;height:21px;fill:currentColor}.product-all-recipes:hover{transform:translateY(-2px);border-color:#7dd3fc;background:#0ea5e93d}.product-all-recipes:focus-visible{outline:2px solid #7dd3fc;outline-offset:3px}.main-access-section{display:grid;gap:10px;padding-bottom:4px}.main-section-link-heading{display:flex;align-items:center;justify-content:space-between;padding:4px 16px 0 20px}.main-section-link-heading h2{margin:0;font-size:18px;font-weight:400}.main-section-link-heading a{color:#7dd3fc;font-size:13px;text-decoration:none}.main-access-info-button{display:grid;width:48px;height:48px;margin:-8px -8px -8px 0;padding:0;place-items:center;border:0;border-radius:50%;background:transparent;color:#f8fafc;font:inherit;font-size:20px;font-weight:400;cursor:pointer}.main-access-info-button:hover{background:#7dd3fc1a}.main-access-info-button:focus-visible{outline:2px solid #7dd3fc;outline-offset:-4px}.main-access-info-backdrop{position:fixed;z-index:100;inset:0;display:grid;padding:20px;place-items:center;background:#020617b8}.main-access-info-dialog{display:grid;width:min(390px,100%);gap:12px;justify-items:center;padding:24px;border:1px solid rgba(148,163,184,.24);border-radius:24px;background:#1e293b;color:#f8fafc;box-shadow:0 18px 48px #00000061;text-align:center}.main-access-info-dialog h2{margin:0;font-size:21px;line-height:1.25}.main-access-info-dialog p{margin:0;color:#cbd5e1;font-size:14px;line-height:1.55}.main-access-info-food-icon{display:inline-grid;width:25px;height:25px;margin:0 2px;place-items:center;border-radius:8px;background:#38bdf824;color:#7dd3fc;vertical-align:middle}.main-access-info-food-icon svg{width:17px;height:17px;fill:currentColor}.main-access-info-diamond-icon{display:inline-grid;width:23px;height:23px;margin:0 2px;place-items:center;border-radius:7px;background:#38bdf824;color:#7dd3fc;vertical-align:-5px}.main-access-info-diamond-icon svg{width:18px;height:18px;fill:currentColor}.main-access-info-dialog>button{min-width:130px;min-height:48px;margin-top:4px;padding:0 20px;border:0;border-radius:24px;background:#38bdf8;color:#082f49;font:inherit;font-weight:700;cursor:pointer}.main-access-info-dialog>button:hover{background:#7dd3fc}.main-access-info-dialog>button:focus-visible{outline:2px solid #fff;outline-offset:2px}.main-premium-card{display:grid;min-height:98px;margin:0 10px;grid-template-columns:58px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px;border:1px solid rgba(125,211,252,.42);border-radius:18px;background:radial-gradient(circle at 12% 20%,rgba(56,189,248,.22),transparent 35%),#172033;color:#fff;text-decoration:none}.main-premium-icon{display:grid;width:58px;height:58px;place-items:center;border-radius:16px;background:#ffffff14}.main-premium-icon img{width:34px;height:34px;filter:brightness(0) invert(1)}.main-premium-copy{display:grid;min-width:0;gap:2px}.main-premium-copy small{color:#7dd3fc;font-size:10px;font-weight:800;letter-spacing:.1em}.main-premium-copy strong{font-size:17px}.main-premium-copy span{color:#cbd5e1;font-size:12px}.main-premium-price{font-size:15px;font-weight:800;white-space:nowrap}.main-access-owned{border-color:#34d39973}.main-access-strip{gap:10px;padding:0 10px 8px}.main-access-product{position:relative;display:grid;width:240px;height:128px;flex:0 0 240px;grid-template-columns:86px minmax(0,1fr);overflow:hidden;border:1px solid var(--tc-collection-available);border-radius:16px;background:#172033;color:#fff;text-decoration:none}.main-access-product>img{width:86px;height:128px;object-fit:cover}.main-access-product>span{display:flex;min-width:0;padding:10px 11px;flex-direction:column;gap:3px}.main-access-product small{display:flex;min-height:18px;align-items:center;gap:3px;font-size:9px;font-weight:800;letter-spacing:.05em}.main-access-product .main-access-offer{color:#7dd3fc}.main-access-title-row{display:flex;min-width:0;align-items:flex-start;gap:8px}.main-access-title-row>strong{min-width:0;flex:1;line-height:1.15}.main-access-product .main-access-purchased{min-height:15px;margin-top:auto;align-self:flex-end;flex:0 0 15px;justify-content:flex-end;color:#86efac}.main-access-purchased svg{width:15px;height:15px;flex:0 0 15px;fill:currentColor}.main-access-comment{display:-webkit-box;overflow:hidden;margin:2px 0 0;color:#94a3b8;font-size:10.5px;font-weight:400;line-height:1.22;-webkit-box-orient:vertical;-webkit-line-clamp:3}.main-access-product.main-access-owned{border-color:#86efacb8;background:linear-gradient(#14532d21,#14532d21),#172033}.main-access-product strong{font-size:15px}.main-access-product em{margin-top:auto;font-size:13px;font-style:normal;font-weight:750}.main-access-product .main-access-price{align-self:flex-end;color:var(--tc-collection-available);text-align:right}.main-access-product .main-access-checking{color:#94a3b8;font-size:12px;font-weight:500}.recipe-details-page .recipe-paywall{display:grid;width:min(100%,760px);min-height:100dvh;margin:0 auto;gap:18px;align-content:center;padding:32px 20px 70px;color:#17211f}.recipe-paywall-preview{position:relative;width:150px;height:150px;justify-self:center}.recipe-paywall-preview>img{width:100%;height:100%;border-radius:28px;object-fit:cover;box-shadow:0 12px 28px #0f172a38}.recipe-paywall-lock{position:absolute;right:-10px;bottom:-10px;display:grid;width:48px;height:48px;place-items:center;border:4px solid #fff;border-radius:50%;background:#172033;color:#fff}.recipe-paywall-lock svg{width:25px;height:25px;fill:currentColor}.recipe-paywall-heading{display:grid;max-width:620px;justify-self:center;gap:6px;text-align:center}.recipe-paywall-heading h1{margin:0;font-size:28px;line-height:1.2}.recipe-paywall-heading p{margin:0;color:#5f6b68}.recipe-paywall-offer{display:grid;grid-template-columns:92px minmax(0,1fr) 220px;gap:18px;align-items:center;padding:18px;border:2px solid #0ea5e9;border-radius:20px;background:#f0f9ff}.recipe-paywall-offer-icon{display:grid;width:92px;height:112px;overflow:hidden;place-items:center;border-radius:14px;background:#172033}.recipe-paywall-offer-icon img{width:100%;height:100%;object-fit:cover}.recipe-paywall-offer-premium .recipe-paywall-offer-icon img{width:50%;height:50%;object-fit:contain;filter:brightness(0) invert(1)}.recipe-paywall-offer-copy{display:grid;gap:3px}.recipe-paywall-offer-copy>span{color:#0369a1;font-size:10px;font-weight:900;letter-spacing:.07em}.recipe-paywall-offer-copy h2{margin:0;font-size:21px}.recipe-paywall-offer-copy p{margin:0;color:#475569;font-size:13px}.recipe-paywall-offer-copy strong{margin-top:4px;font-size:23px}.recipe-paywall-offer-action{display:grid;gap:6px}.recipe-paywall-offer-action .form-grid{gap:6px}.recipe-paywall-offer-action>a{color:#0369a1;font-size:12px;text-align:center}.recipe-paywall-single{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:18px;align-items:center;padding:16px 18px;border:1px solid #d7e1de;border-radius:16px;background:#fff}.recipe-paywall-single>div:first-child{display:grid;gap:2px}.recipe-paywall-single span{color:#64748b;font-size:13px}.recipe-paywall-single .form-grid{gap:6px}.recipe-paywall-single .secondary-button{border-color:#94a3b8;background:#fff;color:#17211f;font-weight:700}.recipe-paywall-note{margin:-5px 0 0;color:#64748b;font-size:12px;text-align:center}@media(max-width:920px){.access-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-details-hero{grid-template-columns:210px minmax(0,1fr);align-items:start}.product-details-purchase-column{grid-column:1 / -1}.product-details-purchase{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center}.product-details-purchase>strong,.product-details-purchase>small,.product-details-purchase>span{grid-column:1 / -1}.product-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:680px){.access-page,.product-details-page{gap:16px}.access-premium-hero{grid-template-columns:72px minmax(0,1fr);gap:15px;padding:18px}.access-premium-icon{width:72px;height:72px;border-radius:18px}.access-premium-icon img{width:42px;height:42px}.access-premium-action{grid-column:1 / -1;grid-template-columns:1fr 1.4fr;align-items:center}.access-product-grid{grid-template-columns:1fr}.access-section-heading{display:grid;gap:6px}.product-details-hero{grid-template-columns:108px minmax(0,1fr);gap:18px;padding:18px}.product-details-premium{grid-template-columns:82px minmax(0,1fr);gap:16px;text-align:left}.product-details-premium .product-details-cover{width:82px;border-radius:24px}.product-details-premium .product-details-copy{justify-items:stretch}.premium-benefit-grid{width:100%;text-align:left}.product-details-cover{border-radius:14px}.product-details-copy h1{font-size:29px}.product-details-copy>p{font-size:14px}.product-details-copy ul{grid-column:1 / -1;font-size:13px}.product-details-purchase-column{grid-column:1 / -1}.product-details-purchase{display:grid;grid-template-columns:1fr}.product-details-purchase>*{grid-column:1!important}.product-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.recipe-paywall-offer{grid-template-columns:74px minmax(0,1fr);gap:12px;padding:14px}.recipe-paywall-offer-icon{width:74px;height:92px}.recipe-paywall-offer-action{grid-column:1 / -1}.recipe-paywall-single{grid-template-columns:1fr;gap:12px}}@media(max-width:440px){.main-premium-card{grid-template-columns:52px minmax(0,1fr)}.main-premium-icon{width:52px;height:52px}.main-premium-price{grid-column:2}.access-premium-copy ul{display:grid}.access-premium-action{grid-template-columns:1fr}.access-product-card{grid-template-columns:104px minmax(0,1fr)}.product-details-hero{grid-template-columns:92px minmax(0,1fr);padding:14px}.product-details-premium{grid-template-columns:72px minmax(0,1fr);gap:12px}.product-details-premium .product-details-cover{width:72px;border-radius:21px}.product-details-copy h1{font-size:25px}.product-facts{grid-column:1 / -1}}.app-shell-diet-assistant,.main-surface-diet-assistant{min-height:100dvh;background:#f6f3ec}.main-surface-diet-assistant{padding:0}.diet-assistant-page,.diet-setup-page{width:min(100%,760px);min-height:100dvh;margin:0 auto;color:#26251f;background:#f6f3ec}.diet-assistant-loading{min-height:100dvh;display:grid;place-items:center;color:#777268}.diet-assistant-appbar,.diet-assistant-header{color:#fff;background:linear-gradient(145deg,#697257,#3f4934)}.diet-assistant-appbar{display:flex;align-items:center;gap:16px;padding:max(22px,env(safe-area-inset-top)) 20px 22px}.diet-assistant-appbar button,.diet-assistant-header button{width:42px;height:42px;border:0;border-radius:50%;color:inherit;background:#ffffff24;font-size:28px;cursor:pointer}.diet-assistant-appbar div{display:grid;gap:2px}.diet-assistant-appbar span,.diet-assistant-header-row span{color:#ffffffb8;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.diet-assistant-appbar h1,.diet-assistant-header h1{margin:0;font-size:22px;line-height:1.15}.diet-setup-form{display:grid;gap:14px;padding:16px 16px calc(32px + env(safe-area-inset-bottom))}.diet-hero-card{padding:25px 22px;border-radius:24px;color:#fff;background:linear-gradient(135deg,#c66f43,#945033);box-shadow:0 10px 32px #5736252e}.diet-card-eyebrow{color:#ffffffb8;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.diet-hero-card h2{max-width:480px;margin:8px 0 10px;font-size:clamp(24px,7vw,34px);line-height:1.05}.diet-hero-card p{max-width:560px;margin:0;color:#ffffffdb;line-height:1.5}.diet-form-card{display:grid;gap:15px;margin:0;padding:19px;border:1px solid #e7e0d4;border-radius:20px;background:#fff}.diet-form-card legend{padding:0 8px;color:#4b543e;font-size:17px;font-weight:800}.diet-form-card label{display:grid;gap:7px;color:#6f6b63;font-size:13px;font-weight:700}.diet-form-card input,.diet-form-card select,.diet-checkin-card input{width:100%;min-height:48px;box-sizing:border-box;padding:10px 12px;border:1px solid #dcd5c9;border-radius:12px;color:#28261f;background:#faf9f6;font:inherit;font-size:16px}.diet-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.diet-number-input{position:relative;display:block}.diet-number-input input{padding-right:72px}.diet-number-input em{position:absolute;top:50%;right:12px;color:#928c81;font-size:12px;font-style:normal;transform:translateY(-50%);pointer-events:none}.diet-field-note{margin:-3px 0 0;color:#8c867b;font-size:12px;line-height:1.45}.diet-confirmation{display:flex;align-items:flex-start;gap:11px;padding:3px 5px;color:#625f57;font-size:12px;line-height:1.45}.diet-confirmation input{width:20px;height:20px;flex:0 0 auto;margin:0;accent-color:#586348}.diet-primary-button,.diet-secondary-button,.diet-danger-button{width:100%;min-height:52px;border:0;border-radius:15px;font-size:15px;font-weight:800;cursor:pointer}.diet-primary-button{color:#fff;background:#566147;box-shadow:0 8px 20px #46513933}.diet-secondary-button{color:#4f5941;background:#e6eadf}.diet-danger-button{color:#9b493c;background:#f5e4df}.diet-form-error{margin:0;color:#b24739;font-size:13px}.diet-assistant-header{position:sticky;z-index:20;top:0;padding:max(18px,env(safe-area-inset-top)) 18px 14px}.diet-assistant-header-row{display:flex;align-items:center;justify-content:space-between}.diet-assistant-header-row>div{display:grid;gap:3px}.diet-assistant-header button{font-size:22px}.diet-program-progress{height:4px;margin-top:14px;overflow:hidden;border-radius:99px;background:#ffffff2e}.diet-program-progress i{display:block;height:100%;border-radius:inherit;background:#e6b96e}.diet-assistant-tabs{position:sticky;z-index:19;top:91px;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:8px 12px;background:#f6f3ecf0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.diet-assistant-tabs button{min-height:42px;border:0;border-radius:12px;color:#7f796f;background:transparent;font-weight:750;cursor:pointer}.diet-assistant-tabs button.active{color:#3f4934;background:#fff;box-shadow:0 2px 10px #4a443914}.diet-assistant-content{display:grid;gap:14px;padding:10px 14px calc(34px + env(safe-area-inset-bottom))}.diet-reminder{display:grid;gap:3px;padding:13px 15px;border:1px solid #e6c998;border-radius:15px;background:#fff4dd}.diet-reminder strong{color:#795d2e;font-size:14px}.diet-reminder span{color:#8b7450;font-size:12px}.diet-today-summary,.diet-week-heading{display:flex;align-items:center;justify-content:space-between;padding:7px 3px}.diet-today-summary>div,.diet-week-heading>div{display:grid;gap:2px}.diet-today-summary span,.diet-week-heading span{color:#8b867d;font-size:12px}.diet-today-summary strong{font-size:20px}.diet-day-badge{padding:7px 10px;border-radius:99px;color:#8a6b38!important;background:#f2e5c9;font-size:11px!important;font-weight:800}.diet-day-badge.complete{color:#506244!important;background:#dfe9d6}.diet-checklist{display:grid;gap:9px}.diet-progress-card{width:100%;display:grid;grid-template-columns:44px minmax(0,1fr);gap:11px;align-items:center;box-sizing:border-box;padding:14px;border:1px solid #e7e1d7;border-radius:17px;color:inherit;text-align:left;background:#fff;cursor:pointer}.diet-progress-card.done{border-color:#d5dfcb;background:#fbfdf9}.diet-progress-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;color:#7a6747;background:#f0e7d7;font-size:18px;font-weight:900}.diet-progress-card.done .diet-progress-icon{color:#fff;background:#667456}.diet-progress-copy{min-width:0;display:grid;gap:3px}.diet-progress-copy>span:first-child{color:#8e887f;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.diet-progress-copy strong{overflow:hidden;font-size:16px;text-overflow:ellipsis}.diet-progress-copy small{color:#8b7b64;font-size:11px}.diet-mini-progress{height:4px;overflow:hidden;border-radius:99px;background:#ece8e0}.diet-mini-progress i{display:block;height:100%;border-radius:inherit;background:#bd764f}.diet-progress-card.done .diet-mini-progress i{background:#718061}.diet-plants-card{cursor:default}.diet-inline-input{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;margin-top:6px}.diet-inline-input input{min-width:0;height:38px;box-sizing:border-box;padding:8px 10px;border:1px solid #ded8cd;border-radius:10px;font-size:14px}.diet-inline-input button{border:0;border-radius:10px;color:#fff;background:#687456;font-weight:700}.diet-training-card{display:flex;align-items:center;gap:11px;padding:13px 14px;border:1px dashed #d7d0c3;border-radius:16px;color:#645e55;text-align:left;background:#fff9;cursor:pointer}.diet-training-card>span{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#ebe5da;font-weight:900}.diet-training-card div{display:grid;gap:2px}.diet-training-card small{color:#979086}.diet-training-card.complete{border-style:solid;border-color:#cfdbc4;color:#526044;background:#f7faf4}.diet-training-card.complete>span{color:#fff;background:#687757}.diet-tip{position:relative;overflow:hidden;padding:18px 19px;border-radius:19px;color:#fff;background:linear-gradient(135deg,#ae6743,#844a34)}.diet-tip:after{content:"❧";position:absolute;right:12px;bottom:-18px;color:#ffffff1a;font-size:76px}.diet-tip span{color:#f4cf9d;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.diet-tip p{position:relative;z-index:1;margin:7px 0 0;font-size:14px;line-height:1.5}.diet-week-heading h2{margin:0;font-size:18px}.diet-week-heading>strong{padding:7px 10px;border-radius:99px;color:#5f694f;background:#e4eadc;font-size:12px}.diet-week-grid,.diet-stats-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.diet-week-metric{min-width:0;display:grid;gap:5px;padding:14px;border:1px solid #e7e1d7;border-radius:16px;background:#fff}.diet-week-metric span{color:#8f887e;font-size:11px}.diet-week-metric strong{font-size:19px}.diet-week-metric small{color:#8a8276;font-size:11px;line-height:1.35}.diet-checkin-card,.diet-chart-card,.diet-milestones{overflow:hidden;border:1px solid #e5ded3;border-radius:19px;background:#fff}.diet-checkin-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;padding:17px 18px;border:0;color:inherit;text-align:left;background:transparent;cursor:pointer}.diet-checkin-toggle div{display:grid;gap:3px}.diet-checkin-toggle div span{color:#8c867d;font-size:11px}.diet-checkin-toggle div strong{font-size:16px}.diet-checkin-toggle>span{font-size:24px}.diet-checkin-card form{display:grid;gap:16px;padding:0 17px 18px;border-top:1px solid #eee9e1}.diet-checkin-card form>p{margin:15px 0 0;color:#857f75;font-size:12px;line-height:1.45}.diet-checkin-card label{display:grid;gap:6px;color:#716c64;font-size:12px;font-weight:700}.diet-scale{display:grid;gap:7px;margin:0;padding:0;border:0}.diet-scale legend{margin-bottom:6px;color:#716c64;font-size:12px;font-weight:700}.diet-scale>div{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.diet-scale button{height:38px;border:1px solid #ddd7cc;border-radius:10px;color:#777066;background:#faf8f4}.diet-scale button.active{border-color:#697656;color:#fff;background:#697656}.diet-scale small{display:flex;justify-content:space-between;color:#a19a90}.diet-chart-card{display:grid;gap:12px;padding:17px}.diet-chart-card>div:first-child{display:grid;gap:3px}.diet-chart-card span{color:#8c857b;font-size:11px}.diet-chart-card strong{font-size:17px}.diet-weight-chart{width:100%;height:180px;overflow:visible}.diet-weight-chart line{stroke:#eee8df;stroke-width:.5}.diet-weight-chart polyline{fill:none;stroke:#a55f3f;stroke-width:2.4;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.diet-chart-empty{height:130px;display:grid;place-items:center;border-radius:13px;color:#989188;background:#faf8f4;font-size:12px}.diet-milestones{padding:17px}.diet-milestones h2{margin:0 0 8px;font-size:16px}.diet-milestones div{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid #eee9e1}.diet-milestones div span,.diet-milestones p{color:#8d867c;font-size:12px}.diet-milestones p{margin:0;line-height:1.5}@media(max-width:520px){.diet-form-grid{grid-template-columns:1fr}.diet-week-grid,.diet-stats-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.diet-week-metric strong{font-size:17px}}.app-shell.app-shell-main,.main-surface-main,.main-page,.route-transition-food-forward,.route-transition-food-back{background:var(--tc-background);color:var(--tc-text)}.app-shell-main{font-family:var(--tc-font-ui);transition:background-color .2s ease,color .2s ease}.topbar-main{display:flex;min-height:72px;flex:0 0 72px;align-items:center;justify-content:flex-start;gap:10px;padding:max(8px,env(safe-area-inset-top)) 18px 8px;background:color-mix(in srgb,var(--tc-background) 91%,transparent);color:var(--tc-text);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.main-profile-button{width:48px;height:48px;color:var(--tc-text)}.main-profile-button:hover{background:var(--tc-primary-soft)}.main-profile-button:focus-visible{outline-color:var(--tc-primary)}.main-profile-button>img,.main-profile-avatar-fallback{border-color:#fff;background:var(--tc-surface-soft);color:var(--tc-primary);box-shadow:0 0 0 1px var(--tc-avatar-outline)}.main-topbar-copy{display:grid;min-width:0;flex:1;gap:1px;line-height:1.2}.main-topbar-copy strong{overflow:hidden;font-family:var(--tc-font-display);font-size:19px;font-weight:400;text-overflow:ellipsis;white-space:nowrap}.main-topbar-food{display:grid;width:44px;height:44px;flex:0 0 44px;margin-left:auto;place-items:center;border:1px solid var(--tc-outline);border-radius:14px;background:var(--tc-surface-raised);color:var(--tc-primary);box-shadow:0 5px 18px #573e310f;text-decoration:none}.main-topbar-food svg{width:22px;height:22px;fill:currentColor}:root[data-theme=dark] .main-topbar-food{border-color:#ffffffd1;box-shadow:0 0 0 1px #ffffff1a,0 5px 18px #02061747}.main-topbar-food:hover{filter:brightness(.96)}.main-topbar-food:active{transform:scale(.96)}.main-topbar-food:focus-visible{outline:2px solid var(--tc-primary);outline-offset:-3px}.main-page{grid-template-rows:minmax(0,1fr)}.main-page-scroll{gap:12px;padding-bottom:12px;scrollbar-color:color-mix(in srgb,var(--tc-primary) 40%,transparent) transparent}.main-stories-section{padding-top:4px}.main-stories-strip{height:122px;gap:14px;padding:0 18px}.story-circle,.story-circle-title{color:var(--tc-text)}.story-circle-title{font-size:11px;line-height:14px;-webkit-line-clamp:2}.story-circle-image{background:var(--tc-surface)}.story-placeholder-item span,.story-placeholder-item i{background:var(--tc-surface-soft)}.main-quick-actions{width:min(100%,760px);grid-template-columns:minmax(0,1fr);gap:8px;padding:0 18px 4px}.main-search-tile{min-height:58px;justify-content:flex-start;gap:12px;padding:10px 16px;border-color:var(--tc-outline);border-radius:18px;background:var(--tc-surface-raised);color:var(--tc-text-muted);box-shadow:0 5px 18px #573e310f;font-size:14px;font-weight:500}.main-search-tile>.main-inline-icon{width:24px;height:24px;flex-basis:24px;color:var(--tc-text-muted)}.main-search-tile>span{min-width:0;flex:1;text-align:left}.main-quick-actions-side{display:flex;grid-template-rows:none;gap:8px;justify-self:end}.main-quick-action{width:48px;height:48px;padding:12px;border-color:var(--tc-outline);border-radius:15px;background:var(--tc-secondary-soft);color:var(--tc-secondary)}.main-courses-action{border-color:var(--tc-outline);background:var(--tc-primary-soft);color:var(--tc-primary)}.main-search-tile:focus-visible,.main-quick-action:focus-visible{outline-color:var(--tc-primary)}.main-section>h2,.main-section-link-heading h2{margin:4px 18px 8px;color:var(--tc-text);font-family:var(--tc-font-display);font-size:20px;font-weight:400}.main-section-link-heading{padding:0}.main-section-link-heading h2{margin:0}.main-section-link-heading a,.main-access-info-button{color:var(--tc-primary)}.main-categories-strip,.main-books-strip,.main-dishes-strip{background:transparent}.main-categories-strip{height:154px;gap:12px;padding:4px 18px 10px}.main-category-card{display:grid;width:112px;height:140px;flex:0 0 112px;grid-template-rows:96px 44px;border-color:var(--tc-outline);border-radius:18px;background:var(--tc-surface-raised);box-shadow:var(--tc-shadow)}.main-category-card img{position:absolute;inset:0;width:100%;height:100%;object-position:center}.main-category-card span{position:absolute;right:0;bottom:0;left:0;display:grid;min-width:0;min-height:40px;z-index:1;margin:0;padding:5px 7px;place-items:center;border-radius:12px 12px 17px 17px;background:color-mix(in srgb,var(--tc-card-caption) 88%,transparent);color:var(--tc-text);font-family:var(--tc-font-display);font-size:15px;font-weight:400;line-height:15px;text-align:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.main-access-section{gap:12px;padding:0 18px}.main-access-strip{margin-inline:-18px;padding-inline:18px}.main-premium-card{width:100%;margin:0;border-color:color-mix(in srgb,var(--tc-primary) 45%,var(--tc-outline));background:linear-gradient(135deg,var(--tc-primary-soft),var(--tc-surface-raised));color:var(--tc-text);box-shadow:var(--tc-shadow)}.main-premium-icon{background:color-mix(in srgb,var(--tc-primary) 12%,transparent)}.main-premium-icon img{filter:none}:root[data-theme=dark] .main-premium-icon img{filter:brightness(0) invert(1)}.main-premium-copy small,.main-premium-price{color:var(--tc-primary-strong)}.main-premium-copy span{color:var(--tc-text-muted)}.main-access-product{border-color:var(--tc-collection-available);background:var(--tc-surface-raised);color:var(--tc-text);box-shadow:0 7px 20px #573e3114}.main-access-product .main-access-offer{color:var(--tc-primary-strong)}.main-access-product .main-access-price{color:var(--tc-collection-available)}.main-access-comment,.main-access-product .main-access-checking{color:var(--tc-text-muted)}.main-access-product.main-access-owned{border-color:#4ade80;background:linear-gradient(#22c55e1a,#22c55e1a),var(--tc-surface-raised)}.main-dishes-section>h2{margin-top:6px}.main-dishes-strip{height:314px;gap:12px;padding:0 18px 12px}.main-dish-card{display:grid;width:clamp(164px,calc((100vw - 48px)/2),220px);height:302px;flex:0 0 clamp(164px,calc((100vw - 48px)/2),220px);grid-template-rows:208px 94px;border-color:var(--tc-outline);border-radius:20px;background:var(--tc-surface-raised);box-shadow:var(--tc-shadow)}.main-dish-card>img{width:100%;height:208px;grid-row:1;object-position:center}.main-dish-label{top:10px;right:auto;left:10px;padding:5px 9px;border-radius:999px;background:color-mix(in srgb,var(--tc-primary) 88%,transparent);font-family:var(--tc-font-ui);font-size:12px;font-weight:400;line-height:16px;letter-spacing:0;text-transform:none}.main-dish-label-1{background:color-mix(in srgb,var(--tc-secondary) 90%,transparent)}.main-dish-label-2{background:color-mix(in srgb,#e4a85f 90%,transparent)}.main-dish-caption,.main-dish-caption-0,.main-dish-caption-1,.main-dish-caption-2{position:static;display:grid;min-width:0;grid-row:2;align-content:center;align-items:start;gap:3px;padding:7px 11px 8px;border-top:1px solid color-mix(in srgb,var(--tc-text) 10%,transparent);border-radius:0;background:var(--tc-interest-caption);color:var(--tc-text);font-family:var(--tc-font-display);text-align:left}.main-dish-caption strong{display:-webkit-box;overflow:hidden;color:var(--tc-text);font-size:15px;font-weight:400;line-height:17px;-webkit-box-orient:vertical;-webkit-line-clamp:3}.main-dish-caption small{color:var(--tc-text-muted);font-family:var(--tc-font-ui);font-size:12px;font-weight:400;line-height:14px}.main-dishes-error{color:var(--tc-text-muted)}.main-page-bottom-space{height:calc(48px + env(safe-area-inset-bottom));flex-basis:calc(48px + env(safe-area-inset-bottom))}.main-confidentiality-footer{height:auto;min-height:58px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:var(--tc-surface);color:var(--tc-text-muted);box-shadow:0 -1px 0 var(--tc-outline)}.main-confidentiality-footer button{color:var(--tc-primary-strong)}.app-shell-main .legal-dialog{border-color:var(--tc-outline);background:var(--tc-surface-raised);color:var(--tc-text)}.app-shell-main .legal-dialog .page-title{color:var(--tc-text)}.side-drawer{border-radius:0 24px 24px 0;background:var(--tc-surface);color:var(--tc-text);box-shadow:12px 0 36px #25191438}.drawer-header{height:184px;background:linear-gradient(145deg,var(--tc-primary-soft),var(--tc-surface-soft));color:var(--tc-text)}.drawer-profile-avatar{border-color:var(--tc-surface-raised)}.drawer-profile-avatar-fallback{border-color:var(--tc-primary);background:var(--tc-surface-raised);color:var(--tc-primary)}.drawer-tile,.drawer-icon{color:var(--tc-text)}.drawer-tile:hover{background:var(--tc-primary-soft)}.drawer-tile-copy small,.drawer-version{color:var(--tc-text-muted)}.drawer-divider{height:1px;background:var(--tc-outline)}.drawer-switch{border-color:var(--tc-outline)}.drawer-switch span{background:var(--tc-text-muted)}.drawer-switch-on{border-color:var(--tc-primary);background:var(--tc-primary)}.drawer-switch-on span{background:#fff}@media(min-width:760px){.main-page-scroll,.main-surface-login,.main-surface-food-tracker,.recipe-list-page,.recipe-details-page{width:min(100%,900px);margin-inline:auto}.recipe-list-back,.recipe-details-page .recipe-floating-back{left:max(0px,calc((100vw - 900px)/2))}.topbar-main{padding-inline:max(18px,calc((100% - 900px)/2 + 18px))}.main-quick-actions{width:min(100%,900px)}.main-categories-strip,.main-dishes-strip{overflow-x:visible}.main-dishes-strip{display:grid;height:auto;grid-template-columns:repeat(3,minmax(0,1fr))}.main-dish-card{width:100%;height:356px;grid-template-rows:262px 94px}.main-dish-card>img{height:262px}}@media(prefers-reduced-motion:reduce){.app-shell-main{transition:none}}.guest-gate-backdrop{position:fixed;z-index:100;inset:0;display:grid;align-items:end;background:#0206179e;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.guest-gate{position:relative;display:grid;gap:11px;width:min(100%,560px);margin:0 auto;padding:25px 22px calc(22px + env(safe-area-inset-bottom));border-radius:26px 26px 0 0;background:var(--tc-surface-raised);text-align:center;box-shadow:0 -20px 60px #00000047}.guest-gate h2{margin:0;font-family:var(--tc-font-display);font-size:27px}.guest-gate p{margin:0 0 5px;color:var(--tc-text-muted);font-size:13px}.guest-gate-icon{color:var(--tc-primary);font-size:42px;line-height:1}.guest-gate-close{position:absolute;top:13px;right:15px;width:36px;height:36px;border:0;border-radius:50%;background:var(--tc-surface-soft);color:var(--tc-text-muted);font-size:25px}.guest-primary-button{display:grid;place-items:center}.guest-secondary-button{display:grid;min-height:48px;place-items:center;border:1px solid var(--tc-primary);border-radius:16px;color:var(--tc-primary);font-weight:800;text-decoration:none}.guest-access-bar{display:grid;grid-template-columns:minmax(0,1fr) 32px auto;gap:8px;align-items:center;min-height:42px;margin:0 16px 3px;padding:6px 8px 6px 14px;border:1px solid color-mix(in srgb,var(--tc-primary) 40%,transparent);border-radius:14px;background:color-mix(in srgb,var(--tc-surface-raised) 84%,transparent);color:var(--tc-text);font-size:13px;font-weight:750}.guest-access-bar button{width:28px;height:28px;padding:0;border:1px solid var(--tc-primary);border-radius:50%;background:transparent;color:var(--tc-primary);font:inherit;cursor:pointer}.guest-access-bar a{padding:7px 10px;border-radius:10px;color:var(--tc-accent);font-size:12px;text-decoration:none}.guest-main-button{font:inherit;text-align:inherit;cursor:pointer}button.main-category-card,button.main-dish-card,button.main-access-product{padding:0}.guest-story-button{padding:0;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer}.food-product-duplicate-hints{display:grid;gap:8px;margin:12px 0;padding:14px;border:1px solid rgba(253,230,138,.42);border-radius:16px;background:#fde68a14}.food-product-duplicate-hints h2{margin:0 0 2px;font-size:14px;color:#fde68a}.food-product-duplicate-hints>button{display:grid;gap:5px;width:100%;padding:10px 12px;border:0;border-radius:12px;background:#ffffff14;color:inherit;text-align:left}.food-product-duplicate-hints>button>span{display:flex;justify-content:space-between;gap:12px}.food-user-product-create-anyway{width:100%;margin-top:8px;border:0;background:transparent;color:#8dd8ff}.food-product-duplicate-dialog{max-width:520px}.food-product-duplicate-list{display:grid;gap:8px;margin-top:12px}.food-product-duplicate-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border-radius:12px;background:#ffffff12}.food-product-duplicate-list article>div{display:grid;min-width:0;gap:3px}.food-product-duplicate-list article span,.food-product-duplicate-list article small{color:var(--muted-text, #aeb8c8)}.food-product-duplicate-list article button{flex:0 0 auto;padding:8px 10px;border:0;border-radius:999px;background:#8dd8ff29;color:#8dd8ff}
