:root{--ink:#18251e;--ink-soft:#506057;--ink-faint:#7b8a80;--canvas:#f4f6f2;--surface:#fff;--surface-muted:#eff2ec;--line:#dfe5dc;--line-strong:#cbd4c8;--forest:#183a2b;--forest-deep:#102b20;--lime:#cdf55b;--lime-deep:#96c52d;--coral:#ee846c;--coral-soft:#fff0ec;--teal:#207e6b;--teal-soft:#e7f5ef;--danger:#bc4c3c;--danger-soft:#fff0ed;--metric-kcal:#b42318;--metric-protein:#1d4ed8;--metric-carbs:#087443;--metric-fat:#8a5a00;--shadow-sm:0 2px 4px #122a1f0a, 0 8px 24px #122a1f0a;--shadow-lg:0 24px 80px #0c231824}*{box-sizing:border-box}html{background:var(--canvas);scroll-behavior:smooth;min-width:320px}body{min-height:100vh;color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.5}button,input,select{font:inherit}button,select,summary{cursor:pointer}button:disabled,select:disabled,input:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}button:focus-visible,select:focus-visible,input:focus-visible,summary:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #9fd12fb8}.brand{width:fit-content;color:var(--ink);letter-spacing:-.07em;align-items:center;gap:10px;font-size:20px;font-weight:780;display:inline-flex}.brand>span:last-child>span{color:var(--teal)}.eyebrow{color:var(--teal);letter-spacing:.13em;text-transform:uppercase;margin:0;font-size:11px;font-weight:760;line-height:1.4}.login-page{background:var(--surface);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:#f6f7f6;border:1px solid #ecefec;border-radius:18px;width:min(100%,420px);padding:clamp(30px,5vw,44px);box-shadow:0 12px 32px #122a1f0d}.login-form-wrap{margin-top:44px}.login-form-wrap>.eyebrow{margin-bottom:12px}.login-form-wrap h1{color:var(--ink);letter-spacing:-.055em;margin:0;font-size:clamp(29px,5vw,34px);font-weight:720;line-height:1.07}.login-subtitle{color:var(--ink-soft);margin:16px 0 31px;font-size:15px}.google-button{border:1px solid var(--line-strong);width:100%;min-height:57px;color:var(--ink);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:13px;justify-content:center;align-items:center;gap:12px;padding:12px 18px;font-size:15px;font-weight:680;transition:border-color .16s,box-shadow .16s,transform .16s;display:flex}.google-button:hover:not(:disabled){border-color:#9db694;transform:translateY(-1px);box-shadow:0 6px 20px #0f31201f}.google-button:disabled{color:var(--ink-soft);background:#f9faf8}.google-mark{flex:none;width:20px;height:20px}.button-spinner,.large-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;flex:none;width:17px;height:17px;animation:.78s linear infinite spinner;display:inline-block}.login-error{color:var(--danger);margin:14px 0 0;font-size:13px;line-height:1.5}.panel-loader,.access-error-page{text-align:center;background:radial-gradient(circle at 50% 20%, #cdf55b33, transparent 26%), var(--canvas);align-content:center;place-items:center;gap:24px;min-height:100vh;padding:32px;display:grid}.panel-loader .brand{margin-bottom:14px}.panel-loader p{color:var(--ink-soft);margin:0;font-size:14px}.large-spinner{width:31px;height:31px;color:var(--teal);border-width:3px}.access-error-card{border:1px solid var(--line);background:var(--surface);width:min(100%,510px);box-shadow:var(--shadow-lg);border-radius:24px;padding:clamp(30px,5vw,54px)}.access-error-icon{width:48px;height:48px;color:var(--danger);background:var(--danger-soft);border-radius:15px;place-items:center;margin:0 auto 25px;display:grid}.access-error-icon svg{width:24px;height:24px}.access-error-card h1{letter-spacing:-.05em;margin:9px 0 13px;font-size:29px;line-height:1.12}.access-error-card>p:not(.eyebrow){color:var(--ink-soft);margin:0}.access-error-card small{color:var(--ink-faint);margin-top:16px;display:block}.access-error-actions{justify-content:center;align-items:center;gap:17px;margin-top:30px;display:flex}.primary-small-button,.text-button{border:0;font-size:14px;font-weight:700}.primary-small-button{color:var(--forest-deep);background:var(--lime);border-radius:10px;padding:11px 16px}.text-button{color:var(--ink-soft);background:0 0;padding:9px}.app-shell{grid-template-columns:244px minmax(0,1fr);min-height:100vh;display:grid}.app-sidebar{color:#eaf3e9;background:var(--forest-deep);border-right:1px solid #ffffff14;flex-direction:column;height:100vh;padding:30px 18px 24px;display:flex;position:sticky;top:0}.app-nav{gap:5px;margin-top:61px;display:grid}.nav-item{color:#ebf6e9a8;border-radius:10px;align-items:center;gap:12px;min-height:45px;padding:0 12px;font-size:14px;font-weight:560;display:flex}.nav-item svg{flex:none;width:18px;height:18px}.nav-item-active{color:#f6fff4;background:#cdf55b24;box-shadow:inset 0 0 0 1px #cdf55b1a}.nav-item-active svg{color:var(--lime)}.nav-item-muted{opacity:.54}.nav-item small{color:#cce2b2;letter-spacing:.04em;text-transform:uppercase;margin-left:auto;font-size:9px}.sidebar-footer{border-top:1px solid #ffffff1a;margin-top:auto;padding:20px 12px 0}.secure-label{color:var(--lime);align-items:center;gap:7px;font-size:11px;font-weight:710;display:flex}.secure-dot{background:var(--lime);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #cdf55b1c}.sidebar-footer p{color:#ebf6e97d;margin:10px 0 0;font-size:11px;line-height:1.65}.app-content{background:radial-gradient(circle at 92% 3%, #cdf55b2b, transparent 19%), var(--canvas);min-width:0}.app-header{border-bottom:1px solid #cbd4c8b8;justify-content:flex-end;align-items:center;gap:20px;min-height:84px;padding:17px clamp(27px,4vw,66px);display:flex}.mobile-brand{display:none}.header-actions{align-items:center;gap:19px;display:flex}.header-status{color:var(--ink-soft);align-items:center;gap:8px;font-size:12px;font-weight:650;display:inline-flex}.header-status>span{background:var(--teal);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #207e6b1c}.account-menu{position:relative}.account-menu summary{align-items:center;gap:9px;max-width:250px;list-style:none;display:flex}.account-menu summary::-webkit-details-marker{display:none}.account-menu summary>svg{width:16px;height:16px;color:var(--ink-faint);transition:transform .15s}.account-menu[open] summary>svg{transform:rotate(180deg)}.account-avatar{width:35px;height:35px;color:var(--forest);background:#dfeccc;border:1px solid #183a2b1a;border-radius:11px;flex:none;place-items:center;font-size:11px;font-weight:760;display:grid}.account-email{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:620;overflow:hidden}.account-popover{z-index:10;border:1px solid var(--line);background:var(--surface);width:245px;box-shadow:var(--shadow-lg);border-radius:13px;padding:15px;position:absolute;top:calc(100% + 12px);right:0}.account-popover p{color:var(--ink-soft);margin:0 0 12px;font-size:11px;line-height:1.55}.account-popover strong{color:var(--ink);font-size:12px}.account-popover button{width:100%;color:var(--danger);background:var(--danger-soft);text-align:left;border:0;border-radius:8px;padding:9px 10px;font-size:12px;font-weight:680}.planner-refresh-error{color:#934737;background:var(--danger-soft);border:1px solid #f0cfc7;border-radius:10px;width:min(100% - 54px,1266px);margin:18px auto -18px;padding:9px 12px;font-size:12px;line-height:1.45}.planner-main{width:min(100%,1410px);margin:0 auto;padding:clamp(34px,5.4vw,75px) clamp(27px,4.6vw,72px) 70px}.planner-topline{justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:37px;display:flex}.planner-topline h1{letter-spacing:-.065em;max-width:660px;margin:8px 0 10px;font-size:clamp(32px,3.7vw,52px);font-weight:710;line-height:1.04}.planner-intro{max-width:580px;color:var(--ink-soft);margin:0;font-size:15px;line-height:1.65}.topline-stat{background:#ffffffa6;border:1px solid #d8e3cf;border-radius:13px;align-items:center;gap:10px;min-width:129px;padding:10px 13px;display:flex}.stat-icon{width:31px;height:31px;color:var(--teal);background:var(--teal-soft);border-radius:9px;place-items:center;display:grid}.stat-icon svg{width:17px;height:17px}.topline-stat strong,.topline-stat small{display:block}.topline-stat strong{color:var(--ink);font-size:16px;line-height:1.05}.topline-stat small{color:var(--ink-faint);white-space:nowrap;margin-top:3px;font-size:10px;line-height:1.15}.planner-layout{grid-template-columns:minmax(0,1.44fr) minmax(275px,.67fr);align-items:start;gap:clamp(20px,2.7vw,37px);display:grid}.planner-card,.client-card,.hint-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm)}.planner-card{border-radius:20px;padding:clamp(25px,3.3vw,43px)}.planner-card-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:28px;display:flex}.section-kicker{color:var(--teal);letter-spacing:.11em;text-transform:uppercase;margin-bottom:7px;font-size:10px;font-weight:770;display:block}.planner-card h2,.client-card h2,.hint-card h2{color:var(--ink);letter-spacing:-.045em;margin:0;font-weight:710}.planner-card h2{font-size:25px;line-height:1.1}.steps-badge{color:var(--teal);background:var(--teal-soft);border-radius:7px;flex:none;padding:6px 8px;font-size:10px;font-weight:730;display:inline-flex}.form-section{border:0;margin:27px 0 0;padding:0}.field-label{color:var(--ink);margin-bottom:10px;font-size:13px;font-weight:720;display:block}.select-wrap,.date-input-wrap{position:relative}.select-wrap>svg,.date-input-wrap>svg{z-index:1;width:17px;height:17px;color:var(--ink-faint);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.select-wrap:after{border-right:1.5px solid var(--ink-faint);border-bottom:1.5px solid var(--ink-faint);content:"";pointer-events:none;width:7px;height:7px;position:absolute;top:50%;right:15px;transform:translateY(-72%)rotate(45deg)}.select-wrap select,.date-input-wrap input{appearance:none;border:1px solid var(--line-strong);width:100%;height:49px;color:var(--ink);background:#fbfcfa;border-radius:10px;outline:0;font-size:14px;font-weight:580;transition:border-color .15s,box-shadow .15s,background .15s}.select-wrap select{padding:0 42px 0 43px}.date-input-wrap input{padding:0 11px 0 40px}.select-wrap select:hover:not(:disabled),.date-input-wrap input:hover:not(:disabled){background:#fff;border-color:#aebdab}.select-wrap select:focus,.date-input-wrap input:focus{border-color:var(--teal);background:#fff;box-shadow:0 0 0 3px #207e6b21}.select-wrap select:disabled,.date-input-wrap input:disabled{color:#a3ada4;background:#f0f2ee}.field-help{color:var(--ink-faint);margin:8px 0 0;font-size:11px;line-height:1.5}.date-fieldset{min-width:0}.fieldset-help{margin-top:-4px}.date-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:13px;display:grid}.date-control{color:var(--ink-soft);gap:7px;font-size:11px;font-weight:680;display:grid}.range-summary{color:#5b6c51;background:#f4f7ee;border-radius:9px;align-items:center;gap:8px;margin-top:14px;padding:9px 11px;font-size:11px;display:flex}.range-summary svg{width:15px;height:15px;color:var(--lime-deep);flex:none}.range-summary strong{color:var(--forest)}.workout-target-review{background:#f8fcfa;border:1px solid #cfe2da;border-radius:13px;margin-top:27px;padding:18px}.workout-target-review-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.workout-target-review .section-kicker{color:#17634f;margin-bottom:5px}.workout-target-review h3{color:var(--ink);letter-spacing:-.03em;margin:0;font-size:16px;font-weight:760}.workout-target-status{border-radius:999px;flex:none;padding:5px 7px;font-size:9px;font-weight:760;line-height:1}.workout-target-status-idle{color:#66756d;background:#edf2ee}.workout-target-status-loading{color:#14635b;background:#e4f5ee}.workout-target-status-ready{color:#17634f;background:#dff3e9}.workout-target-status-error{color:#994131;background:#fff0ed}.workout-target-empty,.workout-target-intro,.workout-target-decision{color:var(--ink-soft);margin:12px 0 0;font-size:11px;line-height:1.5}.workout-target-loading,.workout-target-error{border-radius:9px;align-items:center;gap:8px;margin-top:14px;padding:10px 11px;font-size:11px;line-height:1.4;display:flex}.workout-target-loading{color:#17634f;background:#edf8f2}.workout-target-loading .button-spinner{width:14px;height:14px}.workout-target-error{color:#994131;background:#fff3ef;border:1px solid #f4cfc7;justify-content:space-between;align-items:flex-start}.workout-target-error button{color:inherit;background:#ffffffc7;border:1px solid #efb7aa;border-radius:7px;flex:none;padding:5px 7px;font-size:10px;font-weight:730}.workout-target-error button:hover:not(:disabled){background:#fff}.workout-target-error button:disabled{opacity:.58}.workout-target-adjust-toggle{color:var(--ink);cursor:pointer;background:#fff;border:1px solid #d8e6df;border-radius:10px;align-items:center;gap:9px;margin-top:15px;padding:10px 11px;display:flex}.workout-target-adjust-toggle input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.workout-target-adjust-switch{background:#cbd5cf;border-radius:999px;flex:none;width:31px;height:18px;transition:background .16s;position:relative}.workout-target-adjust-switch:after{content:"";background:#fff;border-radius:50%;width:12px;height:12px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #0f312038}.workout-target-adjust-toggle input:checked+.workout-target-adjust-switch{background:var(--teal)}.workout-target-adjust-toggle input:checked+.workout-target-adjust-switch:after{transform:translate(13px)}.workout-target-adjust-toggle input:focus-visible+.workout-target-adjust-switch{outline-offset:2px;outline:3px solid #207e6b38}.workout-target-adjust-toggle input:disabled+.workout-target-adjust-switch,.workout-target-adjust-toggle input:disabled~span{opacity:.52}.workout-target-adjust-toggle>span:last-child{gap:2px;display:grid}.workout-target-adjust-toggle strong{font-size:11px;font-weight:750}.workout-target-adjust-toggle small{color:var(--ink-faint);font-size:10px;line-height:1.35}.workout-target-decision{color:#386252}.workout-target-list{grid-template-columns:repeat(auto-fit,minmax(225px,1fr));gap:10px;margin-top:14px;display:grid}.workout-target-card{background:#fff;border:1px solid #dce9e2;border-radius:10px;min-width:0;overflow:hidden}.workout-target-card-header{background:#fbfdfc;border-bottom:1px solid #e8efeb;justify-content:space-between;align-items:flex-start;gap:8px;padding:9px 10px;display:flex}.workout-target-card-header>div{gap:2px;display:grid}.workout-target-card-header time{color:var(--ink);font-size:12px;font-weight:760}.workout-target-card-header>div>span,.workout-target-card-header>span{color:var(--ink-faint);font-size:9px;font-weight:670}.workout-target-card-header>span{color:#17634f;background:#e8f6ef;border-radius:999px;padding:3px 5px}.workout-target-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 11px;margin:0;padding:10px;display:grid}.workout-target-facts>div{min-width:0}.workout-target-facts-muscles{grid-column:1/-1}.workout-target-facts dt{color:var(--ink-faint);letter-spacing:.05em;text-transform:uppercase;margin-bottom:2px;font-size:8px;font-weight:710}.workout-target-facts dd{color:var(--ink);text-overflow:ellipsis;margin:0;font-size:11px;font-weight:660;line-height:1.35;overflow:hidden}.workout-target-editor{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px;display:grid}.workout-target-field{min-width:0;color:var(--ink-soft);gap:5px;font-size:9px;font-weight:710;display:grid}.workout-target-field-activity,.workout-target-field-muscles,.workout-target-rest-note{grid-column:1/-1}.workout-target-field input,.workout-target-field select{width:100%;min-width:0;color:var(--ink);font:inherit;background:#fcfefc;border:1px solid #ccdcd3;border-radius:7px;outline:0;font-size:11px;font-weight:590}.workout-target-field input,.workout-target-field select:not([multiple]){height:34px;padding:0 8px}.workout-target-field select[multiple]{min-height:84px;padding:4px}.workout-target-field option{padding:4px 5px}.workout-target-field input:focus,.workout-target-field select:focus{border-color:var(--teal);background:#fff;box-shadow:0 0 0 3px #207e6b21}.workout-target-field input:disabled,.workout-target-field select:disabled{color:#98a198;background:#f1f4f1}.workout-target-field small{color:var(--ink-faint);font-size:10px;font-weight:560;line-height:1.35}.workout-target-rest-note{color:#596a60;background:#f2f6f3;border-radius:7px;margin:0;padding:7px 8px;font-size:10px;line-height:1.4}.form-feedback{border-radius:9px;align-items:flex-start;gap:9px;margin-top:19px;padding:11px 12px;font-size:12px;line-height:1.45;display:flex}.form-feedback svg{flex:none;width:17px;height:17px;margin-top:1px}.form-feedback-error{color:#994131;background:var(--danger-soft);border:1px solid #f4cfc7}.form-feedback-success{color:#17634f;background:var(--teal-soft);border:1px solid #c8e7d9}.action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:27px;display:grid}.generate-button{min-width:0;min-height:79px;color:var(--forest-deep);background:var(--lime);text-align:left;border:1px solid #0000;border-radius:13px;align-items:center;gap:10px;padding:13px;transition:transform .15s,box-shadow .15s,filter .15s;display:flex;box-shadow:0 7px 16px #8fb62729}.generate-button-food{color:#732e23;box-shadow:none;background:#fff3ef;border-color:#f5c9bd}.generate-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 20px #4a671433}.generate-button-food:hover:not(:disabled){box-shadow:0 10px 20px #bd624c29}.generate-button:disabled{color:#8b958d;box-shadow:none;background:#f0f2ee;border-color:#e2e7df}.generate-icon{width:37px;height:37px;color:var(--forest-deep);background:#ffffff80;border-radius:10px;flex:none;place-items:center;display:grid}.generate-button-food .generate-icon{color:#ae4b39;background:#ffffffbf}.generate-button:disabled .generate-icon{color:#98a198}.generate-icon svg{width:20px;height:20px}.generate-copy{gap:3px;min-width:0;display:grid}.generate-copy strong,.generate-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.generate-copy strong{letter-spacing:-.02em;font-size:13px;font-weight:770}.generate-copy small{color:currentColor;opacity:.72;font-size:9px;font-weight:570}.generate-button>svg,.generate-button>.button-spinner{flex:none;width:17px;height:17px;margin-left:auto}.actions-help{color:var(--ink-faint);margin:13px 0 0;font-size:10px;line-height:1.5}.planner-aside{gap:17px;display:grid}.client-card{border-radius:18px;overflow:hidden}.client-card-header{border-bottom:1px solid var(--line);color:var(--ink-soft);justify-content:space-between;align-items:center;padding:17px 18px;font-size:11px;font-weight:680;display:flex}.live-dot{color:var(--teal);align-items:center;gap:5px;font-size:10px;font-weight:740;display:inline-flex}.live-dot:before{background:var(--teal);content:"";border-radius:50%;width:6px;height:6px}.client-profile{align-items:center;gap:12px;padding:20px 18px;display:flex}.client-avatar{object-fit:cover;border-radius:14px;flex:none;place-items:center;width:43px;height:43px;display:grid}.client-avatar-fallback{color:var(--forest);background:linear-gradient(135deg,#d7eca5,#c3ded1);font-size:13px;font-weight:800}.client-profile h2{text-overflow:ellipsis;white-space:nowrap;font-size:16px;line-height:1.2;overflow:hidden}.client-profile p{color:var(--ink-faint);text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:11px;overflow:hidden}.availability-list{border-top:1px solid var(--line);background:var(--line);gap:1px;display:grid}.availability-row{background:var(--surface);align-items:center;gap:10px;padding:13px 18px;display:flex}.availability-icon{width:28px;height:28px;color:var(--teal);background:var(--teal-soft);border-radius:8px;flex:none;place-items:center;display:grid}.availability-row:nth-child(2) .availability-icon{color:#ad4b39;background:#fff1ed}.availability-icon svg{width:15px;height:15px}.availability-row span:last-child{gap:1px;min-width:0;display:grid}.availability-row small{color:var(--ink-faint);font-size:10px}.availability-row strong{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:650;overflow:hidden}.empty-client-state{text-align:center;padding:33px 24px 35px}.empty-icon{width:43px;height:43px;color:var(--ink-faint);background:var(--surface-muted);border-radius:13px;place-items:center;margin:0 auto 16px;display:grid}.empty-icon svg{width:21px;height:21px}.empty-client-state h2{font-size:15px}.empty-client-state p{color:var(--ink-faint);margin:8px 0 0;font-size:11px;line-height:1.6}.hint-card{box-shadow:none;background:#f9fbed;border-color:#dae3c4;border-radius:15px;gap:11px;padding:16px;display:flex}.hint-icon{color:#779a23;background:#cdf55b52;border-radius:8px;flex:none;place-items:center;width:28px;height:28px;display:grid}.hint-icon svg{width:16px;height:16px}.hint-card h2{font-size:12px}.hint-card p{color:#667251;margin:4px 0 0;font-size:10px;line-height:1.6}.generated-calendar{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:20px;margin-top:clamp(28px,4vw,48px);padding:clamp(20px,2.7vw,32px)}.generated-calendar-empty{background:#ffffff8f;border-style:dashed;place-items:center start;min-height:172px;display:grid}.generated-calendar-empty>div{max-width:420px}.generated-calendar h2{color:var(--ink);letter-spacing:-.052em;margin:0;font-size:clamp(22px,2.4vw,30px);font-weight:720;line-height:1.1}.generated-calendar-empty p,.calendar-range-copy{color:var(--ink-soft);margin:8px 0 0;font-size:12px;line-height:1.55}.generated-calendar-toolbar{justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.calendar-toolbar-actions,.calendar-nav,.calendar-refresh-button,.calendar-nav-button,.calendar-today-button{align-items:center;display:inline-flex}.calendar-toolbar-actions{flex:none;gap:9px}.calendar-nav{border:1px solid var(--line-strong);background:#fbfcfa;border-radius:9px;overflow:hidden}.calendar-nav-button,.calendar-today-button,.calendar-refresh-button{min-height:34px;color:var(--ink-soft);background:0 0;border:0;font-size:11px;font-weight:700;transition:color .15s,background .15s}.calendar-nav-button:hover,.calendar-today-button:hover,.calendar-refresh-button:hover:not(:disabled){color:var(--forest);background:var(--surface-muted)}.calendar-nav-button{justify-content:center;width:32px}.calendar-nav-button+.calendar-today-button,.calendar-today-button+.calendar-nav-button{border-left:1px solid var(--line)}.calendar-nav-button svg{width:17px;height:17px}.calendar-today-button{padding:0 11px}.calendar-refresh-button{border:1px solid var(--line-strong);background:#fbfcfa;border-radius:9px;gap:6px;padding:0 10px}.calendar-refresh-button:disabled{opacity:.58}.calendar-refresh-button svg{width:15px;height:15px}.calendar-legend{flex-wrap:wrap;gap:13px;margin:20px 0 15px;display:flex}.calendar-legend-item{color:var(--ink-soft);align-items:center;gap:6px;font-size:10px;font-weight:690;display:inline-flex}.calendar-legend-item>span{border-radius:3px;width:8px;height:8px}.calendar-legend-food>span{background:#15d28f}.calendar-legend-workout>span{background:#38bdf8}.calendar-legend-mindfulness>span{background:#9061f9}.calendar-inline-error{color:#934737;background:var(--danger-soft);border:1px solid #f0cfc7;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;margin:0 0 14px;padding:9px 11px;font-size:11px;display:flex}.calendar-inline-error button{color:inherit;font-size:inherit;background:0 0;border:0;padding:0;font-weight:760;text-decoration:underline}.calendar-scroll{border:1px solid var(--line);background:#fcfdfb;border-radius:13px;max-height:min(78vh,780px);position:relative;overflow:auto}.calendar-scroll[aria-busy=true] .calendar-frame{opacity:.6}.calendar-frame{min-width:1150px;transition:opacity .15s;position:relative}.calendar-day-headings,.calendar-target-grid,.calendar-day-summaries,.calendar-all-day-row,.calendar-grid-body{grid-template-columns:72px repeat(var(--calendar-day-count,7), minmax(154px, 1fr));display:grid}.calendar-day-headings{z-index:5;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#fcfdfbf5;min-height:96px;position:sticky;top:0}.calendar-time-heading,.calendar-day-heading{border-right:1px solid var(--line);place-items:center;display:grid}.calendar-day-heading:last-child{border-right:0}.calendar-time-heading{color:var(--ink-faint);letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:760}.calendar-day-heading{color:var(--ink-faint);text-align:left;flex-direction:column;align-items:stretch;gap:8px;padding:10px 11px 9px;font-size:10px;font-weight:690;display:flex;position:relative}.calendar-day-heading strong{color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.07em;font-size:34px;font-weight:760;line-height:.9;display:block}.calendar-day-heading-date{align-items:center;gap:8px;display:flex}.calendar-day-heading-date-labels{color:var(--ink-faint);letter-spacing:.08em;text-transform:uppercase;gap:2px;font-size:8px;font-weight:780;line-height:1.1;display:grid}.calendar-day-state{letter-spacing:.06em;border-radius:999px;justify-content:center;align-items:center;min-height:17px;padding:2px 6px;font-size:8px;font-weight:800;line-height:1;display:inline-flex}.calendar-day-heading-badges{justify-content:flex-start;align-items:center;gap:4px;min-height:17px;margin-top:auto;display:inline-flex}.calendar-day-plan-icon{border-radius:6px;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex}.calendar-day-plan-icon-workout{color:#16729c;background:#eaf8ff}.calendar-day-plan-icon-food{color:#087958;background:#e4f7ef}.calendar-day-plan-icon svg{width:12px;height:12px}.calendar-day-state-plan{color:#52645b;background:#edf2ee}.calendar-day-state-review{color:#8a5a00;background:#fff1d5}.calendar-day-state-approved{color:#17634f;background:#dff3e9}.calendar-day-heading-today{background:linear-gradient(#1e7f6a17,#1e7f6a04)}.calendar-day-heading-today:after{color:#17634f;content:"TODAY";letter-spacing:.08em;background:#dff3e9;border-radius:999px;padding:3px 5px;font-size:6px;font-weight:820;line-height:1;position:absolute;top:9px;right:9px}.calendar-day-heading-today strong{color:#fff;background:var(--teal);letter-spacing:-.04em;border-radius:12px;place-items:center;width:40px;height:40px;font-size:27px;display:grid;box-shadow:0 5px 12px #1e7f6a38}.calendar-day-heading-generated:not(.calendar-day-heading-today) strong{box-shadow:0 0 0 2px #15d28f57}.calendar-targets{border-bottom:1px solid var(--line);background:#f8fcfa}.calendar-nutrition-targets{background:#fffdf8}.calendar-nutrition-targets .calendar-targets-toolbar{background:#fffdf8f7;border-bottom:0}.calendar-scroll:has(.calendar-nutrition-targets) .calendar-day-headings{border-bottom:0}.calendar-nutrition-target-label,.calendar-nutrition-targets .calendar-target-cell{border-right:0}.calendar-scroll:has(.calendar-nutrition-targets) .calendar-time-heading{border-right:0}.calendar-scroll:has(.calendar-nutrition-targets) .calendar-day-heading{border-right:0}.calendar-nutrition-targets{border-bottom:0}.calendar-nutrition-targets .calendar-targets-toolbar .section-kicker,.calendar-nutrition-target-label strong{color:#8a5a00}.calendar-nutrition-target-label{background:#fffaefeb}.calendar-nutrition-target-cell{background:#fffffcdb}.calendar-nutrition-target-cell .calendar-target-cell-header{background:#fffdf8eb;border-bottom-color:#f1eadb}.calendar-nutrition-target-cell .calendar-target-cell-header small{color:#8a5a00}.calendar-nutrition-target-cell-locked{background:#faf8f2db}.calendar-nutrition-target-fact-kcal dd{color:var(--metric-kcal)}.calendar-nutrition-target-fact-protein dd{color:var(--metric-protein)}.calendar-nutrition-target-fact-carbs dd{color:var(--metric-carbs)}.calendar-nutrition-target-fact-fat dd{color:var(--metric-fat)}.calendar-targets-toolbar{background:#f8fcfaf5;border-bottom:1px solid #dce9e2;justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;display:flex}.calendar-targets-toolbar .section-kicker{color:#17634f;margin-bottom:3px}.calendar-targets-toolbar h3{color:var(--ink);letter-spacing:-.025em;margin:0;font-size:14px;font-weight:760}.calendar-targets-summary{color:#597064;margin:3px 0 0;font-size:10px;font-weight:590;line-height:1.35}.calendar-targets-range-error{color:#994131;max-width:480px;margin:5px 0 0;font-size:10px;font-weight:650;line-height:1.35}.calendar-targets-toolbar-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.calendar-target-status{border-radius:999px;flex:none;padding:5px 7px;font-size:9px;font-weight:760;line-height:1}.calendar-target-status-idle{color:#66756d;background:#edf2ee}.calendar-target-status-loading{color:#14635b;background:#e4f5ee}.calendar-target-status-ready{color:#17634f;background:#dff3e9}.calendar-target-status-error{color:#994131;background:#fff0ed}.calendar-target-copy,.calendar-target-retry,.calendar-target-cell-actions button,.calendar-target-editor-actions button,.calendar-target-cell-state button{color:#17634f;background:#fff;border:1px solid #b9d6c8;border-radius:6px;font-size:9px;font-weight:730;line-height:1}.calendar-target-copy,.calendar-target-retry{padding:6px 8px}.calendar-target-copy:hover:not(:disabled),.calendar-target-retry:hover:not(:disabled),.calendar-target-cell-actions button:hover:not(:disabled),.calendar-target-editor-actions button:hover:not(:disabled),.calendar-target-cell-state button:hover:not(:disabled){border-color:var(--teal);background:#f4fbf7}.calendar-target-copy:disabled,.calendar-target-retry:disabled,.calendar-target-cell-actions button:disabled,.calendar-target-editor-actions button:disabled,.calendar-target-cell-state button:disabled{opacity:.55}.calendar-target-adjust-toggle{color:var(--ink);cursor:pointer;align-items:center;gap:7px;font-size:10px;font-weight:720;display:flex}.calendar-target-adjust-toggle input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.calendar-target-adjust-switch{background:#cbd5cf;border-radius:999px;flex:none;width:29px;height:17px;transition:background .16s;position:relative}.calendar-target-adjust-switch:after{content:"";background:#fff;border-radius:50%;width:11px;height:11px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #0f312038}.calendar-target-adjust-toggle input:checked+.calendar-target-adjust-switch{background:var(--teal)}.calendar-target-adjust-toggle input:checked+.calendar-target-adjust-switch:after{transform:translate(12px)}.calendar-target-adjust-toggle input:focus-visible+.calendar-target-adjust-switch{outline-offset:2px;outline:3px solid #207e6b38}.calendar-target-adjust-toggle input:disabled+.calendar-target-adjust-switch,.calendar-target-adjust-toggle input:disabled~span{opacity:.52}.calendar-targets-decision{color:#386252;background:#f1f8f4;border-bottom:1px solid #e1ece6;padding:7px 14px;font-size:10px;font-weight:610;line-height:1.4}.calendar-target-grid{align-items:stretch}.calendar-target-label{border-right:1px solid var(--line);color:var(--ink-faint);letter-spacing:.055em;text-align:right;text-transform:uppercase;background:#f5faf7e6;align-content:start;gap:2px;padding:11px 8px;font-size:8px;font-weight:760;line-height:1.15;display:grid}.calendar-target-label strong{color:#17634f;font-size:inherit}.calendar-target-label small{letter-spacing:.02em;text-transform:none;margin-top:3px;font-size:7px;font-weight:660}.calendar-target-cell{border-right:1px solid var(--line);min-width:0;height:100%;color:var(--ink);background:#ffffffbd}.calendar-target-cell:last-child{border-right:0}.calendar-target-cell-rest{background:#f2f6f3c7}.calendar-target-cell-locked{background:#f6f8f6d1;min-height:116px}.calendar-target-lock-note{color:#78837b;margin:0;padding:9px;font-size:9px;font-weight:560;line-height:1.42}.calendar-target-cell-state{align-content:center;justify-items:start;gap:8px;min-height:116px;padding:11px;display:grid}.calendar-target-cell-state p{margin:0;font-size:10px;font-weight:610;line-height:1.42}.calendar-target-cell-state-loading{color:#17634f;background:#edf8f2}.calendar-target-cell-state-loading .button-spinner{width:14px;height:14px}.calendar-target-cell-state-error{color:#994131;background:#fff3ef}.calendar-target-cell-state-error button{color:#994131;border-color:#efb7aa;padding:5px 7px}.calendar-target-cell-header{background:#fbfdfcd6;border-bottom:1px solid #e8efeb;justify-content:space-between;align-items:baseline;gap:6px;padding:8px 9px 6px;display:flex}.calendar-target-cell-header>span{color:var(--ink);font-size:10px;font-weight:760}.calendar-target-cell-header small{color:#17634f;flex:none;font-size:8px;font-weight:690}.calendar-target-cell-actions{justify-content:flex-end;align-items:center;gap:5px;display:inline-flex}.calendar-target-cell-actions button{padding:4px 5px}.calendar-target-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 9px;margin:0;padding:9px;display:grid}.calendar-target-facts>div{min-width:0}.calendar-target-facts-muscles,.calendar-target-rest-fact{grid-column:1/-1}.calendar-target-facts dt{color:var(--ink-faint);letter-spacing:.05em;text-transform:uppercase;margin-bottom:2px;font-size:8px;font-weight:710}.calendar-target-facts dd{overflow-wrap:anywhere;color:var(--ink);margin:0;font-size:10px;font-weight:660;line-height:1.35}.calendar-target-cell-outside{color:#98a198;text-align:center;background:#f6f8f6b8;align-content:center;justify-items:center;gap:5px;min-height:116px;padding:10px;display:grid}.calendar-target-cell-outside>span{font-size:17px;font-weight:700;line-height:1}.calendar-target-cell-outside small{font-size:9px;font-weight:610;line-height:1.3}.calendar-target-editor{gap:9px;padding:9px;display:grid}.calendar-target-edit-mode{color:var(--ink-faint);flex-wrap:wrap;align-items:center;gap:4px;font-size:9px;font-weight:710;display:flex}.calendar-target-edit-mode>span{margin-right:2px}.calendar-target-edit-mode button{color:#52645b;min-height:24px;font:inherit;background:#fff;border:1px solid #ccdcd3;border-radius:999px;padding:3px 7px;font-size:9px;font-weight:760}.calendar-target-edit-mode button.is-active{border-color:var(--teal);color:#17634f;background:#e5f4ec}.calendar-target-edit-mode button:disabled{opacity:.55}.calendar-target-edit-help{color:var(--ink-faint);margin:-3px 0 0;font-size:9px;line-height:1.35}.calendar-target-input-error{color:#a52b1c;margin:0;font-size:9px;line-height:1.35}.calendar-target-editor-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.calendar-target-editor-actions button{padding:6px 7px}.calendar-target-field{min-width:0;color:var(--ink-soft);gap:4px;font-size:9px;font-weight:710;display:grid}.calendar-target-field input,.calendar-target-field select{width:100%;min-width:0;color:var(--ink);font:inherit;background:#fcfefc;border:1px solid #ccdcd3;border-radius:7px;outline:0;font-size:10px;font-weight:590}.calendar-target-field input,.calendar-target-field select:not([multiple]){height:33px;padding:0 7px}.calendar-target-field select[multiple]{min-height:78px;padding:4px}.calendar-target-field option{padding:4px 5px}.calendar-target-field input:focus,.calendar-target-field select:focus{border-color:var(--teal);background:#fff;box-shadow:0 0 0 3px #207e6b21}.calendar-target-field input:disabled,.calendar-target-field select:disabled{color:#98a198;background:#f1f4f1}.calendar-target-field small{color:var(--ink-faint);font-size:9px;font-weight:560;line-height:1.35}.nutrition-target-drawer{width:min(100vw,500px);max-width:none;height:100dvh;max-height:none;color:var(--ink);background:#fffdf8;border:0;border-left:1px solid #dce9e2;margin:0;padding:0;transition:transform .22s cubic-bezier(.2,.8,.2,1);position:fixed;inset:0 0 0 auto;overflow:hidden;transform:translate(100%);box-shadow:-18px 0 46px #1431232e}.nutrition-target-drawer[data-visible=true]{transform:translate(0)}.nutrition-target-drawer::backdrop{opacity:0;background:#12281c52;transition:opacity .18s}.nutrition-target-drawer[data-visible=true]::backdrop{opacity:1}.nutrition-target-drawer-content{grid-template-rows:auto minmax(0,1fr) auto;height:100%;display:grid}.nutrition-target-drawer-header{background:#fffdf8;border-bottom:1px solid #e9e4d9;justify-content:space-between;align-items:flex-start;gap:16px;padding:28px 28px 22px;display:flex}.nutrition-target-drawer-header .section-kicker{color:#8a5a00;margin-bottom:5px}.nutrition-target-drawer-header h2{color:var(--ink);letter-spacing:-.04em;margin:0;font-size:23px;font-weight:760}.nutrition-target-drawer-header p{color:#66756d;max-width:360px;margin:8px 0 0;font-size:12px;font-weight:560;line-height:1.45}.nutrition-target-drawer-close{color:#52645b;background:#fff;border:1px solid #d6dfd9;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;padding:0;font-size:24px;font-weight:380;line-height:1;display:grid}.nutrition-target-drawer-close:hover:not(:disabled){color:#17634f;background:#f4fbf7;border-color:#9ab8aa}.nutrition-target-drawer-close:disabled{opacity:.55}.nutrition-target-drawer-body{min-height:0;padding:25px 28px 30px;overflow-y:auto}.nutrition-target-drawer-mode{background:#edf3ef;border:1px solid #cfddd5;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,260px);padding:3px;display:grid}.nutrition-target-drawer-mode button{color:#6b7c72;min-height:34px;font:inherit;background:0 0;border:0;border-radius:7px;padding:4px 12px;font-size:12px;font-weight:760;transition:color .15s,background .15s,box-shadow .15s}.nutrition-target-drawer-mode button.is-active{color:#17634f;background:#fff;box-shadow:0 1px 3px #1c422f29}.nutrition-target-drawer-mode button:hover:not(:disabled){color:#17634f}.nutrition-target-drawer-mode button:focus-visible{outline:2px solid var(--teal);outline-offset:-1px}.nutrition-target-drawer-mode button:disabled{opacity:.55}.nutrition-target-drawer-help{color:#69786f;margin:9px 0 0;font-size:11px;font-weight:560;line-height:1.45}.nutrition-target-drawer-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px;display:grid}.nutrition-target-drawer-field-kcal{grid-column:1/-1}.nutrition-target-drawer-field{color:var(--ink-soft);gap:6px;font-size:11px;font-weight:710;display:grid}.nutrition-target-drawer-field input{width:100%;min-width:0;height:43px;color:var(--ink);font:inherit;background:#fcfefc;border:1px solid #ccdcd3;border-radius:8px;outline:0;padding:0 10px;font-size:14px;font-weight:650}.nutrition-target-drawer-field input:focus{border-color:var(--teal);background:#fff;box-shadow:0 0 0 3px #207e6b21}.nutrition-target-drawer-field input:disabled{color:#819087;background:#f1f4f1}.nutrition-target-drawer-error{color:#a52b1c;margin:11px 0 0;font-size:11px;font-weight:620;line-height:1.4}.manual-nutrition-target-range{border:0;gap:8px;margin:0 0 24px;padding:0;display:grid}.manual-nutrition-target-range>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.manual-nutrition-target-range label{color:var(--ink-soft);gap:6px;font-size:11px;font-weight:710;display:grid}.manual-nutrition-target-range input{width:100%;min-width:0;height:43px;color:var(--ink);font:inherit;background:#fcfefc;border:1px solid #ccdcd3;border-radius:8px;padding:0 10px;font-size:13px;font-weight:650}.manual-nutrition-target-range input:focus{border-color:var(--teal);background:#fff;outline:0;box-shadow:0 0 0 3px #207e6b21}.manual-nutrition-target-total{color:#69786f;grid-column:1/-1;margin:0;font-size:12px}.manual-nutrition-target-total strong{color:var(--ink)}.manual-nutrition-target-allocation{border-top:1px solid #e1e8e3;gap:12px;margin-top:26px;padding-top:22px;display:grid}.manual-nutrition-target-allocation-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.manual-nutrition-target-allocation h3{color:var(--ink);margin:0;font-size:14px}.manual-nutrition-target-allocation-heading p,.manual-nutrition-target-schedule-status,.manual-nutrition-target-allocation-total{color:#69786f;margin:4px 0 0;font-size:12px;line-height:1.45}.manual-nutrition-target-allocation-mode{border:1px solid #ccdcd3;border-radius:7px;flex:none;display:inline-flex;overflow:hidden}.manual-nutrition-target-allocation-mode button{color:#53625a;background:#fff;border:0;border-right:1px solid #ccdcd3;min-height:31px;padding:0 9px;font-size:11px;font-weight:720}.manual-nutrition-target-allocation-mode button:last-child{border-right:0}.manual-nutrition-target-allocation-mode button.is-active{color:#fff;background:var(--forest-deep)}.manual-nutrition-target-allocation-mode button:disabled{color:#9aa59e;background:#eef1ed}.manual-nutrition-target-meals{gap:8px;display:grid}.manual-nutrition-target-meal{background:#fbfdfb;border:1px solid #e0e7e2;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(100px,.42fr);align-items:end;gap:12px;padding:10px 12px;display:grid}.manual-nutrition-target-meal-title{gap:2px;min-width:0;display:grid}.manual-nutrition-target-meal-title strong{color:var(--ink);font-size:13px}.manual-nutrition-target-meal-title span{color:#748179;font-size:11px}.manual-nutrition-target-meal .nutrition-target-drawer-field{gap:4px}.manual-nutrition-target-meal .nutrition-target-drawer-field input{min-height:36px}.manual-nutrition-target-meal-macros{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.manual-nutrition-target-meal-macros .nutrition-target-drawer-field span{font-size:10px}@media (max-width:520px){.manual-nutrition-target-allocation-heading,.manual-nutrition-target-meal{grid-template-columns:1fr;align-items:stretch}.manual-nutrition-target-allocation-heading{display:grid}}.manual-nutrition-target-footer{justify-content:flex-end}.nutrition-target-calculations{border-top:1px solid #e9e4d9;margin-top:26px;padding-top:20px}.nutrition-target-calculations-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.nutrition-target-calculations-kicker{color:#8a5a00;letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:10px;font-weight:760;display:block}.nutrition-target-calculations h3{color:var(--ink);letter-spacing:-.015em;margin:0;font-size:15px;font-weight:740}.nutrition-target-calculations-status{color:#547062;background:#eef5f0;border-radius:999px;flex:none;margin-top:1px;padding:4px 7px;font-size:9px;font-weight:700;line-height:1.2}.nutrition-target-calculations-grid{background:#fff;border:1px solid #dfe7e1;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin:13px 0 0;display:grid;overflow:hidden}.nutrition-target-calculation-metric{min-width:0;padding:12px 13px 11px}.nutrition-target-calculation-metric:nth-child(odd){border-right:1px solid #e6ece8}.nutrition-target-calculation-metric:nth-child(n+3){border-top:1px solid #e6ece8}.nutrition-target-calculation-metric dt{color:#66756d;font-size:10px;font-weight:720;line-height:1.25}.nutrition-target-calculation-metric dd{color:#1d3328;letter-spacing:-.035em;text-overflow:ellipsis;white-space:nowrap;margin:6px 0 0;font-size:17px;font-weight:750;line-height:1.1;overflow:hidden}.nutrition-target-calculation-metric dd.is-unavailable,.nutrition-target-calculation-details dd.is-unavailable{color:#87948d;letter-spacing:0;font-size:11px;font-weight:620}.nutrition-target-calculation-metric p{color:#829087;min-height:15px;margin:5px 0 0;font-size:9px;font-weight:560;line-height:1.35}.nutrition-target-calculations-unavailable{color:#718078;background:#f7f9f7;border:1px solid #e1e7e3;border-radius:8px;margin:13px 0 0;padding:10px 12px;font-size:11px;font-weight:580;line-height:1.45}.nutrition-target-calculation-details{background:#fcfdfc;border:1px solid #e1e7e3;border-radius:8px;margin-top:12px}.nutrition-target-calculation-details summary{cursor:pointer;color:#52645b;justify-content:space-between;align-items:center;min-height:38px;padding:0 12px;font-size:11px;font-weight:700;list-style:none;display:flex}.nutrition-target-calculation-details summary::-webkit-details-marker{display:none}.nutrition-target-calculation-details summary:after{content:"+";color:#819087;font-size:16px;font-weight:500}.nutrition-target-calculation-details[open] summary{border-bottom:1px solid #e6ece8}.nutrition-target-calculation-details[open] summary:after{content:"−"}.nutrition-target-calculation-details summary:focus-visible{outline:2px solid var(--teal);outline-offset:-2px}.nutrition-target-calculation-details>dl{background:#edf0ee;border-radius:0 0 7px 7px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;display:grid;overflow:hidden}.nutrition-target-calculation-details>dl>div{background:#fcfdfc;min-width:0;padding:10px 12px}.nutrition-target-calculation-details dt{color:#7a8880;font-size:9px;font-weight:670;line-height:1.25}.nutrition-target-calculation-details dd{color:#34473c;text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:10px;font-weight:650;line-height:1.35;overflow:hidden}.nutrition-target-drawer-footer{padding:16px 28px calc(16px + env(safe-area-inset-bottom));background:#fffdf8fa;border-top:1px solid #e9e4d9;justify-content:space-between;align-items:center;gap:12px;display:flex}.nutrition-target-drawer-footer>div{align-items:center;gap:8px;display:flex}.nutrition-target-drawer-footer button{color:#52645b;background:#fff;border:1px solid #ccdcd3;border-radius:7px;min-height:38px;padding:0 12px;font-size:12px;font-weight:720}.nutrition-target-drawer-footer button:hover:not(:disabled){color:#17634f;background:#f4fbf7;border-color:#9ab8aa}.nutrition-target-drawer-footer button:disabled{opacity:.52}.nutrition-target-drawer-footer .nutrition-target-drawer-reset{color:#66756d;background:0 0;border-color:#0000;padding-inline:0}.nutrition-target-drawer-footer .nutrition-target-drawer-save{border-color:var(--teal);color:#fff;background:var(--teal)}.nutrition-target-drawer-footer .nutrition-target-drawer-save:hover:not(:disabled){color:#fff;background:#17634f;border-color:#17634f}.nutrition-target-discard-dialog{color:#26312b;background:#fff;border:0;border-radius:14px;width:min(100vw - 32px,390px);max-width:none;margin:auto;padding:0;overflow:hidden;box-shadow:0 24px 68px #0d14103d}.nutrition-target-discard-dialog::backdrop{background:#0b0c0e75}.nutrition-target-discard-content{padding:24px}.nutrition-target-discard-content h2{color:#202724;letter-spacing:-.03em;margin:0;font-size:18px;font-weight:760}.nutrition-target-discard-content p{color:#6e7974;margin:9px 0 0;font-size:12px;line-height:1.5}.nutrition-target-discard-actions{justify-content:flex-end;gap:8px;margin-top:22px;display:flex}.nutrition-target-discard-actions button{color:#46524c;background:#eef1f0;border:0;border-radius:7px;min-height:36px;padding:0 12px;font-size:12px;font-weight:720}.nutrition-target-discard-actions button:hover{color:#26312b;background:#e3e8e5}.nutrition-target-discard-actions .nutrition-target-discard-confirm{color:#a03f31;background:#fff0ed}.nutrition-target-discard-actions .nutrition-target-discard-confirm:hover{color:#8d3326;background:#ffe4de}.nutrition-target-discard-actions button:focus-visible{outline-offset:2px;outline:2px solid #1f6f60}.nutrition-target-copy-day-dialog{width:min(100vw - 32px,720px);max-width:none;max-height:min(720px,100dvh - 32px);color:var(--ink);opacity:0;background:#fffdf8;border:1px solid #dce9e2;border-radius:16px;margin:auto;padding:0;transition:opacity .18s,transform .18s;overflow:hidden;transform:translateY(10px)scale(.985);box-shadow:0 24px 70px #1431233d}.nutrition-target-copy-day-dialog[data-visible=true]{opacity:1;transform:translateY(0)scale(1)}.nutrition-target-copy-day-dialog::backdrop{opacity:0;background:#12281c52;transition:opacity .18s}.nutrition-target-copy-day-dialog[data-visible=true]::backdrop{opacity:1}.nutrition-target-copy-day-content{grid-template-rows:auto minmax(0,1fr) auto;min-height:min(680px,100dvh - 32px);display:grid}.nutrition-target-copy-day-header{border-bottom:1px solid #e9e4d9;justify-content:space-between;align-items:flex-start;gap:16px;padding:25px 28px 19px;display:flex}.nutrition-target-copy-day-header .section-kicker{color:#8a5a00;margin-bottom:5px}.nutrition-target-copy-day-header h2{color:var(--ink);letter-spacing:-.04em;margin:0;font-size:23px;font-weight:760}.nutrition-target-copy-day-header p{color:#66756d;max-width:490px;margin:8px 0 0;font-size:12px;font-weight:560;line-height:1.45}.nutrition-target-copy-day-close{color:#52645b;background:#fff;border:1px solid #d6dfd9;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;padding:0;font-size:24px;font-weight:380;line-height:1;display:grid}.nutrition-target-copy-day-close:hover:not(:disabled){color:#17634f;background:#f4fbf7;border-color:#9ab8aa}.nutrition-target-copy-day-close:disabled{opacity:.55}.nutrition-target-copy-day-body{min-height:0;padding:22px 28px 26px;overflow-y:auto}.nutrition-target-copy-day-mode{background:#edf3ef;border:1px solid #cfddd5;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,320px);padding:3px;display:grid}.nutrition-target-copy-day-mode button{color:#6b7c72;min-height:34px;font:inherit;background:0 0;border:0;border-radius:7px;padding:4px 12px;font-size:12px;font-weight:760;transition:color .15s,background .15s,box-shadow .15s}.nutrition-target-copy-day-mode button.is-active{color:#17634f;background:#fff;box-shadow:0 1px 3px #1c422f29}.nutrition-target-copy-day-mode button:hover:not(:disabled){color:#17634f}.nutrition-target-copy-day-mode button:focus-visible{outline:2px solid var(--teal);outline-offset:-1px}.nutrition-target-copy-day-mode button:disabled{opacity:.55}.nutrition-target-copy-day-help,.nutrition-target-copy-day-empty{color:#69786f;margin:12px 0 0;font-size:11px;font-weight:560;line-height:1.45}.nutrition-target-copy-day-empty{background:#f7faf7;border:1px dashed #cbd8d0;border-radius:10px;margin:0;padding:14px}.nutrition-target-copy-day-grid{grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:8px;margin-top:18px;display:grid}.nutrition-target-copy-day-cell{color:#33463b;text-align:left;background:#fff;border:1px solid #cbd8d0;border-radius:10px;align-content:center;justify-items:start;gap:5px;min-height:74px;padding:10px 11px;transition:border-color .15s,background .15s,box-shadow .15s;display:grid}.nutrition-target-copy-day-cell time{color:var(--ink);font-size:13px;font-weight:760}.nutrition-target-copy-day-cell small{color:#6a7a71;font-size:9px;font-weight:650;line-height:1.25}.nutrition-target-copy-day-cell:hover:not(:disabled){background:#f4fbf7;border-color:#7aa995}.nutrition-target-copy-day-cell:focus-visible{outline-offset:1px;outline:3px solid #207e6b3d}.nutrition-target-copy-day-cell-source{background:#e8f7ed;border-color:#58a47b;box-shadow:inset 0 0 0 1px #2881551a}.nutrition-target-copy-day-cell-source small{color:#17634f}.nutrition-target-copy-day-cell-target{background:#ebf4ff;border-color:#6b9ed8;box-shadow:inset 0 0 0 1px #3171b51a}.nutrition-target-copy-day-cell-target small{color:#246aa8}.nutrition-target-copy-day-cell-unavailable{color:#86928b;background:#f4f6f4}.nutrition-target-copy-day-cell-unavailable time,.nutrition-target-copy-day-cell-unavailable small{color:#849087}.nutrition-target-copy-day-cell:disabled{cursor:not-allowed;opacity:.7}.nutrition-target-copy-day-error{color:#a52b1c;margin:14px 0 0;font-size:11px;font-weight:620;line-height:1.4}.nutrition-target-copy-day-footer{padding:15px 28px calc(15px + env(safe-area-inset-bottom));color:#66756d;background:#fffdf8fa;border-top:1px solid #e9e4d9;justify-content:space-between;align-items:center;gap:12px;font-size:11px;font-weight:620;display:flex}.nutrition-target-copy-day-footer>div{flex:none;align-items:center;gap:8px;display:flex}.nutrition-target-copy-day-footer button{color:#52645b;background:#fff;border:1px solid #ccdcd3;border-radius:7px;min-height:38px;padding:0 12px;font-size:12px;font-weight:720}.nutrition-target-copy-day-footer button:hover:not(:disabled){color:#17634f;background:#f4fbf7;border-color:#9ab8aa}.nutrition-target-copy-day-footer button:disabled{opacity:.52}.nutrition-target-copy-day-footer .nutrition-target-copy-day-confirm{border-color:var(--teal);color:#fff;background:var(--teal)}.nutrition-target-copy-day-footer .nutrition-target-copy-day-confirm:hover:not(:disabled){color:#fff;background:#17634f;border-color:#17634f}@media (max-width:560px){.nutrition-target-drawer{width:100vw}.nutrition-target-drawer-header,.nutrition-target-drawer-body,.nutrition-target-drawer-footer{padding-left:20px;padding-right:20px}.nutrition-target-copy-day-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.nutrition-target-copy-day-content{min-height:calc(100dvh - 20px)}.nutrition-target-copy-day-header,.nutrition-target-copy-day-body{padding-left:20px;padding-right:20px}.nutrition-target-copy-day-footer{flex-direction:column;align-items:flex-start;padding-left:20px;padding-right:20px}.nutrition-target-copy-day-footer>div{width:100%}.nutrition-target-copy-day-footer button{flex:1 1 0}}@media (max-width:400px){.nutrition-target-drawer-fields{gap:10px}.nutrition-target-drawer-field input{padding-left:8px;padding-right:8px;font-size:13px}}.calendar-target-rest-note{color:#596a60;background:#f2f6f3;border-radius:7px;margin:0;padding:7px 8px;font-size:9px;line-height:1.4}.calendar-target-message{grid-column:2/-1;justify-content:space-between;align-items:center;gap:10px;min-height:66px;padding:10px 12px;font-size:11px;line-height:1.4;display:flex}.calendar-target-message-loading{color:#17634f;background:#edf8f2}.calendar-target-message-loading>span:first-child{align-items:center;gap:8px;display:inline-flex}.calendar-target-message-loading .button-spinner{width:14px;height:14px}.calendar-target-message-error{color:#994131;background:#fff3ef;border-left:1px solid #f4cfc7}.calendar-target-message button{color:inherit;background:#ffffffc7;border:1px solid #efb7aa;border-radius:7px;flex:none;padding:5px 7px;font-size:10px;font-weight:730}.calendar-target-message button:hover:not(:disabled){background:#fff}.calendar-target-message button:disabled{opacity:.58}.calendar-day-summaries{z-index:4;border-bottom:1px solid var(--line);background:#fcfdfbfa;min-height:136px;position:sticky;top:58px;box-shadow:0 4px 10px #192d2208}.calendar-summary-label{border-right:1px solid var(--line);grid-template-rows:repeat(3,minmax(0,1fr));gap:2px;padding:4px 8px;display:grid}.calendar-summary-label>span{letter-spacing:.055em;text-align:right;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;justify-content:flex-end;align-items:center;font-size:8px;font-weight:800;line-height:1;display:flex;overflow:hidden}.calendar-summary-label-target{color:#64748b}.calendar-summary-label-generated{color:#0e9a67}.calendar-summary-label-reported{color:#5b5eea}.calendar-day-summary{border-right:1px solid var(--line);background:#ffffff8f;min-width:0;padding:4px;display:block}.calendar-day-summary:last-child{border-right:0}.calendar-day-summary-today{background:#15d28f14}.calendar-summary-layers{grid-template-rows:repeat(3,minmax(0,1fr));gap:2px;height:100%;display:grid}.calendar-summary-layer{--summary-layer-accent:#64748b;border:0;border-left:2px solid var(--summary-layer-accent);background:0 0;grid-template-rows:auto auto;align-content:center;gap:2px;min-width:0;padding:4px 6px;display:grid}.calendar-summary-layer-target{--summary-layer-accent:#64748b}.calendar-summary-layer-generated{--summary-layer-accent:#0e9a67}.calendar-summary-layer-reported{--summary-layer-accent:#5b5eea}.calendar-summary-layer-unavailable{opacity:.62;border-left-style:dashed;grid-template-rows:auto}.calendar-summary-kcal{min-width:0;color:var(--metric-kcal);align-items:baseline;gap:3px;display:flex}.calendar-summary-kcal>strong{color:var(--metric-kcal);font-variant-numeric:tabular-nums;letter-spacing:-.045em;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;font-weight:800;line-height:1;overflow:hidden}.calendar-summary-kcal-burn{width:12px;height:12px;color:var(--metric-kcal);flex:0 0 12px;place-items:center;display:grid}.calendar-summary-kcal-burn svg{width:12px;height:12px}.calendar-summary-kcal-unit{color:var(--metric-kcal);white-space:nowrap;font-size:8px;font-weight:740}.calendar-summary-percentage{border:1px solid var(--line);font-variant-numeric:tabular-nums;background:#ffffffbd;border-radius:999px;margin-left:auto;padding:2px 4px;line-height:1;color:var(--ink-soft)!important;font-size:8px!important;font-weight:780!important}.calendar-summary-macros{min-width:0;color:var(--ink-faint);font-variant-numeric:tabular-nums;letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;align-items:baseline;gap:4px;margin:0;font-size:8px;font-weight:650;line-height:1;display:flex;overflow:hidden}.calendar-summary-macros>span{flex:none}.calendar-summary-macro{font-weight:740}.calendar-summary-macro-protein{color:var(--metric-protein)}.calendar-summary-macro-carbs{color:var(--metric-carbs)}.calendar-summary-macro-fat{color:var(--metric-fat)}.calendar-summary-count{text-overflow:ellipsis;margin-left:auto;overflow:hidden}.calendar-summary-unavailable-line{color:var(--ink-faint);align-self:center;font-size:14px;font-weight:700;line-height:1}.calendar-all-day-row{border-bottom:1px solid var(--line);background:#fff;min-height:52px}.calendar-all-day-label{border-right:1px solid var(--line);color:var(--ink-faint);text-align:right;text-transform:uppercase;padding:11px 8px;font-size:9px;font-weight:730;line-height:1.25}.calendar-all-day-cell{border-right:1px solid var(--line);align-content:start;gap:4px;min-width:0;padding:5px;display:grid}.calendar-all-day-cell:last-child{border-right:0}.calendar-generated-day{--generated-day-accent:#15d28f;--generated-day-border:#79e7bc;--generated-day-icon-surface:#15d28f24;--generated-day-surface:#e9fcf4;border:1px solid var(--generated-day-border);color:#107856;background:var(--generated-day-surface);border-radius:9px;align-items:center;gap:5px;min-width:0;min-height:30px;padding:4px 6px;font-size:9px;font-weight:750;line-height:1.2;display:flex}.calendar-generated-day-workout{--generated-day-accent:#38bdf8;--generated-day-border:#8bdbfb;--generated-day-icon-surface:#38bdf826;--generated-day-surface:#eaf8ff;color:#16729c}.calendar-generated-day-mindfulness{--generated-day-accent:#9061f9;--generated-day-border:#c5adff;--generated-day-icon-surface:#9061f924;--generated-day-surface:#f3eeff;color:#6844a5}.calendar-generated-day-rest,.calendar-generated-day-review{border-style:dashed}.calendar-generated-day-rest{opacity:.88}.calendar-generated-day-icon{width:19px;height:19px;color:var(--generated-day-accent);background:var(--generated-day-icon-surface);border-radius:6px;flex:0 0 19px;place-items:center;display:grid}.calendar-generated-day-icon svg{width:13px;height:13px}.calendar-generated-day-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.calendar-generated-day-status{color:#945a00;background:#fff2d5;border:1px solid #f2c46c;border-radius:999px;flex:none;padding:2px 4px;font-size:8px;font-weight:760;line-height:1}.calendar-generated-day-approve{color:#fff;cursor:pointer;font:inherit;background:#1f6d4d;border:0;border-radius:5px;flex:none;padding:3px 5px;font-size:8px;font-weight:800;line-height:1.1}.calendar-generated-day-approve:disabled{cursor:progress;opacity:.65}.calendar-food-day-marker{color:#16805a;background:0 0;border:0;justify-content:flex-start;align-items:center;gap:5px;min-height:28px;padding:0;display:flex}.calendar-food-day-marker-icon{background:#fff;border:1px solid;border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.calendar-food-day-marker-icon svg{width:13px;height:13px}.calendar-food-day-marker-published{color:#fff;background:0 0}.calendar-food-day-marker-published .calendar-food-day-marker-icon{background:#1f8b63;border-color:#1f8b63}.calendar-grid-body{height:1536px;min-height:1536px}.calendar-time-rail{border-right:1px solid var(--line);background:#fcfdfb}.calendar-hour-label{height:64px;color:var(--ink-faint);text-align:right;padding:0 8px 0 0;font-size:9px;font-weight:600;line-height:1;transform:translateY(-5px)}.calendar-day-column{border-right:1px solid var(--line);min-width:0;position:relative}.calendar-day-column:last-child{border-right:0}.calendar-hour-lines{pointer-events:none;grid-template-rows:repeat(24,64px);display:grid;position:absolute;inset:0}.calendar-hour-line{border-top:1px solid #e8ece6}.calendar-hour-line:first-child{border-top:0}.calendar-positioned-event{z-index:2;min-width:0;position:absolute}.calendar-routine-unavailable{z-index:1;pointer-events:none;background:repeating-linear-gradient(-45deg,#97a0a62e 0 6px,#97a0a61a 6px 12px);position:absolute;left:0;right:0}.calendar-routine-unavailable-before-wake{border-bottom:1px solid #8993996b;top:0}.calendar-routine-unavailable-after-bed{border-top:1px solid #8993996b;bottom:0}.calendar-routine-boundary{z-index:3;pointer-events:none;background:#fff;border:1px solid;border-radius:50%;place-items:center;width:32px;height:32px;display:grid;position:absolute;left:7px;transform:translateY(-50%);box-shadow:0 2px 5px #1e2a301f}.calendar-routine-boundary svg{width:20px;height:20px}.calendar-routine-boundary-wake{color:#f28b18;background:#fff7e8}.calendar-routine-boundary-bed{color:#7c4dca;background:#f5efff}.calendar-event{--event-accent:#15d28f;--event-border:#79e7bc;--event-icon-surface:#15d28f24;--event-surface:#e9fcf4;border:1px solid var(--event-border);color:#107856;background:var(--event-surface);border-radius:14px;align-items:flex-start;gap:7px;width:100%;height:100%;min-height:0;padding:7px;font-size:10px;line-height:1.25;display:flex;overflow:hidden;box-shadow:0 1px 1px #192d220d}button.calendar-event{appearance:none;cursor:pointer;font:inherit;text-align:left;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s}button.calendar-event:hover{border-color:color-mix(in srgb, var(--event-accent) 62%, #fff);box-shadow:0 3px 8px color-mix(in srgb, var(--event-accent) 18%, transparent)}button.calendar-event:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.calendar-event-food{--event-accent:#15d28f;--event-border:#79e7bc;--event-icon-surface:#15d28f24;--event-surface:#e9fcf4;color:#107856}.calendar-schedule-tile{--schedule-tile-accent:#1f8b63;--schedule-tile-border:#79e7bc;--schedule-tile-icon-surface:#15d28f24;border:1px solid var(--schedule-tile-border);width:100%;height:100%;min-height:0;color:var(--schedule-tile-accent);font:inherit;text-align:left;background:#fff;border-radius:14px;align-items:flex-start;gap:7px;padding:7px;font-size:10px;line-height:1.25;display:flex;overflow:hidden;box-shadow:0 1px 1px #192d220d}.calendar-schedule-tile-food{--schedule-tile-accent:#107856;--schedule-tile-border:#79e7bc;--schedule-tile-icon-surface:#15d28f24}.calendar-schedule-tile-workout{--schedule-tile-accent:#16729c;--schedule-tile-border:#8bdbfb;--schedule-tile-icon-surface:#38bdf826}button.calendar-schedule-tile{appearance:none;cursor:pointer}button.calendar-schedule-tile:hover{border-color:var(--schedule-tile-accent);box-shadow:0 3px 8px color-mix(in srgb, var(--schedule-tile-accent) 18%, transparent)}button.calendar-schedule-tile:focus-visible{outline:2px solid var(--schedule-tile-accent);outline-offset:2px}.calendar-schedule-tile-planned{border-style:dashed}.calendar-schedule-tile-review{background:#fff}.calendar-schedule-tile-published{color:#fff;border-color:var(--schedule-tile-accent);background:var(--schedule-tile-accent)}.calendar-schedule-tile-icon{color:currentColor;background:var(--schedule-tile-icon-surface);border-radius:7px;flex:0 0 21px;place-items:center;width:21px;height:21px;display:grid}.calendar-schedule-tile-published .calendar-schedule-tile-icon{background:#ffffff2e}.calendar-schedule-tile-icon svg{width:13px;height:13px}.calendar-schedule-tile-copy{flex:auto;gap:1px;min-width:0;display:grid}.calendar-schedule-tile-title,.calendar-schedule-tile-meta{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-schedule-tile-title{font-weight:800}.calendar-schedule-tile-meta{opacity:.78;font-size:9px}.calendar-schedule-tile-status{border:1px solid;border-radius:999px;flex:none;align-self:flex-start;padding:2px 4px;font-size:8px;font-weight:760;line-height:1}.calendar-schedule-tile-review .calendar-schedule-tile-status{color:#fff;background:var(--schedule-tile-accent);border-color:#fff}.calendar-schedule-tile-compact{min-height:30px;padding:4px 6px}.calendar-schedule-tile-compact .calendar-schedule-tile-icon,.calendar-schedule-tile-compact .calendar-schedule-tile-status{display:none}.food-schedule-meal-details,.workout-schedule-details{gap:.85rem;margin:0;display:grid}.food-schedule-meal-details div,.workout-schedule-details div{border-bottom:1px solid var(--line,#d8d8d8);gap:.2rem;padding-bottom:.85rem;display:grid}.food-schedule-meal-details dt,.workout-schedule-details dt{color:var(--ink-faint);text-transform:uppercase;font-size:.78rem;font-weight:750}.food-schedule-meal-details dd,.workout-schedule-details dd{margin:0;font-weight:650}.food-recipe-selector{gap:.7rem;margin-top:1.15rem;display:grid}.food-recipe-selector h3,.food-recipe-selector p{margin:0}.food-recipe-selector h3{font-size:.95rem}.food-recipe-selector p{color:var(--ink-soft);font-size:.82rem}.food-recipe-selector-launcher{border:1px solid var(--teal);color:#fff;background:var(--teal);border-radius:.6rem;width:fit-content;min-height:2.35rem;padding:.45rem .85rem;font-size:.82rem;font-weight:760}.food-recipe-selector-launcher:hover{filter:brightness(.94)}.food-schedule-meal-footer{align-items:flex-start}.food-schedule-meal-footer>div{gap:.35rem;display:grid}.food-schedule-meal-footer p{max-width:18rem;color:var(--ink-soft);margin:0;font-size:.76rem;line-height:1.45}.food-schedule-meal-footer .food-schedule-meal-action-error{color:#a52b1c;font-weight:680}.food-schedule-meal-remove{color:#fff;background:#ad3f35;border:1px solid #b8473c;border-radius:.6rem;flex:none;min-height:2.35rem;padding:.45rem .8rem;font-size:.78rem;font-weight:760}.food-schedule-meal-remove:hover:not(:disabled){background:#922f29}.food-schedule-meal-remove:disabled{cursor:wait;opacity:.62}.popup-drawer.food-recipe-picker-dialog{color:#27352d;opacity:0;background:#fff;border:1px solid #dce4de;border-radius:1rem;width:min(100vw - 2rem,64rem);max-width:none;height:min(82dvh,46rem);margin:auto;padding:0;transition:opacity .18s,transform .18s;position:fixed;inset:0;overflow:hidden;transform:translateY(.65rem)scale(.985);box-shadow:0 1.5rem 4.4rem #1431233d}.popup-drawer.food-recipe-picker-dialog[data-visible=true]{opacity:1;transform:translateY(0)scale(1)}.popup-drawer.food-recipe-picker-dialog::backdrop{opacity:0;background:#12281c61;transition:opacity .18s}.popup-drawer.food-recipe-picker-dialog[data-visible=true]::backdrop{opacity:1}.food-recipe-picker-content{grid-template-rows:auto minmax(0,1fr) auto;height:100%;display:grid}.food-recipe-picker-header{border-bottom:1px solid #e4e9e5;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.35rem 1.5rem 1.05rem;display:flex}.food-recipe-picker-header h2{color:#263129;letter-spacing:-.035em;margin:.12rem 0 0;font-size:1.3rem}.food-recipe-picker-header p{color:#728078;max-width:35rem;margin:.35rem 0 0;font-size:.78rem;line-height:1.5}.food-recipe-picker-header>button{color:#52645b;background:#fff;border:1px solid #d6dfd9;border-radius:50%;flex:none;place-items:center;width:2rem;height:2rem;padding:0;font-size:1.3rem;line-height:1;display:grid}.food-recipe-picker-header>button:hover{color:#17634f;background:#f4fbf7;border-color:#9ab8aa}.food-recipe-picker-body{grid-template-columns:minmax(23rem,.92fr) minmax(0,1.08fr);min-height:0;padding:0;display:grid}.food-recipe-picker-list-pane{background:#fbfcfb;border-right:1px solid #e4e9e5;flex-direction:column;gap:.8rem;min-height:0;padding:1rem;display:flex;overflow:hidden}.food-recipe-picker-search{color:#637068;letter-spacing:.045em;text-transform:uppercase;gap:.3rem;font-size:.65rem;font-weight:750;display:grid}.food-recipe-picker-search input{color:#2d3931;background:#fff;border:1px solid #d9e0da;border-radius:.55rem;outline:0;width:100%;min-height:2.35rem;padding:0 .7rem;font-size:.78rem}.food-recipe-picker-search input:focus{border-color:#71a991;box-shadow:0 0 0 3px #498f7021}.food-recipe-picker-filters{gap:.55rem;display:grid}.food-recipe-picker-filter-tabs{flex-wrap:wrap;gap:.35rem;display:flex}.food-recipe-picker-filter-tabs button{color:#65736a;background:#fff;border:1px solid #dce3de;border-radius:999px;min-height:1.75rem;padding:0 .62rem;font-size:.65rem;font-weight:730}.food-recipe-picker-filter-tabs button:hover,.food-recipe-picker-filter-tabs button.is-selected{color:#34745e;background:#edf8f1;border-color:#a5c8b7}.food-recipe-picker-filter-group{background:#fff;border:1px solid #e0e7e2;border-radius:.6rem;gap:.42rem;padding:.65rem;display:grid}.food-recipe-picker-filter-group h4{color:#68766e;letter-spacing:.035em;text-transform:uppercase;margin:0;font-size:.61rem;font-weight:780;line-height:1.2}.food-recipe-picker-filter-group>div{flex-wrap:wrap;gap:.35rem;display:flex}.food-recipe-picker-filter-group label{color:#65736a;cursor:pointer;background:#fff;border:1px solid #dce3de;border-radius:999px;align-items:center;gap:.35rem;min-height:1.75rem;padding:0 .58rem 0 .5rem;font-size:.65rem;font-weight:730;display:inline-flex}.food-recipe-picker-filter-group input{accent-color:#3d896d;width:.75rem;height:.75rem;margin:0}.food-recipe-picker-filter-group label:hover,.food-recipe-picker-filter-group label.is-selected{color:#34745e;background:#edf8f1;border-color:#a5c8b7}.food-recipe-picker-results{flex:9rem;gap:.45rem;min-height:0;padding-right:.15rem;display:grid;overflow-y:auto}.food-recipe-picker-results>p,.food-recipe-picker-empty{color:#77847c;margin:.45rem 0;font-size:.75rem;line-height:1.45}.food-recipe-picker-results>p[role=alert]{color:#9c5145;background:#fff6f3;border:1px solid #f0cfc8;border-radius:.5rem;padding:.65rem}.food-recipe-picker-results>button{color:#344038;text-align:left;background:#fff;border:1px solid #e1e7e2;border-radius:.65rem;gap:.2rem;min-width:0;padding:.68rem;display:grid}.food-recipe-picker-results>button:hover,.food-recipe-picker-results>button.is-selected{background:#f1f9f4;border-color:#a5c8b7}.food-recipe-picker-results strong,.food-recipe-picker-results small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.food-recipe-picker-results strong{font-size:.76rem}.food-recipe-picker-results span,.food-recipe-picker-results small{color:#7d8981;font-size:.65rem}.food-recipe-picker-preview{min-height:0;padding:1.35rem 1.5rem;overflow-y:auto}.food-recipe-picker-preview-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.food-recipe-picker-preview-heading h3{color:#263129;letter-spacing:-.025em;margin:.12rem 0 0;font-size:1.1rem}.food-recipe-picker-preview-heading p{color:#6e7c73;margin:.4rem 0 0;font-size:.78rem;line-height:1.5}.food-recipe-picker-preview-heading>span{color:#3d7763;flex:none;font-size:.7rem;font-weight:730}.food-recipe-picker-meta{color:#718077;flex-wrap:wrap;gap:.4rem .8rem;margin-top:1rem;font-size:.7rem;display:flex}.food-recipe-picker-preview-section{margin-top:1.3rem}.food-recipe-picker-preview-section h4{color:#526158;letter-spacing:.045em;text-transform:uppercase;margin:0 0 .55rem;font-size:.68rem;font-weight:780}.food-recipe-picker-roles{gap:.45rem;display:grid}.food-recipe-picker-roles article{background:#fcfdfc;border:1px solid #e3e9e4;border-radius:.55rem;padding:.65rem .7rem}.food-recipe-picker-roles strong{color:#425149;font-size:.72rem}.food-recipe-picker-roles p{color:#718077;margin:.22rem 0 0;font-size:.73rem;line-height:1.45}.food-recipe-picker-steps{color:#55645b;gap:.5rem;margin:0;padding-left:1.25rem;font-size:.76rem;line-height:1.5;display:grid}.food-recipe-picker-footer{padding:.85rem 1.5rem calc(.85rem + env(safe-area-inset-bottom));background:#fcfdfc;border-top:1px solid #e4e9e5;justify-content:space-between;align-items:center;gap:1rem;display:flex}.food-recipe-picker-footer-copy{gap:.35rem;display:grid}.food-recipe-picker-footer-copy>p{color:#75827a;max-width:28rem;margin:0;font-size:.7rem;line-height:1.45}.food-recipe-picker-footer-copy>.food-recipe-picker-submit-error{color:#a52b1c;font-weight:700}.food-recipe-picker-footer>div{flex:none;gap:.45rem;display:flex}.food-recipe-picker-footer button{color:#52645b;background:#fff;border:1px solid #d6dfd9;border-radius:.5rem;min-height:2.2rem;padding:0 .75rem;font-size:.75rem;font-weight:740}.food-recipe-picker-footer button:last-child{border-color:var(--teal);color:#fff;background:var(--teal)}.food-recipe-picker-footer button:hover:not(:disabled){filter:brightness(.96)}.food-recipe-picker-footer button:disabled{cursor:wait;opacity:.55}@media (max-width:700px){.popup-drawer.food-recipe-picker-dialog{width:min(100vw - 1rem,64rem);height:min(92dvh,46rem)}.food-recipe-picker-body{grid-template-rows:minmax(14rem,.72fr) minmax(0,1.28fr);grid-template-columns:1fr}.food-recipe-picker-list-pane{border-bottom:1px solid #e4e9e5;border-right:0}.food-recipe-picker-filters{gap:.45rem}.food-recipe-picker-footer{flex-direction:column;align-items:flex-end}.food-recipe-picker-footer-copy>p{max-width:none}}.calendar-event-workout{--event-accent:#38bdf8;--event-border:#8bdbfb;--event-icon-surface:#38bdf826;--event-surface:#eaf8ff;color:#16729c}.calendar-event-mindfulness{--event-accent:#9061f9;--event-border:#c5adff;--event-icon-surface:#9061f924;--event-surface:#f3eeff;color:#6844a5}.calendar-event-planned,.calendar-event-review,.calendar-event-generating,.calendar-event-pending_publication{border-style:dashed}.calendar-event-generating,.calendar-event-pending_publication{opacity:.78}.calendar-event-compact{border-radius:12px;min-height:44px;padding:5px}.calendar-event-icon{width:30px;height:30px;color:var(--event-accent);background:var(--event-icon-surface);border-radius:9px;flex:0 0 30px;place-items:center;display:grid}.calendar-event-icon svg{width:18px;height:18px}.calendar-event-copy{flex:auto;align-content:start;gap:2px;min-width:0;padding-top:1px;display:grid}.calendar-event-title,.calendar-event-meta{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-event-title{letter-spacing:-.01em;font-weight:780}.calendar-event-meal-slot{letter-spacing:.07em;text-transform:uppercase;font-size:8px}.calendar-event-meta{opacity:.82;font-size:9px;font-weight:590}.calendar-event-status{color:currentColor;text-overflow:ellipsis;white-space:nowrap;background:#ffffffb8;border:1px solid #192d221a;border-radius:999px;flex:none;max-width:70px;padding:3px 5px;font-size:8px;font-weight:760;line-height:1;overflow:hidden}.calendar-event-status-review{color:#945a00;background:#fff2d5;border-color:#f59e0b}.calendar-event-compact .calendar-event-icon{border-radius:8px;flex-basis:24px;width:24px;height:24px}.calendar-event-compact .calendar-event-icon svg{width:15px;height:15px}.calendar-event-compact .calendar-event-copy{padding-top:0}.calendar-event-compact .calendar-event-status{max-width:54px;padding:3px 4px}.calendar-no-events{z-index:3;color:var(--ink-soft);box-shadow:var(--shadow-sm);white-space:nowrap;background:#ffffffeb;border:1px solid #d9e4d6;border-radius:999px;padding:9px 12px;font-size:11px;position:absolute;top:258px;left:50%;transform:translate(-50%)}.planner-main{width:min(100%,1480px);padding:clamp(30px,4.6vw,68px) clamp(27px,4.6vw,72px) 70px}.planner-topline{align-items:center;margin-bottom:25px}.planner-topline h1{max-width:720px}.planner-client-bar,.planner-action-dock{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm)}.planner-client-bar{background:var(--surface);border-radius:21px;grid-template-columns:minmax(205px,.68fr) minmax(310px,1.08fr) minmax(275px,.84fr);align-items:center;gap:clamp(18px,2.6vw,34px);padding:clamp(19px,2.5vw,31px);display:grid}.planner-client-bar-copy h2,.planner-action-dock-copy h2{color:var(--ink);letter-spacing:-.05em;margin:0;font-size:clamp(20px,2vw,26px);font-weight:730;line-height:1.12}.planner-client-bar-copy p,.planner-action-dock-copy p,.planner-calendar-region-copy p{color:var(--ink-soft);margin:8px 0 0;font-size:12px;line-height:1.55}.planner-client-field{min-width:0}.planner-client-field .field-label{margin-bottom:8px}.planner-client-field .select-wrap select{background:#fff;border-radius:12px;height:58px;font-size:15px}.planner-client-field .select-wrap>svg{width:18px;height:18px;left:17px}.planner-client-field .select-wrap select{padding-left:47px}.planner-client-field .field-help{margin-top:7px}.planner-client-context{background:linear-gradient(145deg,#fcfffb,#f3f8f0);border:1px solid #d9e7d9;border-radius:15px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px 11px;min-width:0;padding:12px;display:grid}.planner-client-context .client-avatar{border-radius:14px;width:46px;height:46px}.planner-client-identity{gap:2px;min-width:0;display:grid}.planner-client-identity>span,.planner-client-identity small{color:var(--ink-faint);text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:650;line-height:1.25;overflow:hidden}.planner-client-identity strong{color:var(--ink);letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:760;line-height:1.22;overflow:hidden}.planner-availability-list{border-top:1px solid #deeadf;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding-top:9px;display:grid}.planner-availability-list .availability-row{background:0 0;gap:7px;min-width:0;padding:0}.planner-availability-list .availability-icon{border-radius:7px;width:24px;height:24px}.planner-availability-list .availability-icon svg{width:13px;height:13px}.planner-availability-list .availability-row small{font-size:9px}.planner-availability-list .availability-row strong{font-size:10px}.planner-client-empty{min-height:75px;color:var(--ink-soft);grid-column:1/-1;align-items:center;gap:10px;font-size:12px;line-height:1.45;display:flex}.planner-client-empty .empty-icon{border-radius:11px;width:36px;height:36px;margin:0}.planner-client-empty .empty-icon svg{width:18px;height:18px}.planner-action-dock{border-radius:21px;grid-template-columns:minmax(205px,.56fr) minmax(0,1.44fr);align-items:stretch;gap:clamp(22px,3vw,42px);margin-top:16px;padding:clamp(19px,2.5vw,30px);display:grid}.planner-action-dock-copy{border-right:1px solid var(--line);padding:4px clamp(18px,2.5vw,34px) 4px 0}.planner-actions-form{min-width:0}.planner-actions-main{grid-template-columns:minmax(245px,.9fr) minmax(320px,1.1fr);align-items:end;gap:clamp(16px,2vw,26px);display:grid}.planner-date-fieldset{min-width:0;margin:0}.planner-date-fieldset .field-label{margin-bottom:8px}.planner-date-fieldset .date-grid{gap:9px;margin-top:11px}.planner-date-fieldset .date-input-wrap input{height:46px}.planner-date-fieldset .range-summary{margin-top:10px}.planner-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-self:stretch;gap:10px;margin:0}.planner-action-grid .generate-button{min-height:112px;padding:14px}.planner-actions-form .form-feedback{margin-top:14px}.planner-actions-form .actions-help{margin-top:10px}.planner-calendar-region{margin-top:clamp(30px,4vw,46px)}.planner-calendar-region-copy{justify-content:space-between;align-items:baseline;gap:18px;padding:0 2px;display:flex}.planner-calendar-region-copy .section-kicker{flex:none;margin:0}.planner-calendar-region-copy p{text-align:right;margin:0}.planner-calendar-region .generated-calendar{background:var(--surface);border-radius:21px;margin-top:12px;padding:0;overflow:hidden}.planner-calendar-region .generated-calendar-toolbar{background:#f8fbf8;align-items:center;padding:clamp(20px,2.8vw,30px) clamp(20px,2.8vw,32px) 18px}.planner-calendar-region .calendar-legend{border-bottom:1px solid var(--line);gap:16px;margin:0;padding:0 clamp(20px,2.8vw,32px) 17px}.planner-calendar-region .calendar-legend-item{font-size:10px}.planner-calendar-region .calendar-inline-error{margin:17px clamp(18px,2vw,22px) 0}.planner-calendar-region .calendar-scroll{background:#fff;border-radius:14px;max-height:min(74vh,780px);margin:18px clamp(18px,2vw,22px) clamp(18px,2vw,22px)}.planner-calendar-region .calendar-day-headings{background:#fffffff7}.planner-calendar-region .generated-calendar-empty{background:#fbfdf9;min-height:205px;padding:clamp(24px,3.5vw,42px)}@keyframes spinner{to{transform:rotate(360deg)}}@media (max-width:1120px){.planner-layout{grid-template-columns:minmax(0,1fr) 280px}.action-grid{grid-template-columns:1fr}}@media (max-width:900px){.app-shell{grid-template-columns:1fr}.app-sidebar{display:none}.app-header{justify-content:space-between;min-height:72px}.mobile-brand{color:var(--ink);letter-spacing:-.07em;align-items:center;gap:9px;font-size:19px;font-weight:780;display:inline-flex}.mobile-brand>span:last-child>span{color:var(--teal)}.planner-layout{grid-template-columns:minmax(0,1fr)}.planner-aside{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.hint-card{align-self:stretch}}@media (max-width:720px){.login-page{padding:20px}.login-card{padding:30px}.planner-main{padding:33px 20px 48px}.planner-refresh-error{width:auto;margin:14px 20px -16px}.app-header{padding:14px 20px}.header-status,.account-email,.account-menu summary>svg{display:none}.planner-topline{margin-bottom:26px;display:block}.planner-topline h1{font-size:34px}.topline-stat{width:fit-content;margin-top:21px}.planner-card{border-radius:16px;padding:23px 19px}.planner-card-header{padding-bottom:21px}.steps-badge{display:none}.date-grid,.action-grid,.planner-aside{grid-template-columns:1fr}.generate-button{min-height:69px}.client-card{border-radius:16px}.hint-card{padding:15px}.generated-calendar{border-radius:16px;margin-top:28px;padding:19px 14px}.generated-calendar-toolbar{display:block}.calendar-toolbar-actions{justify-content:space-between;width:100%;margin-top:17px}.calendar-legend{margin-top:17px}.calendar-scroll{border-radius:11px;margin:0 -2px}}@media (max-width:390px){.mobile-brand{font-size:18px}.planner-topline h1{font-size:31px}.planner-card h2{font-size:23px}}@media (max-width:1280px){.planner-client-bar{grid-template-columns:minmax(265px,1fr) minmax(290px,1.1fr)}.planner-client-bar-copy{grid-column:1/-1}.planner-action-dock{grid-template-columns:1fr;gap:20px}.planner-action-dock-copy{border-right:0;border-bottom:1px solid var(--line);padding:0 0 19px}}@media (min-width:721px) and (max-width:1120px){.planner-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.planner-client-bar,.planner-action-dock{border-radius:17px;grid-template-columns:1fr;gap:18px;padding:20px}.planner-client-bar-copy{grid-column:auto}.planner-client-bar-copy h2,.planner-action-dock-copy h2{font-size:22px}.planner-client-field .select-wrap select{height:54px;font-size:14px}.planner-action-dock-copy{padding-bottom:17px}.planner-actions-main{grid-template-columns:1fr;gap:18px}.planner-action-grid{grid-template-columns:1fr}.planner-action-grid .generate-button{min-height:72px}.planner-calendar-region{margin-top:30px}.planner-calendar-region-copy{display:block}.planner-calendar-region-copy p{text-align:left;margin-top:5px}.planner-calendar-region .generated-calendar{border-radius:17px;margin-top:10px}.planner-calendar-region .generated-calendar-toolbar{padding:20px 18px 16px;display:block}.planner-calendar-region .calendar-legend{margin:0;padding:0 18px 15px}.planner-calendar-region .calendar-inline-error{margin:14px 14px 0}.planner-calendar-region .calendar-scroll{border-radius:11px;margin:14px}.planner-calendar-region .generated-calendar-empty{min-height:184px;padding:26px 20px}}@media (max-width:480px){.planner-availability-list{grid-template-columns:1fr}.planner-client-context{padding:11px}}.app-content{background:#f6f8f7}.app-header{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f6f8f7e6;justify-content:space-between}.header-page-context{align-items:center;gap:13px;display:inline-flex}.header-page-title{color:var(--ink);letter-spacing:-.025em;font-size:14px;font-weight:760}.header-active-clients{border-left:1px solid var(--line-strong);color:var(--ink-faint);align-items:center;gap:5px;padding-left:13px;font-size:11px;font-weight:620;display:inline-flex}.header-active-clients>span{background:var(--teal);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #207e6b1a}.header-active-clients strong{color:var(--ink-soft);font-weight:760}.planner-client-toolbar{border:1px solid var(--line);background:var(--surface);border-radius:14px;grid-template-columns:minmax(310px,390px) auto;justify-content:space-between;align-items:center;gap:18px;padding:14px 16px;display:grid;box-shadow:0 1px 2px #122a1f08,0 8px 24px #122a1f09}.planner-client-control{min-width:0}.planner-client-control .field-label{color:var(--ink-soft);letter-spacing:.075em;text-transform:uppercase;margin-bottom:7px;font-size:10px;font-weight:760}.planner-client-control .select-wrap select{background:#fff;border-radius:9px;height:48px;font-size:14px}.planner-client-control .field-help{display:none}.planner-toolbar-availability{justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:flex}.planner-toolbar-availability .availability-row{border:1px solid var(--line);background:#fbfcfa;border-radius:7px;gap:5px;max-width:150px;padding:5px 7px}.planner-toolbar-availability .availability-icon{border-radius:6px;width:21px;height:21px}.planner-toolbar-availability .availability-icon svg{width:12px;height:12px}.planner-toolbar-availability .availability-row small{font-size:8px}.planner-toolbar-availability .availability-row strong{font-size:9px}.open-plan-composer{border:1px solid var(--forest);color:#fff;background:var(--forest);white-space:nowrap;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:0 15px;font-size:12px;font-weight:740;transition:background .15s,box-shadow .15s,transform .15s;display:inline-flex;box-shadow:0 6px 14px #102b2024}.open-plan-composer>span{width:17px;height:17px;color:var(--forest-deep);background:var(--lime);border-radius:5px;place-items:center;font-size:16px;font-weight:500;line-height:1;display:grid}.open-plan-composer:hover:not(:disabled){background:var(--forest-deep);transform:translateY(-1px);box-shadow:0 9px 18px #102b2033}.open-plan-composer:disabled{color:#98a198;box-shadow:none;background:#eef1ed;border-color:#e0e5df}.open-plan-composer:disabled>span{color:#879086;background:#dde3db}.planner-dashboard .generated-calendar{background:var(--surface);border-radius:14px;margin-top:0;padding:0;overflow:hidden;box-shadow:0 1px 2px #122a1f08,0 8px 24px #122a1f09}.planner-dashboard .generated-calendar h2{letter-spacing:-.045em;font-size:23px}.planner-dashboard .calendar-inline-error{margin:15px 16px 0}.planner-dashboard .calendar-scroll{background:#fff;border-radius:11px;max-height:min(76vh,780px);margin:16px}.planner-dashboard .generated-calendar-empty{background:#fff;min-height:240px;padding:34px}.planner-modal-backdrop{z-index:30;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0b1d1575;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.planner-plan-modal{background:#fff;border:0;border-radius:18px;width:min(100%,760px);max-height:min(86vh,820px);overflow:auto;box-shadow:0 28px 80px #071a114d}.planner-plan-modal-header{border-bottom:0;justify-content:space-between;align-items:flex-start;gap:18px;padding:23px 24px 22px;display:flex}.planner-plan-modal-header .section-kicker{margin-bottom:5px}.planner-plan-modal-header h2{color:var(--ink);letter-spacing:-.05em;margin:0;font-size:24px;font-weight:750;line-height:1.12}.planner-plan-modal-close{border:1px solid var(--line);width:31px;height:31px;color:var(--ink-soft);background:#fff;border-radius:8px;flex:none;place-items:center;font-size:21px;line-height:1;transition:color .15s,background .15s;display:grid}.planner-plan-modal-close:hover{color:var(--ink);background:var(--surface-muted)}.planner-plan-modal-close:disabled{cursor:not-allowed;opacity:.48}.planner-plan-form{gap:14px;padding:20px 24px 24px;display:grid}.planner-generator-list{gap:12px;display:grid}.planner-generator-section{background:#f6f8f8;border:0;border-radius:12px;padding:16px}.planner-generator-section-header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.planner-plan-option-heading{align-items:flex-start;gap:10px;min-width:0;display:flex}.planner-plan-option-icon{width:31px;height:31px;color:var(--forest);background:#e5f2ca;border-radius:8px;flex:none;place-items:center;display:grid}.planner-plan-option-icon svg{width:16px;height:16px}.planner-generator-section-food .planner-plan-option-icon{color:#ab4c3b;background:#fff0eb}.planner-generator-section-mind{background:#f7f7f9}.planner-generator-section-mind .planner-plan-option-icon{color:#6b5b92;background:#eeeaf8}.planner-generator-section h3{color:var(--ink);letter-spacing:-.025em;margin:0;font-size:14px;font-weight:760}.planner-generator-section p{color:var(--ink-faint);margin:3px 0 0;font-size:11px;line-height:1.45}.planner-generator-state{color:#527215;letter-spacing:.02em;background:#e7f5cd;border-radius:999px;flex:none;align-items:center;min-height:24px;padding:0 8px;font-size:10px;font-weight:760;line-height:1;display:inline-flex}.planner-generator-state.is-attention{color:#8a4a2c;background:#fff0e9}.planner-generator-state.is-server-managed{color:#246b5e;background:#e2f0eb}.planner-generator-state.is-coming-soon{color:#6e6386;background:#eeebf7}.planner-modal-date-fieldset{border:0;min-width:0;margin:15px 0 0;padding:0}.planner-modal-date-fieldset .field-label{margin-bottom:9px}.planner-modal-date-fieldset .date-grid{gap:10px;margin-top:0}.planner-modal-date-fieldset .range-summary{margin-top:10px}.planner-modal-plan-range.is-read-only .date-input-wrap input{color:#6a776f;opacity:1;background:#edf1ee}.planner-generator-section-food .range-summary{color:#735e55;background:#fff4f0}.planner-generator-section-food .range-summary svg,.planner-generator-section-food .range-summary strong{color:#a75542}.planner-generator-section-mind .range-summary{color:#746b84;background:#f0eef5}.planner-generator-section-mind .range-summary svg,.planner-generator-section-mind .range-summary strong{color:#756593}.planner-generator-section-actions{gap:8px;margin-top:12px;display:grid}.planner-generator-section-note{min-height:16px}.planner-modal-generate-button{color:#fff;width:100%;min-height:48px;box-shadow:none;background:#19251f;border:0;border-radius:10px;padding:8px 11px}.planner-modal-generate-button:hover:not(:disabled){box-shadow:none;background:#0f1914;transform:translateY(-1px)}.planner-modal-generate-button .generate-icon{color:#d5fb68;background:#ffffff1f;border-radius:8px;width:30px;height:30px}.planner-modal-generate-button .generate-icon svg{width:16px;height:16px}.planner-modal-generate-button .generate-copy strong{font-size:12px}.planner-modal-generate-button>svg{width:17px;height:17px;margin-left:auto}.planner-modal-generate-button.generate-button-food{color:#fff;background:#19251f;border:0}.planner-modal-generate-button.generate-button-food .generate-icon{color:#ffc1b0;background:#ffffff1f}.planner-modal-generate-button.generate-button-mind:disabled{color:#8a9290;background:#ecefec;border:0}.planner-modal-generate-button.generate-button-mind:disabled .generate-icon{color:#91899f;background:#e0dde6}.planner-modal-generate-button:disabled{background:#ecefec;border:0}.planner-plan-form .form-feedback{margin:0}.planner-plan-drawer{color:#26372d;background:#fffdf8;border:0;border-left:1px solid #dce9e2;width:min(100vw,540px);max-width:none;height:100dvh;max-height:none;margin:0;padding:0;transition:transform .22s cubic-bezier(.2,.8,.2,1);position:fixed;inset:0 0 0 auto;overflow:hidden;transform:translate(100%);box-shadow:-18px 0 46px #1431232e}.planner-plan-drawer[data-visible=true]{transform:translate(0)}.planner-plan-drawer::backdrop{opacity:0;background:#12281c52;transition:opacity .18s}.planner-plan-drawer[data-visible=true]::backdrop{opacity:1}.planner-plan-drawer-content{grid-template-rows:auto minmax(0,1fr) auto;height:100%;display:grid}.planner-plan-drawer-header{border-bottom:1px solid #e6e8df;justify-content:space-between;align-items:flex-start;gap:16px;padding:28px 28px 22px;display:flex}.planner-plan-drawer-header .section-kicker{color:#478266;margin-bottom:5px}.planner-plan-drawer-header h2{color:#26372d;letter-spacing:-.04em;margin:0;font-size:23px;font-weight:770;line-height:1.14}.planner-plan-drawer-header p{color:#66756d;margin:8px 0 0;font-size:12px;font-weight:560;line-height:1.45}.planner-plan-drawer-close{color:#52645b;background:#fff;border:1px solid #d6dfd9;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;padding:0;font-size:22px;line-height:1;display:grid}.planner-plan-drawer-close:hover:not(:disabled){color:#17634f;background:#f4fbf7;border-color:#9ab8aa}.planner-plan-drawer-close:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.planner-plan-drawer-close:disabled{cursor:wait;opacity:.55}.planner-plan-drawer .planner-plan-form{align-content:start;gap:20px;min-height:0;padding:24px 28px 30px;overflow-y:auto}.planner-plan-drawer .planner-modal-date-fieldset{margin:0}.planner-generator-options{border:0;gap:9px;min-width:0;margin:0;padding:0;display:grid}.planner-generator-options .field-label{margin-bottom:2px}.planner-generator-option{color:#26372d;cursor:pointer;background:#fff;border:1px solid #e0e8e2;border-radius:11px;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:11px;min-height:74px;padding:12px;transition:border-color .15s,background .15s;display:grid}.planner-generator-option:hover:has(input:not(:disabled)){background:#f8fcf9;border-color:#a8c8b5}.planner-generator-option:has(input:checked){background:#f2faf4;border-color:#6fa588}.planner-generator-option input{accent-color:#36755f;width:17px;height:17px;margin:0}.planner-generator-option .planner-plan-option-icon{width:32px;height:32px}.planner-plan-option-icon-food{color:#ab4c3b;background:#fff0eb}.planner-plan-option-icon-mind{color:#6b5b92;background:#eeeaf8}.planner-generator-option-copy{gap:3px;min-width:0;display:grid}.planner-generator-option-copy strong{color:var(--ink);letter-spacing:-.02em;font-size:13px;font-weight:760}.planner-generator-option-copy small{color:var(--ink-faint);font-size:11px;line-height:1.4}.planner-generator-option.is-unavailable{cursor:not-allowed;opacity:.62;background:#f7f8f7}.planner-plan-drawer-footer{padding:16px 28px calc(16px + env(safe-area-inset-bottom));background:#fffdf8fa;border-top:1px solid #e9e4d9;justify-content:flex-end;align-items:center;gap:12px;display:flex}.planner-plan-drawer-generate{border:1px solid var(--teal);color:#fff;background:var(--teal);border-radius:7px;min-height:38px;padding:0 12px;font-size:12px;font-weight:720}.planner-plan-drawer-generate:hover:not(:disabled){color:#fff;background:#17634f;border-color:#17634f}.planner-plan-drawer-generate:disabled{opacity:.52}@media (max-width:1320px){.planner-client-toolbar{grid-template-columns:minmax(290px,390px) auto}.planner-toolbar-availability .availability-row{max-width:126px}}@media (max-width:1120px){.planner-client-toolbar{grid-template-columns:minmax(280px,1fr) auto}.planner-toolbar-availability .availability-row{max-width:160px}}@media (max-width:900px){.header-page-context{display:none}.planner-dashboard{padding:20px 26px 38px}}@media (max-width:720px){.planner-dashboard{padding:16px 18px 32px}.planner-client-toolbar{border-radius:12px;grid-template-columns:1fr;gap:14px;padding:15px}.open-plan-composer{width:100%}.planner-dashboard .planner-calendar-region{margin-top:14px}.planner-dashboard .generated-calendar{border-radius:12px}.planner-dashboard .generated-calendar-toolbar{padding:18px 16px 14px;display:block}.planner-dashboard .calendar-legend{padding:0 16px 13px}.planner-dashboard .calendar-scroll{margin:12px}.planner-modal-backdrop{align-items:end;padding:0}.planner-plan-modal{border-bottom:0;border-left:0;border-right:0;border-radius:18px 18px 0 0;width:100%;max-height:min(90vh,860px)}.planner-plan-modal-header{padding:20px 18px 16px}.planner-plan-form{padding:16px 18px 22px}.planner-generator-section{padding:14px}.planner-generator-section-header{gap:10px}.planner-plan-drawer{width:100vw}.planner-plan-drawer-header,.planner-plan-drawer .planner-plan-form,.planner-plan-drawer-footer{padding-left:18px;padding-right:18px}}@media (max-width:480px){.planner-toolbar-availability{grid-column:1/-1;justify-content:flex-start}.planner-toolbar-availability .availability-row{max-width:none}}.app-shell{background:linear-gradient(#eceff1 0 72px,#f7f8fa 72px 100%);grid-template-columns:252px minmax(0,1fr)}.app-sidebar{color:#e9ecef;height:100dvh;box-shadow:none;background:#0b0c0e;border:0;border-radius:0 20px 20px 0;align-self:stretch;margin:0;padding:28px 16px 22px;top:0;left:0;overflow-y:auto}.app-sidebar .brand{color:#f8fafc;margin:0 12px}.app-sidebar .brand>span:last-child>span{color:#b8ee56}.app-nav{gap:4px;margin-top:56px}.nav-item{color:#eef2f594;border-radius:8px;min-height:43px;font-size:13px}.nav-item:hover:not(.nav-item-muted){color:#fff;background:#16191c}.nav-item-active{color:#fff;box-shadow:none;background:#1a1e21}.nav-item-active svg,.nav-item small,.secure-label,.secure-dot{color:#b8ee56}.secure-dot{background:#b8ee56;box-shadow:0 0 0 4px #b8ee561a}.sidebar-footer{border-top:0;padding:18px 12px 0}.sidebar-footer p{color:#eef2f56b}.app-content{background:#f7f8fa;padding-top:72px}.app-header{z-index:100;min-height:72px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:#eceff1;border:0;padding:15px clamp(26px,4vw,64px);position:fixed;top:0;left:252px;right:0}.header-active-clients{background:#ffffff7a;border:0;border-radius:999px;padding:5px 8px}.header-active-clients>span{width:5px;height:5px;box-shadow:none}.account-avatar{color:#243129;background:#dbe2dc;border:0;border-radius:9px}.planner-dashboard{width:min(100%,1560px);padding:27px clamp(28px,4.5vw,68px) 54px}.workspace-subheader{border-bottom:1px solid #dde3e1}.planner-client-toolbar{box-shadow:none;background:0 0;border:0;border-radius:0;align-items:end;gap:22px;padding:0 0 22px;display:flex}.planner-toolbar-actions{align-items:center;gap:8px;margin-left:auto;display:flex}@media (max-width:1180px){.planner-client-toolbar{flex-wrap:wrap;align-items:flex-start}.planner-toolbar-actions{flex-wrap:wrap;width:100%;margin-left:0}}.planner-client-control .field-label{color:#69736e;letter-spacing:.09em;margin-bottom:6px;font-size:9px}.planner-client-control .select-wrap select{background:#fff;border-color:#dfe4e6;border-radius:8px;height:46px;box-shadow:0 1px 1px #11182705}.open-plan-composer{min-height:46px;box-shadow:none;background:#111315;border-color:#111315;border-radius:8px;padding:0 16px}.open-plan-composer>span{color:#111315;background:#fff;border-radius:4px;width:16px;height:16px}.open-plan-composer:hover:not(:disabled){box-shadow:none;background:#292e32}.planner-dashboard .planner-calendar-region{margin-top:0}.planner-dashboard .generated-calendar{box-shadow:none;background:#fff;border:0;border-radius:12px;overflow:hidden}.planner-dashboard .generated-calendar-toolbar{background:#fff;align-items:center;padding:20px 22px 14px}.planner-dashboard .generated-calendar-toolbar .section-kicker{display:none}.planner-dashboard .generated-calendar h2{letter-spacing:-.04em;font-size:20px;font-weight:750}.planner-dashboard .calendar-range-copy{color:#7b8580;margin-top:4px;font-size:11px}.planner-dashboard .calendar-nav,.planner-dashboard .calendar-refresh-button{background:#fafbfc;border-color:#e2e6e8;border-radius:7px}.planner-dashboard .calendar-copy-day-button{color:#4e5a54;background:#fafbfc;border:1px solid #e2e6e8;border-radius:7px;align-items:center;min-height:34px;padding:0 10px;font-size:11px;font-weight:700;transition:color .15s,background .15s,border-color .15s;display:inline-flex}.planner-dashboard .calendar-copy-day-button:hover:not(:disabled){color:#1d2722;background:#f2f5f5;border-color:#cbd2d4}.planner-dashboard .calendar-copy-day-button:disabled{cursor:not-allowed;opacity:.55}.planner-dashboard .calendar-nav-button+.calendar-today-button,.planner-dashboard .calendar-today-button+.calendar-nav-button{border-left-color:#e2e6e8}.planner-dashboard .calendar-legend{border-bottom:0;gap:12px;margin:0;padding:0 22px 13px}.planner-dashboard .calendar-legend-item{color:#78827d;font-size:9px}.planner-dashboard .calendar-scroll{background:#fff;border:0;border-radius:0;max-height:min(76vh,760px);margin:14px 16px 16px}.planner-dashboard .generated-calendar-empty{box-shadow:none;border:0}.planner-dashboard .calendar-frame{min-width:1000px}.planner-dashboard .calendar-day-headings,.planner-dashboard .calendar-target-grid,.planner-dashboard .calendar-all-day-row,.planner-dashboard .calendar-grid-body{grid-template-columns:64px repeat(var(--calendar-day-count,7), minmax(134px, 1fr))}.planner-dashboard .calendar-day-headings{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fafbfcf7;border-bottom-color:#e7eaeb;min-height:88px}.planner-dashboard .calendar-time-heading,.planner-dashboard .calendar-day-heading{border-right-color:#edf0f1}.planner-dashboard .calendar-time-heading{color:#98a19d;font-size:8px}.planner-dashboard .calendar-day-heading{color:#7d8782;justify-content:flex-start;align-items:stretch;gap:7px;padding:9px 10px 8px;font-size:9px;display:flex}.planner-dashboard .calendar-day-heading-date{flex:none;gap:7px}.planner-dashboard .calendar-day-heading strong{color:#252e2a;font-size:30px}.planner-dashboard .calendar-day-heading-today strong{color:#fff;background:#111315;border-radius:11px;width:36px;height:36px;font-size:24px;box-shadow:0 4px 10px #11131529}.planner-dashboard .calendar-day-heading-generated:not(.calendar-day-heading-today) strong{text-underline-offset:4px;-webkit-text-decoration:underline #1113152e;text-decoration:underline #1113152e;text-decoration-thickness:2px}.planner-dashboard .calendar-day-heading-badges{flex-direction:row;flex:0 auto;justify-content:flex-start;align-items:center;gap:3px;min-width:0;display:inline-flex}.planner-dashboard .calendar-day-state,.planner-dashboard .calendar-day-plan-icon{box-sizing:border-box;letter-spacing:.045em;min-height:16px;font-size:7px}.planner-dashboard .calendar-day-plan-icon{width:18px;height:18px}.planner-dashboard .calendar-day-plan-icon-workout{color:#1f5e57;background:#e8f2ef}.planner-dashboard .calendar-day-plan-icon-food{color:#087958;background:#e4f7ef}.planner-dashboard .calendar-day-plan-icon svg{width:10px;height:10px}.planner-dashboard .calendar-scroll:has(.calendar-nutrition-targets) .calendar-day-headings{border-bottom:1px solid #e7eaeb}.planner-dashboard .calendar-nutrition-target-label,.planner-dashboard .calendar-nutrition-targets .calendar-target-cell{border-right:1px solid #edf0f1}.planner-dashboard .calendar-scroll:has(.calendar-nutrition-targets) .calendar-time-heading{border-right:1px solid #edf0f1}.planner-dashboard .calendar-scroll:has(.calendar-nutrition-targets) .calendar-day-heading{border-right:1px solid #edf0f1}.planner-dashboard .calendar-targets{background:#fff;border-bottom:1px solid #e7eaeb}.planner-dashboard .calendar-targets-toolbar-compact{background:#fafbfc;border-bottom:1px solid #edf0f1;min-height:34px;padding:5px 8px 5px 10px}.planner-dashboard .calendar-targets-toolbar-feedback{align-items:center;min-width:0;display:flex}.planner-dashboard .calendar-targets-toolbar-actions{gap:6px;margin-left:auto}.planner-dashboard .calendar-target-status{letter-spacing:0;border-radius:5px;min-height:20px;padding:3px 6px;font-size:8px}.planner-dashboard .calendar-target-status-loading{color:#5b6661;background:#eef1f2}.planner-dashboard .calendar-target-status-error{color:#9d3f31;background:#fff0ed}.planner-dashboard .calendar-targets-range-error{color:#9d3f31;text-overflow:ellipsis;white-space:nowrap;max-width:460px;margin:0;font-size:9px;line-height:1.3;overflow:hidden}.planner-dashboard .calendar-target-retry,.planner-dashboard .calendar-target-cell-actions button{color:#4e5a54;background:#fff;border-color:#dce1e3;border-radius:5px;font-size:9px}.planner-dashboard .calendar-target-retry{padding:5px 7px}.planner-dashboard .calendar-target-retry:hover:not(:disabled),.planner-dashboard .calendar-target-cell-actions button:hover:not(:disabled){color:#1d2722;background:#f5f7f7;border-color:#bfc6c9}.planner-dashboard .calendar-target-label{color:#8a9490;letter-spacing:.06em;background:#fafbfc;border-right-color:#edf0f1;justify-content:flex-end;align-items:center;padding:8px;font-size:8px;display:flex}.planner-dashboard .calendar-target-label strong,.planner-dashboard .calendar-target-label small{display:none}.planner-dashboard .calendar-target-cell{background:#fff;border-right-color:#edf0f1;min-height:78px}.planner-dashboard .calendar-target-cell-rest,.planner-dashboard .calendar-target-cell-locked,.planner-dashboard .calendar-target-cell-outside{background:#fafbfc}.planner-dashboard .calendar-target-cell-outside{gap:0;min-height:78px}.planner-dashboard .calendar-target-cell-outside small{display:none}.planner-dashboard .calendar-target-cell-outside>span{color:#c0c7c4;font-size:14px}.planner-dashboard .calendar-target-cell-state,.planner-dashboard .calendar-target-cell-locked{min-height:78px}.planner-dashboard .calendar-target-cell-header{background:0 0;border-bottom-color:#edf0f1;justify-content:flex-end;min-height:29px;padding:5px 8px}.planner-dashboard .calendar-target-cell-locked .calendar-target-cell-header{justify-content:space-between}.planner-dashboard .calendar-target-cell-actions{gap:5px;margin-left:auto}.planner-dashboard .calendar-target-cell-header small{color:#7b8580;font-size:8px}.planner-dashboard .calendar-workout-target-facts{gap:1px;padding:6px 9px 9px;display:grid}.planner-dashboard .calendar-workout-target-facts strong{color:#28332d;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:730;overflow:hidden}.planner-dashboard .calendar-workout-target-facts>span,.planner-dashboard .calendar-workout-target-facts small{color:#7a8580;text-overflow:ellipsis;white-space:nowrap;font-size:8px;font-weight:610;line-height:1.25;overflow:hidden}.planner-dashboard .calendar-workout-target-facts-rest strong{color:#69736e}.planner-dashboard .calendar-nutrition-targets{background:#fff;border-bottom:1px solid #e7eaeb}.planner-dashboard .calendar-nutrition-target-label,.planner-dashboard .calendar-nutrition-targets .calendar-target-cell{background:#fff}.planner-dashboard .calendar-nutrition-target-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:3px 6px;padding:4px 9px 9px}.planner-dashboard .calendar-nutrition-target-facts .calendar-nutrition-target-fact-kcal{grid-column:1/-1}.planner-dashboard .calendar-nutrition-target-facts dt{color:#8a9490;letter-spacing:.03em;margin:0;font-size:7px}.planner-dashboard .calendar-nutrition-target-facts dd{color:#5b6661;font-variant-numeric:tabular-nums;font-size:9px}.planner-dashboard .calendar-nutrition-target-facts .calendar-nutrition-target-fact-kcal dt{display:none}.planner-dashboard .calendar-nutrition-target-facts .calendar-nutrition-target-fact-kcal dd{color:#25302a;letter-spacing:-.03em;font-size:14px;font-weight:760}.planner-dashboard .calendar-all-day-row{border-bottom-color:#e7eaeb;min-height:46px}.planner-dashboard .calendar-all-day-label{color:#98a19d;border-right-color:#edf0f1;padding:10px 8px;font-size:8px}.planner-dashboard .calendar-all-day-cell{border-right-color:#edf0f1;gap:3px;padding:4px}.planner-dashboard .calendar-generated-day{border:0;border-left:3px solid var(--generated-day-accent);color:#34413a;min-height:25px;box-shadow:none;background:#f5f7f7;border-radius:4px;gap:0;padding:4px 6px;font-size:8px}.planner-dashboard .calendar-generated-day-icon,.planner-dashboard .calendar-generated-day-status{display:none}.planner-dashboard .calendar-grid-body{height:1344px;min-height:1344px}.planner-dashboard .calendar-time-rail{background:#fafbfc;border-right-color:#edf0f1}.planner-dashboard .calendar-hour-label{color:#9aa39f;height:56px;font-size:8px}.planner-dashboard .calendar-day-column{border-right-color:#edf0f1}.planner-dashboard .calendar-hour-lines{grid-template-rows:repeat(24,56px)}.planner-dashboard .calendar-hour-line{border-top-color:#eef1f2}.planner-dashboard .calendar-event{border:0;border-left:3px solid var(--event-accent);color:#303b35;box-shadow:none;background:#f6f8f8;border-radius:5px;gap:0;padding:6px 7px}.planner-dashboard .calendar-event-planned,.planner-dashboard .calendar-event-review,.planner-dashboard .calendar-event-generating,.planner-dashboard .calendar-event-pending_publication{border-left-style:dashed}.planner-dashboard .calendar-event-icon,.planner-dashboard .calendar-event-status{display:none}.planner-dashboard .calendar-event-copy{gap:1px;padding:0}.planner-dashboard .calendar-event-title{color:#26312b;font-size:9px;font-weight:740}.planner-dashboard .calendar-event-meta{color:#7d8782;font-size:8px}.planner-dashboard .calendar-event-compact{border-radius:4px;min-height:28px;padding:4px 5px}.planner-dashboard .calendar-no-events{color:#74807a;box-shadow:none;border-color:#e2e6e8;font-size:10px;top:130px}@media (max-width:1120px){.planner-client-toolbar{grid-template-columns:minmax(280px,1fr) auto}}@media (max-width:900px){.app-shell{grid-template-columns:1fr}.app-header{background:#eceff1}}@media (max-width:720px){.planner-dashboard{padding:18px 16px 34px}.planner-client-toolbar{grid-template-columns:1fr;gap:14px;padding-bottom:18px}.planner-dashboard .generated-calendar-toolbar{padding:18px 16px 13px;display:block}.planner-dashboard .calendar-toolbar-actions{margin-top:13px}.planner-dashboard .calendar-legend{padding:0 16px 12px}.planner-dashboard .calendar-scroll{margin:12px}}.mfa-page{background:radial-gradient(circle at 15% 12%,#cdf55b36,#0000 26%),linear-gradient(145deg,#112e22,#1d4a35);place-items:center;min-height:100vh;padding:28px;display:grid}.mfa-card{width:min(100%,500px);color:var(--ink);background:var(--surface);box-shadow:var(--shadow-lg);border:1px solid #ffffff21;border-radius:24px;padding:clamp(28px,5vw,48px)}.mfa-shield{width:45px;height:45px;color:var(--forest);background:var(--lime);border-radius:14px;place-items:center;margin-bottom:22px;font-size:30px;font-weight:800;display:grid}.mfa-card h1{color:var(--forest);letter-spacing:-.06em;margin:10px 0 12px;font-size:clamp(28px,4vw,37px);line-height:1.02}.mfa-intro,.mfa-loading{color:var(--ink-soft);margin:0;line-height:1.65}.mfa-card form{margin-top:26px}.mfa-qr-wrap{border:1px solid var(--line);background:var(--surface-muted);border-radius:16px;justify-items:center;margin-bottom:22px;padding:18px;display:grid}.mfa-qr-wrap p{color:var(--ink-soft);text-align:center;margin:0 0 14px;font-size:14px}.mfa-qr{background:#fff;border-radius:8px;width:min(100%,216px);height:auto;display:block}.mfa-code-label{color:var(--ink);gap:8px;font-size:14px;font-weight:700;display:grid}.mfa-code-label input{border:1px solid var(--line-strong);width:100%;color:var(--forest);letter-spacing:.3em;text-align:center;background:#fff;border-radius:11px;padding:14px 16px;font-size:24px;font-weight:700}.mfa-code-label input::placeholder{color:#a8b2aa}.mfa-submit{width:100%;color:var(--forest-deep);background:var(--lime);border:0;border-radius:11px;margin-top:18px;padding:14px 18px;font-weight:800}.mfa-submit:disabled{opacity:.58}.mfa-error{color:var(--danger);margin:12px 0 0;font-size:14px}.mfa-signout{color:var(--ink-soft);background:0 0;border:0;margin:18px auto 0;text-decoration:underline;display:block}@media (max-width:520px){.mfa-page{padding:16px}.mfa-card{border-radius:18px}}.nav-group{gap:4px;margin-top:17px;display:grid}.nav-group-label{color:#eef2f557;letter-spacing:.11em;text-transform:uppercase;margin:0 12px 3px;font-size:10px;font-weight:760}.nav-item-subitem{color:#eef2f5b3}.mobile-panel-nav{display:none}.workspace-loader{color:#758179;align-content:center;place-items:center;gap:14px;min-height:calc(100vh - 72px);padding:40px;font-size:13px;display:grid}.workspace-loader p{margin:0}.recipes-workspace,.admin-ingredients-workspace{width:min(100%,1560px);padding:28px clamp(28px,4.5vw,68px) 58px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.admin-ingredients-intro{justify-content:space-between;align-items:center;gap:24px;margin-bottom:18px;display:flex}.admin-ingredients-intro h1{color:#202a24;letter-spacing:-.055em;margin:0;font-size:clamp(30px,3.2vw,42px);font-weight:760;line-height:1.04}.admin-ingredients-intro>div>p:last-child{color:#718078;margin:7px 0 0;font-size:13px}.admin-ingredients-notice{color:#5b7065;background:#f4faf6;border:1px solid #d8e9df;border-radius:11px;gap:3px;margin-bottom:20px;padding:12px 14px;font-size:12px;line-height:1.45;display:grid}.admin-ingredients-notice strong{color:#36765f;font-size:12px}.admin-ingredients-layout{min-width:0}.admin-ingredients-table-card{background:#fff;border:1px solid #e0e6e1;border-radius:14px;min-width:0;box-shadow:0 2px 12px #1f2d2406}.admin-ingredients-table-header{border-bottom:1px solid #e8ece9;justify-content:space-between;align-items:center;gap:16px;padding:17px 18px;display:flex}.admin-ingredients-table-header h2,.admin-ingredient-editor-drawer-header h2,.admin-ingredient-usage-drawer-header h2{color:#2c3830;letter-spacing:-.025em;margin:0;font-size:17px}.admin-ingredients-table-header p,.admin-ingredient-editor-drawer-header p,.admin-ingredient-usage-drawer-header p{color:#829087;margin:3px 0 0;font-size:11px}.admin-ingredients-search input{color:#344038;background:#fbfcfb;border:1px solid #dce3dd;border-radius:8px;outline:0;width:178px;height:35px;padding:0 10px;font-size:12px}.admin-ingredients-search input:focus{border-color:#71a991;box-shadow:0 0 0 3px #498f7021}.admin-ingredients-table-wrap{overflow-x:auto}.admin-ingredients-table-card table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:810px}.admin-ingredient-col-name{width:25%}.admin-ingredient-col-category{width:16.6667%}.admin-ingredient-col-kcal{width:72px}.admin-ingredient-col-protein,.admin-ingredient-col-carbs{width:82px}.admin-ingredient-col-fat{width:70px}.admin-ingredient-col-actions{width:56px}.admin-ingredient-col-usage{width:86px}.admin-ingredients-table-card th{color:#8a958e;letter-spacing:.055em;text-align:left;text-transform:uppercase;border-bottom:1px solid #edf0ed;padding:11px 12px;font-size:10px;font-weight:740}.admin-ingredients-table-card td{color:#5f6c64;white-space:nowrap;border-bottom:1px solid #edf0ed;padding:12px;font-size:12px}.admin-ingredients-table-card tbody tr:last-child td{border-bottom:0}.admin-ingredients-table-card tbody tr.is-selected td{background:#f1f8f4}.admin-ingredients-table-card td:first-child{white-space:normal}.admin-ingredients-table-card td strong,.admin-ingredients-table-card td small{display:block}.admin-ingredients-table-card td strong{color:#344038;overflow-wrap:anywhere;font-size:12px;line-height:1.35}.admin-ingredients-table-card td small{color:#94a098;margin-top:3px;font-size:10px}.admin-ingredient-edit{color:#34765f;background:0 0;border:0;border-radius:6px;padding:5px 6px;font-size:11px;font-weight:750}.admin-ingredient-edit:hover{background:#eaf5ee}.admin-ingredient-usage{color:#849189;background:#fbfcfb;border:1px solid #d7e1db;border-radius:7px;justify-content:center;align-items:center;gap:5px;min-width:44px;padding:5px 7px;font-size:11px;font-weight:760;line-height:1;display:inline-flex}.admin-ingredient-usage svg{width:14px;height:14px}.admin-ingredient-usage[data-has-usage=true]{color:#277056;background:#eef8f2;border-color:#b6d8c5}.admin-ingredient-usage:hover{color:#185d49;background:#e4f3e9;border-color:#7eaf97}.admin-ingredients-state,.admin-ingredients-empty{color:#7c8981;text-align:center;padding:20px;font-size:12px}.admin-ingredients-error,.admin-ingredient-form-error,.admin-ingredients-message{border-radius:8px;margin:12px;padding:10px 11px;font-size:12px;line-height:1.4}.admin-ingredients-toast{color:#276c55;background:#effaf4;border:1px solid #cce7d9;border-radius:8px;width:fit-content;max-width:min(100%,560px);margin:0 0 16px;padding:10px 11px;font-size:12px;line-height:1.4}.admin-ingredients-error,.admin-ingredient-form-error{color:#9c5043;background:#fff6f3;border:1px solid #f0cbc4}.admin-ingredients-error{justify-content:space-between;align-items:center;gap:10px;display:flex}.admin-ingredients-error button{color:inherit;background:0 0;border:0;font-size:11px;font-weight:760;text-decoration:underline}.admin-ingredients-message{color:#276c55;background:#effaf4;border:1px solid #cce7d9}.admin-ingredient-editor-drawer,.admin-ingredient-usage-drawer{color:#26372d;background:#fffdf8;border:0;border-left:1px solid #dce9e2;width:min(100vw,510px);max-width:none;height:100dvh;max-height:none;margin:0;padding:0;transition:transform .22s cubic-bezier(.2,.8,.2,1);position:fixed;inset:0 0 0 auto;overflow:hidden;transform:translate(100%);box-shadow:-18px 0 46px #1431232e}.admin-ingredient-editor-drawer[data-visible=true],.admin-ingredient-usage-drawer[data-visible=true]{transform:translate(0)}.admin-ingredient-editor-drawer::backdrop,.admin-ingredient-usage-drawer::backdrop{opacity:0;background:#12281c52;transition:opacity .18s}.admin-ingredient-editor-drawer[data-visible=true]::backdrop,.admin-ingredient-usage-drawer[data-visible=true]::backdrop{opacity:1}.admin-ingredient-editor-drawer-content,.admin-ingredient-usage-drawer-content{grid-template-rows:auto minmax(0,1fr);height:100%;display:grid}.admin-ingredient-editor-drawer-header,.admin-ingredient-usage-drawer-header{background:#fffdf8;border-bottom:1px solid #e8ece9;justify-content:space-between;align-items:flex-start;gap:16px;padding:28px 28px 22px;display:flex}.admin-ingredient-editor-drawer-header>button,.admin-ingredient-usage-drawer-header>button{color:#52645b;background:#fff;border:1px solid #d6dfd9;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;padding:0;font-size:22px;line-height:1;display:grid}.admin-ingredient-editor-drawer-header>button:hover:not(:disabled),.admin-ingredient-usage-drawer-header>button:hover:not(:disabled){color:#17634f;background:#f4fbf7;border-color:#9ab8aa}.admin-ingredient-editor-drawer-header>button:disabled,.admin-ingredient-usage-drawer-header>button:disabled{cursor:wait;opacity:.6}.admin-ingredient-editor-drawer-body,.admin-ingredient-usage-drawer-body{min-height:0;padding:24px 28px calc(30px + env(safe-area-inset-bottom));overflow-y:auto}.admin-ingredient-editor-drawer-body form{gap:14px;display:grid}.admin-ingredient-usage-state{color:#718078;background:#fbfcfb;border:1px solid #e1e7e3;border-radius:9px;margin:0;padding:14px;font-size:12px;line-height:1.5}.admin-ingredient-usage-error{color:#9c5043;background:#fff6f3;border:1px solid #f0cbc4;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:12px 13px;font-size:12px;line-height:1.45;display:flex}.admin-ingredient-usage-error button{color:inherit;background:0 0;border:0;flex:none;padding:0;font-size:11px;font-weight:760;text-decoration:underline}.admin-ingredient-usage-list{gap:9px;margin:0;padding:0;list-style:none;display:grid}.admin-ingredient-usage-list li{background:#fff;border:1px solid #e0e7e2;border-radius:10px;gap:4px;padding:13px 14px;display:grid}.admin-ingredient-usage-list strong,.admin-ingredient-usage-list span,.admin-ingredient-usage-list small{display:block}.admin-ingredient-usage-list strong{color:#354239;font-size:13px;line-height:1.4}.admin-ingredient-usage-list span,.admin-ingredient-usage-list small{color:#7d8b82;font-size:10px;line-height:1.45}.admin-ingredient-usage-list span{margin-top:2px}.admin-ingredient-usage-list small{color:#4f7966;font-weight:690}.admin-nutrition-heading{color:#46554c;justify-content:space-between;align-items:baseline;padding-top:3px;font-size:12px;display:flex}.admin-ingredient-name-field{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.admin-ingredient-name-field>input:only-child{grid-column:1/-1}.admin-ask-ai-button{color:#276c55;white-space:nowrap;background:#eff8f2;border:1px solid #9dc2b0;border-radius:8px;height:39px;padding:0 11px;font-size:11px;font-weight:760}.admin-ask-ai-button:hover:not(:disabled){background:#e4f3e9;border-color:#71a991}.admin-ask-ai-button:disabled{cursor:wait;opacity:.62}.admin-nutrition-heading span{color:#8a958e;font-size:10px}.admin-nutrition-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 10px;display:grid}.admin-ingredient-form-error{margin:-2px 0 0}.admin-ingredient-form-actions{justify-content:flex-end;align-items:center;gap:12px;padding-top:3px;display:flex}.admin-ingredient-form-actions .text-button{font-size:12px}.recipes-intro{justify-content:space-between;align-items:center;gap:28px;margin-bottom:20px;display:flex}.recipes-kicker{color:#7f8b84;letter-spacing:.1em;text-transform:uppercase;margin:0 0 6px;font-size:10px;font-weight:760}.recipes-intro h1{color:#202a24;letter-spacing:-.055em;margin:0;font-size:clamp(30px,3.2vw,42px);font-weight:760;line-height:1.04}.recipes-intro-actions{align-items:center;gap:8px;display:flex}.recipes-intro .recipe-editing-label{color:#718078;margin:6px 0 0;font-size:13px}.recipes-intro-note{background:#ffffffb3;border:1px solid #e2e7e2;border-radius:12px;align-items:center;gap:11px;min-width:235px;padding:13px 15px;display:flex}.recipes-note-icon,.recipe-type-icon,.recipe-summary-icon,.recipe-library-kind{flex:none;place-items:center;display:grid}.recipes-note-icon{color:#39806a;background:#e4f3ed;border-radius:9px;width:31px;height:31px}.recipes-note-icon svg,.recipe-type-icon svg,.recipe-summary-icon svg,.recipe-library-kind svg{width:18px;height:18px}.recipes-intro-note>span:last-child{gap:1px;display:grid}.recipes-intro-note strong{color:#354039;font-size:12px}.recipes-intro-note small{color:#7c8881;font-size:11px}.recipe-library-strip{background:#fff;border:1px solid #e1e6e1;border-radius:14px;grid-template-columns:minmax(245px,.7fr) minmax(0,1.3fr);align-items:center;gap:28px;min-height:120px;margin-bottom:18px;padding:18px 21px;display:grid;box-shadow:0 2px 12px #1f2d2406}.recipe-library-strip h2{color:#263129;letter-spacing:-.025em;margin:0;font-size:17px}.recipe-library-strip>div:first-child>p:last-child{color:#79857e;max-width:395px;margin:5px 0 0;font-size:12px;line-height:1.55}.recipe-library-state{min-width:0}.recipe-library-state>p,.recipe-library-error p{color:#78847d;margin:0;font-size:12px}.recipe-library-error{background:#fff6f3;border:1px solid #f0cfc8;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;display:flex}.recipe-library-error p{color:#9c5145}.recipe-library-error button{color:#8c463a;background:0 0;border:0;flex:none;padding:5px 0;font-size:12px;font-weight:760;text-decoration:underline}.recipe-library-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.recipe-library-list li{background:#fbfcfb;border:1px solid #edf0ed;border-radius:9px;align-items:center;gap:9px;min-width:0;padding:8px 9px;display:flex}.recipe-library-kind{color:#3c846d;background:#e6f4ee;border-radius:8px;width:27px;height:27px}.recipe-library-kind.is-framework{color:#4b6d9f;background:#eaf0fb}.recipe-library-kind svg{width:14px;height:14px}.recipe-library-list li>span:last-child{min-width:0;display:grid}.recipe-library-list strong,.recipe-library-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.recipe-library-list strong{color:#344038;font-size:12px}.recipe-library-list small{color:#89938d;font-size:10px}.recipe-type-switch{border:0;align-items:center;gap:6px;width:fit-content;min-width:0;margin:0 0 20px;padding:0;display:flex}.recipe-type-switch legend{color:#59665e;margin-right:6px;padding:0;font-size:12px;font-weight:720}.recipe-type-switch label{color:#65726a;cursor:pointer;background:#fff;border:1px solid #dce3dd;border-radius:8px;align-items:center;gap:6px;min-height:35px;padding:0 11px;font-size:12px;font-weight:700;display:inline-flex}.recipe-type-switch label.is-selected{color:#285f4b;background:#edf7f0;border-color:#90b6a4}.recipe-type-switch input{accent-color:#40836c;width:14px;height:14px;margin:0}.recipe-type-switch label:has(input:disabled){cursor:not-allowed;opacity:.62}.recipe-type-option{color:#506058;text-align:left;background:#ffffffbf;border:1px solid #e0e5e1;border-radius:13px;grid-template-columns:39px minmax(0,1fr) 18px;align-items:center;gap:12px;min-height:82px;padding:13px 15px;transition:border-color .15s,background .15s,box-shadow .15s;display:grid}.recipe-type-option:hover{background:#fff;border-color:#bacdc2}.recipe-type-option.is-selected{color:#244d3d;background:#fff;border-color:#90b6a4;box-shadow:0 4px 16px #2b4f3d12}.recipe-type-icon{color:#357b65;background:#e5f2ec;border-radius:11px;width:39px;height:39px}.recipe-type-icon-framework{color:#516f9e;background:#e9effa}.recipe-type-option>span:nth-child(2){gap:2px;display:grid}.recipe-type-option strong{color:#344038;font-size:13px}.recipe-type-option small{color:#849087;font-size:11px;line-height:1.4}.recipe-type-arrow{color:#92a098;font-size:18px}.recipe-type-option.is-selected .recipe-type-arrow{color:#41816b}.recipe-form-message,.recipe-form-error{border-radius:10px;align-items:center;gap:7px;margin:0 0 14px;padding:10px 12px;font-size:12px;font-weight:650;display:flex}.recipe-form-message{color:#276c55;background:#effaf4;border:1px solid #cce7d9}.recipe-form-message svg{width:15px;height:15px}.recipe-save-confirmation{z-index:100;pointer-events:none;place-items:center;display:grid;position:fixed;inset:0}.recipe-save-confirmation>span{color:#fff;background:#2f9b69;border:5px solid #fff;border-radius:999px;place-items:center;width:104px;height:104px;animation:.18s ease-out both recipe-save-confirmation-in;display:grid;box-shadow:0 18px 44px #185f4052}.recipe-save-confirmation svg{stroke-width:2.5px;width:58px;height:58px}@keyframes recipe-save-confirmation-in{0%{opacity:0;transform:scale(.72)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.recipe-save-confirmation>span{animation:none}}.recipe-form-error{color:#a34f42;background:#fff5f2;border:1px solid #f1cac2}.recipe-editor{width:min(100%,1040px)}.recipe-editor-main{gap:22px;min-width:0;display:grid}.recipe-form-section{border-bottom:1px solid #e0e5e1;min-width:0;padding:0 0 22px}.recipe-form-section h2{color:#2d3931;letter-spacing:-.02em;margin:0 0 13px;font-size:16px}.recipe-form-details{border:0;border-bottom:1px solid #e0e5e1;padding:0 0 22px}.recipe-form-details summary{color:#2d3931;cursor:pointer;font-size:14px;font-weight:720}.recipe-form-details-body{padding-top:14px}.recipe-section-card{background:#fff;border:1px solid #e0e5e1;border-radius:14px;padding:22px;box-shadow:0 2px 12px #1f2d2405}.recipe-section-card-nutrition{background:#fbfcfb}.recipe-section-heading{margin-bottom:17px}.recipe-section-heading p{color:#4d947b;letter-spacing:.08em;text-transform:uppercase;margin:0 0 4px;font-size:10px;font-weight:760}.recipe-section-heading h2{color:#2c3830;letter-spacing:-.03em;margin:0;font-size:17px}.recipe-section-heading span{color:#7b8780;max-width:670px;margin-top:4px;font-size:12px;line-height:1.55;display:block}.recipe-field-grid{gap:14px;display:grid}.recipe-field-grid-wide{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}.recipe-field-full{grid-column:1/-1}.recipe-field-span-two{grid-column:span 2}.recipe-time-fields{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:14px}.recipe-field,.recipe-macro-field{gap:6px;min-width:0;display:grid}.recipe-field>span,.recipe-macro-field>span{color:#56625b;font-size:11px;font-weight:690}.recipe-field>span b{color:#b34c3e;margin-left:3px}.recipe-field input,.recipe-field select,.recipe-field textarea,.ingredient-row input,.ingredient-row select,.recipe-step-row textarea,.recipe-macro-field input{color:#2d3931;background:#fff;border:1px solid #d9e0da;border-radius:8px;outline:none;width:100%;min-width:0;font-size:13px;transition:border-color .15s,box-shadow .15s}.recipe-field input,.recipe-field select,.ingredient-row input,.ingredient-row select,.recipe-macro-field input{height:39px;padding:0 11px}.recipe-field textarea,.recipe-step-row textarea{resize:vertical;padding:10px 11px;line-height:1.45;display:block}.recipe-field textarea{min-height:78px}.recipe-field input::placeholder,.recipe-field textarea::placeholder,.ingredient-row input::placeholder,.recipe-step-row textarea::placeholder,.recipe-macro-field input::placeholder{color:#a2aca6}.recipe-field input:focus,.recipe-field select:focus,.recipe-field textarea:focus,.ingredient-row input:focus,.ingredient-row select:focus,.recipe-step-row textarea:focus,.recipe-macro-field input:focus{border-color:#71a991;box-shadow:0 0 0 3px #498f7021}.recipe-input-suffix{background:#fff;border:1px solid #d9e0da;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-width:0;transition:border-color .15s,box-shadow .15s;display:grid;overflow:hidden}.recipe-input-suffix:focus-within{border-color:#71a991;box-shadow:0 0 0 3px #498f7021}.recipe-input-suffix input{border:0;border-radius:0;height:37px;box-shadow:none!important}.recipe-input-suffix>span,.recipe-input-suffix>small{color:#7e8a82;padding:0 10px 0 7px;font-size:11px;font-weight:650}.ingredient-column-labels,.ingredient-row{grid-template-columns:80px 68px minmax(220px,1.2fr) minmax(150px,.72fr) 34px;gap:8px;display:grid}.ingredient-column-labels{color:#909a94;text-transform:uppercase;margin-bottom:6px;padding:0 2px;font-size:10px;font-weight:700}.recipe-row-list,.recipe-step-list,.framework-role-list,.framework-step-list{gap:8px;display:grid}.ingredient-row{align-items:start}.recipe-ingredient-picker{z-index:0;min-width:0;position:relative}.recipe-ingredient-picker:focus-within{z-index:12}.recipe-ingredient-picker.is-selected input{background:#f6fbf7;border-color:#91bca8}.recipe-ingredient-picker-input{position:relative}.recipe-ingredient-picker-input input{padding-right:35px}.recipe-ingredient-picker-clear{color:#6b7b72;background:0 0;border:0;border-radius:6px;place-items:center;width:25px;height:25px;display:grid;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.recipe-ingredient-picker-clear:hover{color:#2c6d57;background:#edf7f0}.recipe-ingredient-picker-clear svg{width:13px;height:13px}.recipe-ingredient-picker-menu{z-index:20;background:#fff;border:1px solid #cfdcd4;border-radius:9px;max-height:250px;padding:5px;position:absolute;top:44px;left:0;right:0;overflow-y:auto;box-shadow:0 12px 24px #1f352a29}.recipe-ingredient-picker-menu button{color:#2e3b33;text-align:left;background:0 0;border:0;border-radius:6px;gap:2px;width:100%;padding:8px 9px;display:grid}.recipe-ingredient-picker-menu button:hover,.recipe-ingredient-picker-menu button.is-active{background:#eef7f1}.recipe-ingredient-picker-menu button span{font-size:12px;font-weight:720}.recipe-ingredient-picker-menu button small{color:#7f8d85;letter-spacing:.035em;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:650;overflow:hidden}.recipe-ingredient-picker-status{color:#68766e;margin:0;padding:8px 9px;font-size:11px;line-height:1.35}.recipe-ingredient-picker-status.is-error{color:#a34f42}.recipe-row-remove{color:#8a958e;background:#fff;border:1px solid #e7eae7;border-radius:8px;place-items:center;width:34px;height:39px;display:grid}.recipe-row-remove:hover:not(:disabled){color:#b85b4d;background:#fff6f3;border-color:#edc2ba}.recipe-row-remove:disabled{opacity:.38}.recipe-row-remove svg{width:16px;height:16px}.recipe-add-row{color:#347c65;background:0 0;border:0;align-items:center;gap:6px;margin-top:12px;padding:5px 0;font-size:12px;font-weight:740;display:inline-flex}.recipe-add-row:hover:not(:disabled){color:#1e5f4a}.recipe-add-row:disabled{opacity:.4}.recipe-add-row svg{width:15px;height:15px}.recipe-step-row{grid-template-columns:27px minmax(0,1fr) 34px;align-items:start;gap:9px;display:grid}.recipe-step-number{color:#46836f;background:#e8f4ee;border-radius:8px;place-items:center;width:27px;height:27px;margin-top:6px;font-size:11px;font-weight:780;display:grid}.recipe-step-row .recipe-row-remove{margin-top:1px}.recipe-macro-inputs{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.recipe-macro-field .recipe-input-suffix>span,.recipe-macro-field .recipe-input-suffix>small{font-size:10px}.recipe-tag-section{padding-bottom:20px}.recipe-tag-picker{border:0;margin:0;padding:0}.recipe-tag-picker legend{color:#2d3931;letter-spacing:-.02em;padding:0;font-size:16px;font-weight:720}.recipe-tag-picker-meta{color:#7a877f;justify-content:space-between;align-items:center;gap:12px;margin:6px 0 15px;font-size:11px;line-height:1.4;display:flex}.recipe-tag-picker-meta>span:last-child{color:#557062;flex:none;font-weight:720}.recipe-tag-groups{gap:12px;display:grid}.recipe-tag-group{grid-template-columns:112px minmax(0,1fr);align-items:start;gap:10px 14px;display:grid}.recipe-tag-group>p{color:#6d7972;letter-spacing:.045em;text-transform:uppercase;margin:7px 0 0;font-size:10px;font-weight:760;line-height:1.3}.recipe-tag-group>div{flex-wrap:wrap;gap:7px;display:flex}.recipe-tag{color:#65716a;cursor:pointer;background:#fff;border:1px solid #dce2dd;border-radius:999px;align-items:center;gap:6px;min-height:31px;padding:0 10px;font-size:11px;font-weight:650;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.recipe-tag:hover:has(input:not(:disabled)){background:#f8fcf9;border-color:#b4d3c3}.recipe-tag input{accent-color:#44856d;width:13px;height:13px;margin:0}.recipe-tag.is-selected{color:#34745e;background:#edf8f1;border-color:#a5c8b7}.recipe-tag:has(input:disabled){cursor:not-allowed;opacity:.48}.recipe-tag-picker-state{color:#718078;margin:0;font-size:11px;line-height:1.45}.recipe-tag-picker-state.is-error{color:#9c5145;background:#fff6f3;border:1px solid #f0cfc8;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;display:flex}.recipe-tag-picker-state button{color:#8d493e;background:#fff;border:1px solid #e4b9af;border-radius:6px;flex:none;min-height:27px;padding:0 8px;font-size:10px;font-weight:720}.framework-slot-picker{border:0;margin:18px 0 0;padding:0}.framework-slot-picker legend{color:#56625b;margin-bottom:8px;padding:0;font-size:11px;font-weight:690}.framework-slot-picker>div{flex-wrap:wrap;gap:7px;display:flex}.framework-slot{color:#65716a;cursor:pointer;background:#fff;border:1px solid #dce2dd;border-radius:999px;align-items:center;gap:6px;min-height:31px;padding:0 10px;font-size:11px;font-weight:650;display:inline-flex}.framework-slot input{accent-color:#44856d;width:13px;height:13px}.framework-slot.is-selected{color:#34745e;background:#edf8f1;border-color:#a5c8b7}.framework-picker-note,.framework-picker-error{margin:0;font-size:11px;line-height:1.45}.framework-picker-note{color:#718078}.framework-picker-error{color:#9c5145}.framework-role-card{background:#fcfdfc;border:1px solid #e4e8e4;border-radius:10px;padding:13px}.framework-role-card-header{color:#69756e;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:11px;font-weight:760;display:flex}.recipe-row-remove-text{color:#89938d;background:0 0;border:0;align-items:center;gap:4px;width:auto;height:auto;padding:3px 0;font-size:10px;font-weight:690;display:inline-flex}.recipe-row-remove-text svg{width:13px;height:13px}.framework-role-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.framework-role-candidates{grid-column:1/-1}.framework-candidate-picker{gap:7px;min-width:0;display:grid;position:relative}.framework-candidate-picker>label{color:#56625b;font-size:11px;font-weight:690}.framework-candidate-chips{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.framework-candidate-chips li{color:#315f4d;background:#eff8f2;border:1px solid #b8d5c5;border-radius:7px;align-items:center;gap:5px;max-width:100%;min-height:28px;padding:3px 4px 3px 8px;font-size:11px;font-weight:690;display:inline-flex}.framework-candidate-chips li>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.framework-candidate-chips li>small{color:#688176;max-width:130px;font-size:9px;font-weight:650}.framework-candidate-chips li.is-legacy{color:#805d21;background:#fff8e9;border-color:#e4c98d}.framework-candidate-chips li.is-legacy>small{color:#98733a}.framework-candidate-chips button{width:20px;height:20px;color:inherit;background:0 0;border:0;border-radius:5px;flex:none;place-items:center;padding:0;display:grid}.framework-candidate-chips button:hover{background:#3370551f}.framework-candidate-chips button svg{width:12px;height:12px}.framework-candidate-search{min-width:0;position:relative}.framework-candidate-search input{color:#2d3931;background:#fff;border:1px solid #d9e0da;border-radius:8px;outline:none;width:100%;min-width:0;height:39px;padding:0 11px;font-size:13px}.framework-candidate-search input:focus{border-color:#71a991;box-shadow:0 0 0 3px #498f7021}.framework-candidate-menu{z-index:25;background:#fff;border:1px solid #cfdcd4;border-radius:9px;max-height:250px;padding:5px;position:absolute;top:44px;left:0;right:0;overflow-y:auto;box-shadow:0 12px 24px #1f352a29}.framework-candidate-menu button{color:#2e3b33;text-align:left;background:0 0;border:0;border-radius:6px;gap:2px;width:100%;padding:8px 9px;display:grid}.framework-candidate-menu button:hover,.framework-candidate-menu button.is-active{background:#eef7f1}.framework-candidate-menu button span{font-size:12px;font-weight:720}.framework-candidate-menu button small{color:#7f8d85;letter-spacing:.035em;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:650;overflow:hidden}.framework-candidate-status{color:#68766e;margin:0;padding:8px 9px;font-size:11px;line-height:1.35}.framework-candidate-status.is-error{color:#a34f42}.framework-token-hint{color:#75817a;align-items:center;gap:6px;margin:10px 0 13px;font-size:11px;display:flex}.framework-token-hint svg{color:#819b66;width:15px;height:15px}.framework-token-hint code{color:#4b6b5d;background:#eff3ef;border-radius:4px;padding:2px 4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px}.recipe-editor-aside{gap:11px;display:grid;position:sticky;top:92px}.recipe-summary-card,.recipe-publish-card{background:#fff;border:1px solid #e0e5e1;border-radius:13px}.recipe-summary-card{padding:18px}.recipe-summary-icon{color:#347d65;background:#e4f3ed;border-radius:11px;width:38px;height:38px;margin-bottom:13px}.recipe-summary-icon.is-framework{color:#506f9e;background:#e9effa}.recipe-summary-card>p{color:#839087;letter-spacing:.07em;text-transform:uppercase;margin:0 0 4px;font-size:10px;font-weight:750}.recipe-summary-card h2{color:#2e3a32;letter-spacing:-.035em;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:18px;overflow:hidden}.recipe-summary-detail{color:#7d8981;min-height:18px;margin-top:4px;font-size:11px;display:block}.recipe-summary-metrics{border-top:1px solid #ecf0ec;gap:8px;margin:17px 0 0;padding-top:14px;display:grid}.recipe-summary-metrics>div{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.recipe-summary-metrics dt{color:#8b958f;font-size:11px}.recipe-summary-metrics dd{color:#445249;text-align:right;margin:0;font-size:11px;font-weight:730}.recipe-publish-card{background:#f5f8f4;gap:10px;padding:13px;display:flex}.recipe-publish-icon{color:#728c52;background:#e8f2d8;border-radius:8px;flex:none;place-items:center;width:26px;height:26px;display:grid}.recipe-publish-icon svg{width:14px;height:14px}.recipe-publish-card h2{color:#526059;margin:0;font-size:11px}.recipe-publish-card p{color:#7f8b83;margin:4px 0 0;font-size:10px;line-height:1.45}.recipe-submit-button{color:#20332a;background:#b8ee56;border:0;border-radius:10px;justify-content:center;align-items:center;gap:7px;min-height:43px;font-size:12px;font-weight:790;display:inline-flex;box-shadow:0 4px 10px #587f2529}.recipe-submit-button:hover:not(:disabled){background:#c4f468}.recipe-submit-button:disabled{opacity:.62}.recipe-submit-button svg{width:16px;height:16px}.recipe-form-actions{justify-content:flex-end;gap:9px;padding-top:22px;display:flex}.recipe-form-actions .recipe-submit-button,.recipe-secondary-button{min-width:126px;padding:0 16px}.recipe-secondary-button{color:#536159;background:#fff;border:1px solid #d7dfd9;border-radius:10px;min-height:43px;font-size:12px;font-weight:730}.recipe-secondary-button:hover:not(:disabled){background:#f7faf7;border-color:#b9c9bf}.recipe-secondary-button:disabled{opacity:.62}.recipe-submit-note{color:#89948d;text-align:center;margin:0;font-size:10px;line-height:1.45}@media (max-width:1120px){.recipe-editor{width:100%}}@media (max-width:900px){.mobile-panel-nav{background:#f7f8fa;border-bottom:1px solid #dde2de;gap:7px;padding:9px clamp(26px,4vw,64px);display:flex}.mobile-panel-nav a{color:#707d75;border-radius:7px;align-items:center;gap:6px;min-height:32px;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.mobile-panel-nav a svg{width:15px;height:15px}.mobile-panel-nav a.is-active{color:#2f745e;background:#e5f1ea}.recipes-workspace{padding-top:24px}}@media (max-width:720px){.recipes-workspace{padding:20px 16px 35px}.mobile-panel-nav{padding:8px 16px}.recipes-intro{gap:15px;margin-bottom:18px;display:grid}.recipes-intro h1{font-size:32px}.recipe-type-switch{flex-wrap:wrap}.recipe-field-grid-wide,.recipe-time-fields,.framework-role-fields,.recipe-macro-inputs{grid-template-columns:1fr}.recipe-field-full,.recipe-field-span-two,.framework-role-candidates{grid-column:auto}.recipe-tag-picker-meta{flex-direction:column;align-items:flex-start;gap:3px}.recipe-tag-group{grid-template-columns:1fr;gap:6px}.recipe-tag-group>p{margin-top:0}.ingredient-column-labels{display:none}.ingredient-row{background:#fcfdfc;border:1px solid #e7ebe7;border-radius:10px;grid-template-columns:minmax(0,1fr) 68px 34px;padding:10px}.ingredient-amount-input{grid-area:1/1}.ingredient-row>select{grid-area:1/2}.ingredient-row>.recipe-ingredient-picker{grid-area:2/1/auto/-2}.ingredient-note-input{grid-area:3/1/auto/-2}.ingredient-row>.recipe-row-remove{grid-area:1/3}.recipe-form-actions{justify-content:stretch}.recipe-form-actions .recipe-submit-button,.recipe-secondary-button{flex:1}.framework-token-hint{flex-wrap:wrap;align-items:flex-start}}@media (max-width:430px){.recipe-step-row{grid-template-columns:25px minmax(0,1fr)}.recipe-step-row .recipe-row-remove{grid-column:2;justify-self:end;margin-top:-40px}.recipe-step-row textarea{grid-column:2}}.recipe-library-copy>p{color:#79857e;max-width:395px;margin:5px 0 0;font-size:12px;line-height:1.55}.recipe-library-launcher{color:#36755f;background:#f5fbf7;border:1px solid #c8dcd1;border-radius:8px;align-items:center;gap:6px;min-height:31px;margin-top:12px;padding:0 10px;font-size:11px;font-weight:760;display:inline-flex}.recipes-intro-actions .recipe-library-launcher{margin-top:0}.recipe-library-launcher:hover{background:#edf8f1;border-color:#92bca8}.recipe-library-launcher svg{width:14px;height:14px}.recipe-library-drawer{color:#27352d;background:#fbfcfa;border:0;border-left:1px solid #dce9e2;width:min(100vw,520px);max-width:none;height:100dvh;max-height:none;margin:0;padding:0;transition:transform .22s cubic-bezier(.2,.8,.2,1);position:fixed;inset:0 0 0 auto;overflow:hidden;transform:translate(100%);box-shadow:-18px 0 46px #1431232e}.recipe-library-drawer[data-visible=true]{transform:translate(0)}.recipe-library-drawer::backdrop{opacity:0;background:#12281c52;transition:opacity .18s}.recipe-library-drawer[data-visible=true]::backdrop{opacity:1}.recipe-library-drawer-content{grid-template-rows:auto minmax(0,1fr);height:100%;display:grid}.recipe-library-drawer-header{background:#fff;border-bottom:1px solid #e5ebe6;justify-content:space-between;align-items:flex-start;gap:16px;padding:28px 28px 22px;display:flex}.recipe-library-drawer-header h2{color:#263129;letter-spacing:-.04em;margin:0;font-size:23px;font-weight:760}.recipe-library-drawer-header p:last-child{color:#728078;max-width:365px;margin:7px 0 0;font-size:12px;line-height:1.5}.recipe-library-drawer-header>button{color:#52645b;background:#fff;border:1px solid #d6dfd9;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;padding:0;display:grid}.recipe-library-drawer-header>button:hover{color:#17634f;background:#f4fbf7;border-color:#9ab8aa}.recipe-library-drawer-header>button svg{width:18px;height:18px}.recipe-library-drawer-body{align-content:start;gap:14px;min-height:0;padding:22px 28px 30px;display:grid;overflow-y:auto}.recipe-library-search{color:#637068;letter-spacing:.04em;text-transform:uppercase;gap:5px;font-size:10px;font-weight:740;display:grid}.recipe-library-search-input{color:#849088;background:#fff;border:1px solid #d9e0da;border-radius:9px;grid-template-columns:17px minmax(0,1fr);align-items:center;gap:7px;min-width:0;height:38px;padding:0 10px;transition:border-color .15s,box-shadow .15s;display:grid}.recipe-library-search-input:focus-within{border-color:#71a991;box-shadow:0 0 0 3px #498f7021}.recipe-library-search-input svg{width:17px;height:17px}.recipe-library-search-input input{color:#2d3931;background:0 0;border:0;outline:0;width:100%;min-width:0;height:100%;font-size:12px}.recipe-library-search-input input::placeholder{color:#a2aca6}.recipe-library-filters{flex-wrap:wrap;gap:6px;display:flex}.recipe-library-filters button{color:#6d7971;background:#fff;border:1px solid #dce3de;border-radius:999px;min-height:27px;padding:0 10px;font-size:10px;font-weight:720}.recipe-library-filters button:hover,.recipe-library-filters button.is-selected{color:#34745e;background:#edf8f1;border-color:#a5c8b7}.recipe-library-drawer-state{gap:10px;display:grid}.recipe-library-drawer-state>p{color:#7d8881;margin:0 0 10px;font-size:11px}.recipe-library-results{gap:8px;display:grid}.recipe-library-result{background:#fcfdfc;border:1px solid #e8ece8;border-radius:10px;grid-template-columns:29px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:11px;transition:border-color .15s,background .15s;display:grid}.recipe-library-result:hover,.recipe-library-result.is-editing{background:#f8fcf9;border-color:#b4d0c0}.recipe-library-result-copy{gap:3px;min-width:0;display:grid}.recipe-library-result-copy>div{align-items:baseline;gap:7px;min-width:0;display:flex}.recipe-library-result-copy strong{color:#344038;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.recipe-library-result-copy>div span,.recipe-library-result-copy small{color:#87928b;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.recipe-library-result-copy p{color:#748078;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:11px;line-height:1.4;overflow:hidden}.recipe-library-edit-action{color:#3f765f;background:#fff;border:1px solid #d9e3dc;border-radius:7px;align-items:center;gap:5px;min-height:30px;padding:0 9px;font-size:10px;font-weight:760;display:inline-flex}.recipe-library-edit-action:hover{background:#edf8f1;border-color:#8ebaa5}.recipe-library-edit-action svg{width:13px;height:13px}.recipe-library-no-results{color:#7b8780;text-align:center;padding:17px 0 5px;font-size:12px}.recipe-import-launcher{color:#496b9b;background:#f5f8fd;border-color:#cbd9ec}.recipe-import-launcher:hover:not(:disabled){background:#edf3fc;border-color:#9db9df}.recipe-import-launcher:disabled{cursor:not-allowed;opacity:.58}.framework-import-dialog{color:#27352d;opacity:0;background:#fff;border:1px solid #dce4ed;border-radius:15px;width:min(100vw - 32px,560px);max-width:none;margin:auto;padding:0;transition:opacity .18s,transform .18s;overflow:hidden;transform:translateY(10px)scale(.985);box-shadow:0 24px 70px #1431233d}.framework-import-dialog[data-visible=true]{opacity:1;transform:translateY(0)scale(1)}.framework-import-dialog::backdrop{opacity:0;background:#12281c52;transition:opacity .18s}.framework-import-dialog[data-visible=true]::backdrop{opacity:1}.framework-import-dialog-content{grid-template-rows:auto minmax(0,1fr) auto;display:grid}.framework-import-dialog-header{border-bottom:1px solid #e4e9e5;justify-content:space-between;align-items:flex-start;gap:16px;padding:25px 28px 19px;display:flex}.framework-import-dialog-header .recipes-kicker{color:#617fa8;margin-bottom:5px}.framework-import-dialog-header h2{color:#263129;letter-spacing:-.035em;margin:0;font-size:21px;font-weight:760}.framework-import-dialog-header p:last-child{color:#728078;max-width:425px;margin:7px 0 0;font-size:12px;line-height:1.5}.framework-import-dialog-header>button{color:#52645b;background:#fff;border:1px solid #d6dfd9;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;padding:0;display:grid}.framework-import-dialog-header>button:hover:not(:disabled){color:#17634f;background:#f4fbf7;border-color:#9ab8aa}.framework-import-dialog-header>button:disabled{cursor:wait;opacity:.55}.framework-import-dialog-header>button svg{width:18px;height:18px}.framework-import-dialog-body{gap:13px;padding:22px 28px 25px;display:grid}.framework-import-url-field{color:#637068;letter-spacing:.04em;text-transform:uppercase;gap:6px;font-size:10px;font-weight:740;display:grid}.framework-import-url-field input,.framework-import-url-field textarea{color:#2d3931;background:#fff;border:1px solid #d9e0da;border-radius:9px;outline:0;width:100%;min-height:40px;padding:0 11px;font-size:12px;transition:border-color .15s,box-shadow .15s}.framework-import-url-field textarea{resize:vertical;min-height:76px;padding:9px 11px}.framework-import-url-field input::placeholder,.framework-import-url-field textarea::placeholder{color:#a2aca6}.framework-import-url-field input:focus,.framework-import-url-field textarea:focus{border-color:#71a991;box-shadow:0 0 0 3px #498f7021}.framework-import-url-field input:disabled,.framework-import-url-field textarea:disabled{color:#87928b;background:#f6f8f6}.framework-import-error{color:#9c5145;background:#fff6f3;border:1px solid #f0cfc8;border-radius:8px;margin:0;padding:10px 11px;font-size:12px;line-height:1.45}.framework-import-note{color:#77847c;margin:0;font-size:11px;line-height:1.5}.framework-import-dialog-actions{padding:16px 28px calc(16px + env(safe-area-inset-bottom));background:#fcfdfc;border-top:1px solid #e5ebe6;justify-content:flex-end;gap:8px;display:flex}.framework-import-dialog-actions button{color:#52645b;background:#fff;border:1px solid #d6dfd9;border-radius:7px;justify-content:center;align-items:center;gap:6px;min-height:36px;padding:0 12px;font-size:12px;font-weight:720;display:inline-flex}.framework-import-dialog-actions button:hover:not(:disabled){color:#17634f;background:#f4fbf7;border-color:#9ab8aa}.framework-import-dialog-actions button:last-child{color:#fff;background:#36755f;border-color:#36755f}.framework-import-dialog-actions button:last-child:hover:not(:disabled){color:#fff;background:#17634f;border-color:#17634f}.framework-import-dialog-actions button:disabled{cursor:wait;opacity:.58}.framework-import-dialog-actions svg{width:14px;height:14px}.recipe-editor-mode-banner{background:#f1faf4;border:1px solid #c8dfd1;border-radius:11px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;padding:12px 14px;display:flex}.recipe-editor-mode-banner>div{gap:2px;min-width:0;display:grid}.recipe-editor-mode-banner p{color:#48806a;letter-spacing:.07em;text-transform:uppercase;margin:0;font-size:10px;font-weight:760}.recipe-editor-mode-banner strong{color:#315244;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.recipe-editor-mode-banner span{color:#698075;font-size:11px;line-height:1.4}.recipe-editor-mode-banner>button,.recipe-form-error button{color:#3b735d;background:#fff;border:1px solid #b9d3c3;border-radius:7px;flex:none;justify-content:center;align-items:center;gap:5px;min-height:30px;padding:0 10px;font-size:10px;font-weight:760;display:inline-flex}.recipe-editor-mode-banner>button:hover{background:#f8fdf9;border-color:#78a98e}.recipe-type-option:disabled{cursor:not-allowed;opacity:.58}.recipe-type-option:disabled:hover{background:#ffffffbf;border-color:#e0e5e1}.recipe-form-error{justify-content:space-between}.recipe-form-error>span{min-width:0}.recipe-form-error button{color:#934a3f;border-color:#e2b6ad}.recipe-form-error button:hover:not(:disabled){background:#fff}.recipe-form-error button:disabled{opacity:.6}.recipe-form-error button svg{width:13px;height:13px}@media (max-width:720px){.recipe-library-drawer{width:100vw}.recipe-library-drawer-header,.recipe-library-drawer-body,.framework-import-dialog-header,.framework-import-dialog-body,.framework-import-dialog-actions{padding-left:18px;padding-right:18px}.framework-import-dialog-actions{justify-content:stretch}.framework-import-dialog-actions button{flex:1}.recipe-library-result{grid-template-columns:29px minmax(0,1fr)}.recipe-library-edit-action{grid-column:2;justify-self:start;margin-top:2px}.recipe-editor-mode-banner{flex-direction:column;align-items:stretch}.recipe-editor-mode-banner>button{align-self:flex-start}}.food-plan-meal-detail-drawer{color:#26372d;background:#fffdf8;border:0;border-left:1px solid #dce9e2;width:min(100vw,540px);max-width:none;height:100dvh;max-height:none;margin:0;padding:0;transition:transform .22s cubic-bezier(.2,.8,.2,1);position:fixed;inset:0 0 0 auto;overflow:hidden;transform:translate(100%);box-shadow:-18px 0 46px #1431232e}.food-plan-meal-detail-drawer[data-visible=true]{transform:translate(0)}.food-plan-meal-detail-drawer::backdrop{opacity:0;background:#12281c52;transition:opacity .18s}.food-plan-meal-detail-drawer[data-visible=true]::backdrop{opacity:1}.food-plan-meal-detail-drawer-content{grid-template-rows:auto minmax(0,1fr);height:100%;display:grid}.food-plan-meal-detail-drawer-header{background:#fffdf8;border-bottom:1px solid #e6e8df;justify-content:space-between;align-items:flex-start;gap:16px;padding:28px 28px 22px;display:flex}.food-plan-meal-detail-drawer-header .section-kicker{color:#478266;margin-bottom:5px}.food-plan-meal-detail-drawer-header h2{color:#26372d;letter-spacing:-.04em;max-width:400px;margin:0;font-size:23px;font-weight:770;line-height:1.14}.food-plan-meal-detail-drawer-header p{color:#66756d;max-width:400px;margin:8px 0 0;font-size:12px;font-weight:560;line-height:1.45}.food-plan-meal-detail-drawer-header .food-plan-meal-detail-header-serving-mass{color:#3e7458;margin-top:3px;font-size:11px;font-weight:700}.food-plan-meal-detail-drawer-header>button{color:#52645b;background:#fff;border:1px solid #d6dfd9;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;padding:0;display:grid}.food-plan-meal-detail-drawer-header>button:hover{color:#17634f;background:#f4fbf7;border-color:#9ab8aa}.food-plan-meal-detail-drawer-header>button:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.food-plan-meal-detail-drawer-header>button svg{width:18px;height:18px}.food-plan-meal-detail-drawer-body{min-height:0;padding:24px 28px calc(30px + env(safe-area-inset-bottom));overflow-y:auto}.food-plan-meal-detail-loading{gap:12px;padding:4px 0;display:grid}.food-plan-meal-detail-loading-line,.food-plan-meal-detail-loading-card{background:linear-gradient(90deg,#eef2ef 25%,#f7f9f7 40%,#eef2ef 60%) 0 0/300% 100%;border-radius:8px;animation:1.4s ease-in-out infinite food-plan-meal-detail-shimmer;display:block}.food-plan-meal-detail-loading-line{width:42%;height:13px}.food-plan-meal-detail-loading-line-wide{width:75%;height:20px}.food-plan-meal-detail-loading-card{height:92px}@keyframes food-plan-meal-detail-shimmer{0%{background-position:100% 0}to{background-position:0 0}}.food-plan-meal-detail-error{color:#8f493e;background:#fff6f3;border:1px solid #f0cfc8;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:13px 14px;display:flex}.food-plan-meal-detail-error p{margin:0;font-size:12px;font-weight:580;line-height:1.45}.food-plan-meal-detail-error button{color:#934a3f;background:#fff;border:1px solid #e2b6ad;border-radius:7px;flex:none;min-height:32px;padding:0 10px;font-size:11px;font-weight:730}.food-plan-meal-detail-error button:hover{background:#fffaf9;border-color:#cc8e83}.food-plan-meal-detail-section-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.food-plan-meal-detail-count{letter-spacing:.055em;text-transform:uppercase;color:#6f7f74;background:#f0f4f1;border-radius:999px;flex:none;align-items:center;min-height:22px;padding:0 8px;font-size:9px;font-weight:760;line-height:1;display:inline-flex}.food-plan-meal-detail-section{margin-top:25px}.food-plan-meal-detail-nutrition-section{margin-top:0}.food-plan-meal-detail-section-heading>div>span{color:#74847a;letter-spacing:.075em;text-transform:uppercase;margin-bottom:4px;font-size:9px;font-weight:760;line-height:1.25;display:block}.food-plan-meal-detail-section-heading h3{color:#2d3c33;letter-spacing:-.02em;margin:0;font-size:15px;font-weight:750;line-height:1.22}.food-plan-meal-detail-macros{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:0;display:grid}.food-plan-meal-detail-macro{text-align:center;min-width:0}.food-plan-meal-detail-macros dt{color:#64776b;letter-spacing:.02em;font-size:10px;font-weight:760;line-height:1.25}.food-plan-meal-detail-macros dd{aspect-ratio:1;width:clamp(58px,15vw,78px);margin:8px auto 0;position:relative}.food-plan-meal-detail-macros svg{width:100%;height:100%;overflow:visible;transform:rotate(-90deg)}.food-plan-meal-detail-macros circle{fill:none}.food-plan-meal-detail-macro-track{stroke:#e8eeea;stroke-width:4.5px}.food-plan-meal-detail-macro-progress{stroke-linecap:round;stroke-width:4.5px}.food-plan-meal-detail-macro-overflow{stroke-linecap:butt;stroke-width:4.5px}.food-plan-meal-detail-macro-value{color:#2c4034;letter-spacing:-.045em;place-content:center;font-size:clamp(12px,2.5vw,16px);font-weight:780;line-height:1;display:grid;position:absolute;inset:0}.food-plan-meal-detail-macro-value small{color:#77877d;letter-spacing:0;margin-top:2px;font-size:8px;font-weight:700}.food-plan-meal-detail-macros p{color:#829087;margin:8px 0 0;font-size:9px;font-weight:580;line-height:1.35}.food-plan-meal-detail-macros p strong{color:#51665a;font-weight:760}.food-plan-meal-detail-mini-nutrition-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:15px 0 0;display:grid}.food-plan-meal-detail-mini-nutrition{text-align:center;min-width:0}.food-plan-meal-detail-mini-nutrition dt{color:#77877d;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:700;line-height:1.25;overflow:hidden}.food-plan-meal-detail-mini-nutrition dd{aspect-ratio:1;width:clamp(42px,11vw,54px);margin:6px auto 0;position:relative}.food-plan-meal-detail-mini-nutrition svg{width:100%;height:100%;transform:rotate(-90deg)}.food-plan-meal-detail-mini-nutrition circle{fill:none}.food-plan-meal-detail-mini-nutrition-track{stroke:#edf1ee;stroke-width:3.2px}.food-plan-meal-detail-mini-nutrition-ring{stroke-linecap:round;stroke-width:3.2px;stroke-dasharray:72 100}.food-plan-meal-detail-mini-nutrition dd>span{color:#47594e;letter-spacing:-.04em;place-content:center;font-size:10px;font-weight:730;line-height:1;display:grid;position:absolute;inset:0}.food-plan-meal-detail-mini-nutrition dd small{color:#8a968e;letter-spacing:0;margin-top:1px;font-size:7px;font-weight:700}.food-plan-meal-detail-ingredients{margin:7px 0 0;padding:0;list-style:none;display:block}.food-plan-meal-detail-ingredients li{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:14px;min-width:0;padding:7px 0;display:grid}.food-plan-meal-detail-ingredient-groups{gap:13px;margin-top:13px;display:grid}.food-plan-meal-detail-ingredient-group{border-top:1px solid #e4ebe5;padding-top:10px}.food-plan-meal-detail-ingredient-group-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.food-plan-meal-detail-ingredient-group-heading h4{color:#708078;letter-spacing:.045em;text-transform:uppercase;margin:0;font-size:10px;font-weight:760}.food-plan-meal-detail-ingredient-group-heading>button{color:#287354;background:0 0;border:0;align-items:center;gap:5px;padding:2px 0;font-size:11px;font-weight:750;display:inline-flex}.food-plan-meal-detail-ingredient-group-heading>button:hover{color:#144b37}.food-plan-meal-detail-ingredient-group-heading>button:disabled{cursor:not-allowed;opacity:.35}.food-plan-meal-detail-ingredient-group-heading>button>span{border:1px solid;border-radius:50%;place-items:center;width:17px;height:17px;font-size:14px;font-weight:550;line-height:1;display:grid}.food-plan-meal-detail-empty-group{color:#96a29b;margin:7px 0 0;font-size:11px;font-style:italic}.food-plan-meal-detail-ingredient-name{align-items:center;gap:7px;min-width:0;display:flex}.food-plan-meal-detail-ingredient-name>button{color:#99a69e;background:0 0;border:0;flex:none;place-items:center;width:19px;height:22px;padding:0;display:grid}.food-plan-meal-detail-ingredient-name>button:hover{color:#9b554a}.food-plan-meal-detail-ingredient-name>button:focus-visible{outline-offset:1px;border-radius:4px;outline:2px solid #499b74}.food-plan-meal-detail-ingredient-name>button svg{width:15px;height:15px}.food-plan-meal-detail-ingredient-name>div{gap:2px;min-width:0;display:grid}.food-plan-meal-detail-ingredient-name>div>span{color:#849087;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:570;line-height:1.25;overflow:hidden}.food-plan-meal-detail-ingredients li strong{color:#33453a;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:690;overflow:hidden}.food-plan-meal-detail-ingredient-editor{align-items:center;gap:8px;display:flex}.food-plan-meal-detail-ingredient-quantity{color:#506158;white-space:nowrap;font-size:12px;font-weight:730}.food-plan-meal-detail-ingredient-editor label{background:#fff;border:1px solid #d6e0d9;border-radius:7px;align-items:center;width:82px;padding:0 7px;display:flex}.food-plan-meal-detail-ingredient-editor input{color:#1e694c;width:100%;min-width:0;font:inherit;text-align:right;background:0 0;border:0;padding:6px 0;font-size:12px;font-weight:730}.food-plan-meal-detail-ingredient-editor input:focus{outline:0}.food-plan-meal-detail-ingredient-editor label:focus-within{border-color:#499b74;box-shadow:0 0 0 3px #499b7426}.food-plan-meal-detail-ingredient-editor label>span:last-child{color:#829087;margin-left:4px;font-size:10px;font-weight:680}.food-plan-meal-detail-ingredient-editor>button{color:#a05d53;background:0 0;border:0;padding:3px 0;font-size:10px;font-weight:700}.food-plan-meal-detail-ingredient-editor>button:hover{color:#7e3e35;text-decoration:underline}.food-plan-meal-detail-save-error{color:#a04f45;margin:13px 0 0;font-size:11px;font-weight:620}.food-plan-meal-detail-save-row{justify-content:space-between;align-items:center;gap:14px;margin-top:15px;padding-top:14px;display:flex}.food-plan-meal-detail-save-row>span{color:#7d8b82;font-size:10px;line-height:1.35}.food-plan-meal-detail-save-row>button{color:#fff;background:#287354;border:1px solid #287354;border-radius:7px;flex:none;min-height:33px;padding:0 11px;font-size:11px;font-weight:760}.food-plan-meal-detail-save-row>button:hover:not(:disabled){background:#19543e;border-color:#19543e}.food-plan-meal-detail-save-row>button:disabled{cursor:not-allowed;opacity:.55}.food-plan-meal-detail-manual-footer{align-items:flex-start}.food-plan-meal-detail-manual-footer>div{gap:.35rem;display:grid}.food-plan-meal-detail-manual-footer p{color:#718078;max-width:18rem;margin:0;font-size:11px;line-height:1.45}.food-plan-meal-detail-manual-footer .food-plan-meal-detail-manual-action-error{color:#a04f45;font-weight:650}.food-plan-meal-detail-manual-save,.food-plan-meal-detail-manual-remove{color:#fff;border-radius:7px;flex:none;min-height:36px;padding:0 12px;font-size:11px;font-weight:760}.food-plan-meal-detail-manual-save{background:#287354;border:1px solid #287354}.food-plan-meal-detail-manual-save:hover:not(:disabled){background:#19543e;border-color:#19543e}.food-plan-meal-detail-manual-remove{background:#ad3f35;border:1px solid #b8473c}.food-plan-meal-detail-manual-remove:hover:not(:disabled){background:#922f29;border-color:#922f29}.food-plan-meal-detail-manual-save:disabled,.food-plan-meal-detail-manual-remove:disabled{cursor:wait;opacity:.62}.food-plan-meal-detail-discard-dialog{color:#26372d;background:#fffdf8;border:1px solid #d9e4dc;border-radius:12px;width:min(100%,330px);margin:auto;padding:0;box-shadow:0 18px 50px #14312347}.food-plan-meal-detail-discard-dialog::backdrop{background:#12281c61}.food-plan-meal-detail-discard-dialog>section{padding:19px}.food-plan-meal-detail-discard-dialog h3{letter-spacing:-.02em;margin:0;font-size:16px}.food-plan-meal-detail-discard-dialog p{color:#718078;margin:7px 0 0;font-size:12px;line-height:1.45}.food-plan-meal-detail-discard-dialog section>div{justify-content:flex-end;gap:8px;margin-top:17px;display:flex}.food-plan-meal-detail-discard-dialog button{color:#52645b;background:#fff;border:1px solid #cfdbd3;border-radius:7px;min-height:32px;padding:0 10px;font-size:11px;font-weight:740}.food-plan-meal-detail-discard-dialog button:last-child{color:#fff;background:#a75a4e;border-color:#ad6257}.food-plan-meal-detail-discard-dialog button:last-child:hover{background:#884237;border-color:#884237}.food-plan-meal-detail-add-popup{color:#26372d;background:#fffdf8;border:1px solid #d9e4dc;border-radius:12px;width:min(100%,390px);max-height:min(580px,100dvh - 36px);margin:auto;padding:0;overflow:auto;box-shadow:0 18px 50px #14312347}.food-plan-meal-detail-add-popup::backdrop{background:#12281c61}.food-plan-meal-detail-add-popup>section{padding:18px}.food-plan-meal-detail-add-popup-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.food-plan-meal-detail-add-popup-heading span{color:#74847a;letter-spacing:.07em;text-transform:uppercase;font-size:9px;font-weight:750;display:block}.food-plan-meal-detail-add-popup-heading h3{letter-spacing:-.02em;margin:3px 0 0;font-size:16px}.food-plan-meal-detail-add-popup-heading>button{color:#52645b;background:#fff;border:1px solid #d6dfd9;border-radius:50%;width:28px;height:28px;font-size:20px;line-height:1}.food-plan-meal-detail-add-search{margin-top:16px;display:block}.food-plan-meal-detail-add-search input{color:#26372d;width:100%;font:inherit;background:#fff;border:1px solid #ccd9d0;border-radius:8px;padding:9px 10px;font-size:13px}.food-plan-meal-detail-add-search input:focus{outline-offset:1px;border-color:#499b74;outline:2px solid #499b742e}.food-plan-meal-detail-add-results{gap:3px;margin-top:12px;display:grid}.food-plan-meal-detail-add-results>p{color:#7a8980;margin:4px 0;font-size:11px;line-height:1.45}.food-plan-meal-detail-add-results>p.is-error{color:#a04f45}.food-plan-meal-detail-add-results>button{color:#33453a;text-align:left;background:0 0;border:1px solid #0000;border-radius:7px;gap:2px;width:100%;padding:9px 8px;display:grid}.food-plan-meal-detail-add-results>button:hover{background:#f2f8f4;border-color:#d8e7dd}.food-plan-meal-detail-add-results>button strong{font-size:12px;font-weight:720}.food-plan-meal-detail-add-results>button span{color:#829087;text-transform:capitalize;font-size:9px;font-weight:650}.food-plan-meal-detail-ingredients li>div:first-child>span{color:#849087;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:540;overflow:hidden}.food-plan-meal-detail-ingredient-amount{flex:none;justify-items:end;gap:3px;display:grid}.food-plan-meal-detail-ingredient-amount>span{color:#9a6b19;letter-spacing:.05em;text-transform:uppercase;font-size:8px;font-weight:700}.food-plan-meal-detail-ingredient-amount>strong{color:#1e694c;font-size:13px;font-weight:730}.food-plan-meal-detail-instructions{counter-reset:food-plan-meal-instruction;gap:9px;margin:13px 0 0;padding:0;list-style:none;display:grid}.food-plan-meal-detail-instructions li{color:#46584d;counter-increment:food-plan-meal-instruction;grid-template-columns:24px minmax(0,1fr) auto;align-items:start;gap:9px;font-size:12px;font-weight:560;line-height:1.5;display:grid}.food-plan-meal-detail-instructions li:before{color:#307557;content:counter(food-plan-meal-instruction);background:#e7f4eb;border-radius:50%;place-items:center;width:24px;height:24px;font-size:10px;font-weight:760;line-height:1;display:grid}.food-plan-meal-detail-instructions small{color:#839087;white-space:nowrap;margin-top:3px;font-size:9px;font-weight:650;line-height:1.3}.food-plan-meal-detail-empty-instructions{color:#718078;background:#f7f9f7;border:1px solid #e1e7e3;border-radius:8px;margin:13px 0 0;padding:11px 12px;font-size:11px;line-height:1.45}@media (max-width:720px){.admin-ingredients-workspace{padding:22px 18px 42px}.admin-ingredients-intro{flex-direction:column;align-items:flex-start}.admin-ingredients-layout{min-width:0}.admin-ingredients-table-header{flex-direction:column;align-items:stretch}.admin-ingredients-search input{width:100%}.admin-ingredient-editor-drawer,.admin-ingredient-usage-drawer{width:100vw}.admin-ingredient-editor-drawer-header,.admin-ingredient-usage-drawer-header,.admin-ingredient-editor-drawer-body,.admin-ingredient-usage-drawer-body{padding-left:18px;padding-right:18px}.food-plan-meal-detail-drawer{width:100vw}.food-plan-meal-detail-drawer-header,.food-plan-meal-detail-drawer-body{padding-left:18px;padding-right:18px}}@media (max-width:390px){.food-plan-meal-detail-ingredients li{flex-direction:column;align-items:flex-start;gap:7px}.food-plan-meal-detail-ingredient-amount{justify-items:start}}@media (prefers-reduced-motion:reduce){.food-plan-meal-detail-drawer,.food-plan-meal-detail-drawer::backdrop{transition:none}.food-plan-meal-detail-loading-line,.food-plan-meal-detail-loading-card{animation:none}}.popup-drawer{width:min(100vw,500px);max-width:none;height:100dvh;max-height:none;color:var(--ink);background:#fffdf8;border:0;border-left:1px solid #dce9e2;margin:0;padding:0;transition:transform .22s cubic-bezier(.2,.8,.2,1);position:fixed;inset:0 0 0 auto;overflow:hidden;transform:translate(100%);box-shadow:-18px 0 46px #1431232e}.popup-drawer[data-visible=true]{transform:translate(0)}.popup-drawer::backdrop{opacity:0;background:#12281c52;transition:opacity .18s}.popup-drawer[data-visible=true]::backdrop{opacity:1}.popup-drawer-content{grid-template-rows:auto minmax(0,1fr);height:100%;display:grid}.popup-drawer-content[data-has-footer=true]{grid-template-rows:auto minmax(0,1fr) auto}.popup-drawer-header{background:#fffdf8;border-bottom:1px solid #e9e4d9;justify-content:space-between;align-items:flex-start;gap:16px;padding:28px 28px 22px;display:flex}.popup-drawer-body{min-height:0;padding:25px 28px 30px;overflow-y:auto}.popup-drawer-footer{padding:16px 28px calc(16px + env(safe-area-inset-bottom));background:#fffdf8fa;border-top:1px solid #e9e4d9;justify-content:space-between;align-items:center;gap:12px;display:flex}.planner-plan-drawer-body{display:block}.planner-plan-drawer .planner-plan-form{gap:20px;padding:0;display:grid;overflow:visible}.planner-plan-drawer-footer{justify-content:flex-end}.plan-reversal-drawer .section-kicker{color:#478266;margin-bottom:5px}.plan-reversal-drawer h2{color:#26372d;letter-spacing:-.04em;margin:0;font-size:23px;font-weight:770;line-height:1.14}.plan-reversal-drawer .popup-drawer-header p{color:#657168;margin:7px 0 0;font-size:14px;line-height:1.45}.plan-reversal-warning,.plan-reversal-state,.plan-reversal-error,.plan-reversal-notice{border-radius:10px;margin:0;padding:12px 13px;font-size:14px;line-height:1.45}.plan-reversal-warning{color:#5f4a17;background:#fff6d9}.plan-reversal-state{color:#657168;background:#f5f8f5;margin-top:16px}.plan-reversal-filter{border:0;margin:22px 0 0;padding:0}.plan-reversal-filter .field-label{margin-bottom:3px}.plan-reversal-date-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.plan-reversal-date-control{color:#657168;gap:6px;font-size:13px;font-weight:700;display:grid}.plan-reversal-date-control input{color:#26372d;min-width:0;font:inherit;background:#fff;border:1px solid #dbe6df;border-radius:8px;padding:10px}.plan-reversal-filter-help{color:#657168;margin:12px 0 0;font-size:13px;line-height:1.45}.plan-reversal-filter-help.is-ready{color:#1f6243}@media (max-width:420px){.plan-reversal-date-grid{grid-template-columns:1fr}}.plan-reversal-error,.plan-reversal-notice{margin-top:16px}.plan-reversal-error{color:#9f2d25;background:#fff0ee}.plan-reversal-notice{color:#1f6243;background:#edf8f0}.plan-reversal-footer{justify-content:flex-end}.plan-reversal-selection-count{color:#657168;margin-right:auto;font-size:.8rem}.plan-reversal-footer button{font:inherit;letter-spacing:.02em;cursor:pointer;border:0;border-radius:8px;padding:10px 12px;font-size:12px;font-weight:800}.plan-reversal-revoke{color:#1d5f42;background:#e1f2e6}.plan-reversal-delete{color:#fff;background:#ad3f35}.plan-reversal-footer button:disabled{cursor:not-allowed;opacity:.48}.plan-reversal-delete-confirmation{color:#26312b;background:#fff;border:0;border-radius:14px;width:min(100vw - 32px,440px);max-width:none;margin:auto;padding:0;overflow:hidden;box-shadow:0 24px 68px #0d14103d}.plan-reversal-delete-confirmation::backdrop{background:#0b0c0e75}.plan-reversal-delete-confirmation-content{padding:24px}.plan-reversal-delete-confirmation-content h2{color:#202724;letter-spacing:-.03em;margin:0;font-size:18px;font-weight:760}.plan-reversal-delete-confirmation-content p{color:#6e7974;margin:9px 0 0;font-size:13px;line-height:1.5}.plan-reversal-delete-confirmation-content .plan-reversal-delete-confirmation-warning{color:#9f2d25}.plan-reversal-delete-confirmation-actions{justify-content:flex-end;gap:8px;margin-top:22px;display:flex}.plan-reversal-delete-confirmation-actions button{color:#46524c;min-height:38px;font:inherit;cursor:pointer;background:#eef1f0;border:0;border-radius:7px;padding:0 12px;font-size:13px;font-weight:720}.plan-reversal-delete-confirmation-actions button:hover{color:#26312b;background:#e3e8e5}.plan-reversal-delete-confirmation-actions .plan-reversal-delete-confirmation-confirm{color:#fff;background:#ad3f35}.plan-reversal-delete-confirmation-actions .plan-reversal-delete-confirmation-confirm:hover{color:#fff;background:#922f29}@media (max-width:720px){.popup-drawer{width:100vw}.popup-drawer-header,.popup-drawer-body,.popup-drawer-footer{padding-left:18px;padding-right:18px}}@media (prefers-reduced-motion:reduce){.popup-drawer,.popup-drawer::backdrop{transition:none}}.food-plan-analysis-drawer{border-left:1px solid #dce9e2;border-right:0;width:min(100vw,460px);position:fixed;inset:0 0 0 auto;transform:translate(100%);box-shadow:-18px 0 46px #1431232e}.food-plan-analysis-drawer[data-visible=true]{transform:translate(0)}.food-plan-analysis-drawer-header .section-kicker{color:#478266;margin-bottom:5px}.food-plan-analysis-drawer-header h2{color:#26372d;letter-spacing:-.04em;margin:0;font-size:23px;font-weight:770;line-height:1.14}.food-plan-analysis-drawer-header p{color:#66756d;max-width:350px;margin:8px 0 0;font-size:12px;font-weight:560;line-height:1.45}.food-plan-analysis-drawer-header>button{color:#52645b;background:#fff;border:1px solid #d6dfd9;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;padding:0;display:grid}.food-plan-analysis-drawer-header>button:hover{color:#17634f;background:#f4fbf7;border-color:#9ab8aa}.food-plan-analysis-drawer-header>button:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.food-plan-analysis-drawer-header>button svg{width:18px;height:18px}.food-plan-analysis-drawer-body{padding-top:22px}.food-plan-analysis-range{gap:8px;margin:0 0 22px;display:grid}.food-plan-analysis-range-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.food-plan-analysis-range-fields label{gap:5px;min-width:0;display:grid}.food-plan-analysis-range-fields label>span{color:#718078;font-size:9px;font-weight:700}.food-plan-analysis-range-fields input{color:#33453a;width:100%;min-width:0;height:34px;font:inherit;background:#fff;border:1px solid #cadbd1;border-radius:6px;padding:0 7px;font-size:10px}.food-plan-analysis-range-fields input:focus-visible{outline:2px solid var(--teal);outline-offset:1px}.food-plan-analysis-range>p{color:#718078;margin:0;font-size:10px;line-height:1.4}.food-plan-analysis-drawer-footer{justify-content:flex-end}.food-plan-analysis-intro{color:#718078;margin:0 0 19px;font-size:12px;font-weight:560;line-height:1.45}.food-plan-analysis-macros{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:0;display:grid}.food-plan-analysis-macro{text-align:center;min-width:0}.food-plan-analysis-macros dt{color:#64776b;letter-spacing:.02em;font-size:10px;font-weight:760;line-height:1.25}.food-plan-analysis-macros dd{aspect-ratio:1;width:clamp(60px,16vw,78px);margin:8px auto 0;position:relative}.food-plan-analysis-macros svg{width:100%;height:100%;overflow:visible;transform:rotate(-90deg)}.food-plan-analysis-macros circle{fill:none}.food-plan-analysis-macro-track{stroke:#e8eeea;stroke-width:4.5px}.food-plan-analysis-macro-progress,.food-plan-analysis-macro-overflow{stroke-width:4.5px}.food-plan-analysis-macro-progress{stroke-linecap:round}.food-plan-analysis-macro-overflow{stroke-linecap:butt}.food-plan-analysis-macro-value{color:#2c4034;letter-spacing:-.045em;place-content:center;font-size:clamp(12px,2.5vw,16px);font-weight:780;line-height:1;display:grid;position:absolute;inset:0}.food-plan-analysis-macro-value small{color:#77877d;letter-spacing:0;margin-top:2px;font-size:8px;font-weight:700}.food-plan-analysis-macros p{color:#829087;min-height:25px;margin:8px 0 0;font-size:9px;font-weight:580;line-height:1.35}.food-plan-analysis-macros p strong{color:#51665a;font-weight:760}.food-plan-analysis-bar-chart{border-top:1px solid #e4ebe5;margin-top:26px;padding-top:19px}.food-plan-analysis-bar-chart-heading{justify-content:space-between;align-items:end;gap:12px;display:flex}.food-plan-analysis-bar-chart-heading>div>span{color:#718078;letter-spacing:.075em;text-transform:uppercase;margin-bottom:3px;font-size:9px;font-weight:760;line-height:1.2;display:block}.food-plan-analysis-bar-chart-heading h3{color:#33453a;letter-spacing:-.015em;margin:0;font-size:14px;font-weight:740}.food-plan-analysis-bar-chart-heading small{color:#829087;flex:none;font-size:9px;font-weight:650}.food-plan-analysis-metric-charts{gap:21px;margin-top:16px;display:grid}.food-plan-analysis-metric-chart{min-width:0}.food-plan-analysis-metric-chart header{align-items:center;gap:6px;display:flex}.food-plan-analysis-metric-chart header>span{border-radius:2px;flex:none;width:8px;height:8px}.food-plan-analysis-metric-chart h4{color:#3b4c42;margin:0;font-size:11px;font-weight:760}.food-plan-analysis-metric-chart header small{color:#829087;margin-left:auto;font-size:9px;font-weight:680}.food-plan-analysis-metric-days{grid-template-columns:repeat(auto-fit,minmax(42px,1fr));gap:7px;margin-top:9px;display:grid}.food-plan-analysis-metric-day{text-align:center;grid-template-rows:auto 94px auto;gap:5px;min-width:0;display:grid}.food-plan-analysis-metric-day>small,.food-plan-analysis-metric-day>span{color:#77877d;text-overflow:ellipsis;white-space:nowrap;font-size:8px;font-weight:680;line-height:1.2;overflow:hidden}.food-plan-analysis-metric-day>small{color:#52645b;font-weight:750}.food-plan-analysis-metric-day>span{gap:1px;display:grid}.food-plan-analysis-metric-day>span small{color:#9aa59f;font-size:7px;font-weight:700}.food-plan-analysis-metric-track{background:linear-gradient(0deg,#e8eeea47 1px,#0000 1px) 0 0/100% 25%;border-bottom:1px solid #dce5df;min-width:0;position:relative}.food-plan-analysis-metric-bar{border-radius:4px 4px 0 0;min-height:1px;position:absolute;bottom:0;left:16%;right:16%}.food-plan-analysis-metric-target{z-index:1;border-top:1.5px dashed #52645b;position:absolute;left:4%;right:4%}.food-plan-analysis-note{color:#7b8981;border-top:1px solid #e4ebe5;margin:23px 0 0;padding-top:16px;font-size:11px;line-height:1.5}.food-plan-analysis-empty{color:#718078;margin:0;font-size:12px;line-height:1.45}@media (max-width:720px){.food-plan-analysis-drawer{width:100vw}}.food-plan-approval-list{gap:.75rem;display:grid}.plan-review-day-list{gap:1.1rem;display:grid}.plan-review-selection-actions{gap:.45rem;margin:0 0 1rem;display:flex}.plan-review-selection-actions button{color:#2c7355;cursor:pointer;font:inherit;background:0 0;border:0;padding:0;font-size:.8rem;font-weight:750}.plan-review-selection-actions button+button:before{content:"·";color:#9eaba3;margin-right:.45rem}.plan-review-selection-actions button:disabled{cursor:not-allowed;opacity:.5}.plan-review-selection-hint{color:#7b8981;margin:0 0 1rem;font-size:.78rem;line-height:1.4}.plan-review-day{gap:.45rem;display:grid}.plan-review-day h3{color:#52645b;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:800}.plan-review-day h3:before,.plan-review-day h3:after{content:"—";color:#9eaba3;margin:0 .4rem}.plan-review-activities{gap:.5rem;display:grid}.plan-review-activity{border:1px solid var(--line,#d8d8d8);border-radius:.75rem;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem .85rem;display:flex}.plan-review-activity>div{flex-wrap:wrap;align-items:baseline;gap:.35rem .55rem;display:flex}.plan-review-status{color:#8a5d00;font-size:.75rem;font-weight:700}.plan-review-activity p{color:#7b8981;width:100%;margin:0;font-size:.75rem}.plan-review-activity-select{cursor:pointer;flex:none;place-items:center;width:1.35rem;height:1.35rem;display:grid}.plan-review-activity-select input{accent-color:#36755f;width:1.1rem;height:1.1rem;cursor:inherit;margin:0}.plan-review-activity-select:has(input:disabled){cursor:not-allowed;opacity:.5}.plan-review-activity button{color:#fff;cursor:pointer;font:inherit;background:#1f6d4d;border:0;border-radius:.55rem;flex:none;padding:.5rem .75rem;font-weight:750}.plan-review-activity button:disabled{cursor:not-allowed;opacity:.55}.plan-review-approval-footer{color:#657168;font-size:.8rem}.plan-review-approval-footer button{border:1px solid var(--teal);color:#fff;background:var(--teal);min-height:38px;font:inherit;border-radius:7px;padding:0 12px;font-size:.8rem;font-weight:720}.plan-review-approval-footer button:hover:not(:disabled){background:#17634f;border-color:#17634f}.plan-review-approval-footer button:disabled{cursor:not-allowed;opacity:.55}.food-plan-approval-card{border:1px solid var(--line,#d8d8d8);border-radius:.75rem;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem;display:flex}.food-plan-approval-card p,.food-plan-approval-empty,.food-plan-approval-error{margin:.3rem 0 0}.food-plan-approval-card button{color:#fff;cursor:pointer;font:inherit;background:#1f6d4d;border:0;border-radius:.55rem;flex:none;padding:.5rem .75rem;font-weight:750}.food-plan-approval-card button:disabled{cursor:progress;opacity:.65}.food-plan-approval-error{color:#b42318}@media (max-width:640px){.food-plan-approval-card,.plan-review-activity{flex-direction:column;align-items:flex-start}}@media (max-width:900px){.app-header{left:0}}@media (max-width:720px){.planner-client-toolbar{flex-direction:column;align-items:stretch;display:flex}.planner-toolbar-actions{width:100%;margin-left:0}.planner-toolbar-actions .open-plan-composer{flex:1 1 0;width:auto}}.popup-drawer.workout-session-composer-dialog{color:#27352d;opacity:0;background:#fff;border:1px solid #dce4de;border-radius:1rem;width:min(100vw - 2rem,48rem);max-width:none;height:min(82dvh,46rem);margin:auto;padding:0;transition:opacity .18s,transform .18s;position:fixed;inset:0;overflow:hidden;transform:translateY(.65rem)scale(.985);box-shadow:0 1.5rem 4.4rem #1431233d}.popup-drawer.workout-session-composer-dialog[data-visible=true]{opacity:1;transform:translateY(0)scale(1)}.workout-session-composer-content{grid-template-rows:auto minmax(0,1fr) auto;height:100%;display:grid}.workout-session-composer-header{border-bottom-color:#e3eae5;padding:1.4rem 1.55rem 1.15rem}.workout-session-composer-header .section-kicker{color:#477995;margin-bottom:.25rem}.workout-session-composer-header h2{color:#2c4035;margin:0;font-size:1.28rem;line-height:1.2}.workout-session-composer-header p{color:#67786d;max-width:36rem;margin:.4rem 0 0;font-size:.78rem;line-height:1.48}.workout-session-composer-header>button{color:#54675c;width:2rem;height:2rem;font:inherit;background:#fff;border:1px solid #d4e0d9;border-radius:50%;flex:none;place-items:center;padding:0;font-size:1.25rem;line-height:1;display:grid}.workout-session-composer-header>button:hover:not(:disabled){color:#17634f;background:#f5fbf7;border-color:#93b9a7}.workout-session-composer-header>button:disabled{cursor:wait;opacity:.6}.workout-session-composer-body{grid-template-columns:minmax(0,1fr) minmax(0,.93fr);gap:1.25rem;min-height:0;padding:1.3rem 1.55rem;display:grid;overflow:auto}.workout-session-composer-search-section,.workout-session-composer-selected-section{min-width:0}.workout-session-composer-selected-section{border-left:1px solid #e5ebe7;padding-left:1.25rem}.workout-session-composer-section-heading{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.workout-session-composer-section-heading>div>span{color:#78897f;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.22rem;font-size:.6rem;font-weight:780;display:block}.workout-session-composer-section-heading h3{color:#32483a;margin:0;font-size:.92rem;line-height:1.25}.workout-session-composer-section-heading>span{color:#4d7768;letter-spacing:.04em;text-transform:uppercase;background:#edf5f0;border-radius:999px;flex:none;margin-top:.05rem;padding:.25rem .43rem;font-size:.61rem;font-weight:780;line-height:1}.workout-session-composer-search{margin-top:.85rem;display:block}.workout-session-composer-search input{color:#293d31;width:100%;min-height:2.5rem;font:inherit;background:#fbfdfb;border:1px solid #cfded6;border-radius:.6rem;padding:0 .72rem;font-size:.8rem}.workout-session-composer-search input:focus{outline-offset:1px;border-color:#5c9a7e;outline:2px solid #308b642b}.workout-session-composer-results{gap:.42rem;margin-top:.75rem;display:grid}.workout-session-composer-results>p,.workout-session-composer-empty{color:#728177;margin:0;font-size:.75rem;line-height:1.5}.workout-session-composer-results>button{color:#30463a;width:100%;font:inherit;text-align:left;background:#fff;border:1px solid #dde8e2;border-radius:.65rem;justify-content:space-between;align-items:center;gap:.75rem;padding:.62rem .66rem;display:flex}.workout-session-composer-results>button:hover:not(:disabled){background:#f5fbf7;border-color:#7ab598}.workout-session-composer-results>button:disabled{cursor:default;opacity:.68}.workout-session-composer-results>button span{gap:.14rem;min-width:0;display:grid}.workout-session-composer-results strong,.workout-session-composer-selected-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:.77rem;font-weight:740;line-height:1.24;overflow:hidden}.workout-session-composer-results small,.workout-session-composer-selected-list small{color:#728178;text-overflow:ellipsis;white-space:nowrap;font-size:.65rem;line-height:1.28;overflow:hidden}.workout-session-composer-results em{color:#17634f;background:#e7f5ed;border-radius:999px;flex:none;padding:.25rem .44rem;font-size:.62rem;font-style:normal;font-weight:790;line-height:1}.workout-session-composer-selected-list{gap:.52rem;margin:.85rem 0 0;padding:0;list-style:none;display:grid}.workout-session-composer-selected-list li{background:#f8fcf9;border:1px solid #dceae2;border-radius:.65rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.55rem;padding:.57rem;display:grid}.workout-session-composer-selected-list li>span{color:#477995;background:#e7f2f7;border-radius:50%;place-items:center;width:1.25rem;height:1.25rem;font-size:.64rem;font-weight:790;display:grid}.workout-session-composer-selected-list li>div{gap:.14rem;min-width:0;display:grid}.workout-session-composer-selected-list li>button{color:#a14e43;font:inherit;background:0 0;border:0;padding:0;font-size:.65rem;font-weight:760}.workout-session-composer-selected-list li>button:hover:not(:disabled){color:#7f362e;text-decoration:underline}.workout-session-composer-footer{padding:.92rem 1.55rem calc(.92rem + env(safe-area-inset-bottom));border-top:1px solid #e2e9e4;align-items:center;gap:1rem}.workout-session-composer-footer>div:first-child{min-width:0}.workout-session-composer-footer p{color:#6d7d73;margin:0;font-size:.7rem;line-height:1.42}.workout-session-composer-footer .workout-session-composer-error{color:#a04136;margin-top:.25rem;font-weight:680}.workout-session-composer-footer>div:last-child{flex:none;gap:.5rem;display:flex}.workout-session-composer-footer button{color:#416051;min-height:2.25rem;font:inherit;background:#fff;border:1px solid #c9d9d0;border-radius:.55rem;padding:.42rem .68rem;font-size:.72rem;font-weight:750}.workout-session-composer-footer button:last-child{color:#fff;background:#1b7354;border-color:#1b7354}.workout-session-composer-footer button:hover:not(:disabled){filter:brightness(.96)}.workout-session-composer-footer button:disabled{cursor:not-allowed;opacity:.55}.workout-session-selector{border-top:1px solid var(--line,#d8d8d8);gap:.55rem;margin-top:1.2rem;padding-top:1.1rem;display:grid}.workout-session-selector h3,.workout-session-selector p{margin:0}.workout-session-selector h3{font-size:.95rem}.workout-session-selector p{color:var(--ink-soft);font-size:.82rem}.workout-session-selector-launcher{color:#fff;background:#176c9a;border:1px solid #176c9a;border-radius:.6rem;width:fit-content;min-height:2.35rem;padding:.45rem .85rem;font-size:.82rem;font-weight:760}.workout-session-selector-launcher:hover{filter:brightness(.94)}@media (max-width:640px){.popup-drawer.workout-session-composer-dialog{border:0;border-radius:0;width:100vw;height:100dvh}.workout-session-composer-header,.workout-session-composer-footer{padding-left:1rem;padding-right:1rem}.workout-session-composer-body{grid-template-columns:minmax(0,1fr);gap:1.35rem;padding:1rem}.workout-session-composer-selected-section{border-top:1px solid #e5ebe7;border-left:0;padding-top:1.15rem;padding-left:0}.workout-session-composer-footer{flex-direction:column;align-items:stretch}.workout-session-composer-footer>div:last-child{justify-content:flex-end}}.popup-drawer.workout-plan-session-detail-drawer{color:#26372d;background:#fffdf8;width:min(100vw,620px)}.workout-plan-session-detail-drawer-content{grid-template-rows:auto minmax(0,1fr);height:100%;display:grid}.workout-plan-session-detail-drawer-header{border-bottom-color:#e6e8df;padding:28px 28px 22px}.workout-plan-session-detail-drawer-header .section-kicker{color:#4b7299;margin-bottom:5px}.workout-plan-session-detail-drawer-header h2{color:#26372d;letter-spacing:-.04em;max-width:500px;margin:0;font-size:23px;font-weight:770;line-height:1.14}.workout-plan-session-detail-drawer-header p{color:#66756d;max-width:500px;margin:8px 0 0;font-size:12px;font-weight:560;line-height:1.45}.workout-plan-session-detail-drawer-header>button{color:#52645b;background:#fff;border:1px solid #d6dfd9;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;padding:0;display:grid}.workout-plan-session-detail-drawer-header>button:hover{color:#17634f;background:#f4fbf7;border-color:#9ab8aa}.workout-plan-session-detail-drawer-header>button:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.workout-plan-session-detail-drawer-header>button svg{width:18px;height:18px}.workout-plan-session-detail-drawer-body{min-height:0;padding:24px 28px calc(30px + env(safe-area-inset-bottom));overflow-y:auto}.workout-plan-session-detail-loading{gap:12px;padding:4px 0;display:grid}.workout-plan-session-detail-loading-line,.workout-plan-session-detail-loading-card{background:linear-gradient(90deg,#eef2ef 25%,#f7f9f7 40%,#eef2ef 60%) 0 0/300% 100%;border-radius:8px;animation:1.4s ease-in-out infinite workout-plan-session-detail-shimmer;display:block}.workout-plan-session-detail-loading-line{width:42%;height:13px}.workout-plan-session-detail-loading-line-wide{width:75%;height:20px}.workout-plan-session-detail-loading-card{height:128px}@keyframes workout-plan-session-detail-shimmer{0%{background-position:100% 0}to{background-position:0 0}}.workout-plan-session-detail-error{color:#8f493e;background:#fff6f3;border:1px solid #f0cfc8;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:13px 14px;display:flex}.workout-plan-session-detail-error p{margin:0;font-size:12px;font-weight:580;line-height:1.45}.workout-plan-session-detail-error button{color:#934a3f;min-height:32px;font:inherit;background:#fff;border:1px solid #e2b6ad;border-radius:7px;flex:none;padding:0 10px;font-size:11px;font-weight:730}.workout-plan-session-detail-error button:hover{background:#fffaf9;border-color:#cc8e83}.workout-plan-session-detail-summary{background:#f7fbf8;border:1px solid #dfe9e4;border-radius:12px;padding:14px}.workout-plan-session-detail-summary dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 16px;margin:0;display:grid}.workout-plan-session-detail-summary div{min-width:0}.workout-plan-session-detail-summary dt{color:#75837a;letter-spacing:.075em;text-transform:uppercase;margin:0;font-size:9px;font-weight:760;line-height:1.25}.workout-plan-session-detail-summary dd{color:#2e4437;text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:13px;font-weight:720;line-height:1.3;overflow:hidden}.workout-plan-session-detail-summary .workout-plan-session-detail-muscle-groups{grid-column:1/-1}.workout-plan-session-detail-summary .workout-plan-session-detail-muscle-groups dd{text-overflow:clip;white-space:normal;overflow:visible}.workout-plan-session-detail-section{margin-top:26px}.workout-plan-session-detail-section-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.workout-plan-session-detail-section-heading>div>span{color:#74847a;letter-spacing:.075em;text-transform:uppercase;margin-bottom:4px;font-size:9px;font-weight:760;line-height:1.25;display:block}.workout-plan-session-detail-section-heading h3{color:#2d3c33;letter-spacing:-.02em;margin:0;font-size:15px;font-weight:750;line-height:1.22}.workout-plan-session-detail-count{color:#61766a;letter-spacing:.055em;text-transform:uppercase;background:#edf3ef;border-radius:999px;flex:none;align-items:center;min-height:22px;padding:0 8px;font-size:9px;font-weight:760;line-height:1;display:inline-flex}.workout-plan-session-detail-exercises{gap:12px;margin:15px 0 0;padding:0;list-style:none;display:grid}.workout-plan-session-detail-stretching-heading{border-top:1px solid #e4ebe6;margin-top:10px;padding-top:20px}.workout-plan-session-detail-exercise{background:#fff;border:1px solid #e0e7e3;border-radius:12px;min-width:0;padding:15px}.workout-plan-session-detail-exercise-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.workout-plan-session-detail-exercise-heading>div{align-items:center;gap:9px;min-width:0;display:flex}.workout-plan-session-detail-exercise-heading>div>span{color:#477995;background:#e8f2f7;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font-size:10px;font-weight:780;display:grid}.workout-plan-session-detail-exercise-heading h4{color:#2b4134;letter-spacing:-.012em;text-overflow:ellipsis;margin:0;font-size:14px;font-weight:760;line-height:1.3;overflow:hidden}.workout-plan-session-detail-exercise-heading>strong{color:#63746a;white-space:nowrap;flex:none;font-size:10px;font-weight:750;line-height:1.5}.workout-plan-session-detail-exercise-targets{color:#728178;margin:7px 0 0;font-size:11px;font-weight:590;line-height:1.45}.workout-plan-session-detail-set-table-wrap{border:1px solid #e8eeea;border-radius:9px;margin-top:12px;overflow-x:auto}.workout-plan-session-detail-set-table{border-collapse:collapse;color:#405247;width:100%;min-width:510px;font-size:11px;line-height:1.35}.workout-plan-session-detail-set-table th,.workout-plan-session-detail-set-table td{text-align:left;vertical-align:top;border-bottom:1px solid #edf1ee;padding:9px 10px}.workout-plan-session-detail-set-table thead th{color:#75847a;letter-spacing:.065em;text-transform:uppercase;background:#f7faf8;font-size:9px;font-weight:770}.workout-plan-session-detail-set-table tbody tr:last-child th,.workout-plan-session-detail-set-table tbody tr:last-child td{border-bottom:0}.workout-plan-session-detail-set-table tbody th{color:#31483a;min-width:84px;font-weight:760}.workout-plan-session-detail-set-table tbody th>span{display:block}.workout-plan-session-detail-set-table small{color:#859189;margin-top:2px;font-size:9px;font-weight:650;line-height:1.3;display:block}.workout-plan-session-detail-empty,.workout-plan-session-detail-empty-set{color:#748178;margin:14px 0 0;font-size:12px;line-height:1.45}.workout-plan-session-detail-empty-set{margin-top:11px;font-size:11px}@media (max-width:720px){.popup-drawer.workout-plan-session-detail-drawer{width:100vw}.workout-plan-session-detail-drawer-header,.workout-plan-session-detail-drawer-body{padding-left:18px;padding-right:18px}}@media (max-width:520px){.workout-plan-session-detail-set-table{min-width:460px}}@media (prefers-reduced-motion:reduce){.workout-plan-session-detail-loading-line,.workout-plan-session-detail-loading-card{animation:none}}.workout-plan-session-detail-exercise{background:0 0;border:0;border-top:1px solid #e4ebe5;border-radius:0;padding:16px 0}.workout-plan-session-detail-exercise:first-child{margin-top:12px}.workout-plan-session-detail-section-actions{align-items:center;gap:9px;display:flex}.workout-plan-session-detail-section-actions>button,.workout-plan-session-detail-add-set{color:#287354;background:0 0;border:0;align-items:center;gap:5px;padding:2px 0;font-size:11px;font-weight:750;display:inline-flex}.workout-plan-session-detail-section-actions>button>span,.workout-plan-session-detail-add-set>span{border:1px solid;border-radius:50%;place-items:center;width:17px;height:17px;font-size:14px;font-weight:550;line-height:1;display:grid}.workout-plan-session-detail-exercise-heading>button{color:#99a69e;background:0 0;border:0;place-items:center;width:22px;height:22px;padding:0;display:grid}.workout-plan-session-detail-exercise-heading>button:hover{color:#9b554a}.workout-plan-session-detail-exercise-heading>button svg{width:15px;height:15px}.workout-plan-session-detail-set-table{margin-top:11px}.workout-plan-session-detail-number-input{background:#fff;border:1px solid #d6e0d9;border-radius:7px;align-items:center;width:86px;padding:0 7px;display:inline-flex}.workout-plan-session-detail-number-input:focus-within{border-color:#499b74;box-shadow:0 0 0 3px #499b7426}.workout-plan-session-detail-number-input input{color:#1e694c;width:100%;min-width:0;font:inherit;text-align:right;background:0 0;border:0;padding:6px 0;font-size:12px;font-weight:730}.workout-plan-session-detail-number-input input:focus{outline:0}.workout-plan-session-detail-number-input>span:last-child{color:#829087;margin-left:4px;font-size:10px;font-weight:680}.workout-plan-session-detail-set-kind{align-items:center;display:inline-flex;position:relative}.workout-plan-session-detail-set-kind select{color:#315642;min-width:106px;font:inherit;background:#fff;border:1px solid #d6e0d9;border-radius:7px;padding:6px 24px 6px 8px;font-size:11px;font-weight:700}.workout-plan-session-detail-set-kind select:focus{border-color:#499b74;outline:0;box-shadow:0 0 0 3px #499b7426}.workout-plan-session-detail-add-set{margin-top:10px}.workout-plan-session-detail-save-error{color:#a04f45;margin:13px 0 0;font-size:11px;font-weight:620}.workout-plan-session-detail-save-row{border-top:1px solid #e4ebe5;justify-content:flex-end;align-items:center;gap:14px;margin-top:15px;padding-top:14px;display:flex}.workout-plan-session-detail-save-row>span{color:#7d8b82;font-size:10px;line-height:1.35}.workout-plan-session-detail-save-row>button{color:#fff;background:#287354;border:1px solid #287354;border-radius:7px;flex:none;min-height:33px;padding:0 11px;font-size:11px;font-weight:760}.workout-plan-session-detail-save-row>button:disabled{cursor:not-allowed;opacity:.55}.workout-plan-session-detail-add-popup{color:#26372d;background:#fffdf8;border:1px solid #d9e4dc;border-radius:12px;width:min(100%,390px);max-height:min(580px,100dvh - 36px);margin:auto;padding:0;overflow:auto;box-shadow:0 18px 50px #14312347}.workout-plan-session-detail-add-popup::backdrop{background:#12281c61}.workout-plan-session-detail-add-popup>section{padding:18px}.workout-plan-session-detail-add-popup-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.workout-plan-session-detail-add-popup-heading span{color:#74847a;letter-spacing:.07em;text-transform:uppercase;font-size:9px;font-weight:750;display:block}.workout-plan-session-detail-add-popup-heading h3{letter-spacing:-.02em;margin:3px 0 0;font-size:16px}.workout-plan-session-detail-add-popup-heading>button{color:#52645b;background:#fff;border:1px solid #d6dfd9;border-radius:50%;width:28px;height:28px;font-size:20px;line-height:1}.workout-plan-session-detail-add-search{margin-top:16px;display:block}.workout-plan-session-detail-add-search input{color:#26372d;width:100%;font:inherit;background:#fff;border:1px solid #ccd9d0;border-radius:8px;padding:9px 10px;font-size:13px}.workout-plan-session-detail-add-results{gap:3px;margin-top:12px;display:grid}.workout-plan-session-detail-add-results>p{color:#7a8980;margin:4px 0;font-size:11px;line-height:1.45}.workout-plan-session-detail-add-results>p.is-error{color:#a04f45}.workout-plan-session-detail-add-results>button{color:#33453a;text-align:left;background:0 0;border:1px solid #0000;border-radius:7px;gap:2px;width:100%;padding:9px 8px;display:grid}.workout-plan-session-detail-add-results>button:hover{background:#f2f8f4;border-color:#d8e7dd}.workout-plan-session-detail-add-results>button strong{font-size:12px;font-weight:720}.workout-plan-session-detail-add-results>button span{color:#829087;font-size:9px;font-weight:650}.workout-plan-session-detail-exercises{gap:0}.workout-plan-session-detail-exercise{transition:background .15s,opacity .15s;position:relative}.workout-plan-session-detail-exercise[data-dragging=true]{opacity:.46;background:#f0f8f3}.workout-plan-session-detail-exercise-heading>div{gap:8px}.workout-plan-session-detail-drag-handle{color:#9aa8a0;cursor:grab;background:0 0;border:0;border-radius:5px;flex:none;place-items:center;width:23px;height:23px;padding:0;display:grid}.workout-plan-session-detail-drag-handle:active{cursor:grabbing}.workout-plan-session-detail-drag-handle:hover{color:#287354;background:#edf7f0}.workout-plan-session-detail-drag-handle:focus-visible{outline-offset:1px;outline:2px solid #499b74}.workout-plan-session-detail-drag-handle svg{width:15px;height:15px}.workout-plan-session-detail-sets-toggle{justify-content:space-between;align-items:center;gap:12px;margin-top:10px;display:flex}.workout-plan-session-detail-sets-toggle>button:first-child{color:#62776a;background:0 0;border:0;align-items:center;gap:5px;padding:2px 0;font-size:10px;font-weight:730;display:inline-flex}.workout-plan-session-detail-sets-toggle>button:first-child:hover{color:#17634f}.workout-plan-session-detail-sets-toggle>button:first-child svg{width:14px;height:14px;transition:transform .15s}.workout-plan-session-detail-sets-toggle>button:first-child svg.is-collapsed{transform:rotate(-90deg)}.workout-plan-session-detail-sets-toggle>button:first-child small{color:#96a29b;margin-left:2px;font-size:9px;font-weight:650}.workout-plan-session-detail-set-table-wrap{background:#fcfdfc;border-color:#e5ece7;border-radius:8px;margin-top:7px}.workout-plan-session-detail-set-table{min-width:0}.workout-plan-session-detail-set-table th,.workout-plan-session-detail-set-table td{vertical-align:middle;padding:8px 10px}.workout-plan-session-detail-set-table tbody th{min-width:42px}.workout-plan-session-detail-set-table th:last-child,.workout-plan-session-detail-set-table td:last-child{text-align:right;width:38px;padding-left:4px;padding-right:7px}.workout-plan-session-detail-remove-set{color:#9a655d;background:#fff;border:1px solid #e4ddd9;border-radius:50%;place-items:center;width:24px;height:24px;padding:0;display:grid}.workout-plan-session-detail-remove-set:hover:not(:disabled){color:#8d493f;background:#fff7f5;border-color:#c9857a}.workout-plan-session-detail-remove-set:disabled{cursor:not-allowed;opacity:.34}.workout-plan-session-detail-remove-set svg{width:13px;height:13px}@media (max-width:520px){.workout-plan-session-detail-set-table{min-width:0}.workout-plan-session-detail-number-input{width:74px}.workout-plan-session-detail-set-kind select{min-width:94px}}
