/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.block{display:block}.flex{display:flex}.hidden{display:none}.inline{display:inline}.table{display:table}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--mist:#f4f7fb;--white:#fff;--navy:#12243f;--navy-soft:#2d405d;--muted:#687b96;--cobalt:#1746d1;--blue:#2e62e8;--sky:#7db4ff;--teal:#00a6a2;--teal-pale:#ddf7f5;--border:#dbe4f0;--line:#e9eef5;--amber:#d98a12;--amber-pale:#fff3d8;--shadow:0 1px 2px #142d5009, 0 18px 48px #1d3d6c13}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}html[data-text-size=large]{-webkit-text-size-adjust:115%;-moz-text-size-adjust:115%;text-size-adjust:115%}html[data-text-size=xlarge]{-webkit-text-size-adjust:130%;-moz-text-size-adjust:130%;text-size-adjust:130%}@media (width>=900px){html[data-text-size=large]{zoom:1.06}html[data-text-size=xlarge]{zoom:1.12}}body{color:var(--navy);font-synthesis:none;letter-spacing:-.015em;text-rendering:optimizelegibility;background-color:#0000;background-image:radial-gradient(74% 52% at -12% -8%,#467af22b,#0000 70%),radial-gradient(56% 42% at 108% 5%,#41bed31b,#0000 72%),radial-gradient(48% 34% at 72% 98%,#6680da13,#0000 74%),linear-gradient(#fafcff 0%,#f3f7fc 47%,#f7f9fc 100%);background-position:0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat;background-size:auto,auto,auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans KR,Apple SD Gothic Neo,sans-serif;font-size:16px;line-height:1.5;overflow-x:hidden}button,input,textarea,select{font:inherit;letter-spacing:inherit}button,label[for],a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,label[for]:focus-visible{outline-offset:3px;outline:3px solid #2e62e847}.topbar{z-index:30;-webkit-backdrop-filter:blur(24px)saturate(1.15);backdrop-filter:blur(24px)saturate(1.15);background:#fafcffc7;border-bottom:1px solid #d3deedb8;justify-content:space-between;align-items:center;min-height:72px;padding:0 4vw;display:flex;position:sticky;top:0;box-shadow:0 8px 30px #1835600b}.brand{color:var(--navy);letter-spacing:-.04em;align-items:center;gap:11px;font-size:20px;font-weight:850;text-decoration:none;display:inline-flex}.brand-mark{color:#fff;background:linear-gradient(145deg,#194bdc 8%,#2d77f1 62%,#58b9ff);border-radius:13px;place-items:center;width:38px;height:38px;font-size:16px;font-weight:850;display:inline-grid;position:relative;overflow:hidden;box-shadow:0 7px 18px #1746d13d}.brand-mark:after{content:"";background:linear-gradient(100deg,#0000 38%,#ffffff6b 50%,#0000 62%);animation:5.6s ease-in-out infinite brand-shine;position:absolute;inset:-70% -45%;transform:translate(-55%)rotate(8deg)}@keyframes brand-shine{0%,70%,to{transform:translate(-55%)rotate(8deg)}82%{transform:translate(55%)rotate(8deg)}}.header-actions{align-items:center;gap:9px;display:flex;position:relative}.notification-menu{position:relative}.notification-trigger{color:#355073;cursor:pointer;background:#ffffffbd;border:1px solid #cbd8ebe6;border-radius:14px;place-items:center;width:42px;height:42px;transition:transform .16s,border-color .16s,background .16s;display:grid;position:relative;box-shadow:0 5px 16px #1e3a620f}.notification-trigger:hover,.notification-trigger[aria-expanded=true]{background:#eef4ff;border-color:#a9c0ee;transform:translateY(-1px)}.notification-trigger svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:20px;height:20px}.notification-trigger>span{color:#fff;background:linear-gradient(145deg,#245be4,#6f8fff);border:2px solid #fff;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 4px;font-size:9px;font-weight:900;display:grid;position:absolute;top:-4px;right:-4px;box-shadow:0 4px 10px #245be447}.notification-trigger.has-items:after{content:"";pointer-events:none;border:1px solid #2e62e829;border-radius:10px;animation:2.8s ease-in-out infinite notification-breathe;position:absolute;inset:5px}@keyframes notification-breathe{50%{border-color:#2e62e880;transform:scale(1.04)}}.notification-popover{z-index:72;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffffa;border:1px solid #dce5f3;border-radius:22px;width:min(360px,100vw - 24px);animation:.16s ease-out both popover-in;position:absolute;top:calc(100% + 13px);right:-51px;overflow:hidden;box-shadow:0 24px 70px #0f2a5633}@keyframes popover-in{0%{opacity:0;transform:translateY(-7px)scale(.98)}}.notification-popover>header{background:linear-gradient(145deg,#f4f8ff,#fbfdff);justify-content:space-between;align-items:center;gap:12px;padding:18px 18px 13px;display:flex}.notification-popover>header div{gap:2px;display:grid}.notification-popover>header span{color:#7486a0;font-size:9px;font-weight:850}.notification-popover>header strong{color:var(--navy);font-size:16px}.notification-popover>header button{color:#69809f;cursor:pointer;background:#e8effb;border:0;border-radius:10px;width:31px;height:31px;font-size:18px}.notification-list{padding:7px 10px 2px;display:grid}.notification-list>button{width:100%;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-bottom:1px solid #eef2f7;grid-template-columns:35px minmax(0,1fr) 12px;align-items:center;gap:11px;padding:12px 9px;display:grid}.notification-list>button:last-child{border-bottom:0}.notification-list>button:hover{background:#f5f8ff;border-radius:13px}.notification-list>button.read{opacity:.68}.notification-list>button.read>span{color:#19735a;background:#e8f8f2}.notification-list>button>span{width:35px;height:35px;color:var(--cobalt);background:#eaf1ff;border-radius:12px;place-items:center;font-size:16px;font-weight:900;display:grid}.notification-list>button div{min-width:0}.notification-list strong{color:#1e3557;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:900;display:block;overflow:hidden}.notification-list p{color:#72829a;margin:4px 0 0;font-size:9px;line-height:1.45}.notification-list em{color:#8ca0bb;font-size:18px;font-style:normal}.notification-note{color:#94a0b2;text-align:center;background:#fbfcfe;margin:0;padding:10px 18px 14px;font-size:8px}.notification-empty{color:#6f8098;justify-items:center;gap:7px;padding:24px 18px 18px;font-size:10px;display:grid}.notification-empty>span{color:#168463;background:#e9f9f2;border-radius:50%;place-items:center;width:35px;height:35px;font-weight:900;display:grid}.notification-empty p{margin:0}.streak,.source-chip,.status-badge,.analyzed-label{white-space:nowrap;border-radius:999px;align-items:center;gap:7px;font-size:13px;font-weight:750;display:inline-flex}.streak{color:var(--cobalt);background:#eef3ff;padding:9px 13px}.streak span,.status-badge span,.analyzed-label span{color:var(--teal);font-size:9px}.avatar{color:#fff;cursor:pointer;background:linear-gradient(145deg,#173e70,#081f3d);border:0;border-radius:50%;place-items:center;width:42px;height:42px;font-size:12px;font-weight:800;display:grid;position:relative;box-shadow:0 0 0 3px #edf3ff,0 7px 18px #09224629}.avatar span{line-height:1}.app-shell{width:min(1480px,100% - 7vw);margin:0 auto;padding:42px 0 70px}.intro{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(132deg,#ffffffeb,#f7fbffc7 58%,#eff6ffb8);border:1px solid #cddaedc7;border-radius:28px;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:24px;padding:clamp(24px,3vw,34px);display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px 1px #ffffffeb,0 20px 55px #1f3d6c13}.intro:after{content:"";pointer-events:none;background:radial-gradient(circle,#4f89f721,#46becf0b 48%,#0000 70%);border-radius:50%;width:300px;height:300px;position:absolute;top:-110px;right:-80px}.intro>*{z-index:1;position:relative}.member-greeting-title{flex-wrap:wrap;align-items:center;gap:8px 10px;display:flex}.member-level-peek{z-index:12;flex:none}.member-level-peek>summary{color:#52657c;cursor:pointer;white-space:nowrap;background:#ffffffd1;border:1px solid #d7e1ed;border-radius:999px;align-items:center;gap:4px;min-height:36px;padding:7px 10px;list-style:none;display:inline-flex;box-shadow:0 5px 15px #21447012}.member-level-peek>summary::-webkit-details-marker{display:none}.member-level-peek>summary i{font-size:18px;font-style:normal}.member-level-peek>summary b{font-size:12px;font-weight:900}.member-level-peek>summary b:before{content:"내 메달 · ";color:#718197;font-size:9px}.member-level-peek>summary small{color:#657892;opacity:.94;border-left:1px solid;padding-left:7px;font-size:10px;font-weight:850}.member-level-peek[open]{flex-basis:100%}.member-level-peek[open]>summary{background:#f5f8ff;border-color:#aabfe3}.member-level-peek>div{background:#fffffffa;border:1px solid #d8e2ef;border-radius:15px;width:min(270px,100vw - 54px);margin-top:8px;padding:14px;box-shadow:0 14px 34px #17355e21}.member-level-peek>div strong{color:var(--navy);font-size:13px}.member-level-peek>div p{color:#53677f;margin:6px 0 4px;font-size:10px;line-height:1.5}.member-level-peek>div small{color:#8794a6;font-size:8px;line-height:1.5;display:block}.member-level-peek.stone>summary,.member-level-peek.spoon>summary{background:#f7f9fb;border-color:#dbe1e8}.member-level-peek.sprout>summary,.member-level-peek.leaf>summary,.member-level-peek.stem>summary{color:#347052;background:#f0faf4;border-color:#cbe4d5}.member-level-peek.bud>summary,.member-level-peek.fruit>summary,.member-level-peek.flame>summary,.member-level-peek.star>summary{color:#8a641c;background:#fff9e7;border-color:#edd9ad}.member-level-peek.challenger>summary,.member-level-peek.bronze>summary,.member-level-peek.silver>summary,.member-level-peek.gold>summary,.member-level-peek.diamond>summary,.member-level-peek.master>summary{color:#315d9c;background:#eff5ff;border-color:#c9d8ee}.eyebrow{color:var(--cobalt);letter-spacing:.07em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:850}.intro h1{letter-spacing:-.055em;margin:0;font-size:clamp(32px,4vw,52px);line-height:1.08}.intro>div>p:last-child{color:var(--muted);margin:13px 0 0;font-size:18px}.source-chip{color:#087e7b;background:#e7f9f7c7;border:1px solid #abdbdacc;padding:11px 15px;box-shadow:0 8px 24px #087e7b0f}.source-chip span{background:var(--teal);color:#fff;border-radius:50%;place-items:center;width:18px;height:18px;font-size:10px;display:grid}.card{box-shadow:var(--shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffe0;border:1px solid #d2ddecd1;border-radius:24px}.button{cursor:pointer;border:1px solid #0000;border-radius:13px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 17px;font-weight:800;text-decoration:none;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--cobalt);color:#fff;box-shadow:0 9px 22px #1746d13d}.button-primary:hover{background:#1038ae;box-shadow:0 12px 28px #1746d14d}.button-secondary{border-color:var(--border);color:var(--navy);background:#fff}.button-on-dark{color:var(--navy);background:#fffffff0}.text-button{color:var(--cobalt);cursor:pointer;background:0 0;border:0;padding:7px 4px;font-weight:800}.toast{color:#173d9b;background:#eef4ff;border:1px solid #bfd6ff;border-radius:13px;margin:-7px 0 20px;padding:13px 17px;font-size:14px;font-weight:750}.section-heading{justify-content:space-between;align-items:flex-start;gap:22px;margin-bottom:24px;display:flex}.section-heading.compact{align-items:center}.section-heading h2,.guideline-card h2,.coach-card h2,.recent-card h2{letter-spacing:-.045em;margin:0;font-size:clamp(21px,2.1vw,29px);line-height:1.18}.section-heading p:not(.eyebrow){color:var(--muted);margin:8px 0 0}.status-badge{background:var(--teal-pale);color:#067b78;padding:9px 12px}.status-badge.warning{background:var(--amber-pale);color:#915a0a}.status-badge.warning span{color:var(--amber)}.hero-grid,.dashboard-grid,.lower-grid{grid-template-columns:minmax(0,1.48fr) minmax(390px,.92fr);gap:22px;display:grid}.upload-card,.calorie-card,.macro-card,.week-card,.guideline-card,.goal-editor,.analysis-panel{padding:clamp(24px,3vw,38px)}.dropzone{background-color:#f8fbff;background-image:linear-gradient(#1746d10c 1px,#0000 1px),linear-gradient(90deg,#1746d10c 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:52px 52px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border:2px dashed #9fb4ce;border-radius:20px;place-items:center;min-height:360px;transition:border-color .18s,background .18s,transform .18s;display:grid;position:relative;overflow:hidden}.dropzone.dragging{border-color:var(--cobalt);background-color:#eef4ff;transform:translateY(-2px)}.dropzone-content{z-index:2;text-align:center;max-width:540px;padding:42px 24px;position:relative}.dropzone-content:before{z-index:-1;content:"";background:radial-gradient(circle at 50% 40%,#fff 0 32%,#edf3ff 33% 72%,#0000 73%);border-radius:50%;width:260px;height:260px;position:absolute;top:14px;left:50%;transform:translate(-50%)}.camera-icon{border:4px solid var(--cobalt);background:#fff;border-radius:15px;width:74px;height:56px;margin:0 auto 26px;display:block;position:relative;box-shadow:0 10px 22px #1746d11f}.camera-icon:before{background:var(--cobalt);content:"";border-radius:7px 7px 0 0;width:32px;height:12px;position:absolute;top:-13px;left:17px}.camera-icon span{border:5px solid var(--teal);border-radius:50%;width:25px;height:25px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.dropzone h3{letter-spacing:-.045em;margin:0;font-size:clamp(22px,2.4vw,30px)}.dropzone p{color:var(--muted);margin:10px 0 24px}.upload-button{min-width:190px}.upload-choice-row{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.upload-choice-row .upload-button{min-width:156px}.meal-choice-notice{color:#234575;background:#f3f7ff;border:1px solid #bfd0f2;border-radius:13px;align-items:center;gap:10px;margin:14px 0 11px;padding:12px 15px;display:flex}.meal-choice-notice>span{background:var(--cobalt);color:#fff;border-radius:50%;flex:0 0 27px;place-items:center;height:27px;font-size:12px;font-weight:900;display:grid}.meal-choice-notice strong{font-size:13px}.meal-choice-notice p{color:var(--muted);margin:0 0 0 auto;font-size:11px}.dropzone.awaiting-meal{background-color:#f7f9fc;border-color:#cbd6e7}.dropzone.awaiting-meal .camera-icon{opacity:.58;filter:grayscale(.25)}.dropzone small{color:#8292aa;margin-top:16px;display:block}.scan-corner{width:44px;height:44px;position:absolute}.scan-corner.top-left{border-top:3px solid #7298fa;border-left:3px solid #7298fa;border-radius:8px 0 0;top:25px;left:25px}.scan-corner.bottom-right{border-bottom:3px solid #7298fa;border-right:3px solid #7298fa;border-radius:0 0 8px;bottom:25px;right:25px}.dropzone.has-image{background:#0b1730;min-height:270px}.dropzone.has-image>img{object-fit:cover;width:100%;height:100%;min-height:270px}.image-overlay{color:#fff;background:linear-gradient(#0000,#081530e6);justify-content:space-between;align-items:center;gap:18px;padding:22px;font-size:13px;font-weight:750;display:flex;position:absolute;bottom:0;left:0;right:0}.image-overlay-actions{justify-content:flex-end}.description-step{background:#f7faff;border:1px solid #cbdaf2;border-radius:17px;margin-top:18px;padding:18px}.description-step label>span{justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:9px;font-size:13px;font-weight:850;display:flex}.description-step label small{color:var(--muted);font-size:11px;font-weight:650}.description-step textarea{resize:vertical;border:1px solid var(--border);width:100%;min-height:92px;color:var(--navy);background:#fff;border-radius:12px;padding:13px 14px;line-height:1.55}.description-step textarea::placeholder{color:#90a0b5}.description-footer{justify-content:space-between;align-items:center;gap:14px;margin-top:11px;display:flex}.description-footer>span{color:var(--muted);font-size:11px;font-weight:700}.analysis-quick-save{background:linear-gradient(145deg,#f5f8ff,#eef7ff);border:1px solid #b9d1ff;border-radius:18px;margin-top:14px;padding:16px}.analysis-result-photo{background:#142238;border-radius:15px;justify-content:center;align-items:center;height:clamp(360px,62svh,620px);margin:0 0 14px;display:flex;position:relative;overflow:hidden}.analysis-result-photo-backdrop{object-fit:cover;filter:blur(22px)brightness(.48)saturate(.9);width:calc(100% + 48px);height:calc(100% + 48px);position:absolute;inset:-24px;transform:scale(1.04)}.analysis-result-photo-frame{z-index:1;max-width:100%;height:100%;display:inline-block;position:relative}.analysis-result-photo-main{object-fit:contain;width:auto;max-width:100%;height:100%;display:block}.analysis-result-photo .food-label-layer{z-index:8}.analysis-result-photo .food-detection-label{background:#313a48f0;border-color:#ffffffb3;box-shadow:0 8px 22px #00000061}.analysis-result-photo>span{z-index:5;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0b1d37c7;border-radius:999px;padding:6px 9px;font-size:9px;font-weight:900;position:absolute;bottom:10px;right:10px}.quick-save-header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.quick-save-header h3{color:var(--navy);letter-spacing:-.04em;margin:3px 0;font-size:20px}.quick-save-header>div>span{color:var(--muted);font-size:10px;font-weight:750}.quick-save-kcal{color:var(--cobalt);letter-spacing:-.06em;white-space:nowrap;flex:none;font-size:29px}.quick-save-kcal small{color:var(--muted);letter-spacing:0;margin-left:3px;font-size:11px}.analysis-input-kind{background:#f3f8ff;border:1px solid #c9ddff;border-radius:13px;flex-direction:column;gap:3px;margin:11px 0 2px;padding:11px 13px;display:flex}.analysis-input-kind strong{color:#174f91;font-size:12px}.analysis-input-kind span{color:#60728a;font-size:10px;line-height:1.45}.analysis-input-kind.review{background:#fff9ec;border-color:#efd7a7}.analysis-input-kind.review strong{color:#87560b}.quick-save-nutrition{color:#385272;background:#fff;border-radius:12px;flex-wrap:wrap;gap:7px;margin:12px 0;padding:9px 10px;font-size:10px;font-weight:850;display:flex}.quick-save-nutrition span:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px;margin-right:4px;display:inline-block}.quick-save-nutrition .carb{color:#7255d7}.quick-save-nutrition .protein{color:#147bba}.quick-save-nutrition .fat{color:#087e78}.quick-save-confidence{flex-wrap:wrap;align-items:center;gap:7px;margin:5px 0 7px;display:flex}.quick-save-confidence>span:not(.nutrition-confidence-badge){color:#526b88;font-size:9px;font-weight:850}.nutrition-confidence-badge{white-space:nowrap;border:1px solid;border-radius:999px;align-items:center;gap:6px;width:fit-content;min-height:26px;padding:5px 9px;font-size:9px;font-weight:900;line-height:1;display:inline-flex}.nutrition-confidence-badge i{background:currentColor;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px}@supports (color:color-mix(in lab, red, red)){.nutrition-confidence-badge i{box-shadow:0 0 0 3px color-mix(in srgb, currentColor 13%, transparent)}}.nutrition-confidence-badge small{min-width:20px;min-height:20px;color:inherit;background:#ffffffb8;border-radius:999px;place-items:center;font-size:8px;display:grid}.nutrition-confidence-badge.high{color:#147255;background:#ebf8f2}.nutrition-confidence-badge.medium{color:#9a5a08;background:#fff6df}.nutrition-confidence-badge.low{color:#b44148;background:#fff0f1}.nutrition-confidence-badge.compact{border-color:currentColor;min-height:20px;margin-top:5px;padding:3px 7px}@supports (color:color-mix(in lab, red, red)){.nutrition-confidence-badge.compact{border-color:color-mix(in srgb, currentColor 45%, transparent)}}.nutrition-confidence-badge.compact{font-size:8px}.nutrition-confidence-badge.compact i{width:5px;height:5px}.saved-nutrition-source .nutrition-confidence-badge{vertical-align:middle}.meal-macro-ratio{background:#fff;border:1px solid #e0e7f3;border-radius:12px;margin:-3px 0 14px;padding:10px}.meal-macro-legend{color:#526884;flex-wrap:wrap;gap:7px 13px;font-size:9px;font-weight:850;display:flex}.meal-macro-legend span:before{content:"";background:currentColor;border-radius:3px;width:7px;height:7px;margin-right:5px;display:inline-block}.meal-macro-legend .carb{color:#7966ee}.meal-macro-legend .protein{color:#4d9cf5}.meal-macro-legend .fat{color:#37aaa9}.meal-macro-track{background:#edf1f7;border-radius:999px;height:8px;margin-top:9px;display:flex;overflow:hidden}.meal-macro-track span{min-width:0;transition:width .25s}.meal-macro-track .carb{background:#7966ee}.meal-macro-track .protein{background:#4d9cf5}.meal-macro-track .fat{background:#37c4c3}.meal-macro-ratio.compact{background:#f9fbff;border-color:#dbe5f3;margin:8px 0 5px;padding:7px 8px}.meal-macro-ratio.compact .meal-macro-legend{gap:5px 9px;font-size:8px}.meal-macro-ratio.compact .meal-macro-track{height:5px;margin-top:6px}.pizza-estimator{background:#fffc;border:1px solid #c8dafc;border-radius:14px;grid-template-columns:minmax(140px,.7fr) minmax(0,1fr) minmax(0,1fr);gap:10px;margin:0 0 12px;padding:12px;display:grid}.pizza-estimator>div>strong,.pizza-estimator>div>small{display:block}.pizza-estimator>div>strong{color:#1d426f;font-size:12px}.pizza-estimator>div>small{color:var(--muted);margin-top:4px;font-size:9px;line-height:1.45}.pizza-estimator fieldset{border:0;min-width:0;padding:0}.pizza-estimator legend{color:var(--muted);margin-bottom:5px;font-size:9px;font-weight:850}.pizza-estimator fieldset>div{flex-wrap:wrap;gap:5px;display:flex}.pizza-estimator button{color:#3b5576;cursor:pointer;min-height:30px;font:inherit;background:#fff;border:1px solid #c8d7ec;border-radius:9px;padding:5px 8px;font-size:9px;font-weight:820}.pizza-estimator button.selected{border-color:var(--cobalt);color:var(--cobalt);background:#eaf1ff}.pizza-estimator>p{color:#315b9e;grid-column:1/-1;margin:0;font-size:10px;font-weight:820}.quick-save-serving{grid-template-columns:minmax(145px,.85fr) minmax(0,1.5fr);align-items:center;gap:12px;display:grid}.quick-save-serving strong,.quick-save-serving small{display:block}.quick-save-serving strong{color:#1d426f;font-size:12px}.quick-save-serving small{color:var(--muted);margin-top:3px;font-size:10px;line-height:1.45}.quick-save-presets{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.quick-save-presets button{color:#3b5576;cursor:pointer;min-height:34px;font:inherit;background:#fff;border:1px solid #c8d7ec;border-radius:10px;padding:6px 10px;font-size:10px;font-weight:850}.quick-save-presets button:hover,.quick-save-presets button.selected{border-color:var(--cobalt);color:var(--cobalt);background:#eaf1ff}.quick-save-presets .food-zero-button{color:#69788c;background:#f7f9fc;border-style:dashed}.quick-save-presets .food-zero-button.selected{color:#33465f;background:#e8edf4;border-style:solid;border-color:#73849b}.analysis-quick-save .quantity-custom{width:76px}.quick-save-confirm{min-height:36px;margin-top:10px}.quick-save-confirm .serving-confirm-button{border:1px solid var(--cobalt);color:#fff;background:var(--cobalt);cursor:pointer;width:100%;min-height:36px;font:inherit;border-radius:10px;padding:8px 12px;font-size:10px;font-weight:850}.quick-save-confirm .serving-confirmed-copy{color:#237052;margin:8px 0 0;font-size:10px;font-weight:850;display:block}.quick-save-confirm .serving-pending-copy{color:#8c5b14;margin:8px 0 0;font-size:10px;font-weight:850;display:block}.detected-food-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin:14px 0 9px;display:flex}.detected-food-heading strong,.detected-food-heading small{display:block}.detected-food-heading strong{color:#1d426f;font-size:13px}.detected-food-heading small{color:var(--muted);margin-top:4px;font-size:10px;line-height:1.45}.detected-food-heading>span{color:#5f6f84;background:#e3eaf4;border-radius:999px;flex:none;padding:5px 8px;font-size:9px;font-weight:900}.detected-food-portions{gap:9px;display:grid}.detected-food-portions article{background:#ffffffeb;border:1px solid #cad5e5;border-radius:14px;padding:12px;scroll-margin-block:120px;transition:border-color .18s,box-shadow .18s,background .18s}.detected-food-portions article.confirmed{background:#f5fcf8;border-color:#9bd4bc;box-shadow:0 7px 18px #18704e12}.detected-food-title{grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:9px;margin-bottom:10px;display:grid}.detected-food-title>span{color:#fff;background:#68788d;border-radius:8px;place-items:center;width:24px;height:24px;font-size:10px;font-weight:900;display:grid}.detected-food-portions article.confirmed .detected-food-title>span{background:#21805d}.detected-food-title strong,.detected-food-title small{display:block}.detected-food-title strong{color:var(--navy);font-size:13px}.detected-food-title small{color:var(--muted);margin-top:2px;font-size:9px}.detected-food-title em{color:#7a8798;font-size:9px;font-style:normal;font-weight:900}.detected-food-portions article.confirmed .detected-food-title em{color:#21805d}.food-identity-label{color:#718198;margin:0 0 6px;font-size:8px;font-weight:800}.food-identity-options{scrollbar-width:none;gap:6px;margin:0 0 10px;padding-bottom:2px;display:flex;overflow-x:auto}.food-identity-options::-webkit-scrollbar{display:none}.food-identity-options button{color:#536782;cursor:pointer;min-height:31px;font:inherit;white-space:nowrap;background:#f0f3f8;border:0;border-radius:999px;flex:none;padding:6px 10px;font-size:9px;font-weight:820}.food-identity-options button:hover{color:var(--cobalt);background:#e7efff}.food-identity-options .food-search-open{color:#31568c;background:#fff;border:1px solid #d4dfef}.food-search-panel{background:#f4f8ff;border:1px solid #bcd1f5;border-radius:12px;margin:0 0 11px;padding:11px}.food-search-panel form{grid-template-columns:minmax(0,1fr) auto 32px;gap:6px;display:grid}.food-search-panel input{width:100%;height:38px;color:var(--navy);font:inherit;background:#fff;border:1px solid #cad8eb;border-radius:10px;outline:0;padding:0 11px;font-size:10px}.food-search-panel input:focus{border-color:#7095df;box-shadow:0 0 0 3px #275bc414}.food-search-panel form>button{color:#fff;background:var(--cobalt);cursor:pointer;min-width:54px;font:inherit;border:0;border-radius:10px;font-size:9px;font-weight:900}.food-search-panel form>button:disabled{opacity:.55;cursor:wait}.food-search-panel form>.food-search-close{color:#5f728c;background:#e4ebf5;min-width:32px;font-size:17px}.food-search-error{color:#9a5d12;margin:8px 2px 0;font-size:9px;font-weight:750}.food-search-error-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.food-search-error-row button{color:#2857a8;cursor:pointer;font:inherit;background:#fff;border:1px solid #b8ccef;border-radius:9px;flex:none;margin-top:8px;padding:7px 9px;font-size:8px;font-weight:900}.food-search-results{gap:5px;margin-top:9px;display:grid}.food-search-priority-label{color:#31568c;margin:1px 2px 2px;font-size:9px;font-weight:900}.food-search-results>button{color:#294663;cursor:pointer;width:100%;font:inherit;text-align:left;background:#fff;border:1px solid #dbe4f1;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;display:flex}.food-search-results>button.primary-match,.manual-food-results>button.primary-match{background:linear-gradient(135deg,#f5f9ff,#edf4ff);border-color:#75a0ef;box-shadow:0 5px 14px #1c4cae14}.food-search-results>button:hover{background:#f8fbff;border-color:#94b3ed}.food-search-results span{min-width:0}.food-search-results strong,.food-search-results small{display:block}.food-search-results strong{font-size:10px}.food-search-results small{color:#7a8a9f;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:8px;overflow:hidden}.food-search-results em{color:var(--cobalt);white-space:nowrap;flex:none;font-size:9px;font-style:normal;font-weight:850}.food-search-alternatives{border-top:1px dashed #cad8eb;margin-top:3px}.food-search-alternatives summary{color:#62748c;cursor:pointer;padding:9px 2px 4px;font-size:9px;font-weight:850;list-style-position:inside}.food-search-alternatives>div{gap:5px;padding-top:3px;display:grid}.food-search-alternatives button{color:#294663;cursor:pointer;width:100%;font:inherit;text-align:left;background:#fff;border:1px solid #dbe4f1;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;display:flex}.food-search-alternatives button:hover{background:#f8fbff;border-color:#94b3ed}.food-search-alternatives button span{min-width:0}.food-search-alternatives button strong,.food-search-alternatives button small{display:block}.food-search-alternatives button strong{font-size:10px}.food-search-alternatives button small{color:#7a8a9f;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:8px;overflow:hidden}.food-search-alternatives button em{color:var(--cobalt);white-space:nowrap;flex:none;font-size:9px;font-style:normal;font-weight:850}.food-family-results>p{color:#31568c;margin:0 2px 5px;font-size:9px;font-weight:900}.food-family-results>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.food-family-results button{color:#294663;cursor:pointer;min-width:0;font:inherit;text-align:left;background:#fff;border:1px solid #d5e0ef;border-radius:11px;justify-content:space-between;align-items:flex-start;gap:7px;padding:10px;display:flex}.food-family-results button:hover{background:#f5f9ff;border-color:#88a9e5}.food-family-results button strong,.food-family-results button small{display:block}.food-family-results button strong{font-size:10px}.food-family-results button small{color:#7a8a9f;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:8px;overflow:hidden}.food-family-results button em{color:var(--cobalt);white-space:nowrap;flex:none;font-size:8px;font-style:normal;font-weight:850}.detected-food-portions .quick-save-presets{justify-content:flex-start}.detected-food-total{border-top:1px dashed #d7dfeb;grid-template-columns:minmax(145px,.9fr) minmax(115px,.7fr) auto;align-items:end;gap:9px;margin-top:10px;padding-top:10px;display:grid}.detected-food-total label>span{color:var(--muted);margin-bottom:5px;font-size:9px;font-weight:850;display:block}.detected-food-total p{margin:0}.detected-food-total p strong,.detected-food-total p span{display:block}.detected-food-total p strong{color:var(--cobalt);font-size:14px}.detected-food-total p span{color:var(--muted);margin-top:2px;font-size:9px}.food-confirm-button{border:1px solid var(--cobalt);color:#fff;background:var(--cobalt);cursor:pointer;min-height:36px;font:inherit;border-radius:10px;padding:7px 11px;font-size:10px;font-weight:900}.portion-total{grid-template-columns:minmax(0,1.6fr) minmax(150px,.5fr)}.quick-save-actions{gap:8px;margin-top:10px;display:flex}.quick-save-actions .button-secondary{flex:none}.quick-save-actions .button-primary{flex:1}.meal-scope-choice{background:#f7faff;border:1px solid #cbdcf5;border-radius:15px;justify-content:space-between;align-items:center;gap:14px;margin:15px 0;padding:13px 14px;display:flex}.meal-scope-choice strong,.meal-scope-choice small{display:block}.meal-scope-choice strong{color:#183d70;font-size:12px}.meal-scope-choice small{color:var(--muted);margin-top:3px;font-size:9px;line-height:1.45}.meal-scope-choice>div:last-child{flex:none;gap:6px;display:flex}.meal-scope-choice button{color:#365779;cursor:pointer;min-height:36px;font:inherit;background:#fff;border:1px solid #c7d7ee;border-radius:10px;padding:7px 11px;font-size:10px;font-weight:900}.meal-scope-choice button.selected{border-color:var(--cobalt);color:#fff;background:var(--cobalt)}.analysis-inline-details{background:#ffffffe6;border:1px solid #cad9ed;border-radius:16px;gap:12px;margin-top:14px;padding:16px;scroll-margin-top:70px;display:grid}.analysis-inline-details>div:first-child strong,.analysis-inline-details>div:first-child small{display:block}.analysis-inline-details>div:first-child strong{color:#183d70;font-size:13px}.analysis-inline-details>div:first-child small{color:var(--muted);margin-top:4px;font-size:9px;line-height:1.5}.analysis-inline-details>a{color:var(--cobalt);font-size:10px;font-weight:850}.calorie-card{flex-direction:column;display:flex}.record-summary{min-height:0}.record-summary .calorie-main{min-height:170px}.record-summary .calorie-meta{display:none}.percent-pill{min-width:58px;height:35px;color:var(--cobalt);background:#e9efff;border-radius:999px;justify-content:center;align-items:center;font-weight:850;display:inline-flex}.percent-pill.warning{background:var(--amber-pale);color:#9a5a00}.calorie-main{flex:1;justify-content:space-between;align-items:center;gap:20px;min-height:250px;display:flex}.calorie-number strong{letter-spacing:-.07em;font-size:clamp(50px,6vw,82px);line-height:.98;display:block}.calorie-number span{color:var(--muted);margin-top:12px;font-weight:700;display:block}.calorie-ring{--progress:0deg;background:conic-gradient(var(--cobalt) var(--progress), #e8eef7 0);border-radius:50%;flex:none;place-items:center;width:162px;height:162px;display:grid}.calorie-ring:before{content:"";background:#fff;border-radius:50%;grid-area:1/1;width:132px;height:132px}.calorie-ring.warning{background:conic-gradient(var(--amber) var(--progress), #f7ead3 0)}.calorie-ring>div{z-index:1;text-align:center;grid-area:1/1;position:relative}.calorie-ring small{color:var(--muted);font-size:11px;font-weight:750;display:block}.calorie-ring strong{letter-spacing:-.05em;margin-top:3px;font-size:29px;display:inline-block}.calorie-ring span{margin-left:3px;font-size:12px;font-weight:750}.calorie-track{background:#e9eef5;border-radius:999px;height:12px;overflow:hidden}.calorie-track span{border-radius:inherit;background:linear-gradient(90deg, var(--cobalt), #5a8bff);height:100%;transition:width .7s;display:block}.calorie-meta{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:24px;display:grid}.calorie-meta div{background:#f6f9fc;border-radius:13px;padding:13px 12px}.calorie-meta span,.calorie-meta strong{display:block}.calorie-meta span{color:var(--muted);margin-bottom:4px;font-size:11px}.calorie-meta strong{font-size:14px}.sodium-flow-inline{white-space:nowrap;align-items:center;gap:6px;display:inline-flex!important}.sodium-flow-inline i,.sodium-flow-chip i{background:#aab6c7;border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 0 3px #aab6c721}.sodium-flow-inline.green i,.sodium-flow-chip.green i{background:#38a979;box-shadow:0 0 0 3px #38a97921}.sodium-flow-inline.yellow i,.sodium-flow-chip.yellow i{background:#e0a229;box-shadow:0 0 0 3px #e0a22926}.sodium-flow-inline.red i,.sodium-flow-chip.red i{background:#db6666;box-shadow:0 0 0 3px #db666621}.analysis-panel,.goal-editor{margin-top:22px}.analyzing-state{grid-template-columns:160px minmax(0,1fr);justify-content:center;align-items:center;gap:24px;min-height:160px;display:grid}.analysis-loading-visual{background:#dfe9f8;border:1px solid #ffffffe6;border-radius:26px;position:relative;overflow:hidden;box-shadow:0 22px 54px #1f498e33}.analysis-loading-visual:after{border-radius:inherit;content:"";pointer-events:none;background:linear-gradient(#0000 52%,#081e4647);position:absolute;inset:0}.analyzing-state h2{letter-spacing:-.04em;margin:0}.analyzing-state p:last-child{color:var(--muted);margin:7px 0 0}.analysis-spinner{border:6px solid #e2eaff;border-top-color:var(--cobalt);border-radius:50%;width:54px;height:54px;animation:.85s linear infinite spin}.analyzing-photo{object-fit:contain;width:160px;height:160px;display:block}.analysis-loading-visual .analysis-spinner{z-index:2;filter:drop-shadow(0 4px 8px #09204a4d);border-width:5px;border-color:#fff #ffffff9e #ffffff9e;width:38px;height:38px;position:absolute;bottom:14px;right:14px}@keyframes spin{to{transform:rotate(360deg)}}.analysis-form,.goal-fields{grid-template-columns:1.5fr repeat(5,minmax(112px,.65fr));gap:12px;display:grid}.goal-fields{grid-template-columns:repeat(4,1fr)}.analysis-form label>span,.goal-fields label>span{color:var(--muted);margin-bottom:7px;font-size:12px;font-weight:750;display:block}.analysis-form input,.goal-fields input{border:1px solid var(--border);width:100%;min-width:0;height:48px;color:var(--navy);background:#fbfdff;border-radius:12px;font-weight:780}.meal-name-field input{padding:0 14px}.number-input{position:relative}.number-input input{padding:0 42px 0 13px}.number-input span{color:var(--muted);font-size:11px;font-weight:750;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.analysis-actions{justify-content:flex-end;align-items:center;gap:16px;margin-top:24px;display:flex}.analysis-action-group{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.uncertainty-note{background:var(--amber-pale);color:#7e4f08;border:1px solid #f1d7a5;border-radius:14px;align-items:flex-start;gap:12px;margin-bottom:18px;padding:14px 16px;display:flex}.uncertainty-note>span{background:var(--amber);color:#fff;border-radius:50%;flex:none;place-items:center;width:25px;height:25px;font-weight:900;display:grid}.uncertainty-note strong,.uncertainty-note p{display:block}.uncertainty-note p{margin:3px 0 0;font-size:13px}.goal-editor .button-primary{margin-top:20px}.goal-basis{color:#345170;background:#eef4ff;border-radius:13px;align-items:center;gap:14px;margin-top:18px;padding:13px 15px;font-size:13px;display:flex}.dashboard-grid,.lower-grid{margin-top:22px}.macro-card{min-height:445px}.metric-note{color:var(--muted);font-size:12px;font-weight:750}.macro-list{gap:28px;padding:20px 0 28px;display:grid}.macro-row{grid-template-columns:120px minmax(130px,1fr) 106px;align-items:center;gap:17px;display:grid}.macro-label{align-items:center;gap:11px;display:flex}.macro-dot{border-radius:5px;width:15px;height:15px;display:block;transform:rotate(7deg)}.blue{background-color:var(--cobalt)}.teal{background-color:var(--teal)}.sky{background-color:var(--sky)}.amber{background-color:var(--amber)}.progress-track{background:#e7edf4;border-radius:999px;height:14px;overflow:hidden}.progress-fill{border-radius:inherit;height:100%;transition:width .75s cubic-bezier(.16,1,.3,1);display:block}.progress-fill.over{background:var(--amber)}.macro-value{text-align:right;white-space:nowrap}.macro-value strong{font-size:19px}.macro-value span{color:var(--muted);margin-left:3px;font-size:13px}.macro-insight{border:1px solid var(--line);border-radius:16px;align-items:flex-start;gap:13px;padding:16px;display:flex}.macro-insight.mood-praise{background:#eefbf6;border-color:#b9e5d4}.macro-insight.mood-praise .insight-icon{color:#157454;background:#d7f5e8}.macro-insight.mood-thinking{background:#f2f6ff;border-color:#c9d9f7}.macro-insight.mood-thinking .insight-icon{color:#315db2;background:#dfe9ff}.macro-insight.mood-warning{background:#fff6e3;border-color:#f1d39f}.macro-insight.mood-warning .insight-icon{color:#9d6108;background:#ffe8b7}.macro-insight.mood-steady{background:#f6f9fc;border-color:#d7e2f0}.macro-insight.mood-steady .insight-icon{color:#526b8d;background:#e5ecf5}.insight-icon{background:var(--amber-pale);color:#9d6108;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-weight:850;display:grid}.macro-insight p{color:var(--navy-soft);margin:2px 0 0;font-size:14px}.macro-insight p strong{color:var(--navy);margin-bottom:4px;display:block}.right-stack{gap:22px;display:grid}.recent-card{padding:27px}.recent-topline,.coach-topline{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;font-size:11px;font-weight:800;display:flex}.analyzed-label{color:#087f7b}.recent-content{grid-template-columns:74px 1fr auto;align-items:center;gap:18px;margin-top:21px;display:grid}.meal-thumb{background:#dce7f6;border-radius:18px;width:74px;height:74px;position:relative;overflow:hidden}.meal-thumb:before{content:"";background:#eab565;border:6px solid #f7fbff;border-radius:50%;position:absolute;inset:11px}.meal-thumb span,.meal-thumb i,.meal-thumb b{border-radius:50%;width:25px;height:25px;position:absolute}.meal-thumb span{background:#2e62e8;top:18px;left:14px}.meal-thumb i{background:#00a6a2;top:18px;right:13px}.meal-thumb b{background:#8fb7ff;bottom:13px;left:26px}.meal-copy h2{font-size:20px}.meal-copy p{color:var(--muted);margin:6px 0 0;font-size:13px}.meal-kcal{white-space:nowrap}.meal-kcal strong{letter-spacing:-.055em;font-size:31px}.meal-kcal span{margin-left:4px;font-size:12px;font-weight:750}.coach-card{isolation:isolate;background:linear-gradient(135deg, #102f6c, var(--cobalt));color:#fff;border-radius:24px;min-height:202px;padding:29px 182px 29px 29px;position:relative;overflow:hidden;box-shadow:0 18px 42px #1746d138}.coach-card:before,.coach-card:after{z-index:-1;content:"";pointer-events:none;border-radius:50%;position:absolute}.coach-card:before{background:#ffffff14;width:230px;height:230px;top:-90px;right:30px}.coach-card:after{border:1px solid #ffffff24;width:185px;height:185px;bottom:-80px;right:-35px}.coach-card.mood-praise{background:linear-gradient(135deg,#0d3d78,#1c65df 58%,#0b8f9a)}.coach-card.mood-thinking{background:linear-gradient(135deg,#183368,#405bc9 60%,#3b77ca)}.coach-card.mood-warning{background:linear-gradient(135deg,#162e61,#3156b6 58%,#98621a)}.coach-card-content{z-index:2;min-width:0;position:relative}.coach-card-avatar{z-index:1;object-fit:contain;filter:drop-shadow(0 14px 18px #04143738);width:168px;height:168px;position:absolute;bottom:-20px;right:13px}.coach-card .eyebrow{color:#92bcff;margin:0}.coach-topline>span{color:#fff;background:#ffffff24;border-radius:999px;padding:6px 9px}.coach-card h2{max-width:470px;margin-top:19px}.coach-card-content>p{color:#dce8ff;max-width:520px;margin:12px 0 0;font-size:13px}.coach-foods{flex-wrap:wrap;gap:7px;margin-top:17px;display:flex}.coach-foods span{background:#ffffff14;border:1px solid #fff3;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:750}.week-guidance-copy{max-width:620px;color:var(--muted);margin:7px 0 0;font-size:11px;line-height:1.6}.coach-avatar-motion{transform-origin:50% 86%;will-change:transform}.coach-avatar-motion.mood-steady{animation:3.8s ease-in-out infinite coach-float}.coach-avatar-motion.mood-thinking{animation:3.1s ease-in-out infinite coach-think}.coach-avatar-motion.mood-praise{animation:2.15s ease-in-out infinite coach-praise}.coach-avatar-motion.mood-warning{animation:1.9s ease-in-out infinite coach-warning}.coach-avatar-motion.is-static{will-change:auto;animation:none;transform:none}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.member-panel-error{text-align:center;place-content:center;justify-items:center;gap:10px;min-height:min(420px,55dvh);display:grid}.member-panel-error[hidden]{display:none!important}.member-panel-error h2{margin:0}.member-panel-error p{max-width:34rem;color:var(--muted);margin:0}.member-panel-error small{color:var(--muted)}.member-inline-error{color:#8f3434;background:#fff5f5eb;border:1px solid #d34c4c38;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;margin:12px 0;padding:12px 14px;font-size:13px;font-weight:700;display:flex}.member-inline-error button{color:#1747bd;font:inherit;cursor:pointer;background:#fff;border:0;border-radius:999px;flex:none;padding:8px 11px}.offline-status{top:var(--topbar-height,72px);z-index:85;color:#36506d;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fafcfff5;border-bottom:1px solid #0f2d521a;justify-content:center;align-items:center;gap:9px;padding:9px 16px;display:flex;position:sticky}.offline-status span{color:#173e70;background:#e7eef8;border-radius:999px;flex:none;padding:3px 8px;font-size:11px;font-weight:850}.offline-status p{margin:0;font-size:12px;font-weight:650}@keyframes coach-float{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-3px)rotate(-1deg)}}@keyframes coach-think{0%,to{transform:translateY(0)rotate(-1.2deg)}50%{transform:translateY(-2px)rotate(1.8deg)}}@keyframes coach-praise{0%,to{transform:translateY(0)rotate(0)scale(1)}45%{transform:translateY(-6px)rotate(-2deg)scale(1.025)}62%{transform:translateY(-2px)rotate(1deg)scale(1.01)}}@keyframes coach-warning{0%,72%,to{transform:translate(0)rotate(0)}78%{transform:translate(-2px)rotate(-1deg)}84%{transform:translate(2px)rotate(1deg)}90%{transform:translate(-1px)rotate(-.5deg)}}.week-card,.guideline-card{min-height:420px}.week-summary{color:var(--muted);align-items:baseline;gap:4px;display:flex}.week-summary strong{color:var(--cobalt);font-size:28px}.week-summary span{font-size:12px;font-weight:750}.week-chart{border-bottom:1px solid var(--line);grid-template-columns:repeat(7,1fr);align-items:end;gap:10px;height:230px;padding:18px 0 0;display:grid}.week-bar{text-align:center;grid-template-rows:1fr auto;gap:9px;height:100%;display:grid}.bar-space{justify-content:center;align-items:flex-end;display:flex;position:relative}.bar-space>span{background:linear-gradient(#80a9ff, var(--cobalt));border-radius:11px 11px 3px 3px;width:min(46px,72%);display:block;position:relative}.bar-space>span.over{background:linear-gradient(#ffca77, var(--amber))}.bar-space em{color:var(--muted);font-size:9px;font-style:normal;font-weight:750;position:absolute;top:-22px;left:50%;transform:translate(-50%)}.week-bar>strong{color:var(--muted);font-size:11px}.week-goal-line{color:var(--muted);align-items:center;gap:8px;margin-top:16px;font-size:11px;display:flex}.week-goal-line span{border-top:2px dashed var(--amber);width:22px}.guideline-card{flex-direction:column;display:flex}.guideline-list{border-top:1px solid var(--line);margin-top:23px;display:grid}.guideline-list a{border-bottom:1px solid var(--line);color:var(--navy);grid-template-columns:36px 1fr auto;align-items:center;gap:14px;padding:18px 0;text-decoration:none;display:grid}.guideline-list a:hover strong{color:var(--cobalt)}.guide-number{color:var(--cobalt);font-size:11px;font-weight:850}.guideline-list strong,.guideline-list p{display:block}.guideline-list p{color:var(--muted);margin:5px 0 0;font-size:12px}.disclaimer{color:#7d8ca2;margin:auto 0 0;padding-top:20px;font-size:11px}footer{border-top:1px solid var(--border);color:var(--muted);background:#fff;justify-content:space-between;align-items:center;gap:20px;padding:34px 4vw;font-size:12px;display:flex}footer div{align-items:center;gap:10px;display:flex}footer strong{color:var(--navy);font-size:15px}footer p{margin:0}.visually-hidden{clip:rect(1px, 1px, 1px, 1px)!important;white-space:nowrap!important;width:1px!important;height:1px!important;position:absolute!important;overflow:hidden!important}@media (width<=1120px){.hero-grid,.dashboard-grid,.lower-grid{grid-template-columns:1fr}.calorie-card{min-height:420px}.record-summary{min-height:0}.analysis-form{grid-template-columns:repeat(3,1fr)}.meal-name-field{grid-column:span 3}.right-stack{grid-template-columns:1fr 1fr}}@media (width<=760px){.topbar{min-height:66px;padding:0 18px}.brand-mark{width:34px;height:34px}.streak,.avatar{display:none}.app-shell{width:calc(100% - 28px);padding:34px 0 54px}.intro{display:block}.intro>div>p:last-child{font-size:15px}.source-chip{white-space:normal;width:max-content;max-width:100%;margin-top:20px}.upload-card,.calorie-card,.macro-card,.week-card,.guideline-card,.goal-editor,.analysis-panel{border-radius:19px;padding:22px}.section-heading{display:block}.section-heading .status-badge,.section-heading .metric-note{margin-top:14px}.dropzone{min-height:330px}.dropzone-content{padding:36px 17px}.calorie-main{min-height:230px}.record-summary .calorie-main{min-height:150px}.calorie-ring{width:130px;height:130px}.calorie-ring:before{width:106px;height:106px}.calorie-number strong{font-size:49px}.calorie-meta{grid-template-columns:1fr 1fr}.calorie-meta div:last-child{grid-column:span 2}.analysis-form,.goal-fields{grid-template-columns:1fr 1fr}.meal-name-field{grid-column:span 2}.goal-basis{display:grid}.macro-row{grid-template-columns:1fr auto;gap:9px 14px}.progress-track{grid-area:2/1/auto/-1}.right-stack{grid-template-columns:1fr}.recent-content{grid-template-columns:58px 1fr}.meal-thumb{width:58px;height:58px}.meal-kcal{grid-column:2}.week-chart{gap:4px}.bar-space em{display:none}footer{padding:27px 18px;display:block}footer div{gap:2px;display:grid}footer p{margin-top:14px}}.pwa-install-prompt{z-index:10000;left:50%;bottom:calc(92px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff7;border:1px solid #1d4eb42e;border-radius:22px;grid-template-columns:52px minmax(0,1fr) auto 26px;align-items:center;gap:10px;width:min(100% - 24px,520px);min-height:78px;padding:11px 10px 11px 12px;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 18px 50px #1631643d}.pwa-install-prompt>img{object-fit:cover;border-radius:15px;width:52px;height:52px}.pwa-install-prompt>div{gap:3px;min-width:0;display:grid}.pwa-install-prompt strong{color:#173865;letter-spacing:-.02em;font-size:14px}.pwa-install-prompt span{color:#667c9b;font-size:11px;line-height:1.45}.pwa-install-button{color:#fff;min-width:82px;height:42px;font:inherit;cursor:pointer;background:#194bd8;border:0;border-radius:12px;padding:0 14px;font-size:12px;font-weight:900}.pwa-install-close{color:#8090a6;width:26px;height:26px;font:inherit;cursor:pointer;background:#eef3fa;border:0;border-radius:50%;place-items:center;font-size:18px;display:grid}body:has([role=dialog][aria-modal=true]) .pwa-install-prompt{display:none}.pwa-install-backdrop{z-index:10001;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0c1f4385;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.pwa-update-toast{z-index:10004;right:18px;bottom:calc(18px + env(safe-area-inset-bottom));background:#fbfdfffa;border:1px solid #668cc93d;border-radius:18px;align-items:center;gap:14px;width:min(390px,100vw - 36px);padding:13px 14px 13px 16px;display:flex;position:fixed;box-shadow:0 18px 48px #12306033}.pwa-update-toast span{flex:1;gap:2px;min-width:0;display:grid}.pwa-update-toast strong{color:#183a67;font-size:13px}.pwa-update-toast small{color:#71839d;font-size:10px;line-height:1.35}.pwa-update-toast button{color:#fff;cursor:pointer;min-height:40px;font:inherit;background:#2458d7;border:0;border-radius:12px;padding:0 13px;font-size:11px;font-weight:900}.pwa-install-help{text-align:center;overscroll-behavior:contain;background:#fff;border:1px solid #fff9;border-radius:26px;width:min(100%,450px);max-height:min(88vh,760px);padding:26px 22px 22px;overflow-y:auto;box-shadow:0 28px 80px #061b4257}.pwa-install-help>img{object-fit:cover;border-radius:19px;width:68px;height:68px}.pwa-install-help .eyebrow{margin:12px 0 0}.pwa-install-help h2{color:#153765;letter-spacing:-.04em;margin:5px 0 0;font-size:20px}.pwa-install-help ol{text-align:left;gap:9px;margin:18px 0 0;padding:0;list-style:none;display:grid}.pwa-install-help li{background:#f3f7fd;border-radius:14px;gap:5px;padding:12px;display:grid}.pwa-install-help li strong{color:#194aa5;font-size:13px}.pwa-install-help li span{color:#516984;font-size:12px;line-height:1.6}.pwa-install-help li b{color:#193e76}.pwa-install-warning{color:#75551d;text-align:left;background:#fff8e8;border-radius:13px;margin:12px 0 0;padding:11px 12px;font-size:11px;font-weight:750;line-height:1.6}.pwa-install-help-actions{gap:8px;margin-top:15px;display:grid}.pwa-install-help-actions button{color:#36577f;width:100%;height:46px;font:inherit;cursor:pointer;background:#f2f6fc;border:1px solid #d4e0f2;border-radius:14px;font-size:12px;font-weight:900}.pwa-install-help-actions button.primary{color:#fff;background:#194bd8;border-color:#194bd8}.kakao-login-button:disabled{cursor:wait;opacity:.72}.kakao-login-fallback{color:#174cae;text-align:center;text-underline-offset:3px;margin-top:10px;font-size:11px;font-weight:850;text-decoration:underline;display:block}@media (width>=761px){.pwa-install-prompt{bottom:24px}}@media (width<=420px){.pwa-install-prompt{border-radius:19px;grid-template-columns:46px minmax(0,1fr) auto 24px;gap:8px}.pwa-install-prompt>img{border-radius:13px;width:46px;height:46px}.pwa-install-prompt span{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.pwa-install-button{min-width:72px;padding:0 10px}.pwa-install-help{border-radius:22px;padding:22px 16px 17px}.pwa-install-help li{padding:10px}}@media (width<=430px){.button-secondary{min-height:40px;padding:8px 12px}.calorie-main{grid-template-columns:1fr auto;display:grid}.calorie-ring{width:116px;height:116px}.calorie-ring:before{width:94px;height:94px}.calorie-ring strong{font-size:23px}.calorie-number strong{font-size:40px}.analysis-form,.goal-fields{grid-template-columns:1fr}.meal-name-field{grid-column:auto}.analysis-actions{justify-content:space-between}.week-bar>strong{font-size:10px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.main-nav{align-items:center;gap:6px;margin-left:auto;margin-right:22px;display:flex}.main-nav a,.main-nav button{color:var(--muted);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:10px;padding:8px 11px;font-size:13px;font-weight:800;text-decoration:none}.main-nav a:hover,.main-nav button:hover,.main-nav a.active,.main-nav button.active{color:var(--cobalt);background:#eef3ff}.admin-persistent-topbar{isolation:isolate}.admin-persistent-topbar .main-nav :is(a,button){transition:color 90ms,background 90ms}.admin-notification-menu{z-index:4;flex:none}.admin-notification-menu .notification-trigger>b{font-size:17px;line-height:1}.admin-notification-popover{right:-47px}.admin-notification-popover .notification-list{max-height:min(440px,60dvh);overflow-y:auto}.admin-notification-popover .notification-list>button{align-items:start}.admin-notification-popover .notification-list p{color:#405d80;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:10px;font-weight:700;line-height:1.5;display:-webkit-box;overflow:hidden}.admin-notification-popover .notification-list small{color:#91a0b3;margin-top:5px;font-size:8px;font-weight:750;display:block}.admin-route-stage,.admin-route-surface{min-height:calc(100dvh - 72px)}.admin-route-surface[hidden]{display:none!important}.admin-route-loading{gap:18px;padding-top:38px;display:grid}.admin-loading-title{color:#48617f;align-items:center;gap:13px;display:flex}.admin-loading-title>i{border:3px solid #dbe6f6;border-top-color:#2458d7;border-radius:50%;width:26px;height:26px;animation:.76s linear infinite spin}.admin-loading-title span{gap:3px;display:grid}.admin-loading-title b{color:#17345f;font-size:15px}.admin-loading-title small{color:#75849a;font-size:11px}.admin-loading-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;display:grid}.admin-loading-grid i{background:linear-gradient(100deg,#f4f7fb 25%,#fff 45%,#f4f7fb 65%) 0 0/220% 100%;border:1px solid #e4eaf3;border-radius:20px;min-height:132px;animation:1.2s ease-in-out infinite admin-loading-shimmer}@keyframes admin-loading-shimmer{to{background-position:-220% 0}}.signout{font-size:12px;text-decoration:none}.button:disabled{cursor:wait;opacity:.55;transform:none}.centered-page{place-items:center;min-height:100vh;padding:30px;display:grid}.empty-state{text-align:center;max-width:560px;padding:48px}.empty-state .brand-mark{margin:0 auto 22px}.empty-state h1,.empty-state h2{letter-spacing:-.04em;margin:0}.empty-state p{color:var(--muted);margin:13px 0 24px}.demo-banner{color:#173d9b;background:#eaf1ff;border:1px solid #bbd1ff;border-radius:15px;justify-content:space-between;align-items:center;gap:18px;margin-bottom:25px;padding:13px 17px;font-size:13px;display:flex}.demo-banner div{align-items:center;gap:10px;display:flex}.demo-banner span{color:#5673a6}.demo-banner a{color:var(--cobalt);font-weight:850}.goal-fields.five{grid-template-columns:repeat(5,1fr)}.today-section{margin-top:22px;padding:clamp(24px,3vw,38px)}.coach-date-navigator{background:linear-gradient(135deg,#ecf3ffeb,#fafcfff5);border:1px solid #d8e4f5;border-radius:16px;grid-template-columns:44px minmax(0,1fr) auto 44px;align-items:center;gap:8px;margin:2px 0 16px;padding:8px;display:grid}.coach-date-navigator>button{color:#173b74;cursor:pointer;background:#fff;border:1px solid #c9d9ef;border-radius:13px;place-items:center;min-width:44px;height:44px;padding:0;font:850 22px/1 inherit;display:grid}.coach-date-navigator>button:disabled{opacity:.38;cursor:default}.coach-date-navigator>div{text-align:center;min-width:0}.coach-date-navigator strong,.coach-date-navigator span{display:block}.coach-date-navigator strong{color:var(--ink);font-size:15px}.coach-date-navigator span{color:var(--muted);margin-top:2px;font-size:10px;font-weight:750}.coach-date-navigator>.coach-date-today{min-width:auto;height:34px;color:var(--cobalt);border-color:#b9cff1;padding:0 11px;font-size:10px}.coach-history-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:-4px 0 15px;display:grid}.coach-history-shortcuts.has-record-action{grid-template-columns:repeat(3,minmax(0,1fr))}.coach-history-shortcuts button{color:#476587;cursor:pointer;background:#f7faff;border:1px solid #d7e3f3;border-radius:12px;min-height:42px;padding:9px 12px;font-size:11px;font-weight:900}.coach-history-shortcuts button:hover{background:#eef5ff;border-color:#a9c2e5}.coach-history-shortcuts button:disabled{opacity:.45;cursor:default}.coach-history-shortcuts button.primary{color:#245bb5;background:linear-gradient(135deg,#edf5ff,#e3efff);border-color:#aac9f8}.coach-date-loading{min-height:132px;color:var(--muted);justify-content:center;align-items:center;gap:12px;font-size:12px;font-weight:750;display:flex}.coach-date-loading .analysis-spinner{width:26px;height:26px}.meal-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;display:grid}.meal-tile{border:1px solid var(--line);background:#fbfdff;border-radius:18px;overflow:hidden}.meal-photo{height:190px;color:var(--muted);background:linear-gradient(135deg,#e7efff,#f6f9ff);place-items:center;font-size:12px;font-weight:750;display:grid;position:relative;overflow:hidden}.meal-photo img{object-fit:cover;width:100%;height:100%}.meal-time{color:#fff;background:#091a37c2;border-radius:999px;padding:5px 8px;font-size:10px;position:absolute;bottom:10px;right:10px}.meal-tile-copy{justify-content:space-between;align-items:flex-start;gap:12px;padding:16px;display:flex}.meal-tile-copy h3{letter-spacing:-.03em;margin:0;font-size:16px}.meal-tile-copy p{color:var(--muted);margin:5px 0 0;font-size:11px}.meal-tile-copy .member-note{color:#36577f;line-height:1.45}.meal-tile-copy>strong{color:var(--cobalt);white-space:nowrap;font-size:18px}.meal-tile-copy small{font-size:10px}.empty-meals{min-height:190px;color:var(--muted);text-align:center;background:#f8fbff;border:1px dashed #b8c8da;border-radius:18px;align-content:center;place-items:center;gap:9px;display:grid}.empty-meals>span{width:40px;height:40px;color:var(--cobalt);background:#e8efff;border-radius:50%;place-items:center;font-size:22px;display:grid}.empty-meals p{margin:0}.admin-shell{width:min(1480px,100% - 7vw);min-height:calc(100vh - 76px);margin:0 auto;padding:52px 0 75px}.admin-intro{justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:28px;display:flex}.admin-intro h1{letter-spacing:-.055em;max-width:850px;margin:0;font-size:clamp(34px,4vw,54px);line-height:1.06}.admin-intro p:not(.eyebrow){color:var(--muted);margin:14px 0 0;font-size:17px}.center-loader{place-items:center;min-height:45vh;display:grid}.admin-metrics{grid-template-columns:repeat(5,1fr);gap:16px;margin-bottom:22px;display:grid}.stat-card{min-height:190px;padding:24px;position:relative;overflow:hidden}.stat-card:after{content:"";background:#eaf1ff;border-radius:50%;width:88px;height:88px;position:absolute;top:-25px;right:-25px}.stat-card.alert:after{background:var(--amber-pale)}.stat-card.recorded:after{background:#e4f7ef}.stat-card.active:after{background:#e8f0ff}.stat-card.storage:after{background:#e6f7f6}.stat-card.model:after{background:var(--teal-pale)}.stat-card>span,.stat-card>strong,.stat-card>small{z-index:1;display:block;position:relative}.stat-card>span{color:var(--muted);font-size:12px;font-weight:800}.stat-card>span i{margin-right:4px;font-style:normal}.stat-card>strong{letter-spacing:-.045em;margin:7px 0 4px;font-size:34px;line-height:1}.stat-card.model>strong{font-size:22px}.stat-card>small{color:#8190a5}.stat-member-bubbles{z-index:2;flex-wrap:wrap;align-items:center;min-height:38px;margin-top:14px;padding-left:2px;display:flex;position:relative}.stat-member-bubbles span,.stat-member-bubbles b{color:#2353a0;letter-spacing:-.04em;background:#eaf1ff;border:3px solid #fff;border-radius:50%;place-items:center;width:38px;height:38px;margin-left:-7px;font-size:9px;font-weight:950;display:grid;box-shadow:0 5px 14px #2d548f21}.stat-member-bubbles span:first-child{margin-left:0}.stat-card.recorded .stat-member-bubbles span{color:#19704e;background:#ddf5ea}.stat-card.alert .stat-member-bubbles span{color:#92600c;background:#fff0ce}.stat-card.active .stat-member-bubbles>.stat-member-avatar-button{color:#2856a6;background:#e5edff}.stat-member-bubbles b{background:var(--cobalt);color:#fff}.stat-roster-empty{z-index:2;margin-top:17px;font-size:12px;font-weight:800;display:block;position:relative;color:#9aa8ba!important}.member-board{padding:clamp(24px,3vw,36px)}.toggle{color:var(--muted);cursor:pointer;align-items:center;gap:8px;font-size:12px;font-weight:800;display:flex}.toggle input{opacity:0;position:absolute}.toggle>span{background:#cbd5e1;border-radius:999px;width:42px;height:24px;transition:background .15s;position:relative}.toggle>span:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 2px 7px #091d3e33}.toggle input:checked+span{background:var(--cobalt)}.toggle input:checked+span:after{transform:translate(18px)}.member-list{border-top:1px solid var(--line);display:grid}.admin-member-list-more{justify-self:center;min-width:190px;margin:18px 0 2px}.member-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(190px,1.1fr) 74px minmax(230px,1.1fr) minmax(190px,.8fr) auto;align-items:center;gap:20px;padding:18px 0;display:grid}.member-identity{align-items:center;gap:13px;min-width:0;display:flex}.member-avatar{width:44px;height:44px;color:var(--cobalt);background:#e8efff;border-radius:14px;flex:none;place-items:center;font-size:12px;font-weight:850;display:grid}.member-name{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.member-name>span{color:var(--cobalt);background:#eef3ff;border-radius:5px;padding:3px 6px;font-size:8px;font-weight:900}.member-medal-badge,.member-name>.member-medal-badge{color:#825b24;width:auto;height:auto;box-shadow:none;background:#fff8e9;border:1px solid #b8965d33;border-radius:999px;align-items:center;gap:4px;margin:0;padding:4px 8px;font-style:normal;line-height:1;display:inline-flex}.member-medal-badge i{font-size:11px;font-style:normal}.member-medal-badge b{letter-spacing:-.02em;font-size:8px;font-weight:900}.member-medal-badge.compact{padding:3px 6px}.member-medal-badge.stone{color:#6f7884;background:#f4f5f7;border-color:#dfe3e8}.member-medal-badge.spoon{color:#637386;background:#f5f8fb;border-color:#d9e1e9}.member-medal-badge.sprout{color:#397351;background:#f0faf3;border-color:#cfe5d7}.member-medal-badge.leaf{color:#2e7350;background:#ebf8f0;border-color:#c7e2d1}.member-medal-badge.stem{color:#226c47;background:#e8f7ee;border-color:#bfe0ce}.member-medal-badge.bud{color:#866820;background:#fff9e5;border-color:#efdfaa}.member-medal-badge.fruit{color:#a0493d;background:#fff2ef;border-color:#f0c8c1}.member-medal-badge.flame{color:#a55725;background:#fff3e9;border-color:#f2c9ac}.member-medal-badge.star{color:#8b6c13;background:#fff9dc;border-color:#ebd994}.member-medal-badge.challenger{color:#395f9b;background:#eef4ff;border-color:#cbd8ed}.member-medal-badge.bronze{color:#945930;background:#fff3e8;border-color:#ead1bd}.member-medal-badge.silver{color:#5e6d80;background:#f2f6fa;border-color:#d6dfe9}.member-medal-badge.gold{color:#88620d;background:#fff8da;border-color:#efd99b}.member-medal-badge.diamond{color:#20718d;background:#ecfaff;border-color:#b9e0ec}.member-medal-badge.master{color:#7046a0;background:#f7f0ff;border-color:#d9c6ef}.member-name>.admin-tag{background:var(--teal-pale);color:#087e7b}.member-name>.expired-tag{color:#b54a20;background:#fff0e8}.member-identity p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:10px;overflow:hidden}.member-access-inline{color:#47709f;margin-top:4px;font-size:9px;font-weight:800;display:block}.member-access-inline.expired{color:#b54a20}.member-photo{width:64px;height:64px;color:var(--muted);background:#eef3f8;border-radius:14px;place-items:center;font-size:9px;display:grid;overflow:hidden}.member-photo img{object-fit:cover;width:100%;height:100%}.member-progress{grid-template-columns:56px 1fr;align-items:center;gap:6px 10px;display:grid}.member-progress>div:first-of-type,.member-progress>div:nth-of-type(3){display:contents}.member-progress span{color:var(--muted);font-size:10px;font-weight:800}.member-progress strong{text-align:right;font-size:11px}.mini-track{background:#e7edf4;border-radius:999px;grid-column:1/-1;height:6px;overflow:hidden}.mini-track>span{border-radius:inherit;background:var(--cobalt);height:100%;display:block}.mini-track>span.over{background:var(--amber)}.mini-track.protein>span{background:var(--teal)}.member-summary p{color:var(--muted);margin:6px 0 0;font-size:10px}.member-summary small{color:#56708f;text-overflow:ellipsis;white-space:nowrap;max-width:250px;margin-top:4px;font-size:9px;display:block;overflow:hidden}.attention-pill{background:var(--teal-pale);color:#087e7b;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:850;display:inline-flex}.attention-pill.warning{background:var(--amber-pale);color:#915a0a}.attention-pill.quiet{color:#6c7c91;background:#edf1f5}.member-open-button{color:#28538e;border-color:#c9d8ed;gap:6px}.member-open-button span{font-size:14px;line-height:1}.button.small{min-height:36px;padding:7px 11px;font-size:10px}.private-label{color:var(--muted);white-space:nowrap;font-size:10px;font-weight:800}.admin-notes{grid-template-columns:1fr 1fr;gap:22px;margin-top:22px;display:grid}.admin-notes article{padding:30px}.admin-notes h2{letter-spacing:-.04em;margin:0;font-size:22px}.admin-notes p:last-child{color:var(--muted);margin:10px 0 0}.admin-member-overlay{z-index:90;background:#081834ad;place-items:center;padding:28px;display:grid;position:fixed;inset:0;overflow-y:auto}.admin-member-dialog{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;width:min(1180px,100%);max-height:calc(100vh - 56px);padding:clamp(24px,3.5vw,42px);overflow-y:auto}.admin-member-loading{min-height:340px;color:var(--muted);align-content:center;place-items:center;gap:16px;display:grid}.admin-member-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:24px;padding-bottom:22px;display:flex}.admin-member-header h2{letter-spacing:-.05em;margin:0;font-size:clamp(28px,3.5vw,42px)}.admin-member-header p:last-child{color:var(--muted);margin:8px 0 0}.admin-member-header>div:last-child{align-items:center;gap:10px;display:flex}.readonly-badge.loading{align-items:center;gap:6px;display:inline-flex}.readonly-badge.loading i{background:#2d73dc;border-radius:50%;width:7px;height:7px}.admin-member-inline-loading{color:#536a86;background:#f8fbff;border:1px solid #e0e8f3;border-radius:15px;justify-content:center;align-items:center;gap:12px;min-height:90px;margin-top:14px;padding:16px;display:flex}.admin-member-inline-loading p,.admin-member-inline-loading strong,.admin-member-inline-loading small{margin:0;display:block}.admin-member-inline-loading strong{color:#294968;font-size:11px}.admin-member-inline-loading small{margin-top:3px;font-size:9px}.admin-member-management{background:#fafcff;border:1px solid #dbe5f1;border-radius:15px;margin:14px 0 0}.admin-member-management>summary{color:#315679;cursor:pointer;padding:14px 16px;font-size:11px;font-weight:900}.admin-member-management[open]>summary{border-bottom:1px solid #e4ebf4}.admin-member-management .admin-alias-editor,.admin-member-management .admin-access-editor{margin:14px}.admin-member-more{min-width:190px;margin:16px auto 0;display:block}.admin-alias-editor{background:#f5f8ff;border:1px solid #cbdcf8;border-radius:15px;justify-content:space-between;align-items:end;gap:14px;margin:18px 0;padding:14px 16px;display:flex}.admin-alias-editor label{flex:1;gap:5px;min-width:0;display:grid}.admin-alias-editor label>span{color:#35557f;font-size:11px;font-weight:850}.admin-alias-editor input{width:100%;height:40px;color:var(--navy);font:inherit;background:#fff;border:1px solid #c9d7eb;border-radius:10px;padding:0 11px;font-size:12px;font-weight:750}.admin-alias-editor input:focus{border-color:var(--cobalt);outline:none;box-shadow:0 0 0 3px #1746d117}.admin-alias-editor small{color:var(--muted);font-size:9px}.admin-alias-editor .button{flex:none}.admin-access-editor{background:linear-gradient(135deg,#f6f9ff,#eef5ff);border:1px solid #c9d9f3;border-radius:16px;margin:16px 0;padding:18px}.admin-access-editor.expired{background:linear-gradient(135deg,#fff9f5,#fff1e9);border-color:#f0c4b3}.admin-access-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.admin-access-heading span,.admin-access-heading strong,.admin-access-heading small{display:block}.admin-access-heading span{color:#496889;font-size:10px;font-weight:850}.admin-access-heading strong{color:var(--navy);margin-top:4px;font-size:17px}.admin-access-heading small{color:#6b7f99;margin-top:5px;font-size:10px;line-height:1.5}.admin-access-heading em{color:#2353a0;white-space:nowrap;background:#dbe9ff;border-radius:999px;padding:6px 9px;font-size:9px;font-style:normal;font-weight:900}.admin-access-editor.expired .admin-access-heading em{color:#b54a20;background:#ffe1d3}.admin-access-quick{flex-wrap:wrap;gap:7px;margin-top:14px;display:flex}.admin-access-quick button{color:#284d7c;cursor:pointer;min-height:38px;font:inherit;background:#fff;border:1px solid #bfd0e9;border-radius:10px;padding:7px 11px;font-size:10px;font-weight:850}.admin-access-quick button:hover{border-color:var(--cobalt);color:var(--cobalt)}.admin-access-quick button:disabled{cursor:wait;opacity:.55}.admin-access-custom{align-items:end;gap:9px;margin-top:12px;display:flex}.admin-access-custom label{flex:1;gap:5px;display:grid}.admin-access-custom label span{color:#496889;font-size:10px;font-weight:850}.admin-access-custom input{width:100%;min-height:40px;color:var(--navy);font:inherit;background:#fff;border:1px solid #c9d7eb;border-radius:10px;padding:0 10px;font-size:12px}.admin-member-calendar{background:#fbfdff;border:1px solid #dce5f2;border-radius:18px;margin:22px 0;padding:20px}.admin-member-calendar-heading{justify-content:space-between;align-items:end;gap:16px;margin-bottom:15px;display:flex}.admin-member-calendar-heading h3{letter-spacing:-.04em;margin:0;font-size:20px}.admin-member-calendar-heading span{color:var(--muted);margin-top:5px;font-size:10px;display:block}.admin-sodium-flow-legend{color:#526b87;flex-wrap:wrap;align-items:center;gap:7px 12px;margin:-4px 0 13px;font-size:9px;font-weight:850;display:flex}.admin-sodium-flow-legend span{align-items:center;gap:5px;display:inline-flex}.admin-sodium-flow-legend i{background:#38a979;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 3px #38a9791a}.admin-sodium-flow-legend .yellow i{background:#e0a229;box-shadow:0 0 0 3px #e0a2291c}.admin-sodium-flow-legend .red i{background:#db6666;box-shadow:0 0 0 3px #db66661a}.admin-sodium-flow-legend small{color:#8391a4;margin-left:auto;font-size:8px;font-weight:750}.admin-history-calendar{padding:10px}.admin-history-calendar .history-day{cursor:default;min-height:76px}.admin-history-calendar .history-day.recorded{border-color:#b9d0f6}.admin-history-calendar .history-day.has-photo:after{content:"";background:#2b70d8;border:2px solid #fff;border-radius:50%;width:6px;height:6px;position:absolute;top:6px;right:6px;box-shadow:0 1px 4px #18417d38}.readonly-badge{color:var(--cobalt);white-space:nowrap;background:#eaf1ff;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:900}.admin-member-summary-grid{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:18px;display:grid}.admin-member-summary-grid article{background:#f4f7fb;border-radius:14px;padding:16px}.admin-member-summary-grid span,.admin-member-summary-grid strong,.admin-member-summary-grid small{display:block}.admin-member-summary-grid span{color:var(--muted);font-size:10px;font-weight:800}.admin-member-summary-grid strong{margin-top:5px;font-size:17px}.admin-member-summary-grid small{color:#73839a;margin-top:3px;font-size:9px}.admin-member-meals-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin:28px 0 14px;display:flex}.admin-member-meals-heading h3{letter-spacing:-.04em;margin:0;font-size:22px}.admin-member-meals-heading>span{color:var(--muted);font-size:11px;font-weight:800}.admin-member-meal-grid{grid-template-columns:repeat(2,1fr);gap:13px;display:grid}.admin-member-meal{border:1px solid var(--line);background:#fbfdff;border-radius:16px;grid-template-columns:145px 1fr;min-width:0;display:grid;overflow:hidden}.admin-member-meal-photo{background:#e8eef7;min-height:155px;position:relative}.admin-member-meal-photo img{object-fit:cover;width:100%;height:100%}.admin-member-meal-photo>span{height:100%;min-height:155px;color:var(--muted);place-items:center;font-size:10px;display:grid}.admin-member-meal-photo em{color:#fff;background:#081834c2;border-radius:999px;padding:5px 7px;font-size:8px;font-style:normal;position:absolute;bottom:8px;right:8px}.admin-member-meal-copy{min-width:0;padding:15px}.admin-member-meal-copy>span{color:var(--cobalt);font-size:9px;font-weight:850}.admin-member-meal-copy h4{letter-spacing:-.03em;margin:4px 0 8px;font-size:16px}.admin-member-meal-copy>strong{font-size:10px}.admin-member-history-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-member-history-meal{background:#fbfdff;border:1px solid #dbe5f4;border-radius:16px;min-width:0;padding:10px}.admin-member-history-meal>div{height:148px}.admin-member-history-meal>span{margin-top:10px}.admin-member-history-meal h3{font-size:15px}.admin-history-meal-details{border-top:1px solid #e2e9f4;margin-top:10px}.admin-history-meal-details summary{color:#58708f;cursor:pointer;padding-top:9px;font-size:9px;font-weight:850}.admin-history-meal-details>strong{color:#27496f;margin-top:9px;font-size:10px;display:block}.admin-trainer-reactions{background:linear-gradient(145deg,#f2f7fff5,#fffffffa);border:1px solid #2a67f624;border-radius:18px;margin:14px 0 22px;padding:16px}.admin-trainer-reactions>header h3{letter-spacing:-.035em;margin:3px 0 4px;font-size:17px}.admin-trainer-reactions>header small{color:var(--muted);font-size:10px;line-height:1.5}.admin-trainer-reactions>div{gap:8px;margin-top:12px;display:grid}.admin-trainer-reactions article{background:#ffffffe6;border:1px solid #143d7e17;border-radius:14px;grid-template-columns:minmax(120px,1fr) minmax(300px,1.5fr);align-items:center;gap:12px;padding:10px 12px;display:grid}.admin-trainer-reactions article>span{min-width:0}.admin-trainer-reactions article>span strong,.admin-trainer-reactions article>span small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.admin-trainer-reactions article>span strong{color:var(--cobalt);font-size:10px}.admin-trainer-reactions article>span small{color:var(--ink);margin-top:3px;font-size:12px;font-weight:800}.admin-member-feedback-preview{background:linear-gradient(135deg,#f7fafff5,#fffffffa);border:1px dashed #2a67f633;border-radius:13px;grid-column:1/-1;padding:10px 12px}.admin-member-feedback-preview>small{color:#6c7f99;margin-bottom:7px;font-size:8px;font-weight:900;display:block}.admin-member-feedback-preview .trainer-reaction-member,.admin-member-feedback-preview .trainer-note-member{margin-left:0}.admin-member-feedback-preview .trainer-note-member:last-child{margin-bottom:0}.admin-reaction-error{color:#b42318;margin:10px 0 0;font-size:11px;font-weight:800}.trainer-reaction-picker{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}.trainer-reaction-picker button{min-width:0;min-height:49px;color:var(--muted);cursor:pointer;background:#f8fbff;border:1px solid #143d7e1c;border-radius:12px;padding:5px 3px;transition:transform .15s,border-color .15s,background .15s}.trainer-reaction-picker button:hover{border-color:#2a67f659;transform:translateY(-1px)}.trainer-reaction-picker button.selected{color:var(--cobalt);background:#eaf2ff;border-color:#2a67f68c;box-shadow:0 5px 14px #2a67f61f}.trainer-reaction-picker button:disabled{cursor:wait;opacity:.62}.trainer-reaction-picker button span,.trainer-reaction-picker button small{display:block}.trainer-reaction-picker button span{font-size:18px;line-height:1.1}.trainer-reaction-picker button small{text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:9px;font-weight:850;line-height:1.2;overflow:hidden}.trainer-reaction-member{color:var(--cobalt);background:#f1f6ff;border:1px solid #2a67f626;border-radius:999px;align-self:flex-start;align-items:center;gap:6px;margin:3px 0 4px 48px;padding:7px 10px;display:inline-flex;box-shadow:0 5px 14px #24539b12}.trainer-reaction-member span{font-size:17px;line-height:1}.trainer-reaction-member strong{font-size:10px}.trainer-reaction-member small{color:#6e7f99;font-size:8px;font-weight:800}.trainer-note-member{color:#284a78;background:linear-gradient(135deg,#f4f8ff,#fbfdff);border:1px solid #2a67f624;border-radius:14px;align-items:flex-start;gap:8px;margin:3px 0 7px 48px;padding:10px 12px;display:flex;box-shadow:0 5px 14px #24539b0f}.trainer-note-member>span{flex:none;font-size:15px}.trainer-note-member p{margin:0;line-height:1.45}.trainer-note-member small,.trainer-note-member strong{display:block}.trainer-note-member small{color:#7587a0;font-size:8px;font-weight:850}.trainer-note-member strong{margin-top:2px;font-size:11px}.trainer-note-member.compact{margin:8px 0;padding:8px 9px}.trainer-reaction-badge.overlay{z-index:2;width:auto;height:auto;color:var(--cobalt);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f6f9fff0;border:1px solid #ffffffb3;border-radius:999px;align-items:center;gap:4px;padding:5px 7px;display:inline-flex;position:absolute;top:8px;left:8px;box-shadow:0 5px 16px #051a402e}.trainer-reaction-badge.overlay b{font-size:14px;line-height:1}.trainer-reaction-badge.overlay small{font-size:7px;font-weight:900}.admin-pending-reactions{background:linear-gradient(145deg,#f7fafffa,#fffffffa);border-color:#2a67f621;margin:0 0 22px;padding:clamp(18px,2.4vw,26px)}.admin-pending-reactions>header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.admin-pending-reactions>header h2{letter-spacing:-.045em;margin:2px 0 5px;font-size:clamp(20px,2vw,27px)}.admin-pending-reactions>header p:not(.eyebrow){color:var(--muted);margin:0;font-size:12px;line-height:1.55}.admin-pending-reactions>header>span{color:var(--cobalt);background:#eaf2ff;border-radius:999px;flex:none;padding:8px 11px;font-size:11px;font-weight:900}.admin-pending-loading,.admin-pending-empty{background:#ffffffb8;border:1px dashed #2a67f62e;border-radius:16px;justify-content:center;align-items:center;gap:11px;min-height:88px;margin-top:14px;display:flex}.admin-pending-loading small,.admin-pending-empty small{color:var(--muted);margin-top:3px;font-size:10px;display:block}.admin-pending-empty>span{font-size:24px}.admin-pending-empty strong{font-size:13px;display:block}.admin-pending-reaction-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.admin-pending-reaction-list article{background:#fffffff0;border:1px solid #143d7e1a;border-radius:17px;grid-template-rows:auto auto;grid-template-columns:76px minmax(0,1fr);gap:9px 12px;min-width:0;padding:10px;display:grid;box-shadow:0 8px 20px #1f4b890d}.admin-pending-photo{cursor:zoom-in;background:#edf3fb;border:0;border-radius:13px;grid-row:1;width:76px;height:76px;padding:0;overflow:hidden}.admin-pending-photo img{object-fit:cover;width:100%;height:100%}.admin-pending-photo.empty{place-items:center;font-size:24px;display:grid}.admin-pending-copy{min-width:0}.admin-pending-copy>button{cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:0;display:flex}.admin-pending-copy>button strong{color:var(--cobalt);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.admin-pending-copy>button span{color:#72819a;flex:none;font-size:8px;font-weight:800}.admin-pending-copy>small{color:var(--muted);margin-top:3px;font-size:9px;display:block}.admin-pending-copy h3{letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap;margin:7px 0 2px;font-size:13px;overflow:hidden}.admin-pending-copy p{color:#687891;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:9px;font-weight:750;overflow:hidden}.admin-pending-emoji{grid-column:1/-1;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;display:grid}.admin-pending-emoji button{cursor:pointer;background:#f8fbff;border:1px solid #143d7e1a;border-radius:10px;min-width:0;min-height:49px;padding:5px 2px;transition:transform .15s,border-color .15s,background .15s}.admin-pending-emoji button span,.admin-pending-emoji button small{display:block}.admin-pending-emoji button span{font-size:18px;line-height:1.05}.admin-pending-emoji button small{color:#556b89;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:9px;font-weight:850;line-height:1.15;overflow:hidden}.admin-pending-emoji button:hover{background:#eef5ff;border-color:#2a67f659;transform:translateY(-1px)}.admin-pending-emoji button:disabled{opacity:.55;cursor:wait}.admin-pending-emoji button.selected{background:#e7f0ff;border-color:#2a67f68c;box-shadow:0 4px 12px #2a67f61a}.admin-pending-note{grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:7px;display:grid}.admin-pending-note label span{color:#506681;margin:0 0 5px 2px;font-size:9px;font-weight:900;display:block}.admin-pending-note label small{color:#8a98aa;font-size:8px}.admin-pending-note input{width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border:1px solid #d5e0ee;border-radius:11px;padding:9px 11px;font-size:11px}.admin-pending-note>button{background:var(--cobalt);color:#fff;cursor:pointer;border:0;border-radius:11px;min-height:40px;padding:8px 11px;font-size:10px;font-weight:900}.admin-pending-note>button:disabled{opacity:.45;cursor:default}.admin-trainer-feedback-controls{gap:8px;display:grid}.admin-pending-limit{color:var(--muted);text-align:right;margin-top:10px;font-size:9px;display:block}.admin-pending-more{margin:12px auto 0;display:flex}@media (width<=640px){.admin-trainer-reactions{padding:13px}.admin-trainer-reactions article{grid-template-columns:1fr;gap:8px}.trainer-reaction-picker button{min-height:46px}.trainer-reaction-picker button small{font-size:8px}.trainer-reaction-member,.trainer-note-member{margin-left:38px}.admin-pending-reactions{padding:15px}.admin-pending-reactions>header p:not(.eyebrow){font-size:10px}.admin-pending-reaction-list{grid-template-columns:1fr}.admin-pending-reaction-list article{grid-template-columns:68px minmax(0,1fr)}.admin-pending-photo{width:68px;height:68px}.admin-pending-emoji{gap:4px}.admin-pending-emoji button{min-height:51px}.admin-pending-emoji button span{font-size:18px}.admin-pending-emoji button small{font-size:8px}.admin-pending-note{grid-template-columns:1fr}.admin-pending-note>button{width:100%}}.admin-member-note,.admin-member-coach{color:#4d6685;margin:8px 0 0;font-size:9px;line-height:1.5}.admin-member-coach{color:#29476d;background:#eef4ff;border-radius:9px;padding:8px 9px}.test-users{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.test-user-card{padding:28px}.test-user-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.test-number{color:#fff;border-radius:13px;place-items:center;width:44px;height:44px;font-weight:900;display:grid}.test-user-card h2{letter-spacing:-.045em;margin:24px 0 0;font-size:28px}.test-user-card>p{color:var(--muted);margin:6px 0 20px}.test-user-card dl{border-top:1px solid var(--line);margin:0 0 24px;display:grid}.test-user-card dl div{border-bottom:1px solid var(--line);justify-content:space-between;gap:14px;padding:10px 0;font-size:11px;display:flex}.test-user-card dt{color:var(--muted)}.test-user-card dd{margin:0;font-weight:800}.test-user-card .button{width:100%}.test-control,.architecture-card{justify-content:space-between;align-items:center;gap:28px;margin-top:22px;padding:30px;display:flex}.test-control h2,.architecture-card h2{letter-spacing:-.04em;margin:0;font-size:24px}.test-control p:last-child,.architecture-card>p{color:var(--muted);margin:8px 0 0}.test-actions{flex:none;gap:10px;display:flex}.button-danger{color:#af3030;background:#fff5f5;border-color:#f0c8c8}.architecture-card{display:grid}.architecture-flow{background:#f2f6ff;border-radius:17px;justify-content:center;align-items:center;gap:12px;width:100%;padding:24px;display:flex}.architecture-flow span{color:#28466f;background:#fff;border:1px solid #cbd9f5;border-radius:10px;padding:10px 13px;font-size:12px;font-weight:850}.architecture-flow b{color:var(--cobalt)}@media (width<=1120px){.meal-gallery,.admin-metrics{grid-template-columns:repeat(2,1fr)}.admin-member-meal-grid{grid-template-columns:1fr}.member-row{grid-template-columns:minmax(180px,1fr) 64px minmax(220px,1fr)}.member-summary{grid-column:1/3}.member-row>.button,.private-label{justify-self:end}.test-users{grid-template-columns:1fr}}@media (width<=760px){.main-nav{display:none}.main-nav.admin-visible-nav{scrollbar-width:none;gap:2px;min-width:0;margin:0 4px 0 auto;display:flex;overflow-x:auto}.main-nav.admin-visible-nav::-webkit-scrollbar{display:none}.main-nav.admin-visible-nav :is(a,button){flex:none;padding:6px 7px;font-size:10px}.main-nav.admin-visible-nav .member-home-nav-link{color:#1749a8;background:#edf3ff;align-items:center;display:inline-flex}.admin-loading-grid{grid-template-columns:1fr 1fr}.header-actions .signout{display:none}.demo-banner,.demo-banner div{align-items:flex-start;display:grid}.goal-fields.five{grid-template-columns:1fr 1fr}.today-section{border-radius:19px;padding:22px}.meal-gallery{grid-template-columns:1fr}.meal-photo{height:220px}.description-footer{flex-direction:column;align-items:stretch}.description-footer .button{width:100%}.analysis-actions{flex-direction:column;align-items:stretch}.analysis-action-group{display:grid}.analysis-action-group .button{width:100%}.admin-shell{width:calc(100% - 28px);padding:34px 0 54px}.admin-intro{display:block}.admin-intro .button{margin-top:20px}.admin-metrics{grid-template-columns:1fr 1fr;gap:10px}.member-board{padding:21px}.member-row{grid-template-columns:1fr 58px;gap:13px}.member-progress,.member-summary{grid-column:1/-1}.member-row>.button,.private-label{text-align:center;grid-column:1/-1;justify-self:stretch}.admin-notes{grid-template-columns:1fr}.admin-member-overlay{place-items:end center;padding:0}.admin-member-dialog{border-radius:24px 24px 0 0;width:100%;max-height:94vh;padding:23px 18px 30px}.admin-member-header{display:grid}.admin-member-header>div:last-child{grid-row:1;justify-content:flex-end}.admin-member-summary-grid{grid-template-columns:1fr 1fr}.admin-member-history-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-member-history-meal>div{height:132px}.admin-member-meal{grid-template-columns:110px 1fr}.admin-alias-editor{flex-direction:column;align-items:stretch}.admin-alias-editor .button{width:100%}.admin-access-heading,.admin-access-custom{flex-direction:column;align-items:stretch}.admin-access-custom .button{width:100%}.admin-member-calendar{padding:15px}.admin-member-calendar-heading{flex-direction:column;align-items:stretch}.admin-member-calendar-heading .history-month-control{width:100%}.test-control,.test-actions{display:grid}.architecture-flow{text-align:center;align-items:stretch;display:grid}.architecture-flow b{transform:rotate(90deg)}}@media (width<=430px){.header-actions .button-secondary{display:none}.goal-fields.five,.admin-metrics{grid-template-columns:1fr}.empty-state{padding:34px 24px}.admin-member-summary-grid{grid-template-columns:1fr}.admin-member-history-grid{gap:9px}.admin-member-history-meal{padding:8px}.admin-member-history-meal>div{height:118px}.admin-member-meal{grid-template-columns:1fr}.admin-member-meal-photo{height:190px}}.profile-overlay{z-index:80;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#081834a3;place-items:center;padding:28px;display:grid;position:fixed;inset:0;overflow-y:auto}.access-expiry-overlay{z-index:180;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0818349e;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.access-expiry-dialog{text-align:center;width:min(470px,100%);padding:32px;box-shadow:0 30px 80px #04122b47}.access-expiry-icon{background:linear-gradient(145deg,#eaf1ff,#d8e6ff);border-radius:21px;place-items:center;width:64px;height:64px;margin:0 auto 16px;font-size:28px;display:grid;box-shadow:inset 0 0 0 1px #2558b71a}.access-expiry-dialog h2{color:var(--navy);letter-spacing:-.05em;margin:5px 0 10px;font-size:clamp(25px,6vw,34px)}.access-expiry-dialog>p:not(.eyebrow){color:#60748e;margin:0 auto;font-size:13px;line-height:1.75}.access-expiry-actions{grid-template-columns:1fr 1fr;gap:9px;margin-top:22px;display:grid}.access-expiry-actions .button{width:100%}.access-expiry-dialog>.logout-form{margin-top:14px}.access-expiry-dialog>.logout-form button{color:#6f8197;cursor:pointer;font:inherit;text-underline-offset:3px;background:0 0;border:0;font-size:10px;font-weight:800;text-decoration:underline}@media (width<=520px){.access-expiry-overlay{align-items:end;padding:0}.access-expiry-dialog{width:100%;padding:30px 22px calc(28px + env(safe-area-inset-bottom));border-radius:26px 26px 0 0}.access-expiry-actions{grid-template-columns:1fr}}.profile-dialog{width:min(920px,100%);max-height:calc(100vh - 56px);padding:clamp(24px,4vw,42px);overflow-y:auto}.profile-welcome{border-bottom:1px solid var(--line);grid-template-columns:116px 1fr auto;align-items:center;gap:22px;padding-bottom:23px;display:grid;position:relative}.profile-welcome img{object-fit:contain;filter:drop-shadow(0 13px 18px #1746d12b);width:116px;height:116px}.profile-welcome h2{letter-spacing:-.05em;margin:0;font-size:clamp(25px,3vw,36px)}.profile-welcome p:last-child{color:var(--muted);margin:8px 0 0}.profile-close{width:38px;height:38px;color:var(--navy);cursor:pointer;background:#edf3ff;border:0;border-radius:50%;align-self:start;font-size:24px}.profile-form{gap:22px;margin-top:25px;display:grid}.profile-form fieldset{border:0;min-width:0;margin:0;padding:0}.profile-form legend,.profile-number-grid label>span,.profile-name-field>span{color:var(--navy-soft);margin-bottom:9px;font-size:12px;font-weight:850;display:block}.profile-name-field input{border:1px solid var(--border);width:100%;height:50px;color:var(--navy);font:inherit;background:#fbfdff;border-radius:12px;outline:none;padding:0 15px;font-weight:800}.profile-name-field input:focus{border-color:var(--cobalt);box-shadow:0 0 0 3px #1746d11a}.choice-row,.goal-choice-grid{grid-template-columns:repeat(2,1fr);gap:9px;display:grid}.choice-row.three,.goal-choice-grid{grid-template-columns:repeat(3,1fr)}.choice-row button,.goal-choice-grid button,.serving-picker button{border:1px solid var(--border);min-height:46px;color:var(--navy);cursor:pointer;background:#fbfdff;border-radius:12px;padding:10px 13px;font-weight:800}.choice-row button.selected,.goal-choice-grid button.selected,.serving-picker button.selected{border-color:var(--cobalt);box-shadow:inset 0 0 0 1px var(--cobalt);color:var(--cobalt);background:#edf3ff}.activity-guidance{color:var(--muted);margin:9px 2px 0;font-size:10px;line-height:1.55}.goal-choice-grid button{text-align:left;min-height:88px}.goal-choice-grid strong,.goal-choice-grid span{display:block}.goal-rationale{background:#f3f7ff;border:1px solid #cbdcf8;border-radius:14px;margin-top:11px;padding:14px 16px}.goal-rationale strong{color:var(--cobalt);font-size:11px}.goal-rationale p{color:#29476d;margin:6px 0 0;font-size:12px;font-weight:680;line-height:1.55}.goal-rationale small{color:var(--muted);margin-top:7px;font-size:10px;display:block}.goal-choice-grid span{color:var(--muted);margin-top:5px;font-size:10px;font-weight:650}.profile-number-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.profile-number-grid input{border:1px solid var(--border);width:100%;height:48px;color:var(--navy);background:#fbfdff;border-radius:12px;font-weight:800}.profile-result{background:linear-gradient(135deg, #0f3cab, var(--blue));color:#fff;border-radius:17px;grid-template-columns:1.6fr repeat(3,.7fr);gap:10px;margin-top:25px;padding:18px;display:grid}.profile-result>div{border-left:1px solid #fff3;padding:7px 12px}.profile-result>div:first-child{border-left:0}.profile-result span,.profile-result strong,.profile-result p{display:block}.profile-result span{color:#c9dbff;font-size:10px;font-weight:800}.profile-result strong{margin-top:4px;font-size:22px}.profile-result>div:first-child strong{font-size:31px}.profile-result small{font-size:12px}.profile-result p{color:#c9dbff;margin:2px 0 0;font-size:10px}.profile-evidence-note{background:#f8fbff;border:1px solid #d7e3f3;border-radius:14px;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px;padding:12px 14px;display:grid}.profile-evidence-note>div{min-width:0}.profile-evidence-note strong{color:#214267;font-size:10px;display:block}.profile-evidence-note p{color:#74849a;margin:3px 0 0;font-size:9px;line-height:1.5}.profile-evidence-note.within{background:#f3fbf8;border-color:#cce8df}.profile-evidence-note.within strong{color:#16765d}.profile-age-caution{border-top:1px dashed #d7e3f3;grid-column:1/-1;padding-top:9px;color:#a0592e!important}.profile-submit{justify-content:space-between;align-items:center;gap:20px;margin-top:20px;display:flex}.profile-submit p{color:var(--muted);margin:0;font-size:11px}.meal-slot-picker{grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:15px;display:grid}.meal-slot-picker button{border:1px solid var(--border);color:var(--navy);cursor:pointer;text-align:left;background:#fbfdff;border-radius:14px;grid-template-columns:auto 1fr;align-items:center;gap:0 8px;padding:11px 12px;display:grid}.meal-slot-picker button>span{width:30px;height:30px;color:var(--cobalt);background:#edf3ff;border-radius:10px;grid-row:span 2;place-items:center;font-weight:900;display:grid}.meal-slot-picker strong{font-size:12px}.meal-slot-picker small{color:var(--muted);font-size:9px}.meal-slot-picker button.selected{background:#eef4ff;border-color:#80a7ff;box-shadow:inset 0 0 0 1px #80a7ff}.coach-preview{background:#edf4ff;border:1px solid #c8dafc;border-radius:18px 18px 18px 5px;align-items:flex-start;gap:13px;margin-bottom:18px;padding:16px 18px;display:flex}.coach-preview img{object-fit:contain;flex:none;width:62px;height:62px}.coach-preview span{color:var(--cobalt);font-size:10px;font-weight:900}.coach-preview p{color:#29476d;margin:5px 0 0;font-size:14px;font-weight:700;line-height:1.65}.serving-picker{border:1px solid var(--line);border-radius:14px;grid-template-columns:minmax(220px,1fr) auto;align-items:center;gap:20px;margin-bottom:18px;padding:14px 16px;display:grid}.serving-picker.needs-confirmation{background:#f6f9ff;border-color:#86aaf0;box-shadow:0 0 0 3px #1746d10f}.serving-picker.confirmed{border-color:#b9ddcf}.portion-editor{background:#f3f7ff;border:1px solid #c8dafc;border-radius:15px;grid-template-columns:minmax(210px,1.2fr) minmax(110px,.55fr) minmax(150px,.65fr) minmax(190px,.9fr);align-items:end;gap:10px;margin-bottom:12px;padding:15px 16px;display:grid}.portion-editor>div,.portion-editor label{min-width:0}.portion-editor span,.portion-editor strong,.portion-editor small{display:block}.portion-editor span{color:var(--muted);margin-bottom:6px;font-size:10px;font-weight:800}.portion-editor strong{color:#1d426f;font-size:15px}.portion-editor small{color:var(--muted);margin-top:4px;font-size:9px}.portion-editor select,.portion-editor input{border:1px solid var(--border);width:100%;height:42px;color:var(--navy);font:inherit;background:#fff;border-radius:10px;outline:none;font-size:12px;font-weight:800}.portion-editor select{padding:0 10px}.portion-editor input:focus,.portion-editor select:focus{border-color:var(--cobalt);box-shadow:0 0 0 3px #1746d117}.serving-picker>div:first-child strong,.serving-picker>div:first-child span{display:block}.serving-picker>div:first-child strong{font-size:13px}.serving-picker>div:first-child span{color:var(--muted);margin-top:3px;font-size:10px}.serving-picker>div:nth-child(2){flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.serving-picker button{min-height:36px;padding:7px 10px;font-size:10px}.serving-picker .serving-confirm-button,.serving-confirmed-copy{grid-column:1/-1;margin:-7px 0 0}.serving-picker .serving-confirm-button{border-color:var(--cobalt);color:#fff;background:var(--cobalt);width:100%}.serving-confirmed-copy{color:#237052;font-size:10px;font-weight:850}.quantity-custom{width:82px;position:relative}.quantity-custom input{border:1px solid var(--border);width:100%;height:36px;color:var(--navy);font:inherit;border-radius:12px;padding:0 29px 0 9px;font-size:10px;font-weight:800}.quantity-custom span{color:var(--muted);font-size:9px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.meal-chat-feed{gap:25px;display:grid}.meal-chat-pair{border-bottom:1px solid var(--line);gap:11px;padding-bottom:25px;display:grid}.meal-chat-pair:last-child{border-bottom:0;padding-bottom:0}.member-chat-line,.coach-chat-line{align-items:flex-end;gap:11px;display:flex}.member-chat-line{justify-content:flex-end}.chat-user-avatar{background:var(--navy);color:#fff;border-radius:50%;flex:none;place-items:center;width:38px;height:38px;font-size:10px;font-weight:850;display:grid}.member-meal-bubble{background:var(--cobalt);color:#fff;border-radius:18px 18px 5px;grid-template-columns:132px minmax(180px,1fr);width:min(590px,100% - 50px);display:grid;overflow:hidden;box-shadow:0 11px 24px #1746d129}.chat-photo{background:linear-gradient(145deg,#213552,#0f1d31);min-height:128px;position:relative;overflow:hidden}.chat-photo img{object-fit:contain;width:100%;height:100%}.member-meal-bubble>div:last-child{padding:15px 17px}.member-meal-bubble span{color:#bfd3ff;font-size:9px;font-weight:850}.member-meal-bubble h3{letter-spacing:-.035em;margin:4px 0 0;font-size:18px}.member-meal-bubble p{color:#e0e9ff;margin:5px 0 0;font-size:11px}.member-meal-bubble strong{margin-top:10px;font-size:11px;display:block}.coach-chat-line{align-items:flex-start}.coach-chat-line>img{object-fit:contain;flex:none;width:52px;height:52px}.coach-chat-line>div{background:#f0f5ff;border:1px solid #cbdcf8;border-radius:5px 18px 18px;width:min(650px,100% - 64px);padding:14px 17px}.coach-chat-line span{color:var(--cobalt);font-size:10px;font-weight:900}.coach-chat-line p{color:#29476d;margin:5px 0 0;font-size:13px;font-weight:680;line-height:1.65}.empty-coach-chat{background:#f6f9ff;border:1px dashed #b7ccef;border-radius:18px;justify-content:center;align-items:center;gap:18px;min-height:190px;padding:25px;display:flex}.empty-coach-chat img{object-fit:contain;width:110px;height:110px}.empty-coach-chat strong{font-size:18px}.empty-coach-chat p{color:var(--muted);margin:6px 0 0}.coach-question-panel{border-top:1px solid var(--line);margin-top:30px;padding-top:26px}.coach-question-heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:14px;display:flex}.coach-question-heading>div{align-items:center;gap:10px;min-width:0;display:flex}.coach-question-heading img{object-fit:contain;flex:none;width:46px;height:46px}.coach-question-heading div div{gap:2px;display:grid}.coach-question-heading span{color:var(--cobalt);font-size:10px;font-weight:900}.coach-question-heading strong{color:var(--ink);letter-spacing:-.025em;font-size:15px}.coach-question-heading>small{color:#466187;background:#edf3ff;border-radius:999px;flex:none;padding:7px 10px;font-size:9px;font-weight:850}.coach-question-feed{scroll-behavior:smooth;background:radial-gradient(circle,#3c6ace14 1px,#0000 1.5px) 0 0/22px 22px,linear-gradient(#f8faff,#f3f7ff);border:1px solid #d7e2f6;border-radius:20px;gap:12px;min-height:128px;max-height:360px;padding:18px;display:grid;overflow-y:auto}.coach-chat-loading,.coach-chat-starter{text-align:center;place-self:center;padding:20px}.coach-chat-loading{color:var(--muted);font-size:11px;font-weight:750}.coach-chat-starter strong{color:#264f9f;font-size:15px}.coach-chat-starter p{color:var(--muted);margin:6px 0 0;font-size:11px;line-height:1.55}.coach-question-message{align-items:flex-start;gap:8px;display:flex}.coach-question-message.member{justify-content:flex-end}.coach-question-message>img{object-fit:contain;flex:none;width:34px;height:34px}.coach-question-message>div{max-width:min(76%,560px)}.coach-question-message span{color:var(--cobalt);margin:0 0 4px 4px;font-size:9px;font-weight:900;display:block}.coach-question-message p{color:#263e63;white-space:pre-wrap;background:#fff;border:1px solid #d3def1;border-radius:5px 16px 16px;margin:0;padding:11px 13px;font-size:12px;font-weight:680;line-height:1.62;box-shadow:0 5px 14px #1f417d0d}.coach-question-message.member p{border-color:var(--cobalt);color:#fff;background:var(--cobalt);border-radius:16px 16px 5px}.coach-question-message time{color:#8b98af;margin:4px 5px 0;font-size:8px;font-weight:700;display:block}.coach-question-message.member time{text-align:right}.coach-question-message.thinking p{align-items:center;gap:4px;min-height:38px;display:flex}.coach-question-message.thinking i{background:#7798d5;border-radius:50%;width:5px;height:5px;animation:1s infinite alternate coach-dot}.coach-question-message.thinking i:nth-child(2){animation-delay:.18s}.coach-question-message.thinking i:nth-child(3){animation-delay:.36s}@keyframes coach-dot{to{opacity:.45;transform:translateY(-4px)}}.coach-feed-end{width:100%;height:1px;scroll-margin-bottom:156px;display:block}.coach-suggestions{gap:7px;padding:11px 1px 9px;display:flex;overflow-x:auto}.coach-suggestions button{color:#315b9e;font:inherit;cursor:pointer;background:#fff;border:1px solid #cbdaf3;border-radius:999px;flex:none;padding:8px 11px;font-size:9px;font-weight:800}.coach-suggestions button:hover{background:#f5f8ff;border-color:#7da2ea}.coach-composer{background:#fff;border:1px solid #cbd9f0;border-radius:18px;align-items:flex-end;gap:9px;padding:9px 9px 9px 15px;display:flex;box-shadow:0 9px 24px #1e428212}.coach-composer:focus-within{border-color:#769ce9;box-shadow:0 0 0 4px #2c64dd14}.coach-composer textarea{resize:vertical;width:100%;min-height:36px;max-height:108px;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;padding:8px 0 5px;font-size:12px;line-height:1.55}.coach-composer textarea::placeholder{color:#9aa7ba}.coach-composer button{color:#fff;background:var(--cobalt);cursor:pointer;border:0;border-radius:13px;flex:none;place-items:center;width:38px;height:38px;font-size:18px;font-weight:900;display:grid}.coach-composer button:disabled{cursor:not-allowed;opacity:.38}.coach-composer-meta{color:#8a96aa;margin:7px 3px 0;font-size:8px;line-height:1.5}.floating-meal-add{z-index:45;background:var(--cobalt);color:#fff;cursor:pointer;border:0;border-radius:999px;align-items:center;gap:8px;min-height:58px;padding:9px 18px 9px 10px;display:flex;position:fixed;bottom:26px;right:28px;box-shadow:0 16px 38px #1746d159}.floating-meal-add span{width:40px;height:40px;color:var(--cobalt);background:#fff;border-radius:50%;place-items:center;font-size:24px;display:grid}.floating-meal-add strong{font-size:13px}@media (width<=760px){.profile-overlay{place-items:end center;padding:0}.profile-dialog{border-radius:24px 24px 0 0;width:100%;max-height:94vh;padding:23px 19px 28px}.profile-welcome{grid-template-columns:82px 1fr auto;gap:12px}.profile-welcome img{width:82px;height:82px}.profile-number-grid{grid-template-columns:1fr 1fr 1fr;gap:7px}.choice-row.three,.goal-choice-grid{grid-template-columns:1fr}.profile-result{grid-template-columns:repeat(3,1fr)}.profile-result>div:first-child{border-bottom:1px solid #fff3;border-left:0;grid-column:1/-1}.profile-evidence-note{grid-template-columns:1fr}.profile-age-caution{grid-column:1}.profile-submit{flex-direction:column;align-items:stretch}.meal-slot-picker{grid-template-columns:1fr 1fr}.serving-picker{grid-template-columns:1fr;align-items:stretch;gap:13px}.serving-picker>div:nth-child(2){justify-content:flex-start}.portion-editor{grid-template-columns:1fr 1fr}.member-meal-bubble{grid-template-columns:105px 1fr}.chat-photo{min-height:116px}.floating-meal-add{min-height:54px;bottom:16px;right:16px}}@media (width<=430px){.profile-number-grid{grid-template-columns:1fr}.profile-welcome{grid-template-columns:68px 1fr auto}.profile-welcome img{width:68px;height:68px}.profile-welcome p:last-child{display:none}.profile-result{grid-template-columns:1fr 1fr 1fr;padding:12px}.profile-result>div{padding:7px}.portion-editor,.member-meal-bubble{grid-template-columns:1fr}.chat-photo{height:170px}.floating-meal-add strong{display:none}.floating-meal-add{padding:8px}}.meal-glance{margin-bottom:22px;padding:clamp(24px,3vw,34px)}.meal-glance-heading{justify-content:space-between;align-items:end;gap:22px;display:flex}.meal-glance-heading h2{letter-spacing:-.045em;margin:0;font-size:clamp(21px,2.1vw,29px)}.meal-record-progress{color:#58708f;background:#f6f9ff;border:1px solid #dce7f9;border-radius:999px;align-items:center;min-height:25px;margin-top:9px;padding:5px 9px;font-size:10px;font-weight:850;display:inline-flex}.meal-record-progress.complete{color:#16715b;background:#effbf7;border-color:#c9eadf}.daily-macro-summary{flex-wrap:wrap;justify-content:flex-end;gap:13px;font-size:12px;font-weight:900;display:flex}.daily-macro-summary span:before{content:"";border-radius:4px;width:10px;height:10px;margin-right:6px;display:inline-block}.daily-macro-summary .carb:before,.daily-macro-track .carb{background:#7966ee}.daily-macro-summary .protein:before,.daily-macro-track .protein{background:#4d9cf5}.daily-macro-summary .fat:before,.daily-macro-track .fat{background:#37c4c3}.daily-macro-track{background:#e9eef7;border-radius:999px;height:9px;margin:18px 0 24px;display:flex;overflow:hidden}.daily-macro-track span{min-width:0;transition:width .5s}.meal-glance-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;display:grid}.meal-glance-item{min-width:0;position:relative}.meal-glance-main{width:100%;color:var(--navy);cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.meal-glance-quick-add{color:#3567ae;cursor:pointer;background:#f5f8ff;border:1px solid #d7e4f6;border-radius:10px;width:100%;min-height:30px;margin-top:7px;padding:5px 7px;font-size:10px;font-weight:900;display:block}.meal-glance-quick-add:hover{background:#ebf2ff;border-color:#9db8e5}.meal-glance-photo{aspect-ratio:1.28;background:linear-gradient(145deg,#eff4fc,#f8faff);border:1px solid #d9e3f1;border-radius:18px;place-items:center;width:100%;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #fffc}.meal-glance-item:first-child .meal-glance-photo:not(:has(img)){background:linear-gradient(145deg,#fff8e8,#eef5ff)}.meal-glance-item:nth-child(2) .meal-glance-photo:not(:has(img)){background:linear-gradient(145deg,#eef8ff,#f8fbff)}.meal-glance-item:nth-child(3) .meal-glance-photo:not(:has(img)){background:linear-gradient(145deg,#eef1ff,#f8f6ff)}.meal-glance-item:nth-child(4) .meal-glance-photo:not(:has(img)){background:linear-gradient(145deg,#effaf5,#f8fbff)}.meal-glance-photo>img{object-fit:cover;filter:blur(1.4px)brightness(.68)saturate(.9);width:100%;height:100%;transition:filter .18s,transform .18s;transform:scale(1.04)}.meal-glance-item:hover .meal-glance-photo>img{filter:blur(.7px)brightness(.76)saturate();transform:scale(1.07)}.meal-glance-photo>strong{z-index:2;color:#fff;letter-spacing:-.05em;text-shadow:0 2px 14px #00000080;white-space:nowrap;font-size:clamp(22px,3vw,36px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.meal-glance-photo>strong small{letter-spacing:0;margin-left:3px;font-size:10px}.meal-glance-add{width:54px;height:54px;color:var(--cobalt);background:#fff;border-radius:50%;place-items:center;font-size:29px;font-weight:500;display:grid;box-shadow:0 9px 22px #1746d121}.meal-glance-type{color:var(--navy);margin-top:10px;font-size:13px;font-weight:900;display:block}.meal-glance-type small{color:var(--cobalt);font-size:9px}.meal-glance-item em{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:11px;font-style:normal;display:block;overflow:hidden}.history-card{margin:22px 0;padding:clamp(24px,3vw,36px)}.history-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:22px;display:flex}.history-heading h2{letter-spacing:-.045em;margin:0;font-size:clamp(22px,2.25vw,30px)}.history-heading>div:first-child>p:last-child{color:var(--muted);margin:8px 0 0}.history-month-control{background:#f7faff;border:1px solid #d3deef;border-radius:14px;grid-template-columns:38px minmax(112px,auto) 38px;align-items:center;display:grid;overflow:hidden}.history-month-control button{height:40px;color:var(--cobalt);cursor:pointer;background:0 0;border:0;font-size:25px}.history-month-control button:disabled{color:#bdc8d9;cursor:default}.history-month-control strong{text-align:center;font-size:13px}.history-calendar{background:#f9fbff;border:1px solid #dce5f2;border-radius:20px;padding:17px;transition:opacity .16s}.history-calendar.loading{opacity:.55}.history-weekdays,.history-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.history-weekdays{color:#8292aa;text-align:center;margin-bottom:8px;font-size:11px;font-weight:800}.history-day{min-width:0;min-height:92px;color:var(--navy);cursor:pointer;text-align:left;background:#fff;border:1px solid #e2e8f2;border-radius:13px;flex-direction:column;justify-content:space-between;padding:9px;display:flex;position:relative;overflow:hidden}.history-day.blank{visibility:hidden}.history-day>img{z-index:1;object-fit:cover;filter:blur(1.2px)brightness(.48);width:100%;height:100%;position:absolute;inset:0;transform:scale(1.05)}.history-day-visual{z-index:0;text-align:center;place-content:center;gap:4px;display:grid;position:absolute;inset:0;overflow:hidden}.history-day-visual b{font-size:19px;font-style:normal;line-height:1}.history-day-visual small{letter-spacing:-.02em;font-size:7px;font-style:normal;font-weight:850}.history-day-visual.photo-pending{color:#ffffffb8;background:linear-gradient(145deg,#3f5576,#1d3150)}.history-day-visual.photo-pending:before{content:"";border:2px solid #ffffff38;border-top-color:#ffffffd1;border-radius:50%;width:22px;height:22px;margin:0 auto;animation:.8s linear infinite spin}.history-day-visual.photo-missing{color:#58708f;background:radial-gradient(circle at 72% 20%,#ffffffd9 0 10%,#0000 11%),linear-gradient(145deg,#eef3fa,#dfe9f7)}.history-day>span,.history-day>div{z-index:2;position:relative}.history-day .sodium-flow-dot{z-index:4;background:#38a979;border:2px solid #ffffffeb;border-radius:50%;width:9px;height:9px;padding:0;position:absolute;top:29px;right:9px;box-shadow:0 2px 7px #152c4d47}.history-day .sodium-flow-dot.yellow{background:#e0a229}.history-day .sodium-flow-dot.red{background:#db6666}.history-day>span{justify-content:space-between;align-items:center;font-size:11px;font-weight:900;display:flex}.history-day>span small{color:var(--cobalt);background:#e8f0ff;border-radius:999px;padding:2px 5px;font-size:8px}.history-day>div{gap:2px;display:grid}.history-day>div strong{color:#fff;letter-spacing:-.04em;text-shadow:0 2px 10px #00000061;font-size:16px}.history-day>div strong small{letter-spacing:0;margin-left:2px;font-size:7px}.history-day>div em{color:#ffffffd1;font-size:8px;font-style:normal;font-weight:800}.history-day.recorded>span{color:#fff;text-shadow:0 1px 6px #0000008c}.history-day.no-photo>span{color:#3f5878;text-shadow:none}.history-day.no-photo>div strong{color:#274564;text-shadow:none}.history-day.no-photo>div em{color:#617996}.history-day.selected{border-color:var(--cobalt);box-shadow:0 0 0 3px #1746d121}.history-empty-dot{color:#c0cbdb;align-self:center;font-size:20px;font-style:normal}.history-detail{background:#edf4ff;border-radius:17px;margin-top:16px;padding:19px}.history-detail-loading{color:#6f8098;justify-content:center;align-items:center;gap:10px;min-height:116px;display:flex}.history-detail-loading .analysis-spinner{flex:none;width:22px;height:22px}.history-detail-loading p{margin:0;font-size:12px;font-weight:750}.history-detail-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.history-detail-heading>div{gap:4px;display:grid}.history-detail-heading span{color:var(--cobalt);font-size:11px;font-weight:900}.history-detail-heading strong{font-size:17px}.history-detail-heading>em{color:var(--muted);font-size:11px;font-style:normal}.history-detail-tools{align-items:flex-end;gap:9px;display:flex}.history-add-meal{color:#245bb5;cursor:pointer;white-space:nowrap;background:#edf5ff;border:1px solid #b9d1f5;border-radius:11px;min-height:36px;padding:8px 12px;font-size:11px;font-weight:900}.history-add-meal:hover{background:#e4f0ff;border-color:#82aceb}.history-detail-status{flex-direction:column;align-items:flex-end;min-width:0;gap:6px!important;display:flex!important}.history-detail-status>em{color:var(--muted);font-size:11px;font-style:normal}.sodium-flow-chip{white-space:nowrap;background:#ffffffc7;border:1px solid #d7e1ed;border-radius:999px;align-items:center;gap:7px;max-width:100%;padding:7px 10px;font-weight:850;display:inline-flex;color:#5b6d84!important;font-size:9px!important}.history-meal-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:15px;display:grid}.history-meal-strip article{min-width:0}.history-meal-strip article>div{background:#dce6f4;border-radius:13px;height:112px;position:relative;overflow:hidden}.history-meal-strip img{object-fit:cover;filter:brightness(.78);width:100%;height:100%}.history-meal-strip article>div>strong{color:#fff;text-shadow:0 2px 9px #00000080;font-size:20px;position:absolute;bottom:8px;right:9px}.history-meal-strip article>div>strong small{margin-left:2px;font-size:8px}.history-meal-strip article>div>span{color:#7789a3;place-items:center;height:100%;font-size:10px;display:grid}.history-meal-strip article>span{color:var(--cobalt);margin-top:8px;font-size:10px;font-weight:900;display:block}.history-meal-strip h3{text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:13px;overflow:hidden}.history-meal-strip p{color:var(--muted);margin:3px 0 0;font-size:10px}.history-no-meals{color:var(--muted);margin:14px 0 0;font-size:12px}.food-label-layer{z-index:3;pointer-events:none;position:absolute;inset:0}.food-detection-label{color:#fff;text-overflow:ellipsis;white-space:nowrap;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;pointer-events:auto;background:#4a5361e0;border:1px solid #ffffff59;border-radius:999px;max-width:min(190px,45%);padding:8px 11px;font-family:inherit;font-size:12px;font-weight:850;position:absolute;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 7px 20px #00000038}.food-detection-label b{color:#9ec0ff;margin-left:5px}.food-detection-label.confirmed{background:#166f4de6;border-color:#b2ffd9b8}.image-overlay{z-index:4}.coach-preview>div{flex:1;min-width:0}.coach-bubble-stack{gap:8px;margin-top:7px;display:grid}.coach-preview .coach-bubble-stack p,.coach-chat-line .coach-bubble-stack p{color:#213c62;background:#fff;border:1px solid #d2def3;border-radius:6px 16px 16px;margin:0;padding:11px 13px;font-weight:720;line-height:1.62;box-shadow:0 5px 14px #1a396c0f}.coach-preview .coach-bubble-stack p:first-child,.coach-chat-line .coach-bubble-stack p:first-child{color:#183b83;border-color:#b7cdf7;font-weight:820}.coach-chat-line>div{background:0 0;border:0;padding:0}.coach-chat-line>div>span{margin:0 0 5px 3px;display:block}@media (width<=760px){.meal-glance{border-radius:19px;padding:21px}.meal-glance-heading{flex-direction:column;align-items:flex-start;gap:13px}.daily-macro-summary{justify-content:flex-start}.meal-glance-grid{gap:9px}.meal-glance-photo{aspect-ratio:1;border-radius:14px}.meal-glance-photo>strong{font-size:clamp(18px,6vw,28px)}.meal-glance-photo>strong small{display:none}.meal-glance-add{width:43px;height:43px;font-size:24px}.meal-glance-type{margin-top:8px;font-size:11px}.meal-glance-item em{font-size:9px}.food-detection-label{max-width:48%;padding:7px 9px;font-size:10px}.meal-choice-notice{flex-wrap:wrap;align-items:flex-start}.meal-choice-notice p{width:calc(100% - 38px);margin:-6px 0 0 37px}.history-card{padding:21px 15px}.history-heading{flex-direction:column;align-items:flex-start}.history-month-control{width:100%}.history-calendar{border-radius:15px;padding:9px}.history-weekdays,.history-days{gap:4px}.history-day{border-radius:9px;min-height:70px;padding:6px}.history-day>div strong{font-size:11px}.history-day>div em{display:none}.history-day.no-photo>div em{text-overflow:ellipsis;white-space:nowrap;font-size:6px;line-height:1.1;display:block;overflow:hidden}.history-day-visual small{display:none}.history-meal-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.coach-question-feed{max-height:330px;padding:14px 11px}.coach-question-message>div{max-width:84%}.coach-question-heading>small{padding:6px 8px}.coach-card{min-height:224px;padding:24px 126px 24px 21px}.coach-card-avatar{opacity:.94;width:124px;height:124px;bottom:-5px;right:5px}}@media (width<=430px){.meal-glance{padding:18px 15px}.meal-glance-grid{gap:7px}.meal-glance-photo{border-radius:12px}.meal-glance-type small,.meal-glance-item em{display:none}.meal-glance-photo>strong{font-size:18px}.coach-preview{padding:14px 12px}.coach-preview img{width:48px;height:48px}.coach-preview .coach-bubble-stack p,.coach-chat-line .coach-bubble-stack p{padding:10px 11px;font-size:12px}.upload-choice-row{display:grid}.upload-choice-row .upload-button{width:100%}.history-day{min-height:58px}.history-day>span small,.history-empty-dot,.history-day>div strong small{display:none}.coach-card{min-height:238px;padding-right:94px}.coach-card-avatar{opacity:.88;width:104px;height:104px;bottom:1px;right:-5px}.coach-card h2{font-size:20px}.coach-card>.coach-card-content>p{font-size:11px}}@media (prefers-reduced-motion:reduce){.coach-avatar-motion,.brand-mark:after,.notification-trigger.has-items:after,.member-section-tabs button.active .member-tab-icon{will-change:auto;animation:none!important}}.favorites-card,.weight-checkin-card{margin-top:22px;padding:clamp(22px,3vw,34px)}.favorites-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.favorites-heading h2,.weight-checkin-copy h2,.admin-weekly-board h2{letter-spacing:-.045em;margin:0;font-size:clamp(22px,2.3vw,30px)}.favorites-heading p:last-child,.weight-checkin-copy>p{color:var(--muted);margin:7px 0 0;line-height:1.6}.favorites-heading>span{color:var(--cobalt);background:#edf3ff;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:900}.favorite-meal-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-top:18px;display:grid}.favorite-meal-grid article{background:linear-gradient(145deg,#fbfdff,#f1f6ff);border:1px solid #d7e2f5;border-radius:17px;min-width:0;padding:18px;position:relative}.favorite-meal-grid article>span{color:var(--cobalt);font-size:10px;font-weight:900}.favorite-meal-grid h3{text-overflow:ellipsis;white-space:nowrap;margin:8px 27px 4px 0;font-size:15px;overflow:hidden}.favorite-meal-grid p{min-height:30px;color:var(--muted);margin:0 0 13px;font-size:10px;line-height:1.5}.favorite-meal-grid .button{width:100%}.favorite-remove{color:#8795aa;width:27px;height:27px;font:inherit;cursor:pointer;background:#eaf0f9;border:0;border-radius:9px;font-size:17px;position:absolute;top:10px;right:10px}.favorites-empty{color:#526b91;background:#f7faff;border:1px dashed #bfd0eb;border-radius:17px;justify-content:center;align-items:center;gap:13px;min-height:112px;margin-top:16px;display:flex}.favorites-empty>span{color:#7b9cda;font-size:30px}.favorites-empty strong{font-size:13px}.favorites-empty p{color:var(--muted);margin:4px 0 0;font-size:10px}.meal-record-actions{justify-content:flex-end;gap:6px;padding-right:49px;display:flex}.meal-record-actions button,.history-meal-actions button{color:#41618d;font:inherit;cursor:pointer;background:#fff;border:1px solid #cad8ed;border-radius:9px;padding:6px 9px;font-size:9px;font-weight:850}.meal-record-actions button:disabled{cursor:default;opacity:.55}.meal-record-actions .danger,.history-meal-actions .danger{color:#a34242;background:#fff8f8;border-color:#efd2d2}.history-meal-actions{gap:5px;margin-top:8px;display:flex}.history-meal-actions button{flex:1;padding:5px 7px;font-size:8px}.meal-edit-overlay{z-index:96;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#081834b3;place-items:center;padding:26px;display:grid;position:fixed;inset:0;overflow-y:auto}.meal-edit-dialog{width:min(820px,100%);max-height:calc(100vh - 52px);padding:clamp(23px,3.5vw,38px);overflow-y:auto}.meal-edit-dialog>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:20px;display:flex}.meal-edit-dialog h2{letter-spacing:-.05em;margin:0;font-size:clamp(26px,3.4vw,38px)}.meal-edit-dialog header p:last-child{color:var(--muted);margin:7px 0 0}.meal-edit-form{grid-template-columns:repeat(3,1fr);gap:13px;margin-top:21px;display:grid}.meal-edit-form label{min-width:0}.meal-edit-form label>span{color:#526780;margin-bottom:6px;font-size:10px;font-weight:850;display:block}.meal-edit-form .wide{grid-column:1/-1}.meal-edit-form input,.meal-edit-form select,.meal-edit-form textarea{width:100%;min-height:43px;color:var(--ink);font:inherit;background:#fbfcff;border:1px solid #d5deeb;border-radius:11px;outline:none;padding:10px 12px;font-size:12px}.meal-edit-form textarea{resize:vertical;min-height:80px}.meal-edit-form input:focus,.meal-edit-form select:focus,.meal-edit-form textarea:focus{border-color:#739ae7;box-shadow:0 0 0 3px #3065d814}.meal-edit-form .number-input input{min-height:43px}.nutrition-source-note{color:#526780;background:#f6f9ff;border:1px solid #d9e5f7;border-radius:12px;flex-wrap:wrap;align-items:center;gap:5px 9px;margin:13px 0;padding:11px 13px;font-size:11px;display:flex}.nutrition-source-note strong{color:#24446f}.nutrition-source-note a{color:var(--cobalt);margin-left:auto;font-weight:850;text-decoration:none}.status-badge.official{color:#126c58;background:#effbf7;border-color:#bcded4}.saved-nutrition-source{color:#69809c;margin-top:7px;font-size:10px;font-weight:750;line-height:1.45;display:block}.saved-food-breakdown{background:#f8fbff;border:1px solid #dfe8f5;border-radius:12px;margin-top:8px}.saved-food-breakdown summary{color:#385b88;cursor:pointer;padding:8px 10px;font-size:10px;font-weight:850;list-style-position:inside}.saved-food-breakdown ul{gap:1px;margin:0;padding:0 9px 8px;list-style:none;display:grid}.saved-food-breakdown li{background:#fff;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:7px 8px;display:flex}.saved-food-breakdown li span{min-width:0}.saved-food-breakdown li strong,.saved-food-breakdown li small{display:block}.saved-food-breakdown li strong{color:#25466f;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.saved-food-breakdown li small{color:#7b8ca4;margin-top:2px;font-size:8px}.saved-food-breakdown li em{color:#4b6688;flex:none;font-size:9px;font-style:normal;font-weight:800}.saved-food-breakdown>p{color:#798aa0;margin:0;padding:0 10px 9px;font-size:8px;line-height:1.45}.saved-food-breakdown.admin{background:#f5f8fd}.meal-edit-actions{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;margin-top:22px;padding-top:18px;display:flex}.meal-edit-actions>div{gap:8px;display:flex}.weight-checkin-card{grid-template-columns:minmax(300px,.85fr) minmax(380px,1.15fr);align-items:stretch;gap:clamp(24px,4vw,52px);display:grid}.weight-checkin-copy{align-self:center}.weight-entry-form{align-items:flex-end;gap:9px;margin-top:18px;display:flex}.weight-entry-form label{flex:1}.weight-entry-form label>span{color:#526780;margin-bottom:6px;font-size:10px;font-weight:850;display:block}.weight-entry-form label>div{position:relative}.weight-entry-form input{width:100%;min-height:48px;color:var(--ink);font:inherit;background:#fbfcff;border:1px solid #ccd9ec;border-radius:12px;outline:none;padding:0 43px 0 14px;font-size:16px;font-weight:850}.weight-entry-form b{color:var(--muted);font-size:11px;position:absolute;top:50%;right:13px;transform:translateY(-50%)}.weight-entry-form .button{min-height:48px}.weight-checkin-copy>small{color:#8a96a9;margin-top:7px;font-size:9px;display:block}.weight-trend{color:#fff;background:linear-gradient(145deg,#123c9c,#2c70ea);border-radius:20px;min-height:220px;padding:20px;box-shadow:0 18px 38px #1443ac33}.weight-trend-heading{justify-content:space-between;align-items:flex-start;display:flex}.weight-trend-heading span{color:#c8dbff;font-size:9px;font-weight:800;display:block}.weight-trend-heading strong{margin-top:2px;font-size:25px;display:block}.weight-trend-heading em{color:#e1ebff;background:#ffffff21;border-radius:999px;padding:6px 8px;font-size:9px;font-style:normal;font-weight:900}.weight-trend-heading em.up{color:#ffe3b4}.weight-trend-heading em.down{color:#c5fff5}.weight-bars{align-items:flex-end;gap:8px;height:135px;margin-top:12px;display:flex}.weight-bars>div{text-align:center;flex:1;grid-template-rows:1fr auto;align-items:end;height:100%;display:grid}.weight-bars>div>span{background:#ffffff4d;border-radius:7px 7px 3px 3px;min-height:28px;display:block;position:relative}.weight-bars b{color:#fff;font-size:8px;position:absolute;top:-15px;left:50%;transform:translate(-50%)}.weight-bars small{color:#c6d9ff;margin-top:6px;font-size:8px}.weight-empty{color:#d6e4ff;place-items:center;height:145px;font-size:11px;display:grid}.admin-weekly-board{margin-bottom:22px;padding:clamp(24px,3vw,34px)}.admin-medal-summary{flex-wrap:wrap;gap:7px;margin:17px 0 4px;display:flex}.admin-medal-summary>span{color:#52647c;background:#f8fafd;border:1px solid #dbe4ef;border-radius:999px;align-items:center;gap:5px;padding:7px 9px;display:inline-flex}.admin-medal-summary i{font-size:13px;font-style:normal}.admin-medal-summary b,.admin-medal-summary strong{font-size:9px}.admin-medal-summary strong{color:var(--ink)}.admin-medal-summary>.master{background:#f7f0ff;border-color:#d9c6ef}.admin-medal-summary>.diamond{background:#ecfaff;border-color:#b9e0ec}.admin-medal-summary>.gold{background:#fff8da;border-color:#efd99b}.admin-medal-summary>.silver{background:#f2f6fa;border-color:#d6dfe9}.admin-medal-summary>.bronze{background:#fff3e8;border-color:#ead1bd}.admin-weekly-metrics{grid-template-columns:repeat(4,1fr);gap:9px;margin:18px 0;display:grid}.admin-weekly-metrics article{background:#f3f7ff;border-radius:14px;padding:15px}.admin-weekly-metrics article.quiet{background:#f4f5f7}.admin-weekly-metrics span,.admin-weekly-metrics strong,.admin-weekly-metrics small{display:block}.admin-weekly-metrics span{color:var(--muted);font-size:9px;font-weight:800}.admin-weekly-metrics strong{margin-top:4px;font-size:20px}.admin-weekly-metrics small{color:#8190a4;margin-top:3px;font-size:8px}.admin-weekly-member-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.admin-weekly-member-grid>button{border:1px solid var(--line);min-width:0;color:inherit;cursor:pointer;font:inherit;text-align:left;background:#fbfdff;border-radius:15px;padding:15px;transition:border-color .16s,box-shadow .16s,transform .16s}.admin-weekly-member-grid>button:hover,.admin-weekly-member-grid>button:focus-visible{border-color:#9bb6e5;outline:none;transform:translateY(-2px);box-shadow:0 12px 26px #264e921a}.admin-weekly-member-grid>button>div:first-child{grid-template-columns:38px 1fr auto;align-items:center;gap:9px;display:grid}.admin-weekly-member-grid .member-avatar{border-radius:12px;width:38px;height:38px}.admin-weekly-member-name{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.admin-weekly-member-grid strong,.admin-weekly-member-grid small{display:block}.admin-weekly-member-grid small{color:var(--muted);margin-top:2px;font-size:8px}.admin-weekly-member-grid em{color:#267765;background:#e9f8f4;border-radius:999px;padding:5px 7px;font-size:8px;font-style:normal;font-weight:850}.admin-weekly-member-grid em.today{color:#17684d;background:#e3f6ee}.admin-weekly-member-grid em.quiet{color:#718096;background:#edf1f5}.admin-weekly-member-grid .member-medal-badge{border-radius:999px;align-items:center;gap:3px;width:auto;height:auto;margin:0;padding:3px 6px;font-style:normal;line-height:1;display:inline-flex}.admin-weekly-member-grid .member-medal-badge i{font-size:10px}.admin-weekly-member-grid .member-medal-badge b{font-size:7px;display:inline}.weekly-member-numbers{color:#60718a;justify-content:space-between;margin-top:12px;font-size:8px;gap:8px!important;display:flex!important}.weekly-member-numbers b{color:var(--ink)}.weekly-dual-track{background:#e8edf5;border-radius:999px;height:6px;margin-top:8px;position:relative;overflow:hidden}.weekly-dual-track span,.weekly-dual-track i{border-radius:inherit;background:var(--cobalt);height:3px;position:absolute;left:0}.weekly-dual-track i{background:var(--teal);top:3px}.weekly-admin-empty{color:var(--muted);text-align:center;border:1px dashed #c6d4e8;border-radius:14px;padding:24px;font-size:11px}@media (width<=1120px){.favorite-meal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-weekly-member-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=760px){.favorites-card,.weight-checkin-card{padding:21px 16px}.favorite-meal-grid{display:flex;overflow-x:auto}.favorite-meal-grid article{flex:none;width:220px}.meal-record-actions{padding-right:0}.meal-edit-overlay{place-items:end center;padding:0}.meal-edit-dialog{border-radius:24px 24px 0 0;width:100%;max-height:94vh;padding:22px 17px 28px}.meal-edit-form{grid-template-columns:1fr 1fr}.meal-edit-form .wide{grid-column:1/-1}.meal-edit-actions{flex-direction:column-reverse;align-items:stretch}.meal-edit-actions>div{grid-template-columns:1fr 1fr;display:grid}.weight-checkin-card{grid-template-columns:1fr}.weight-entry-form{flex-direction:column;align-items:stretch}.weight-entry-form .button{width:100%}.admin-weekly-metrics{grid-template-columns:1fr 1fr}.admin-weekly-member-grid{grid-template-columns:1fr}}@media (width<=430px){.favorites-heading{display:grid}.meal-edit-form{grid-template-columns:1fr}.meal-edit-form .wide{grid-column:auto}.admin-weekly-metrics{grid-template-columns:1fr}}.beta-login-page{background:#f7f9ff;grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);min-height:100vh;display:grid}.beta-login-visual{color:#fff;background:radial-gradient(circle at 75% 18%,#6eaaff8f,#0000 30%),linear-gradient(145deg,#0f3fb8 0%,#2468eb 48%,#78a9ff 100%);min-height:100vh;padding:42px clamp(32px,6vw,88px) 54px;position:relative;overflow:hidden}.beta-login-visual:after{content:"";border:1px solid #ffffff2e;border-radius:50%;width:420px;height:420px;position:absolute;bottom:-150px;right:-170px;box-shadow:0 0 0 70px #ffffff0a,0 0 0 140px #ffffff08}.beta-login-brand{z-index:1;color:#fff;position:relative}.beta-login-brand .brand-mark{color:var(--cobalt);background:#fff}.beta-login-copy{z-index:1;max-width:610px;margin-top:clamp(70px,11vh,130px);position:relative}.beta-pill{letter-spacing:.06em;background:#ffffff1c;border:1px solid #ffffff52;border-radius:999px;padding:8px 13px;font-size:11px;font-weight:850;display:inline-flex}.beta-login-copy h1{letter-spacing:-.065em;margin:24px 0 18px;font-size:clamp(42px,5.4vw,74px);line-height:1.03}.beta-login-copy p{color:#dfeaff;max-width:530px;margin:0;font-size:clamp(15px,1.5vw,19px);line-height:1.75}.beta-login-preview{z-index:1;grid-template-columns:190px minmax(220px,330px);align-items:end;gap:14px;max-width:560px;margin-top:38px;display:grid;position:relative}.beta-preview-photo{color:#173a76;background:linear-gradient(145deg,#fffffffa,#e5f0fff0);border:1px solid #ffffffb8;border-radius:24px;flex-direction:column;justify-content:flex-end;min-height:178px;padding:18px;display:flex;box-shadow:0 24px 52px #091f5a38}.beta-preview-photo span{color:#6380ad;font-size:10px;font-weight:850}.beta-preview-photo .beta-preview-meal-emoji{background:linear-gradient(145deg,#eef5ff,#dceaff);border-radius:20px;place-items:center;width:62px;height:62px;margin:0 0 auto;font-size:34px;display:grid;box-shadow:inset 0 1px #ffffffe6}.beta-preview-photo strong{margin-top:5px;font-size:18px}.beta-preview-photo b{color:var(--cobalt);margin-top:7px;font-size:12px}.beta-preview-chat{color:#16316e;background:#fffffff0;border-radius:22px 22px 22px 6px;padding:20px 22px;box-shadow:0 24px 52px #091f5a38}.beta-preview-chat span{color:var(--cobalt);font-size:10px;font-weight:900}.beta-preview-chat p{margin:8px 0 0;font-size:13px;font-weight:730;line-height:1.58}.beta-login-points{z-index:1;color:#e9f1ff;flex-wrap:wrap;gap:22px;margin:42px 0 0;padding:0;font-size:11px;font-weight:800;list-style:none;display:flex;position:relative}.beta-login-points li{align-items:center;gap:8px;display:flex}.beta-login-points span{color:#a9c9ff;font-size:9px}.beta-login-panel{background:#fff;place-items:center;min-height:100vh;padding:48px clamp(28px,6vw,76px);display:grid}.beta-login-form-wrap{width:min(100%,450px)}.beta-login-form-wrap h2{color:var(--ink);letter-spacing:-.055em;margin:9px 0 13px;font-size:clamp(30px,3vw,42px)}.beta-login-description{color:var(--muted);margin:0 0 28px;font-size:14px;line-height:1.7}.beta-login-error{color:#ac3030;background:#fff5f5;border:1px solid #ffd0d0;border-radius:12px;margin-bottom:18px;padding:13px 15px;font-size:12px;font-weight:750;line-height:1.5}.beta-login-notice{color:#2452a8;background:#f2f7ff;border:1px solid #cbdcfb;border-radius:12px;margin-bottom:18px;padding:13px 15px;font-size:12px;font-weight:750;line-height:1.5}.beta-login-form{gap:10px;display:grid}.beta-login-form label{color:var(--ink);font-size:12px;font-weight:850}.beta-login-form label small{color:var(--muted);margin-left:5px;font-weight:650}.beta-login-form input{width:100%;min-height:52px;color:var(--ink);font:inherit;background:#fbfcff;border:1px solid #d9e1f1;border-radius:13px;outline:none;padding:0 16px;font-size:14px}.beta-login-form input:focus{border-color:#5b86ea;box-shadow:0 0 0 4px #3467e01a}.kakao-login-button{color:#191919;min-height:56px;font:inherit;cursor:pointer;background:#fee500;border:0;border-radius:14px;margin-top:5px;font-size:15px;font-weight:900;box-shadow:0 13px 27px #8e800021}.kakao-login-button:hover{background:#f7df00;transform:translateY(-1px)}.kakao-login-button span{margin-right:8px}.returning-login-form{margin-top:-4px}.login-flow-divider{color:#8a98ad;align-items:center;gap:12px;margin:22px 0 12px;font-size:10px;font-weight:800;display:flex}.login-flow-divider:before,.login-flow-divider:after{content:"";background:#e5ebf4;flex:1;height:1px}.new-member-toggle{color:#31527e;width:100%;min-height:54px;font:inherit;cursor:pointer;text-align:left;background:#f7faff;border:1px solid #dce5f2;border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:0 16px;display:grid}.new-member-toggle strong{font-size:12px}.new-member-toggle em{color:#7386a1;font-size:10px;font-style:normal;font-weight:800}.new-member-login{background:#f8fbff;border:1px solid #dce7fa;border-radius:17px;gap:14px;margin-top:12px;padding:17px;display:grid}.new-member-login>div>strong{color:#224fba;font-size:12px}.new-member-login>div>p{color:#687b97;margin:5px 0 0;font-size:10px;line-height:1.55}.new-member-login .login-consents{background:#fff}.beta-login-note{background:#f3f7ff;border-radius:16px;margin-top:28px;padding:18px}.beta-login-note strong{color:#224fba;font-size:12px}.beta-login-note p{color:#607296;margin:6px 0 0;font-size:11px;line-height:1.6}.beta-login-disclaimer{color:#98a3b7;margin-top:17px;font-size:9px;line-height:1.55;display:block}.login-consents{background:#f8fbff;border:1px solid #dce5f2;border-radius:14px;gap:9px;margin:8px 0;padding:14px;display:grid}.login-consents legend{color:#334c70;padding:0 5px;font-size:11px;font-weight:850}.login-consents label{grid-template-columns:18px 1fr;align-items:start;gap:8px;font-weight:650;line-height:1.45;display:grid}.login-consents input{width:17px;min-height:17px;accent-color:var(--cobalt);margin:1px 0 0;padding:0}.login-consents b,.login-consents a,.legal-links a,.legal-card a,footer a{color:#2452a8}.login-consents>small{color:var(--muted);font-size:9px;line-height:1.5}.legal-links{gap:14px;margin-top:14px;font-size:10px;font-weight:750;display:flex}.legal-page{background:linear-gradient(160deg,#f5f9ff,#fff);min-height:100vh;padding:54px 20px}.legal-card{background:#fff;border:1px solid #dfe7f2;border-radius:24px;width:min(100%,820px);margin:0 auto;padding:clamp(28px,5vw,58px);box-shadow:0 20px 60px #18376814}.legal-back{margin-bottom:28px;font-size:12px;font-weight:800;text-decoration:none;display:inline-block}.legal-card h1{letter-spacing:-.045em;margin:10px 0 12px;font-size:clamp(28px,5vw,44px);line-height:1.18}.legal-lead{color:var(--muted);margin:0 0 36px;font-size:12px;line-height:1.7}.legal-card section{border-top:1px solid #edf1f6;padding:22px 0}.legal-card h2{margin:0 0 10px;font-size:17px}.legal-card section p,.legal-card li{color:#53657d;font-size:13px;line-height:1.85}.legal-card ul{margin:8px 0;padding-left:20px}.logout-form{margin:0;display:inline-flex}.account-session{border-top:1px solid #edf0f6;justify-content:space-between;align-items:center;gap:18px;margin-top:20px;padding:18px 0 2px;display:flex}.account-session strong{color:#294261;font-size:12px}.account-session p{color:#8c96a9;margin:5px 0 0;font-size:10px;line-height:1.5}.account-session .button{flex:none}.account-danger{border-top:1px solid #edf0f6;justify-content:space-between;align-items:center;gap:18px;margin-top:20px;padding-top:20px;display:flex}.account-danger strong{color:#8f2d2d;font-size:12px}.account-danger p{color:#8c96a9;margin:5px 0 0;font-size:10px;line-height:1.5}.account-danger .button{flex:none}@media (width<=900px){.beta-login-page{grid-template-columns:1fr}.beta-login-visual{min-height:auto;padding:28px 24px 38px}.beta-login-copy{margin-top:58px}.beta-login-copy h1{font-size:clamp(38px,12vw,60px)}.beta-login-preview{grid-template-columns:135px 1fr}.beta-preview-photo{min-height:145px}.beta-login-points{gap:12px 18px;margin-top:28px}.beta-login-panel{min-height:auto;padding:48px 24px 64px}}@media (width<=480px){.beta-login-preview{grid-template-columns:1fr}.beta-preview-photo{display:none}.beta-login-points{display:grid}.account-session,.account-danger{flex-direction:column;align-items:stretch}.account-session .logout-form,.account-session .button{width:100%}}.app-shell{width:min(1320px,100% - 7vw)}.member-panel[hidden],.member-panel-group[hidden]{display:none!important}.member-panel{scroll-margin-top:178px}.member-panel-placeholder{text-align:left;justify-content:center;align-items:center;gap:16px;min-height:min(42svh,360px);display:flex}.member-panel-placeholder .analysis-spinner{flex:none;width:34px;height:34px}.member-panel-placeholder strong{color:var(--ink);font-size:18px;display:block}.member-panel-placeholder p{color:var(--muted);margin:4px 0 0;font-size:12px;font-weight:750}.member-section-tabs{z-index:24;-webkit-backdrop-filter:blur(22px)saturate(1.12);backdrop-filter:blur(22px)saturate(1.12);background:#fafcffd1;border:1px solid #cbd8ebc7;border-radius:21px;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:18px 0 22px;padding:8px;display:grid;position:sticky;top:88px;box-shadow:inset 0 1px 1px #ffffffe6,0 15px 38px #18356916}.member-section-tabs button{color:#26436b;cursor:pointer;min-width:0;min-height:64px;font:inherit;text-align:left;touch-action:manipulation;background:0 0;border:1px solid #0000;border-radius:15px;grid-template-columns:39px minmax(0,1fr) 15px;align-items:center;gap:10px;padding:10px 12px;transition:color .16s,background .16s,box-shadow .16s,transform .16s;display:grid}.member-section-tabs button:hover{background:#fff;border-color:#d2dff2;transform:translateY(-1px)}.member-section-tabs button.active{color:#fff;background:linear-gradient(145deg,#1c4fce,#3977ea);border-color:#2b62dc;box-shadow:0 11px 25px #1d52cf33}.member-tab-icon{width:39px;height:39px;color:var(--cobalt);background:#e6efff;border-radius:13px;place-items:center;font-size:17px;font-weight:900;display:grid}.member-section-tabs button:nth-child(2) .member-tab-icon{color:#0d8c6a;background:#e8f8f2}.member-section-tabs button:nth-child(3) .member-tab-icon{color:#7b4bc7;background:#f2ecff}.member-section-tabs button:nth-child(4) .member-tab-icon{color:#d37628;background:#fff3e6}.member-section-tabs button:nth-child(5) .member-tab-icon{color:#c33f63;background:#ffedf3}.member-section-tabs button.active .member-tab-icon{color:var(--cobalt);background:#fff;animation:.26s ease-out both tab-icon-pop}@keyframes tab-icon-pop{50%{transform:translateY(-2px)scale(1.08)}}.member-section-tabs button>span:nth-child(2),.member-section-tabs strong,.member-section-tabs small{min-width:0}.member-section-tabs strong,.member-section-tabs small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.member-section-tabs strong{font-size:12px;font-weight:900}.member-section-tabs small{color:#7a8ca8;margin-top:3px;font-size:9px;font-weight:750}.member-section-tabs button.active small{color:#cfddff}.member-section-tabs em{color:#8294af;font-size:15px;font-style:normal;transition:transform .16s}.member-section-tabs button.active em{color:#fff;transform:rotate(180deg)}.member-panel-hint{color:#34547f;background:linear-gradient(145deg,#fbfdff,#f2f6ff);border:1px dashed #bdcdea;border-radius:19px;justify-content:center;align-items:center;gap:13px;min-height:110px;margin:2px 0 18px;padding:21px;display:flex}.member-panel-hint>span{font-size:26px}.member-panel-hint strong{font-size:13px}.member-panel-hint p{color:var(--muted);margin:5px 0 0;font-size:10px}.coach-hub{margin-top:22px;padding:clamp(24px,3vw,36px)}.coach-hub .coach-question-panel{border:0;margin:0;padding:0}.coach-hub .coach-question-feed{min-height:250px;max-height:none;overflow:visible}.coach-hub .coach-suggestions{z-index:7;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f7fafff0;padding:10px 8px 8px;position:sticky;bottom:72px}.coach-hub .coach-composer{z-index:8;position:sticky;bottom:12px}@media (width<=760px){body{padding-bottom:calc(76px + env(safe-area-inset-bottom));background-attachment:scroll}.topbar{min-height:60px;padding:0 13px}.brand{gap:8px;font-size:17px}.brand-mark{border-radius:11px;width:33px;height:33px}.header-actions{gap:7px}.notification-trigger{border-radius:12px;width:36px;height:36px}.notification-trigger svg{width:18px;height:18px}.notification-popover{width:auto;max-height:calc(100vh - 88px);position:fixed;top:68px;left:10px;right:10px;overflow-y:auto}.streak{display:none}.avatar{place-items:center;width:36px;height:36px;display:grid}.header-actions .button-secondary{min-height:36px;padding:7px 10px;font-size:10px}.app-shell{width:calc(100% - 20px);padding:14px 0 34px}.intro{border-radius:21px;margin-bottom:14px;padding:18px 17px}.intro .eyebrow{margin-bottom:5px;font-size:9px}.intro h1{font-size:clamp(27px,8.5vw,36px)}.intro>div>p:last-child{margin-top:7px;font-size:13px}.source-chip{display:none}.meal-glance{padding:16px 14px}.meal-glance-heading{gap:10px}.meal-glance-heading h2{font-size:21px}.meal-glance-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.meal-glance-photo{aspect-ratio:1.55}.member-section-tabs{z-index:80;inset:auto 10px calc(8px + env(safe-area-inset-bottom));background:#fbfdffeb;border-radius:20px;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;margin:0;padding:6px;position:fixed;box-shadow:inset 0 1px 1px #fffffff5,0 16px 40px #122b532e}.member-section-tabs button{text-align:center;border:0;border-radius:13px;flex-direction:column;justify-content:center;gap:2px;min-width:0;min-height:54px;padding:5px 2px;transition:none;display:flex}.member-section-tabs button:hover{background:0 0;border:0;transform:none}.member-section-tabs button.active,.member-section-tabs button.active:hover{color:var(--cobalt);background:linear-gradient(145deg,#eef4ff,#e6efff);box-shadow:inset 0 0 0 1px #507ee41f}.member-tab-icon,.member-section-tabs button.active .member-tab-icon{width:auto;height:auto;color:inherit;background:0 0;font-size:17px;line-height:1;animation:none}.member-section-tabs strong{max-width:100%;font-size:9px}.member-section-tabs small,.member-section-tabs em{display:none}.member-panel{scroll-margin-top:75px}.member-panel-hint{border-radius:15px;min-height:88px;margin:13px 0 3px;padding:13px}.member-panel-hint>span{font-size:21px}.member-panel-hint p{line-height:1.45}.floating-meal-add{display:none}.dropzone{min-height:270px}.calorie-card{min-height:auto}.record-summary .calorie-main{min-height:145px}.dropzone.has-image,.dropzone.has-image>img{min-height:220px}.quick-save-header h3{font-size:18px}.quick-save-serving,.pizza-estimator{grid-template-columns:1fr}.pizza-estimator>p{grid-column:auto}.quick-save-presets{justify-content:flex-start}.quick-save-actions{grid-template-columns:1fr 1.25fr;display:grid}.coach-hub{margin-top:14px;padding:16px 12px 22px}.coach-hub .coach-question-feed{min-height:45vh;padding:14px 10px 118px}.coach-hub .coach-suggestions{bottom:calc(143px + env(safe-area-inset-bottom));margin:0 -2px}.coach-hub .coach-composer{bottom:calc(82px + env(safe-area-inset-bottom))}.coach-hub .coach-composer-meta{display:none}footer{padding-bottom:calc(102px + env(safe-area-inset-bottom))}}@media (width<=430px){.header-actions .button-secondary{display:none}.meal-glance-item em{display:block}.meal-glance-type{font-size:12px}.meal-glance-photo>strong{font-size:21px}}.photo-zoom-trigger{cursor:zoom-in;font:inherit;border:0;padding:0;position:relative;overflow:hidden}.chat-photo.photo-zoom-trigger{width:100%;display:block}.chat-photo.photo-zoom-trigger>img{position:absolute;inset:0}.photo-zoom-trigger>span,.history-photo-button>span{z-index:2;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#071226ad;border-radius:999px;padding:4px 7px;font-size:8px;font-weight:850;position:absolute;bottom:8px;right:8px}.history-photo-button{z-index:1;cursor:zoom-in;background:0 0;border:0;width:100%;padding:0;position:absolute;inset:0;overflow:hidden}.history-meal-strip article>div>strong{z-index:3;pointer-events:none}.meal-record-actions{align-items:center}.meal-compact-actions{gap:4px;display:inline-flex}.meal-record-actions .meal-compact-actions button,.history-meal-actions button{border-radius:10px;flex:none;place-items:center;width:30px;height:30px;padding:0;font-size:15px;line-height:1;display:grid}.history-meal-actions{justify-content:flex-end}.photo-lightbox{z-index:120;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#040c1ce0;place-items:center;padding:28px;display:grid;position:fixed;inset:0}.photo-lightbox figure{gap:10px;max-width:min(980px,94vw);max-height:90vh;margin:0;display:grid}.photo-lightbox img{object-fit:contain;border-radius:20px;max-width:100%;max-height:82vh;margin:auto;display:block;box-shadow:0 28px 70px #0006}.photo-lightbox figcaption{color:#ffffffdb;text-align:center;font-size:12px;font-weight:800}.photo-lightbox-close{z-index:2;top:max(18px, env(safe-area-inset-top));color:#fff;cursor:pointer;width:44px;height:44px;font:inherit;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1f;border:1px solid #ffffff40;border-radius:50%;place-items:center;font-size:26px;display:grid;position:fixed;right:18px}@media (width<=760px){.meal-record-actions{justify-content:space-between;gap:8px}.meal-record-actions>button:first-child{text-overflow:ellipsis;white-space:nowrap;max-width:156px;overflow:hidden}.meal-record-actions .meal-compact-actions button,.history-meal-actions button{width:32px;height:32px}.photo-lightbox{padding:14px}.photo-lightbox figure{max-width:100%}.photo-lightbox img{border-radius:16px;max-height:78vh}}.record-mode-card{margin-top:22px;padding:clamp(20px,3vw,30px)}.record-date-bar{background:#f7faff;border:1px solid #d9e5f5;border-radius:15px;grid-template-columns:minmax(0,1fr) 150px 120px;align-items:end;gap:10px;margin:14px 0 16px;padding:12px 14px;display:grid}.record-date-bar.past{background:linear-gradient(135deg,#f1f7ff,#e9f2ff);border-color:#b9d2f6}.record-date-bar>div{align-items:center;gap:10px;min-width:0;display:flex}.record-date-bar>div>span{color:#2d66bf;background:#fff;border-radius:11px;flex:none;place-items:center;width:34px;height:34px;font-size:18px;display:grid;box-shadow:0 4px 12px #22529414}.record-date-bar p{gap:2px;margin:0;display:grid}.record-date-bar p strong{color:#1c3f70;font-size:13px}.record-date-bar p small{color:#6d819c;font-size:10px}.record-date-bar label{color:#62758e;gap:4px;font-size:9px;font-weight:900;display:grid}.record-date-bar input{width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cfdced;border-radius:10px;padding:8px 10px;font-size:12px}.record-date-bar input:disabled{color:#6d7d91;background:#edf1f6}.record-mode-heading{justify-content:space-between;align-items:center;gap:18px;display:flex}.record-mode-heading h2{letter-spacing:-.045em;margin:0;font-size:clamp(21px,2.3vw,29px)}.record-mode-switch{background:#f2f6fc;border:1px solid #d5e0f1;border-radius:15px;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:5px;display:inline-grid}.manual-meal-content{border-top:1px solid var(--line);margin-top:21px;padding-top:21px}.manual-meal-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.manual-meal-heading h3{color:var(--navy);letter-spacing:-.035em;margin:0;font-size:19px}.manual-meal-heading p{color:var(--muted);margin:6px 0 0;font-size:11px;line-height:1.55}.manual-meal-heading>span{color:#176c51;background:#e8f7f0;border-radius:999px;flex:none;padding:6px 9px;font-size:9px;font-weight:900}.manual-meal-slots{margin-top:16px}.manual-food-search{grid-template-columns:minmax(0,1fr) 76px;gap:8px;margin-top:14px;display:grid}.manual-food-search input{width:100%;height:48px;color:var(--navy);font:inherit;background:#fff;border:1px solid #c7d6ec;border-radius:13px;outline:0;padding:0 15px;font-size:12px}.manual-food-search input:focus{border-color:var(--cobalt);box-shadow:0 0 0 4px #1746d114}.manual-food-search button{color:#fff;background:var(--cobalt);cursor:pointer;font:inherit;border:0;border-radius:13px;font-size:11px;font-weight:900}.manual-food-search button:disabled{opacity:.58;cursor:wait}.manual-meal-error{color:#a05f13;margin:10px 2px 0;font-size:10px;font-weight:800}.manual-meal-error-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.manual-meal-error-row button,.manual-custom-entry{color:var(--cobalt);cursor:pointer;font:inherit;background:#fff;border:1px solid #c7d6e9;border-radius:10px;padding:8px 10px;font-size:9px;font-weight:900}.manual-custom-entry{width:100%;color:#405b7d!important;border-style:dashed!important;justify-content:center!important}.manual-food-results{gap:7px;margin-top:12px;display:grid}.manual-food-results button{min-width:0;color:var(--navy);cursor:pointer;font:inherit;text-align:left;background:#fbfdff;border:1px solid #d5e0ef;border-radius:13px;justify-content:space-between;align-items:center;gap:12px;padding:13px;display:flex}.manual-food-results button:hover{background:#f3f7ff;border-color:#8eace3}.manual-food-results span{min-width:0}.manual-food-results strong,.manual-food-results small{display:block}.manual-food-results strong{font-size:11px}.manual-food-results small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:8px;overflow:hidden}.manual-food-results .food-search-priority-label{margin-bottom:0}.manual-food-results .food-search-alternatives{margin-top:1px}.manual-food-results .food-search-alternatives>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.manual-food-results em{color:var(--cobalt);flex:none;font-size:9px;font-style:normal;font-weight:850}.manual-result-actions{grid-template-columns:1fr;gap:8px;margin-top:2px;display:grid}.manual-food-results .manual-result-actions button{color:#47617f;text-align:center;background:#ffffffa6;border-style:dashed;justify-content:center;min-height:42px;padding:9px;font-size:9px;font-weight:900}.manual-food-results .manual-result-actions .manual-ai-lookup{color:#2857a8;border-style:solid;border-color:#bfd0ee}.manual-food-editor{background:linear-gradient(145deg,#f7fbfffa,#eff6ffe6);border:1px solid #a9c1ed;border-radius:17px;margin-top:14px;padding:16px;box-shadow:0 12px 28px #204b9114}.manual-food-editor>header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.manual-food-editor>header span{color:var(--cobalt);font-size:9px;font-weight:900}.manual-food-editor>header h3{color:var(--navy);margin:4px 0 0;font-size:20px}.manual-food-editor>header p{color:var(--muted);margin:4px 0 0;font-size:9px}.manual-food-editor>header button{color:#536983;cursor:pointer;font:inherit;background:#fff;border:1px solid #c9d7e9;border-radius:9px;flex:none;padding:7px 9px;font-size:9px;font-weight:850}.manual-food-header-actions{flex-direction:column;align-items:flex-end;gap:7px;display:flex}.nutrition-confidence-note{border:1px solid;border-radius:11px;margin-top:10px;padding:9px 11px;position:relative}.nutrition-confidence-note.high{background:#f2fbf7;border-color:#b7dfd0}.nutrition-confidence-note.medium{background:#fffaf0;border-color:#ecd39f}.nutrition-confidence-note.low{background:#fff6f6;border-color:#edc1c5}.nutrition-confidence-note strong{color:var(--navy);font-size:9px}.nutrition-confidence-note ul{color:#5c6f86;gap:3px;margin:7px 0 0;padding-left:16px;font-size:9px;display:grid}.nutrition-confidence-note p{color:#6f6255;margin:7px 0 0;font-size:9px;line-height:1.55}.nutrition-confidence-note a{color:var(--cobalt);margin-top:7px;font-size:9px;font-weight:900;text-decoration:none;display:inline-block}.manual-food-amount{grid-template-columns:minmax(0,1fr) minmax(110px,.6fr);gap:10px;margin-top:15px;display:grid}.manual-food-amount label>span,.manual-food-amount>div>span{color:var(--muted);margin-bottom:6px;font-size:9px;font-weight:850;display:block}.manual-food-amount>div{background:#fff;border:1px solid #d4dff0;border-radius:12px;padding:11px 13px}.manual-food-amount>div strong{color:var(--cobalt);font-size:18px}.manual-food-amount>div small{font-size:10px}.manual-nutrition-grid{grid-template-columns:repeat(4,1fr);gap:6px;margin-top:9px;display:grid}.manual-nutrition-grid span{color:#65768b;background:#fffc;border-radius:10px;padding:8px;font-size:8px}.manual-nutrition-grid strong{color:#274568;margin-top:3px;font-size:10px;display:block}.manual-nutrition-editor{background:#fffc;border:1px solid #ccd9eb;border-radius:13px;margin-top:10px;padding:0 11px 11px}.manual-nutrition-editor summary{color:#334d6e;cursor:pointer;justify-content:space-between;align-items:center;gap:8px;min-height:42px;font-size:10px;font-weight:900;display:flex}.manual-nutrition-editor summary span{color:#a44a50;font-size:8px}.manual-nutrition-editor>div{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;padding-top:3px;display:grid}.manual-nutrition-editor label>span{color:#64778e;margin-bottom:5px;font-size:8px;font-weight:800;display:block}.manual-nutrition-editor .number-input{min-height:39px}.manual-nutrition-editor .number-input input{min-width:0;padding:9px 5px 9px 9px;font-size:10px}.manual-nutrition-editor .number-input>span{padding-right:7px;font-size:8px}.manual-nutrition-editor>p{color:#74849a;margin:9px 0 0;font-size:8px;line-height:1.5}.carbohydrate-detail{background:linear-gradient(145deg,#f7fafff5,#eef4fce6);border:1px solid #d5dfed;border-radius:14px;margin-top:10px;padding:12px}.carbohydrate-detail>div:first-child{justify-content:space-between;align-items:center;gap:10px;display:flex}.carbohydrate-detail>div:first-child strong{color:#203b5f;font-size:10px}.carbohydrate-detail>div:first-child span{color:#516986;background:#e8eef8;border-radius:999px;padding:4px 7px;font-size:8px;font-weight:900}.carbohydrate-detail.official_label>div:first-child span{color:#177153;background:#ddf5ea}.carbohydrate-detail dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:9px 0 0;display:grid}.carbohydrate-detail dl div{background:#ffffffd1;border-radius:10px;min-width:0;padding:8px}.carbohydrate-detail dt{color:#75869c;font-size:8px;font-weight:800}.carbohydrate-detail dd{color:#183351;margin:3px 0 0;font-size:9px;font-weight:900}.carbohydrate-detail p{color:#667a92;margin:9px 0 0;font-size:8px;line-height:1.55}.food-search-priority-label.high{color:#147255}.food-search-priority-label.medium{color:#966014}.food-search-priority-label.low{color:#ad4d52}.manual-note{margin-top:12px;display:block}.manual-note>span{color:#4f647e;margin-bottom:6px;font-size:10px;font-weight:850;display:block}.manual-note small{color:var(--muted)}.manual-note textarea{resize:vertical;width:100%;min-height:68px;color:var(--navy);font:inherit;background:#fff;border:1px solid #cbd9eb;border-radius:12px;outline:0;padding:11px 12px;font-size:10px}.manual-note textarea:focus{border-color:var(--cobalt);box-shadow:0 0 0 3px #1746d112}.manual-save-button{width:100%;margin-top:12px}.record-mode-switch button{color:#5b6f8a;cursor:pointer;min-height:44px;font:inherit;white-space:nowrap;background:0 0;border:0;border-radius:11px;padding:9px 14px;font-size:11px;font-weight:850}.record-mode-switch button.active{color:#fff;background:var(--cobalt);box-shadow:0 7px 17px #1746d133}.record-mode-switch button span{min-width:20px;min-height:20px;color:var(--cobalt);background:#fff;border-radius:999px;place-items:center;margin-left:3px;font-size:9px;display:inline-grid}.favorites-content{border-top:1px solid var(--line);margin-top:21px;padding-top:21px}.favorites-content .favorites-heading h3{letter-spacing:-.035em;margin:0;font-size:19px}.meal-chat-groups{gap:11px;display:grid}.meal-chat-group{background:#fbfdff;border:1px solid #d7e2f3;border-radius:18px;transition:border-color .16s,box-shadow .16s;overflow:visible}.meal-chat-group.expanded{border-color:#b7ccf2;box-shadow:0 12px 30px #1c407e14}.meal-chat-group-toggle{width:100%;min-height:68px;color:var(--ink);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:18px;grid-template-columns:42px minmax(0,1fr) 24px;align-items:center;gap:12px;padding:12px 16px;display:grid}.meal-chat-group-icon{background:#eaf1ff;border-radius:13px;place-items:center;width:42px;height:42px;font-size:20px;display:grid}.meal-chat-group-toggle strong,.meal-chat-group-toggle small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.meal-chat-group-toggle strong{font-size:15px}.meal-chat-group-toggle small{color:var(--muted);margin-top:4px;font-size:10px}.meal-chat-group-toggle em{color:#8294af;font-size:17px;font-style:normal;transition:transform .16s}.meal-chat-group.expanded .meal-chat-group-toggle em{transform:rotate(180deg)}.meal-chat-group>.meal-chat-feed{padding:5px 18px 20px}.meal-chat-group>.meal-chat-feed[hidden]{display:none}.meal-record-actions{padding-right:0;position:relative}.meal-overflow{z-index:8;position:relative}.meal-record-actions .meal-overflow-trigger,.history-meal-actions .meal-overflow-trigger{color:#34557f;cursor:pointer;width:44px;height:44px;font:inherit;background:#fff;border:1px solid #cad8ed;border-radius:13px;place-items:center;padding:0;font-size:20px;font-weight:900;line-height:1;display:grid}.meal-action-sheet{z-index:12040;pointer-events:none;position:fixed;inset:0}.meal-action-sheet-backdrop{display:none}.meal-overflow-menu{z-index:1;pointer-events:auto;background:#fff;border:1px solid #d6e0ed;border-radius:13px;width:176px;padding:5px;display:grid;position:fixed;bottom:24px;right:24px;overflow:hidden;box-shadow:0 14px 34px #112b572e}.meal-overflow-menu-heading{border-bottom:1px solid #e6ebf3;gap:2px;padding:8px 10px 9px;display:grid}.meal-overflow-menu-heading span{color:#7a8ba1;font-size:8px;font-weight:850}.meal-overflow-menu-heading strong{color:#294969;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.meal-overflow-menu button{color:#365577;cursor:pointer;width:100%;min-height:40px;font:inherit;text-align:left;background:0 0;border:0;border-radius:9px;padding:9px 11px;font-size:11px;font-weight:800}.meal-overflow-menu button:hover{background:#f1f5fb}.meal-overflow-menu .danger{color:#ad3f3f;background:#fff7f7}.history-meal-strip article>.history-meal-actions{background:0 0;border-radius:0;height:auto;overflow:visible}.history-meal-actions{z-index:6;position:relative}.admin-member-controls{grid-template-columns:minmax(240px,1fr) auto auto;align-items:center;gap:12px;margin:18px 0 15px;display:grid}.admin-member-search{display:block;position:relative}.admin-member-search input{width:100%;min-height:46px;color:var(--ink);font:inherit;background:#fbfdff;border:1px solid #d2ddeb;border-radius:14px;outline:0;padding:10px 44px 10px 15px;font-size:12px}.admin-member-search input:focus{border-color:#7198e6;box-shadow:0 0 0 4px #2a5dc914}.admin-member-search>button{color:#71829b;cursor:pointer;width:32px;height:32px;font:inherit;background:#edf2f8;border:0;border-radius:9px;font-size:18px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.admin-member-search>button[hidden]{display:none}.admin-member-filters{background:#f0f4fa;border-radius:13px;gap:5px;padding:4px;display:flex;overflow-x:auto}.admin-member-filters button{color:#627590;cursor:pointer;min-height:38px;font:inherit;white-space:nowrap;background:0 0;border:0;border-radius:10px;padding:8px 11px;font-size:10px;font-weight:850}.admin-member-filters button.active{color:#fff;background:var(--cobalt)}.admin-member-result-count{color:var(--muted);white-space:nowrap;font-size:11px;font-weight:850}.admin-operations-panel{background:#ffffffb8;border:1px solid #d2deeee6;border-radius:18px;margin-bottom:18px;box-shadow:0 10px 28px #1d3b6a0d}.admin-operations-panel>summary{color:#294662;cursor:pointer;justify-content:space-between;align-items:center;gap:16px;min-height:66px;padding:14px 18px;list-style:none;display:flex}.admin-operations-panel>summary::-webkit-details-marker{display:none}.admin-operations-panel>summary>span{grid-template-columns:30px auto;align-items:center;column-gap:10px;display:grid}.admin-operations-panel>summary i{background:#edf3ff;border-radius:10px;grid-row:1/3;place-items:center;width:30px;height:30px;font-style:normal;display:grid}.admin-operations-panel>summary strong{font-size:12px}.admin-operations-panel>summary small{color:#7b8da5;font-size:9px}.admin-operations-panel>summary>b{color:#3768b5;font-size:10px}.admin-operations-panel[open]>summary{border-bottom:1px solid #e5ebf3}.admin-operations-panel[open]>summary>b:after{content:" 닫기"}.admin-operations-panel[open]>summary>b{font-size:0}.admin-operations-panel[open]>summary>b:after{font-size:10px}.admin-security-grid{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:16px;margin-bottom:18px;display:grid}.admin-operations-panel .admin-security-grid{margin:0;padding:16px}.admin-security-grid>.card{padding:22px}.admin-invite-form{grid-template-columns:minmax(0,1fr) 82px auto;gap:8px;margin:17px 0 12px;display:grid}.admin-invite-form input,.admin-invite-form select{min-width:0;height:44px;color:var(--ink);font:inherit;background:#fbfdff;border:1px solid #d2ddeb;border-radius:11px;padding:0 12px;font-size:11px}.new-invite-code{background:#eef5ff;border:1px solid #adc6f4;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin:10px 0;padding:13px;display:flex}.new-invite-code div{gap:3px;display:grid}.new-invite-code span{color:#55719c;font-size:9px;font-weight:800}.new-invite-code strong{color:#173f96;letter-spacing:.04em;font-size:16px}.admin-inline-error{color:#b23333;margin:8px 0;font-size:10px;font-weight:750}.admin-invite-list,.admin-audit-list{border-top:1px solid #edf1f6;max-height:235px;display:grid;overflow:auto}.admin-invite-list>div,.admin-audit-list>div{border-bottom:1px solid #edf1f6;align-items:center;gap:9px;min-height:48px;padding:8px 2px;display:flex}.admin-invite-list>div>span,.admin-audit-list>div>span{flex:1;gap:2px;min-width:0;display:grid}.admin-invite-list strong,.admin-audit-list strong{color:#294563;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.admin-invite-list small,.admin-audit-list small{color:var(--muted);font-size:9px}.admin-invite-list button{color:#a14848;cursor:pointer;font:inherit;background:0 0;border:0;font-size:9px;font-weight:800}.invite-status{color:#677993;white-space:nowrap;background:#edf1f6;border-radius:999px;padding:5px 7px;font-size:8px;font-style:normal;font-weight:900}.invite-status.active{color:#146346;background:#e5f7ef}.invite-status.used{color:#3159a3;background:#e9f0ff}.admin-audit-list time{color:#7a889d;white-space:nowrap;font-size:9px}.suspended-tag{color:#a23333!important;background:#fff0f0!important}.readonly-badge.suspended{color:#a23333;background:#fff0f0}.admin-member-empty{color:#526b8d;text-align:center;padding:42px 18px}.admin-member-empty p{color:var(--muted);margin:6px 0 0;font-size:11px}.member-photo button,.admin-member-meal-photo button{cursor:zoom-in;background:0 0;border:0;width:100%;height:100%;padding:0;position:relative;overflow:hidden}.member-photo button span,.admin-member-meal-photo button span{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#07142ab3;border-radius:999px;padding:4px 6px;font-size:8px;font-weight:850;position:absolute;bottom:7px;right:7px}.admin-member-meal-photo button{min-height:155px}.admin-member-meal-photo button img{object-fit:cover;width:100%;height:100%;display:block}@media (width<=760px){.detected-food-heading{flex-direction:column;align-items:stretch}.detected-food-heading>span{align-self:flex-start}.detected-food-title{grid-template-columns:24px minmax(0,1fr)}.detected-food-title em{grid-column:2}.food-search-panel form{grid-template-columns:minmax(0,1fr) 58px 32px}.food-search-results>button{align-items:flex-start}.detected-food-total{grid-template-columns:1fr 1fr}.detected-food-total .food-confirm-button{grid-column:1/-1;width:100%}.portion-total{grid-template-columns:1fr}.record-mode-card{margin-top:14px;padding:16px 14px}.record-date-bar{grid-template-columns:1fr 1fr;padding:11px}.record-date-bar>div{grid-column:1/-1}.record-mode-heading{flex-direction:column;align-items:stretch;gap:13px}.record-mode-switch{width:100%}.record-mode-switch button{padding:8px 5px;font-size:9px}.manual-meal-content{margin-top:16px;padding-top:16px}.manual-meal-heading{flex-direction:column;align-items:stretch;gap:9px}.manual-meal-heading>span{align-self:flex-start}.manual-food-results{grid-template-columns:1fr}.manual-food-amount,.manual-nutrition-grid,.manual-nutrition-editor>div{grid-template-columns:1fr 1fr}.manual-nutrition-editor label:first-child{grid-column:1/-1}.manual-food-editor>header{flex-direction:column}.manual-food-header-actions{flex-direction:row;justify-content:space-between;align-items:flex-start;width:100%}.manual-meal-error-row{flex-direction:column;align-items:flex-start}.favorites-content{margin-top:16px;padding-top:16px}.coach-date-navigator{grid-template-columns:42px minmax(0,1fr) auto 42px;margin-bottom:12px;padding:6px}.coach-date-navigator>button{min-width:42px;height:42px}.coach-date-navigator>.coach-date-today{height:32px;padding:0 8px}.coach-history-shortcuts.has-record-action{grid-template-columns:1fr 1fr}.coach-history-shortcuts.has-record-action .primary{grid-column:1/-1}.meal-chat-group-toggle{grid-template-columns:38px minmax(0,1fr) 20px;gap:9px;min-height:62px;padding:10px 12px}.meal-chat-group-icon{border-radius:12px;width:38px;height:38px;font-size:18px}.meal-chat-group-toggle small{font-size:9px}.meal-chat-group>.meal-chat-feed{padding:4px 11px 15px}.member-section-tabs strong{font-size:10px}.meal-record-actions .meal-overflow-trigger,.history-meal-actions .meal-overflow-trigger{width:44px;height:44px}.admin-member-controls{grid-template-columns:1fr auto}.admin-security-grid{grid-template-columns:1fr}.admin-invite-form{grid-template-columns:1fr 78px}.admin-invite-form .button{grid-column:1/-1;width:100%}.admin-member-search{grid-column:1/-1}.admin-member-filters{min-width:0}}.admin-cost-shell{padding-bottom:70px}.cost-month-nav{background:#ffffffdb;border:1px solid #d4e0f0;border-radius:15px;grid-template-columns:40px minmax(120px,1fr) 40px;align-items:center;gap:7px;padding:6px;display:grid;box-shadow:0 8px 24px #21427812}.cost-month-nav button{color:#274f96;cursor:pointer;width:40px;height:40px;font:inherit;background:#edf4ff;border:0;border-radius:11px;place-items:center;font-size:24px;display:grid}.cost-month-nav strong{color:#183960;text-align:center;font-size:13px}.cost-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.cost-summary-card{min-height:142px;padding:22px;position:relative;overflow:hidden}.cost-summary-card:after{content:"";background:#edf4ff;border-radius:50%;width:92px;height:92px;position:absolute;bottom:-30px;right:-22px}.cost-summary-card>span,.cost-summary-card>strong,.cost-summary-card>small{z-index:1;display:block;position:relative}.cost-summary-card>span{color:#526b8d;font-size:11px;font-weight:850}.cost-summary-card>strong{color:#153a70;letter-spacing:-.04em;margin-top:14px;font-size:25px}.cost-summary-card>small{color:#72829a;margin-top:5px;font-size:9px;font-weight:750}.cost-summary-card.total{color:#fff;background:linear-gradient(135deg,#123eac,#2666e8);border-color:#0000}.cost-summary-card.total:after{background:#ffffff1a}.cost-summary-card.total>span,.cost-summary-card.total>strong,.cost-summary-card.total>small{color:#fff}.cost-summary-card.budget:after{background:#effbf7}.cost-budget-track{z-index:1;background:#e6edf6;border-radius:999px;height:6px;margin-top:13px;position:relative;overflow:hidden}.cost-budget-track i{border-radius:inherit;background:linear-gradient(90deg,#23b7a0,#1c64d9);height:100%;display:block}.cost-forecast-card{grid-template-columns:minmax(220px,.85fr) minmax(360px,1.15fr);align-items:center;gap:18px 30px;margin-bottom:18px;padding:25px;display:grid}.cost-forecast-card h2{color:#173a68;letter-spacing:-.035em;margin:5px 0 0;font-size:20px}.cost-forecast-card>p{color:#536b8a;background:#f3f7fc;border-radius:13px;grid-column:1/-1;margin:0;padding:14px 16px;font-size:10px;line-height:1.7}.cost-forecast-numbers{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.cost-forecast-numbers span{background:#fbfdff;border:1px solid #dce6f4;border-radius:14px;gap:6px;padding:15px;display:grid}.cost-forecast-numbers small{color:#6a7d97;font-size:9px;font-weight:800}.cost-forecast-numbers strong{color:#1749a6;font-size:14px}.cost-member-board{padding:25px}.cost-member-controls{grid-template-columns:minmax(220px,1fr) auto;gap:12px;margin:18px 0 13px;display:grid}.cost-member-controls input{width:100%;height:44px;color:var(--ink);font:inherit;background:#fbfdff;border:1px solid #d2ddeb;border-radius:13px;outline:0;padding:0 14px;font-size:11px}.cost-member-controls input:focus{border-color:#7198e6;box-shadow:0 0 0 4px #2a5dc914}.cost-table{border:1px solid #dbe4ef;border-radius:16px;overflow:hidden}.cost-table-head,.cost-table-row{grid-template-columns:minmax(170px,1.25fr) repeat(6,minmax(90px,.8fr));align-items:center;gap:12px;display:grid}.cost-table-head{color:#72839a;background:#f3f7fc;min-height:44px;padding:0 15px;font-size:9px;font-weight:850}.cost-table-row{background:#fff;border-top:1px solid #e7edf5;min-height:76px;padding:11px 15px}.cost-table-row>div:not(.cost-member-name){gap:3px;display:grid}.cost-table-row strong{color:#244563;font-size:11px}.cost-table-row small{color:#7a899c;font-size:8px}.cost-member-name{align-items:center;gap:10px;min-width:0;display:flex}.cost-member-name>span{color:#fff;background:linear-gradient(135deg,#1d55ce,#4e8ff6);border-radius:12px;flex:0 0 38px;place-items:center;width:38px;height:38px;font-size:10px;font-weight:900;display:grid}.cost-member-name>div{gap:3px;min-width:0;display:grid}.cost-member-name strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cost-rate-note{color:#7a899c;margin:13px 2px 0;font-size:8px;line-height:1.6}@media (width<=980px){.cost-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cost-table{overflow-x:auto}.cost-table-head,.cost-table-row{min-width:960px}}@media (width<=760px){.admin-cost-shell{padding-bottom:90px}.admin-cost-shell .admin-intro{align-items:stretch}.cost-month-nav{width:100%}.cost-summary-grid{gap:9px}.cost-summary-card{min-height:126px;padding:17px 15px}.cost-summary-card>strong{font-size:20px}.cost-forecast-card{grid-template-columns:1fr;padding:19px 16px}.cost-forecast-card>p{grid-column:auto}.cost-forecast-numbers{grid-template-columns:1fr}.cost-member-board{padding:18px 14px}.cost-member-controls{grid-template-columns:1fr}.cost-table{border:0;border-radius:0;overflow:visible}.cost-table-head{display:none}.cost-table-row{border:1px solid #dce5f0;border-radius:15px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-height:0;margin-top:10px;padding:15px;display:grid}.cost-member-name{border-bottom:1px solid #e9eef5;grid-column:1/-1;padding-bottom:10px}.cost-table-row>div:not(.cost-member-name):before{color:#8290a2;content:attr(data-label);margin-bottom:3px;font-size:8px;font-weight:800;display:block}}.app-more-menu{position:relative}.app-more-trigger{color:#3b5578;cursor:pointer;width:42px;height:42px;font:inherit;background:#ffffffdb;border:1px solid #d8e2f0;border-radius:13px;place-items:center;transition:all .18s;display:grid}.app-more-trigger span{margin-top:-5px;font-size:25px;line-height:1}.app-more-trigger:hover,.app-more-trigger[aria-expanded=true]{color:#184bac;background:#eef4ff;border-color:#a9c0ee;transform:translateY(-1px)}.app-more-popover{z-index:96;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff7;border:1px solid #b8c9e1cc;border-radius:20px;width:min(330px,100vw - 24px);position:absolute;top:calc(100% + 10px);right:0;overflow:hidden;box-shadow:0 22px 55px #18366533}.app-more-popover>header{background:linear-gradient(145deg,#f2f7ff,#fbfdff);gap:3px;padding:17px 18px 13px;display:grid}.app-more-popover>header strong{color:#173d70;font-size:13px}.app-more-popover>header span{color:#71839d;font-size:9px}.app-more-popover>button{color:#24425f;cursor:pointer;text-align:left;background:0 0;border:0;border-top:1px solid #edf1f6;grid-template-columns:34px minmax(0,1fr) 16px;align-items:center;gap:10px;width:100%;min-height:64px;padding:10px 16px;display:grid}.app-more-popover>button:hover{background:#f4f8ff}.app-more-popover>button i{background:#eef4ff;border-radius:11px;place-items:center;width:34px;height:34px;font-size:16px;font-style:normal;display:grid}.app-more-popover>button span{gap:3px;display:grid}.app-more-popover>button strong{font-size:11px}.app-more-popover>button small{color:#7c8a9d;font-size:8px}.app-more-popover>button em{color:#8da0b9;font-size:18px;font-style:normal}.app-more-links{background:#fafcff;border-top:1px solid #edf1f6;gap:14px;padding:11px 17px 13px;display:flex}.app-more-links a{color:#71819a;font-size:8px;font-weight:800;text-decoration:none}.support-overlay{z-index:110;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a193175;place-items:center;padding:18px;display:grid;position:fixed;inset:0;overflow:auto}.settings-overlay{z-index:112;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a193175;place-items:center;padding:18px;display:grid;position:fixed;inset:0;overflow:auto}.settings-dialog{border-radius:24px;width:min(480px,100%);padding:0 0 20px;overflow:hidden;box-shadow:0 30px 80px #0c234847}.settings-dialog>header{background:linear-gradient(145deg,#eef5ff,#fff);justify-content:space-between;align-items:flex-start;gap:16px;padding:23px 24px 18px;display:flex}.settings-dialog>header h2{color:#153960;letter-spacing:-.04em;margin:5px 0 4px;font-size:22px}.settings-dialog>header p:last-child{color:#6d809a;margin:0;font-size:11px}.text-size-options{gap:9px;padding:19px 20px 15px;display:grid}.text-size-options>button{color:#274462;cursor:pointer;min-height:70px;font:inherit;text-align:left;background:#fff;border:1px solid #d7e1ee;border-radius:15px;grid-template-columns:45px minmax(0,1fr) 25px;align-items:center;gap:12px;padding:10px 14px;transition:all .16s;display:grid}.text-size-options>button:hover{background:#f8faff;border-color:#9ab5e8}.text-size-options>button.selected{background:#edf4ff;border-color:#4777d8;box-shadow:inset 0 0 0 1px #2c5fd214}.text-size-options>button>span:nth-child(2){gap:3px;display:grid}.text-size-options strong{font-size:13px}.text-size-options small{color:#74859b;font-size:10px}.text-size-options em{color:#1d55c4;text-align:center;font-size:18px;font-style:normal;font-weight:950}.text-size-sample{color:#2455bd;background:#e7efff;border-radius:13px;place-items:center;width:42px;height:42px;font-weight:900;display:grid}.text-size-sample.default{font-size:15px}.text-size-sample.large{font-size:18px}.text-size-sample.xlarge{font-size:21px}.settings-done{width:calc(100% - 40px);margin:0 20px}.support-dialog{border-radius:24px;width:min(570px,100%);max-height:min(790px,100dvh - 36px);padding:0;overflow:hidden;box-shadow:0 30px 80px #0c234847}.support-dialog-header{background:linear-gradient(145deg,#eef5ff,#fff);justify-content:space-between;align-items:flex-start;gap:16px;padding:23px 24px 17px;display:flex}.support-dialog-header h2{color:#153960;letter-spacing:-.035em;margin:5px 0;font-size:21px}.support-dialog-header>div>p:last-child{color:#6d809a;margin:0;font-size:10px;line-height:1.6}.support-tabs{background:#f5f8fc;border-top:1px solid #e6edf6;border-bottom:1px solid #e6edf6;grid-template-columns:1fr 1fr;padding:6px;display:grid}.support-tabs button{color:#70809a;cursor:pointer;height:40px;font:inherit;background:0 0;border:0;border-radius:11px;font-size:10px;font-weight:850}.support-tabs button.active{color:#184cad;background:#fff;box-shadow:0 4px 14px #1d478f1a}.support-error{color:#a23838;background:#fff0f0;border-radius:10px;margin:12px 20px 0;padding:10px 12px;font-size:9px;font-weight:750}.support-form{gap:13px;max-height:calc(100dvh - 235px);padding:20px 24px 23px;display:grid;overflow:auto}.support-presets{background:linear-gradient(145deg,#f3f7ff,#fbfdff);border:1px solid #d9e5f5;border-radius:15px;gap:10px;padding:13px;display:grid}.support-presets>div:first-child{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.support-presets>div:first-child strong{color:#224d92;font-size:11px}.support-presets>div:first-child span{color:#7b8ba1;font-size:8px}.support-preset-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.support-preset-list button{color:#34577f;cursor:pointer;min-width:0;min-height:38px;font:inherit;text-align:left;background:#fff;border:1px solid #cfddf1;border-radius:11px;align-items:center;gap:7px;padding:7px 10px;font-size:9px;font-weight:850;display:flex}.support-preset-list button:hover{color:#174aac;background:#f4f8ff;border-color:#83a5e8}.support-preset-list button span{font-size:14px}.support-presets>p{color:#70839d;margin:0;font-size:8px;line-height:1.55}.support-form label{gap:7px;display:grid}.support-form label>span{color:#3d5775;font-size:10px;font-weight:850}.support-form input,.support-form select,.support-form textarea{color:#17324f;width:100%;font:inherit;background:#fbfdff;border:1px solid #d4dfed;border-radius:13px;outline:0;font-size:11px}.support-form input,.support-form select{height:45px;padding:0 13px}.support-form textarea{resize:vertical;min-height:138px;padding:12px 13px;line-height:1.65}.support-form input:focus,.support-form select:focus,.support-form textarea:focus{border-color:#6e96e5;box-shadow:0 0 0 4px #2f63d314}.support-submit{justify-content:space-between;align-items:center;gap:12px;display:flex}.support-submit small{color:#8290a3;font-size:8px}.support-history{background:#f7f9fc;gap:10px;max-height:calc(100dvh - 210px);padding:17px 20px 22px;display:grid;overflow:auto}.support-history-card{background:#fff;border:1px solid #dfe7f1;border-radius:15px;padding:15px}.support-history-card>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.support-status{color:#285aa6;background:#eaf1ff;border-radius:999px;padding:5px 8px;font-size:8px;font-weight:900;display:inline-flex}.support-status.in_progress{color:#946117;background:#fff5dc}.support-status.replied{color:#107253;background:#e5f8f0}.support-status.closed{color:#68768a;background:#edf1f5}.support-history-card time{color:#8b98a9;font-size:8px}.support-history-card h3{color:#284563;margin:10px 0 6px;font-size:12px}.support-history-card>p{color:#61748c;white-space:pre-wrap;margin:0;font-size:10px;line-height:1.65}.support-history-card blockquote{background:#f0f5ff;border:0;border-left:3px solid #4a7de3;border-radius:0 11px 11px 0;margin:12px 0 0;padding:12px 13px}.support-history-card blockquote strong{color:#2455ab;font-size:9px}.support-history-card blockquote p{color:#405d80;white-space:pre-wrap;margin:5px 0 0;font-size:10px;line-height:1.65}.support-empty{color:#74859c;text-align:center;justify-items:center;padding:40px 20px;display:grid}.support-empty>span{color:#23856a;background:#e4f7f0;border-radius:50%;place-items:center;width:44px;height:44px;margin-bottom:12px;font-size:19px;display:grid}.support-empty strong{color:#2f4c6c;font-size:13px}.support-empty p{margin:6px 0 14px;font-size:9px}.support-empty button{color:#2056bd;cursor:pointer;font:inherit;background:0 0;border:0;font-size:9px;font-weight:850}.support-admin-shell{padding-bottom:70px}.support-admin-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-bottom:17px;display:grid}.support-admin-metrics button{color:#60758f;cursor:pointer;min-height:78px;font:inherit;background:#ffffffd1;border:1px solid #dbe5f1;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.support-admin-metrics button.active{color:#1749a8;background:#eff5ff;border-color:#81a5eb;box-shadow:0 8px 24px #224e9c1a}.support-admin-metrics span{font-size:10px;font-weight:850}.support-admin-metrics strong{font-size:22px}.support-admin-list{gap:11px;display:grid}.support-admin-card{padding:0;overflow:hidden}.support-admin-card-heading{width:100%;min-height:78px;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) 24px;align-items:center;gap:13px;padding:14px 18px;display:grid}.support-admin-card-heading>div{gap:5px;display:grid}.support-admin-card-heading strong{color:#274462;font-size:12px}.support-admin-card-heading p{color:#7a899d;margin:0;font-size:9px}.support-admin-card-heading em{color:#7990ab;font-size:21px;font-style:normal}.support-admin-detail{border-top:1px solid #e9eef5;padding:0 18px 18px}.support-member-message{background:#f5f8fc;border-radius:13px;margin:15px 0;padding:14px}.support-member-message span,.support-admin-detail label>span{color:#55708e;font-size:9px;font-weight:850}.support-member-message p{color:#34516f;white-space:pre-wrap;margin:7px 0 0;font-size:10px;line-height:1.7}.support-admin-detail label{gap:7px;display:grid}.support-admin-detail textarea{min-height:120px;font:inherit;resize:vertical;border:1px solid #d5dfec;border-radius:13px;outline:0;padding:12px;font-size:10px;line-height:1.65}.support-admin-actions{justify-content:flex-end;gap:8px;margin-top:11px;display:flex}.support-admin-actions button{color:#48617f;cursor:pointer;height:38px;font:inherit;background:#fff;border:1px solid #d1ddeb;border-radius:10px;padding:0 13px;font-size:9px;font-weight:850}.support-admin-actions button.primary{color:#fff;background:#2059ce;border-color:#1d55c8}.support-admin-actions button:disabled{cursor:wait;opacity:.55}@media (width<=760px){.topbar:has(.admin-visible-nav) .brand>span:last-child{display:none}.topbar:has(.admin-visible-nav) .brand{white-space:nowrap;flex:none}.topbar:has(.admin-visible-nav) .main-nav.admin-visible-nav{flex:auto;margin-left:1px}.topbar:has(.admin-visible-nav) .main-nav.admin-visible-nav a{padding-inline:5px;font-size:9px}.topbar>.logout-form{flex:none}.topbar>.logout-form .button{white-space:nowrap;min-height:36px;padding:7px 9px;font-size:9px}.admin-notification-menu .notification-trigger{border-radius:12px;width:36px;height:36px}.admin-notification-popover{width:auto;max-height:calc(100dvh - 82px);position:fixed;top:66px;left:10px;right:10px;overflow-y:auto}.app-more-trigger{border-radius:12px;width:38px;height:38px}.app-more-popover{width:min(330px,100vw - 20px);position:fixed;top:66px;right:10px}.support-overlay,.settings-overlay{align-items:end;padding:0}.support-dialog{border-radius:24px 24px 0 0;width:100%;max-height:91dvh}.settings-dialog{width:100%;padding-bottom:calc(20px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0}.support-dialog-header{padding:20px 18px 15px}.support-dialog-header h2{font-size:18px}.support-form{padding:17px 18px 22px}.support-presets>div:first-child{flex-direction:column;align-items:flex-start;gap:3px}.support-submit{flex-direction:column;align-items:stretch}.support-submit .button{width:100%}.support-admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.support-admin-card-heading{grid-template-columns:auto minmax(0,1fr) 18px;gap:9px;padding:12px}.support-admin-card-heading p{line-height:1.5}.support-admin-detail{padding:0 12px 14px}.support-admin-actions{grid-template-columns:repeat(3,1fr);display:grid}.support-admin-actions button{padding:0 6px}}.admin-photo-summary-button{width:100%;color:inherit;cursor:pointer;font:inherit;text-align:left;background:#ffffffeb;border:1px solid #d5e0efd1;transition:transform .18s,border-color .18s,box-shadow .18s}.admin-photo-summary-button:hover{border-color:#82b4c8;transform:translateY(-2px);box-shadow:0 16px 35px #1f536c1f}.stat-member-bubbles>.stat-member-avatar-button,.stat-member-bubbles>.stat-member-more{color:#19704e;cursor:pointer;width:38px;height:38px;font:inherit;letter-spacing:-.04em;background:#ddf5ea;border:3px solid #fff;border-radius:50%;place-items:center;margin-left:-7px;padding:0;font-size:9px;font-weight:950;transition:transform .16s,box-shadow .16s;display:grid;box-shadow:0 5px 14px #2d548f21}.stat-member-bubbles>.stat-member-avatar-button:first-child{margin-left:0}.stat-member-bubbles>.stat-member-avatar-button:hover,.stat-member-bubbles>.stat-member-avatar-button:focus-visible,.stat-member-bubbles>.stat-member-more:hover,.stat-member-bubbles>.stat-member-more:focus-visible{z-index:3;outline:none;transform:translateY(-3px)scale(1.06);box-shadow:0 8px 18px #236d4f33}.stat-member-bubbles>.stat-member-more{color:#fff;background:var(--cobalt)}.stat-member-expanded{overscroll-behavior:contain;scrollbar-width:thin;gap:5px;width:100%;max-height:210px;margin-top:10px;display:grid;overflow-y:auto}.stat-member-expanded>button{color:#2f4b6d;cursor:pointer;width:100%;min-height:40px;font:inherit;text-align:left;background:#ffffffe0;border:1px solid #dce5f2;border-radius:11px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px;padding:5px 8px;display:grid}.stat-member-expanded>button:hover,.stat-member-expanded>button:focus-visible{background:#f4f8ff;border-color:#9fb8e2;outline:none}.stat-member-expanded>button>span:first-child{color:#2454a1;background:#e8efff;border-radius:9px;place-items:center;width:30px;height:30px;font-size:8px;font-weight:900;display:grid}.stat-member-expanded>button>.member-medal-badge{border-width:1px;border-radius:999px;width:auto;height:auto;margin:0;padding:3px 6px;display:inline-flex}.stat-member-expanded>button>strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.stat-member-expanded>button>small{color:#6e819c;font-size:8px;font-weight:800}.admin-today-meals{background:linear-gradient(145deg,#f2f7ff,#fbfdff);border:1px solid #cdddf5;border-radius:18px;margin:22px 0;padding:20px}.admin-today-meals>header{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.admin-today-meals h3{color:#183d70;letter-spacing:-.04em;margin:3px 0 0;font-size:21px}.admin-today-meals>header>span{color:#365c91;white-space:nowrap;font-size:10px;font-weight:900}.admin-day-macro-track,.admin-slot-ratio{background:#e7edf6;border-radius:999px;width:100%;display:flex;overflow:hidden}.admin-day-macro-track{height:9px;margin-top:14px}.admin-day-macro-track .carb,.admin-slot-ratio .carb{background:#8065e8}.admin-day-macro-track .protein,.admin-slot-ratio .protein{background:#4d9ee9}.admin-day-macro-track .fat,.admin-slot-ratio .fat{background:#36b8b4}.admin-today-slot-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:12px;display:grid}.admin-today-slot-grid article{background:#ffffffc7;border:1px solid #e0e8f3;border-radius:14px;min-width:0;padding:13px}.admin-today-slot-grid article.filled{background:#fff;border-color:#c7d8f1}.admin-today-slot-grid article>div:first-child{justify-content:space-between;align-items:center;gap:8px;display:flex}.admin-today-slot-grid strong{color:#244568;font-size:11px}.admin-today-slot-grid em{color:#2358b3;background:#edf4ff;border-radius:999px;padding:4px 6px;font-size:8px;font-style:normal;font-weight:900}.admin-today-slot-grid p{color:#63758d;text-overflow:ellipsis;min-height:30px;margin:8px 0;font-size:9px;line-height:1.45;overflow:hidden}.admin-today-slot-grid b{color:#193c68;font-size:14px;display:block}.admin-today-slot-grid small{color:#6a7f99;margin-top:4px;font-size:8px;line-height:1.45;display:block}.admin-slot-ratio{height:6px;margin-top:9px}.admin-today-photo-strip{overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:thin;grid-auto-columns:minmax(150px,210px);grid-auto-flow:column;gap:9px;margin-top:14px;display:grid;overflow-x:auto}.admin-today-photo-strip>button{scroll-snap-align:start;min-width:0;color:inherit;cursor:zoom-in;font:inherit;text-align:left;background:#fff;border:1px solid #d7e3f2;border-radius:13px;grid-template-columns:64px minmax(0,1fr);padding:0;display:grid;overflow:hidden}.admin-today-photo-strip img{object-fit:cover;background:#e8eef6;width:64px;height:64px}.admin-today-photo-strip>button>span{align-content:center;gap:3px;min-width:0;padding:8px;display:grid}.admin-today-photo-strip strong{color:#2765ba;font-size:8px}.admin-today-photo-strip small{color:#39536e;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:800;overflow:hidden}.admin-today-meals.compact{margin-bottom:0}.admin-photo-gallery-overlay{z-index:105;background:#07162fb8;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.admin-photo-gallery-dialog{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border-radius:24px;width:min(1120px,100%);max-height:calc(100dvh - 48px);padding:0;overflow-y:auto}.admin-photo-gallery-dialog>header{z-index:3;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff2;border-bottom:1px solid #e3eaf3;justify-content:space-between;align-items:flex-start;gap:18px;padding:24px 26px 19px;display:flex;position:sticky;top:0}.admin-photo-gallery-dialog h2{color:#17395f;letter-spacing:-.04em;margin:3px 0 4px;font-size:24px}.admin-photo-gallery-dialog header p:last-child{color:#72839a;margin:0;font-size:10px}.admin-photo-gallery-grid{background:#f5f8fc;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;padding:18px 20px 22px;display:grid}.admin-photo-gallery-grid>button{min-width:0;color:inherit;cursor:zoom-in;font:inherit;text-align:left;background:#fff;border:1px solid #dce5f0;border-radius:15px;padding:0;transition:transform .16s,box-shadow .16s;overflow:hidden}.admin-photo-gallery-grid>button:hover{transform:translateY(-2px);box-shadow:0 12px 25px #1e3d6b1f}.admin-photo-gallery-grid img{aspect-ratio:1.35;object-fit:cover;background:#e8eef6;width:100%;display:block}.admin-photo-gallery-grid button>span{gap:3px;padding:10px 11px 12px;display:grid}.admin-photo-gallery-grid strong{color:#2459b0;font-size:8px}.admin-photo-gallery-grid b{color:#294562;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.admin-photo-gallery-grid small{color:#8190a4;font-size:8px}.admin-photo-gallery-dialog>footer{background:#fff;border-top:1px solid #e1e9f2;justify-content:center;align-items:center;gap:16px;min-height:68px;padding:13px 20px;display:flex}.admin-photo-gallery-dialog>footer>span:not(.analysis-spinner){color:#7b8aa0;font-size:9px;font-weight:800}.admin-photo-gallery-error,.admin-photo-gallery-empty{color:#8a3a3a;text-align:center;background:#fff1f1;border-radius:14px;margin:18px 20px;padding:24px;font-size:10px;font-weight:800}.admin-photo-gallery-empty{color:#6f8097;background:#f5f8fc}.admin-photo-gallery-skeleton{background:#f5f8fc;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;padding:18px 20px 22px;display:grid}.admin-photo-gallery-skeleton i{aspect-ratio:1.35;background:linear-gradient(135deg,#edf2f7,#e4ebf3);border:1px solid #dfe7f0;border-radius:15px;display:block}#member-insights-panel .calorie-number{flex:auto;min-width:0}#member-insights-panel .calorie-number strong{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;max-width:100%}@media (width<=900px){.admin-today-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-photo-gallery-grid,.admin-photo-gallery-skeleton{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=760px){.admin-today-meals{padding:15px}.admin-today-meals>header{flex-direction:column;align-items:flex-start;gap:7px}.admin-today-meals h3{overflow-wrap:anywhere;font-size:17px}.admin-photo-gallery-overlay{align-items:end;padding:0}.admin-photo-gallery-dialog{border-radius:24px 24px 0 0;width:100%;max-height:94dvh}.admin-photo-gallery-dialog>header{padding:20px 17px 15px}.admin-photo-gallery-dialog h2{font-size:19px}.admin-photo-gallery-grid,.admin-photo-gallery-skeleton{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px}#member-insights-panel .calorie-main{grid-template-columns:minmax(0,1fr) auto;gap:10px}#member-insights-panel .calorie-number strong{letter-spacing:-.055em;font-size:clamp(31px,10.5vw,43px)}}@media (width<=390px){.support-preset-list,.admin-today-slot-grid{grid-template-columns:1fr}.admin-photo-gallery-grid,.admin-photo-gallery-skeleton{grid-template-columns:1fr 1fr}#member-insights-panel .calorie-ring{width:102px;height:102px}#member-insights-panel .calorie-ring:before{width:83px;height:83px}}.manual-meal-heading p,.manual-food-editor>header p,.manual-meal-error,.manual-note>span,.manual-food-results strong,.manual-food-results em{font-size:12px}.manual-food-results small,.manual-nutrition-editor label>span,.manual-nutrition-editor .number-input>span{font-size:11px}.manual-nutrition-editor summary,.manual-nutrition-editor .number-input input,.manual-note textarea{font-size:13px}.stat-card.food-review{text-decoration:none}.manual-detail-lookup{background:linear-gradient(145deg,#f2f7ff,#fbfdff);border:1px solid #bfd2f2;border-radius:18px;margin-top:14px;padding:18px;box-shadow:inset 0 1px #ffffffe6}.manual-detail-lookup>header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.manual-detail-lookup>header span{color:var(--cobalt);font-size:11px;font-weight:900}.manual-detail-lookup h3{color:#163961;letter-spacing:-.035em;margin:3px 0 0;font-size:20px}.manual-detail-lookup header p{color:#617792;margin:6px 0 0;font-size:12px;line-height:1.55}.manual-detail-lookup>header>button{color:#607895;cursor:pointer;background:#e7eef8;border:0;border-radius:11px;flex:none;place-items:center;width:34px;height:34px;font-size:19px;display:grid}.manual-detail-fields{grid-template-columns:1fr 1.3fr .8fr;gap:10px;margin-top:16px;display:grid}.manual-detail-fields label.wide{grid-column:span 2}.manual-detail-fields label>span{color:#46617f;margin-bottom:6px;font-size:12px;font-weight:850;display:block}.manual-detail-fields label small{color:#8190a5;font-weight:700}.manual-detail-fields label b{color:#d04d57;font-size:10px}.manual-detail-fields input,.manual-detail-fields select{width:100%;min-height:46px;color:var(--navy);background:#fff;border:1px solid #c7d6e9;border-radius:12px;outline:none;padding:11px 12px;font-size:13px}.manual-detail-fields input:focus,.manual-detail-fields select:focus{border-color:var(--cobalt);box-shadow:0 0 0 4px #1746d114}.manual-detail-amount{grid-template-columns:minmax(0,1fr) 72px;gap:6px;display:grid}.manual-detail-actions{justify-content:space-between;align-items:center;gap:10px;margin-top:14px;display:flex}.manual-detail-actions .manual-label-entry{color:#536b88;cursor:pointer;background:#ffffffb3;border:1px dashed #b8c9df;border-radius:11px;padding:10px 12px;font-size:11px;font-weight:850}.manual-detail-lookup>small{color:#74879f;margin-top:10px;font-size:11px;line-height:1.5;display:block}.community-spotlight{width:100%;color:inherit;cursor:pointer;text-align:left;background:linear-gradient(130deg,#fffffff0,#edf4fff5);border:1px solid #bbcdece6;border-radius:18px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;margin:14px 0;padding:14px 17px;transition:transform .16s,border-color .16s,box-shadow .16s;display:grid;box-shadow:0 9px 30px #20478512}.community-spotlight:hover,.community-spotlight.active{border-color:#89aaea;transform:translateY(-1px);box-shadow:0 13px 34px #2047851c}.community-spotlight-icon{background:linear-gradient(145deg,#fff1b5,#ffd26b);border-radius:14px;place-items:center;width:43px;height:43px;font-size:21px;display:grid}.community-spotlight>span:nth-child(2){min-width:0;display:grid}.community-spotlight small{color:#446cb6;letter-spacing:.02em;font-size:10px;font-weight:950}.community-spotlight strong{color:#17375e;letter-spacing:-.025em;margin-top:2px;font-size:15px}.community-spotlight em{color:#71829a;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;font-style:normal;overflow:hidden}.community-spotlight>b{color:#315fba;white-space:nowrap;font-size:12px}.community-board{overflow:hidden}.community-board-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.community-board-heading h2{margin:3px 0 0}.community-board-heading p:last-child{color:var(--muted);margin:6px 0 0;font-size:12px}.community-board-heading>span{color:#27745e;white-space:nowrap;background:#e5f6ef;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:900}.community-beta-note{background:#fffae9;border:1px solid #e3d8ad;border-radius:13px;align-items:center;gap:14px;margin-top:16px;padding:12px 14px;display:flex}.community-beta-note strong{color:#7b5b0b;flex:none;font-size:12px}.community-beta-note p{color:#736a51;margin:0;font-size:11px;line-height:1.5}.community-ranking{gap:12px;margin-top:18px;display:grid}.community-ranking>article{background:#f9fbfe;border:1px solid #dbe5f2;border-radius:17px;overflow:hidden}.community-ranking>article.mine{border-color:#8db2f1;box-shadow:0 7px 24px #2d5cb11a}.community-ranking>article>header{background:#fff;border-bottom:1px solid #e7edf5;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px 15px;display:grid}.community-rank{color:#426184;background:#edf2f8;border-radius:12px;place-items:center;width:36px;height:36px;font-size:17px;font-weight:950;display:grid}.community-ranking header div{display:grid}.community-ranking header strong{color:#203e63;font-size:14px}.community-ranking header small{color:#788aa2;margin-top:2px;font-size:10px}.community-ranking header>b{color:#1f58c9;font-variant-numeric:tabular-nums;font-size:23px}.community-ranking header>b small{margin-left:2px;font-size:10px}.community-meal-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:11px;display:grid}.community-meal-strip>article{background:#fff;border:1px solid #e3eaf3;border-radius:13px;grid-template-columns:74px minmax(0,1fr);gap:10px;min-width:0;padding:8px;display:grid}.community-photo{aspect-ratio:1;color:#73849a;cursor:zoom-in;background:#edf1f6;border:0;border-radius:10px;place-items:center;width:74px;padding:0;font-size:10px;display:grid;position:relative;overflow:hidden}.community-photo img{object-fit:cover;width:100%;height:100%}.community-photo span{color:#fff;background:#12243fb8;border-radius:999px;padding:2px 5px;font-size:8px;position:absolute;bottom:4px;right:4px}.community-meal-strip>article>div:last-child{flex-direction:column;justify-content:center;min-width:0;display:flex}.community-meal-strip span{color:#7b8da4;font-size:9px}.community-meal-strip strong{color:#284564;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:12px;overflow:hidden}.community-meal-strip small{color:#5d718b;margin-top:4px;font-size:9px;line-height:1.45}.community-empty{background:#f7f9fc;border:1px dashed #c8d6e8;border-radius:16px;align-items:center;gap:14px;margin-top:18px;padding:22px;display:flex}.community-empty>span{font-size:27px}.community-empty>div{flex:1}.community-empty strong{color:#284461;font-size:14px}.community-empty p{color:#718198;margin:4px 0 0;font-size:11px}.meal-record-actions>button.shared{color:#137056;background:#e8f8f2;border-color:#88cbb6}.food-review-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0;display:grid}.food-review-metrics button{color:#4e6480;cursor:pointer;text-align:left;background:#fff;border:1px solid #d8e2ee;border-radius:16px;justify-content:space-between;align-items:center;min-height:76px;padding:16px;display:flex}.food-review-metrics button.active{color:#1746b8;background:#eef4ff;border-color:#7da2e8;box-shadow:0 7px 20px #2553ab14}.food-review-metrics span{font-size:12px;font-weight:850}.food-review-metrics strong{font-size:25px}.food-review-list{gap:10px;display:grid}.food-review-card{padding:0;overflow:hidden}.food-review-heading{width:100%;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:16px 18px;display:grid}.food-review-status{color:#9a5c0c;background:#fff0d3;border-radius:999px;padding:6px 8px;font-size:10px;font-weight:900}.food-review-status.approved{color:#177058;background:#e5f7ef}.food-review-status.rejected{color:#6f7c8f;background:#edf1f5}.food-review-heading strong{color:#264563;font-size:14px;display:block}.food-review-heading p{color:#788aa0;margin:3px 0 0;font-size:10px}.food-review-heading em{color:#647992;font-size:20px;font-style:normal}.food-review-editor{background:#f7f9fc;border-top:1px solid #e5ecf4;padding:17px 18px 19px}.food-review-context{background:#fff;border-radius:12px;padding:12px 13px}.food-review-context span{color:#6d7f95;font-size:10px;font-weight:850}.food-review-context p{color:#2d4967;margin:4px 0 0;font-size:13px}.food-review-context a{color:#2357b4;margin-top:6px;font-size:11px;font-weight:800;display:inline-block}.food-review-fields{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:12px;display:grid}.food-review-fields label.wide{grid-column:span 2}.food-review-fields label>span{color:#60748d;margin-bottom:5px;font-size:10px;font-weight:850;display:block}.food-review-fields input,.food-review-fields select,.food-review-fields textarea{color:#203e61;background:#fff;border:1px solid #cbd8e8;border-radius:10px;outline:0;width:100%;min-height:42px;padding:9px 10px;font-size:12px}.food-review-fields label>div{align-items:center;gap:5px;display:flex}.food-review-fields label>div b{color:#73849a;font-size:9px}@media (width<=720px){.member-app{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}.member-app :is(.notification-popover>header span,.notification-list p,.notification-note,.notification-empty,.food-search-error,.food-search-priority-label,.food-search-results small,.food-search-results em,.food-search-alternatives summary,.food-search-alternatives button small,.food-search-alternatives button em,.manual-meal-error,.manual-food-results small,.manual-food-results em,.manual-food-editor>header span,.manual-food-editor>header p,.manual-food-amount label>span,.manual-food-amount>div>span,.manual-nutrition-grid span,.manual-nutrition-editor label>span,.manual-nutrition-editor .number-input>span,.manual-nutrition-editor>p,.carbohydrate-detail dt,.carbohydrate-detail dd,.carbohydrate-detail p,.saved-nutrition-source,.weight-checkin-copy>small,.weight-trend-heading span,.weight-trend-heading em,.community-ranking header small,.community-meal-strip span,.community-meal-strip small,.support-error,.support-presets>div:first-child span,.support-presets>p,.support-submit small,.support-history-card time,.support-empty p,.app-more-popover>header span,.app-more-popover>button small,.app-more-links a){font-size:11px;line-height:1.45}.member-app :is(.meal-macro-ratio.compact .meal-macro-legend,.history-day>span small,.history-day>div em,.history-meal-strip article>div>strong small,.community-photo span){font-size:10px}.member-app :is(.food-search-panel input,.food-search-results strong,.food-search-alternatives button strong,.manual-note textarea,.manual-nutrition-editor .number-input input){font-size:12px}.member-app :is(.notification-trigger,.app-more-trigger,.meal-overflow-trigger,.history-month-control button,.food-search-panel form>button,.food-search-error-row button,.manual-food-editor>header button,.manual-result-actions button,.support-preset-list button){min-width:44px;min-height:44px}.member-app .food-search-panel form{grid-template-columns:minmax(0,1fr) 58px 44px}.member-app .member-section-tabs button{min-height:58px}}.app-page-identity{min-width:150px;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:0;display:flex}.app-page-identity>span:last-child{gap:1px;display:grid}.app-page-identity small{color:#7789a2;font-size:9px;font-weight:850}.app-page-identity strong{color:#172f50;letter-spacing:-.035em;font-size:16px;font-weight:950}.app-opening-shell{z-index:20000;color:#17365f;background:linear-gradient(#f9fbff 0%,#eff5ff 100%);position:fixed;inset:0;overflow:hidden}.app-opening-shell>header{height:64px;padding:max(8px, env(safe-area-inset-top)) max(18px, calc((100vw - 1180px) / 2));background:#ffffffeb;border-bottom:1px solid #1f478a12;align-items:center;gap:10px;display:flex}.app-opening-shell>header>div{gap:1px;display:grid}.app-opening-shell>header small{color:#8090a7;font-size:9px;font-weight:850}.app-opening-shell>header strong{color:#172f50;letter-spacing:-.035em;font-size:16px;font-weight:950}.app-opening-shell>header>i{background:#e7edf6;border-radius:50%;width:34px;height:34px;margin-left:auto}.app-opening-shell>header>i+i{width:40px;height:40px;margin-left:0}.app-opening-content{width:min(100% - 32px,760px);margin:0 auto;padding:34px 0 110px}.app-opening-content h1{color:#153354;letter-spacing:-.055em;margin:3px 0 22px;font-size:clamp(25px,5vw,34px)}.app-opening-summary{background:#ffffffe0;border:1px solid #26549d14;border-radius:27px;align-items:center;gap:20px;min-height:180px;padding:24px;display:flex;box-shadow:0 18px 42px #1f478a14}.app-opening-summary>span{aspect-ratio:1;background:conic-gradient(#dce7fb 0 68%, #edf2f8 68%);border-radius:50%;flex:0 0 120px}.app-opening-summary>div{flex:1;gap:12px;display:grid}.app-opening-summary i,.app-opening-summary b,.app-opening-cards span{background:#e7edf6;border-radius:999px;height:17px;display:block}.app-opening-summary b{width:62%;height:30px}.app-opening-cards{grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;display:grid}.app-opening-cards article{background:#ffffffc7;border:1px solid #26549d12;border-radius:22px;grid-template-columns:42px 1fr;gap:8px 12px;min-height:104px;padding:18px;display:grid}.app-opening-cards article>i{background:#dfe9fa;border-radius:14px;grid-row:1/span 2;width:42px;height:42px}.app-opening-cards article span:last-child{width:70%}.app-opening-shell :is(.app-opening-summary i,.app-opening-summary b,.app-opening-cards article>i,.app-opening-cards span,header>i){background-image:linear-gradient(100deg,#0000 20%,#ffffffb3 42%,#0000 64%);background-size:220% 100%;animation:1.4s ease-in-out infinite app-opening-shimmer}.app-opening-shell>nav{padding:15px 18px calc(15px + env(safe-area-inset-bottom));background:#fffffff0;border-top:1px solid #1f478a14;justify-content:center;gap:min(10vw,70px);display:flex;position:fixed;bottom:0;left:0;right:0}.app-opening-shell>nav i{background:#e2eaf6;border-radius:9px;width:28px;height:28px}@keyframes app-opening-shimmer{50%{background-position:-120% 0}}@media (width<=600px){.app-opening-content{padding-top:24px}.app-opening-summary{min-height:160px;padding:20px}.app-opening-summary>span{flex-basis:94px}.app-opening-cards{grid-template-columns:1fr}.app-opening-cards article:nth-child(2){display:none}}.member-panel:not([hidden]),.member-panel-group:not([hidden]){animation:80ms ease-out both app-screen-enter}@keyframes app-screen-enter{0%{opacity:.86}to{opacity:1}}.save-celebration{z-index:12000;pointer-events:none;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0c204229;place-items:center;padding:24px;animation:1.5s both save-backdrop;display:grid;position:fixed;inset:0}.save-celebration>div{color:#153b69;background:#fffffff5;border:1px solid #ffffffe6;border-radius:28px;justify-items:center;min-width:210px;padding:27px 25px 23px;animation:1.5s cubic-bezier(.2,.8,.2,1) both save-card-pop;display:grid;box-shadow:0 26px 70px #0b285b47}.save-celebration span{color:#fff;background:linear-gradient(145deg,#1aa878,#38c995);border-radius:50%;place-items:center;width:55px;height:55px;font-size:25px;font-weight:950;display:grid;box-shadow:0 10px 26px #139d6f40}.save-celebration strong{margin-top:14px;font-size:20px;font-weight:950}.save-celebration p{color:#71839c;text-overflow:ellipsis;white-space:nowrap;max-width:240px;margin:5px 0 0;font-size:11px;font-weight:750;overflow:hidden}@keyframes save-backdrop{0%,to{opacity:0}15%,82%{opacity:1}}@keyframes save-card-pop{0%{opacity:0;transform:translateY(18px)scale(.88)}18%,80%{opacity:1;transform:none}to{opacity:0;transform:translateY(-6px)scale(.96)}}.notification-setting{background:#f7faff;border:1px solid #d9e4f3;border-radius:17px;justify-content:space-between;align-items:center;gap:15px;margin-top:14px;padding:15px;display:flex}.notification-setting>div{align-items:center;gap:11px;min-width:0;display:flex}.notification-setting>div>span{background:#e7efff;border-radius:12px;flex:none;place-items:center;width:38px;height:38px;font-size:17px;display:grid}.notification-setting strong{color:#234465;font-size:12px}.notification-setting p{color:#73849a;margin:3px 0 0;font-size:10px;line-height:1.45}.notification-setting button{color:#2454b4;cursor:pointer;min-width:78px;min-height:38px;font:inherit;background:#fff;border:1px solid #bcd0ee;border-radius:11px;padding:7px 11px;font-size:10px;font-weight:900}.notification-setting button:disabled{color:#25805f;cursor:default;background:#eaf8f2}.viewport-result-sheet{z-index:12000;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;touch-action:pan-y;background:linear-gradient(#f9fbff,#eef4fc);border:0;border-radius:0;width:min(900px,100dvw);height:100dvh;max-height:100dvh;margin:0 auto;padding:0 22px 42px;position:fixed;inset:0;overflow:hidden scroll;box-shadow:0 0 0 100vmax #0c1f4138}.analysis-sheet-bar{z-index:4;background:#fafcff;border-bottom:1px solid #cddaecd6;grid-template-columns:42px 1fr 42px;align-items:center;margin:0 -22px 18px;padding:10px 18px;display:grid;position:sticky;top:0}.analysis-sheet-bar button{color:#23476f;cursor:pointer;background:#edf3fc;border:0;border-radius:13px;place-items:center;width:42px;height:42px;font-size:27px;display:grid}.analysis-sheet-bar strong{color:#1c3b61;text-align:center;font-size:14px}.analysis-sheet-bar span{color:#236c54;text-align:right;font-size:10px;font-weight:900}@media (width<=760px){.topbar,.member-section-tabs,.analysis-sheet-bar,.analysis-ready .quick-save-actions,.coach-hub .coach-suggestions,.analysis-result-photo>span{-webkit-backdrop-filter:none;backdrop-filter:none}.topbar,.member-section-tabs{background:#fbfdff}.coach-hub .coach-suggestions{background:#f7faff}.analysis-result-photo{border-radius:18px;height:clamp(380px,60svh,610px);margin-inline:-2px}.topbar{z-index:100;position:sticky;top:0}.app-page-identity{flex:auto;min-width:0}.app-page-identity .brand-mark{flex:none;width:36px;height:36px}.app-page-identity small{font-size:8px}.app-page-identity strong{font-size:15px}.member-app .main-nav:not(.admin-visible-nav){display:none}.topbar:has(.admin-visible-nav) .app-page-identity{flex:none;min-width:36px}.topbar:has(.admin-visible-nav) .app-page-identity>span:last-child{display:none}.member-app .app-shell{min-height:calc(100svh - 60px);padding-top:10px;padding-bottom:calc(88px + env(safe-area-inset-bottom))}.member-app .intro{padding:16px}.member-app .intro h1{font-size:25px}.member-app footer{display:none}.member-section-tabs button.active em{transform:none}.viewport-result-sheet{z-index:12000;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;touch-action:pan-y;width:100dvw;min-width:0;max-width:100dvw;height:100dvh;max-height:100dvh;padding:0 14px calc(132px + env(safe-area-inset-bottom));box-shadow:none;scroll-padding-block:64px calc(132px + env(safe-area-inset-bottom));background:linear-gradient(#f9fbff,#eef4fc);border:0;border-radius:0;margin:0;position:fixed;inset:0;overflow:hidden scroll}.analysis-sheet-bar{margin:0 -14px 14px;padding:9px 12px}.is-analyzing.panel-record .analysis-panel:not([hidden]){z-index:91;background:linear-gradient(155deg,#f9fbff,#eaf2ff);border:0;border-radius:0;align-content:center;width:100dvw;min-width:0;max-width:none;margin:0;padding:24px 20px;position:fixed;inset:60px 0 0;overflow:hidden;display:grid!important}.is-analyzing .analyzing-state{text-align:center;grid-template-columns:1fr;justify-items:center;gap:22px;width:min(100%,390px);min-width:0;margin:0 auto}.is-analyzing .analysis-loading-visual{aspect-ratio:4/3;border-radius:28px;width:min(82vw,330px)}.is-analyzing .analyzing-photo{width:100%;height:100%}.is-analyzing .analysis-loading-copy{min-width:0;max-width:320px}.is-analyzing .analyzing-state h2{margin-top:4px;font-size:22px;line-height:1.32}.is-analyzing .analyzing-state p{overflow-wrap:anywhere}.is-analyzing .analysis-panel[hidden]{display:none!important}.panel-record.analysis-ready .member-section-tabs,.panel-record.is-analyzing .member-section-tabs{visibility:hidden}.viewport-result-sheet .quick-save-actions{z-index:12004;padding:12px 14px calc(12px + env(safe-area-inset-bottom));background:#fafcff;border-top:1px solid #dbe5f2;margin:0;position:fixed;inset:auto 0 0;box-shadow:0 -12px 28px #1b39691f}.meal-scope-choice{flex-direction:column;align-items:stretch}.meal-scope-choice>div:last-child{grid-template-columns:1fr 1fr;display:grid}.analysis-inline-details{padding:13px}.viewport-result-sheet,.meal-edit-overlay{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}.viewport-result-sheet :is(input,select,textarea),.meal-edit-dialog :is(input,select,textarea),.member-app .description-step textarea,.member-app .food-search-panel input,.member-app .quantity-custom input,.member-app .manual-note textarea,.member-app .manual-nutrition-editor .number-input input{min-width:0;font-size:16px}.meal-edit-overlay{overscroll-behavior:contain;overflow:hidden}.meal-edit-dialog{max-height:94dvh;padding-bottom:calc(28px + env(safe-area-inset-bottom));scroll-padding-block:22px calc(112px + env(safe-area-inset-bottom));overscroll-behavior:contain;-webkit-overflow-scrolling:touch}}@media (prefers-reduced-motion:reduce){.app-opening-shell *,.member-panel:not([hidden]),.member-panel-group:not([hidden]),.save-celebration,.save-celebration>div,.analysis-ready .analysis-quick-save{animation:none!important}}.food-review-fields textarea{resize:vertical;min-height:70px}.food-review-actions{justify-content:flex-end;gap:8px;margin-top:13px;display:flex}.food-review-actions button{color:#526985;cursor:pointer;background:#fff;border:1px solid #cbd8e7;border-radius:10px;padding:9px 12px;font-size:11px;font-weight:850}.food-review-actions button.primary{color:#fff;background:#1746d1;border-color:#1746d1}.food-review-actions button.delete{color:#a63743;background:#fff7f8;border-color:#efc9cd;margin-right:auto}.food-review-actions button.official-match{color:#166649;background:#f1fbf6;border-color:#b8d8ca}.food-review-notice{color:#165d47;background:#effbf5;border:1px solid #a9dbc6;border-radius:14px;grid-template-columns:30px minmax(0,1fr) 30px;align-items:center;gap:10px;margin:0 0 14px;padding:12px 13px;display:grid;box-shadow:0 7px 18px #1d745314}.food-review-notice>span{color:#fff;background:#1c8a64;border-radius:10px;place-items:center;width:30px;height:30px;font-size:13px;font-weight:900;display:grid}.food-review-notice p{margin:0;font-size:11px;font-weight:800;line-height:1.5}.food-review-notice button{color:#4f7c6c;cursor:pointer;background:#ffffffb8;border:0;border-radius:9px;width:30px;height:30px;font-size:17px}.food-review-official-confirm{background:#edf9f3;border:1px solid #a9d8c5;border-radius:13px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;margin-top:13px;padding:12px 13px;display:grid}.food-review-official-confirm strong{color:#155c45;font-size:11px;display:block}.food-review-official-confirm p{color:#5c786e;margin:3px 0 0;font-size:9px;line-height:1.45}.food-review-official-confirm button{color:#486a5e;cursor:pointer;min-height:36px;font:inherit;background:#fff;border:1px solid #bfd6cc;border-radius:9px;padding:7px 10px;font-size:9px;font-weight:850}.food-review-official-confirm button.confirm{color:#fff;background:#1c805f;border-color:#1c805f}@media (width<=900px){.community-meal-strip,.food-review-fields{grid-template-columns:1fr 1fr}}@media (width<=760px){.manual-detail-fields{grid-template-columns:1fr 1fr}.manual-detail-fields label.wide,.manual-detail-fields label:first-child,.manual-detail-fields label:nth-child(2){grid-column:1/-1}.manual-detail-actions{flex-direction:column-reverse;align-items:stretch}.manual-detail-actions button{width:100%}.community-spotlight{margin:11px 0;padding:12px 13px}.community-spotlight em{display:none}.community-board-heading{flex-direction:column;gap:9px}.community-beta-note{flex-direction:column;align-items:flex-start;gap:4px}.community-meal-strip{grid-template-columns:1fr}.community-empty{flex-wrap:wrap;align-items:flex-start}.community-empty .button{width:100%}.food-review-metrics{grid-template-columns:1fr 1fr}.food-review-heading{grid-template-columns:minmax(0,1fr) auto}.food-review-heading>.food-review-status{grid-column:1/-1;justify-self:start}.food-review-fields{grid-template-columns:1fr 1fr}.food-review-fields label.wide{grid-column:1/-1}.food-review-actions{grid-template-columns:1fr 1fr;display:grid}.food-review-actions .primary{grid-column:1/-1}.food-review-official-confirm{grid-template-columns:1fr 1fr}.food-review-official-confirm>div{grid-column:1/-1}}.admin-quality-page{min-height:100vh;color:var(--ink)}.admin-quality-shell{width:min(1180px,100% - 32px);margin:0 auto;padding:34px 0 120px}.admin-quality-shell>.section-heading{align-items:flex-end;margin-bottom:22px}.admin-quality-shell h1{margin:4px 0 8px;font-size:clamp(1.75rem,4vw,2.6rem)}.admin-quality-error{color:#9f1239;background:#fff1f2;border:1px solid #fecaca;border-radius:16px;margin:16px 0;padding:14px 16px}.quality-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:22px;display:grid}.quality-metric-grid article{background:#ffffffe6;border:1px solid #6078a62e;border-radius:22px;min-height:156px;padding:20px;box-shadow:0 14px 40px #26458212}.quality-metric-grid article.warning{background:#fffaf5;border-color:#ea580c47}.quality-metric-grid span{color:#60708d;font-size:.88rem;font-weight:760}.quality-metric-grid strong{color:#10284c;letter-spacing:-.04em;margin:9px 0 8px;font-size:2rem;display:block}.quality-metric-grid strong small{font-size:.95rem}.quality-metric-grid p{color:#72809a;margin:0;font-size:.82rem;line-height:1.55}.quality-progress{background:#e9eef8;border-radius:999px;height:8px;margin:0 0 10px;overflow:hidden}.quality-progress i{border-radius:inherit;background:linear-gradient(90deg,#2457d6,#36b6ac);height:100%;display:block}.quality-category-section,.quality-review-section,.quality-ai-audit-section,.quality-error-section{margin-top:18px;padding:24px}.quality-running-badge{color:#08745e;white-space:nowrap;background:#eefbf7;border:1px solid #b8dfd6;border-radius:999px;padding:8px 11px;font-size:.75rem;font-weight:820}.quality-auto-summary{flex-wrap:wrap;gap:8px;margin:0 0 14px;display:flex}.quality-auto-summary span{color:#64748b;background:#f1f5fb;border-radius:11px;padding:8px 10px;font-size:.74rem;font-weight:720}.quality-auto-summary strong{color:#17345f;margin-left:3px}.quality-category-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.quality-category-grid article{background:#f9fbff;border:1px solid #e0e7f1;border-radius:16px;padding:14px}.quality-category-grid article>div:first-child{justify-content:space-between;align-items:center;gap:8px;margin-bottom:9px;display:flex}.quality-category-grid strong{color:#17345f;font-size:.84rem}.quality-category-grid span,.quality-category-grid small{color:#75839a;font-size:.72rem}.quality-category-grid .quality-progress{height:6px;margin-bottom:7px}.quality-review-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.quality-review-grid article{background:#fff;border:1px solid #dfe6f2;border-radius:18px;grid-template-columns:132px 1fr;gap:14px;padding:14px;display:grid}.quality-review-grid img{object-fit:cover;background:#eef3fb;border-radius:14px;width:132px;height:132px}.quality-review-grid h3{color:#11294d;margin:5px 0;font-size:1rem}.quality-review-grid p{color:#697893;margin:2px 0;font-size:.8rem}.quality-review-grid article>div>span{color:#77849a;font-size:.74rem}.quality-category-tag{color:#2855a5;background:#edf3ff;border-radius:999px;margin:5px 0 0;padding:4px 7px;font-size:.66rem;font-style:normal;font-weight:800;display:inline-flex}.quality-category-tag.watch{color:#8a5a00;background:#fff7df}.quality-category-tag.attention{color:#b42336;background:#fff0f1}.quality-risk-note{color:#9a5b12;margin-top:7px;font-size:.7rem;line-height:1.4;display:block}.quality-review-grid article>div>strong{color:#1d4ed8;margin-top:10px;font-size:.88rem;display:block}.quality-review-grid footer{grid-column:1/-1;justify-content:flex-end;gap:8px;display:flex}.quality-review-grid footer button{background:#fff;border:1px solid #d7dfed;border-radius:12px;min-height:40px;padding:0 14px;font-weight:760}.quality-review-grid footer .quality-wrong-button{color:#a52835;background:#fff7f7;border-color:#f1c7ca}.quality-empty{color:#71809a;text-align:center;padding:42px 16px}.quality-metric-grid article.ai-audit-metric{background:linear-gradient(145deg,#f4f8fffa,#effbf9f0);border-color:#2457d64d}.quality-ai-audit-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.quality-ai-audit-heading h2{color:#10284c;letter-spacing:-.035em;margin:4px 0 7px;font-size:clamp(1.25rem,3vw,1.7rem)}.quality-ai-audit-heading>div:first-child>p:last-child{color:#70809a;margin:0;font-size:.84rem;line-height:1.55}.quality-ai-controls{flex:none;align-items:center;gap:8px;display:flex}.quality-ai-controls>button{color:#31506f;cursor:pointer;min-height:42px;font:inherit;background:#fff;border:1px solid #cbd8e9;border-radius:12px;padding:0 14px;font-size:.76rem;font-weight:820}.quality-ai-controls>button:hover:not(:disabled){color:#1d4eb7;background:#f4f8ff;border-color:#7b9ee2}.quality-ai-controls>button:disabled{cursor:default;opacity:.45}.quality-ai-state{color:#08745e;white-space:nowrap;background:#eefbf7;border:1px solid #b8dfd6;border-radius:999px;align-items:center;gap:7px;min-height:42px;padding:0 12px;font-size:.74rem;font-weight:850;display:inline-flex}.quality-ai-state i{background:currentColor;border-radius:50%;width:7px;height:7px;animation:1.45s ease-out infinite quality-ai-pulse;box-shadow:0 0 #08745e47}.quality-ai-state.paused{color:#66758b;background:#f5f7fa;border-color:#d9dee8}.quality-ai-state.waiting{color:#8a5b05;background:#fff9e8;border-color:#e6d49a}.quality-ai-state.complete{color:#2454b1;background:#eff5ff;border-color:#b8ccef}@keyframes quality-ai-pulse{70%,to{box-shadow:0 0 0 7px #08745e00}}.quality-ai-progress-panel{background:linear-gradient(140deg,#f5f8ff,#f4fbfa);border:1px solid #d7e3f4;border-radius:18px;margin-top:20px;padding:18px 20px}.quality-ai-progress-panel>div:first-child{align-items:baseline;gap:4px;display:flex}.quality-ai-progress-panel>div:first-child strong{color:#1749b5;letter-spacing:-.045em;font-size:1.8rem}.quality-ai-progress-panel>div:first-child span{color:#6c7d96;font-size:.88rem;font-weight:760}.quality-ai-progress-panel>div:first-child em{color:#218270;margin-left:auto;font-size:.88rem;font-style:normal;font-weight:900}.quality-ai-progress-panel .quality-progress{background:#cbd8edb8;height:10px;margin:11px 0 9px}.quality-ai-progress-panel>p{color:#5e718d;margin:0;font-size:.78rem;line-height:1.55}.quality-ai-facts{flex-wrap:wrap;gap:8px;margin-top:13px;display:flex}.quality-ai-facts>span{color:#667991;background:#f2f5f9;border-radius:10px;padding:8px 10px;font-size:.71rem;font-weight:760}.quality-ai-facts strong{color:#193b68;margin-left:3px}.quality-ai-disclaimer{color:#65758c;background:#f7f9fc;border-left:3px solid #8fa8d6;border-radius:0 10px 10px 0;margin:12px 0 0;padding:11px 13px;font-size:.72rem;line-height:1.55}.quality-ai-recent-heading{align-items:flex-end;margin:24px 0 12px}.quality-ai-recent-heading h3{color:#17345f;margin:4px 0 0;font-size:1.15rem}.quality-ai-recent-heading>span{color:#7888a0;font-size:.74rem;font-weight:780}.quality-ai-result-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.quality-ai-result-grid>article{background:#fff;border:1px solid #dfe7f2;border-radius:17px;grid-template-columns:128px minmax(0,1fr);gap:14px;min-width:0;padding:13px;display:grid}.quality-ai-result-grid>article>img{object-fit:cover;background:#edf2f8;border-radius:13px;width:128px;height:100%;min-height:148px}.quality-ai-result-copy{min-width:0}.quality-ai-result-copy>header{justify-content:space-between;align-items:center;gap:8px;display:flex}.quality-ai-result-copy>header>span{color:#7a899e;text-overflow:ellipsis;white-space:nowrap;font-size:.69rem;overflow:hidden}.quality-verdict{border-radius:999px;flex:none;padding:4px 7px;font-size:.65rem;font-style:normal;font-weight:880}.quality-verdict.agree,.quality-verdict-row .agree{color:#08745e;background:#e8f8f2}.quality-verdict.disagree,.quality-verdict-row .disagree{color:#af2837;background:#fff0f2}.quality-verdict.unverifiable,.quality-verdict-row .unverifiable{color:#815a0d;background:#fff7df}.quality-ai-comparison{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;margin-top:10px;display:grid}.quality-ai-comparison>div{gap:2px;min-width:0;display:grid}.quality-ai-comparison small{color:#8290a5;font-size:.62rem;font-weight:780}.quality-ai-comparison strong{color:#1d385c;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.quality-ai-comparison span{color:#53708f;font-size:.7rem}.quality-ai-comparison>b{color:#8ca0ba;font-size:.8rem}.quality-verdict-row{flex-wrap:wrap;gap:5px;margin-top:10px;display:flex}.quality-verdict-row>span{color:#61738b;background:#eef2f7;border-radius:7px;padding:4px 6px;font-size:.61rem;font-weight:800}.quality-ai-result-copy>p{color:#667991;margin:9px 0 0;font-size:.68rem;line-height:1.5}.quality-error-section>div:last-child{gap:8px;display:grid}.quality-error-section article{border-top:1px solid #e7ebf2;grid-template-columns:92px 1fr auto auto;align-items:center;gap:12px;padding:12px 0;display:grid}.quality-error-section article span{color:#b45309;font-size:.78rem;font-weight:800}.quality-error-section article strong{font-size:.86rem}.quality-error-section article small{color:#77849a;font-size:.72rem}.quality-error-section article button{color:#526985;background:#fff;border:1px solid #d7dfed;border-radius:9px;padding:7px 9px;font-size:.72rem;font-weight:760}.operations-shell{padding-bottom:110px}.operations-intro{align-items:flex-end}.operations-intro>div{max-width:760px}.operations-summary-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:11px;margin:18px 0;display:grid}.operations-summary-grid article{background:#ffffffeb;border:1px solid #dfe7f2;border-radius:18px;min-width:0;padding:17px;box-shadow:0 12px 34px #1b3a700f}.operations-summary-grid article.good{background:#f3fcf8;border-color:#bde3d8}.operations-summary-grid article.watch{background:#fffaf0;border-color:#f0d89c}.operations-summary-grid article.danger{background:#fff7f8;border-color:#efc2c7}.operations-summary-grid article.muted{background:#f6f8fb}.operations-summary-grid span{color:#6e7f97;font-size:10px;font-weight:850}.operations-summary-grid strong{color:#122c50;letter-spacing:-.04em;margin:8px 0 5px;font-size:29px;display:block}.operations-summary-grid small{color:#8290a3;font-size:9px;line-height:1.45;display:block}.operations-performance{margin-top:16px;padding:22px}.operations-performance-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.operations-performance-grid article{background:#f8fbff;border:1px solid #dce7f3;border-radius:16px;min-width:0;padding:14px 15px}.operations-performance-grid article.good{background:#f3fcf8;border-color:#bde3d8}.operations-performance-grid article.watch{background:#fffaf0;border-color:#f0d89c}.operations-performance-grid article.slow{background:#fff7f8;border-color:#efc2c7}.operations-performance-grid span,.operations-performance-grid small{color:#718198;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:800;line-height:1.45;display:block;overflow:hidden}.operations-performance-grid strong{color:#16355e;letter-spacing:-.035em;margin:7px 0 4px;font-size:22px;display:block}.operations-member-section,.operations-issue-section{margin-top:16px;padding:22px}.operations-section-heading{justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.operations-section-heading h2{color:#112b50;letter-spacing:-.035em;margin:4px 0 5px;font-size:20px}.operations-section-heading p:last-child{color:#75849a;margin:0;font-size:10px;line-height:1.55}.operations-section-heading>span{color:#345f9e;background:#edf3ff;border-radius:999px;flex:none;padding:7px 10px;font-size:9px;font-weight:900}.operations-toolbar{justify-content:space-between;align-items:center;gap:12px;margin:18px 0 13px;display:flex}.operations-filters{gap:6px;display:flex;overflow-x:auto}.operations-filters button{color:#64758c;cursor:pointer;min-height:34px;font:inherit;background:#fff;border:1px solid #d6e0ee;border-radius:999px;flex:none;padding:0 11px;font-size:9px;font-weight:850}.operations-filters button.active{color:#fff;background:#285ccc;border-color:#2b61cf}.operations-toolbar input{width:min(220px,34vw);min-height:38px;font:inherit;border:1px solid #d4dfed;border-radius:12px;outline:0;padding:0 13px;font-size:10px}.operations-toolbar input:focus{border-color:#7ca0e7;box-shadow:0 0 0 3px #3462c714}.operations-member-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.operations-member-card{background:#fbfdff;border:1px solid #e0e7f1;border-radius:17px;min-width:0;padding:15px}.operations-member-card.status-blocked{background:#fffafb;border-color:#efc2c7}.operations-member-card.status-unfinished,.operations-member-card.status-no_record{background:#fffdf8;border-color:#edd8a9}.operations-member-card.status-recorded{background:#f8fdfa;border-color:#c8e5dc}.operations-member-card>header{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.operations-member-avatar{color:#fff;background:linear-gradient(145deg,#2d65d5,#5787e3);border-radius:12px;place-items:center;width:36px;height:36px;font-size:13px;font-weight:900;display:grid}.operations-member-card header>div{min-width:0}.operations-member-card header strong{color:#173052;text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.operations-member-card header small{color:#8390a3;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:8px;display:block;overflow:hidden}.operations-member-card header em{color:#5f7189;white-space:nowrap;background:#eef2f7;border-radius:999px;align-items:center;gap:5px;padding:6px 8px;font-size:8px;font-style:normal;font-weight:900;display:inline-flex}.operations-member-card.status-blocked header em{color:#ad2736;background:#ffedf0}.operations-member-card.status-unfinished header em,.operations-member-card.status-no_record header em{color:#8a5a08;background:#fff5da}.operations-member-card.status-recorded header em{color:#08735c;background:#e8f8f2}.operations-member-card header em i{width:15px;height:15px;color:inherit;background:#ffffffb3;border-radius:50%;place-items:center;font-style:normal;display:grid}.operations-member-card>p{color:#5e718a;min-height:32px;margin:11px 0;font-size:9px;line-height:1.55}.operations-funnel{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;display:grid}.operations-funnel span{justify-items:center;gap:4px;min-width:0;display:grid;position:relative}.operations-funnel span:not(:last-child):after{content:"";background:#e1e6ef;width:calc(100% - 22px);height:2px;position:absolute;top:9px;left:calc(50% + 11px)}.operations-funnel span.complete:not(:last-child):after{background:#8bcbbb}.operations-funnel i{z-index:1;color:#9aa5b4;background:#fff;border:1px solid #d9e0ea;border-radius:50%;place-items:center;width:20px;height:20px;font-size:7px;font-style:normal;font-weight:900;display:grid;position:relative}.operations-funnel span.complete i{color:#fff;background:#22a47f;border-color:#7dc3b0}.operations-funnel b{color:#8794a7;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:7px;overflow:hidden}.operations-funnel span.complete b{color:#3c725f}.operations-member-card footer{color:#8490a2;border-top:1px solid #e8edf4;justify-content:space-between;gap:12px;margin-top:12px;padding-top:10px;font-size:8px;display:flex}.operations-member-card footer strong{color:#435c7d}.operations-issue-list{gap:7px;margin-top:15px;display:grid}.operations-issue-list article{border-top:1px solid #e6ebf2;grid-template-columns:minmax(190px,.8fr) minmax(0,1.5fr) auto;align-items:center;gap:16px;padding:12px 0;display:grid}.operations-issue-list article>div{grid-template-columns:auto 1fr;align-items:center;gap:3px 8px;min-width:0;display:grid}.operations-issue-list article>div span{color:#a34724;background:#fff0e8;border-radius:7px;padding:4px 7px;font-size:8px;font-weight:900}.operations-issue-list article>div strong{color:#233e61;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.operations-issue-list article>div small{color:#8794a5;grid-column:1/-1;font-size:8px}.operations-issue-list article>p{color:#61738a;margin:0;font-size:9px;line-height:1.5}.operations-issue-list article>button{color:#526b8c;cursor:pointer;min-height:34px;font:inherit;background:#fff;border:1px solid #d2ddeb;border-radius:10px;padding:0 10px;font-size:8px;font-weight:850}.operations-issue-list article>button:disabled{opacity:.5}.operations-empty{color:#718097;text-align:center;grid-column:1/-1;padding:32px 12px}.operations-empty strong{color:#3d587a;font-size:12px;display:block}.operations-empty p{margin:5px 0 0;font-size:9px}.operations-retention-note{color:#7c899d;margin:14px 2px 0;font-size:8px;line-height:1.55}@media (width<=760px){.admin-quality-shell{width:min(100% - 20px,620px);padding-top:20px}.quality-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quality-metric-grid article{min-height:138px;padding:16px}.quality-category-section,.quality-review-section,.quality-ai-audit-section,.quality-error-section{padding:16px}.quality-category-section .section-heading{flex-direction:column;align-items:flex-start}.quality-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quality-review-grid{grid-template-columns:1fr}.quality-review-grid article{grid-template-columns:108px 1fr}.quality-review-grid img{width:108px;height:108px}.quality-ai-audit-heading{flex-direction:column;gap:14px}.quality-ai-controls{width:100%}.quality-ai-controls>button{flex:1}.quality-ai-result-grid{grid-template-columns:1fr}.quality-ai-result-grid>article{grid-template-columns:112px minmax(0,1fr)}.quality-ai-result-grid>article>img{width:112px;min-height:138px}.quality-error-section article{grid-template-columns:80px 1fr auto}.quality-error-section article small{grid-column:2/-1}.operations-shell{padding-top:18px}.operations-intro{flex-direction:column;align-items:stretch}.operations-intro .button{width:100%}.operations-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.operations-performance,.operations-member-section,.operations-issue-section{padding:15px 12px}.operations-performance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.operations-section-heading{align-items:flex-start}.operations-toolbar{flex-direction:column;align-items:stretch}.operations-toolbar input{width:100%;min-height:42px}.operations-member-list{grid-template-columns:1fr}.operations-member-card{padding:14px 12px}.operations-member-card header em{padding:5px 7px}.operations-member-card>p{min-height:0}.operations-member-card footer{flex-direction:column;align-items:flex-start;gap:4px}.operations-issue-list article{grid-template-columns:1fr auto;gap:8px 10px}.operations-issue-list article>p{grid-area:2/1/auto/-1}.operations-issue-list article>button{grid-area:1/2}}@media (width<=430px){.quality-metric-grid{grid-template-columns:1fr}.quality-metric-grid article{min-height:0}.quality-ai-result-grid>article{grid-template-columns:1fr}.quality-ai-result-grid>article>img{aspect-ratio:16/9;width:100%;height:auto;min-height:0}.quality-ai-comparison strong{white-space:normal}.quality-ai-facts>span{flex:calc(50% - 8px)}}.trainer-reaction-member{background:linear-gradient(135deg,#fffffffa,#ebf3fff5);border-color:#396dd529;gap:7px;margin:2px 0 1px 48px;padding:8px 12px 8px 9px;box-shadow:0 8px 24px #1f4c9717,inset 0 1px #ffffffe6}.trainer-reaction-member span{background:#ffffffe0;border-radius:50%;place-items:center;width:27px;height:27px;font-size:16px;display:grid;box-shadow:0 3px 10px #2653971a}.trainer-reaction-member strong{color:#244f93;letter-spacing:-.02em;font-size:11px}.trainer-reaction-badge.overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f9fcfff0;border-color:#ffffffd1;gap:5px;max-width:calc(100% - 16px);padding:6px 9px 6px 7px;box-shadow:0 7px 20px #051a4033}.trainer-reaction-badge.overlay b{font-size:15px}.trainer-reaction-badge.overlay small{color:#29538e;letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;font-size:8px;font-weight:900;overflow:hidden}.meal-comment-thread{justify-self:end;gap:7px;width:min(540px,100% - 50px);margin-right:49px;display:grid}.meal-comment-list{gap:5px;display:grid}.meal-comment-list article{background:#f8fbfff7;border:1px solid #4872b521;border-radius:14px 14px 14px 5px;gap:2px;width:fit-content;max-width:88%;padding:8px 10px;display:grid;box-shadow:0 6px 18px #1c437f0d}.meal-comment-list article.mine{background:#eaf3ff;border-radius:14px 14px 5px;justify-self:end}.meal-comment-list article>span{color:#5274a4;font-size:8px;font-weight:900}.meal-comment-list article>p{overflow-wrap:anywhere;color:#284665;margin:0;font-size:11px;font-weight:750;line-height:1.45}.meal-comment-list article>time{color:#8292a8;font-size:8px;font-weight:700}.meal-reply-composer{background:#fafcfff5;border:1px solid #597eb829;border-radius:16px 16px 5px;grid-template-columns:minmax(0,1fr) 38px;align-items:end;gap:7px;width:100%;padding:9px 9px 9px 13px;display:grid;box-shadow:0 8px 22px #1c437f12}.meal-reply-composer label{gap:3px;min-width:0;display:grid}.meal-reply-composer label>span{color:#6f819a;letter-spacing:.02em;font-size:8px;font-weight:900}.meal-reply-composer input{color:#203d63;width:100%;min-width:0;height:26px;font:inherit;background:0 0;border:0;outline:0;padding:0;font-size:11px;font-weight:700}.meal-reply-composer input::placeholder{color:#9ba9bb;font-weight:600}.meal-reply-composer>button[type=submit]{color:#fff;cursor:pointer;width:38px;height:38px;font:inherit;background:linear-gradient(145deg,#2d69d9,#1b4caf);border:0;border-radius:12px;place-items:center;font-size:17px;font-weight:900;display:grid;box-shadow:0 6px 14px #2152b433}.meal-reply-composer>button[type=submit]:disabled{box-shadow:none;cursor:default;opacity:.38}.meal-reply-composer .analysis-spinner{border-width:2px;border-top-color:#fff;width:15px;height:15px}.meal-reply-composer>small{color:#ad3742;grid-column:1/-1;font-size:9px;font-weight:750}.history-meal-strip article>.meal-comment-thread{background:#ffffffd1;border-radius:12px;width:100%;height:auto;min-height:0;margin:9px 0 0;position:relative;overflow:visible}.history-meal-strip .meal-comment-list{padding:7px 7px 0}.history-meal-strip .meal-reply-composer{grid-template-columns:minmax(0,1fr) 34px;padding:8px 7px 8px 9px}.history-meal-strip .meal-reply-composer>button[type=submit]{border-radius:10px;width:34px;height:34px}.admin-trainer-reactions .meal-comment-thread{width:100%;margin:0}@media (width<=640px){.meal-overflow-menu{z-index:1;right:12px;bottom:calc(78px + env(safe-area-inset-bottom));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border-radius:19px;width:auto;max-height:min(220px,100dvh - 110px);padding:8px;left:12px;overflow-y:auto;box-shadow:0 22px 58px #081a3a47}.meal-action-sheet-backdrop{pointer-events:auto;background:#0a1b361f;border:0;width:100%;padding:0;display:block;position:absolute;inset:0}.meal-overflow-menu button{border-radius:12px;min-height:50px;padding:12px 14px;font-size:13px}.history-detail-heading{flex-direction:column;align-items:flex-start;gap:9px}.history-detail-tools{flex-direction:column;align-items:stretch;width:100%}.history-add-meal{width:100%;min-height:42px}.history-detail-status{align-items:flex-start;width:100%}.trainer-reaction-member{margin-left:38px}.meal-comment-thread{width:calc(100% - 42px);margin-right:41px}.meal-reply-composer{padding-left:11px}.meal-reply-composer input{font-size:12px}.history-meal-strip article>.meal-comment-thread{width:100%;margin-right:0}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
