:root{--bg: #ffffff;--client-page-bg: #f2f2f7;--surface: #ffffff;--surface-2: #f0eeeb;--text: #0a0a0a;--muted: #8a8a8a;--border: #e5e2de;--accent: #84A9C8;--accent-warm: #CCAA8C;--accent-dark: #6490AD;--accent-soft: #EAF0F7;--danger: #cc3333;--shadow: 0 4px 24px rgba(0, 0, 0, .07);--radius: 16px;--header-h: 72px;--tabbar-w: 480px}*{box-sizing:border-box;margin:0;padding:0}html{min-height:100%;background:var(--client-page-bg)}body{min-height:100%;background:var(--client-page-bg);color:var(--text);font-family:Manrope,ui-sans-serif,system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.5}#root{min-height:100vh;min-height:100dvh;background:var(--client-page-bg)}button,input,select,textarea{font:inherit}svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2;flex-shrink:0}.brand-mark{display:grid;width:36px;height:36px;place-items:center;border-radius:var(--radius);background:var(--accent);color:#fff;font-weight:800;font-size:16px;flex-shrink:0}.ghost-button{height:36px;padding:0 17px;border:1.5px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);cursor:pointer;white-space:nowrap;font-family:inherit;font-weight:500;font-size:15px}.ghost-button:hover{background:var(--bg)}.primary-button{height:36px;padding:0 16px;border:none;border-radius:var(--radius);background:var(--accent);color:#fff;cursor:pointer;white-space:nowrap;font-family:inherit;font-weight:600;font-size:15px}.primary-button:hover{background:var(--accent-dark)}.primary-button.full-w{width:100%}.icon-button{display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer}.icon-button:hover{background:var(--surface-2)}.icon-button:disabled{opacity:.35;cursor:default}.chip-list{display:flex;flex-wrap:wrap;gap:4px}.chip{display:inline-flex;align-items:center;min-height:20px;padding:0 7px;border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:12px}.chip--cat{background:transparent;border:1.5px solid var(--border);color:var(--text);font-size:12px;font-weight:500;padding:0 9px;min-height:22px;white-space:nowrap}.status{display:inline-flex;align-items:center;min-height:20px;padding:0 8px;border-radius:999px;font-size:12px;background:#edf2f8;color:#4e6782}.status.checked{background:#e7f5ea;color:var(--accent)}.status.warning{background:#fff4e7;color:#9b5b15}.muted{color:var(--muted)}.small{font-size:12px}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(360px,560px) minmax(320px,400px);align-items:center;justify-content:center;gap:clamp(28px,6vw,88px);background:#f2f2f7;padding:40px;position:relative;overflow:hidden}.app-loading{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:grid;place-items:center;background:#f2f2f7}.app-loading-dots{display:flex;align-items:center;justify-content:center;gap:9px;height:32px}.app-loading-dots i{width:10px;height:10px;border-radius:50%;background:#7faad2;animation:appLoadingDot .9s ease-in-out infinite}.app-loading-dots i:nth-child(2){animation-delay:.12s}.app-loading-dots i:nth-child(3){animation-delay:.24s}@keyframes appLoadingDot{0%,60%,to{transform:translateY(0);opacity:.42}30%{transform:translateY(-9px);opacity:1}}@media (prefers-reduced-motion: reduce){.app-loading-dots i{animation:none;opacity:.72}}.login-card{position:relative;z-index:1;width:100%;max-width:400px;background:#fff;border:none;border-radius:20px;padding:28px;box-shadow:0 18px 60px #00000014}.login-side-image{display:block;width:min(42vw,560px);max-height:min(76vh,680px);object-fit:contain}@media (max-width: 820px){.login-page{grid-template-columns:minmax(0,1fr);align-items:end;justify-items:center;padding:24px 18px max(42px,env(safe-area-inset-bottom))}.login-side-image{position:absolute;z-index:0;display:block;width:min(110vw,520px);max-height:62vh;left:50%;top:8vh;transform:translate(-50%);opacity:1;pointer-events:none}.login-card{max-width:min(430px,calc(100vw - 28px));padding:24px;margin-bottom:6vh}}.login-form{display:grid;gap:12px}.login-logo{display:block;width:min(255px,82%);height:auto;justify-self:center;margin:0 0 10px}.field{display:grid;gap:6px;font-size:13px;color:var(--muted)}.field>span{text-align:center}.field input{height:52px;border:1.5px solid rgba(0,0,0,.12);border-radius:999px;background:transparent;color:var(--text);padding:0 20px;outline:none;font-size:14px;transition:border-color .15s}.field input:focus{border-color:var(--accent)}.field input::placeholder{color:#0000004d}.login-form .primary-button.full-w{height:52px;border-radius:999px;background:#7aaed3;font-size:15px;font-weight:700;margin-top:10px}.login-form .primary-button.full-w:hover{background:#6fa3c9}.login-hint{margin-top:16px;text-align:center;font-size:12px;color:var(--muted)}.client-logout-link{all:unset;display:block;text-align:center;padding:24px 0 32px;font-size:13px;font-weight:800;color:#111;cursor:pointer;letter-spacing:.02em;width:100%}.client-logout-link:hover{color:#000000b8}.cinfo-sync{font-size:13px;color:var(--muted);margin-top:2px;display:block}.cinfo-sync--ok{color:#1e8a4a}.cinfo-sync--err{color:#d93025}.login-error{font-size:13px;color:#d93025;background:#fce8e6;border-radius:6px;padding:8px 12px;margin:0}.signup-plan{margin:-4px 0 4px;text-align:center;font-size:13px;color:var(--muted)}.signup-plan strong{color:var(--text)}.login-switch{margin:4px 0 0;text-align:center;font-size:13px;color:var(--muted)}.link-button{all:unset;cursor:pointer;font-weight:700;color:#7aaed3}.link-button:hover{color:#6fa3c9}.link-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.login-demo-link{all:unset;display:block;margin-top:16px;text-align:center;font-size:12px;color:var(--muted);cursor:pointer;text-decoration:underline;text-underline-offset:3px}.login-demo-link:hover{color:var(--accent)}.pro-shell{display:grid;grid-template-rows:var(--header-h) 1fr;height:100vh;overflow:hidden;background:var(--bg);position:relative}.pro-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:transparent;padding:0 28px;height:var(--header-h)}.nutritionist-shell{grid-template-rows:1fr;--detail-panel-top: 164px;--surface-2: var(--client-page-bg)}.nutritionist-shell:before{content:"";position:absolute;inset:0 0 auto;height:148px;z-index:6;pointer-events:none;background:linear-gradient(135deg,#84a9c829,#ccaa8c1f),#fff3;backdrop-filter:blur(26px) saturate(1.35);-webkit-backdrop-filter:blur(26px) saturate(1.35);border-bottom:1px solid rgba(0,0,0,.06);box-shadow:0 24px 42px #0000001f;transition:height .48s cubic-bezier(.16,1,.3,1)}.nutritionist-shell--patients:before,.nutritionist-shell--protocols:before,.nutritionist-shell--categories:before{height:122px}.nutritionist-shell--products:before,.nutritionist-shell--recipes:before,.nutritionist-shell--supplements:before,.nutritionist-shell--activity:before{height:142px}.nutritionist-shell--products,.nutritionist-shell--recipes,.nutritionist-shell--supplements,.nutritionist-shell--activity{--detail-panel-top: 158px}.nutritionist-shell--categories{--detail-panel-top: 132px}.nutritionist-shell .pro-header{position:absolute;inset:0 0 auto;z-index:20}.nutritionist-shell .pro-main{grid-row:1;position:relative;z-index:auto}.nutritionist-shell .pro-tab-pane{box-sizing:border-box;padding-top:var(--header-h)}.nutritionist-shell .pro-tab-stage:not(.is-transitioning) .pro-tab-pane{will-change:auto}.nutritionist-shell .pro-inline-search,.nutritionist-shell .filters,.nutritionist-shell .dv-toolbar,.nutritionist-shell .category-manager-toolbar{position:relative;z-index:180}.nutritionist-shell .dv-search-inline{background:transparent}.nutritionist-shell .dv-content,.nutritionist-shell .clients-main{position:relative;z-index:1}.patient-workspace-shell{--patient-blur-h: var(--header-h);--surface-2: var(--client-page-bg)}.patient-workspace-shell:before{content:"";position:absolute;inset:0 0 auto;height:var(--patient-blur-h);z-index:6;pointer-events:none;background:linear-gradient(135deg,#84a9c829,#ccaa8c21),#ffffff29;backdrop-filter:blur(26px) saturate(1.38);-webkit-backdrop-filter:blur(26px) saturate(1.38);border-bottom:1px solid rgba(0,0,0,.08);box-shadow:0 30px 44px #00000029;transition:height .48s cubic-bezier(.16,1,.3,1)}.patient-workspace-shell:not(.patient-workspace-shell--calendar){grid-template-rows:1fr}.patient-workspace-shell:not(.patient-workspace-shell--calendar):before{z-index:9}.patient-workspace-shell--calendar{grid-template-rows:1fr;--calendar-day-header-h: 84px;--patient-blur-h: calc(var(--header-h) + var(--calendar-day-header-h));--calendar-body-underlap: calc(var(--patient-blur-h) - var(--header-h));--calendar-body-underlap-offset: calc(var(--header-h) - var(--patient-blur-h))}.patient-workspace-shell--calendar:before{background:linear-gradient(135deg,#84a9c829,#ccaa8c21),#ffffff29;backdrop-filter:blur(26px) saturate(1.38);-webkit-backdrop-filter:blur(26px) saturate(1.38);border-bottom:1px solid rgba(0,0,0,.08);box-shadow:0 30px 44px #00000029;-webkit-mask-image:none;mask-image:none}.patient-workspace-shell .pro-header{position:relative;z-index:20;background:transparent}.patient-workspace-shell:not(.patient-workspace-shell--calendar) .pro-header{position:absolute;inset:0 0 auto;background:transparent}.patient-workspace-shell:not(.patient-workspace-shell--calendar) .pro-main{grid-row:1}.patient-workspace-shell:not(.patient-workspace-shell--calendar) .pro-tab-pane{box-sizing:border-box;padding-top:0}.patient-workspace-shell--calendar .pro-header{position:absolute;inset:0 0 auto;pointer-events:none}.patient-workspace-shell--calendar .clients-back-btn,.patient-workspace-shell--calendar .patient-back-button,.patient-workspace-shell--calendar .patient-header-compact-toggle,.patient-workspace-shell--calendar .pro-tabs,.patient-workspace-shell--calendar .pro-header-right{pointer-events:auto}.patient-workspace-shell--calendar .pro-main{grid-row:1}.patient-workspace-shell .pro-tab-stage:not(.is-transitioning) .pro-tab-pane{will-change:auto}.patient-workspace-shell .pro-header-right{visibility:visible;pointer-events:auto}.patient-workspace-shell .pro-header-right .logout-btn{display:none}.patient-header-week-controls{position:absolute;right:28px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:flex-end;gap:8px}.patient-header-week-switcher{display:flex;align-items:center;justify-content:flex-end}.patient-header-week-switcher .week-nav-center{grid-column:auto;min-height:38px;gap:3px;padding:3px 5px;border:1.5px solid var(--border);border-radius:999px;background:transparent}.patient-header-week-switcher .week-nav-label{min-width:118px;text-align:center;font-size:14px}.patient-header-week-switcher .week-nav-arrow,.patient-header-week-switcher .week-today-btn{border-color:transparent}.patient-header-week-switcher .week-nav-arrow:hover,.patient-header-week-switcher .week-today-btn:hover{border-color:transparent;background:#0000000a}.week-access-control{display:grid;place-items:center}.week-access-button{width:40px;height:40px;display:grid;place-items:center;flex:0 0 40px;border:1.5px solid var(--border);border-radius:50%;background:transparent;color:#111;cursor:pointer;transition:color .18s ease,background-color .18s ease,border-color .18s ease,transform .18s ease}.week-access-button svg{width:20px;height:20px;stroke-width:1.9}.week-access-button:hover,.week-access-button[aria-expanded=true]{background:#7faad2;border-color:#7faad2;color:#fff}.week-access-button:active{transform:scale(.94)}.week-access-button.has-locked{background:#7faad2;border-color:#7faad2;color:#fff}.week-access-popover{position:fixed;z-index:850;max-height:min(520px,calc(100vh - 100px));overflow:visible;padding:14px;border:0;border-radius:24px;background:#fffffff5;box-shadow:none;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);isolation:isolate;animation:week-access-in .18s cubic-bezier(.2,.8,.2,1) both}.week-access-popover:before{content:"";position:absolute;z-index:-1;top:-20px;right:-20px;bottom:-20px;left:-20px;border-radius:34px;background:radial-gradient(ellipse at 50% 48%,rgba(255,255,255,.5) 0 48%,rgba(255,255,255,.18) 70%,transparent 100%);filter:blur(16px);pointer-events:none}@keyframes week-access-in{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.week-access-popover>header{padding:2px 3px 9px}.week-access-popover>header strong{font-size:17px;line-height:1.25}.week-access-popover>header span{color:var(--muted);font-size:12px;font-weight:600}.week-access-list{display:grid;gap:5px;max-height:min(438px,calc(100vh - 172px));overflow:auto;scrollbar-width:none}.week-access-list::-webkit-scrollbar{display:none}.week-access-row{width:100%;min-height:54px;display:grid;grid-template-columns:46px minmax(0,1fr) 26px;align-items:center;gap:9px;padding:7px 8px;border:1px solid var(--border);border-radius:17px;background:#ffffffb3;color:#111;text-align:left;cursor:pointer;transition:background-color .16s ease,border-color .16s ease}.week-access-row:hover{background:#f5f5f7}.week-access-row:disabled{cursor:wait;opacity:.72}.week-access-mini-calendar{display:grid;grid-template-columns:repeat(7,4px);grid-auto-rows:4px;gap:2px;justify-content:center;align-content:center;width:44px;min-height:38px}.week-access-mini-calendar i{width:4px;height:4px;border-radius:50%;background:#3c3c4324}.week-access-mini-calendar i.outside{opacity:0}.week-access-mini-calendar i.in-week{background:#7faad294}.week-access-mini-calendar i.filled{background:#111}.week-access-label{min-width:0;display:grid;gap:2px}.week-access-label strong{overflow:hidden;color:#111;font-size:14px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.week-access-label small{color:var(--muted);font-size:10px;font-weight:600}.week-access-check{width:26px;height:26px;display:grid;place-items:center;border:1.5px solid #c7c7cc;border-radius:50%;color:#fff;transition:background-color .16s ease,border-color .16s ease}.week-access-row.is-visible .week-access-check{border-color:#111;background:#111}.week-access-check svg{width:15px;height:15px;stroke-width:2.5}.week-access-empty{padding:24px 12px;color:var(--muted);font-size:13px;font-weight:600;text-align:center}.patient-header-compact-toggle{position:absolute;left:calc(50% - (var(--tabbar-w, 320px) / 2) - 50px);top:50%;transform:translateY(-50%);width:34px;height:34px;display:grid;place-items:center;border:1.5px solid var(--border);border-radius:50%;background:transparent;padding:0;cursor:pointer;overflow:hidden;transition:background-color .2s ease,border-color .2s ease,transform .16s ease}.patient-header-compact-toggle:hover{border-color:#1111115c}.patient-header-compact-toggle:active{transform:translateY(-50%) scale(.94)}.patient-header-compact-toggle.active{border-color:#7faad2;background:#7faad2}.patient-header-compact-icon{width:18px;height:18px;fill:#000;stroke:none;transition:fill .2s ease}.patient-header-compact-toggle.active .patient-header-compact-icon{fill:#fff}.patient-workspace-shell .pro-tabs{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.pro-brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:15px;white-space:nowrap}.pro-tabs{display:flex;align-items:center;gap:2px;border-radius:999px;padding:5px;border:1.5px solid var(--border);transition:border-color .18s ease;position:relative}.pro-header:hover .pro-tabs{border-color:var(--border)}.pro-tab-indicator{position:absolute;top:4px;bottom:4px;border-radius:999px;background:#7faad2;pointer-events:none;z-index:0;transition:left .38s cubic-bezier(.22,1,.36,1),width .38s cubic-bezier(.22,1,.36,1),background .28s ease;will-change:left,width}.patient-workspace-shell.header-over-content .pro-tabs{border-color:#000}.patient-workspace-shell.header-over-content .pro-tab-indicator{background:#000;border:none}.pro-tab{display:flex;align-items:center;height:38px;padding:0 17px;border:none;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer;font-size:15px;font-weight:500;white-space:nowrap;transition:color .28s ease;position:relative;z-index:1}.pro-tab:hover{color:var(--text)}.pro-tab.active{color:#000;font-weight:700;background:transparent}.nutritionist-shell .pro-tab.active,.nutritionist-shell .pro-tab.active:hover,.patient-workspace-shell .pro-tab.active,.patient-workspace-shell .pro-tab.active:hover{background:transparent;color:#fff!important}.patient-workspace-shell.header-over-content .pro-tab,.patient-workspace-shell.header-over-content .pro-tab:hover,.patient-workspace-shell.header-over-content .pro-tab.active{color:#000}.patient-workspace-shell.header-over-content .pro-tab.active{color:#fff}.patient-workspace-shell--calendar.header-over-content .pro-tab-indicator{background:#7faad2}.patient-workspace-shell--calendar.header-over-content .pro-tabs{border-color:var(--border)}.patient-workspace-shell--calendar.header-over-content .pro-tab{color:var(--muted)}.patient-workspace-shell--calendar.header-over-content .pro-tab:hover{color:var(--text)}.patient-workspace-shell--calendar.header-over-content .pro-tab.active{color:#fff}.pro-header-right{display:flex;align-items:center;justify-content:flex-end;gap:8px}.search-pill{display:flex;align-items:center;height:44px;border:1.5px solid transparent;border-radius:999px;overflow:hidden;width:44px;transition:width .28s cubic-bezier(.4,0,.2,1),border-color .18s ease}.pro-header:hover .search-pill:not(.open){border-color:var(--border)}.search-pill.open{width:280px;border-color:var(--border)}.search-pill-btn{display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;border:none;background:transparent;color:var(--muted);cursor:pointer;border-radius:999px;transition:color .15s}.search-pill:hover .search-pill-btn,.search-pill.open .search-pill-btn{color:var(--text)}.search-pill-btn svg{width:18px;height:18px}.search-pill input{flex:1;min-width:0;border:none;outline:none;background:transparent;font:inherit;font-size:15px;color:var(--text);padding:0;opacity:0;transition:opacity .15s .1s}.search-pill.open input{opacity:1}.search-pill input::placeholder{color:var(--muted)}.search-pill-count{font-size:12px;font-weight:600;color:var(--muted);padding:0 12px 0 6px;white-space:nowrap;flex-shrink:0;opacity:0;transition:opacity .15s}.search-pill.open .search-pill-count{opacity:1}.sidebar-edit-btn{display:grid;place-items:center;width:36px;height:36px;border:1.5px solid transparent;border-radius:50%;background:transparent;color:var(--muted);cursor:pointer;transition:border-color .18s ease,color .18s ease;flex-shrink:0}.sidebar-edit-btn:hover{border-color:var(--border);color:var(--text)}.sidebar-edit-btn svg{width:16px;height:16px}.sidebar-save-capsule{height:36px;padding:0 16px;border:none;border-radius:999px;background:#2f9f64;color:#fff;cursor:pointer;font:inherit;font-size:13px;font-weight:800}.sidebar-save-capsule:hover{background:#258454}.sidebar-save-capsule:disabled{opacity:.45;cursor:default}.sidebar-save-capsule:disabled:hover{background:#2f9f64}.add-item-btn{display:grid;place-items:center;width:44px;height:44px;border:1.5px solid transparent;border-radius:50%;background:transparent;color:var(--muted);cursor:pointer;transition:border-color .18s ease,color .18s ease;flex-shrink:0}.pro-header:hover .add-item-btn{border-color:var(--border)}.add-item-btn:hover{color:var(--text)}.add-item-btn svg{width:22px;height:22px}.logout-btn{display:grid;place-items:center;width:44px;height:44px;border:1.5px solid transparent;border-radius:50%;background:transparent;color:var(--muted);cursor:pointer;transition:border-color .18s ease,color .18s ease;flex-shrink:0}.pro-header:hover .logout-btn{border-color:var(--border)}.logout-btn:hover{color:var(--text)}.logout-btn svg{width:20px;height:20px}.pro-main{min-height:0;overflow:hidden;display:flex;flex-direction:column}.pro-inline-search{display:flex;justify-content:center;flex:0 0 auto;padding:1px 28px 13px}.pro-inline-search .dv-search-inline{width:min(360px,100%)}.clients-main,.pro-main>*{flex:1;min-height:0}.pro-main>.pro-inline-search{flex:0 0 auto}@keyframes patientScrollFadeIn{0%{opacity:0}to{opacity:1}}.route-slide-stage{position:relative;height:100vh;overflow:hidden;background:var(--bg)}.route-slide-pane{position:absolute;top:0;right:0;bottom:0;left:0;min-width:0;overflow:hidden;will-change:transform}.route-slide-stage.is-transitioning .route-slide-pane--active{animation:routeSlideInForward .42s cubic-bezier(.16,1,.3,1) both}.route-slide-pane--leaving{pointer-events:none;animation:routeSlideOutForward .42s cubic-bezier(.16,1,.3,1) both}.route-slide-stage.is-transitioning.route-slide-stage--back .route-slide-pane--active{animation-name:routeSlideInBack}.route-slide-stage.is-transitioning.route-slide-stage--back .route-slide-pane--leaving{animation-name:routeSlideOutBack}@keyframes routeSlideInForward{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes routeSlideOutForward{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes routeSlideInBack{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes routeSlideOutBack{0%{transform:translate(0)}to{transform:translate(100%)}}.pro-tab-stage{position:relative;flex:1;min-height:0;overflow:hidden}.pro-tab-pane{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;min-height:0;overflow:hidden;will-change:transform}.pro-tab-content-body{flex:1;min-height:0;display:flex;flex-direction:column}.pro-tab-content-body>*{flex:1;min-height:0}.pro-tab-stage.is-transitioning .pro-tab-pane--active{animation:proTabInForward .38s cubic-bezier(.16,1,.3,1) both}.pro-tab-pane--leaving{pointer-events:none;animation:proTabOutForward .38s cubic-bezier(.16,1,.3,1) both}.pro-tab-stage.is-transitioning.pro-tab-stage--back .pro-tab-pane--active{animation-name:proTabInBack}.pro-tab-stage.is-transitioning.pro-tab-stage--back .pro-tab-pane--leaving{animation-name:proTabOutBack}@keyframes proTabInForward{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes proTabOutForward{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes proTabInBack{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes proTabOutBack{0%{transform:translate(0)}to{transform:translate(100%)}}.dv-shell{display:flex;flex-direction:column;height:100%;overflow:hidden;padding:0 28px 24px}.products-tab,.recipes-tab,.supplements-tab,.activity-tab{display:flex;flex-direction:column;height:100%;min-height:0}.supplements-tab{position:relative}.recipes-tab .filters{justify-content:center}.products-tab .filters{position:relative}.products-tab .filters-center-group,.supplements-tab .filters-center-group,.activity-tab .filters-center-group{display:flex;align-items:center;justify-content:center;gap:6px}.products-tab .filters-center-group .dv-search-inline,.supplements-tab .filters-center-group .dv-search-inline,.activity-tab .filters-center-group .dv-search-inline{width:min(240px,32vw)}@media (max-width: 980px){.products-tab .filters{justify-content:center}.products-tab .filters-center-group{position:static;transform:none;flex-wrap:wrap;order:2;width:100%;max-width:none}.products-tab .db-tabs{order:1}}.filter-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:170}.filters{display:flex;align-items:center;justify-content:center;gap:6px;padding:14px 16px 12px}.products-tab .filters,.recipes-tab .filters,.supplements-tab .filters,.activity-tab .filters{padding:0 16px}.products-tab .dv-detached-head,.recipes-tab .dv-detached-head,.supplements-tab .dv-detached-head,.activity-tab .dv-detached-head,.products-tab .dv-shell--detached-head .dv-content,.recipes-tab .dv-shell--detached-head .dv-content,.supplements-tab .dv-shell--detached-head .dv-content,.activity-tab .dv-shell--detached-head .dv-content{margin-top:0}.products-tab .dv-shell--detached-head .table-scroll,.recipes-tab .dv-shell--detached-head .table-scroll,.supplements-tab .dv-shell--detached-head .table-scroll,.activity-tab .dv-shell--detached-head .table-scroll{padding-top:0}.products-tab .dv-shell--detached-head .table-scroll table,.supplements-tab .dv-shell--detached-head .table-scroll table,.activity-tab .dv-shell--detached-head .table-scroll table{margin-top:-2px}.nutritionist-shell--protocols .filters{padding:0 16px 8px}.filter-dropdown{position:relative;z-index:190}.dv-search-inline{display:flex;align-items:center;gap:6px;height:36px;padding:0 12px;border:1.5px solid var(--border);border-radius:999px;background:var(--bg);width:240px;flex-shrink:0;transition:border-color .15s}.dv-search-inline:focus-within{border-color:var(--text)}.dv-search-inline svg{width:15px;height:15px;stroke:var(--muted);fill:none;stroke-width:2;flex-shrink:0}.dv-search-inline input{flex:1;border:none;background:transparent;font:inherit;font-size:14px;outline:none;color:var(--text);min-width:0}.dv-search-inline input::placeholder{color:var(--muted)}.dv-search-inline input[type=search]::-webkit-search-cancel-button{display:none}.recipes-search-count{flex:0 0 auto;height:24px;min-width:24px;padding:0 8px;margin-right:-6px;border-radius:999px;background:#3c3c431a;color:#3c3c43b8;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;line-height:1;white-space:nowrap}.inline-search-count{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 8px;margin-right:-6px;box-sizing:border-box;border-radius:999px;background:#3c3c431a;color:#3c3c43b8;font-size:12px;font-weight:700;line-height:1}.recipes-tab .dv-search-inline{width:300px}.dv-search-inline button{background:none;border:none;cursor:pointer;color:var(--muted);font-size:16px;line-height:1;padding:0;flex-shrink:0}.trash-controls{display:flex;align-items:center;gap:6px;flex-shrink:0;margin-left:auto}.trash-db-button,.trash-clear-button,.trash-bulk-delete-button{display:inline-flex;align-items:center;gap:7px;height:36px;border:1.5px solid transparent;border-radius:999px;background:transparent;color:var(--muted);font:inherit;font-size:13px;font-weight:700;cursor:pointer;padding:0 13px;white-space:nowrap;transition:border-color .18s ease,color .18s ease,background .18s ease}.filters:hover .trash-db-button:not(.active),.filters:hover .trash-clear-button,.filters:hover .trash-bulk-delete-button{border-color:var(--border)}.trash-db-button.active{background:var(--danger);border-color:var(--danger);color:#fff}.trash-db-button span{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 6px;border-radius:999px;background:#0000001a;font-size:13px;font-weight:800}.trash-db-button.active span{background:#ffffff42}.trash-clear-button:hover,.trash-bulk-delete-button{border-color:var(--danger);color:var(--danger)}.trash-bulk-delete-button span{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 6px;border-radius:999px;background:#cc33331f;color:var(--danger);font-size:13px;font-weight:800}.filter-capsule{display:flex;align-items:center;gap:5px;height:38px;padding:0 13px;border:1.5px solid transparent;border-radius:999px;background:transparent;color:var(--muted);font:inherit;font-size:15px;font-weight:500;cursor:pointer;white-space:nowrap;transition:border-color .18s ease}.filters:hover .filter-capsule:not(.active){border-color:var(--border)}.filter-capsule.active{background:#e5e5ea;border-color:transparent;color:#000;font-weight:700}.filter-capsule--reset{color:var(--muted);border-style:dashed;padding:0 13px}.filter-capsule--reset:hover{border-color:var(--danger);color:var(--danger);border-style:solid}.filter-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:200;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 6px 24px #0000001a;padding:5px;min-width:max-content;max-height:280px;overflow-y:auto}.filter-menu button{display:flex;align-items:center;width:100%;height:34px;padding:0 10px;border:none;background:transparent;color:var(--text);cursor:pointer;font:inherit;font-size:15px;border-radius:8px;text-align:left;white-space:nowrap;transition:background .1s}.filter-menu button:hover{background:var(--bg)}.filter-menu button.active{font-weight:700}.filter-menu-check{gap:8px}.filter-menu-checkbox{width:16px;height:16px;border:1.7px solid var(--muted);border-radius:50%;flex:0 0 auto;position:relative}.filter-menu-check.active .filter-menu-checkbox{border-color:#0000008c;background:transparent}.filter-menu-check.active .filter-menu-checkbox:after{content:"";position:absolute;left:50%;top:50%;width:8px;height:8px;border-radius:50%;background:#000;transform:translate(-50%,-50%)}.dv-content{display:flex;flex:1;min-height:0;overflow:hidden;position:relative}.dv-detached-head{flex:0 0 auto;position:relative;z-index:8;padding:0 8px 2px;pointer-events:none}.dv-detached-head table{table-layout:fixed;border-spacing:0}.dv-detached-head th{position:static;z-index:auto;background:transparent;border-bottom:none;padding:8px 12px 7px}.dv-shell--detached-head .table-scroll{padding-top:10px}.dv-shell--detached-head .dv-content{margin-top:8px}.dv-shell--detached-head .table-panel{background:transparent;border-radius:0;clip-path:none}.dv-shell--detached-head .table-panel:after{border-radius:0}.dv-shell--detached-head .table-scroll table{table-layout:fixed}.table-head--semantic{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.table-head--semantic th,.table-head--semantic th.num{position:static;width:1px;height:1px;padding:0;border:0;font-size:1px;line-height:1}.table-panel{position:relative;flex:1;width:100%;min-height:0;background:var(--bg);border-radius:var(--radius);clip-path:inset(0 round var(--radius));display:flex;flex-direction:column}.table-panel:after{content:"";position:absolute;bottom:0;left:0;right:0;height:56px;background:linear-gradient(to bottom,transparent,var(--bg));border-radius:0 0 var(--radius) var(--radius);pointer-events:none;z-index:1}.table-scroll{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;padding:0 8px 56px}.scroll-sentinel{height:20px}table{width:100%;table-layout:auto;border-collapse:separate;border-spacing:0 4px;font-size:15px}th{position:sticky;top:0;z-index:10;padding:10px 12px 8px;background:var(--bg);color:var(--muted);font-size:11px;font-weight:700;text-align:left;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;border-bottom:2px solid var(--bg)}td{padding:10px 12px;background:transparent;vertical-align:middle;border-top:1.5px solid var(--border);border-bottom:1.5px solid var(--border);border-left:none;border-right:none;color:var(--text);transition:background .15s,border-color .15s,color .15s}td:first-child{border-radius:22px 0 0 22px;border-left:1.5px solid var(--border);padding-left:16px}td:last-child{border-radius:0 22px 22px 0;border-right:1.5px solid var(--border);padding-right:16px}td.bulk-select-cell{width:44px;padding-left:16px;padding-right:4px;text-align:center}.bulk-select-head{width:44px;padding-left:16px;padding-right:4px}.row-bullet-checkbox{width:17px;height:17px;display:inline-grid;place-items:center;border:1.7px solid rgba(0,0,0,.42);border-radius:50%;background:transparent;padding:0;cursor:pointer;vertical-align:middle;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.row-bullet-checkbox:after{content:"";width:7px;height:7px;border-radius:50%;background:transparent;transition:background-color .16s ease}.row-bullet-checkbox.checked{border-color:#000;background:transparent;box-shadow:0 0 0 2px #00000014}.row-bullet-checkbox.checked:after{background:#000}.row-bullet-checkbox:hover{border-color:#000}tbody tr.bulk-selected td{border-color:#00000038}th.num,td.num{padding-left:8px;padding-right:8px;text-align:right}td.num,td.num .muted{white-space:nowrap}tbody tr{cursor:pointer}tbody tr:hover td{border-color:var(--muted);background:#00000005}tbody tr .chip-list{align-items:center;gap:3px}tbody tr .chip{min-height:18px;padding:0 6px;font-size:11px}tbody tr .chip:not(.chip--cat){background:#d4ccc4!important;color:#3a3028!important;border-color:transparent!important}tbody tr .chip--cat{border:none!important}tbody tr .status{background:#d4ccc4!important;color:#3a3028!important;border-color:transparent!important;transition:background .15s,color .15s}tbody tr .status.checked{background:#8ecf9a!important;color:#125228!important}tbody tr .status.warning{background:#f0a858!important;color:#5a2e08!important}tbody tr .status.info{background:#90c0d8!important;color:#1a4a68!important}tbody tr.selected td{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}tbody tr.selected .muted{color:#ffffffa6}tbody tr.selected .chip,tbody tr.selected .chip--cat,tbody tr.selected .status{background:#fffffff2!important;color:var(--accent-dark)!important;border-color:transparent!important;font-weight:600!important}.products-tab .table-scroll table,.recipes-tab .table-scroll table,.supplements-tab .table-scroll table,.activity-tab .table-scroll table{border-spacing:0 8px}.products-tab tbody tr td,.recipes-tab tbody tr td,.supplements-tab tbody tr td,.activity-tab tbody tr td{height:46px;padding-top:8px;padding-bottom:8px;background:#f2f2f7;border:none}.products-tab tbody tr td:first-child,.recipes-tab tbody tr td:first-child,.supplements-tab tbody tr td:first-child,.activity-tab tbody tr td:first-child{border-left:none}.products-tab tbody tr td:last-child,.recipes-tab tbody tr td:last-child,.supplements-tab tbody tr td:last-child,.activity-tab tbody tr td:last-child{border-right:none}.products-tab tbody tr:hover td,.recipes-tab tbody tr:hover td,.supplements-tab tbody tr:hover td,.activity-tab tbody tr:hover td,.products-tab tbody tr.selected td,.recipes-tab tbody tr.selected td,.supplements-tab tbody tr.selected td,.activity-tab tbody tr.selected td,.products-tab tbody tr.bulk-selected td,.recipes-tab tbody tr.bulk-selected td,.supplements-tab tbody tr.bulk-selected td,.activity-tab tbody tr.bulk-selected td{background:#ececf2;border-color:transparent;color:var(--text);font-weight:inherit}.products-tab tbody tr.selected .muted,.recipes-tab tbody tr.selected .muted,.supplements-tab tbody tr.selected .muted,.activity-tab tbody tr.selected .muted{color:var(--muted)}.products-tab td.bulk-select-cell,.recipes-tab td.bulk-select-cell{width:44px;padding:8px;text-align:center}.recipes-tab col[data-field=bulk-select]{width:27px!important}.recipes-tab td.bulk-select-cell{width:27px;padding:8px 0 8px 10px;text-align:left}.recipes-tab td[data-field=title]{padding-left:10px}.recipe-list-title{display:flex;align-items:center;gap:10px;min-width:0;font-weight:700}.recipe-list-image{width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;overflow:hidden;border-radius:50%;background:#e4e4ea;color:#8c8c96}.recipe-list-image img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.recipe-list-image svg{width:17px;height:17px}.recipe-list-title-text{min-width:0;overflow-wrap:break-word;word-break:normal}.products-tab .bulk-select-head,.recipes-tab .bulk-select-head{width:44px;padding-left:8px;padding-right:8px}.products-tab tbody tr .chip,.products-tab tbody tr .chip--cat,.products-tab tbody tr .status,.recipes-tab tbody tr .chip,.recipes-tab tbody tr .chip--cat,.recipes-tab tbody tr .status,.products-tab tbody tr.selected .chip,.products-tab tbody tr.selected .chip--cat,.products-tab tbody tr.selected .status,.recipes-tab tbody tr.selected .chip,.recipes-tab tbody tr.selected .chip--cat,.recipes-tab tbody tr.selected .status{background:#fff!important;color:var(--text)!important;border-color:transparent!important}.recipes-tab th.num,.recipes-tab td.num{text-align:center;padding-left:5px;padding-right:5px;font-variant-numeric:tabular-nums}.recipes-tab th:nth-last-child(1),.recipes-tab td:nth-last-child(1){text-align:right;padding-left:12px;padding-right:24px;font-variant-numeric:tabular-nums}.recipes-tab th:nth-last-child(2),.recipes-tab td:nth-last-child(2),.recipes-tab th:nth-last-child(3),.recipes-tab td:nth-last-child(3),.recipes-tab th:nth-last-child(4),.recipes-tab td:nth-last-child(4),.recipes-tab th:nth-last-child(5),.recipes-tab td:nth-last-child(5){text-align:center}.recipes-tab td:nth-child(3) .chip-list,.recipes-tab td:nth-child(4) .chip-list,.recipes-tab td:nth-child(5) .chip-list{display:grid;grid-template-columns:repeat(2,minmax(0,max-content));justify-content:start;align-items:center;gap:4px 5px}.recipes-tab td:nth-child(3) .chip,.recipes-tab td:nth-child(4) .chip,.recipes-tab td:nth-child(5) .chip{max-width:70px;min-width:0;padding-left:7px;padding-right:7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recipes-tab td:nth-child(4) .chip{max-width:106px}.recipes-tab td:nth-child(5) .chip{max-width:74px}@media (max-width: 1500px){.recipes-tab .dv-detached-head{opacity:0}.recipes-tab .dv-shell--detached-head .dv-content{margin-top:0}.recipes-tab .dv-shell--detached-head .table-scroll{padding-top:0}.recipes-tab .table-scroll table,.recipes-tab .table-scroll tbody{display:block;width:100%}.recipes-tab .table-scroll colgroup,.recipes-tab .table-scroll thead{display:none}.recipes-tab .table-scroll tbody tr{display:grid;grid-template-columns:17px repeat(11,minmax(0,1fr));column-gap:10px;row-gap:9px;align-items:center;width:100%;min-height:80px;margin-bottom:8px;padding:10px;box-sizing:border-box;border-radius:22px;background:#f2f2f7}.recipes-tab .table-scroll tbody tr:hover,.recipes-tab .table-scroll tbody tr.selected,.recipes-tab .table-scroll tbody tr.bulk-selected{background:#ececf2}.recipes-tab .table-scroll tbody tr td,.recipes-tab .table-scroll tbody tr:hover td,.recipes-tab .table-scroll tbody tr.selected td,.recipes-tab .table-scroll tbody tr.bulk-selected td{display:flex;align-items:center;min-width:0;width:auto;height:auto;padding:0;border:0;border-radius:0;background:transparent}.recipes-tab .table-scroll td[data-field=bulk-select]{grid-column:1;grid-row:1;justify-self:start}.recipes-tab .table-scroll td[data-field=title]{grid-column:2 / 8;grid-row:1}.recipes-tab .table-scroll td[data-field=proteins]{grid-column:8;grid-row:1}.recipes-tab .table-scroll td[data-field=fats]{grid-column:9;grid-row:1}.recipes-tab .table-scroll td[data-field=carbs]{grid-column:10;grid-row:1}.recipes-tab .table-scroll td[data-field=calories]{grid-column:11;grid-row:1}.recipes-tab .table-scroll td[data-field=dish_weight]{grid-column:12;grid-row:1}.recipes-tab .table-scroll td[data-field=meal_tags]{grid-column:2 / 4;grid-row:2}.recipes-tab .table-scroll td[data-field=diet_types]{grid-column:4 / 7;grid-row:2}.recipes-tab .table-scroll td[data-field=allergens]{grid-column:7 / 10;grid-row:2}.recipes-tab .table-scroll td[data-field=therapeutic_states]{grid-column:10 / 13;grid-row:2}.recipes-tab .table-scroll td[data-field=meal_tags] .chip-list,.recipes-tab .table-scroll td[data-field=diet_types] .chip-list,.recipes-tab .table-scroll td[data-field=allergens] .chip-list,.recipes-tab .table-scroll td[data-field=therapeutic_states] .chip-list{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:4px 5px;min-width:0}.recipes-tab .table-scroll td[data-field=meal_tags] .chip,.recipes-tab .table-scroll td[data-field=diet_types] .chip,.recipes-tab .table-scroll td[data-field=allergens] .chip,.recipes-tab .table-scroll td[data-field=therapeutic_states] .chip{max-width:100%}.recipes-tab .table-scroll tbody tr td.num{display:flex;flex-direction:column;justify-content:center;gap:1px;text-align:center;font-size:13px}.recipes-tab .table-scroll td.num:before{color:var(--muted);font-size:9px;font-weight:700;line-height:1;text-transform:uppercase}.recipes-tab .table-scroll td[data-field=proteins]:before{content:"Б"}.recipes-tab .table-scroll td[data-field=fats]:before{content:"Ж"}.recipes-tab .table-scroll td[data-field=carbs]:before{content:"В"}.recipes-tab .table-scroll td[data-field=calories]:before{content:"Ккал"}.recipes-tab .table-scroll td[data-field=dish_weight]:before{content:"Г"}}@media (max-width: 760px){.recipes-tab .table-scroll tbody tr{grid-template-columns:17px repeat(5,minmax(0,1fr));row-gap:11px;padding:12px}.recipes-tab .table-scroll td[data-field=title]{grid-column:2 / 7;grid-row:1}.recipes-tab .table-scroll td[data-field=proteins]{grid-column:2;grid-row:2}.recipes-tab .table-scroll td[data-field=fats]{grid-column:3;grid-row:2}.recipes-tab .table-scroll td[data-field=carbs]{grid-column:4;grid-row:2}.recipes-tab .table-scroll td[data-field=calories]{grid-column:5;grid-row:2}.recipes-tab .table-scroll td[data-field=dish_weight]{grid-column:6;grid-row:2}.recipes-tab .table-scroll td[data-field=meal_tags],.recipes-tab .table-scroll td[data-field=diet_types],.recipes-tab .table-scroll td[data-field=allergens],.recipes-tab .table-scroll td[data-field=therapeutic_states]{grid-column:2 / 7}.recipes-tab .table-scroll td[data-field=meal_tags]{grid-row:3}.recipes-tab .table-scroll td[data-field=diet_types]{grid-row:4}.recipes-tab .table-scroll td[data-field=allergens]{grid-row:5}.recipes-tab .table-scroll td[data-field=therapeutic_states]{grid-row:6}}.activity-tab tbody tr .chip--cat,.activity-tab tbody tr.selected .chip--cat{background:#fff!important;color:var(--text)!important;border-color:transparent!important}.num{font-variant-numeric:tabular-nums;white-space:nowrap}.cell-nowrap{white-space:nowrap}.detail-panel{position:fixed;right:16px;top:var(--detail-panel-top, calc(var(--header-h) + 64px));bottom:16px;width:390px;background:var(--bg);border-radius:22px;border:1px solid var(--border);isolation:isolate;box-shadow:0 0 0 1px #00000008,0 8px 24px #00000014,0 32px 80px #00000024,-24px 0 60px #0000000f,-48px 0 80px #00000008;overflow:visible;display:flex;flex-direction:column;z-index:150;transform:translate(calc(100% + 48px));transition:transform .35s cubic-bezier(.16,1,.3,1)}.detail-panel.open{transform:translate(0)}.detail-panel-halo{display:none}.recipes-tab .detail-panel-halo{position:fixed;right:-60px;top:calc(var(--detail-panel-top, calc(var(--header-h) + 64px)) - 72px);bottom:-56px;z-index:149;display:block;width:min(700px,calc(100vw + 80px));pointer-events:none;border-radius:86px;background:radial-gradient(ellipse at 50% 50%,#ffffff94,#ffffff4d 36%,#e8e8ee24 60%,#e8e8ee00 82%),linear-gradient(135deg,#ffffff29,#dcdce40f);backdrop-filter:blur(10px) saturate(1.08);-webkit-backdrop-filter:blur(10px) saturate(1.08);mask-image:radial-gradient(ellipse at 50% 50%,#000 0%,rgba(0,0,0,.92) 38%,rgba(0,0,0,.42) 64%,transparent 84%);-webkit-mask-image:radial-gradient(ellipse at 50% 50%,#000 0%,rgba(0,0,0,.92) 38%,rgba(0,0,0,.42) 64%,transparent 84%);opacity:0;transform:translate(calc(100% + 48px));transition:opacity .15s ease-out,transform .35s cubic-bezier(.16,1,.3,1)}.recipes-tab .detail-panel-halo.open{opacity:1;transform:translate(0)}.recipes-tab .detail-panel{width:min(520px,calc(100vw - 32px));overflow:hidden}.recipes-tab .detail-panel:before{display:none}.detail-panel:before{content:"";position:absolute;top:-34px;right:-34px;bottom:-34px;left:-34px;border-radius:42px;background:radial-gradient(circle at 18% 22%,rgba(132,169,200,.42),transparent 42%),radial-gradient(circle at 84% 18%,rgba(204,170,140,.36),transparent 38%),radial-gradient(circle at 28% 88%,rgba(142,207,154,.22),transparent 42%);filter:blur(30px);opacity:0;pointer-events:none;z-index:-1;transition:opacity .25s ease}.detail-panel.open:before{opacity:1}.detail-panel-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px 10px;border-bottom:none;flex-shrink:0}.detail-panel-close{flex-shrink:0}.detail-panel-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:20px}.recipes-tab .detail-panel-header{position:absolute;inset:0 0 auto;z-index:3;min-height:64px;padding:14px 16px 18px;border-radius:22px 22px 0 0;overflow:hidden;pointer-events:none}.recipes-tab .detail-panel-header:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffff42;backdrop-filter:blur(15px) saturate(.9);-webkit-backdrop-filter:blur(15px) saturate(.9);mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.78) 56%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.78) 56%,transparent 100%);pointer-events:none}.recipes-tab .detail-panel-header>*{position:relative;z-index:1;pointer-events:auto}.recipes-tab .detail-panel-header .sidebar-edit-btn{border-color:#ffffffb3;background:#ffffffd6;box-shadow:0 2px 10px #0000001f;color:#505057}.recipes-tab .detail-panel-header .sidebar-edit-btn:hover{border-color:#fffffff5;background:#fff;color:var(--text)}.recipes-tab .detail-panel-body{padding:0 20px 24px}.dish-detail-hero{position:relative;width:calc(100% + 40px);aspect-ratio:1;margin:0 -20px 20px;display:grid;align-items:end;overflow:hidden;border-radius:22px 22px 0 0;background:radial-gradient(circle at 22% 22%,#d8e4ee 0%,transparent 44%),radial-gradient(circle at 80% 74%,#eee0d4 0%,transparent 48%),#ececf1}.dish-detail-hero.has-image:before{content:"";position:absolute;top:-22px;right:-22px;bottom:-22px;left:-22px;background:var(--dish-image) center / cover no-repeat;filter:blur(20px) saturate(.82);transform:scale(1.08);opacity:.9}.dish-detail-hero.has-image:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,rgba(10,10,12,.12) 0%,transparent 34%,rgba(8,8,10,.76) 100%)}.dish-detail-hero img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;-webkit-mask-image:radial-gradient(ellipse 86% 86% at center,#000 58%,rgba(0,0,0,.78) 73%,transparent 100%);mask-image:radial-gradient(ellipse 86% 86% at center,#000 58%,rgba(0,0,0,.78) 73%,transparent 100%)}.dish-detail-placeholder{width:76px;height:76px;margin:auto;color:#2f2f376b}.detail-title--plain{margin:0 0 20px;padding-top:98px}.dish-detail-hero .detail-title{position:relative;z-index:1;margin:0;padding:20px;color:#fff;font-size:28px;line-height:1.14;text-shadow:0 2px 12px rgba(0,0,0,.42)}.dish-detail-hero:not(.has-image) .detail-title{color:var(--text);text-shadow:none}.detail-title{font-size:24px;font-weight:800;margin-bottom:6px;line-height:1.2}.detail-subtitle{color:var(--muted);font-size:13px;margin-bottom:14px}.empty-state{display:grid;place-items:center;align-content:center;min-height:240px;color:var(--muted);text-align:center;gap:10px}.empty-state svg{width:32px;height:32px}.detail-section{margin-top:18px;padding-top:0;border-top:none}.detail-section h4{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--muted);margin-bottom:10px}.macro-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:4px 0 0}.macro{border-radius:var(--radius);border:none;background:var(--bg);display:flex;flex-direction:column;align-items:flex-start;padding:8px 10px;gap:2px}.detail-panel .macro{background:transparent;border-radius:0;padding:0}.detail-panel .macro-grid{row-gap:18px}.dish-info-grid{display:grid;grid-template-columns:1fr;gap:8px}.dish-info-item{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:baseline;gap:10px}.dish-info-item span,.dish-nutrition-row--head span,.dish-ingredient-row--head span{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.04em;line-height:1.1;text-transform:uppercase}.dish-info-item strong{color:var(--text);font-size:14px;font-weight:800;line-height:1.25;min-width:0}.dish-nutrition-table,.dish-ingredients-table{display:grid;gap:4px;min-width:0;overflow:hidden}.dish-nutrition-row,.dish-ingredient-row{display:grid;align-items:center;min-width:0;min-height:34px;border-bottom:1px solid var(--border);font-size:12px}.dish-nutrition-row{grid-template-columns:minmax(92px,1fr) 76px 76px;gap:10px}.dish-nutrition-row--head,.dish-ingredient-row--head{min-height:24px;border-bottom:none}.dish-nutrition-row strong{font-size:13px;font-weight:800;min-width:0}.dish-nutrition-row span,.dish-ingredient-row span{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.dish-nutrition-row span:first-child,.dish-ingredient-row span:first-child{text-align:left}.dish-ingredient-row{grid-template-columns:minmax(118px,1fr) repeat(5,minmax(30px,34px)) 44px;gap:6px}.dish-ingredient-row strong{display:grid;gap:2px;min-width:0;overflow:hidden;font-size:11px;font-weight:800}.dish-ingredient-row strong small{overflow:hidden;color:var(--muted);font-size:10px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.dish-ingredient-row span{min-width:0;overflow:hidden;font-size:11px;text-overflow:clip}.dish-recipe-text{margin:0;color:var(--text);font-size:13px;font-weight:500;line-height:1.45;white-space:pre-wrap}.macro span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;line-height:1.1}.macro strong{font-size:20px;font-weight:800;line-height:1.1}.weight-control-row{display:flex;align-items:center;gap:8px;margin-bottom:0}.weight-control-label{font-size:15px;color:var(--muted);white-space:nowrap;flex-shrink:0}.weight-control-row input{width:80px;height:38px;border:1.5px solid var(--border);border-radius:999px;background:transparent;color:var(--text);padding:0 12px;outline:none;font:inherit;font-size:15px}.weight-control-row input:focus{border-color:var(--accent)}.status-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:12px 0}.status-card{border:1px solid var(--border);border-radius:var(--radius);padding:10px;background:#fbfcfa;min-height:62px}.status-card>span{display:block;font-size:11px;font-weight:700;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.kv{display:grid;grid-template-columns:110px 1fr;gap:8px;margin:6px 0;font-size:15px}.kv span{color:var(--muted)}.menu-controls{display:grid;grid-template-columns:1fr 70px auto;gap:8px}.menu-controls select,.menu-controls input{height:36px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);padding:0 8px;outline:none}.menu-list{display:grid;gap:6px;margin-top:8px}.menu-item{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--border);border-radius:var(--radius);padding:8px 10px;background:#fbfcfa}.menu-item span{display:block;font-size:12px;color:var(--muted);margin-top:2px}.menu-item b{white-space:nowrap}.week-grid{display:grid;gap:7px}.week-card{border:1px solid var(--border);border-radius:var(--radius);padding:9px 12px;display:grid;gap:3px}.week-card span{color:var(--muted);font-size:12px}.missing{border:1px dashed #cdd7ca;border-radius:var(--radius);padding:12px;background:#fbfcfa}.missing p{color:var(--muted);font-size:13px}.supplement-detail{display:grid;gap:24px}.supplement-edit-form{gap:8px}.supplements-tab .filters,.activity-tab .filters{position:relative;justify-content:center}.supplements-tab .dv-detached-head,.activity-tab .dv-detached-head{margin:0;padding:0 8px 2px;border-bottom:none;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}.supplements-tab .dv-detached-head th,.activity-tab .dv-detached-head th{padding-top:8px;padding-bottom:7px;font-size:11px;font-weight:800;color:#3c3c43b8}.supplements-tab .dv-shell--detached-head .dv-content,.activity-tab .dv-shell--detached-head .dv-content{margin-top:0}.supplements-tab .dv-shell--detached-head .table-scroll,.activity-tab .dv-shell--detached-head .table-scroll{padding-top:0}.supplement-trash-controls,.activity-trash-controls{margin-left:auto}.supplement-detail-list{display:grid;gap:14px}.supplement-detail-item{display:grid;gap:4px}.supplement-detail-item span{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.supplement-detail-item strong{color:var(--text);font-size:15px;font-weight:700;line-height:1.45;white-space:pre-wrap}.supplement-link{display:inline-flex;align-items:center;justify-content:center;justify-self:start;height:34px;padding:0 14px;border:1.5px solid var(--border);border-radius:999px;color:var(--text);text-decoration:none;font-size:13px;font-weight:800}.supplement-link:hover{background:var(--bg)}.clients-shell{height:100vh;display:grid;grid-template-rows:var(--header-h) 1fr;overflow:hidden;background:var(--bg)}.cinfo-progress-body{display:grid;gap:16px;container-type:inline-size}.cinfo-progress-reminders{position:relative;display:grid;gap:8px;padding:0;border:0;border-radius:0;background:transparent}.cinfo-progress-reminders>strong{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.04em;line-height:1.2;text-align:left;text-transform:uppercase}.cinfo-progress-reminders>div{width:max-content;max-width:100%;display:grid;grid-template-columns:repeat(7,40px);justify-content:start;gap:10px}.cinfo-progress-reminders button{width:40px;min-width:40px;height:40px;padding:0;border:1.5px solid rgba(0,0,0,.28);border-radius:50%;background:transparent;color:var(--muted);font:inherit;font-size:11px;font-weight:750;cursor:pointer;transition:color .18s ease,background-color .18s ease,border-color .18s ease,transform .18s ease}.cinfo-progress-reminders button:hover{color:#111;border-color:#00000085}.cinfo-progress-reminders button.is-selected{border-color:#7faad2;background:#7faad2;color:#fff;box-shadow:none}.cinfo-progress-reminders button:active{transform:scale(.96)}.cinfo-progress-chart-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:100%}.cinfo-progress-chart-card{min-width:0;min-height:0;aspect-ratio:auto;display:grid;grid-template-rows:auto auto;gap:8px;padding:13px 13px 11px;border:1px solid rgba(0,0,0,.12);border-radius:24px;background:#fff;color:#000;overflow:hidden}.cinfo-progress-chart-head{display:flex;min-width:0;align-items:center}.cinfo-progress-chart-head span{min-width:0;overflow:hidden;color:#00000094;font-size:11px;font-weight:700;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.cinfo-progress-chart{width:100%;height:auto;min-height:0;aspect-ratio:420 / 190;overflow:visible}.cinfo-progress-chart-card>b{justify-self:start;display:inline-flex;align-items:center;min-height:20px;max-width:100%;height:20px;padding:0 8px;border-radius:11px;background:#f2f2f7;color:#111;font-size:9.5px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums;white-space:nowrap}.cinfo-progress-chart-card>b.is-up{background:#2f9e5521;color:#16733a}.cinfo-progress-chart-card>b.is-down{background:#d543431f;color:#b43737}.progress-line-chart{display:block;width:100%;max-width:100%;overflow:visible;font-family:inherit;font-variant-numeric:tabular-nums}.progress-line-chart text{stroke:none;stroke-width:0;paint-order:normal;font-family:inherit}.progress-line-chart-grid line{stroke:#3c3c4321;stroke-width:1;vector-effect:non-scaling-stroke}.progress-line-chart-grid text{fill:#3c3c439e;font-size:9px;font-weight:600;text-anchor:end;dominant-baseline:middle}.progress-line-chart-path{fill:none;stroke:#6675cc;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;animation:progressChartPathIn .46s cubic-bezier(.16,1,.3,1) both}.progress-line-chart-points circle{fill:#fff;stroke:#6675cc;stroke-width:2.5;vector-effect:non-scaling-stroke}.progress-line-chart-dates text{fill:#3c3c439e;font-size:9px;font-weight:600;text-anchor:middle;dominant-baseline:auto}@keyframes progressChartPathIn{0%{opacity:.18}to{opacity:1}}.cinfo-progress-records{display:grid;gap:9px}.cinfo-progress-record{min-height:72px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;gap:8px 16px;padding:12px 14px;border:1px solid rgba(17,17,17,.09);border-radius:24px;background:#fff}.cinfo-progress-record-date{grid-column:1;grid-row:1;display:inline-flex;align-items:center;padding:0;background:transparent;color:var(--text);font-size:12px;white-space:nowrap}.cinfo-progress-record-content{grid-column:1;grid-row:2;min-width:0}.cinfo-progress-record-values{display:flex;align-items:center;flex-wrap:wrap;column-gap:18px;row-gap:7px;color:var(--muted);font-size:12px;line-height:1.35}.cinfo-progress-record-values>span{min-width:0;display:inline-flex;align-items:baseline;gap:4px;padding:0;border:0;border-radius:0;background:transparent;white-space:nowrap}.cinfo-progress-record-values>span.is-wide{max-width:100%;white-space:normal}.cinfo-progress-record-values small{color:var(--muted);font-size:inherit;font-weight:500;line-height:inherit;text-transform:none}.cinfo-progress-record-values small:after{content:":"}.cinfo-progress-record b{color:var(--text)}.cinfo-progress-empty{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.4}.cinfo-progress-photos{grid-column:2;grid-row:1 / span 2;align-self:center;display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px}.cinfo-progress-photos button,.cinfo-progress-photos>span{width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;padding:0;overflow:hidden;border:2px solid #fff;border-radius:50%;background:#fff;color:var(--muted);font-size:10px;line-height:1.2;cursor:pointer}.cinfo-progress-photos>span{display:grid;place-items:center;padding:5px;text-align:center}.cinfo-progress-photos img{display:block;width:100%;height:100%;object-fit:cover}@container (max-width: 980px){.cinfo-progress-chart-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@container (max-width: 620px){.cinfo-progress-chart-row{grid-template-columns:minmax(0,1fr)}.cinfo-progress-chart-card{min-height:0;aspect-ratio:auto}}@container (max-width: 430px){.cinfo-progress-record{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto}.cinfo-progress-photos{grid-column:1;grid-row:3;justify-content:center}}.cinfo-current-anthro-status{margin:8px 0 0;color:var(--muted);font-size:11px;font-weight:700;text-align:center}.patient-day-messages{position:relative;flex:0 0 30px;width:30px;height:30px}.patient-day-message-button{position:relative;width:30px;height:30px;border:1px solid rgba(17,17,17,.12);border-radius:50%;background:#fff;color:var(--muted);display:grid;place-items:center;padding:0;cursor:pointer;box-shadow:none;transition:color .18s ease,background-color .18s ease,transform .16s ease}.patient-day-message-button:hover{color:#111;background:#fff}.patient-day-message-button.is-open{color:#fff;background:#111;border-color:#111}.patient-day-message-button:active{transform:scale(.95)}.patient-day-message-button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.patient-day-message-button span{position:absolute;top:-4px;right:-5px;min-width:15px;height:15px;padding:0 3px;border:1.5px solid #fff;border-radius:8px;background:#111;color:#fff;font-size:9px;font-weight:800;line-height:13px}.patient-day-message-popover{position:fixed;z-index:720;width:max-content;min-width:150px;transform:translate(-50%);display:grid;gap:0;padding:14px 16px;border:1px solid rgba(17,17,17,.1);border-radius:16px;background:#fff;box-shadow:none}.patient-day-message-popover:before{content:"";position:absolute;top:-6px;left:50%;width:12px;height:12px;border-top:1px solid rgba(17,17,17,.1);border-left:1px solid rgba(17,17,17,.1);background:#fff;transform:translate(-50%) rotate(45deg)}.patient-day-message-popover article{position:relative;min-width:0;display:grid;gap:6px;padding:0;background:transparent}.patient-day-message-popover article+article{margin-top:11px;padding-top:11px;border-top:1px solid rgba(17,17,17,.08)}.patient-day-message-popover p{max-width:388px;margin:0;color:#111;font-size:13px;line-height:1.4;overflow-wrap:anywhere;white-space:pre-wrap}.clients-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 28px;height:var(--header-h)}.clients-header-center{display:flex;align-items:center;gap:8px}.clients-search{width:280px;height:38px;border:1.5px solid var(--border);border-radius:999px;padding:0 17px;display:flex;align-items:center;gap:8px;background:transparent}.clients-search input{flex:1;border:none;outline:none;background:transparent;font:inherit;font-size:15px;color:var(--text)}.clients-main{overflow-y:auto;padding:4px 28px 40px}.clients-section{margin-bottom:8px;border-radius:var(--radius);transition:background .15s}.clients-section--drop{background:var(--accent-soft);outline:2px dashed var(--accent);outline-offset:4px}.client-card[draggable]{cursor:grab}.client-card.dragging{opacity:.4;cursor:grabbing}.clients-drop-indicator{height:48px;border:2px dashed var(--accent);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--accent);opacity:.7}.clients-section-header{display:flex;align-items:center;gap:10px;padding:28px 0 12px;cursor:default}.clients-section-header.clickable{cursor:pointer}.clients-section-label{font-size:22px;font-weight:800;color:var(--text);white-space:nowrap;line-height:1}.clients-section-count{display:inline-flex;align-items:center;width:36px;height:36px;justify-content:center;padding:0;border-radius:50%;background:var(--surface-2);color:var(--muted);font-size:15px;font-weight:600}.clients-section-count--new{background:#ccaa8c33;color:#9e6e45}.clients-section-count--active{background:#84a9c82e;color:#4a8db5}.clients-section-count--paused{background:#b4aaa033;color:#7a6a5a}.clients-section-count--archived{background:var(--surface-2);color:var(--muted)}.clients-section-count--trash{background:#c850501a;color:#a04040}.clients-group-chevron{font-size:14px;color:var(--muted);transition:transform .2s;display:inline-block}.clients-group-chevron.open{transform:rotate(180deg)}.clients-section-line{display:none}.clients-group-cards{display:flex;flex-direction:column;gap:18px;padding-bottom:4px}.clients-year-group{display:flex;flex-direction:column;gap:10px}.clients-year-divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:13px;font-weight:750;line-height:1}.clients-year-divider:before,.clients-year-divider:after{content:"";height:1px;background:var(--border)}.clients-year-divider:before,.clients-year-divider:after{flex:1}.clients-year-cards{display:flex;flex-flow:row wrap;align-items:flex-start;gap:12px}.client-card{width:190px;height:190px;background:#f2f2f7;border:none;border-radius:36px;padding:16px;display:flex;flex-direction:column;justify-content:space-between;gap:8px;cursor:pointer;text-align:left;transition:filter .15s,transform .15s;flex-shrink:0;overflow:hidden}.client-card:hover{filter:brightness(.94);transform:translateY(-2px)}.client-card--new,.client-card--active,.client-card--paused,.client-card--archived,.client-card--trash{background:#f2f2f7}.client-card--new .client-name,.client-card--active .client-name,.client-card--paused .client-name,.client-card--archived .client-name,.client-card--trash .client-name{color:#000;font-weight:700}.client-card--new .client-goal,.client-card--active .client-goal,.client-card--paused .client-goal,.client-card--archived .client-goal,.client-card--trash .client-goal{color:#00000094}.client-card--new .client-date,.client-card--active .client-date,.client-card--paused .client-date,.client-card--archived .client-date,.client-card--trash .client-date{color:#0000007a}.client-card--new .client-avatar,.client-card--active .client-avatar,.client-card--paused .client-avatar,.client-card--archived .client-avatar,.client-card--trash .client-avatar{background:var(--client-page-bg);color:#000}.client-card--completed .client-avatar{background:#0000001a;color:var(--text)}.client-card--add{background:transparent;border:1px dashed var(--border);color:var(--muted);align-items:center;justify-content:center}.client-card--add:hover{color:var(--text);border-color:var(--muted);box-shadow:none;transform:none;filter:none}.client-add-icon{font-size:84px;font-weight:200;line-height:1}.client-add-label{font-size:12px;font-weight:500}.client-card-top{display:flex;align-items:center;justify-content:space-between}.client-avatar{width:40px;height:40px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;font-size:14px;font-weight:700;flex-shrink:0}.client-avatar--new{background:var(--accent-warm);color:#fff}.client-avatar--paused{background:#b0a898;color:#fff}.client-avatar--archived{background:#c5c0ba;color:#fff}.client-avatar--trash{background:#c09090;color:#fff}.client-avatar--completed{background:var(--surface-2);color:var(--muted)}.client-card .client-avatar{background:#7faad2;color:#fff}.client-info{display:flex;flex-direction:column;gap:3px}.client-name{font-size:13px;font-weight:700;color:var(--text);line-height:1.2}.client-goal{font-size:12px;color:var(--muted)}.cinfo-macro-grid{margin-top:12px}.client-macros{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:calc(100% + 8px);margin:0 -4px;gap:6px}.client-macro{min-width:0;display:flex;flex-direction:column;align-items:center;gap:1px;text-align:center}.client-macro small{color:#00000075;font-size:9px;font-weight:700;line-height:1}.client-macro strong{color:#000000c7;font-size:11px;font-weight:780;line-height:1.15}.client-macro em{margin-left:1px;color:#00000073;font-size:9px;font-style:normal;font-weight:650}.client-linked-badge{font-size:8px;color:#4caf50;margin-left:5px;vertical-align:middle}.client-plan{display:inline-flex;align-items:center;gap:6px;margin-top:3px;font-size:10px;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--surface-2);color:var(--muted);width:fit-content}.client-plan--starter{background:#eef4f9;color:#4a7ba0}.client-plan--pro{background:#e8f1e9;color:#3f7a4d}.client-plan--max{background:#f5ede5;color:#9e6e45}.client-plan em{font-style:normal;font-weight:600;opacity:.7;border-left:1px solid currentColor;padding-left:6px}.client-status{font-size:10px;font-weight:600;padding:2px 7px;border-radius:999px;background:var(--accent-soft);color:var(--accent-dark)}.client-status--lead{background:#f5ede5;color:#9e6e45}.client-status--completed{background:var(--surface-2);color:var(--muted)}.client-date{font-size:11px;color:var(--muted);margin-top:auto}.client-profile-wrap{height:100%;overflow-y:auto;padding-top:var(--header-h)}.client-profile-scroll-fade{position:sticky;left:25%;width:75%;bottom:0;height:82px;margin-top:-82px;margin-left:25%;z-index:35;pointer-events:none;background:linear-gradient(to bottom,#fff0,#fffffff5 78%,#fff);animation:patientScrollFadeIn .2s ease both}.client-profile{display:flex;flex-direction:column;min-height:100%}.client-profile-wrap.is-profile-loading .client-profile{visibility:hidden;opacity:0;pointer-events:none}.client-profile-wrap.is-profile-ready .client-profile{visibility:visible;opacity:1;transition:opacity .12s ease-out}.client-profile-hero{display:flex;align-items:center;gap:18px}.client-profile-avatar{width:64px;height:64px;border-radius:50%;background:#7faad2;color:#fff;display:grid;place-items:center;font-size:22px;font-weight:700;flex-shrink:0}.client-profile-name{font-size:22px;font-weight:800;margin-bottom:4px}.client-profile-sub{font-size:14px;color:var(--muted)}.cinfo-profile-sub-status{min-height:18px;transition:color .18s ease,opacity .18s ease}.cinfo-profile-sub-status.is-saving{color:var(--muted)}.cinfo-profile-sub-status.is-saved{color:#1e8a4a}.cinfo-profile-sub-status.is-error{color:#d93025}.client-profile-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.client-profile-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;display:flex;flex-direction:column;gap:4px}.client-profile-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-profile-card strong{font-size:14px}.client-profile-field{display:flex;flex-direction:column;gap:7px;min-width:0;overflow:hidden}.client-profile-input{width:100%;box-sizing:border-box;height:40px;border:1.5px solid var(--border);border-radius:999px;background:var(--bg);color:var(--text);padding:0 12px;font:inherit;font-size:14px;outline:none;transition:border-color .15s;min-width:0}.client-profile-input:focus{border-color:var(--text)}.cinfo-date-picker{position:relative;min-width:0}.cinfo-date-display{display:flex;align-items:center;text-align:left;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;justify-content:flex-start}.cinfo-date-picker:focus-within .cinfo-date-display{border-color:var(--text)}.cinfo-date-popover{position:fixed;z-index:10011;box-sizing:border-box;min-height:326px;padding:14px;border:1.5px solid var(--border);border-radius:28px;background:#fff;box-shadow:0 18px 44px #0000002e}.cinfo-date-popover-head{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;gap:8px;margin-bottom:12px}.cinfo-date-popover-head strong{text-align:center;font-size:15px;line-height:1.2}.cinfo-date-popover-head button{width:34px;height:34px;border:0;border-radius:50%;background:var(--card);color:var(--text);font-size:24px;line-height:1;cursor:pointer}.cinfo-date-weekdays,.cinfo-date-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.cinfo-date-weekdays{margin-bottom:6px}.cinfo-date-weekdays span{color:var(--muted);font-size:11px;font-weight:800;text-align:center}.cinfo-date-days button,.cinfo-date-days span{width:100%;aspect-ratio:1}.cinfo-date-days button{border:0;border-radius:50%;background:transparent;color:var(--text);font:inherit;font-size:13px;font-weight:700;cursor:pointer}.cinfo-date-days button:hover{background:var(--card)}.cinfo-date-days button.is-selected{background:var(--text);color:#fff}.client-profile-textarea{min-height:140px;border:1.5px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);padding:12px;font:inherit;font-size:14px;line-height:1.6;resize:vertical;outline:none;transition:border-color .15s}.client-profile-textarea:focus{border-color:var(--text)}.client-profile-textarea--sm{min-height:70px}.forbidden-section{border-top:1px solid var(--border)}.client-info-tabs{position:relative;display:flex;border-bottom:2px solid var(--border);margin-bottom:20px}.client-info-tab-ind{position:absolute;bottom:-2px;height:2px;background:var(--accent);border-radius:999px;transition:left .2s cubic-bezier(.16,1,.3,1),width .2s cubic-bezier(.16,1,.3,1)}.client-info-tab{padding:8px 14px;border:none;background:transparent;font:inherit;font-size:13px;font-weight:500;color:var(--muted);cursor:pointer}.client-info-tab.active{color:var(--accent);font-weight:700}.client-info-form{display:flex;flex-direction:column;gap:14px}.cinfo-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cinfo-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.cinfo-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.cfield-hint{font-size:11px;color:var(--muted);margin-top:2px}.db-tabs{display:flex;gap:2px;background:transparent;border:1.5px solid var(--border);border-radius:999px;padding:5px;flex-shrink:0;transition:border-color .18s ease}.db-tab{display:flex;align-items:center;gap:5px;height:28px;padding:0 12px;border:none;border-radius:999px;background:transparent;font:inherit;font-size:12px;font-weight:600;color:var(--muted);cursor:pointer;white-space:nowrap;transition:background .28s ease,color .28s ease}.db-tab.active{background:#7faad2;color:#fff;font-weight:700}.db-tab:not(.active):hover{color:var(--text)}.db-tab-count{background:#0000001a;border-radius:999px;padding:0 6px;font-size:10px;font-weight:700}.db-tab.active .db-tab-count{background:#0000001a}.clients-back-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:auto;height:38px;padding:0 14px 0 12px;border:1px solid rgba(0,0,0,.12);border-radius:999px;background:transparent;font:inherit;font-size:13px;font-weight:700;color:#000;cursor:pointer;white-space:nowrap;transition:opacity .15s}.patient-workspace-shell .clients-back-btn{position:absolute;left:28px;top:50%;transform:translateY(-50%)}.clients-back-btn svg{width:16px;height:16px;flex-shrink:0}.clients-back-btn span{line-height:1}.clients-back-btn:hover{opacity:.85}.cinfo-section-label{font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#fff;line-height:1.1}.cinfo-block-header-row{display:flex;align-items:center;min-height:44px;padding-right:16px}.cinfo-block-header{flex:1;display:flex;align-items:center;gap:10px;height:44px;padding:0 20px;border:none;background:transparent;cursor:pointer;color:#fff;text-align:left;min-width:0}.cinfo-block-header:hover{background:transparent}.cinfo-collapse{display:grid;grid-template-rows:1fr;opacity:1;transition:grid-template-rows .42s cubic-bezier(.22,1,.36,1),opacity .28s cubic-bezier(.22,1,.36,1)}.cinfo-collapse.is-collapsed{grid-template-rows:0fr;opacity:0;pointer-events:none}.cinfo-collapse-inner{min-height:0;overflow:visible;transform:translateY(0);transition:transform .42s cubic-bezier(.22,1,.36,1)}.cinfo-collapse.is-collapsed .cinfo-collapse-inner{overflow:hidden;transform:translateY(-8px)}.cinfo-anthro-block{border-radius:24px;overflow:visible;box-sizing:border-box}.cinfo-anthro-body{position:relative;display:flex;flex-direction:column;gap:10px;padding:0 16px 16px}.cinfo-anthro-chart-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;width:100%;min-width:0}.cinfo-anthro-chart-card{min-width:0;aspect-ratio:1 / 1;height:auto;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:2px;padding:8px 7px 6px;border:1px solid rgba(0,0,0,.12);border-radius:22px;background:#fff;color:#000;overflow:hidden}.cinfo-anthro-chart-head{min-width:0;display:flex;align-items:flex-start;justify-content:flex-start;flex-direction:column;gap:4px}.cinfo-anthro-chart-head span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:700;text-transform:uppercase;color:#00000094}.cinfo-anthro-chart-head strong{display:inline-flex;align-items:baseline;gap:2px;font-size:clamp(11px,.95vw,14px);font-weight:720;line-height:1;font-variant-numeric:tabular-nums}.cinfo-anthro-chart-head small{font-size:8px;font-weight:650;color:#00000094}.cinfo-anthro-chart{width:calc(100% + 16px);height:100%;min-height:24px;margin:0 -8px;overflow:visible}.cinfo-anthro-chart path{fill:none;stroke:#111;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.cinfo-anthro-chart circle{fill:#111}.cinfo-anthro-chart-card>b{justify-self:start;max-width:100%;min-height:20px;padding:0 8px;border-radius:11px;background:var(--client-page-bg);color:#111;display:inline-flex;align-items:center;font-size:9.5px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}.cinfo-payments-body{display:flex;flex-direction:column;gap:8px;padding-bottom:16px}.cinfo-payments-add-btn{margin-top:4px}.cinfo-add-btn-row{width:100%;display:flex;justify-content:center;align-items:center}.cinfo-anthro-list{display:flex;flex-direction:column;gap:4px;padding:0 14px 14px}.cinfo-anthro-labels{display:flex;padding:4px 0 2px;gap:0;font-size:10px;font-weight:700;text-transform:uppercase;color:#000;letter-spacing:.04em}.cinfo-anthro-labels>span{flex:1;min-width:0}.cinfo-anthro-row{display:flex;align-items:center;background:#ffffff38;border-radius:999px;padding:8px 14px;cursor:pointer;color:#000;font-size:13px;font-weight:500;transition:background .12s}.cinfo-anthro-row:hover{background:#ffffff57}.cinfo-anthro-row.active{background:#ffffff6b;outline:1.5px solid var(--text)}.cinfo-anthro-row>span{flex:1;min-width:0}.cinfo-anthro-form{display:flex;flex-direction:column;gap:8px}.cinfo-anthro-table-head{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));column-gap:8px;padding:0 14px;color:#0000008a;font-size:10px;font-weight:760;line-height:1;text-transform:uppercase}.cinfo-anthro-table-head span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cinfo-anthro-entry-card{display:flex;flex-direction:column;gap:0;padding:0;border:1px solid rgba(0,0,0,.18);border-radius:23px;background:#ffffff2e;overflow:hidden;transition:background .18s ease,border-color .18s ease}.cinfo-anthro-entry-card.is-dirty{border-color:#0000008a;background:#ffffff47}.cinfo-anthro-entry-header{width:100%;min-height:38px;display:block;align-items:center;padding:0 14px;border:none;border-radius:23px;background:transparent;color:#000;cursor:pointer;text-align:left;transition:opacity .18s ease,border-color .18s ease}.cinfo-anthro-entry-header:hover{background:transparent;opacity:.86}.cinfo-anthro-entry-header .cinfo-anthro-summary{min-width:0;font-size:12px;font-weight:500;line-height:1.15;color:#000;text-transform:uppercase}.cinfo-anthro-summary{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));align-items:center;column-gap:8px;overflow:hidden}.cinfo-anthro-summary strong{font-size:12px;font-weight:720;line-height:1;white-space:nowrap;font-variant-numeric:tabular-nums}.cinfo-anthro-summary>b{font-weight:720;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cinfo-anthro-add-btn{width:72px;height:72px;min-height:72px;display:grid;align-items:center;justify-content:center;align-self:center;margin-top:4px;padding:0;border:1px solid rgba(0,0,0,.12);border-radius:50%;background:#fff;color:#000;font:inherit;font-size:48px;font-weight:400;line-height:1;cursor:pointer;transition:border-color .16s ease,transform .16s ease}.cinfo-anthro-add-btn:hover{border-color:#00000038;transform:translateY(-1px)}.cinfo-anthro-add-btn:disabled{opacity:.42;cursor:default}.cinfo-anthro-add-btn:disabled:hover{border-color:#0000001f;transform:none}.cinfo-anthro-block .client-profile-label{color:#000}.cinfo-payments-block{border-radius:24px;overflow:hidden;box-sizing:border-box;display:flex;flex-direction:column}.cinfo-payments-block .client-profile-label{color:#000}.cinfo-payments-list{padding:0 16px 16px;display:flex;flex-direction:column;gap:4px}.cinfo-payments-table{display:flex;flex-direction:column;gap:4px;padding:0 14px 14px}.cinfo-payments-labels,.cinfo-payment-entry-row{display:grid;grid-template-columns:minmax(84px,.72fr) minmax(86px,.68fr) minmax(64px,.52fr) minmax(0,2.2fr);column-gap:8px;align-items:center}.cinfo-payments-labels{padding:0 14px;color:#0000008a;font-size:10px;font-weight:760;line-height:1;text-transform:uppercase}.cinfo-payments-labels span,.cinfo-payment-entry-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cinfo-payment-entry-card{border:1px solid rgba(0,0,0,.18);border-radius:23px;background:#ffffff2e;overflow:hidden;transition:background .18s ease,border-color .18s ease}.cinfo-payment-entry-card.active{border-color:#0000008a;background:#ffffff47}.cinfo-payment-entry-row{min-height:38px;padding:0 14px;color:#000;cursor:pointer;font-size:12px;font-weight:720;line-height:1;font-variant-numeric:tabular-nums;transition:opacity .18s ease}.cinfo-payment-entry-row:hover{opacity:.86}.cinfo-payments-block .client-profile-input{background-color:transparent!important;border-color:#00000047!important;color:#000000c7!important;color-scheme:light}.cinfo-payments-block .client-profile-input::placeholder{color:#00000094!important}.cinfo-payments-block .client-profile-input:focus{border-color:#00000085!important}.cinfo-payments-status{margin:0 16px;padding:9px 12px;border-radius:12px;background:#ffffff57;color:#000000b8;font-size:13px;font-weight:700}.cinfo-payments-status--error{color:#8a1f1f;background:#ff787829}.cinfo-payment-popover{width:min(520px,calc(100vw - 24px));gap:8px;padding:10px}.cinfo-payment-popover .cinfo-lab-edit-header{grid-template-columns:minmax(0,1fr) 92px}.cinfo-payment-popover .cinfo-payment-edit-header{grid-template-columns:92px;justify-content:end}.cinfo-payment-popover .cinfo-lab-edit-header>strong{min-width:0;padding-left:14px;color:#000;font-size:14px;font-weight:760;line-height:1}.cinfo-payment-popover .cinfo-payment-form{display:grid;gap:8px}.cinfo-payment-popover .cinfo-grid-3{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 92px;gap:8px;align-items:end}.cinfo-payment-popover .cinfo-grid-3 .client-profile-field:nth-child(4){grid-column:1 / -1}.cinfo-payment-popover .client-profile-field{display:flex;flex-direction:column;gap:4px;margin:0}.cinfo-payment-popover .client-profile-label{display:block;padding-left:0;color:#00000094;font-size:10px;font-weight:760;line-height:1;text-align:center;text-transform:uppercase;letter-spacing:0}.cinfo-lab-edit-popover.cinfo-payment-popover .client-profile-label{display:block}.cinfo-payment-popover .cinfo-grid-3>.client-profile-field:nth-child(-n+2) .client-profile-label{display:none}.cinfo-payment-inline-actions{display:flex;align-items:center;gap:8px;height:42px}.cinfo-payment-inline-actions button{width:42px;height:42px;display:grid;place-items:center;padding:0;border:1px solid rgba(0,0,0,.14);border-radius:50%;background:#ffffffa3;color:#000;cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .16s ease}.cinfo-payment-inline-actions button:hover{background:#ffffffd1;border-color:#0000003d;transform:translateY(-1px)}.cinfo-payment-inline-actions svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.cinfo-payment-popover .client-profile-input,.cinfo-payment-popover .cinfo-date-display{height:38px;min-height:38px;background:#ffffffa3!important;border-radius:999px;padding-inline:18px}.cinfo-payment-popover .cinfo-date-display{justify-content:center;text-align:center}.cinfo-payment-popover .cinfo-payment-amount-input{text-align:center;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.cinfo-payment-popover .cinfo-payment-amount-input::-webkit-outer-spin-button,.cinfo-payment-popover .cinfo-payment-amount-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.cinfo-payment-months{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;min-height:38px;padding:4px;border:1px solid rgba(0,0,0,.28);border-radius:999px;background:transparent;position:relative;overflow:hidden}.cinfo-payment-months:before{content:"";position:absolute;z-index:0;top:4px;bottom:4px;left:4px;width:calc((100% - 8px) / 3);border-radius:999px;background:#7faad2;opacity:0;transform:translate(0);transition:transform .28s cubic-bezier(.22,1,.36,1),opacity .18s ease}.cinfo-payment-months.is-active-0:before{opacity:1;transform:translate(0)}.cinfo-payment-months.is-active-1:before{opacity:1;transform:translate(100%)}.cinfo-payment-months.is-active-2:before{opacity:1;transform:translate(200%)}.cinfo-payment-month{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;border:none;border-radius:999px;background:transparent;color:#000000ad;font-size:13px;font-weight:500;cursor:pointer;transition:background .18s ease,color .18s ease,font-weight .18s ease}.cinfo-payment-month.active{background:transparent;color:#fff;font-weight:800}.cinfo-payment-month:not(.active):hover{background:#ffffff47;color:#000}.cinfo-payments-header{display:flex;align-items:center;justify-content:space-between}.cinfo-payment-form{display:flex;flex-direction:column;gap:10px}.cinfo-payments-list{display:flex;flex-direction:column;gap:6px}.cinfo-payment-row{display:flex;flex-direction:column;gap:4px;background:#ffffff2e;border-radius:12px;padding:8px 12px;font-size:13px;color:#fff}.cinfo-payment-row--edit{background:#ffffff14}.cinfo-payment-line1{display:flex;align-items:center;gap:10px}.cinfo-payment-amount{font-weight:700;font-size:15px}.cinfo-payment-comment{color:#ffffffb3;font-size:12px}.cinfo-two-col{display:flex;align-items:flex-start}.cinfo-two-col>.client-info-form:first-child{flex:0 0 25%;position:sticky;top:0;height:calc(100vh - var(--header-h));max-height:calc(100vh - var(--header-h));overflow-y:auto;padding:24px 20px;box-sizing:border-box}.cinfo-right-col{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px;margin:16px 20px 20px 16px}.forbidden-body{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 20px 20px}.cinfo-right-card,.cinfo-anthro-block,.cinfo-payments-block{flex:0 0 auto;min-width:0;padding:0;gap:0;background:#f2f2f7;backdrop-filter:blur(18px) saturate(1.18);-webkit-backdrop-filter:blur(18px) saturate(1.18);border-radius:24px;border:1px solid rgba(0,0,0,.04);overflow:hidden;box-sizing:border-box;color:#000;box-shadow:none;position:relative}.cinfo-right-card:before,.cinfo-anthro-block:before,.cinfo-payments-block:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:#ffffff47;opacity:0;transition:opacity .34s cubic-bezier(.22,1,.36,1)}.cinfo-right-card:hover:before,.cinfo-anthro-block:hover:before,.cinfo-payments-block:hover:before{opacity:1}.cinfo-right-card>*,.cinfo-anthro-block>*,.cinfo-payments-block>*{position:relative;z-index:1}.cinfo-details-body{display:flex;flex-direction:column;gap:14px;padding:0 20px 20px}.cinfo-right-card .cinfo-block-header,.cinfo-anthro-block .cinfo-block-header,.cinfo-payments-block .cinfo-block-header{height:44px;padding:0 18px;color:#000}.cinfo-right-card .cinfo-block-header:hover,.cinfo-anthro-block .cinfo-block-header:hover,.cinfo-payments-block .cinfo-block-header:hover{background:transparent}.cinfo-right-card .cinfo-section-label,.cinfo-anthro-block .cinfo-section-label,.cinfo-payments-block .cinfo-section-label{color:#000}.cinfo-right-card .cinfo-block-header svg,.cinfo-anthro-block .cinfo-block-header svg,.cinfo-payments-block .cinfo-block-header svg{stroke:#000!important}.cinfo-right-card .client-profile-label{color:#000}.cinfo-right-card .cfield-hint{color:#0000009e;display:none}.cinfo-right-card .client-profile-input{background-color:transparent!important;border-color:#00000047!important;color:#000000c7!important;color-scheme:light;backdrop-filter:none;-webkit-backdrop-filter:none}.cinfo-right-card .client-profile-input::placeholder{color:#00000094!important}.cinfo-right-card .client-profile-input:focus{border-color:#00000085!important}.cinfo-right-card input[type=number].client-profile-input{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.cinfo-right-card input[type=number].client-profile-input::-webkit-outer-spin-button,.cinfo-right-card input[type=number].client-profile-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.cinfo-right-card .client-profile-textarea{background-color:transparent!important;border-color:#00000047!important;color:#000000c7!important;backdrop-filter:none;-webkit-backdrop-filter:none}.cinfo-right-card .client-profile-textarea::placeholder{color:#00000094!important}.cinfo-right-card .client-profile-textarea:focus{border-color:#00000085!important}.cinfo-right-card select.client-profile-input option{background:#fff;color:#000}.cinfo-right-card select.client-profile-input,.cinfo-payments-block select.client-profile-input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 10px center!important;background-size:16px!important}.cinfo-right-card select.client-profile-input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important}.cinfo-left-centered{justify-content:flex-start}.cinfo-left-grid{display:flex;flex-direction:column;gap:14px;width:100%}.cinfo-left-grid .cinfo-grid-2{gap:12px}.cinfo-supervision-field{gap:7px}.cinfo-supervision-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 58px;align-items:end;gap:8px}.cinfo-supervision-grid .client-profile-field{min-width:0}.cinfo-supervision-grid .client-profile-label{text-align:left;font-size:10px}.cinfo-supervision-grid .cinfo-date-display{justify-content:center;text-align:center;padding-left:8px;padding-right:8px;font-variant-numeric:tabular-nums}.cinfo-supervision-count{padding-left:6px;padding-right:6px;text-align:center;font-variant-numeric:tabular-nums;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.cinfo-supervision-count::-webkit-outer-spin-button,.cinfo-supervision-count::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.cinfo-left-grid .client-profile-input,.cinfo-left-grid .client-profile-textarea{border-color:#00000047}.cinfo-left-grid .client-profile-input:focus,.cinfo-left-grid .client-profile-textarea:focus{border-color:#00000085}.cinfo-number-plain{text-align:center;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.cinfo-number-plain::-webkit-outer-spin-button,.cinfo-number-plain::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.cinfo-completion{display:flex;flex-direction:column;gap:6px;padding:0 2px}.cinfo-completion-head{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:11px;font-weight:700;line-height:1;text-transform:uppercase;letter-spacing:.04em}.cinfo-completion-head b{color:var(--muted);font-size:11px;font-weight:700;font-variant-numeric:tabular-nums}.cinfo-completion-track{height:3px;overflow:hidden;border-radius:999px;background:#0000001f}.cinfo-completion-track span{display:block;height:100%;border-radius:inherit;background:#000;transition:width .22s cubic-bezier(.22,1,.36,1)}.cinfo-status-tabs{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;height:40px;padding:3px;border:1.5px solid rgba(0,0,0,.28);border-radius:999px;background:transparent;box-sizing:border-box;overflow:hidden}.cinfo-status-tabs:before{content:"";position:absolute;top:3px;bottom:3px;left:3px;width:calc((100% - 6px)/5);border-radius:999px;background:#7faad2;opacity:0;transform:translate(0);transition:transform .38s cubic-bezier(.22,1,.36,1),opacity .18s ease;will-change:transform}.cinfo-status-tabs.is-active-1:before{background:#1e8a4a}.cinfo-status-tabs.is-active-0:before{opacity:1;transform:translate(0)}.cinfo-status-tabs.is-active-1:before{opacity:1;transform:translate(100%)}.cinfo-status-tabs.is-active-2:before{opacity:1;transform:translate(200%)}.cinfo-status-tabs.is-active-3:before{opacity:1;transform:translate(300%)}.cinfo-status-tabs.is-active-4:before{opacity:1;transform:translate(400%)}.cinfo-status-tab{position:relative;z-index:1;min-width:0;display:grid;place-items:center;padding:0;border:none;border-radius:999px;background:transparent;color:#000;cursor:pointer;transition:color .2s ease}.cinfo-status-tab--play{color:#1e8a4a}.cinfo-status-tab:hover{color:#000}.cinfo-status-tab.active{background:transparent;color:#fff}.cinfo-status-tab svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.cinfo-status-new{display:inline-flex;align-items:center;justify-content:center;color:currentColor;font-size:11px;font-weight:850;line-height:1;letter-spacing:0}.cinfo-segmented{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:3px;height:40px;padding:3px;border-radius:999px;background:transparent;border:1.5px solid rgba(0,0,0,.28);box-sizing:border-box;overflow:hidden}.cinfo-segmented:before{content:"";position:absolute;top:3px;bottom:3px;left:3px;width:calc(50% - 4.5px);border-radius:999px;background:#7faad2;box-shadow:none;transform:translate(0);opacity:0;transition:opacity .16s ease,transform .38s cubic-bezier(.22,1,.36,1);will-change:transform}.cinfo-segmented.has-active:before{opacity:1}.cinfo-segmented.is-active-1:before{transform:translate(calc(100% + 3px))}.cinfo-segment{position:relative;z-index:1;border:none;border-radius:999px;background:transparent;color:var(--muted);font:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:color .2s,font-weight .2s}.cinfo-segment.active{background:transparent;color:#fff;-webkit-text-fill-color:#fff;font-weight:800}.cinfo-segment:not(.active):hover{color:var(--text)}.cinfo-choice-switch{--choice-count: 3;position:relative;display:grid;grid-template-columns:repeat(var(--choice-count),1fr);gap:3px;height:40px;padding:3px;border-radius:999px;border:1.5px solid rgba(0,0,0,.28);background:transparent;box-sizing:border-box;overflow:hidden}.cinfo-choice-switch.cols-2{--choice-count: 2}.cinfo-choice-switch.cols-3{--choice-count: 3}.cinfo-choice-switch:before{content:"";position:absolute;top:3px;bottom:3px;left:3px;width:calc((100% - 6px) / var(--choice-count));border-radius:999px;background:#7faad2;box-shadow:none;opacity:0;transform:translate(0);transition:transform .38s cubic-bezier(.22,1,.36,1),opacity .18s ease;will-change:transform}.cinfo-choice-switch.is-active-0:before{opacity:1;transform:translate(0)}.cinfo-choice-switch.is-active-1:before{opacity:1;transform:translate(100%)}.cinfo-choice-switch.is-active-2:before{opacity:1;transform:translate(200%)}.cinfo-choice-option{position:relative;z-index:1;border:none;border-radius:999px;background:transparent;color:#00000094;font:inherit;font-size:12px;font-weight:500;cursor:pointer;transition:color .2s,font-weight .2s;white-space:nowrap;min-width:0}.cinfo-choice-option.active{color:#fff;font-weight:800}.cinfo-choice-option:not(.active):hover{color:#000000c7}.cinfo-sub-label{grid-column:1 / -1;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#ffffff8c;padding:8px 0 2px;border-top:1px solid rgba(255,255,255,.12);margin-top:4px}.cinfo-right-card .cinfo-sub-label{color:#000;border-top-color:#00000024}.cinfo-sub-label:first-child{border-top:none;margin-top:0}.cinfo-meal-grid{display:flex;flex-direction:column;gap:12px}.cinfo-meal-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cinfo-meal-card{display:flex;flex-direction:column;gap:10px;min-width:0}.cinfo-meal-card .cinfo-sub-label{padding-top:0;margin-top:0;border-top:none}.cinfo-lab-list{display:flex;flex-direction:column;gap:8px}.cinfo-lab-capsule-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;align-items:center}.cinfo-lab-item{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:10px;min-width:0;min-height:70px;background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:999px;padding:6px 14px 6px 6px;transition:border-color .16s ease,background .16s ease,transform .16s ease}.cinfo-lab-item:hover{background:#fff;border-color:#0003;transform:translateY(-1px)}.cinfo-lab-item.is-editing,.cinfo-lab-item.is-editing:hover{background:#fff;border-color:#000!important;box-shadow:0 0 0 1px #000;transform:none;transition:border-color .24s ease,box-shadow .24s ease,background-color .24s ease,transform .24s ease}.cinfo-lab-info{display:flex;flex-direction:column;gap:2px;min-width:0}.cinfo-lab-type{font-size:10px;color:#00000094;text-transform:uppercase;letter-spacing:.05em}.cinfo-lab-name{font-size:13px;color:#000;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cinfo-lab-date{font-size:11px;color:#00000094}.cinfo-lab-capsule-info{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:2px;padding:0;border:none;background:transparent;text-align:left;cursor:pointer}.cinfo-lab-actions{display:flex;gap:6px;align-items:center}.cinfo-lab-btn{background:#ffffff26;border:none;border-radius:6px;color:#fff;font-size:14px;cursor:pointer;padding:3px 8px;text-decoration:none;display:flex;align-items:center}.cinfo-lab-btn:hover{background:#ffffff40}.cinfo-lab-remove{color:#ff7878e6;font-size:18px;line-height:1}.cinfo-lab-add-form{display:flex;flex-direction:column;gap:10px}.cinfo-lab-add-capsule{display:grid;grid-template-columns:minmax(150px,1.05fr) minmax(170px,1.25fr) minmax(120px,.9fr) 42px;gap:8px;align-items:center;padding:12px;border:1px solid rgba(0,0,0,.18);border-radius:18px;background:#ffffff1f}.cinfo-lab-add-capsule .client-profile-input{height:36px;min-height:36px}.cinfo-lab-file-input{display:none}.cinfo-lab-attach-btn{width:36px;height:36px;display:grid;place-items:center;border:1px solid rgba(0,0,0,.18);border-radius:50%;background:#d5c3b37a;color:#000;cursor:pointer;transition:background .18s ease,border-color .18s ease}.cinfo-lab-attach-btn:hover{background:#dac9ba9e;border-color:#00000038}.cinfo-lab-attach-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.cinfo-lab-preview-row{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:8px}.cinfo-lab-preview-card{width:74px;height:74px;display:grid;place-items:center;padding:0;border:none;border-radius:12px;background:#9b9b9b;color:#000;overflow:hidden;cursor:pointer;position:relative}.cinfo-lab-preview-card img{width:100%;height:100%;object-fit:cover;border-radius:0}.cinfo-lab-preview-card span{width:100%;height:100%;display:grid;place-items:center;border-radius:0;background:#9b9b9b;color:#fff;font-size:18px;font-weight:800;letter-spacing:0}.cinfo-lab-preview-card em:not(.cinfo-lab-format-badge){position:absolute;left:4px;right:4px;bottom:4px;padding:2px 4px;border-radius:999px;background:#ffffffe0;color:#000000b8;font-size:9px;font-style:normal;font-weight:800;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cinfo-lab-format-badge{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;min-width:0;padding:0;border-radius:inherit;background:transparent;color:#000;font-size:18px;font-style:normal;font-weight:900;line-height:1;letter-spacing:0}.cinfo-lab-saved-preview{width:58px;height:58px;border-radius:50%}.cinfo-lab-status{padding:9px 12px;border-radius:12px;background:#ffffff57;color:#000000b8;font-size:13px;font-weight:700}.cinfo-lab-status--error{color:#8a1f1f;background:#ff787829}.cinfo-lab-form-btns{display:grid;grid-template-columns:1fr 1fr;gap:8px;grid-column:1 / -1}.cinfo-lab-edit-form{grid-column:1 / -1;display:grid;grid-template-columns:1fr;gap:7px;padding:4px}.cinfo-lab-edit-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10008;background:transparent}.cinfo-lab-edit-halo{position:fixed;z-index:10009;width:min(780px,100vw);height:360px;pointer-events:none;border-radius:86px;background:radial-gradient(ellipse at 50% 50%,#ffffff94,#ffffff4d 36%,#e8e8ee24 60%,#e8e8ee00 82%),linear-gradient(135deg,#ffffff29,#dcdce40f);backdrop-filter:blur(10px) saturate(1.08);-webkit-backdrop-filter:blur(10px) saturate(1.08);mask-image:radial-gradient(ellipse at 50% 50%,#000 0%,rgba(0,0,0,.92) 38%,rgba(0,0,0,.42) 64%,transparent 84%);-webkit-mask-image:radial-gradient(ellipse at 50% 50%,#000 0%,rgba(0,0,0,.92) 38%,rgba(0,0,0,.42) 64%,transparent 84%);animation:cinfo-lab-edit-halo-in .15s ease-out both}.cinfo-lab-edit-halo.is-closing{animation:cinfo-lab-edit-halo-out .15s ease-in both}.cinfo-lab-edit-popover{position:fixed;z-index:10010;width:min(400px,calc(100vw - 24px));display:grid;gap:10px;padding:12px;border:1px solid var(--border);border-radius:32px;background:var(--surface);box-shadow:0 8px 28px #00000024;animation:cinfo-lab-popover-in .14s ease-out both}.cinfo-lab-edit-popover.is-closing{pointer-events:none;animation:cinfo-lab-popover-out .15s ease-in both}.cinfo-lab-edit-header{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:10px;align-items:center}.cinfo-lab-add-popover .cinfo-lab-edit-header{grid-template-columns:minmax(0,1fr) 142px}.cinfo-anthro-add-popover{width:min(360px,calc(100vw - 24px));max-height:calc(100vh - 20px);overflow:auto;gap:8px;padding:10px}.cinfo-anthro-add-popover .cinfo-lab-edit-header{grid-template-columns:minmax(0,1fr) 92px;align-items:center}.cinfo-anthro-add-popover .cinfo-lab-edit-header .client-profile-label{display:none}.cinfo-anthro-popover-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.cinfo-anthro-popover-grid .client-profile-field:first-child{grid-column:1 / -1}.cinfo-lab-edit-main-row{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:10px;align-items:center}.cinfo-lab-edit-popover .client-profile-field{margin:0}.cinfo-lab-edit-popover .client-profile-label{display:none}.cinfo-anthro-add-popover .client-profile-field{display:flex;flex-direction:column;gap:4px}.cinfo-anthro-add-popover .client-profile-label{display:block;padding-left:0;color:#00000094;font-size:10px;font-weight:760;line-height:1;text-align:center;text-transform:uppercase;letter-spacing:0}.cinfo-lab-edit-popover .client-profile-input,.cinfo-lab-edit-popover .cinfo-date-display{height:42px;min-height:42px;background:#ffffffa3!important;border-radius:999px;padding-inline:24px}.cinfo-anthro-add-popover .client-profile-input,.cinfo-anthro-add-popover .cinfo-date-display{height:38px;min-height:38px;padding-inline:18px}.cinfo-anthro-number-control{height:38px;min-height:38px;display:grid;grid-template-columns:28px minmax(0,1fr) 28px;align-items:center;gap:6px;padding:0 5px;border:1px solid rgba(0,0,0,.14);border-radius:999px;background:#ffffffa3}.cinfo-anthro-number-control button{width:28px;height:28px;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:50%;background:#e5e5eac7;color:#000;font:inherit;font-size:24px;font-weight:500;line-height:1;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .15s ease}.cinfo-anthro-number-control button.is-minus,.cinfo-anthro-number-control button.is-plus{font-size:24px;padding-bottom:2px}.cinfo-anthro-number-control button:hover{background:#dadae0e6;transform:translateY(-1px)}.cinfo-anthro-number-control .client-profile-input{width:100%;height:34px;min-height:34px;padding-inline:4px;border:none!important;background:transparent!important;text-align:center;font-variant-numeric:tabular-nums}.cinfo-anthro-number-control .client-profile-input:focus{border:none!important;box-shadow:none;outline:none}.cinfo-anthro-number-control input[type=number]::-webkit-outer-spin-button,.cinfo-anthro-number-control input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.cinfo-anthro-number-control input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.cinfo-anthro-add-popover .cinfo-lab-edit-header .cinfo-date-display{justify-content:center;text-align:center}.cinfo-lab-edit-main-row .cinfo-date-display{justify-content:center;padding-inline:8px;font-size:13px}.cinfo-lab-edit-popover select.client-profile-input{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:44px!important;background-color:#ffffffa3!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 18px center!important;background-size:18px 18px!important}.cinfo-lab-edit-form .client-profile-input{height:34px;min-height:34px;background:#ffffff85!important}.cinfo-lab-edit-actions{display:flex;align-items:center;gap:8px;width:92px}.cinfo-lab-edit-actions--attach{width:142px}.cinfo-lab-edit-actions button{width:42px;height:42px;display:grid;place-items:center;padding:0;border:1.5px solid rgba(0,0,0,.16);border-radius:50%;background:#ffffffb8;color:#000;font:inherit;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .15s ease}.cinfo-lab-edit-actions button:hover{background:#fff;border-color:#0000003d;transform:translateY(-1px)}.cinfo-lab-edit-actions svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.35;stroke-linecap:round;stroke-linejoin:round}.cinfo-lab-add-capsule .cinfo-lab-cancel-btn,.cinfo-lab-add-capsule .cinfo-lab-save-btn{min-height:36px;margin-top:0}.cinfo-lab-add-capsule .cinfo-lab-cancel-btn,.cinfo-lab-add-capsule .cinfo-lab-save-btn{background:transparent;border-color:#00000038}.cinfo-lab-add-capsule .cinfo-lab-cancel-btn:hover,.cinfo-lab-add-capsule .cinfo-lab-save-btn:hover{background:transparent;border-color:#00000057}.cinfo-lab-add-btn-main{width:72px;height:72px;justify-self:start;align-self:center;display:grid;place-items:center;padding:0;border:1px solid rgba(0,0,0,.12);border-radius:50%;background:#fff;color:#000;font:inherit;font-size:48px;font-weight:400;line-height:1;cursor:pointer;transition:border-color .16s ease,transform .16s ease}.cinfo-lab-add-btn-main.is-empty{grid-column:1 / -1;justify-self:center}.cinfo-lab-add-btn-main:hover{border-color:#00000038;transform:translateY(-1px)}.cinfo-lab-add-btn-main:disabled{opacity:.42;cursor:default}.cinfo-lab-add-btn-main:disabled:hover{border-color:#0000001f;transform:none}.cinfo-lab-preview-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:grid;place-items:center;padding:28px;background:#000000d6;backdrop-filter:blur(18px) saturate(.92);-webkit-backdrop-filter:blur(18px) saturate(.92);animation:cinfo-lab-backdrop-in .18s ease-out both}.cinfo-lab-preview-modal.is-closing{pointer-events:none;animation:cinfo-lab-backdrop-out .22s ease-in .11s both}.cinfo-lab-preview-dialog{--lab-preview-radius: 28px;position:relative;width:min(1100px,96vw);height:92vh;display:block;padding:0;border-radius:var(--lab-preview-radius);background:transparent;box-shadow:0 34px 110px #00000094,0 12px 34px #00000057;overflow:hidden;animation:cinfo-lab-dialog-in .22s cubic-bezier(.16,1,.3,1) .11s both}.cinfo-lab-preview-modal.is-closing .cinfo-lab-preview-dialog{animation:cinfo-lab-dialog-out .17s ease-in both}.cinfo-lab-preview-header{position:absolute;inset:0 0 auto 0;z-index:2;height:54px;box-sizing:border-box;display:grid;grid-template-columns:92px minmax(0,1fr) 92px;align-items:center;gap:10px;padding:8px;border:none;border-bottom:1px solid rgba(0,0,0,.08);border-radius:var(--lab-preview-radius) var(--lab-preview-radius) 0 0;background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none;color:#000;box-shadow:none}.cinfo-lab-preview-actions{display:flex;align-items:center;gap:6px}.cinfo-lab-preview-title{min-width:0;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:8px;color:#000;text-align:center}.cinfo-lab-preview-title strong,.cinfo-lab-preview-title span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cinfo-lab-preview-title strong{font-size:16px;font-weight:800}.cinfo-lab-preview-title span{font-size:16px;font-weight:500;letter-spacing:0;text-transform:none;color:#00000094}.cinfo-lab-preview-content{width:100%;height:100%;min-height:0;overflow:auto;border:none;border-radius:var(--lab-preview-radius);background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}.cinfo-lab-image-stage{min-width:100%;min-height:100%;display:flex;align-items:center;justify-content:center;padding:76px 24px 24px;box-sizing:border-box}.cinfo-lab-preview-content img{display:block;min-width:auto;max-width:min(100%,1000px);height:auto;margin:auto;border:none;outline:none;border-radius:0;object-fit:contain;background:#fff;transform-origin:center center;transition:transform .18s ease}.cinfo-lab-preview-frame-stage{min-width:100%;min-height:100%;transform-origin:top left;transition:width .18s ease,height .18s ease}.cinfo-lab-preview-content iframe{display:block;border:none;outline:none;border-radius:0;object-fit:contain;background:#fff;transform-origin:top left;transition:transform .18s ease}.cinfo-lab-preview-close{width:38px;height:38px;justify-self:end;margin-top:0;border:1px solid rgba(0,0,0,.12);border-radius:50%;background:transparent;color:#000;font-size:32px;font-weight:500;line-height:34px;cursor:pointer;z-index:1;transition:opacity .15s;display:grid;place-items:center;padding:0 0 2px}.cinfo-lab-preview-tool{width:32px;height:32px;display:grid;place-items:center;border:1.5px solid rgba(0,0,0,.18);border-radius:50%;background:#ffffffb3;color:#000;cursor:pointer;text-decoration:none}.cinfo-lab-preview-tool:hover,.cinfo-lab-preview-close:hover{opacity:.85}.cinfo-lab-preview-tool svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.cinfo-lab-zoom-control{display:inline-flex;overflow:hidden;height:38px;border:1px solid rgba(0,0,0,.12);border-radius:999px;background:transparent;transition:opacity .15s;align-items:stretch}.cinfo-lab-zoom-control button{width:44px;height:38px;display:grid;place-items:center;padding:0 0 2px;border:none;background:transparent;color:#000;font:inherit;font-size:30px;font-weight:500;line-height:1;cursor:pointer}.cinfo-lab-zoom-control button+button{border-left:1px solid rgba(0,0,0,.12)}.cinfo-lab-zoom-control button:hover{opacity:.85}.cinfo-lab-zoom-control button:disabled{opacity:.35;cursor:default}.cinfo-lab-preview-empty{flex:1;display:grid;place-items:center;width:100%;height:100%;border-radius:var(--radius);background:#0000000a;color:#000;font-weight:700}.cinfo-lab-preview-download{align-content:center;gap:10px;text-align:center}.cinfo-lab-preview-download span{font-size:34px;font-weight:900}.cinfo-lab-preview-download strong{max-width:min(520px,78vw);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cinfo-lab-preview-download button{height:42px;padding:0 22px;border:1px solid rgba(0,0,0,.16);border-radius:999px;background:#fff;color:#000;font:inherit;font-weight:800;cursor:pointer}.cinfo-lab-preview-download button:hover{border-color:#00000047}.cinfo-lab-context-menu{z-index:10020;min-width:170px}.cinfo-lab-context-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10019;background:transparent}.cinfo-lab-context-menu button svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2;flex-shrink:0}@keyframes cinfo-lab-backdrop-in{0%{opacity:0;backdrop-filter:blur(0) saturate(1);-webkit-backdrop-filter:blur(0) saturate(1)}to{opacity:1;backdrop-filter:blur(18px) saturate(.92);-webkit-backdrop-filter:blur(18px) saturate(.92)}}@keyframes cinfo-lab-backdrop-out{0%{opacity:1;backdrop-filter:blur(18px) saturate(.92);-webkit-backdrop-filter:blur(18px) saturate(.92)}to{opacity:0;backdrop-filter:blur(0) saturate(1);-webkit-backdrop-filter:blur(0) saturate(1)}}@keyframes cinfo-lab-dialog-in{0%{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes cinfo-lab-dialog-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(10px) scale(.985)}}@keyframes cinfo-lab-edit-halo-in{0%{opacity:0;backdrop-filter:blur(0) saturate(1);-webkit-backdrop-filter:blur(0) saturate(1);transform:scale(.96)}to{opacity:1;backdrop-filter:blur(10px) saturate(1.08);-webkit-backdrop-filter:blur(10px) saturate(1.08);transform:scale(1)}}@keyframes cinfo-lab-edit-halo-out{0%{opacity:1;backdrop-filter:blur(10px) saturate(1.08);-webkit-backdrop-filter:blur(10px) saturate(1.08);transform:scale(1)}to{opacity:0;backdrop-filter:blur(0) saturate(1);-webkit-backdrop-filter:blur(0) saturate(1);transform:scale(.96)}}@keyframes cinfo-lab-popover-in{0%{opacity:0;transform:translateY(6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes cinfo-lab-popover-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(6px) scale(.98)}}@media (max-width: 720px){.cinfo-lab-preview-modal{padding:14px}.cinfo-lab-preview-dialog{width:100%;height:min(760px,94vh)}.cinfo-lab-preview-header{grid-template-columns:auto minmax(0,1fr) auto;gap:8px;height:50px;padding:6px}.cinfo-lab-preview-title strong{font-size:12px}.cinfo-lab-preview-tool{width:30px;height:30px}}.cinfo-add-btn{width:100%;padding:8px;background:#ffffff1a;border:1px dashed rgba(255,255,255,.3);border-radius:8px;color:#ffffffb3;font-size:13px;cursor:pointer}.cinfo-add-btn:hover{background:#ffffff2e}.cinfo-placeholder-text{font-size:13px;color:#000;line-height:1.6}select.client-profile-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:16px;padding-right:32px;cursor:pointer}.cinfo-select-dropdown{width:100%}.cinfo-select-field{overflow:visible;position:relative}.cinfo-select-field.is-open{z-index:220}.cinfo-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;text-align:left;cursor:pointer}.cinfo-select-trigger span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cinfo-select-chevron{width:16px;height:16px;flex:0 0 auto;background:center / 16px 16px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}.cinfo-select-menu{width:100%;min-width:100%;max-height:260px;z-index:240}.cinfo-right-card:has(.cinfo-select-field.is-open){overflow:visible;z-index:260}.cinfo-right-card .cinfo-select-menu{background:#fff;border-color:#0000002e}.cinfo-right-card .cinfo-select-menu button{color:#000}.cinfo-right-card .cinfo-select-menu button:hover{background:#0000000f}.forbidden-block{display:flex;flex-direction:column;background:transparent;margin:0 -20px}.forbidden-title{margin:0 20px 10px}.forbidden-block .client-profile-field,.forbidden-body,.forbidden-block .cinfo-collapse-inner{overflow:visible}.forbidden-block .client-profile-input{background-color:transparent!important;border-color:#00000047!important;color:#000000c7!important;color-scheme:light}.forbidden-block .client-profile-input::placeholder{color:#00000094!important}.forbidden-block .client-profile-input:focus{border-color:#00000085!important}.forbidden-block .client-profile-textarea{background-color:transparent!important;border-color:#00000047!important;color:#000000c7!important}.forbidden-block .client-profile-textarea::placeholder{color:#00000094!important}.forbidden-block .client-profile-textarea:focus{border-color:#00000085!important}.forbidden-category-dropdown{position:relative;z-index:220}.forbidden-category-dropdown.is-open{z-index:320}.forbidden-category-trigger{padding-right:12px}.forbidden-category-trigger span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.forbidden-category-menu{left:0;right:0;z-index:340}.forbidden-category-option{font-size:13px}.cinfo-right-card:has(.forbidden-category-dropdown.is-open){overflow:visible;z-index:320}.forbidden-suggestions{position:static;margin-top:8px;max-height:260px;background:#ffffffb8;border-color:#0000001f;box-shadow:none}.forbidden-empty{padding:10px 12px;color:#00000094;font-size:13px}.forbidden-toggle{display:flex;align-items:center;gap:8px;padding:12px 14px;border:none;background:transparent;font:inherit;font-size:13px;font-weight:700;color:var(--text);cursor:pointer;text-align:left;width:100%}.forbidden-toggle:hover{background:var(--border)}.forbidden-toggle svg{width:16px;height:16px;stroke:var(--muted);fill:none;stroke-width:2;flex-shrink:0}.forbidden-count{background:var(--accent);color:#fff;font-size:11px;font-weight:700;border-radius:999px;padding:1px 7px;flex-shrink:0}.product-edit-top{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-bottom:12px}.product-edit-btns{display:flex;align-items:center;gap:8px}.product-edit-close-btn{width:40px;height:40px;border-radius:50%;border:none;background:#999;color:#fff;cursor:pointer;font-size:16px;font-weight:700;display:grid;place-items:center;flex-shrink:0;transition:background .15s;line-height:1}.product-edit-close-btn:hover{background:#666}.sidebar-edit-btn--save{width:40px!important;height:40px!important;background:var(--accent)!important;color:#fff!important;border-color:var(--accent)!important}.sidebar-edit-btn--save:hover{background:var(--accent-dark)!important;border-color:var(--accent-dark)!important}.product-edit-form{display:grid;gap:8px}.product-edit-nutrition{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:2px}.product-edit-field{display:grid;gap:4px;font-size:11px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.product-edit-field input,.product-edit-field select,.product-edit-field textarea{height:46px;min-height:46px;max-height:46px;box-sizing:border-box;border:1.5px solid var(--border);border-radius:23px;background-color:transparent;color:var(--text);padding:0 18px;font:inherit;font-size:14px;line-height:1;outline:none;transition:border-color .15s;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;display:block;margin:0;vertical-align:top}.product-edit-field input:focus,.product-edit-field select:focus,.product-edit-field textarea:focus{border-color:var(--accent)}.activity-type-field{position:relative}.activity-type-menu{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:20;max-height:190px;overflow-y:auto;padding:6px;border:1.5px solid var(--border);border-radius:20px;background:#fff;box-shadow:0 14px 34px #00000029}.activity-type-menu button,.activity-type-empty{width:100%;min-height:34px;border:0;border-radius:16px;background:transparent;color:var(--text);padding:0 12px;font:inherit;font-size:13px;font-weight:750;text-align:left;text-transform:none;letter-spacing:0}.activity-type-menu button{cursor:pointer}.activity-type-menu button:hover{background:var(--card)}.activity-type-empty{display:flex;align-items:center;color:var(--muted)}.product-edit-field textarea{height:auto;max-height:none;min-height:132px;padding:14px 18px;line-height:1.45;resize:vertical}.recipe-ingredients-textarea{text-transform:none}.product-edit-field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a8a8a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:18px 18px;padding-right:40px;cursor:pointer}.product-category-combo{position:relative}.product-category-combo input{padding-right:44px}.product-category-combo-toggle{position:absolute;top:0;right:5px;width:38px;height:46px;border:none;background:transparent;color:var(--muted);display:grid;place-items:center;cursor:pointer}.product-category-combo-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.product-category-combo-menu{position:absolute;z-index:260;left:0;right:0;top:calc(100% + 6px);max-height:260px;overflow-y:auto;padding:6px;border:1.5px solid var(--border);border-radius:18px;background:#fffffff5;box-shadow:0 18px 48px #0000002e}.product-category-combo-menu button{width:100%;min-height:34px;border:none;border-radius:12px;background:transparent;color:var(--text);padding:0 12px;text-align:left;font:inherit;font-size:14px;font-weight:700;cursor:pointer}.product-category-combo-menu button:hover,.product-category-combo-menu button.active{background:#ccaa8c57}.product-category-combo-empty{padding:10px 12px;color:var(--muted);font-size:13px;font-weight:700;text-transform:none;letter-spacing:0}.number-stepper{height:46px;border:1.5px solid var(--border);border-radius:23px;display:flex;align-items:center;padding:6px;gap:2px;background:transparent;transition:border-color .15s;box-sizing:border-box}.number-stepper:focus-within{border-color:var(--accent)}.stepper-circle{width:34px;height:34px;border-radius:50%;border:1.5px solid transparent;background:transparent;cursor:pointer;display:grid;place-items:center;flex-shrink:0;color:var(--muted);transition:border-color .15s ease,color .15s ease}.stepper-circle:hover{border-color:var(--border);color:var(--text)}.stepper-circle svg{width:18px;height:18px}.stepper-pill-input{all:unset;flex:1;min-width:0;text-align:center;font-family:inherit;font-size:15px;font-weight:600;color:var(--text);cursor:text;border:0!important;outline:0!important;background:transparent!important;padding:0 2px}.stepper-pill-input::-webkit-inner-spin-button,.stepper-pill-input::-webkit-outer-spin-button{display:none}.table-panel,.pro-header,.filters{transition:opacity .25s ease}.filters--dim,.table-panel--dim,.pro-header--dim{opacity:.2;pointer-events:none}.product-confirm-delete{background:#fff5f5;border:1.5px solid #f5c0c0;border-radius:var(--radius);padding:14px 16px;margin-bottom:12px;font-size:13px}.product-confirm-delete p{color:var(--text)}.delete-confirm-dialog{background:var(--surface);padding:28px;border-radius:20px;max-width:380px;width:min(100%,calc(100vw - 40px));box-shadow:0 20px 60px #0003;outline:none}.delete-confirm-title{margin:0 0 8px;color:var(--text);font-size:16px;font-weight:700}.delete-confirm-message{margin:0 0 20px;color:var(--muted);font-size:14px;line-height:1.5}.delete-confirm-actions{display:flex;justify-content:flex-end;gap:8px}.delete-confirm-button{outline:none;transition:box-shadow .16s ease,transform .16s ease,background-color .16s ease,border-color .16s ease}.delete-confirm-button.is-key-active{box-shadow:0 0 0 3px #0000001f}.delete-confirm-button--danger,.delete-confirm-button--danger:hover,.delete-confirm-button--danger.is-key-active{background:var(--danger);border-color:var(--danger)}.category-manager{height:100%;min-height:0;display:flex;flex-direction:column;width:min(560px,calc(100% - 32px));padding:0 0 28px;margin:0 auto;position:relative}.category-manager:after{content:"";position:absolute;left:0;right:0;bottom:0;height:58px;background:linear-gradient(to bottom,rgba(255,255,255,0),var(--bg));pointer-events:none;z-index:3}.category-manager-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:1px 0 13px}.category-search-inline{width:100%;flex:1}.category-manager-list{flex:1;min-height:0;overflow-y:auto;padding:6px 8px 64px;display:flex;flex-direction:column;gap:4px}.category-row{min-height:46px;display:flex;align-items:center;gap:12px;padding:8px 10px 8px 18px;border:none;border-radius:999px;background:#f2f2f7;transition:background-color .16s ease}.category-row:hover{background:#ececf2}.category-row-name{min-width:0;color:var(--text);font-size:14px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.category-row-main{min-width:0;flex:1;display:inline-flex;align-items:center;gap:8px}.category-count-pill{flex-shrink:0;min-width:24px;height:20px;padding:0 8px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#fff;color:#000;font-size:12px;font-weight:850}.category-row-actions{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.category-delete-btn{color:var(--danger)}.category-row--edit{border-radius:24px;padding:7px 8px 7px 14px;background:#f2f2f7}.category-row--edit input{min-width:0;flex:1;height:32px;border:none;outline:none;background:transparent;color:var(--text);font:inherit;font-size:14px;font-weight:800}.category-row--edit input::placeholder{color:var(--muted);font-weight:700}.category-row-error{color:var(--danger);font-size:12px;font-weight:700}.category-action-pill{height:32px;padding:0 14px;border:1.5px solid var(--border);border-radius:999px;background:transparent;color:var(--text);font:inherit;font-size:13px;font-weight:800;cursor:pointer}.category-action-pill:hover{border-color:var(--muted)}.category-action-pill--save{background:var(--accent-warm);border-color:var(--accent-warm)}.category-action-pill:disabled{opacity:.45;cursor:not-allowed}.category-empty{padding:18px;color:var(--muted);font-size:14px;font-weight:700}.dish-overlay{z-index:1000;background:#0a0a0a57;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:dishOverlayIn .2s ease both}.dish-overlay.is-closing{pointer-events:none;animation:dishOverlayOut .22s ease .26s both}.dish-modal{position:relative;background:transparent;border:none;border-radius:0;width:min(1130px,calc(100vw - 64px));max-width:none;max-height:86vh;display:flex;flex-direction:column;overflow:visible;isolation:isolate;box-shadow:none;margin:auto;transition:width .3s cubic-bezier(.16,1,.3,1),max-height .3s cubic-bezier(.16,1,.3,1)}.dish-modal:before{content:"";position:absolute;top:-34px;right:-34px;bottom:-34px;left:-34px;border-radius:42px;background:radial-gradient(circle at 18% 22%,rgba(132,169,200,.42),transparent 42%),radial-gradient(circle at 84% 18%,rgba(204,170,140,.36),transparent 38%),radial-gradient(circle at 28% 88%,rgba(142,207,154,.22),transparent 42%);filter:blur(30px);pointer-events:none;z-index:-1;animation:dishModalGlowIn .34s cubic-bezier(.16,1,.3,1) .12s both}.dish-overlay.is-closing .dish-modal:before{animation:dishModalGlowOut .26s ease both}.dish-header{position:relative;z-index:760;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:0;padding:0;flex-shrink:0;background:transparent;border-radius:0}.dish-header-actions{display:flex;align-items:center;gap:8px;margin-left:auto;flex-shrink:0}.dish-header-title{flex:1;min-width:0;height:40px;border:1.5px solid var(--border);border-radius:999px;background:transparent;color:var(--text);padding:0 16px;outline:none;font:inherit;font-size:15px;font-weight:800}.dish-header-title:focus{border-color:var(--accent)}.dish-header-title::placeholder{color:#b8b8b8}.dish-header-title.dish-required-control{border-color:var(--danger);box-shadow:0 0 0 4px #cc33331a}.dish-image-input{display:none}.dish-header-image-btn,.dish-header-close{width:40px;height:40px;display:grid;place-items:center;padding:0;border:1.5px solid var(--border);border-radius:50%;background:#fff;color:var(--text);cursor:pointer;flex-shrink:0}.dish-header-image-btn:hover,.dish-header-close:hover{border-color:#00000057}.dish-header-image-btn.has-image{position:relative;overflow:hidden;border-color:#ffffffe6;background:var(--dish-image) center / cover no-repeat;color:#fff;box-shadow:0 1px 7px #0003}.dish-header-image-btn.has-image:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#00000052}.dish-header-image-btn.has-image svg{position:relative;z-index:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.72))}.dish-header-image-btn:disabled{opacity:.5;cursor:wait}.dish-header-image-btn svg,.dish-header-close svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.dish-columns{display:grid;grid-template-columns:minmax(0,616px) minmax(0,500px);gap:14px;width:100%;overflow:visible;flex:1;min-height:0;max-height:calc(100vh - 64px);align-items:center;justify-content:center;background:transparent;border-radius:0;interpolate-size:allow-keywords;transition:grid-template-columns .32s cubic-bezier(.16,1,.3,1),gap .32s cubic-bezier(.16,1,.3,1)}.dish-col-left{position:relative;overflow:hidden;padding:16px 20px 20px;display:flex;flex-direction:column;gap:14px;height:min(86vh,calc(100vh - 64px));max-height:calc(100vh - 64px);background:var(--bg);border:1px solid var(--border);border-radius:24px;box-shadow:0 0 0 1px #00000008,0 8px 24px #00000014,0 32px 80px #00000024;interpolate-size:allow-keywords;transition:height .34s cubic-bezier(.16,1,.3,1),max-height .34s cubic-bezier(.16,1,.3,1),padding .34s cubic-bezier(.16,1,.3,1),gap .34s cubic-bezier(.16,1,.3,1),transform .34s cubic-bezier(.16,1,.3,1),box-shadow .34s cubic-bezier(.16,1,.3,1);animation:dishPanelLeftIn .42s cubic-bezier(.16,1,.3,1) .12s backwards}.dish-col-left.is-empty{gap:16px}.dish-col-left-inner{display:flex;flex-direction:column;gap:inherit;width:100%;min-height:0}.dish-col-right{position:relative;overflow:hidden;padding:16px 18px 0;display:flex;flex-direction:column;min-height:0;height:min(86vh,calc(100vh - 64px));max-height:calc(100vh - 64px);background:var(--bg);border:1px solid var(--border);border-radius:24px;box-shadow:0 0 0 1px #00000008,0 8px 24px #00000014,0 32px 80px #00000024;transition:height .34s cubic-bezier(.16,1,.3,1),max-height .34s cubic-bezier(.16,1,.3,1),transform .34s cubic-bezier(.16,1,.3,1);animation:dishPanelRightIn .42s cubic-bezier(.16,1,.3,1) .16s backwards}.dish-overlay.is-closing .dish-col-left{animation:dishPanelLeftOut .3s cubic-bezier(.7,0,.84,0) both}.dish-overlay.is-closing .dish-col-right{animation:dishPanelRightOut .3s cubic-bezier(.7,0,.84,0) both}.dish-main-summary{display:flex;align-items:center;justify-content:center;width:100%;margin:0 auto;padding:2px 0 4px}.dish-main-summary svg{width:136px!important;height:136px!important}.dish-main-summary .macro-linear{width:100%}.dish-main-summary--inline{grid-column:1 / -1;padding:0}.macro-linear{width:100%;display:flex;flex-direction:column;gap:6px;padding:2px 0}.macro-linear-head{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;font-weight:800}.macro-linear-head span{display:inline-flex;align-items:baseline;gap:4px;min-width:0;white-space:nowrap}.macro-linear-head strong{color:#000;font-size:12px;font-weight:800;font-variant-numeric:tabular-nums}.macro-linear-track{display:flex;gap:3px;height:9px;border-radius:999px;background:#fff;overflow:hidden}.macro-linear-track span{display:block;height:100%;min-width:3px;border-radius:999px;transition:flex-basis .28s cubic-bezier(.16,1,.3,1)}.dish-left-scroll{display:flex;flex:0 1 auto;flex-direction:column;gap:14px;min-height:0;max-height:calc(100vh - 160px);overflow-y:auto;margin-right:-14px;padding-right:14px;interpolate-size:allow-keywords;transition:max-height .34s cubic-bezier(.16,1,.3,1),padding-bottom .24s ease,-webkit-mask-image .18s ease,mask-image .18s ease}.dish-col-left.has-products .dish-left-scroll{max-height:none}.dish-left-scroll--fade{padding-bottom:18px;-webkit-mask-image:linear-gradient(to bottom,#000 0,#000 calc(100% - 24px),transparent 100%);mask-image:linear-gradient(to bottom,#000 0,#000 calc(100% - 24px),transparent 100%)}.dish-search-row{display:flex;gap:6px;align-items:center;position:relative}.dish-search-input{flex:1;min-width:0;height:34px;border:1.5px solid var(--border);border-radius:999px;padding:0 104px 0 12px;font:inherit;font-size:13px;outline:none;background:transparent;transition:border-color .15s}.dish-search-input:focus{border-color:var(--accent)}.dish-search-count{position:absolute;right:5px;top:50%;transform:translateY(-50%);min-width:82px;height:24px;padding:0 10px;border:1px solid rgba(0,0,0,.08);border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#f2f2f7;color:#3c3c43b8;font-size:11px;font-weight:800;white-space:nowrap;pointer-events:none}.dish-weight-input{width:54px;height:34px;border:1.5px solid var(--border);border-radius:999px;padding:0 8px;font:inherit;font-size:13px;outline:none;background:transparent;text-align:center;-moz-appearance:textfield;flex-shrink:0}.dish-weight-input::-webkit-inner-spin-button{-webkit-appearance:none}.dish-suggestions{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 6px 24px #0000001a;z-index:200;max-height:220px;overflow-y:auto;padding:4px}.dish-product-results{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:4px;padding-right:2px;padding-bottom:38px}.dish-product-result{display:grid;grid-template-columns:28px minmax(132px,1fr) repeat(5,41px);align-items:center;gap:10px;width:100%;min-height:44px;padding:0 10px 0 6px;border:1.5px solid var(--border);border-radius:999px;background:transparent;color:var(--text);text-align:left;font:inherit;font-size:12px;cursor:default;transition:border-color .15s,background .15s}.dish-product-result--exercise{grid-template-columns:28px minmax(180px,1fr) minmax(92px,.46fr) 54px 64px;gap:8px}.dish-product-result--exercise>span:nth-last-child(2),.dish-product-result--exercise>span:nth-last-child(3){display:none}.dish-product-result--supplement{grid-template-columns:28px minmax(0,1.7fr) minmax(0,.58fr) minmax(0,.58fr) minmax(0,1fr);gap:6px;padding-right:8px}.dish-product-result--supplement>span:nth-last-child(1),.dish-product-result--supplement>span:nth-last-child(2){display:none}.dish-product-result--head{min-height:26px;border-color:transparent;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;cursor:default;pointer-events:none}.dish-product-result--fixed-head{flex-shrink:0;margin-bottom:2px}.dish-product-result:hover{border-color:var(--accent);background:#84a9c814}.dish-product-add-btn{display:grid;place-items:center;width:24px;height:24px;border:none;border-radius:50%;background:var(--accent-soft);color:var(--accent-dark);cursor:pointer}.dish-product-add-btn:hover{background:var(--accent);color:#fff}.dish-product-add-btn svg{width:15px;height:15px}.dish-product-result strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.dish-product-name{display:grid;gap:1px;min-width:0;font-variant-numeric:normal}.dish-product-name small{overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;color:var(--muted);font-size:10.5px;font-weight:600}.dish-product-result span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums;text-align:center}.dish-product-result .dish-product-name{font-variant-numeric:normal;text-align:left}.dish-product-result-cat{display:inline-flex;align-items:center;justify-self:start;max-width:100%;min-height:20px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:500;font-variant-numeric:normal}.dish-products-block{display:flex;flex-direction:column;gap:8px;margin-bottom:4px;animation:dishSectionIn .28s cubic-bezier(.16,1,.3,1);transform-origin:top center}.dish-products-block.dish-required-invalid .dish-products-head{color:var(--danger)}.dish-products-head{display:flex;align-items:center;gap:8px;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.dish-products-head strong{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 7px;border-radius:999px;background:var(--accent-soft);color:var(--accent-dark);font-size:11px}.dish-product-table{display:flex;flex-direction:column;gap:3px;min-height:270px;overflow:visible;padding-right:2px}.dish-product-row{display:grid;grid-template-columns:minmax(92px,1fr) repeat(5,40px) 90px 20px;align-items:center;gap:8px;min-height:38px;padding:0 6px 0 12px;border:1.5px solid var(--border);border-radius:999px;font-size:12px}.dish-product-row:not(.dish-product-row--head):not(.dish-product-row--total){animation:dishProductIn .22s cubic-bezier(.16,1,.3,1);transform-origin:center}.dish-product-table .dish-product-row:not(.dish-product-row--head):not(.dish-product-row--total){border-color:transparent;background:#f2f2f7}.dish-product-table .dish-product-row:not(.dish-product-row--head):not(.dish-product-row--total):hover{border-color:transparent;background:#ececf2}.dish-product-row.is-removing{pointer-events:none;animation:dishProductOut .18s ease forwards!important}.dish-product-row--head{position:sticky;top:0;z-index:6;min-height:18px;padding:0 8px 0 12px;border-color:transparent;background:var(--surface);color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase}.dish-product-row--head span:first-child{color:transparent}.dish-product-row--head span:nth-child(7){text-align:center}.dish-product-row--total{position:sticky;top:21px;z-index:6;min-height:28px;border-color:transparent;background:#84a9c814;color:var(--text);font-weight:800}.dish-product-row--total strong{color:var(--muted);font-size:10px;text-transform:uppercase}.dish-product-row--total span{text-align:left}.dish-product-row--total span:nth-child(7){text-align:center}.dish-product-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dish-product-row span{font-variant-numeric:tabular-nums;white-space:nowrap;text-align:center}.dish-weight-stepper{display:grid;grid-template-columns:20px minmax(0,1fr) 20px;align-items:center;height:30px;border:1.5px solid transparent;border-radius:999px}.dish-weight-stepper:focus-within{border-color:var(--border)}.dish-weight-stepper button{display:grid;place-items:center;width:20px;height:24px;border:none;background:transparent;color:var(--muted);cursor:pointer}.dish-weight-stepper svg{width:15px;height:15px}.dish-weight-stepper input{min-width:0;border:none;outline:none;background:transparent;text-align:center;font:inherit;font-weight:800;font-size:12px}.dish-product-picker{display:flex;flex-direction:column;gap:8px;width:100%;min-height:0;flex:1;position:relative;margin:0 auto}.dish-db-tabs{align-self:center;max-width:100%;overflow:hidden}.dish-db-tabs .db-tab.active{background:#ccaa8c94;color:#000}.dish-db-tabs .db-tab.active .db-tab-count{background:#ffffff59;color:#000}.dish-product-picker--event-style .dish-db-tabs .db-tab.active{background:#e5e5ea;color:#000}.dish-product-picker--event-style .dish-db-tabs .db-tab.active .db-tab-count{background:#fff;color:#000}.dish-product-picker--event-style .dish-product-result:not(.dish-product-result--head){border-color:transparent;background:#f2f2f7}.dish-product-picker--event-style .dish-product-result:not(.dish-product-result--head):hover{border-color:transparent;background:#ececf2}.dish-product-picker--event-style .dish-product-add-btn{background:#fff;color:#000}.dish-product-picker--event-style .dish-product-add-btn:hover{background:#e5e5ea;color:#000}.dish-product-picker:after{content:"";position:absolute;left:0;right:6px;bottom:0;height:48px;pointer-events:none;background:linear-gradient(to bottom,rgba(255,255,255,0),var(--surface) 82%);border-radius:0 0 18px 18px}.dish-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}.dish-meta-field{position:relative;display:grid;gap:6px;min-width:0;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.dish-meta-field--open{z-index:700}.dish-meta-field.dish-required-invalid>span{color:var(--danger)}.dish-meta-field.dish-required-invalid .dish-purpose-trigger{border-color:var(--danger);box-shadow:0 0 0 4px #cc333314}.dish-required-note{display:block;color:var(--danger);font-size:11px;font-weight:800;letter-spacing:0;line-height:1.2;text-transform:none}.dish-meta-field select,.dish-meta-field textarea,.dish-purpose-trigger{display:flex;align-items:center;width:100%;height:38px;min-width:0;border:1.5px solid var(--border);border-radius:999px;background:transparent;color:var(--text);padding:0 34px 0 14px;font:inherit;font-size:13px;font-weight:700;letter-spacing:0;text-transform:none;outline:none;cursor:pointer}.dish-recipe-field{grid-column:1 / -1}.dish-meta-field textarea{min-height:118px;padding:12px 14px;border-radius:18px;line-height:1.45;font-weight:500;resize:vertical;cursor:text}.dish-meta-field select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a8a8a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px 16px}.dish-purpose-trigger{justify-content:space-between;text-align:left;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.dish-purpose-trigger svg{position:absolute;right:12px;width:16px;height:16px;color:var(--muted)}.dish-purpose-menu{position:fixed;z-index:1200;display:flex;flex-direction:column;gap:8px;overflow:auto;padding:12px;border:1.5px solid var(--accent);border-radius:18px;background:var(--surface);box-shadow:0 16px 44px #00000024;text-transform:none}.dish-purpose-menu--single{gap:0}.dish-purpose-menu input{height:34px;border:none;border-bottom:1px solid var(--border);outline:none;background:transparent;font:inherit;font-size:14px;font-weight:600;color:var(--text);text-transform:none}.dish-purpose-clear{height:36px;border:none;border-bottom:1px solid var(--border);background:transparent;color:var(--text);cursor:pointer;font:inherit;font-size:14px;font-weight:700;text-align:left}.dish-purpose-options{display:flex;flex-direction:column;gap:8px}.dish-purpose-option{display:flex;align-items:center;gap:10px;color:var(--text);font-size:14px;font-weight:500;letter-spacing:0;text-transform:none}.dish-purpose-option input{width:18px;height:18px;flex-shrink:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1.5px solid #a8a8a8;border-radius:50%;background:transparent;display:grid;place-items:center}.dish-purpose-option input:checked{border-color:var(--accent);background:var(--accent)}.dish-purpose-option input:checked:after{content:"";width:6px;height:6px;border-radius:50%;background:#fff}.dish-confirm-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:900;display:grid;place-items:center;padding:24px;border-radius:24px;background:#ffffff8a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.dish-confirm-card{position:relative;width:min(360px,100%);padding:24px 22px 22px;border:1px solid var(--border);border-radius:20px;background:var(--surface);box-shadow:0 20px 60px #0000002e}.dish-confirm-close{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:30px;height:30px;border:none;border-radius:50%;background:transparent;color:var(--muted);cursor:pointer}.dish-confirm-close:hover{background:var(--bg);color:var(--text)}.dish-confirm-close svg{width:16px;height:16px}.dish-confirm-card p{padding-right:34px;margin-bottom:6px;color:var(--text);font-size:17px;font-weight:800}.dish-confirm-card span{display:block;color:var(--muted);font-size:13px;margin-bottom:18px}.dish-confirm-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;flex-wrap:nowrap}.dish-confirm-pill{display:inline-flex;align-items:center;justify-content:center;height:38px;min-width:128px;padding:0 18px;border-radius:999px;cursor:pointer;font:inherit;font-size:14px;font-weight:800;white-space:nowrap}.dish-confirm-pill--ghost{border:1.5px solid var(--border);background:transparent;color:var(--text)}.dish-confirm-pill--ghost:hover{background:var(--bg)}.dish-confirm-pill--save{border:1.5px solid #2f9f64;background:#2f9f64;color:#fff}.dish-confirm-pill--save:hover{border-color:#258454;background:#258454}.dish-suggestion{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 12px;border:none;background:transparent;text-align:left;font:inherit;font-size:13px;border-radius:10px;cursor:pointer;gap:8px}.dish-suggestion:hover{background:var(--bg)}.dish-sugg-cat{font-size:11px;color:var(--muted);white-space:nowrap}.dish-chips{display:flex;flex-wrap:wrap;gap:8px;min-height:36px;align-items:flex-start}.dish-empty{font-size:13px;color:var(--muted);padding:20px}.dish-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:var(--surface-2);font-size:13px;font-weight:500}.dish-chip-w{font-size:11px;color:var(--muted)}.dish-chip button{border:none;background:transparent;cursor:pointer;color:var(--muted);font-size:14px;line-height:1;padding:0;display:grid;place-items:center}.dish-tags{display:flex;flex-direction:column;gap:8px}.dish-tag-group{display:flex;flex-direction:column;gap:4px}.dish-tag-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.dish-tag-chips{display:flex;flex-wrap:wrap;gap:4px}.dish-tag-chip{height:28px;padding:0 12px;border:1.5px solid var(--border);border-radius:999px;background:transparent;color:var(--text);font:inherit;font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .12s}.dish-tag-chip:hover{border-color:var(--accent);color:var(--accent)}.dish-tag-chip.active{background:var(--accent);border-color:var(--accent);color:#fff}.dish-macros{display:flex;flex-direction:column;gap:7px}.dish-ing-row{display:flex;align-items:center;gap:6px;background:var(--surface-2);border-radius:12px;padding:5px 8px 5px 10px}.dish-ing-name{flex:1;font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.dish-ing-remove{width:20px;height:20px;border-radius:50%;border:none;background:#fff;color:var(--text);font-size:18px;font-weight:800;line-height:1;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center}.dish-ing-remove:hover{background:#e5e5ea}.dish-macro-row--weight{opacity:.7}@keyframes dishOverlayIn{0%{background:#0a0a0a00;backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0)}to{background:#0a0a0a57;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}}@keyframes dishOverlayOut{0%{background:#0a0a0a57;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}to{background:#0a0a0a00;backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0)}}@keyframes dishPanelLeftIn{0%{opacity:0;transform:translate(-52px) scale(.985);filter:blur(8px)}to{opacity:1;transform:translate(0) scale(1);filter:blur(0)}}@keyframes dishPanelRightIn{0%{opacity:0;transform:translate(52px) scale(.985);filter:blur(8px)}to{opacity:1;transform:translate(0) scale(1);filter:blur(0)}}@keyframes dishPanelLeftOut{0%{opacity:1;transform:translate(0) scale(1);filter:blur(0)}to{opacity:0;transform:translate(-46px) scale(.985);filter:blur(7px)}}@keyframes dishPanelRightOut{0%{opacity:1;transform:translate(0) scale(1);filter:blur(0)}to{opacity:0;transform:translate(46px) scale(.985);filter:blur(7px)}}@keyframes dishModalGlowIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes dishModalGlowOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.98)}}@keyframes pieIn{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}@keyframes dishProductIn{0%{opacity:0;transform:translateY(-6px) scale(.985);filter:blur(3px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes dishProductOut{0%{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}to{opacity:0;transform:translateY(-5px) scale(.985);filter:blur(3px)}}@keyframes dishSectionIn{0%{opacity:0;transform:translateY(-8px) scale(.985);filter:blur(4px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}.dish-main-summary svg{animation:pieIn .35s cubic-bezier(.16,1,.3,1);transform-box:fill-box;transform-origin:center}.dish-extra-rows{display:flex;flex-direction:column;gap:4px;width:100%;padding:0 4px}.dish-extra-row{display:flex;justify-content:space-between;align-items:center;font-size:12px;padding:4px 0;border-top:1px solid var(--border)}.dish-extra-row span{color:var(--muted);font-weight:600;text-transform:uppercase;font-size:10px;letter-spacing:.04em}.dish-extra-row strong{font-size:14px;font-weight:700}.dish-macro-row{display:grid;grid-template-columns:48px 1fr 44px;align-items:center;gap:8px}.dish-macro-label{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--muted)}.dish-macro-track{height:8px;background:var(--surface-2);border-radius:999px;overflow:hidden}.dish-macro-fill{height:100%;border-radius:999px;transition:width .3s cubic-bezier(.16,1,.3,1)}.dish-macro-val{font-size:14px;font-weight:700;text-align:right}.protocol-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px;padding:20px 28px 32px}.protocol-card{aspect-ratio:3 / 4;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;padding:16px;display:flex;flex-direction:column;gap:10px;text-align:left;transition:box-shadow .15s,border-color .15s}.protocol-card:hover{box-shadow:0 4px 20px #00000014;border-color:var(--muted)}.protocol-card--add{border-style:dashed;justify-content:center;align-items:center;gap:8px;color:var(--muted)}.protocol-card--add:hover{color:var(--text);border-color:var(--text);border-style:dashed}.protocol-add-icon{font-size:28px;font-weight:300;line-height:1}.protocol-add-label{font-size:12px;font-weight:500}.protocol-card-title{font-size:22px;font-weight:800;line-height:1.2;color:var(--text);flex-shrink:0}.protocol-card-preview{flex:1;min-height:0;display:block;overflow:hidden;padding:10px 9px;border:1px solid rgba(0,0,0,.06);border-radius:8px;background:linear-gradient(to bottom,#fff0 0,#ffffffb8 84%,#fff),#fbfaf8;color:#0a0a0a9e;box-shadow:inset 0 0 0 1px #ffffffad}.protocol-card-preview span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:6.8px;line-height:1.45;font-weight:600;letter-spacing:0}.protocol-card-preview.is-empty{display:grid;place-items:center;background:#f8f8f8;color:#0a0a0a47}.protocol-card-preview.is-empty span{font-size:10px;font-weight:700}.protocol-card-preview.is-file{display:grid;place-items:center;padding:0;background:#f5f4f2;overflow:hidden}.protocol-card-preview.is-file img{width:100%;height:100%;object-fit:cover}.protocol-card-ext{font-size:20px;font-weight:800;letter-spacing:.04em;color:#0a0a0a6b}.protocol-card-meta{display:flex;flex-direction:column;gap:2px;min-width:0;flex-shrink:0}.protocol-card-filename{font-size:11px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.protocol-card-date{font-size:10px;color:var(--muted);flex-shrink:0}.proto-file-input{display:none}.proto-file-dropzone{flex:1;min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;border:1.5px dashed var(--border);border-radius:var(--radius);background:transparent;color:var(--muted);cursor:pointer;padding:32px;transition:border-color .15s,color .15s,background .15s}.proto-file-dropzone:hover{border-color:var(--text);color:var(--text);background:#00000004}.proto-file-dropzone svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.proto-file-dropzone strong{font-size:15px;font-weight:700;color:var(--text)}.proto-file-dropzone span{font-size:12px}.proto-file-card{display:flex;gap:18px;align-items:flex-start;border:1px solid var(--border);border-radius:var(--radius);padding:18px}.proto-file-thumb{width:108px;height:140px;flex-shrink:0;border:1px solid var(--border);border-radius:8px;background:#f5f4f2;display:grid;place-items:center;overflow:hidden;cursor:pointer;padding:0}.proto-file-thumb img{width:100%;height:100%;object-fit:cover}.proto-file-thumb span{font-size:16px;font-weight:800;color:#0a0a0a6b}.proto-file-info{display:flex;flex-direction:column;gap:6px;min-width:0}.proto-file-info strong{font-size:15px;font-weight:700;word-break:break-word}.proto-file-info>span{font-size:12px;color:var(--muted)}.proto-file-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.proto-file-buttons button{border:1px solid var(--border);border-radius:999px;background:var(--surface);padding:6px 14px;font-size:12px;font-weight:600;color:var(--text);cursor:pointer;transition:border-color .15s,color .15s}.proto-file-buttons button:hover{border-color:var(--text)}.proto-file-buttons button.is-danger{color:var(--danger, #d9534f)}.proto-file-buttons button.is-danger:hover{border-color:var(--danger, #d9534f)}.proto-page-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.proto-delete-btn{border:none;background:transparent;padding:0;font:inherit;font-size:12px;font-weight:600;color:var(--danger, #d9534f);cursor:pointer}.proto-page-status{font-size:12px;color:var(--muted)}.cinfo-protocols{display:flex;flex-direction:column;gap:12px}.cinfo-protocol-item{position:relative;padding-right:28px}.cinfo-protocol-item .cinfo-lab-date{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cinfo-protocol-remove{position:absolute;top:50%;right:6px;transform:translateY(-50%);width:22px;height:22px;border:none;border-radius:50%;background:transparent;color:#0000006b;font-size:16px;line-height:1;cursor:pointer}.cinfo-protocol-remove:hover{background:#0000000f;color:#000}.cinfo-protocol-picker{border:1px solid var(--border);border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:8px;background:var(--surface)}.cinfo-protocol-picker-list{display:flex;flex-direction:column;gap:2px;max-height:260px;overflow-y:auto}.cinfo-protocol-picker-row{display:flex;align-items:center;gap:10px;padding:7px 8px;border:none;border-radius:8px;background:transparent;cursor:pointer;text-align:left}.cinfo-protocol-picker-row:hover{background:#00000009}.cinfo-protocol-picker-row.is-selected{background:#2f9f6414}.cinfo-protocol-picker-check{width:18px;height:18px;flex-shrink:0;border:1px solid var(--border);border-radius:5px;display:grid;place-items:center;font-size:11px;font-weight:800;color:#2f9f64}.cinfo-protocol-picker-row.is-selected .cinfo-protocol-picker-check{border-color:#2f9f64}.cinfo-protocol-picker-text{display:flex;flex-direction:column;gap:1px;min-width:0}.cinfo-protocol-picker-text strong{font-size:13px;font-weight:600;color:var(--text)}.cinfo-protocol-picker-text span{font-size:11px;color:var(--muted)}.cinfo-protocol-picker-empty{font-size:12px;color:var(--muted);padding:12px 8px;text-align:center}.proto-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#0006;display:flex;align-items:center;justify-content:center;padding:32px;backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0);animation:protoOverlayIn .18s ease-out both}.proto-overlay.is-closing{pointer-events:none;animation:protoOverlayOut .22s ease-in 40ms both}.proto-modal{background:var(--surface);border-radius:var(--radius);width:100%;max-width:760px;max-height:calc(100vh - 64px);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 64px #0000002e;animation:protoModalIn .24s cubic-bezier(.16,1,.3,1) 40ms both}.proto-overlay.is-closing .proto-modal{animation:protoModalOut .2s ease-in both}.proto-modal{height:90vh;max-height:90vh}.proto-page{position:relative;display:flex;flex-direction:column;height:100%;overflow:hidden}.proto-page-actions{position:absolute;top:16px;right:20px;display:flex;align-items:center;gap:8px;z-index:10}.proto-save-btn{width:auto;min-width:94px;box-shadow:0 8px 20px #2f9f6429}.proto-save-btn:disabled{opacity:.45;cursor:default;box-shadow:none}.proto-close-btn{background:#ffffffb8;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.proto-close-btn:hover{border-color:var(--border);color:var(--text)}.proto-page-body{flex:1;overflow-y:auto;padding:48px 64px 40px;display:flex;flex-direction:column}.proto-page-heading{font-size:30px;font-weight:800;color:var(--text);border:none;outline:none;background:transparent;width:100%;padding:0 100px 0 0;line-height:1.2;margin-bottom:20px;font-family:inherit}.proto-page-heading::placeholder{color:var(--border)}.proto-page-rule{height:1px;background:var(--border);margin-bottom:28px;flex-shrink:0}.proto-page-textarea{flex:1;min-height:300px;border:none;outline:none;background:transparent;font:inherit;font-size:15px;line-height:1.85;color:var(--text);resize:none}.proto-page-textarea::placeholder{color:var(--border)}.proto-page-footer{font-size:12px;color:var(--muted);text-align:center;padding:10px 24px;border-top:1px solid var(--border);flex-shrink:0}@keyframes protoOverlayIn{0%{background:#0000;backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0)}to{background:#0006;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}}@keyframes protoOverlayOut{0%{background:#0006;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}to{background:#0000;backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0)}}@keyframes protoModalIn{0%{opacity:0;transform:translateY(18px) scale(.985);filter:blur(6px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes protoModalOut{0%{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}to{opacity:0;transform:translateY(14px) scale(.985);filter:blur(5px)}}.patients-split{display:grid;grid-template-columns:280px 1fr;height:100%;overflow:hidden}.patients-list{border-right:1px solid var(--border);overflow-y:auto;padding:12px 12px 24px;display:flex;flex-direction:column;gap:4px}.patients-list-search{display:flex;gap:6px;margin-bottom:8px}.patients-list-search input{flex:1;height:34px;border:1.5px solid var(--border);border-radius:var(--radius);padding:0 10px;font:inherit;font-size:15px;background:var(--bg);color:var(--text);outline:none}.patients-detail{overflow:auto}.pt-group{margin-bottom:8px}.pt-group-label{display:flex;align-items:center;gap:6px;padding:6px 4px 4px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);cursor:default}.pt-group-label.clickable{cursor:pointer}.pt-group-label.clickable:hover{color:var(--text)}.pt-group-count{font-size:10px}.pt-row{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;border-radius:var(--radius);background:transparent;cursor:pointer;text-align:left;transition:background .12s}.pt-row:hover{background:var(--surface-2)}.pt-row.active{background:var(--accent)}.pt-row.active strong,.pt-row.active span{color:#fff}.pt-row span{font-size:12px;color:var(--muted);display:block}.pt-row.active span{color:#ffffffa6}.pt-avatar{width:34px;height:34px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:700;flex-shrink:0}.pt-avatar--lead{background:#9da8b4}.pt-avatar--completed{background:var(--surface-2);color:var(--muted)}.pt-row-info{display:flex;flex-direction:column;gap:1px}.pt-row-info strong{font-size:13px;font-weight:600;color:var(--text)}.cal-view-switcher{display:flex;align-items:center;justify-content:flex-end;padding:0;flex-shrink:0}.cal-view-switcher--standalone{position:absolute;top:12px;right:28px;z-index:5}.cal-view-tabs{display:flex;align-items:center;gap:2px;border-radius:999px;padding:5px;border:1.5px solid transparent;transition:border-color .16s ease}.cal-view-tabs:hover{border-color:var(--border)}.cal-view-tab{display:flex;align-items:center;justify-content:center;height:34px;padding:0 16px;border:none;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-size:14px;font-weight:600;transition:color .15s,background .15s}.cal-view-tab:hover{color:var(--text)}.cal-view-tab.active{background:#ccaa8c;color:#fff}.week-view{display:flex;flex-direction:column;flex:1;overflow:hidden;padding:12px 28px 24px;position:relative;--week-overlay-offset: 2px}.patient-workspace-shell--calendar .week-view{--week-overlay-offset: 0px;padding-top:calc(var(--header-h) + 2px)}.week-nav{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;margin-bottom:12px;position:relative;z-index:10}.patient-workspace-shell--calendar .week-nav{margin-left:-28px;margin-right:-28px;margin-bottom:0;padding:8px 28px;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}.week-nav-center{grid-column:2;display:flex;align-items:center;gap:8px}.week-nav-arrow{border-color:var(--border);border-radius:50%;background:transparent}.week-nav-arrow:hover{border-color:var(--border);background:var(--surface)}.week-today-btn{height:34px;padding:0 14px;border:1.5px solid var(--border);border-radius:999px;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-size:13px;font-weight:500;transition:border-color .16s ease,color .16s ease}.week-today-btn:hover{border-color:var(--border);color:var(--text)}.week-nav>.cal-view-switcher{grid-column:3;justify-self:end}.week-nav-label{font-size:16px;font-weight:700;flex:0 0 auto;min-width:210px;text-align:center}.week-header-grid{display:grid;grid-template-columns:52px repeat(7,1fr);align-items:start;background:var(--bg);flex-shrink:0;position:relative;z-index:8}.patient-workspace-shell--calendar .week-header-grid{margin-left:-28px;margin-right:-28px;padding-left:28px;padding-right:28px;padding-bottom:4px;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}.week-header-grid:after{content:"";position:absolute;left:-72px;right:-72px;bottom:0;height:44px;transform:translateY(100%);border-top:1px solid rgba(0,0,0,.08);background:linear-gradient(to bottom,#0000002e,#00000016 38%,#0000);pointer-events:none}.patient-workspace-shell--calendar .week-header-grid:after{display:none}.week-header-corner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:6px}.week-selection-control{position:relative;display:flex;align-items:center;gap:8px;min-height:24px}.patient-workspace-shell--calendar .week-selection-control{position:fixed;left:auto;right:calc(50% + (var(--tabbar-w, 320px) / 2) + 90px);top:calc(var(--header-h) / 2);transform:translateY(-50%);z-index:25}.week-selection-action{position:static;width:auto;height:34px;min-width:98px;padding:0 14px;border:1.5px solid var(--border);border-radius:999px;background:transparent;color:#000;display:grid;place-items:center;cursor:pointer;box-shadow:none;font:inherit;font-size:13px;font-weight:600;animation:weekSelectionActionIn .18s ease both}.week-selection-action:hover{background:#ccaa8c94;color:#000;border-color:#ccaa8c94}.week-selection-undo{flex:0 0 auto;width:34px;height:34px;padding:0;border:1.5px solid var(--border);border-radius:999px;background:transparent;color:#000;display:grid;place-items:center;cursor:pointer;font:inherit}.week-selection-undo svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.week-selection-undo:hover:not(:disabled){background:#ccaa8c94;border-color:#ccaa8c94}.week-selection-undo:disabled{opacity:.35;cursor:default}@keyframes weekSelectionActionIn{0%{opacity:0;transform:translate(-4px) scale(.92)}to{opacity:1;transform:translate(0) scale(1)}}.week-copy-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:620;display:grid;place-items:center;padding:28px;background:#00000094;backdrop-filter:blur(12px) saturate(1.08);-webkit-backdrop-filter:blur(12px) saturate(1.08)}.week-copy-modal{position:relative;width:min(500px,calc(100vw - 56px));border-radius:24px;background:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 24px 70px #0000003d;color:#000;padding:28px 30px 30px;overflow:visible;backdrop-filter:blur(18px) saturate(1.18);-webkit-backdrop-filter:blur(18px) saturate(1.18);animation:weekCopyModalIn .22s cubic-bezier(.16,1,.3,1) both}.week-copy-close{position:absolute;top:18px;right:18px;width:30px;height:30px;border:none;border-radius:0;background:transparent;color:#000;display:grid;place-items:center;cursor:pointer;box-shadow:none;transition:opacity .18s ease}.week-copy-close:hover{background:transparent;opacity:.62}.week-copy-close svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:2.4;stroke-linecap:round}.week-copy-title{display:flex;align-items:center;padding-right:42px;color:#000}.week-copy-title strong{font-size:18px;line-height:1.2;font-weight:800;text-transform:uppercase;letter-spacing:0}.week-copy-divider{display:none}.week-copy-grid{display:grid;grid-template-columns:156px minmax(0,1fr);gap:8px;align-items:end;margin-top:22px}.week-copy-grid .product-edit-field{color:#000;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0;gap:8px;white-space:nowrap}.week-copy-grid .product-edit-field input,.week-copy-grid .product-edit-field select{height:42px;min-height:42px;max-height:42px;line-height:42px;border-radius:999px;border:1.5px solid rgba(0,0,0,.24);background-color:transparent;color:#000;font-size:14px;font-weight:400;padding:0 14px;outline:none}.week-copy-grid .product-edit-field:first-child{width:132px}.week-copy-grid .product-edit-field:first-child input{text-align:center;padding-left:10px;padding-right:10px;display:block}.week-copy-grid .product-edit-field input:focus,.week-copy-grid .product-edit-field select:focus{border-color:#00000085}.week-copy-note{margin:16px 0 0;color:#00000094;font-size:12px}.week-copy-actions{display:flex;justify-content:flex-end;padding-top:0;margin-top:20px;border-top:none}.week-copy-actions .primary-button{min-width:180px;height:40px;border-radius:999px;padding:0 22px;background:#d5c3b37a;border:1px solid rgba(0,0,0,.18);color:#000;font-size:13px;font-weight:800}.week-copy-actions .primary-button:hover{background:#dac9ba9e;border-color:#00000038}@keyframes weekCopyModalIn{0%{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.week-compact-switch{width:34px;height:19px;border:none;border-radius:999px;background:var(--surface-2);cursor:pointer;padding:2px;flex-shrink:0;transition:background .16s ease}.week-compact-switch span{display:block;width:15px;height:15px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000029;transform:translate(0);transition:transform .18s ease}.week-compact-switch:hover{background:#e9e6e3}.week-compact-switch.active{background:var(--accent)}.week-compact-switch.active span{transform:translate(15px)}.week-body-scroll{flex:1;overflow-y:auto;padding:5px 0;display:flex;flex-direction:column;gap:4px}.patient-workspace-shell--calendar .week-body-scroll{margin-left:-28px;margin-right:-28px;margin-top:0;padding-left:28px;padding-right:0;padding-top:0;position:relative;z-index:1}.patient-workspace-shell--calendar .week-slot-row{padding-right:28px}.week-body-scroll.is-switching .week-slot-row{animation:weekRowsSwitch .24s cubic-bezier(.16,1,.3,1) both}.week-slot-row{display:grid;grid-template-columns:56px repeat(7,minmax(0,1fr));gap:4px 6px;overflow:visible;flex-shrink:0}.week-slot-row.is-hour .week-cell,.week-slot-row.is-hour .week-time-label{min-height:30px}.week-slot-row.is-quarter .week-cell,.week-slot-row.is-quarter .week-time-label{min-height:24px}.week-slot-row.is-quarter .week-time-label{opacity:.55}.week-day-head{padding:6px 4px 4px;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:2px;cursor:pointer;border:none;text-align:center}.patient-workspace-shell--calendar .week-day-head{background:transparent}.week-day-head.no-totals{justify-content:center}.week-day-namenum{display:flex;align-items:center;gap:5px}.week-day-label-capsule{min-height:30px;display:inline-flex;align-items:center;gap:5px;padding:0 10px;border-radius:15px;background:transparent;transition:color .24s ease,background-color .24s ease}.week-day-head.active .week-day-label-capsule{background:#7faad2;color:#fff}.week-day-head.active .week-day-name{color:#fff}.week-day-name{font-size:11px;color:var(--muted);text-transform:uppercase;font-weight:600}.week-day-num{font-size:15px;font-weight:700}.week-day-totals{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:5px;margin-top:3px;padding-top:3px;border-top:1px solid var(--border);width:100%;font-size:13px;font-weight:600;color:var(--muted)}.week-day-totals-kcal{font-size:13px;font-weight:700;color:#000}.week-day-percentages{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;font-size:13px;font-weight:700;color:#00000061;white-space:nowrap}.week-time-label{color:var(--muted);padding:0 4px;background:transparent;text-align:center;white-space:nowrap;display:flex;align-items:center;justify-content:center}.week-time-label strong{font-size:11px;font-weight:700;color:var(--text)}.week-time-minor{font-size:11px;font-weight:400}.week-cell{border:none;border-radius:15px;padding:3px;cursor:pointer;display:flex;flex-direction:column;gap:2px;background:var(--surface-2, #f4f3f2);transition:box-shadow .1s;overflow:visible;position:relative}.week-cell.has-events{background:transparent;padding:0;border-radius:15px}.week-cell.has-events:after{display:none}.week-cell:after{content:"+";position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#fff;font-size:18px;font-weight:800;line-height:1;opacity:0;pointer-events:none;text-shadow:none;transition:opacity .18s ease;z-index:3}.week-cell:hover:after{opacity:1}.week-cell--drag-over{background:var(--accent-soft)!important;outline:2px solid var(--accent);outline-offset:-2px}.week-event[draggable=true]:active{opacity:.5}.week-cell--readonly{cursor:default!important}.week-cell--readonly:hover{box-shadow:none}.week-cell--readonly:hover:after{opacity:0}.week-scroll-fade{position:absolute;left:28px;right:28px;bottom:24px;height:86px;pointer-events:none;z-index:12;background:linear-gradient(to bottom,#fff0,#fffffff5 78%,#fff)}.cal-day-totals{display:flex;align-items:center;gap:12px;margin-left:auto;font-size:12px;color:var(--muted)}.cal-day-totals strong{font-size:13px;font-weight:700;color:var(--text)}.client-phone-outer{background:#111;min-height:100vh;display:flex;justify-content:center;align-items:center;padding:14px}.client-phone-screen{--header-h: 72px;--client-active: #7faad2;--today-nav-top: 72px;--today-nav-expanded-h: 214px;--today-nav-collapsed-h: 66px;--today-nav-gap: 0px;grid-template-rows:1fr;width:auto;height:min(852px,calc(100vh - 28px));aspect-ratio:1206 / 2622;min-width:0;max-width:min(430px,calc(100vw - 28px));flex-shrink:0;overflow:hidden;border-radius:48px;background:#fff;box-shadow:0 0 0 1px #ffffff14,0 28px 90px #00000061}.client-phone-screen .pro-header{grid-template-columns:1fr auto;height:150px;padding:13px 30px 0;align-items:start;position:absolute;inset:0 0 auto;z-index:90;pointer-events:none;background:transparent}.client-phone-screen .pro-header:before{content:"";position:absolute;inset:0 0 auto;height:168px;pointer-events:none;background:linear-gradient(180deg,#ffffffc7,#ffffff9e 38%,#ffffff47 72%,#fff0);backdrop-filter:blur(24px) saturate(1.35);-webkit-backdrop-filter:blur(24px) saturate(1.35);mask-image:linear-gradient(to bottom,#000 0%,#000 58%,rgba(0,0,0,.78) 75%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 58%,rgba(0,0,0,.78) 75%,transparent 100%);opacity:0;transition:opacity .22s ease}.client-phone-screen.has-top-content .pro-header:before{opacity:1}.client-phone-screen.has-top-content.has-animated-bg .pro-header:before{background:linear-gradient(180deg,#ffffff2e,#ffffff1f 38%,#ffffff0f 72%,#fff0)}.client-phone-screen--patient .pro-header:before{content:none}.client-phone-screen--shopping .pro-header:before{height:218px;background:linear-gradient(180deg,#ffffff2e,#ffffff1f 38%,#ffffff0f 72%,#fff0);mask-image:linear-gradient(to bottom,#000 0%,#000 36%,rgba(0,0,0,.7) 66%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 36%,rgba(0,0,0,.7) 66%,transparent 100%)}.client-phone-screen--shopping:after{content:none}.client-phone-screen .user-main{height:100%;position:relative;z-index:2;padding-top:0!important;padding-bottom:0!important;background:transparent}.client-tab-stage{grid-row:1;position:relative;z-index:2;min-height:0;overflow:hidden}.client-tab-pane{position:absolute;top:0;right:0;bottom:0;left:0;min-width:0;min-height:0;visibility:hidden;pointer-events:none;transform:translateZ(0);backface-visibility:hidden}.client-tab-pane--active,.client-tab-pane--leaving{visibility:visible}.client-tab-pane--active{z-index:2;pointer-events:auto}.client-tab-pane--leaving{z-index:1}.client-tab-pane--idle{z-index:0;opacity:0}.client-tab-stage.is-transitioning .client-tab-pane--active,.client-tab-stage.is-transitioning .client-tab-pane--leaving{will-change:transform,opacity}.client-tab-stage.is-transitioning .client-tab-pane--active{animation:clientTabInForward .32s cubic-bezier(.16,1,.3,1) both}.client-tab-pane--leaving{pointer-events:none;animation:clientTabOutForward .32s cubic-bezier(.16,1,.3,1) both}.client-tab-stage.is-transitioning.client-tab-stage--back .client-tab-pane--active{animation-name:clientTabInBack}.client-tab-stage.is-transitioning.client-tab-stage--back .client-tab-pane--leaving{animation-name:clientTabOutBack}@keyframes clientTabInForward{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}@keyframes clientTabOutForward{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-18px)}}@keyframes clientTabInBack{0%{opacity:0;transform:translate(-18px)}to{opacity:1;transform:translate(0)}}@keyframes clientTabOutBack{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(18px)}}.client-bg-white{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:#6fa9c7}.client-bg-blobs{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden;opacity:0;transition:opacity .42s ease}.client-phone-screen.has-animated-bg .client-bg-blobs{opacity:1}.client-bg-blobs:after{content:none;position:absolute;top:0;right:0;bottom:0;left:0}.client-bg-blob{position:absolute;border-radius:50%;filter:blur(34px);opacity:1}.client-bg-blob--1{width:620px;height:620px;left:-230px;top:-180px;background:#5b9dc1;animation:clientBlob1 9s ease-in-out infinite}.client-bg-blob--2{width:560px;height:560px;right:-210px;top:170px;background:#d28a55;animation:clientBlob2 11s ease-in-out infinite}.client-bg-blob--3{width:430px;height:430px;left:50px;bottom:30px;background:#4b8db7;animation:clientBlob3 8s ease-in-out infinite}.client-bg-blob--4{width:390px;height:390px;right:-110px;bottom:-120px;background:#d99662;animation:clientBlob4 10s ease-in-out infinite}@keyframes clientBlob1{0%,to{transform:translate(0) scale(1)}35%{transform:translate(88px,58px) scale(1.12)}70%{transform:translate(-46px,116px) scale(.96)}}@keyframes clientBlob2{0%,to{transform:translate(0) scale(1)}38%{transform:translate(-118px,-72px) scale(1.14)}72%{transform:translate(54px,88px) scale(.94)}}@keyframes clientBlob3{0%,to{transform:translate(0) scale(1)}48%{transform:translate(-72px,-54px) scale(1.16)}}@keyframes clientBlob4{0%,to{transform:translate(0) scale(1)}42%{transform:translate(64px,-92px) scale(1.12)}76%{transform:translate(-52px,42px) scale(.95)}}.client-status-time{position:absolute;left:30px;top:22px;color:#111;font-size:15.5px;font-weight:750;letter-spacing:-.02em;line-height:1;font-variant-numeric:tabular-nums}.client-dynamic-island{position:absolute;left:50%;top:12px;width:126px;height:35px;transform:translate(-50%);border-radius:999px;background:#050505;pointer-events:none}.client-status-icons{position:absolute;top:20px;right:28px;height:16px;display:flex;align-items:center;gap:4px;color:#111}.client-cellular{width:17px;height:11px;display:flex;align-items:flex-end;gap:1.6px}.client-cellular i{width:3px;border-radius:2px;background:currentColor}.client-cellular i:nth-child(1){height:4px}.client-cellular i:nth-child(2){height:6px}.client-cellular i:nth-child(3){height:8.5px}.client-cellular i:nth-child(4){height:11px}.client-wifi{position:relative;width:15px;height:12px;overflow:hidden}.client-wifi i{position:absolute;left:50%;border:1.8px solid currentColor;border-left-color:transparent;border-right-color:transparent;border-bottom-color:transparent;border-radius:50%;transform:translate(-50%)}.client-wifi i:nth-child(1){width:17px;height:17px;top:2px}.client-wifi i:nth-child(2){width:11px;height:11px;top:6px}.client-wifi i:nth-child(3){width:3.5px;height:3.5px;top:9.5px;border:none;background:currentColor}.client-battery{position:relative;width:24px;height:11.5px;border:1.5px solid currentColor;border-radius:3.6px;box-sizing:border-box}.client-battery:after{content:"";position:absolute;right:-3px;top:3px;width:2px;height:4.8px;border-radius:0 2px 2px 0;background:currentColor}.client-battery i{position:absolute;top:2px;right:4px;bottom:2px;left:2px;border-radius:2px;background:currentColor}.client-bottom-dock{position:absolute;left:22px;right:22px;bottom:22px;z-index:80;display:grid;grid-template-columns:62px minmax(0,268px) 62px;align-items:center;justify-content:center;gap:10px;pointer-events:none}.client-bottom-dock.is-message-mode{align-items:end}.client-phone-screen:has(.client-bottom-dock.is-message-mode):after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:95;border-radius:inherit;background:#f2f2f72e;backdrop-filter:blur(10px) saturate(.9);-webkit-backdrop-filter:blur(10px) saturate(.9);pointer-events:none;animation:clientMessageFocusIn .22s ease both}.client-phone-screen .client-bottom-dock.is-message-mode{z-index:100}@keyframes clientMessageFocusIn{0%{opacity:0;backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0)}to{opacity:1;backdrop-filter:blur(10px) saturate(.9);-webkit-backdrop-filter:blur(10px) saturate(.9)}}.client-dock-actions{min-width:0;display:flex;align-items:center;pointer-events:auto}.client-dock-actions--left{justify-content:flex-end}.client-dock-actions--right{justify-content:flex-start}.client-corner-logo{display:none}.client-bottom-dock:before{content:none;position:absolute;left:-22px;right:-22px;top:34px;bottom:-22px;z-index:-1;pointer-events:none;background:#ffffff38;backdrop-filter:blur(26px) saturate(1.25);-webkit-backdrop-filter:blur(26px) saturate(1.25);mask-image:linear-gradient(to bottom,transparent 0%,#000 34%,#000 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 34%,#000 100%)}.client-phone-screen.has-bottom-content .client-bottom-dock:before{content:""}.client-phone-screen--today .client-bottom-dock:before,.client-phone-screen--today.has-bottom-content .client-bottom-dock:before,.client-phone-screen--progress .client-bottom-dock:before,.client-phone-screen--progress.has-bottom-content .client-bottom-dock:before{content:none!important}.client-profile-button{width:62px;height:62px;flex:0 0 62px;border:.5px solid rgba(255,255,255,.42);border-radius:50%;background:#ffffff85;color:var(--muted);display:grid;place-items:center;font:inherit;padding:0;cursor:pointer;pointer-events:auto;backdrop-filter:blur(28px) saturate(1.35);-webkit-backdrop-filter:blur(28px) saturate(1.35);box-shadow:0 1px #ffffffb3 inset,0 16px 46px #0000002e;transition:color .18s ease,background .18s ease}.client-profile-button.active{color:#fff;background:var(--client-active);box-shadow:0 1px #ffffff1f inset,0 12px 30px #0000002e}.client-profile-button:hover{color:var(--muted)}.client-profile-button:hover svg{color:#111}.client-profile-button.active:hover{color:#fff;background:var(--client-active)}.client-profile-button.active:hover svg{color:#fff}.client-profile-button svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.client-profile-button-label{display:none}.client-daily-message,.client-shopping-pdf{position:relative;width:62px;height:62px;flex:0 0 62px;z-index:2}.client-message-button{width:62px;height:62px;border:.5px solid rgba(255,255,255,.42);border-radius:50%;background:#ffffff85;color:var(--muted);display:grid;place-items:center;padding:0;cursor:pointer;pointer-events:auto;box-shadow:none;backdrop-filter:blur(28px) saturate(1.35);-webkit-backdrop-filter:blur(28px) saturate(1.35);transition:color .18s ease,background-color .18s ease,transform .18s ease}.client-message-button:hover{color:var(--muted)}.client-message-button:hover svg{color:#111}.client-message-button.active{color:#fff;background:var(--client-active);box-shadow:none}.client-message-button.active:hover{color:#fff;background:var(--client-active)}.client-message-button.active:hover svg{color:#fff}.client-bottom-dock.is-message-mode .client-message-button:not(.active){background:#fff;color:#111}.client-message-button:active{transform:translateY(1px) scale(.98)}.client-message-button:disabled{cursor:wait;opacity:.68}.client-message-button svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.client-message-button-label{display:none}.client-message-dock-field{position:relative;width:100%;height:62px;min-height:62px;padding:0 15px;border:1.5px solid rgba(60,60,67,.24);border-radius:31px;background:#fff;pointer-events:auto;overflow:hidden;transition:height .18s ease,border-radius .18s ease,border-color .18s ease;animation:clientMessageInlineIn .2s cubic-bezier(.16,1,.3,1) both}.client-message-dock-field:focus-within{border-color:var(--client-active)}.client-message-dock-field textarea{display:block;width:100%;height:62px;min-height:62px;resize:none;overflow:hidden;border:0;outline:0;padding:20px 0;background:transparent;color:#111;font:inherit;font-size:14px;line-height:1.35;transition:height .18s ease}.client-message-dock-field textarea::placeholder{color:#3c3c438a}.client-message-dock-field>span{position:absolute;left:15px;right:15px;bottom:3px;color:#b43737;font-size:10px;font-weight:700}.client-message-dock-send{animation:clientMessageSendIn .28s cubic-bezier(.16,1,.3,1) both}.client-message-dock-send:disabled{cursor:default;opacity:.52}.client-message-inline{position:fixed;z-index:100;left:22px;right:22px;bottom:94px;display:grid;grid-template-columns:62px minmax(0,1fr) 62px;align-items:end;gap:8px;pointer-events:auto;animation:clientMessageInlineIn .2s cubic-bezier(.16,1,.3,1) both}.client-message-inline-action{width:62px;height:62px;border:.5px solid rgba(255,255,255,.42);border-radius:50%;background:#ffffffb8;color:#111;display:grid;place-items:center;padding:0;cursor:pointer;backdrop-filter:blur(28px) saturate(1.35);-webkit-backdrop-filter:blur(28px) saturate(1.35)}.client-message-inline-action:hover{background:#ffffffe6}.client-message-inline-action:disabled{cursor:wait;opacity:.6}.client-message-inline-action svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.client-message-inline-send{background:#ffffffb8;color:#111;animation:clientMessageSendIn .16s ease-out both}.client-message-inline-send:hover{background:#ffffffe6}.client-message-inline-field{position:relative;height:62px;min-height:62px;box-sizing:border-box;padding:0 13px;border:.5px solid rgba(255,255,255,.42);border-radius:31px;background:#ffffff9e;backdrop-filter:blur(28px) saturate(1.35);-webkit-backdrop-filter:blur(28px) saturate(1.35);transition:height .18s ease,border-radius .18s ease}.client-message-inline-field textarea{display:block;box-sizing:border-box;width:100%;height:62px;min-height:62px;resize:none;overflow:hidden;border:0;outline:0;padding:20px 0;background:transparent;color:#111;font:inherit;font-size:14px;line-height:1.35;transition:height .18s ease}.client-message-inline-field textarea::placeholder{color:#3c3c438a}.client-message-inline-field span{display:block;margin:2px 0 3px;color:#b43737;font-size:11px;font-weight:650}@keyframes clientMessageInlineIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes clientMessageSendIn{0%{opacity:0;transform:translate(-8px) scale(.9)}to{opacity:1;transform:translate(0) scale(1)}}.client-phone-screen:has(.client-message-inline) .client-bottom-tabbar,.client-phone-screen:has(.client-message-inline) .client-profile-button,.client-phone-screen:has(.client-message-inline) .client-daily-message>.client-message-button{opacity:0;pointer-events:none;filter:blur(9px);transition:opacity .18s ease,filter .18s ease}.client-bottom-tab:hover:not(.active){color:#111;background:transparent}.client-bottom-tab:hover:not(.active) .client-bottom-tab-icon{color:#111}.client-bottom-tab.active:hover,.client-bottom-tab.active:hover .client-bottom-tab-icon{color:#fff}.client-bottom-tabbar{position:relative;min-width:0;width:100%;height:62px;display:grid;grid-template-columns:repeat(3,1fr);align-items:stretch;gap:2px;padding:4px;border:0;border-radius:999px;background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none;pointer-events:auto;overflow:clip;isolation:isolate;transform:translateZ(0);background-clip:padding-box;box-shadow:0 1px #ffffff61 inset,0 14px 38px #00000024}.client-bottom-tab-indicator{position:absolute;top:4px;left:4px!important;bottom:4px;width:calc((100% - 12px) / 3)!important;border-radius:999px;background:var(--client-active);box-shadow:0 8px 20px #00000029;transform:translate(calc(var(--client-tab-shift, 0%) + var(--client-tab-gap-shift, 0px)));transition:transform .28s cubic-bezier(.16,1,.3,1);pointer-events:none;z-index:0}.client-bottom-tab{position:relative;z-index:1;min-width:0;border:none;border-radius:999px;background:transparent;color:var(--muted);font:inherit;font-size:10px;font-weight:700;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer;transition:color .2s ease,transform .22s cubic-bezier(.16,1,.3,1),font-weight .2s ease}.client-bottom-tab.active{color:#fff;font-weight:850;transform:translateY(-1px)}.client-bottom-tab-icon{transition:color .2s ease,transform .22s cubic-bezier(.16,1,.3,1)}.client-bottom-tab.active .client-bottom-tab-icon{transform:scale(1.06)}.today-client-messages{display:grid;gap:8px;margin-top:12px}.today-client-message-capsule{min-height:50px;display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:10px;padding:10px 14px 10px 11px;border:.5px solid rgba(0,0,0,.04);border-radius:25px;background:#fff;color:#111}.today-client-message-icon{width:22px;height:22px;display:grid;place-items:center;color:var(--muted)}.today-client-message-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9}.today-client-message-capsule p{min-width:0;overflow-wrap:anywhere;font-size:17px;font-weight:650;line-height:1.35}.client-phone-screen .client-today-main{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;overflow:auto;overflow-anchor:none;scroll-padding-bottom:104px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.32) transparent;background:transparent}.client-phone-screen .client-today-main::-webkit-scrollbar{width:3px}.client-phone-screen .client-today-main::-webkit-scrollbar-track{background:transparent}.client-phone-screen .client-today-main::-webkit-scrollbar-thumb{border-radius:999px;background:#ffffff52}.client-phone-screen .client-week-main{background:#fff}.client-phone-screen .client-shopping-main{position:absolute;top:0;right:0;bottom:0;left:0;display:block;grid-template-columns:none;width:100%;min-width:0;height:auto;overflow-x:hidden;overflow-y:auto;background:transparent}.client-phone-screen .client-progress-main{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;min-width:0;height:auto;overflow-x:hidden;overflow-y:auto;background:transparent}.client-phone-screen .client-profile-main{display:block!important;grid-template-columns:none!important;width:100%;overflow-y:auto;padding:94px 18px 120px!important;box-sizing:border-box}.client-mobile-profile{width:100%;max-width:none;display:flex;flex-direction:column;gap:28px;align-items:stretch}.client-mobile-profile-section{width:100%;display:grid;gap:13px}.client-mobile-profile-section h3{margin:0;color:#fff;font-size:15px;line-height:1.1;font-weight:850}.client-mobile-profile-grid{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:stretch}.client-mobile-action{all:unset;grid-column:1 / -1;box-sizing:border-box;height:46px;display:flex;align-items:center;justify-content:center;border:1.2px solid rgba(255,255,255,.78);border-radius:999px;background:#ffffff29;color:#fff;font-size:14px;font-weight:700;cursor:pointer;transition:background-color .15s}.client-mobile-action:hover{background:#ffffff42}.client-mobile-action:disabled{opacity:.6;cursor:default}.client-mobile-action:focus-visible{outline:2px solid #fff;outline-offset:2px}.account-feedback{grid-column:1 / -1;margin:0;font-size:12px;font-weight:600;line-height:1.35}.account-feedback--ok{color:#9fe6b8}.account-feedback--err{color:#ffb4ab}.client-mobile-field{min-width:0;width:100%;max-width:none;grid-column:1 / -1;display:grid;gap:6px}.client-mobile-stepper-field{grid-column:auto}.client-mobile-field.is-wide,.client-mobile-field--gyn_period_start,.client-mobile-field--gyn_period_end{grid-column:1 / -1}.client-mobile-field--gyn_period_start input[type=date],.client-mobile-field--gyn_period_end input[type=date]{display:block;inline-size:100%;min-width:0;max-width:100%;box-sizing:border-box;overflow:hidden;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:center}.client-mobile-field--gyn_period_start input[type=date]::-webkit-date-and-time-value,.client-mobile-field--gyn_period_end input[type=date]::-webkit-date-and-time-value{min-width:0;margin:0;text-align:center}.client-mobile-protocol-list{display:grid;gap:8px}.client-mobile-protocol{display:flex;align-items:center;gap:6px;border:1.2px solid rgba(60,60,67,.18);border-radius:14px;padding:8px 8px 8px 10px}.client-mobile-protocol-open{flex:1;min-width:0;display:flex;align-items:center;gap:10px;border:none;background:transparent;padding:0;text-align:left;color:inherit;cursor:pointer}.client-mobile-protocol-thumb{width:34px;height:42px;flex-shrink:0;border-radius:7px;background:#3c3c431a;display:grid;place-items:center;overflow:hidden}.client-mobile-protocol-thumb img{width:100%;height:100%;object-fit:cover}.client-mobile-protocol-thumb em{font-style:normal;font-size:9px;font-weight:800;color:#111}.client-mobile-protocol-text{display:grid;gap:2px;min-width:0}.client-mobile-protocol-text strong{font-size:14px;font-weight:700;color:#111;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-mobile-protocol-text span{font-size:11px;color:#3c3c4399;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-mobile-protocol-download{width:34px;height:34px;flex-shrink:0;border:none;border-radius:50%;background:#3c3c4314;display:grid;place-items:center;cursor:pointer}.client-mobile-protocol-download svg{width:16px;height:16px;fill:none;stroke:#111;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.client-mobile-anthro-field{grid-column:auto}.client-mobile-anthro-status{color:#ffffffb8;font-size:12px;font-weight:700;text-align:center}.client-mobile-field .client-profile-input,.client-mobile-field .client-profile-textarea{width:100%;max-width:none;border:1.2px solid rgba(255,255,255,.78);background:transparent;box-shadow:none;color:#fff}.client-mobile-field .client-profile-input{height:46px;padding-inline:14px}select.client-profile-input{cursor:pointer}.client-mobile-field select.client-profile-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:46px;border:1.5px solid rgba(255,255,255,.78);border-radius:999px;background-color:transparent;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px 16px;padding:0 36px 0 14px;font-weight:700;color:#fff}.client-mobile-field select.client-profile-input option{color:var(--text);background:#fff}.client-mobile-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;font:inherit;cursor:pointer}.client-mobile-select-trigger span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-mobile-select-trigger svg{width:17px;height:17px;flex:0 0 17px;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.client-mobile-field .client-profile-textarea{min-height:92px;border-radius:18px;resize:none}.client-mobile-field .client-profile-input:disabled{opacity:1;-webkit-text-fill-color:#fff}.client-mobile-field .client-profile-label{color:#ffffffc7}.client-mobile-segmented{position:relative;width:100%;min-height:46px;box-sizing:border-box;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;border:1.2px solid rgba(255,255,255,.78);border-radius:999px;background:transparent;overflow:hidden}.client-mobile-segmented:before{content:"";position:absolute;z-index:0;inset:4px auto 4px 4px;width:calc(50% - 6px);border-radius:999px;background:var(--client-active);transform:translate(0);transition:transform .38s cubic-bezier(.22,1,.36,1),opacity .2s ease}.client-mobile-segmented:has(.client-mobile-segment:nth-child(2).active):before{transform:translate(calc(100% + 4px))}.client-mobile-segment{position:relative;z-index:1;border:none;display:grid;place-items:center;min-width:0;border-radius:999px;background:transparent;color:#ffffffb8;font-size:14px;font-weight:680;line-height:1;font:inherit;cursor:pointer}.client-mobile-segment.active{background:transparent;color:#fff;-webkit-text-fill-color:#fff;box-shadow:none}.client-mobile-stepper{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;min-width:0;height:46px;border:1.2px solid rgba(255,255,255,.78);border-radius:999px;overflow:hidden}.client-mobile-stepper .client-profile-input{height:44px;border:none;border-radius:999px;padding:0 12px;text-align:center;background:transparent}.client-mobile-stepper.has-suffix{grid-template-columns:minmax(0,1fr) auto;column-gap:4px;padding-right:12px}.client-mobile-stepper.has-suffix .client-profile-input{padding-right:0;text-align:right}.client-mobile-stepper-suffix{font:inherit;color:inherit;opacity:.62;white-space:nowrap}.client-mobile-stepper-field.is-birth-year .client-profile-input{text-align:center}.client-mobile-stepper-field.is-birth-year .client-profile-label{text-align:left}.client-mobile-stepper button{width:32px;height:44px;border:none;background:transparent;color:#ffffffdb;font:inherit;font-size:25px;font-weight:520;line-height:1;cursor:pointer}@media (max-width: 599px){.client-mobile-profile-section:first-child .client-mobile-field--email{order:4}.client-mobile-profile-section:first-child .client-mobile-field--telegram,.client-mobile-profile-section:first-child .client-mobile-field--instagram{grid-column:auto;order:5}.client-mobile-profile-section:first-child .client-mobile-field--gender{order:6}.client-mobile-profile-section:first-child .client-mobile-field--height{order:7}.client-mobile-profile-section:first-child .client-mobile-field--birth_year{order:8}}.client-picker-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:120;display:flex;align-items:flex-end;justify-content:center;padding:18px;box-sizing:border-box;background:#0000002e;animation:clientPickerOverlayIn .22s ease both}.client-picker-overlay.is-closing{animation:clientPickerOverlayOut .2s ease both}.client-picker-sheet{width:100%;max-height:min(560px,calc(100% - 86px));border-radius:28px;background:#fff;color:#111;overflow:hidden;box-shadow:0 22px 70px #00000038;display:grid;grid-template-rows:auto auto minmax(0,1fr);animation:clientPickerSheetIn .26s cubic-bezier(.16,1,.3,1) both}.client-picker-overlay.is-closing .client-picker-sheet{animation:clientPickerSheetOut .2s ease both}.client-picker-head{min-height:58px;padding:0 16px 0 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(60,60,67,.12)}.client-picker-head strong{min-width:0;color:#111;font-size:18px;font-weight:850;line-height:1.1}.client-picker-head button{border:none;border-radius:999px;background:#84a9c82e;color:#111;height:34px;padding:0 14px;font:inherit;font-size:13px;font-weight:780;cursor:pointer}.client-picker-search{grid-row:2;min-height:0;margin:10px 16px 0;padding:0 14px;height:42px;display:flex;align-items:center;gap:8px;border-radius:999px;background:#3c3c430f}.client-picker-search svg{width:17px;height:17px;flex:0 0 17px;fill:none;stroke:#3c3c438c;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.client-picker-search input{flex:1;min-width:0;border:none;background:transparent;color:#111;font:inherit;font-size:15px}.client-picker-search input:focus{outline:none}.client-picker-search input::placeholder{color:#3c3c4366}.client-picker-search-clear{flex:0 0 auto;width:22px;height:22px;padding:0;border:none;border-radius:50%;background:#3c3c4324;display:flex;align-items:center;justify-content:center;cursor:pointer}.client-picker-search-clear svg{width:11px;height:11px;stroke:#111}.client-picker-options{grid-row:3;min-height:0;overflow-y:auto;padding:12px;display:grid;align-content:start;gap:9px}.client-picker-option{width:100%;min-height:56px;border:1px solid transparent;border-radius:999px;background:transparent;color:#111;padding:0 16px 0 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;font:inherit;font-size:15px;font-weight:680;text-align:left;cursor:pointer}.client-picker-option.active{background:#84a9c82e;border-color:#84a9c814}.client-picker-option i{width:22px;height:22px;flex:0 0 22px;border:2px solid rgba(60,60,67,.28);border-radius:50%;box-sizing:border-box}.client-picker-option.active i{border-color:#111;background:radial-gradient(circle,#111 0 40%,transparent 44%)}.client-picker-empty{margin:24px 0;text-align:center;color:#3c3c4380;font-size:14px;font-weight:620}@media (min-width: 480px){.client-picker-overlay{align-items:center;padding:32px}.client-picker-sheet{width:min(460px,calc(100% - 64px));max-height:min(840px,calc(100% - 64px))}}@keyframes clientPickerOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes clientPickerOverlayOut{0%{opacity:1}to{opacity:0}}@keyframes clientPickerSheetIn{0%{opacity:0;transform:translateY(28px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes clientPickerSheetOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(28px) scale(.98)}}.today-meals-view{box-sizing:border-box;width:100%;flex:0 0 auto;min-height:100%;max-height:none;padding:calc(var(--today-nav-top) + var(--today-nav-expanded-h) + var(--today-nav-gap)) 18px 0;display:flex;flex-direction:column;gap:14px;justify-content:flex-start;transition:padding-top .28s cubic-bezier(.16,1,.3,1)}.client-phone-screen.today-nav-compact .today-meals-view{padding-top:calc(var(--today-nav-top) + var(--today-nav-collapsed-h) + var(--today-nav-gap))}.today-meals-view--empty{justify-content:center;color:var(--muted)}.today-meals-view--empty h2{margin:5px 0 8px;color:var(--text);font-size:24px}.today-meals-head{display:flex;flex-direction:column;gap:4px;padding:4px 0 0}.today-date-nav{position:absolute;left:18px;right:18px;top:var(--today-nav-top);z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;min-height:var(--today-nav-expanded-h);pointer-events:auto;overflow:visible;transition:top .28s cubic-bezier(.16,1,.3,1),min-height .28s cubic-bezier(.16,1,.3,1)}.today-date-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:62px;align-items:center;justify-content:center;column-gap:4px;row-gap:8px;width:100%}.client-phone-screen.today-nav-compact .today-date-nav{justify-content:flex-start;height:var(--today-nav-collapsed-h);min-height:var(--today-nav-collapsed-h)}.client-phone-screen.today-nav-compact .today-date-row--focus-0 .today-date-pill[data-row="1"],.client-phone-screen.today-nav-compact .today-date-row--focus-0 .today-date-pill[data-row="2"],.client-phone-screen.today-nav-compact .today-date-row--focus-1 .today-date-pill[data-row="0"],.client-phone-screen.today-nav-compact .today-date-row--focus-1 .today-date-pill[data-row="2"],.client-phone-screen.today-nav-compact .today-date-row--focus-2 .today-date-pill[data-row="0"],.client-phone-screen.today-nav-compact .today-date-row--focus-2 .today-date-pill[data-row="1"]{display:none}.today-date-pill{width:min(52px,100%);height:min(52px,100%);flex:0 0 auto;justify-self:center;align-self:center;border:none;border-radius:999px;background:#ffffff38;color:#ffffffc7;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:0;font:inherit;cursor:pointer;backdrop-filter:blur(16px) saturate(1.25);-webkit-backdrop-filter:blur(16px) saturate(1.25);transition:width .34s cubic-bezier(.16,1,.3,1),height .34s cubic-bezier(.16,1,.3,1),flex-basis .34s cubic-bezier(.16,1,.3,1),background .26s ease,color .24s ease,opacity .24s ease,box-shadow .24s ease,border-color .24s ease}.today-date-pill.is-edge:not(.active){opacity:.6}.today-date-pill.is-near-edge:not(.active){opacity:.8}.today-date-pill.active{width:min(62px,100%);height:min(62px,100%);flex-basis:auto;color:var(--accent-dark);background:#ffffffe0;box-shadow:0 1px #ffffffad inset,0 8px 18px #0000001f}.today-date-pill span{font-size:9px;font-weight:500;text-transform:uppercase;line-height:1;transition:color .2s ease}.today-date-pill strong{font-size:16px;font-weight:500;line-height:1;transition:color .2s ease}.today-date-pill em{font-style:normal;font-size:9px;font-weight:850;line-height:1;text-transform:uppercase;transition:color .2s ease}.today-date-pill:hover:not(.active),.today-date-pill:hover:not(.active) span,.today-date-pill:hover:not(.active) strong,.today-date-pill:hover:not(.active) em{color:#111}.today-date-pill.active span,.today-date-pill.active strong,.today-date-pill.active em{font-weight:850}.today-meals-head h2{color:#fff;font-size:24px;line-height:1.08;font-weight:850;letter-spacing:0;margin:0;text-shadow:0 2px 12px rgba(0,0,0,.16)}.today-meals-list{position:relative;display:flex;flex-direction:column;gap:10px}.today-anthro-card{width:100%;border:1px solid rgba(0,0,0,.04);border-radius:26px;background:#fff;color:#111;padding:0 14px 14px 16px;box-sizing:border-box;display:grid;gap:12px;max-height:1200px;overflow:hidden;transition:max-height .34s cubic-bezier(.16,1,.3,1),padding .28s ease,border-radius .28s ease,opacity .22s ease}.today-anthro-head{display:flex;align-items:center;justify-content:flex-start;text-align:left;width:100%;min-height:52px;border:none;background:transparent;color:inherit;padding:0;font:inherit;cursor:pointer}.today-anthro-head:disabled{cursor:default}.today-anthro-card.is-collapsed{min-height:52px;max-height:52px;padding:0 96px 0 16px;border-radius:26px;gap:0}.today-anthro-card.is-collapsed .today-anthro-head{min-height:50px}.today-anthro-complete{width:24px;height:24px;flex:0 0 24px;border:2.4px solid #111;border-radius:50%;background:transparent;margin-right:14px}.today-anthro-complete.checked{background:radial-gradient(circle,#111 0 40%,transparent 44%)}.today-anthro-head span{display:block;min-width:0}.today-anthro-head strong{color:#111;font-size:18px;font-weight:820;line-height:26px}.today-anthro-head em,.today-anthro-head b{color:#3c3c4399;font-style:normal;font-size:12px;font-weight:720;line-height:1}.today-anthro-head b{flex-shrink:0;padding-top:3px}.today-anthro-head svg{width:17px;height:17px;margin-left:8px;stroke:#3c3c439e;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transform:rotate(180deg);transition:transform .24s ease}.today-anthro-head:disabled svg{opacity:0}.today-anthro-card.is-collapsed .today-anthro-head svg{transform:rotate(0)}.today-anthro-body-shell{display:grid;grid-template-rows:1fr;min-width:0;overflow:hidden;opacity:1;transform:translateY(0);transition:grid-template-rows .34s cubic-bezier(.16,1,.3,1),opacity .2s ease,transform .3s cubic-bezier(.16,1,.3,1)}.today-anthro-card.is-collapsed .today-anthro-body-shell{grid-template-rows:0fr;opacity:0;transform:translateY(-8px);pointer-events:none}.today-anthro-body{display:grid;gap:14px;padding:0;border:none;border-radius:0;background:transparent;min-height:0;overflow:visible;transition:padding .28s ease,border-width .28s ease}.today-anthro-card.is-collapsed .today-anthro-body{padding-top:0;padding-bottom:0;border-top-width:0;border-bottom-width:0}.today-anthro-grid{display:grid;grid-template-columns:1fr;gap:14px}.today-anthro-field{min-width:0;display:grid;gap:8px}.today-anthro-field>span:first-child{color:#3c3c43a3;font-size:13px;font-weight:850;line-height:1.1;text-align:center;text-transform:uppercase}.today-anthro-control{width:100%;height:50px;border:1px solid rgba(60,60,67,.18);border-radius:999px;background:transparent;box-sizing:border-box;padding:4px;display:grid;grid-template-columns:minmax(0,1fr);align-items:center}.today-anthro-control button{width:42px;height:42px;border:none;border-radius:0;background:transparent;color:#111111b8;display:grid;place-items:center;padding:0;cursor:pointer}.today-anthro-control button:active{color:#111;background:transparent}.today-anthro-control svg{width:29px;height:29px;stroke:currentColor;fill:none;stroke-width:2.7;stroke-linecap:round;stroke-linejoin:round}.today-anthro-field input{width:100%;height:42px;border:none;background:transparent;color:#111;box-sizing:border-box;padding:0 4px;font:inherit;font-size:20px;font-weight:650;text-align:center;outline:none}.today-anthro-control:focus-within{border-color:#11111161;background:transparent}.today-anthro-status{min-height:13px;color:#3c3c438f;font-size:12px;font-weight:700;line-height:1;text-align:center}.today-progress-action{width:100%}.today-progress-history{width:100%;min-height:52px;box-sizing:border-box;padding:4px 14px 4px 4px;border-radius:999px;display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:10px;background:#fff;color:#3c3c439e;font-size:15px;font-weight:750;container-type:inline-size}.today-progress-history:has(.today-progress-history-photos){grid-template-columns:auto minmax(0,1fr)}.today-progress-history-state{width:100%;text-align:center}.today-progress-history.is-complete{border-color:#3c3c432e;color:#111}.today-progress-history-values-wrapper{position:relative;min-width:0;width:100%}.today-progress-history-values{min-width:0;display:flex;align-items:center;justify-content:space-evenly;gap:12px;overflow:hidden}.today-progress-history-values.is-cycling{animation:progressHistoryPageIn .34s cubic-bezier(.16,1,.3,1) both}.today-progress-history-values-measure{position:absolute;top:0;left:0;height:0;visibility:hidden;pointer-events:none;overflow:visible;z-index:-1}.today-progress-history-values>span{min-width:0;display:inline-flex;align-items:baseline;justify-content:center;gap:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.today-progress-history-values small{color:#3c3c439e;font-size:16px;font-weight:600}.today-progress-history-values b{color:#111;font-size:16px;font-weight:820}.today-progress-history-photos{min-width:0;display:flex;align-items:center;justify-content:flex-start;flex-wrap:nowrap;gap:5px}.today-progress-history-photos>span{width:44px;height:44px;flex:0 0 44px;overflow:hidden;border:0;border-radius:50%;opacity:0;transform:translateY(5px) scale(.86);animation:progressHistoryPhotoIn .32s cubic-bezier(.16,1,.3,1) forwards;animation-delay:calc(var(--photo-index) * 90ms)}.today-progress-history-photos img{display:block;width:100%;height:100%;object-fit:cover}@keyframes progressHistoryPhotoIn{to{opacity:1;transform:translateY(0) scale(1)}}@keyframes progressHistoryPageIn{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@container (max-width: 430px){.today-progress-history{padding-inline:10px;gap:8px}.today-progress-history-values{gap:7px}.today-progress-history-photos{gap:4px}.today-progress-history-photos>span{width:44px;height:44px;flex-basis:44px}}.today-progress-add-button{width:100%;min-height:52px;border:0;border-radius:999px;background:var(--client-active);color:#fff;display:flex;align-items:center;justify-content:center;gap:9px;font:inherit;font-size:16px;font-weight:800;letter-spacing:-.02em;cursor:pointer;box-shadow:0 8px 18px #00000026}.today-progress-add-button:active{transform:translateY(1px);filter:brightness(.9)}.today-progress-add-button>span{font-size:24px;line-height:0;font-weight:400;margin-top:-2px}.progress-modal-backdrop{position:fixed;z-index:2147483647;top:0;right:0;bottom:0;left:0;padding:16px;background:#11111180;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;isolation:isolate;animation:progressBackdropIn .22s ease-out both}.progress-modal{--progress-control-size: 50px;--progress-control-half: 25px;--progress-control-radius: 25px;--progress-body-gutter: 20px;--progress-outline: #d6d6da;--progress-accent: #7faad2;--progress-modal-radius: calc(var(--progress-body-gutter) + var(--progress-control-half));--progress-corner-gap: var(--progress-body-gutter);position:relative;width:min(100%,510px);max-height:min(88vh,800px);background:#fff;border-radius:var(--progress-modal-radius);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 62px #00000057;animation:progressSheetIn .24s .22s cubic-bezier(.16,1,.3,1) both}.progress-modal-backdrop.is-closing{animation:progressBackdropOut .22s .2s ease-in both}.progress-modal.is-closing{animation:progressSheetOut .2s ease-in both}.progress-modal-close{position:relative;z-index:1;width:var(--progress-control-size);height:var(--progress-control-size);border:0;border-radius:50%;padding:0;background:#929299;color:#fff;font:inherit;font-size:36px;font-weight:350;line-height:46px;cursor:pointer}.progress-modal-close:disabled{opacity:.45;cursor:wait}.progress-modal-body{overflow-y:auto;padding:28px var(--progress-body-gutter) var(--progress-body-gutter)}.progress-modal-scroll-control{position:sticky;z-index:4;top:0;height:calc(var(--progress-modal-radius) + var(--progress-control-half));margin-bottom:0;display:flex;justify-content:flex-end;align-items:flex-start;padding-top:calc(var(--progress-modal-radius) - var(--progress-control-half));padding-right:calc(var(--progress-modal-radius) - var(--progress-control-half) - var(--progress-body-gutter));pointer-events:none}.progress-modal-scroll-control:before{content:"";position:absolute;z-index:0;top:0;right:calc(-1 * var(--progress-body-gutter));left:calc(-1 * var(--progress-body-gutter));height:88px;background:linear-gradient(to bottom,#ffffffc2,#ffffff7a 42%,#fff0);-webkit-mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.72) 46%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.72) 46%,transparent 100%);opacity:0;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);transition:opacity .18s ease,-webkit-backdrop-filter .18s ease,backdrop-filter .18s ease;pointer-events:none}.progress-modal-scroll-control.has-scrolled:before{opacity:1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.progress-modal-scroll-control .progress-modal-close{pointer-events:auto}.progress-modal-section{padding:10px 0}.progress-input-label{display:grid;gap:8px;color:#111;font-size:15px;font-weight:800;text-align:center}.progress-input-label input{width:100%;height:var(--progress-control-size);border:1px solid var(--progress-outline);border-radius:var(--progress-control-radius);box-sizing:border-box;padding:0 13px;background:#fff;color:#111;font:inherit;font-size:18px;font-weight:650;text-align:center;outline:none}.progress-input-label input:focus{border-color:var(--progress-accent);box-shadow:0 0 0 3px #7faad22e}.progress-input-label input[type=date]{color:#a6a6ab;font-size:14px;text-align:center;color-scheme:light}.progress-input-label input[type=date]::-webkit-datetime-edit,.progress-input-label input[type=date]::-webkit-datetime-edit-fields-wrapper,.progress-input-label input[type=date]::-webkit-datetime-edit-text,.progress-input-label input[type=date]::-webkit-datetime-edit-month-field,.progress-input-label input[type=date]::-webkit-datetime-edit-day-field,.progress-input-label input[type=date]::-webkit-datetime-edit-year-field{color:#a6a6ab}.progress-input-label input[type=date]::-webkit-calendar-picker-indicator{opacity:.4}.progress-photo-choices{display:flex;justify-content:center;gap:clamp(16px,6vw,32px)}.progress-photo-choice{width:96px;display:grid;justify-items:center;align-content:center;gap:7px;color:#898990;font-size:12px;font-weight:600;line-height:1.2;text-align:center;cursor:pointer}.progress-photo-choice input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.progress-photo-choice>span:last-child{width:100%;text-align:center}.progress-photo-icon{width:58px;height:58px;border:1px solid var(--progress-outline);border-radius:50%;display:grid;place-items:center;box-sizing:border-box;color:#111;font-size:40px;font-weight:350;line-height:1;overflow:hidden}.progress-photo-icon img{display:block;width:100%;height:100%;object-fit:cover}.progress-photo-choice.is-selected .progress-photo-icon{border-color:var(--progress-accent);background:#fff;color:#fff;box-shadow:none}.progress-score-list{display:grid;gap:16px;padding:5px 0}.progress-score{display:grid;gap:8px}.progress-score>span{display:flex;justify-content:center;gap:12px;color:#111;font-size:16px;text-align:center}.progress-score>span b{font-weight:750}.progress-score-options{position:relative;isolation:isolate;height:var(--progress-control-size);display:grid;grid-template-columns:repeat(10,minmax(0,1fr));overflow:hidden;border:1px solid var(--progress-outline);border-radius:var(--progress-control-radius)}.progress-score-indicator{position:absolute;z-index:0;top:50%;left:calc(5% + var(--progress-score-shift));width:46px;height:46px;border-radius:50%;background:var(--progress-accent);box-shadow:none;transform:translate(-50%,-50%);transition:left .28s cubic-bezier(.22,1,.36,1);pointer-events:none}.progress-score-options button{position:relative;z-index:1;min-width:0;height:100%;border:0;border-radius:0;padding:0;background:transparent;color:#111;font:inherit;font-size:clamp(12px,3.6vw,18px);font-weight:500;line-height:1;cursor:pointer;transition:color .18s ease}.progress-score-options button.is-active{background:transparent;color:#fff;font-weight:800}.progress-score-options button:focus-visible,.progress-photo-choice:focus-within .progress-photo-icon{outline:2px solid var(--progress-accent);outline-offset:2px}.progress-score small{display:flex;justify-content:space-between;gap:14px;color:#898990;font-size:12px;font-weight:600}.progress-score small i{max-width:46%;font-style:normal}.progress-score small i:last-child{text-align:right}.progress-date-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.progress-date-field{display:grid;gap:8px;min-width:0}.progress-date-field>small{color:#898990;font-size:12px;font-weight:600;text-align:center}.progress-date-field:first-child>small{text-align:left}.progress-date-field:last-child>small{text-align:right}.progress-date-picker{min-width:0}.progress-date-trigger{width:100%;height:var(--progress-control-size);border:1px solid var(--progress-outline);border-radius:var(--progress-control-radius);padding:0 8px;background:#fff;color:#a6a6ab;font:inherit;font-size:14px;font-weight:650;font-variant-numeric:tabular-nums;text-align:center;cursor:pointer}.progress-date-popover{position:fixed;z-index:2147483648;box-sizing:border-box;min-height:330px;padding:14px;border:1px solid var(--progress-outline);border-radius:24px;background:#fff;box-shadow:0 18px 44px #00000038}.progress-date-popover-head{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;gap:8px;margin-bottom:12px}.progress-date-popover-head strong{color:#111;font-size:15px;text-align:center}.progress-date-popover-head button{width:34px;height:34px;border:0;border-radius:50%;background:#f2f2f4;color:#111;font:inherit;font-size:24px;line-height:1;cursor:pointer}.progress-date-weekdays,.progress-date-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.progress-date-weekdays{margin-bottom:6px}.progress-date-weekdays span{color:#898990;font-size:11px;font-weight:700;text-align:center}.progress-date-days button,.progress-date-days span{height:32px;border:0;border-radius:50%;background:transparent;color:#111;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.progress-date-days button.is-selected{background:var(--progress-accent);color:#fff}.progress-input-caption{margin:18px 0 9px;color:#111;font-size:15px;font-weight:800;text-align:center}.progress-photo-title{margin-top:0}.progress-womens-title{margin:10px 0 14px;color:#111;font-size:16px;font-weight:750;text-align:center}.progress-pms-chips{display:grid;gap:10px;margin-top:18px;color:#111;font-size:16px;font-weight:750;text-align:center}.progress-pms-chips>div{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px}.progress-pms-chips button{height:var(--progress-control-size);border:1px solid var(--progress-outline);border-radius:var(--progress-control-radius);padding:0 17px;background:#fff;color:#111;font:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:background-color .16s ease,color .16s ease,border-color .16s ease,transform .16s ease}.progress-pms-chips button.is-selected{border-color:var(--progress-accent);background:var(--progress-accent);color:#fff;box-shadow:none}.progress-pms-chips button:active{transform:scale(.96)}.progress-modal-footer{padding:20px 0 0;background:#fff;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);justify-items:stretch;gap:10px}.progress-save-status{grid-column:1 / -1;color:#707078;font-size:12px;font-weight:650;text-align:center}.progress-cancel-button,.progress-save-button{width:100%;min-height:var(--progress-control-size);border:1px solid var(--progress-accent);border-radius:var(--progress-control-radius);padding:0 14px;font:inherit;font-size:15px;font-weight:800;cursor:pointer;box-shadow:none;transition:background-color .22s ease,border-color .22s ease,color .22s ease,opacity .22s ease,transform .18s ease}.progress-cancel-button{border-color:var(--progress-outline);background:transparent;color:#111}.progress-cancel-button.is-primary:not(:disabled){border-color:var(--progress-accent);background:var(--progress-accent);color:#fff}.progress-save-button{background:var(--progress-accent);color:#fff}.progress-cancel-button:active:not(:disabled),.progress-save-button:active:not(:disabled){transform:scale(.98)}.progress-cancel-button:disabled,.progress-save-button:disabled{cursor:default}.progress-cancel-button:disabled{border-color:var(--progress-outline);background:transparent;color:#a0a0a6}.progress-save-button:disabled{border-color:var(--progress-outline);background:#f1f1f3;color:#a0a0a6;opacity:1}@keyframes progressBackdropIn{0%{background:#1110;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}to{background:#11111180;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}}@keyframes progressBackdropOut{0%{background:#11111180;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}to{background:#1110;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}}@keyframes progressSheetIn{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes progressSheetOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(10px) scale(.98)}}@media (max-width: 380px){.progress-modal-backdrop{padding:8px}.progress-modal{max-height:94vh}.progress-modal{--progress-body-gutter: 16px}.progress-modal-body{padding-left:var(--progress-body-gutter);padding-right:var(--progress-body-gutter)}.progress-modal-scroll-control:before{right:-16px;left:-16px}}.client-progress-view{--client-progress-gap: 18px;min-height:100%;box-sizing:border-box;padding:var(--client-progress-gap) var(--client-progress-gap) calc(190px + env(safe-area-inset-bottom));display:flex;flex-direction:column;justify-content:flex-start;gap:0}.client-progress-list{flex:0 0 auto;min-height:0;display:grid;grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;align-content:start;gap:calc(var(--client-progress-gap) * 1.8)}.client-progress-item{min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:8px}.client-progress-item>h3{margin:0;color:#111;font-size:17px;font-weight:750;line-height:1.15;text-align:center}.client-progress-card{min-width:0;min-height:0;border:1px solid rgba(0,0,0,.04);border-radius:26px;background:#fff;color:#111;padding:12px 16px 16px;display:grid;grid-template-rows:minmax(0,1fr);box-sizing:border-box;overflow:hidden}.client-progress-chart{width:100%;height:auto;min-height:0;aspect-ratio:420 / 190;margin:2px 0 0;display:block;overflow:visible}.client-progress-empty{min-height:calc(100vh - 308px);display:flex;align-items:center;justify-content:center;padding-bottom:160px;text-align:center}.client-progress-empty p{margin:0;color:#3c3c43b8;font-size:24px;line-height:1.08;font-weight:650}.today-bottom-spacer{flex:0 0 92px;height:92px;pointer-events:none}.today-day-stage{width:100%;flex:0 0 auto;display:grid;min-height:min-content}.today-day-pane{grid-area:1 / 1;min-width:0;will-change:transform}.today-day-stage.is-switching .today-day-pane--active{animation:todayDayInForward .32s cubic-bezier(.16,1,.3,1) both}.today-day-pane--leaving{pointer-events:none;animation:todayDayOutForward .32s cubic-bezier(.16,1,.3,1) both}.today-day-stage.is-switching.today-day-stage--back .today-day-pane--active{animation-name:todayDayInBack}.today-day-stage.is-switching.today-day-stage--back .today-day-pane--leaving{animation-name:todayDayOutBack}@keyframes todayDayInForward{0%{transform:translate(105%)}to{transform:translate(0)}}@keyframes todayDayOutForward{0%{transform:translate(0)}to{transform:translate(-105%)}}@keyframes todayDayInBack{0%{transform:translate(-105%)}to{transform:translate(0)}}@keyframes todayDayOutBack{0%{transform:translate(0)}to{transform:translate(105%)}}.today-meals-empty{min-height:calc(100vh - 308px);display:flex;align-items:center;justify-content:center;flex-direction:column;padding-bottom:210px;color:#3c3c43b8;text-align:center}.today-meals-empty p{margin:0;color:#3c3c43b8;font-size:30px;line-height:1.08;font-weight:650;text-shadow:none}.today-meal-card{width:100%;position:relative;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(255,255,255,.12);border-radius:26px;background:#ffffff38;backdrop-filter:blur(16px) saturate(1.18);-webkit-backdrop-filter:blur(16px) saturate(1.18);box-shadow:none;padding:14px 14px 14px 16px;display:flex;flex-direction:column;gap:9px;text-align:left;color:#fff;cursor:pointer;overflow:hidden;max-height:52px;transition:max-height .36s cubic-bezier(.16,1,.3,1),box-shadow .28s ease,opacity .22s ease,transform .28s cubic-bezier(.16,1,.3,1),background .28s ease}.today-meal-card--exercise{background:#a9c9dfb8}.today-meal-card--supplement{background:#e3c19aa8}.today-event-complete{position:absolute;left:14px;top:15px;z-index:2;width:24px;height:24px;padding:0;border:2.4px solid rgba(60,60,67,.32);border-radius:50%;background:transparent;cursor:pointer;flex-shrink:0}.today-event-complete.checked{border-color:#111;background:radial-gradient(circle,#111 0 40%,transparent 44%)}.today-meal-card:not(.expanded):not(.is-collapsing) .today-event-complete,.today-event-card .today-event-complete{top:50%;transform:translateY(-50%)}.today-meal-card>.today-meal-top{padding-left:34px;box-sizing:border-box}.today-meal-card.is-completed{opacity:.52}.today-meal-card:not(.expanded){height:52px;min-height:52px;padding:0 96px 0 16px;border-radius:26px;display:flex;flex-direction:row;align-items:center;gap:0}.today-meal-card.is-collapsing{height:auto;max-height:52px;padding:14px 14px 14px 16px;display:flex;flex-direction:column;align-items:stretch;gap:9px;border-radius:26px}.today-meal-card:not(.expanded) .today-meal-top{height:100%;min-height:0;align-items:center;display:block}.today-meal-card:not(.expanded) .today-meal-titleline{width:100%;height:100%;line-height:1;overflow:hidden}.today-meal-card:not(.expanded) .today-meal-titleline em,.today-meal-card:not(.expanded) .today-meal-titleline strong{line-height:1}.today-meal-card:not(.expanded) .today-meal-titleline em{flex:0 0 auto}.today-meal-card:not(.expanded) .today-meal-titleline strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.today-meal-card:not(.expanded) .today-meal-top b{position:absolute;top:50%;right:14px;transform:translateY(-50%);height:26px;line-height:1;max-width:84px;white-space:nowrap}.today-meals-list:has(.today-meal-card.expanded) .today-meal-card:not(.expanded){opacity:.8}.today-meal-card:not(.expanded) .today-meal-titleline em,.today-meal-card:not(.expanded) .today-meal-titleline strong,.today-meal-card:not(.expanded) .today-meal-summary,.today-meal-card:not(.expanded) .today-meal-items{color:#fff}.today-meal-card:not(.expanded) .today-meal-top b{background:#fff3;color:#fff}.today-event-card{height:52px;min-height:52px;max-height:52px;padding:0 96px 0 16px;border-radius:26px;display:flex;flex-direction:row;align-items:center;gap:0;cursor:default}.today-event-card .today-meal-top{height:100%;min-height:0;align-items:center;display:block}.today-event-card .today-meal-titleline{width:100%;height:100%;line-height:1;overflow:hidden}.today-event-card .today-meal-titleline em,.today-event-card .today-meal-titleline strong{line-height:1;color:#fff}.today-event-card .today-meal-titleline strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.today-event-card .today-meal-top b{position:absolute;top:50%;right:14px;transform:translateY(-50%);height:26px;line-height:1;max-width:84px;white-space:nowrap;background:#fff3;color:#fff}.today-event-card--exercise{background:#84a9c838}.client-shopping-list{min-height:100%;box-sizing:border-box;width:100%;max-width:none;padding:0;display:flex;flex-direction:column;align-items:stretch;gap:10px;justify-content:flex-start;overflow:visible}.client-week-switcher{position:absolute;left:52px;right:52px;top:72px;z-index:4;display:flex;flex-direction:column;overflow:visible;pointer-events:auto}.client-week-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:7px}.client-week-pill{position:relative;z-index:1;min-width:0;height:58px;border:none;border-radius:999px;padding:0 9px;background:#ffffff38;color:#fffc;font:inherit;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer;backdrop-filter:blur(16px) saturate(1.25);-webkit-backdrop-filter:blur(16px) saturate(1.25);transition:background .18s ease,color .18s ease,box-shadow .18s ease}.client-week-pill em{color:inherit;font-style:normal;font-size:11px;font-weight:560;line-height:1;white-space:nowrap;opacity:.86}.client-week-pill:not(.active) em{font-size:14px;font-weight:760;opacity:.9}.client-week-pill span{font-size:11.5px;font-weight:820;line-height:1;white-space:nowrap}.client-week-pill.active{background:#111;border-color:#111;color:#fff;font-weight:850;box-shadow:0 10px 24px #0000002e}.client-week-pill.is-current:not(.active){background:#fff;border:2px solid #111;color:#111;box-shadow:none}.client-week-pill.active span{font-weight:850}.client-shopping-items{flex:0 0 auto;display:flex;flex-direction:column;align-items:stretch;align-self:stretch;gap:8px;min-height:0;width:100%;max-width:none;overflow:visible;padding:154px 18px 112px;box-sizing:border-box}.client-shopping-category{display:flex;flex-direction:column;gap:7px}.client-shopping-category+.client-shopping-category{margin-top:4px}.client-shopping-category-title{padding:0 14px;color:#1614128f;font-size:11px;font-weight:850;line-height:1;letter-spacing:0;text-align:center;text-transform:uppercase}.client-shopping-category-items{display:flex;flex-direction:column;gap:8px}.client-shopping-item{display:flex;align-items:center;gap:12px;min-height:50px;padding:10px 15px;border:1px solid rgba(0,0,0,.06);border-radius:25px;background:#ffffff38;backdrop-filter:blur(16px) saturate(1.18);-webkit-backdrop-filter:blur(16px) saturate(1.18);box-shadow:none;font-size:17px;line-height:1.12;font-weight:680;width:100%;max-width:none;box-sizing:border-box;will-change:transform}.client-shopping-item span{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px;flex:1}.client-shopping-item strong{min-width:0;color:#fff;font-size:17px;font-weight:520;line-height:1.18}.client-shopping-item em{flex-shrink:0;color:#fff;font-style:normal;font-size:15px;font-weight:520;line-height:1.18;font-variant-numeric:tabular-nums}.client-shopping-item input{position:relative;width:24px;height:24px;-moz-appearance:none;appearance:none;-webkit-appearance:none;border:2.4px solid #fff;border-radius:50%;background:transparent;flex-shrink:0;cursor:pointer}.client-shopping-item input:checked{border-color:#fff;background:radial-gradient(circle,#fff 0 40%,transparent 44%)}.client-shopping-item.checked{opacity:.5}.client-shopping-item.checked span{text-decoration:none}.client-shopping-empty{min-height:100%;padding:154px 18px 112px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;color:#fff;text-align:center}.client-shopping-empty p{margin:0;color:#fff;font-size:20px;font-weight:760;line-height:1.15}.today-meal-card.expanded{max-height:2400px;border-radius:26px;background:linear-gradient(135deg,#84a9c82e,#ccaa8c1f),#ffffffd6;color:var(--text);box-shadow:0 1px #ffffffbf inset,0 20px 52px #00000038,0 8px 22px #84a9c82e;opacity:1}.today-meal-card--exercise.expanded{background:linear-gradient(135deg,#a9c9df6b,#ffffffb8),#ffffffd6}.today-meal-card--supplement.expanded{background:linear-gradient(135deg,#e3c19a61,#ffffffb8),#ffffffd6}.client-nutrition-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:4px;width:100%;font-variant-numeric:tabular-nums}.client-nutrition-strip span{min-width:0;display:flex;flex-direction:column;align-items:center;text-align:center;gap:1px;color:var(--muted);font-size:9px;font-weight:850;line-height:1;text-transform:uppercase}.client-nutrition-strip strong{color:var(--text);font-size:13px;font-weight:900;line-height:1.05}.today-card-nutrition{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:4px;padding-top:10px;border-top:1px solid rgba(0,0,0,.08)}.today-card-nutrition span{align-items:center}.today-card-nutrition strong{font-size:15px}.today-nav-nutrition{width:min(330px,100%);margin-top:-1px;pointer-events:none}.today-nav-nutrition span{color:#ffffffb8;font-size:11px;text-shadow:none}.today-nav-nutrition strong{color:#fff;font-size:16px;text-shadow:none}.today-list-nutrition{padding:0 2px 4px;margin-bottom:2px;pointer-events:none}.today-list-nutrition span{color:#ffffffb8;font-size:11px;text-shadow:none}.today-list-nutrition strong{color:#fff;font-size:17px;text-shadow:none}.today-meal-top{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;height:26px;min-height:26px}.today-meal-titleline{min-width:0;display:flex;align-items:center;gap:8px;height:26px;line-height:26px}.today-meal-top strong{font-size:17px;font-weight:850;line-height:26px}.today-meal-top em{font-style:normal;font-size:17px;font-weight:600;color:#111;line-height:26px;font-variant-numeric:tabular-nums}.today-meal-top b{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;height:24px;font-size:12px;font-weight:850;line-height:1;color:var(--accent-dark);background:#84a9c824;border-radius:999px;padding:0 9px}.today-meal-top-side{display:inline-flex;align-items:center;justify-content:flex-end;gap:7px;min-width:0}.today-meal-expand-icon{width:16px;height:16px;flex:0 0 16px;color:#3c3c4394;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .26s ease,color .2s ease}.today-meal-card.expanded .today-meal-expand-icon,.today-meal-card.is-collapsing .today-meal-expand-icon{transform:rotate(180deg)}.today-meal-card .today-event-complete,.today-meal-card:not(.expanded):not(.is-collapsing) .today-event-complete,.today-event-card .today-event-complete{top:14px;transform:none}.today-meal-card:not(.expanded) .today-meal-top,.today-event-card .today-meal-top{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;height:26px;min-height:26px}.today-meal-card:not(.expanded) .today-meal-titleline,.today-event-card .today-meal-titleline{display:flex;align-items:center;gap:8px;height:26px;line-height:26px}.today-meal-card:not(.expanded) .today-meal-titleline em,.today-meal-card:not(.expanded) .today-meal-titleline strong,.today-event-card .today-meal-titleline em,.today-event-card .today-meal-titleline strong{line-height:26px}.today-meal-summary{font-size:13px;line-height:1.35;color:var(--muted)}.today-meal-body{display:grid;grid-template-rows:0fr;min-width:0;overflow:hidden;opacity:0;transform:translateY(-8px);pointer-events:none;transition:grid-template-rows .36s cubic-bezier(.16,1,.3,1),opacity .24s ease,transform .36s cubic-bezier(.16,1,.3,1)}.today-meal-body-inner{min-height:0;display:grid;gap:9px;overflow:hidden}.today-meal-comment{--comment-avatar-size: 48px;display:flex;align-items:center;gap:8px;width:fit-content;max-width:100%;border:1.5px solid rgba(0,0,0,.14);border-radius:calc((var(--comment-avatar-size) + 8px) / 2);padding:4px 12px 4px 4px;color:var(--text);background:transparent;font-size:16px;font-weight:800;line-height:1.34;overflow:visible;white-space:normal}.today-meal-comment img{width:var(--comment-avatar-size);height:var(--comment-avatar-size);border-radius:50%;object-fit:cover;flex:0 0 auto}.today-meal-comment span{min-width:0;box-sizing:border-box;display:block;padding:0;border:none;background:none;overflow:visible;white-space:normal;overflow-wrap:anywhere}.today-meal-comment a,.today-meal-video{color:inherit;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px}.today-meal-video{--comment-avatar-size: 48px;display:flex;align-items:center;gap:8px;width:fit-content;max-width:100%;border:1.5px solid rgba(215,38,38,.14);border-radius:calc((var(--comment-avatar-size) + 8px) / 2);padding:4px 12px 4px 4px;background:#ffffff7a;color:var(--text);font-size:16px;font-weight:800;line-height:1.34;text-decoration:none;overflow:hidden}.today-meal-video-icon{width:var(--comment-avatar-size);height:var(--comment-avatar-size);flex:0 0 auto;border-radius:50%;background:#fff;color:#d72626;display:grid;place-items:center;box-shadow:inset 0 0 0 1.5px #d7262629}.today-meal-video-icon svg{width:25px;height:25px;fill:currentColor}.today-meal-video>span:last-child{min-width:0;overflow-wrap:anywhere}.today-meal-card.expanded .today-meal-body{grid-template-rows:1fr;opacity:1;transform:translateY(0);pointer-events:auto}.today-meal-items{display:grid;gap:8px;width:100%}.today-meal-item-chip{width:100%;min-height:48px;border:1px solid rgba(255,255,255,.2);border-radius:24px;background:#ffffffd1;color:var(--text);display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0 14px;text-align:left;font:inherit;cursor:default;backdrop-filter:blur(12px) saturate(1.12);-webkit-backdrop-filter:blur(12px) saturate(1.12);transition:background .2s ease,border-color .2s ease,border-radius .28s cubic-bezier(.16,1,.3,1),padding .28s cubic-bezier(.16,1,.3,1),transform .2s ease}.today-meal-item-chip.is-dish{cursor:pointer}.today-meal-item-chip.active{background:#ffffffe0;border-color:#ffffff8c;border-radius:24px;padding:12px 14px;gap:0}.today-meal-item-main{min-height:48px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin:0 -14px;padding:0 14px}.today-meal-item-chip.active .today-meal-item-main{min-height:28px;margin:0;padding:0}.today-meal-item-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:800;line-height:1.08}.today-meal-item-image{width:34px;height:34px;display:grid;place-items:center;overflow:hidden;border-radius:50%;background:#e5e5eb;color:#868690}.today-meal-item-image img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.today-meal-item-image svg{width:17px;height:17px}.today-meal-item-main b{color:inherit;font-size:16px;font-weight:600;line-height:1;white-space:nowrap}.today-meal-item-side{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0}.today-meal-item-toggle{width:14px;height:14px;flex:0 0 14px;color:#0000005c;fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round;transition:transform .24s ease,color .2s ease,opacity .2s ease}.today-meal-item-chip.active .today-meal-item-toggle{transform:rotate(180deg);color:#00000085}.today-meal-item-details{display:grid;grid-template-rows:0fr;min-width:0;overflow:hidden;opacity:0;transform:translateY(-5px);transition:grid-template-rows .32s cubic-bezier(.16,1,.3,1),opacity .22s ease,transform .32s cubic-bezier(.16,1,.3,1),margin-top .32s cubic-bezier(.16,1,.3,1)}.today-meal-item-chip.active .today-meal-item-details{grid-template-rows:1fr;margin-top:12px;opacity:1;transform:translateY(0)}.today-meal-item-details-inner{min-height:0;display:grid;gap:13px;overflow:hidden}.today-meal-item-overview{display:grid;gap:13px;min-width:0}.today-meal-item-photo{position:relative;display:block;width:100%;aspect-ratio:1;overflow:hidden;border-radius:18px;background:#e9e9ef;isolation:isolate}.today-meal-item-photo:before{content:"";position:absolute;top:-16px;right:-16px;bottom:-16px;left:-16px;z-index:0;background:var(--dish-image) center / cover no-repeat;filter:blur(16px) saturate(.86);transform:scale(1.08);opacity:.94}.today-meal-item-photo img{position:relative;z-index:1;width:100%;height:100%;display:block;object-fit:cover;object-position:center;-webkit-mask-image:radial-gradient(ellipse 86% 86% at center,#000 60%,rgba(0,0,0,.78) 76%,transparent 100%);mask-image:radial-gradient(ellipse 86% 86% at center,#000 60%,rgba(0,0,0,.78) 76%,transparent 100%)}.today-meal-item-detail{display:grid;gap:5px;min-width:0}.today-meal-item-detail small{color:var(--muted);font-size:11px;font-weight:850;line-height:1;text-transform:uppercase}.today-meal-item-detail span{color:var(--text);font-size:16px;font-weight:560;line-height:1.36}.today-meal-item-detail .today-meal-item-detail-list{display:grid;gap:4px}.today-meal-item-detail .today-meal-item-detail-list>span{display:block}.today-meal-item-detail .today-meal-item-detail-text{white-space:pre-wrap;overflow-wrap:anywhere}.today-meal-details{display:grid;grid-template-columns:1fr 1fr;gap:8px;max-height:0;opacity:0;transform:translateY(-4px);pointer-events:none;transition:max-height .34s cubic-bezier(.16,1,.3,1),opacity .24s ease,transform .3s cubic-bezier(.16,1,.3,1)}.today-meal-card.expanded .today-meal-details{max-height:780px;opacity:1;transform:translateY(0);pointer-events:auto}.today-detail-row{min-width:0;display:flex;flex-direction:column;gap:3px;padding:10px;border-radius:999px;background:#ffffff94}.today-detail-row--wide{grid-column:1 / -1}.today-detail-row--compact{background:#ffffff5c}.today-detail-row small{font-size:10px;font-weight:850;text-transform:uppercase;color:var(--muted)}.today-detail-row span{font-size:13px;line-height:1.25;font-weight:750}.today-nutrition-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.today-nutrition-grid span{min-width:0;display:flex;flex-direction:column;gap:2px;font-size:10px;font-weight:850;color:var(--muted)}.today-nutrition-grid strong{font-size:13px;font-weight:900;color:var(--text)}.client-bottom-tab-icon{width:20px;height:20px;display:grid;place-items:center}.client-bottom-tab-icon svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.client-bg-white{background:#f2f2f7}.client-bg-blobs{display:none}.client-phone-screen{background:#f2f2f7;color:#111}.client-phone-screen.has-top-content.has-animated-bg .pro-header:before,.client-phone-screen.has-top-content.client-phone-screen--shopping .pro-header:before{background:linear-gradient(180deg,#f2f2f7f5,#f2f2f7c7 54%,#f2f2f700)}.client-phone-screen .client-today-main,.client-phone-screen .client-shopping-main,.client-phone-screen .client-progress-main,.client-phone-screen .client-profile-main{background:transparent;scrollbar-color:rgba(60,60,67,.26) transparent}.client-phone-screen .client-today-main::-webkit-scrollbar-thumb{background:#3c3c4342}.today-date-pill,.client-week-pill,.today-meal-card,.today-event-card,.client-shopping-item,.client-mobile-segmented,.client-mobile-stepper,.client-message-button,.client-profile-button,.client-bottom-tabbar{border-color:#0000000a;background:#fff;color:#111;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}.today-date-pill,.client-week-pill{color:#3c3c438f}.client-profile-button.active{background:var(--client-active);color:#fff;box-shadow:0 8px 20px #00000029}.client-mobile-segment.active{background:var(--client-active);color:#fff;box-shadow:0 6px 18px #0000001f}.client-bottom-tab-indicator{background:var(--client-active);color:#fff;box-shadow:0 8px 20px #00000029}.client-week-pill.active{background:var(--client-active);border-color:var(--client-active);color:#fff;box-shadow:0 10px 24px #0000002e}.client-week-pill.active em,.client-week-pill.active span{color:#fff}.client-week-pill.is-current:not(.active){background:#fff;border-color:#111;color:#111;box-shadow:none}.client-week-pill.is-current:not(.active) em,.client-week-pill.is-current:not(.active) span{color:#111}.today-date-pill.active{background:var(--client-active);border-color:var(--client-active);color:#fff;text-decoration:none;box-shadow:0 8px 18px #00000029}.today-date-pill.active span,.today-date-pill.active strong,.today-date-pill.active em{color:#fff;text-decoration:none}.today-date-pill.is-today:not(.active){background:#fff;border:2px solid var(--client-active);color:var(--client-active);box-shadow:none}.today-date-pill.is-today:not(.active) span,.today-date-pill.is-today:not(.active) strong,.today-date-pill.is-today:not(.active) em{color:#111;text-decoration:none}.today-meals-head h2,.today-meals-empty h2,.today-meal-card:not(.expanded) .today-meal-titleline em,.today-meal-card:not(.expanded) .today-meal-titleline strong,.today-event-card .today-meal-titleline em,.today-event-card .today-meal-titleline strong,.client-shopping-item strong,.client-shopping-item em,.client-mobile-profile-section h3{color:#111;text-shadow:none}.today-meals-empty,.today-meal-card:not(.expanded) .today-meal-summary,.today-meal-card:not(.expanded) .today-meal-items,.client-shopping-empty,.client-shopping-empty p,.today-nav-nutrition span,.today-list-nutrition span,.client-mobile-field .client-profile-label,.client-mobile-anthro-status{color:#3c3c4399;text-shadow:none}.today-nav-nutrition strong,.today-list-nutrition strong{color:#111;text-shadow:none}.today-meal-card:not(.expanded) .today-meal-top b,.today-event-card .today-meal-top b,.today-meal-top b{background:#f2f2f7;color:#3c3c43b8}.today-meal-card.expanded{background:#fff;color:#111;box-shadow:none}.today-event-card--exercise{background:#fff}.today-meal-card--exercise:not(.expanded){background:#d9e9f4}.today-meal-card--supplement:not(.expanded){background:#f0d6b9}.today-meal-card--exercise.expanded{background:linear-gradient(135deg,#a9c9df57,#ffffffe0),#fff}.today-meal-card--supplement.expanded{background:linear-gradient(135deg,#e3c19a57,#ffffffe0),#fff}.today-meal-item-chip,.today-meal-item-chip.active,.today-detail-row,.today-detail-row--compact{border-color:#0000000a;background:#f7f7fb;color:#111;backdrop-filter:none;-webkit-backdrop-filter:none}.today-meal-card:not(.expanded),.today-meal-card.is-collapsing,.today-event-card{padding:14px 14px 14px 16px}.today-meal-card:not(.expanded){height:52px;min-height:52px;display:flex;flex-direction:column;align-items:stretch;gap:9px}.today-meal-card:not(.expanded) .today-meal-top,.today-event-card .today-meal-top{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;height:26px;min-height:26px}.today-meal-card:not(.expanded) .today-meal-titleline,.today-event-card .today-meal-titleline{display:flex;align-items:center;gap:8px;width:auto;height:26px;line-height:26px;overflow:hidden}.today-meal-card:not(.expanded) .today-meal-top b,.today-event-card .today-meal-top b{position:static;transform:none;height:24px;max-width:none;line-height:1}.today-meal-card:not(.expanded) .today-meal-top-side,.today-event-card .today-meal-top-side{height:24px}.today-event-card .today-meal-titleline{grid-column:1 / -1}.client-shopping-category-title{color:#3c3c4394}.client-shopping-item input{border-color:#3c3c4352;background:transparent}.client-shopping-item input:checked{border-color:#111;background:radial-gradient(circle,#111 0 40%,transparent 44%)}.client-mobile-field .client-profile-input,.client-mobile-field .client-profile-textarea,.client-mobile-field select.client-profile-input{border-color:#3c3c432e;background-color:transparent;color:#111;-webkit-text-fill-color:#111;box-shadow:none}.client-mobile-field select.client-profile-input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238e8e93' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}.client-mobile-field .client-profile-input:disabled{-webkit-text-fill-color:rgba(60,60,67,.72)}.client-mobile-action{border-color:#3c3c432e;background:#3c3c430f;color:#111}.client-mobile-action:hover{background:#3c3c431f}.client-mobile-action:focus-visible{outline-color:#111}.account-feedback--ok{color:#1e8a4a}.account-feedback--err{color:#d93025}.client-mobile-segment,.client-mobile-stepper button,.client-bottom-tab,.client-message-button,.client-profile-button{color:#3c3c43a3}.client-mobile-segment.active{background:transparent;color:#fff;-webkit-text-fill-color:#fff;font-weight:780;box-shadow:none}.client-bottom-tab.active{color:#fff}.client-mobile-segmented,.client-mobile-stepper{border-color:#3c3c432e;background:transparent}.client-bottom-tab-indicator{background:var(--client-active);box-shadow:0 8px 20px #00000029}.client-bottom-tabbar,.client-message-button,.client-profile-button{border-color:#0000000a}.client-bottom-dock:before{top:-82px;background:linear-gradient(to bottom,#f2f2f700,#f2f2f7d1 34%,#f2f2f7 76%,#f2f2f7);backdrop-filter:none;-webkit-backdrop-filter:none}.client-phone-screen *{box-shadow:none!important}@media (max-width: 520px),(max-height: 720px){.client-phone-outer{padding:0}.client-phone-screen{width:100vw;height:100vh;aspect-ratio:auto;max-width:none;max-height:none;border-radius:0}.client-bottom-tabbar{bottom:auto}}@media (max-width: 1024px){.client-phone-screen{--today-nav-expanded-h: 166px}.today-date-nav{min-height:var(--today-nav-expanded-h)}.today-date-row{grid-auto-rows:52px;column-gap:3px;row-gap:5px}.today-date-pill,.today-date-pill.active{width:min(48px,100%);height:auto;aspect-ratio:1;border-radius:50%}.client-bottom-tabbar,.client-profile-button,.client-message-button,.client-shopping-pdf .client-message-button,.progress-cancel-button.is-primary:not(:disabled){box-shadow:0 10px 24px #1f2c4024!important}}.client-site-outer{min-height:100vh;min-height:100dvh;padding:0;display:block;overflow:hidden;background:#f2f2f7}.client-site-screen{width:100vw;max-width:none;height:100vh;height:100dvh;max-height:none;min-height:100vh;min-height:100dvh;aspect-ratio:auto;border-radius:0;box-shadow:none;background:#f2f2f7}.client-site-screen .client-site-header{height:104px;padding:0}.client-site-screen .client-site-header:before{height:112px;background:linear-gradient(180deg,#f2f2f7fa,#f2f2f7d6 64%,#f2f2f700)}.client-site-screen.has-top-content .client-site-header:before,.client-site-screen.has-top-content.has-animated-bg .client-site-header:before,.client-site-screen.has-top-content.client-phone-screen--shopping .client-site-header:before{opacity:1;background:linear-gradient(180deg,#f2f2f7fa,#f2f2f7d6 64%,#f2f2f700)}.client-site-screen{--today-nav-top: max(14px, env(safe-area-inset-top));--today-nav-expanded-h: 214px;--today-nav-collapsed-h: 66px;--today-nav-gap: 14px}.client-site-screen .today-date-nav{left:0;right:0;top:var(--today-nav-top);width:min(560px,calc(100vw - 36px));margin-inline:auto;min-height:var(--today-nav-expanded-h)}.client-site-screen.today-nav-compact .today-date-nav{height:var(--today-nav-collapsed-h);min-height:var(--today-nav-collapsed-h)}.client-site-screen .client-week-switcher{left:0;right:0;top:var(--today-nav-top);width:min(560px,calc(100vw - 36px));margin-inline:auto}.client-site-screen .today-meals-view{padding-top:calc(var(--today-nav-top) + var(--today-nav-expanded-h) + var(--today-nav-gap));padding-bottom:calc(132px + max(16px,env(safe-area-inset-bottom)));width:min(560px,100%);margin-inline:auto;transition:padding-top .28s cubic-bezier(.16,1,.3,1)}.client-site-screen.today-nav-compact .today-meals-view{padding-top:calc(var(--today-nav-top) + var(--today-nav-collapsed-h) + var(--today-nav-gap))}.client-site-screen .today-bottom-spacer{display:none}.client-site-screen .client-shopping-items{padding-top:92px;padding-bottom:calc(124px + env(safe-area-inset-bottom));width:min(560px,100%);margin-inline:auto}.client-site-screen.client-phone-screen--shopping .client-week-switcher{width:min(524px,calc(100vw - 36px))}.client-site-screen .client-progress-view{--client-progress-gap: 18px;height:auto;min-height:100%;padding:var(--client-progress-gap) 0 calc(172px + max(18px,env(safe-area-inset-bottom)));width:min(560px,calc(100% - (var(--client-progress-gap) * 2)));margin-inline:auto}.client-site-screen .client-today-main,.client-site-screen .client-shopping-main,.client-site-screen .client-progress-main,.client-site-screen .client-profile-main{width:100vw;max-width:none;overflow-anchor:none;scroll-padding-top:env(safe-area-inset-top);scroll-padding-bottom:calc(92px + env(safe-area-inset-bottom));scrollbar-gutter:stable}.client-site-screen .client-shopping-main,.client-site-screen .client-progress-main{padding-bottom:0!important}.client-site-screen .client-profile-main{padding:max(22px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) calc(118px + max(16px,env(safe-area-inset-bottom))) max(18px,env(safe-area-inset-left))!important}.client-site-screen .client-bottom-dock{left:max(14px,env(safe-area-inset-left));right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));justify-content:center}.client-site-screen .client-bottom-dock:before{content:"";left:-14px;right:-14px;bottom:calc(-1*max(14px,env(safe-area-inset-bottom)))}.client-site-screen.has-bottom-content .client-bottom-dock:before,.client-site-screen.has-bottom-content.has-animated-bg .client-bottom-dock:before{content:none!important}.client-site-screen.client-phone-screen--progress .client-bottom-dock:before,.client-site-screen.client-phone-screen--progress.has-bottom-content .client-bottom-dock:before{content:none!important}.client-site-screen.client-phone-screen--today .client-bottom-dock:before,.client-site-screen.client-phone-screen--today.has-bottom-content .client-bottom-dock:before,.client-site-screen.client-phone-screen--today.has-bottom-content.has-animated-bg .client-bottom-dock:before{content:none!important}.client-site-screen .client-bottom-tabbar{flex:0 0 238px}@media (max-width: 699px){.client-site-outer,.client-site-screen{min-height:100svh;height:100svh}.client-site-screen{--today-nav-expanded-h: 166px;--today-nav-gap: 10px}.client-site-screen .today-date-nav{left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));width:auto;min-height:var(--today-nav-expanded-h);margin-inline:0}.client-site-screen .today-meals-view{padding-top:calc(var(--today-nav-top) + var(--today-nav-expanded-h) + var(--today-nav-gap));padding-right:max(18px,env(safe-area-inset-right));padding-bottom:calc(190px + max(20px,env(safe-area-inset-bottom)));padding-left:max(18px,env(safe-area-inset-left))}.client-site-screen.today-nav-compact .today-meals-view{padding-top:calc(var(--today-nav-top) + var(--today-nav-collapsed-h) + var(--today-nav-gap))}.client-site-screen .client-shopping-items{padding-right:max(18px,env(safe-area-inset-right));padding-bottom:calc(190px + max(20px,env(safe-area-inset-bottom)));padding-left:max(18px,env(safe-area-inset-left))}.client-site-screen .client-progress-view{padding-bottom:calc(230px + max(20px,env(safe-area-inset-bottom)))}.client-site-screen .client-today-main,.client-site-screen .client-shopping-main,.client-site-screen .client-progress-main,.client-site-screen .client-profile-main{scroll-padding-bottom:calc(190px + max(20px,env(safe-area-inset-bottom)))}.client-site-screen .client-bottom-dock{position:fixed;left:max(14px,env(safe-area-inset-left));right:max(14px,env(safe-area-inset-right));bottom:calc(max(14px,env(safe-area-inset-bottom)) + 10px + var(--client-keyboard-offset, 0px));transition:bottom .18s cubic-bezier(.16,1,.3,1)}}@media (min-width: 700px){.client-site-outer{padding:0}.client-site-screen .today-meal-item-details-inner.has-dish-image{grid-template-columns:minmax(0,1fr) clamp(148px,22vw,210px);column-gap:20px;align-items:start}.client-site-screen .today-meal-item-details-inner.has-dish-image .today-meal-item-photo{grid-column:2;grid-row:1;width:100%;border-radius:16px}.client-site-screen .today-meal-item-details-inner.has-dish-image .today-meal-item-overview{grid-column:1;grid-row:1}.client-site-screen .today-meal-item-details-inner.has-dish-image>.today-meal-item-detail{grid-column:1 / -1}}@media (min-width: 600px) and (max-width: 899px){.client-site-screen .client-picker-overlay{align-items:center;padding:32px}.client-site-screen .client-picker-sheet{width:min(460px,calc(100vw - 64px));max-height:min(840px,calc(100% - 64px))}.client-site-screen .today-anthro-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-site-screen .client-mobile-profile-section:first-child .client-mobile-profile-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.client-site-screen .client-mobile-profile-section:first-child .client-mobile-field{grid-column:span 3}.client-site-screen .client-mobile-profile-section:first-child .client-mobile-field:nth-child(n+7):nth-child(-n+9){grid-column:span 2}}@media (min-width: 900px){.client-site-outer{padding:0;display:block;overflow:hidden}.client-site-screen{--client-rail-w: 196px;--client-content-w: min(1120px, calc(100vw - var(--client-rail-w) - 96px));width:100vw;max-width:none;height:100vh;height:100dvh;min-height:100vh;min-height:100dvh;overflow:hidden}.client-site-screen .client-site-header{left:var(--client-rail-w);right:0;width:auto;height:118px}.client-site-screen .client-site-header:before{height:126px}.client-site-screen{--today-nav-top: 18px;--today-nav-gap: 10px}.client-site-screen .today-date-nav,.client-site-screen .client-week-switcher{left:0;right:0;top:var(--today-nav-top);width:var(--client-content-w);max-width:none;margin-inline:auto}.client-site-screen .client-tab-stage,.client-site-screen .client-tab-pane{position:absolute;top:0;right:0;bottom:0;left:0}.client-site-screen .client-today-main,.client-site-screen .client-shopping-main,.client-site-screen .client-progress-main,.client-site-screen .client-profile-main{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:auto;box-sizing:border-box;padding-left:var(--client-rail-w);padding-right:0;padding-bottom:0!important;overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:rgba(60,60,67,.28) transparent}.client-site-screen .client-today-main::-webkit-scrollbar,.client-site-screen .client-shopping-main::-webkit-scrollbar,.client-site-screen .client-progress-main::-webkit-scrollbar,.client-site-screen .client-profile-main::-webkit-scrollbar{width:10px}.client-site-screen .client-today-main::-webkit-scrollbar-track,.client-site-screen .client-shopping-main::-webkit-scrollbar-track,.client-site-screen .client-progress-main::-webkit-scrollbar-track,.client-site-screen .client-profile-main::-webkit-scrollbar-track{background:transparent}.client-site-screen .client-today-main::-webkit-scrollbar-thumb,.client-site-screen .client-shopping-main::-webkit-scrollbar-thumb,.client-site-screen .client-progress-main::-webkit-scrollbar-thumb,.client-site-screen .client-profile-main::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:999px;background:#3c3c4347;background-clip:content-box}.client-site-screen .today-meals-view,.client-site-screen .client-shopping-items,.client-site-screen .client-progress-view,.client-site-screen .client-mobile-profile,.client-site-screen .client-logout-link{width:var(--client-content-w);margin-left:auto;margin-right:auto}.client-site-screen .today-meals-view{padding:calc(var(--today-nav-top) + var(--today-nav-expanded-h) + var(--today-nav-gap)) 0 24px}.client-site-screen.today-nav-compact .today-meals-view{padding-top:calc(var(--today-nav-top) + var(--today-nav-collapsed-h) + var(--today-nav-gap))}.client-site-screen .client-shopping-items{padding:104px 0 24px;width:min(760px,var(--client-content-w))}.client-site-screen.client-phone-screen--shopping .client-week-switcher{width:min(760px,var(--client-content-w))}.client-site-screen .client-progress-view{padding:24px 0;justify-content:center}.client-site-screen .client-progress-list{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:14px}.client-site-screen .today-anthro-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.client-site-screen .client-profile-main{padding:24px 0 24px var(--client-rail-w)!important}.client-site-screen .client-picker-overlay{align-items:center;padding:40px}.client-site-screen .client-picker-sheet{width:min(480px,calc(100vw - var(--client-rail-w) - 80px));max-height:min(840px,calc(100% - 80px))}.client-site-screen .client-mobile-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-site-screen .client-mobile-field{grid-column:auto}.client-site-screen .client-mobile-field.is-wide{grid-column:1 / -1}.client-site-screen .client-bottom-dock{position:fixed;left:24px;right:auto;top:50%;bottom:auto;width:148px;transform:translateY(-50%);display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:10px;pointer-events:auto}.client-site-screen .client-dock-actions{width:100%;flex:0 0 auto;display:flex}.client-site-screen .client-dock-actions--left{order:-1}.client-site-screen .client-dock-actions--right{order:2}.client-site-screen .client-corner-logo{position:fixed;left:24px;top:24px;z-index:82;width:148px;height:52px;display:flex;align-items:center;justify-content:center;pointer-events:none}.client-site-screen .client-corner-logo img{display:block;width:min(132px,100%);max-height:44px;object-fit:contain}.client-site-screen .client-bottom-dock:before{content:none!important}.client-site-screen .client-bottom-tabbar{flex:0 0 auto;width:100%;height:auto;grid-template-columns:1fr;grid-auto-rows:52px;gap:6px;padding:6px;border-color:#0000000a;border-radius:30px;background:#fff;box-shadow:none}.client-site-screen .client-bottom-tab-indicator{display:none}.client-site-screen .client-bottom-tab,.client-site-screen .client-profile-button{width:100%;height:52px;min-height:52px;border-radius:999px;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;padding:0 14px;color:#3c3c43ad;font-size:14px;font-weight:760;text-align:left;transform:none}.client-site-screen .client-bottom-tab.active,.client-site-screen .client-profile-button.active{background:var(--client-active);color:#fff;box-shadow:none;transform:none}.client-site-screen .client-bottom-tab-icon,.client-site-screen .client-profile-button svg{width:20px;height:20px;flex:0 0 20px}.client-site-screen .client-profile-button{flex:0 0 auto;border:.5px solid rgba(0,0,0,.04);background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}.client-site-screen .client-daily-message,.client-site-screen .client-shopping-pdf{position:relative;right:auto;bottom:auto;width:100%;height:52px;flex:1 1 auto;align-self:stretch}.client-site-screen .client-message-button{width:100%;height:52px;border-color:#0000000a;background:#fff;color:#3c3c43ad;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;border-radius:999px;display:flex;align-items:center;justify-content:flex-start;gap:10px;padding:0 14px;font-size:14px;font-weight:760}.client-site-screen .client-message-button:hover:not(.active),.client-site-screen .client-profile-button:hover:not(.active),.client-site-screen .client-bottom-tab:hover:not(.active){background:#fff;color:#111;box-shadow:none}.client-site-screen .client-message-button:hover:not(.active) svg,.client-site-screen .client-profile-button:hover:not(.active) svg,.client-site-screen .client-bottom-tab:hover:not(.active) .client-bottom-tab-icon{color:#111}.client-site-screen .client-message-button.active,.client-site-screen .client-message-button.active:hover,.client-site-screen .client-profile-button.active,.client-site-screen .client-profile-button.active:hover,.client-site-screen .client-bottom-tab.active,.client-site-screen .client-bottom-tab.active:hover{background:var(--client-active);color:#fff}.client-site-screen .client-message-button.active:hover svg,.client-site-screen .client-profile-button.active:hover svg,.client-site-screen .client-bottom-tab.active:hover .client-bottom-tab-icon{color:#fff}.client-site-screen .client-message-button-label{display:inline}.client-site-screen .client-message-dock-field{width:100%;min-height:52px;height:52px;border-radius:26px}.client-site-screen .client-message-dock-field textarea{min-height:52px;height:52px;padding:15px 0}.client-site-screen .client-bottom-dock.is-message-mode{top:calc(50% - 152px);transform:none;width:min(650px,calc(100vw - 48px));display:grid;grid-template-columns:148px minmax(280px,430px) 52px;align-items:start;justify-content:start;gap:10px}.client-site-screen .client-bottom-dock.is-message-mode .client-dock-actions{width:auto;order:initial}.client-site-screen .client-bottom-dock.is-message-mode .client-dock-actions--left,.client-site-screen .client-bottom-dock.is-message-mode .client-daily-message,.client-site-screen .client-bottom-dock.is-message-mode .client-message-button{width:148px}.client-site-screen .client-bottom-dock.is-message-mode .client-message-dock-field{width:100%}.client-site-screen .client-bottom-dock.is-message-mode .client-dock-actions--right,.client-site-screen .client-bottom-dock.is-message-mode .client-profile-button{width:52px}.client-site-screen .client-bottom-dock.is-message-mode .client-profile-button{padding:0;justify-content:center}.client-site-screen .client-bottom-dock.is-message-mode .client-profile-button-label{display:none}.client-site-screen .client-message-inline{left:184px;right:auto;bottom:24px;width:min(500px,calc(100vw - 208px))}.client-site-screen .client-message-inline,.client-site-screen .client-message-inline.has-content{grid-template-columns:52px minmax(0,1fr) 52px}.client-site-screen .client-message-inline-action{width:52px;height:52px}.client-site-screen .client-message-inline-field{height:52px;min-height:52px;border-radius:26px}.client-site-screen .client-message-inline-field textarea{height:52px;min-height:52px;padding:15px 0}.client-site-screen .client-profile-button-label{display:inline}.client-site-screen .client-tab-stage.is-transitioning .client-tab-pane--active{animation-name:clientSiteTabInDown}.client-site-screen .client-tab-pane--leaving{animation-name:clientSiteTabOutUp}.client-site-screen .client-tab-stage.is-transitioning.client-tab-stage--back .client-tab-pane--active{animation-name:clientSiteTabInUp}.client-site-screen .client-tab-stage.is-transitioning.client-tab-stage--back .client-tab-pane--leaving{animation-name:clientSiteTabOutDown}.client-site-screen .today-day-stage.is-switching .today-day-pane--active{animation-name:todaySiteDayInForward}.client-site-screen .today-day-pane--leaving{animation-name:todaySiteDayOutForward}.client-site-screen .today-day-stage.is-switching.today-day-stage--back .today-day-pane--active{animation-name:todaySiteDayInBack}.client-site-screen .today-day-stage.is-switching.today-day-stage--back .today-day-pane--leaving{animation-name:todaySiteDayOutBack}}@keyframes clientSiteTabInDown{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes clientSiteTabOutUp{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-12px)}}@keyframes clientSiteTabInUp{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes clientSiteTabOutDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(12px)}}@keyframes todaySiteDayInForward{0%{opacity:0;transform:translate(105%)}48%{opacity:.7}to{opacity:1;transform:translate(0)}}@keyframes todaySiteDayOutForward{0%{opacity:1;transform:translate(0)}48%{opacity:.7}to{opacity:0;transform:translate(-105%)}}@keyframes todaySiteDayInBack{0%{opacity:0;transform:translate(-105%)}48%{opacity:.7}to{opacity:1;transform:translate(0)}}@keyframes todaySiteDayOutBack{0%{opacity:1;transform:translate(0)}48%{opacity:.7}to{opacity:0;transform:translate(105%)}}.ctx-menu{position:fixed;z-index:500;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 28px #00000024;padding:4px;min-width:160px}.ctx-menu--week{position:absolute;z-index:500;width:220px}.ctx-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:7px 12px;border:none;border-radius:8px;background:transparent;font:inherit;font-size:13px;font-weight:500;cursor:pointer;text-align:left;color:var(--text)}.ctx-menu button svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2;flex-shrink:0}.ctx-menu button:hover{background:var(--surface-2)}.ctx-menu button:disabled{opacity:.38;cursor:default}.ctx-menu button:disabled:hover{background:transparent}.ctx-menu.cinfo-lab-context-menu{z-index:10020}.ctx-menu-field{display:flex;align-items:center;gap:8px;padding:7px 8px 6px}.ctx-menu-field span{font-size:12px;font-weight:700;color:var(--muted);white-space:nowrap}.ctx-menu-field input{width:58px;height:30px;border:1px solid var(--border);border-radius:9px;padding:0 7px;font:inherit;font-size:13px;font-weight:700}.week-event{border-radius:15px;padding:7px 8px 8px;font-size:13px;line-height:1.3;display:flex;flex-direction:column;gap:4px;background:#ccaa8c94;color:#000;position:relative;z-index:2}.week-event--completed{opacity:.46}.week-event--exercise{background:#a9c9df}.week-event--supplement{background:#e3c19a}.week-event--note{background:#a5a09a}.week-event-header{position:relative;display:flex;align-items:center;justify-content:center;min-height:24px;min-width:0;padding:0 26px}.week-event-header strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:800;font-size:13px;text-align:center}.week-event-delete{position:absolute;right:-3px;top:50%;transform:translateY(-50%);width:30px;height:30px;padding:0;border:none;border-radius:0;background:transparent;color:#000;cursor:pointer;display:grid;place-items:center;flex-shrink:0;opacity:.86;transition:opacity .14s ease,color .14s ease}.week-event-delete svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.week-event-delete:hover{opacity:1;background:transparent}.week-event-check{position:absolute;left:0;top:50%;transform:translateY(-50%);width:18px;height:18px;padding:0;border:2px solid rgba(0,0,0,.58);border-radius:50%;background:transparent;cursor:pointer;flex-shrink:0;font-size:0}.week-event-check.checked:not(.week-week-check){background:transparent;box-shadow:none}.week-event-check.checked:not(.week-week-check):after{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border-radius:50%;background:#000}.week-week-check{position:static;transform:none;width:auto;height:34px;min-width:110px;padding:0 14px;border:1.5px solid var(--border);border-radius:999px;background:transparent;color:#000;opacity:1;font:inherit;font-size:13px;font-weight:600}.week-week-check:disabled{opacity:.28;cursor:default}.week-week-check.checked{background:#ccaa8c94;border-color:#ccaa8c94;box-shadow:none}.week-week-check.checked:after{content:none}.week-event-macros{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:4px;padding-top:3px;border-top:0;font-size:10.5px;font-weight:700;color:#000;line-height:1.1;white-space:nowrap;overflow:hidden;margin-top:5px}.week-event-macros span{flex:0 0 auto}.week-event-comment{--comment-avatar-size: 30px;display:flex;align-items:flex-start;gap:6px;border-top:0;padding:8px 2px 6px;color:#000000d1;font-size:14px;font-weight:800;line-height:1.36;overflow:visible;white-space:normal}.week-event-comment img{width:var(--comment-avatar-size);height:var(--comment-avatar-size);border-radius:50%;object-fit:cover;flex:0 0 auto}.week-event-comment span{min-width:0;box-sizing:border-box;min-height:var(--comment-avatar-size);display:block;align-items:center;border-radius:calc(var(--comment-avatar-size) / 2);padding:6px 12px 7px;background:#fff;overflow:visible;white-space:normal;overflow-wrap:anywhere}.week-event-comment a{color:inherit;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:2px;overflow-wrap:anywhere}.week-event-video{--video-icon-size: 30px;display:flex;align-items:flex-start;gap:6px;padding:0 2px 6px;font-size:13px;font-weight:800;line-height:1.28;overflow:visible}.week-event-video-icon{width:var(--video-icon-size);height:var(--video-icon-size);border-radius:50%;background:#fff;color:#d72626;display:grid;place-items:center;flex:0 0 auto}.week-event-video-icon svg{width:18px;height:18px;fill:currentColor}.week-event-video a,.week-event-video>span:not(.week-event-video-icon){min-width:0;box-sizing:border-box;min-height:var(--video-icon-size);display:block;border-radius:calc(var(--video-icon-size) / 2);padding:6px 12px 7px;background:#fff;color:#000000d1;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:2px;white-space:normal;overflow-wrap:anywhere}.week-event-lines{display:flex;flex-direction:column;gap:0}.week-event-line{display:flex;align-items:flex-start;gap:6px;opacity:1;font-size:12px;padding:6px 0;min-width:0}.week-event-dish-image{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;overflow:hidden;border-radius:50%;background:#ffffff9e}.week-event-dish-image img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.week-event-line+.week-event-line{border-top:0}.week-event-line-text{display:flex;flex-direction:column;align-items:stretch;gap:2px;min-width:0;flex:1}.week-event-line-text strong{min-width:0;overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;font-size:12px;font-weight:800;line-height:1.2;color:#000}.week-event-line-text em{font-style:normal;font-weight:500;color:#00000094;flex-shrink:0;line-height:1.15}.week-event-line-remove{width:24px;height:24px;padding:0;border:none;border-radius:50%;background:#00000014;color:#000;cursor:pointer;display:grid;place-items:center;font:inherit;font-size:17px;font-weight:800;line-height:1;flex-shrink:0;opacity:.86;transition:opacity .14s ease,background .14s ease}.week-event-line-remove:hover{opacity:1;background:#00000024}@keyframes weekRowsSwitch{0%{opacity:0;transform:translateY(-5px) scaleY(.985);filter:blur(2px)}to{opacity:1;transform:translateY(0) scaleY(1);filter:blur(0)}}.ev-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#0a0a0a57;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;padding:32px}.ev-modal{position:relative;background:transparent;border-radius:0;width:100%;max-width:460px;box-shadow:none;overflow:visible;isolation:isolate}.ev-modal:before{content:"";position:absolute;top:-34px;right:-34px;bottom:-34px;left:-34px;border-radius:42px;background:radial-gradient(circle at 18% 22%,rgba(132,169,200,.42),transparent 42%),radial-gradient(circle at 84% 18%,rgba(204,170,140,.36),transparent 38%),radial-gradient(circle at 28% 88%,rgba(142,207,154,.22),transparent 42%);filter:blur(30px);pointer-events:none;z-index:-1}.ev-modal--meal{width:min(1240px,calc(100vw - 64px));max-width:none;max-height:86vh;display:flex;flex-direction:column}.ev-modal--fixed-height{height:min(86vh,calc(100vh - 64px))}.ev-form{display:flex;flex-direction:column;flex:1;min-height:0;overflow:visible}.ev-columns{display:grid;grid-template-columns:minmax(0,616px) minmax(0,610px);gap:14px;width:100%;overflow:visible;flex:1;min-height:0;max-height:calc(100vh - 64px);align-items:stretch;justify-content:center}.ev-modal--meal .ev-columns{height:auto}.ev-modal:not(.ev-modal--meal) .ev-columns{display:block}.ev-panel{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:0;background:var(--bg);border:1px solid var(--border);border-radius:24px;box-shadow:0 0 0 1px #00000008,0 8px 24px #00000014,0 32px 80px #00000024}.ev-panel-left{padding:16px 20px 0;gap:10px;max-height:calc(100vh - 64px);animation:dishPanelLeftIn .42s cubic-bezier(.16,1,.3,1) .08s backwards}.ev-modal--meal .ev-panel-left,.ev-modal--meal .ev-panel-right{height:100%;max-height:none}.ev-panel-right{height:min(86vh,calc(100vh - 64px));max-height:calc(100vh - 64px);padding:16px 18px 0;gap:8px;animation:dishPanelRightIn .42s cubic-bezier(.16,1,.3,1) .12s backwards}.ev-top-area{padding:12px 20px;display:flex;flex-direction:column;gap:10px;border-bottom:1px solid var(--border);flex-shrink:0}.ev-meal-body{display:grid;grid-template-columns:1fr 290px;flex:1;min-height:0;overflow:hidden}.ev-meal-left{overflow-y:auto;padding:12px 16px;display:flex;flex-direction:column;gap:10px}.ev-meal-right{overflow-y:auto;padding:16px 12px;display:flex;flex-direction:column;align-items:center;border-left:1px solid var(--border)}.ev-meal-items{display:flex;flex-direction:column;gap:6px}.ev-meal-item{display:flex;align-items:center;gap:7px;background:var(--surface-2);border-radius:12px;padding:6px 10px}.ev-meal-item-name{flex:1;font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.ev-meal-item-weight{width:52px;text-align:center;font-weight:700;font-size:13px;border:1.5px solid var(--border);border-radius:8px;padding:2px 4px;background:var(--bg);flex-shrink:0}.ev-meal-item-unit,.ev-meal-item-kcal{font-size:11px;color:var(--muted);flex-shrink:0}.ev-meal-item-remove{width:22px;height:22px;border-radius:50%;border:none;background:var(--border);color:var(--text);font-size:16px;line-height:1;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center}.ev-footer{display:flex;gap:8px;justify-content:flex-end;padding:0;border-top:0;flex-shrink:0}.event-validation-error{margin-top:auto;border:1px solid rgba(214,72,72,.28);border-radius:14px;background:#d6484814;color:var(--danger, #d64848);font-size:13px;font-weight:700;line-height:1.35;padding:10px 12px}.ev-modal-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0;border-bottom:0}.ev-modal-title-row{display:flex;align-items:center;gap:14px;min-width:0;flex-shrink:0}.ev-modal-date{font-size:13px;font-weight:600;color:var(--muted)}.ev-header-time-field{display:block;width:78px;flex-shrink:0}.ev-header-time-field input{width:100%;height:36px;min-height:36px;box-sizing:border-box;border:1.5px solid var(--border);border-radius:999px;background:transparent;color:var(--text);padding:0 10px;font:inherit;font-size:13px;font-weight:800;line-height:36px;text-align:center;font-variant-numeric:tabular-nums;outline:none}.ev-header-time-field input:focus{border-color:var(--accent)}.ev-modal-window-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;color:var(--text);font-size:15px;font-weight:850}.ev-modal-subline{margin-top:2px;font-size:18px;font-weight:850;color:var(--text);font-variant-numeric:tabular-nums}.ev-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-shrink:0}.ev-header-actions .ghost-button,.ev-header-actions .primary-button{height:36px;min-height:36px;padding:0 18px;border-radius:999px;font-size:13px;font-weight:800}.ev-header-actions .primary-button{background:#e5e5ea;border-color:#e5e5ea;color:#000}.ev-meal-name-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;position:relative;background:transparent;border:1.5px solid var(--border);border-radius:999px;padding:4px;margin-bottom:0;order:2;width:100%;max-width:100%}.ev-meal-name-indicator{position:absolute;top:3px;bottom:3px;background:#e5e5ea;border-radius:999px;transition:left .2s cubic-bezier(.16,1,.3,1),width .2s cubic-bezier(.16,1,.3,1);pointer-events:none}.ev-meal-name-tab{min-width:0;width:100%;height:34px;border:none;border-radius:999px;background:transparent;font:inherit;font-size:13px;font-weight:500;cursor:pointer;color:var(--muted);position:relative;z-index:1;transition:color .18s ease,background .18s ease,font-weight .18s ease;padding:0 10px}.ev-meal-name-tab.active{color:#000;background:#e5e5ea;font-weight:700}.ev-modal-form{display:flex;flex-direction:column;gap:12px;padding:16px 20px 20px}.ev-type-row{display:flex;gap:6px;flex-wrap:wrap}.ev-type-row--primary{order:1;padding:2px 0 0}.ev-type-btn{height:30px;padding:0 12px;border:1.5px solid var(--border);border-radius:999px;background:transparent;font:inherit;font-size:12px;font-weight:500;cursor:pointer;color:var(--text);transition:all .12s}.ev-type-btn:hover{border-color:var(--muted)}.ev-main-fields{display:grid;grid-template-columns:112px minmax(0,1fr);gap:10px}.ev-main-fields--activity{grid-template-columns:minmax(0,1fr);gap:10px}.ev-main-fields .product-edit-field{min-width:0}.ev-main-fields .product-edit-field:only-child{grid-column:1 / -1}.ev-meal-controls{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:end}.ev-meal-select-field{width:100%}.ev-meal-controls .product-edit-field>span{text-align:center;width:100%}.ev-time-field input{text-align:center;font-variant-numeric:tabular-nums}.ev-burn-field{grid-column:1 / -1;max-width:150px}.ev-detail-field,.ev-detail-field--inline,.ev-video-field--activity{grid-column:1 / -1}.ev-detail-field>span{text-align:center}.ev-detail-field--inline>span{text-align:left;padding-left:44px}.ev-video-field>span{text-align:left;padding-left:44px}.ev-comment-input-row{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:8px}.ev-comment-input-row img{width:36px;height:36px;border-radius:50%;object-fit:cover;display:block}.ev-video-icon{width:36px;height:36px;border-radius:50%;background:#fff;color:#d72626;display:grid;place-items:center;box-shadow:inset 0 0 0 1.5px #d7262629}.ev-video-icon svg{width:21px;height:21px;fill:currentColor}.ev-detail-field input{height:46px;min-height:46px;border:1.5px solid var(--border);border-radius:999px;background:transparent;color:var(--text);padding:0 18px;font:inherit;font-size:15px;font-weight:700;line-height:46px;outline:none}.ev-detail-field textarea{min-height:76px;border:1.5px solid var(--border);border-radius:18px;background:transparent;color:var(--text);padding:12px 14px;font:inherit;font-size:14px;line-height:1.45;resize:vertical;outline:none}.ev-detail-field input:focus,.ev-detail-field textarea:focus{border-color:var(--accent)}.ev-main-summary{width:100%;padding:0}.ev-main-summary svg{width:126px!important;height:126px!important}.ev-products-block{display:flex;flex-direction:column;min-height:0;flex:1 1 0;overflow:hidden;margin-left:-20px;margin-right:-20px}.ev-product-table{display:flex;flex-direction:column;flex:1 1 0;min-height:0;overflow:hidden;padding-left:20px;padding-right:38px;gap:3px}.ev-product-table-body{display:flex;flex-direction:column;flex:1 1 0;min-height:0;overflow-y:auto;gap:3px;padding-bottom:20px;scrollbar-gutter:stable;overscroll-behavior:contain}.ev-product-table-body>.ev-meal-item-wrap{flex:0 0 auto}.ev-product-table .dish-product-row{grid-template-columns:minmax(92px,1fr) repeat(5,38px) 84px 20px;margin-right:0}.ev-activity-table .dish-product-row{grid-template-columns:minmax(120px,1fr) 92px 72px 72px 20px}.ev-supplement-table .dish-product-row{grid-template-columns:minmax(0,1.45fr) minmax(0,.95fr) minmax(0,.62fr) minmax(0,1.12fr) 24px;gap:6px}.ev-activity-table .dish-product-row span,.ev-supplement-table .dish-product-row span{text-align:center}.ev-activity-table .dish-product-row strong span,.ev-supplement-table .dish-product-row strong span{text-align:left}.ev-supplement-table .dish-product-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ev-meal-item-wrap{display:flex;flex-direction:column;gap:0;border-radius:24px;background:#f2f2f7;overflow:hidden;transition:background .22s ease,box-shadow .22s ease}.ev-meal-item-wrap.expanded{border-radius:24px}.ev-product-table .ev-meal-item-row.can-expand{cursor:pointer}.ev-product-table .ev-meal-item-row.can-expand:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ev-product-table .ev-meal-item-row{background:transparent!important;border-color:transparent!important}.ev-activity-table .ev-meal-item-row,.ev-supplement-table .ev-meal-item-row{min-height:44px;padding:0 8px 0 20px;background:#f2f2f7!important;border-color:transparent!important;border-radius:999px}.ev-product-table .ev-meal-item-row.expanded{border-radius:24px}.ev-product-table .ev-meal-item-row strong{display:flex;align-items:center;gap:6px;min-width:0}.ev-product-table .ev-meal-item-row strong span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.ev-meal-item-chevron{width:14px;height:14px;flex:0 0 14px;color:var(--muted);fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s ease}.ev-meal-item-row.expanded .ev-meal-item-chevron{transform:rotate(90deg)}.ev-meal-item-details{display:grid;grid-template-rows:0fr;opacity:0;transform:translateY(-4px);margin:0;padding:0;border-radius:0;background:transparent;border:none;pointer-events:none;transition:grid-template-rows .28s cubic-bezier(.16,1,.3,1),opacity .22s ease,transform .28s cubic-bezier(.16,1,.3,1),padding-bottom .28s cubic-bezier(.16,1,.3,1)}.ev-meal-item-wrap.expanded .ev-meal-item-details{grid-template-rows:1fr;opacity:1;transform:translateY(0);padding-bottom:12px;pointer-events:auto}.ev-meal-item-details-inner{min-height:0;overflow:hidden}.ev-meal-ingredient-table{display:flex;flex-direction:column;gap:5px;padding:0 24px}.ev-meal-ingredient-row{display:grid;grid-template-columns:minmax(92px,1fr) repeat(5,38px) 84px 20px;align-items:center;gap:8px;min-height:38px;padding:0 6px 0 12px;border-radius:999px;background:#fff;font-size:12px;box-shadow:inset 0 0 0 1px #00000004}.ev-meal-ingredient-row strong{min-width:0;color:var(--text);font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ev-meal-ingredient-row span{min-width:0;text-align:center;white-space:nowrap;font-variant-numeric:tabular-nums}.ev-meal-ingredient-row span:first-child{text-align:left}.ev-meal-ingredient-row span:last-child{text-align:right;color:var(--muted);font-weight:800}.ev-meal-ingredient--empty{display:block;color:var(--muted);font-weight:700;font-size:12px}.ev-product-table .dish-product-row--head,.ev-product-table .dish-product-row--total{flex:0 0 auto;z-index:3;background:var(--bg);margin-right:0}.ev-product-table .dish-product-row--head{margin-bottom:-2px}.ev-product-table .dish-product-row--total{z-index:4;border-radius:0;background:#fff}.ev-db-mode-tabs{display:inline-flex;align-items:center;gap:2px;padding:4px;border:1.5px solid var(--border);border-radius:999px;background:transparent;align-self:center;position:relative;overflow:hidden;width:auto;max-width:100%}.ev-db-mode-tabs--single{display:inline-flex}.ev-db-mode-indicator{position:absolute;top:4px;bottom:4px;border-radius:999px;background:#e5e5ea;box-shadow:none;transition:left .32s cubic-bezier(.16,1,.3,1),width .32s cubic-bezier(.16,1,.3,1);pointer-events:none}.ev-db-mode-tab{min-width:112px;height:34px;border:none;border-radius:999px;background:transparent;color:var(--muted);font:inherit;font-size:13px;font-weight:500;cursor:pointer;padding:0 15px;white-space:nowrap;position:relative;z-index:1;transition:color .18s ease,font-weight .18s ease}.ev-db-mode-tab.active{color:#000;font-weight:700}.ev-db-tabs{flex-shrink:0}.ev-db-tabs .db-tab.active{background:#e5e5ea;color:#000}.ev-db-tabs .db-tab.active .db-tab-count{background:#fff;color:#000}.ev-dish-filters{display:flex;gap:6px;align-items:flex-start;flex-wrap:wrap;overflow:visible;padding:0 2px 2px;flex-shrink:0;scrollbar-width:none}.ev-dish-filters::-webkit-scrollbar{display:none}.ev-dish-filter{min-width:118px;height:34px;border:1px solid var(--border);border-radius:999px;display:inline-flex;align-items:center;gap:4px;padding:0 10px;background:#ffffff6b;color:var(--muted);flex:1 1 210px;transition:border-color .18s ease,background .18s ease,color .18s ease}.ev-dish-filter.active{border-color:transparent;background:#e5e5ea;color:var(--text)}.ev-dish-filter span{font-size:9px;font-weight:800;text-transform:uppercase;white-space:nowrap}.ev-dish-filter select{min-width:0;width:100%;border:none;background:transparent;color:inherit;outline:none;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.ev-dish-filter--multi{height:auto;min-height:34px;padding:8px 10px 9px;border-radius:18px;flex-basis:100%;flex-direction:column;align-items:stretch;gap:7px;margin:0}.ev-dish-filter--multi legend{padding:0;font-size:9px;font-weight:800;text-transform:uppercase;color:var(--muted)}.ev-dish-filter-checks{display:flex;flex-wrap:wrap;gap:6px}.ev-dish-filter-check{display:inline-flex;align-items:center;gap:5px;min-height:26px;padding:0 9px 0 6px;border:1px solid rgba(0,0,0,.08);border-radius:999px;background:#ffffff6b;color:var(--text);font-size:11px;font-weight:700;cursor:pointer}.ev-dish-filter-check input{position:absolute;opacity:0;pointer-events:none}.ev-dish-filter-check span{width:14px;height:14px;border:1.5px solid var(--muted);border-radius:50%;flex:0 0 auto}.ev-dish-filter-check.active{border-color:transparent;background:#e5e5ea}.ev-dish-filter-check.active span{border-color:#000;background:#000;box-shadow:inset 0 0 0 3px #ffffffd9}.ev-dish-filter-reset{height:34px;border:1px solid var(--border);border-radius:999px;background:#ffffff5c;color:var(--muted);font:inherit;font-size:11px;font-weight:800;padding:0 12px;cursor:pointer;flex:0 0 auto}.ev-db-head{flex-shrink:0}.ev-panel-right .dish-product-result:not(.dish-product-result--head){border-color:transparent;background:#f2f2f7}.ev-panel-right .dish-product-result:not(.dish-product-result--head):hover{border-color:transparent;background:#ececf2}.ev-panel-right .dish-product-add-btn{background:#fff;color:#000}.ev-panel-right .dish-product-add-btn:hover{background:#e5e5ea;color:#000}.ev-panel-right .dish-product-result--dish{grid-template-columns:28px 34px minmax(132px,1fr) repeat(5,41px);gap:8px}.dish-picker-image{width:32px;height:32px;display:grid;place-items:center;overflow:hidden;border-radius:50%;background:#e5e5ea;box-shadow:inset 0 0 0 1px #0000000f}.dish-picker-image img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.ev-db-results{flex:1;min-height:0;margin-right:-14px;padding-right:14px;scrollbar-width:thin;scrollbar-color:rgba(112,104,96,.62) transparent}.ev-db-results::-webkit-scrollbar{width:8px}.ev-db-results::-webkit-scrollbar-track{background:transparent}.ev-db-results::-webkit-scrollbar-thumb{background:#7068608f;border-radius:999px;border:2px solid transparent;background-clip:content-box}.ev-db-results::-webkit-scrollbar-thumb:hover{background:#706860b8;background-clip:content-box}.ev-db-content{flex:1;min-height:0;display:flex;flex-direction:column;gap:8px;overflow:visible}.ev-db-content--forward{animation:evDbContentInRight .34s cubic-bezier(.16,1,.3,1) both}.ev-db-content--back{animation:evDbContentInLeft .34s cubic-bezier(.16,1,.3,1) both}@keyframes evDbContentInRight{0%{opacity:0;transform:translate(34px);filter:blur(4px)}to{opacity:1;transform:translate(0);filter:blur(0)}}@keyframes evDbContentInLeft{0%{opacity:0;transform:translate(-34px);filter:blur(4px)}to{opacity:1;transform:translate(0);filter:blur(0)}}.product-edit-field input[type=time],.product-edit-field input[type=number]{height:38px;border:1.5px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);padding:0 10px;font:inherit;font-size:14px;outline:none}.shopping-weeks{overflow-y:auto;padding:24px 28px;display:flex;flex-direction:column;gap:28px}.shopping-week{display:flex;flex-direction:column;gap:6px}.shopping-week-label{font-size:16px;font-weight:700;margin-bottom:8px;color:var(--text)}.shopping-item{display:flex;align-items:center;gap:10px;padding:10px 0;border-radius:0;background:transparent;cursor:default;font-size:13px;transition:opacity .15s}.shopping-item span{min-width:0;display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex:1}.shopping-item strong{min-width:0;font-size:13px;font-weight:800;color:var(--text)}.shopping-item em{flex-shrink:0;font-style:normal;font-size:12px;font-weight:800;color:var(--muted)}.shopping-all{display:flex;flex:1;min-height:0;overflow-y:auto;flex-direction:column;gap:12px;margin-right:-18px;padding-right:18px}.shopping-category{display:flex;flex-direction:column}.shopping-category-title{position:sticky;top:0;z-index:1;padding:8px 0 6px;background:transparent;color:var(--muted);font-size:10px;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.shopping-category .shopping-item+.shopping-item{border-top:1px solid rgba(0,0,0,.06)}.patient-shopping-month-view{display:grid;grid-template-columns:minmax(0,1fr) 320px;height:100%;min-height:0;overflow:hidden;padding-top:var(--header-h)}.patient-shopping-calendar{display:flex;align-items:center;justify-content:center;min-height:0;overflow:auto;padding:20px 28px 24px;position:relative}.patient-shopping-calendar .calendar{width:min(100%,900px)}.shopping-week-sidebar{position:relative;isolation:isolate;z-index:10;margin:16px 16px 16px 0;border-left:none;border:1px solid rgba(0,0,0,.06);border-radius:24px;background:linear-gradient(135deg,#84a9c833,#ccaa8c1f 48%,#8ecf9a24),#ffffffc7;box-shadow:0 0 0 1px #00000008,0 8px 24px #00000014,0 32px 80px #00000021,-20px 0 54px #0000000d;overflow:visible}.shopping-week-sidebar:before{content:"";position:absolute;top:-30px;right:-30px;bottom:-30px;left:-30px;border-radius:42px;background:radial-gradient(circle at 18% 24%,rgba(132,169,200,.34),transparent 42%),radial-gradient(circle at 86% 18%,rgba(204,170,140,.3),transparent 38%),radial-gradient(circle at 30% 88%,rgba(142,207,154,.2),transparent 42%);filter:blur(28px);opacity:1;pointer-events:none;z-index:-1}.shopping-sidebar-eyebrow{margin-bottom:4px;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.user-shell{display:grid;grid-template-rows:var(--header-h) 1fr;height:100vh;overflow:hidden}.user-header{display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid var(--border);background:var(--surface)}.user-main{display:grid;grid-template-columns:1fr 300px;min-height:0;overflow:hidden}.user-calendar-area{overflow:auto;padding:20px 24px;background:var(--bg)}.user-sidebar{border-left:1px solid var(--border);background:var(--surface);overflow:auto;padding:20px 18px;display:flex;flex-direction:column;gap:16px}.user-sidebar-date{font-size:20px;font-weight:700;color:var(--text)}.user-kcal-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:15px;font-weight:600;align-self:flex-start}.user-day-events{display:grid;gap:8px}.user-event{display:flex;align-items:flex-start;gap:10px;padding:10px;border:1px solid var(--border);border-radius:var(--radius);background:#fbfcfa}.user-event--consult{border-color:#c8e4f5;background:#f0f8fd}.user-event-dot{width:8px;height:8px;border-radius:50%;margin-top:4px;flex-shrink:0}.user-event-dot--meal{background:var(--accent)}.user-event-dot--consult{background:#3a8fc7}.user-event-label{font-size:13px;font-weight:500}.user-event-kcal{font-size:12px;color:var(--muted)}.user-empty-day{flex:1;display:grid;place-items:center;color:var(--muted);font-size:15px;min-height:100px}.user-sidebar-legend{margin-top:auto;padding-top:16px;border-top:1px solid var(--border);display:grid;gap:8px}.legend-item{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.patient-month-view{flex:1;min-height:0;overflow:auto;padding:20px 28px 24px;position:relative}.patient-month-view .cal-view-switcher--standalone{top:12px;right:28px}.calendar{max-width:1180px;margin:0 auto}.cal-header{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:16px}.cal-header .icon-button{border-color:transparent;border-radius:50%;background:transparent}.cal-header .icon-button:hover{border-color:var(--border);background:var(--surface)}.cal-month-label{font-size:20px;font-weight:700}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.cal-weekday{padding:8px 4px;text-align:center;font-size:12px;font-weight:600;color:var(--muted);text-transform:uppercase}.cal-day{min-height:80px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;padding:8px;text-align:left;display:flex;flex-direction:column;gap:4px;transition:background .1s}.cal-day:hover{background:var(--surface-2)}.calendar--select-week .cal-day:hover{background:var(--surface)}.cal-day--other{opacity:.35}.cal-day--today{border-color:#00000052;background:#0000000b}.cal-day--today .cal-day-num{color:#000;font-weight:700}.cal-day--week-hovered{border-color:#00000038;background:#0000000b}.cal-day--week-selected{border-color:#00000047;background:#00000012}.cal-day--week-selected .cal-day-num{color:#000;font-weight:800}.cal-day--selected{border-color:#000;background:#000}.cal-day--selected .cal-day-num{color:#fff}.cal-day--selected .cal-day-nutrition,.cal-day--selected .cal-day-nutrition strong{color:#ffffffe6}.cal-day--selected .cal-event-dot--meal{background:#ffffffb3}.cal-day--selected .cal-event-dot--consult{background:#ffffff80}.cal-day-num{font-size:14px;font-weight:500;line-height:1}.cal-events{display:flex;gap:3px;flex-wrap:wrap}.cal-day-nutrition{display:flex;flex-wrap:wrap;gap:3px 6px;margin-top:2px;font-size:10.5px;font-weight:700;color:var(--muted);line-height:1.25}.cal-day-nutrition strong{color:#000;font-size:10.5px;font-weight:800}.cal-event-dot{width:7px;height:7px;border-radius:50%}.cal-event-dot--meal{background:#6aac7a}.cal-event-dot--consult{background:var(--accent)}.save-error-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px;padding:10px 14px;border:1px solid var(--danger);border-radius:12px;background:#fdecec;color:var(--danger);font-size:13px}.save-error-banner button{flex:none;padding:6px 14px;border:1px solid var(--danger);border-radius:8px;background:var(--danger);color:#fff;font-size:12px;cursor:pointer}.save-error-banner button:hover{opacity:.9}
