@font-face{font-family:Funnel Display;font-style:normal;font-weight:300 800;font-display:swap;src:url(../media/3eea4b3d42758fbc-s.44093692.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Funnel Display;font-style:normal;font-weight:300 800;font-display:swap;src:url(../media/d3f3f01dfc015e12-s.p.efb60e83.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Funnel Display Fallback;src:local(Arial);ascent-override:93.85%;descent-override:23.46%;line-gap-override:0.0%;size-adjust:106.55%}.funnel_display_7628ce81-module__xtU8RW__className{font-family:Funnel Display,Funnel Display Fallback;font-style:normal}.funnel_display_7628ce81-module__xtU8RW__variable{--font-funnel-display:"Funnel Display","Funnel Display Fallback"}
:root{--background:#f3f3f6;--background-strong:#dcdce5;--surface:#fff;--surface-alt:#d1d0dd;--foreground:#1c1b27;--muted:#23222f;--border:#dbdadf;--brand:#726e97;--brand-strong:#004346;--accent:#f2b441;--danger:#b42318;--shadow-soft:0 14px 34px #17152617}html,body{max-width:100vw;overflow-x:hidden}body{color:var(--foreground);background:radial-gradient(circle at 15% 20%,#726e9724,transparent 42%),radial-gradient(circle at 85% 5%,#0043461f,transparent 40%),var(--background);font-family:var(--font-funnel-display),sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box;margin:0;padding:0}a{color:var(--brand-strong);text-decoration:none}.user-nav-link.is-sub{background:var(--surface);border-color:var(--border);padding:.28rem .58rem;font-size:.8rem}a:hover{text-decoration:underline}.app-shell{min-height:100dvh}.user-shell{grid-template-rows:auto 1fr;min-height:100dvh;display:grid}.user-topbar{z-index:40;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:color-mix(in srgb,var(--surface)82%,transparent);border-bottom:1px solid var(--border);position:sticky;top:0}.user-topbar-inner{gap:.8rem;max-width:1120px;margin:0 auto;padding:.85rem 1rem;display:grid}.user-brand-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.user-brand{color:var(--foreground);align-items:center;gap:.65rem;font-size:1.12rem;font-weight:700;display:inline-flex}.user-brand-logo{object-fit:contain;border-radius:8px;width:1.75rem;height:1.75rem}.user-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.65rem;font-size:.82rem;display:inline-flex}.user-meta-link{color:var(--foreground);border-bottom:1px dashed color-mix(in srgb,var(--brand)40%,transparent);text-decoration:none}.user-meta-link:hover{border-bottom-color:color-mix(in srgb,var(--brand-strong)58%,var(--border));text-decoration:none}.role-pill{border:1px solid var(--border);background:var(--surface-alt);letter-spacing:.02em;border-radius:999px;align-items:center;padding:.18rem .62rem;font-size:.76rem;display:inline-flex}.user-nav-desktop{display:none}.user-nav-links{flex-wrap:wrap;gap:.45rem;display:flex}.user-nav-group{border:1px solid var(--border);background:color-mix(in srgb,var(--surface)88%,var(--surface-alt));border-radius:999px;align-items:center;gap:.35rem;padding:.2rem .28rem .2rem .55rem;display:inline-flex}.user-nav-group-label{color:var(--muted);white-space:nowrap;font-size:.78rem}.user-nav-sub-links{align-items:center;gap:.3rem;display:inline-flex}.user-nav-link{color:var(--foreground);border:1px solid #0000;border-radius:999px;padding:.42rem .78rem;font-size:.86rem;text-decoration:none}.user-nav-link:hover{background:var(--surface-alt);border-color:var(--border);text-decoration:none}.user-menu-mobile{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-soft);border-radius:12px}.user-menu-mobile>summary{cursor:pointer;color:var(--foreground);padding:.6rem .8rem;font-size:.9rem;list-style:none}.user-menu-mobile>summary::-webkit-details-marker{display:none}.user-menu-grid{border-top:1px solid var(--border);gap:.35rem;padding:.55rem;display:grid}.user-menu-grid .user-nav-group{border-radius:12px;gap:.35rem;padding:.45rem;display:grid}.user-menu-grid .user-nav-sub-links{gap:.25rem;display:grid}.user-main{width:100%;max-width:1120px;margin:0 auto;padding:1rem}.admin-shell{grid-template-rows:auto 1fr;min-height:100dvh;display:grid}.admin-topbar{z-index:40;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:color-mix(in srgb,var(--surface)88%,transparent);position:sticky;top:0}.admin-topbar-inner{flex-wrap:nowrap;align-items:center;gap:.65rem;max-width:1180px;margin:0 auto;padding:.72rem 1rem;display:flex}.admin-brand{color:var(--foreground);white-space:nowrap;align-items:center;gap:.5rem;font-size:1rem;font-weight:700;text-decoration:none;display:inline-flex}.admin-brand-logo{object-fit:contain;border-radius:7px;width:1.5rem;height:1.5rem}.admin-nav{flex-wrap:nowrap;align-items:center;gap:.45rem;min-width:0;display:flex;overflow-x:auto}.admin-nav-link,.admin-nav-group-toggle,.admin-user-button{color:var(--foreground);border:1px solid #0000;border-radius:999px;font-size:.85rem;line-height:1;text-decoration:none}.admin-nav-link,.admin-user-button{padding:.46rem .72rem}.admin-nav-link:hover,.admin-user-button:hover,.admin-nav-group-toggle:hover{border-color:var(--border);background:var(--surface-alt);text-decoration:none}.admin-nav-link.is-sub{border:1px solid var(--border);background:var(--surface)}.admin-nav-group{position:relative}.admin-nav-group-toggle{cursor:pointer;font:inherit;background:0 0;padding:.46rem .72rem}.admin-nav-group-menu{border:1px solid var(--border);background:var(--surface);min-width:180px;box-shadow:var(--shadow-soft);border-radius:12px;gap:.32rem;padding:.45rem;display:grid;position:absolute;top:calc(100% + .3rem);left:0}.admin-topbar-actions{flex:none;align-items:center;gap:.4rem;margin-left:auto;display:inline-flex}.admin-user-button{border-color:color-mix(in srgb,var(--brand)30%,var(--border));color:var(--brand-strong);background:#f3f0fa}.admin-main{width:100%;max-width:1180px;margin:0 auto;padding:1rem}.admin-page-stack{gap:1rem;display:grid}.admin-page-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:.8rem;display:flex}.admin-toolbar{border:1px solid var(--border);background:var(--surface);border-radius:14px;flex-wrap:nowrap;align-items:end;gap:.7rem;padding:.8rem;display:flex}.admin-view-toggle-row{border:1px solid var(--border);isolation:isolate;background:#f2eef9;border-radius:999px;grid-template-columns:repeat(2,minmax(110px,1fr));gap:0;padding:.18rem;display:grid;position:relative;overflow:hidden}.admin-page-stack .admin-view-toggle{color:color-mix(in srgb,var(--muted)72%,#000 4%);z-index:1;background:0 0;border:1px solid #0000;border-radius:999px;padding:.34rem .7rem;font-size:.82rem;transition:color .18s;position:relative}.admin-page-stack .admin-view-toggle.is-active{color:#fff;background:0 0;border-color:#0000}.admin-page-stack .admin-view-toggle:not(.is-active){color:var(--brand-strong)}.admin-view-toggle-thumb{background:linear-gradient(140deg,var(--brand),var(--brand-strong));border:1px solid color-mix(in srgb,var(--brand-strong)58%,var(--border));z-index:0;border-radius:999px;width:calc(50% - .18rem);transition:transform .22s;position:absolute;top:.18rem;bottom:.18rem;left:.18rem;transform:translate(0);box-shadow:0 4px 12px #1f1a2c24}.admin-view-toggle-thumb.is-right{transform:translate(100%)}.admin-toolbar-search{flex:auto;max-width:none}.admin-toolbar-search input{width:100%}.admin-list-stack{gap:.65rem;display:grid}.admin-list-card{border:1px solid var(--border);background:linear-gradient(165deg,#fff,#f7f4fc);border-radius:14px;gap:.5rem;padding:.78rem;display:grid}.admin-list-card-head{justify-content:space-between;align-items:start;gap:.6rem;display:flex}.admin-list-title-wrap{gap:.2rem;display:grid}.admin-list-title-wrap h2{font-size:1.02rem}.admin-card-actions{flex-wrap:wrap;gap:.5rem;display:flex}.admin-card-actions form{margin:0}.admin-plus-button,.admin-secondary-button,.admin-danger-button,.admin-page-stack .admin-icon-close{font:inherit;cursor:pointer;border-radius:10px}.admin-page-stack .admin-plus-button{border:1px solid color-mix(in srgb,var(--brand)38%,var(--border));color:var(--brand-strong);background:#efeafb;padding:.5rem .84rem}.admin-page-stack .admin-secondary-button{border:1px solid var(--border);background:var(--surface);color:var(--foreground);padding:.5rem .74rem}.admin-page-stack .admin-danger-button{border:1px solid color-mix(in srgb,var(--danger)34%,var(--border));color:var(--danger);background:#fff1f2;padding:.5rem .74rem}.admin-modal-overlay{z-index:90;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#110e1b6b;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.admin-modal{border:1px solid var(--border);background:var(--surface);border-radius:16px;gap:.75rem;width:min(720px,100%);max-height:min(86dvh,920px);padding:.9rem;display:grid;overflow:auto;box-shadow:0 28px 60px #0c09144d}.admin-modal-head{justify-content:space-between;align-items:center;gap:.55rem;display:flex}.admin-icon-close{border:1px solid var(--border);background:var(--surface);width:2rem;height:2rem;color:var(--foreground);line-height:1}.dashboard-page,.auth-page,.landing-page{gap:1rem;display:grid}.dashboard-page{padding:.25rem 0 1.6rem}.page-hero{border:1px solid var(--border);background:linear-gradient(135deg,var(--surface),#dcdce5);box-shadow:var(--shadow-soft);border-radius:16px;padding:1rem}.page-title{font-size:clamp(1.45rem,2.8vw,2.15rem);line-height:1.06}.page-subtitle,.muted{color:var(--muted)}.quick-links{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.55rem;display:grid}.quick-link-card,.card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-soft);border-radius:14px;padding:.85rem}.quick-link-card{color:var(--foreground);text-decoration:none}.quick-link-card:hover{border-color:color-mix(in srgb,var(--brand)36%,var(--border));text-decoration:none}.dashboard-hero{background:radial-gradient(circle at 18% 12%,#726e9733,#0000 52%),radial-gradient(circle at 94% 4%,#726e973d,#0000 48%),linear-gradient(140deg,#fcfdff,#dcdce5);border-radius:18px;gap:.9rem;padding:1rem;display:grid}.dashboard-hero-copy{gap:.55rem;display:grid}.dashboard-kicker{text-transform:uppercase;letter-spacing:.08em;color:color-mix(in srgb,var(--brand-strong)78%,#000 6%);font-size:.73rem;font-weight:700}.motivation-panel{border:1px solid color-mix(in srgb,var(--accent)42%,var(--border));background:linear-gradient(145deg,#fff4dd,#fff9ee);border-radius:14px;gap:.42rem;padding:.82rem;display:grid}.dashboard-stat-grid{grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:.65rem;display:grid}.dashboard-stat-card{border:1px solid var(--border);background:linear-gradient(160deg,#fff,#f5f3fb);border-radius:14px;gap:.34rem;padding:.76rem;display:grid}.dashboard-stat-card strong{font-size:1.25rem}.dashboard-goal-text{font-size:1.02rem;line-height:1.5}.dashboard-stat-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.78rem}.progress-track{border:1px solid var(--border);background:#eceaf5;border-radius:999px;height:8px;overflow:hidden}.progress-fill{background:linear-gradient(140deg,var(--brand),var(--accent));height:100%;display:block}.dashboard-main-grid{gap:.75rem;display:grid}.dashboard-insights-panel{background:radial-gradient(circle at 92% 10%,#726e971f,#0000 42%),linear-gradient(145deg,#fff,#f6f3fc)}.dashboard-insights-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.7rem;display:flex}.dashboard-insights-refresh{border:1px solid color-mix(in srgb,var(--brand)34%,var(--border));color:var(--brand-strong);background:#f0ecfa;border-radius:999px;align-items:center;gap:.35rem;padding:.42rem .78rem;font-size:.83rem;display:inline-flex}.dashboard-insights-refresh:disabled{opacity:.65;cursor:not-allowed}.dashboard-insight-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:stretch;gap:.58rem;display:grid}.dashboard-insight-card{border:1px solid var(--border);background:#fffeff;border-radius:12px;grid-template-rows:auto 1fr auto;gap:.52rem;height:100%;padding:.72rem;display:grid}.dashboard-insight-card-head{justify-content:space-between;align-items:center;gap:.55rem;display:flex}.dashboard-insight-title-wrap{align-items:center;gap:.36rem;display:inline-flex}.dashboard-insight-cache-pill{border:1px solid var(--border);letter-spacing:.03em;text-transform:uppercase;color:var(--muted);border-radius:999px;padding:.1rem .42rem;font-size:.72rem}.dashboard-insight-content{white-space:pre-wrap;margin:0;font-size:.93rem;line-height:1.45}.dashboard-insight-meta{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:.35rem;font-size:.76rem;display:inline-flex;overflow:hidden}.dashboard-insight-meta span{text-overflow:ellipsis;overflow:hidden}@media (min-width:960px){.dashboard-insight-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.dashboard-checkin-panel{border:1px solid color-mix(in srgb,var(--brand)34%,var(--border));background:linear-gradient(150deg,#fcfbff,#f3f0fa)}.dashboard-checkin-form{border:1px solid var(--border);background:#fffeff;border-radius:12px;gap:.58rem;padding:.75rem;display:grid}.dashboard-checkin-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.45rem;display:grid}.today-focus-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.55rem;display:grid}.today-focus-card{border:1px solid var(--border);background:#fcfbff;border-radius:12px;gap:.4rem;padding:.62rem;display:grid}.today-list{gap:.35rem;margin:0;padding-left:1rem;display:grid}.today-list li{gap:.1rem;display:grid}.today-list span{color:var(--muted);font-size:.85rem}.motivation-band{border:1px dashed color-mix(in srgb,var(--brand)44%,var(--border));background:#f4f2fb;border-radius:12px;padding:.6rem}.today-checklist{gap:.35rem;margin:0;padding-left:1.05rem;display:grid}.assignment-pill-list{flex-wrap:wrap;gap:.42rem;display:flex}.assignment-pill{border:1px solid var(--border);background:var(--surface-alt);color:var(--foreground);letter-spacing:.03em;border-radius:999px;padding:.2rem .52rem;font-size:.76rem}.back-link{color:var(--muted);font-size:.92rem}.week-head{border:1px solid var(--border);background:linear-gradient(130deg,var(--surface),#f4f2fa);border-radius:14px;gap:.6rem;padding:.85rem;display:grid}.week-head-meta{color:var(--muted);flex-wrap:wrap;gap:.55rem 1rem;font-size:.92rem;display:flex}.week-nav{flex-wrap:wrap;gap:.45rem;display:flex}.week-nav-button{border:1px solid var(--border);background:var(--surface);color:var(--foreground);border-radius:999px;padding:.38rem .72rem;font-size:.84rem;text-decoration:none}.week-nav-button:hover{border-color:color-mix(in srgb,var(--brand)36%,var(--border));background:#f5f3fa;text-decoration:none}.calendar-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.65rem;display:grid}.calendar-day{border:1px solid var(--border);background:linear-gradient(180deg,var(--surface),#fcfbff);border-radius:14px;gap:.55rem;padding:.65rem;display:grid}.calendar-day-title{justify-content:space-between;align-items:center;gap:.55rem;font-size:.93rem;display:flex}.calendar-day-tag{border:1px solid var(--border);background:var(--surface-alt);color:var(--muted);border-radius:999px;padding:.16rem .5rem;font-size:.75rem}.calendar-form{gap:.48rem;display:grid}.calendar-field-help{color:var(--muted);font-size:.82rem}.meal-slot{border:1px solid var(--border);background:#f8f6fd;border-radius:12px;gap:.4rem;padding:.5rem;display:grid}.meal-slot ul{color:var(--muted);gap:.2rem;margin:0;padding-left:1rem;font-size:.84rem;display:grid}.workout-step-card{border:1px solid var(--border);background:linear-gradient(140deg,#fefeff,#f2f0fb);border-radius:14px;gap:.5rem;padding:.72rem;display:grid}.workout-list{gap:.28rem;margin:0;padding-left:1.15rem;display:grid}.workout-step-current{font-weight:700}.workout-plan-card{gap:.75rem}.workout-plan-open{color:inherit;text-align:left;background:0 0;border:0;gap:.45rem;margin:0;padding:0;display:grid}.workout-modal-step{gap:.35rem;margin-bottom:.5rem;display:grid}.workout-video-embed{border:1px solid var(--border);border-radius:10px;width:100%;min-height:220px}.workout-session-page{gap:.85rem}.workout-session-shell{border:1px solid var(--border);background:linear-gradient(160deg,#fff,#efeaf9);border-radius:16px;gap:.85rem;padding:1rem;display:grid}.workout-session-head h2{margin:.15rem 0;font-size:clamp(1.45rem,4.2vw,2.1rem)}.workout-session-progress{font-size:1.04rem;font-weight:700}.workout-session-current-card,.workout-session-timer-card,.workout-next-step-card{border:1px solid var(--border);background:#f6f4fc;border-radius:14px;gap:.4rem;padding:.82rem;display:grid}.workout-session-clock{letter-spacing:.04em;font-size:clamp(2rem,8vw,3.3rem);line-height:1}@media (max-width:700px){.workout-session-clock{font-size:clamp(2.8rem,18vw,4.5rem)}}.workout-session-controls{flex-wrap:wrap;gap:.5rem;display:flex}.workout-session-controls form{margin:0}.workout-session-controls button{min-height:2.5rem}.timer-shell{border:1px solid var(--border);background:#f6f4fb;border-radius:10px;gap:.45rem;padding:.55rem;display:grid}.timer-row{flex-wrap:wrap;gap:.4rem;display:flex}.timer-clock{letter-spacing:.03em;font-size:1.3rem}.section-title{font-size:1.04rem}.stack{gap:.55rem;display:grid}.form-grid{gap:.7rem;max-width:760px;display:grid}.field{gap:.32rem;font-size:.92rem;display:grid}.variant-option-row{align-items:center;gap:.5rem;display:flex}.recipe-add-form,.manual-item-form,.shopping-item-row{gap:.5rem;display:grid}.recipe-add-form,.manual-item-form{grid-template-columns:minmax(0,1fr)}.shopping-item-row{grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center}.shopping-list-items{gap:.5rem;margin:0;padding-left:0;list-style:none;display:grid}.shopping-category-stack{gap:.65rem;display:grid}.shopping-category-group{border:1px solid var(--border);background:#fcfbff;border-radius:12px;gap:.5rem;padding:.65rem;display:grid}.shopping-category-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.dashboard-page .shopping-check-toggle{border:1px solid color-mix(in srgb,var(--foreground)30%,var(--border));width:1.45rem;height:1.45rem;color:color-mix(in srgb,var(--foreground)74%,var(--brand));background:#eeebf6;border-radius:.38rem;place-items:center;padding:0;font-size:.95rem;line-height:1;display:grid}.dashboard-page .shopping-check-toggle.is-checked{border-color:color-mix(in srgb,var(--brand)58%,var(--border));background:#e8e3f5}.shopping-item-label-wrap{gap:.16rem;display:grid}.shopping-item-label{color:inherit;text-decoration:none}.shopping-item-label.is-checked{color:var(--muted);text-decoration:line-through}.shopping-item-creator-pill{color:var(--muted);font-size:.74rem}.dashboard-page .shopping-price-button{border:1px solid color-mix(in srgb,var(--brand)34%,var(--border));color:var(--brand-strong);background:#f3f0fb;border-radius:999px;place-items:center;width:2rem;height:2rem;padding:0;line-height:1;display:grid}.dashboard-page .shopping-delete-button{border:1px solid color-mix(in srgb,#cc5a5a 44%,var(--border));color:#a13636;background:#fff3f3;border-radius:999px;place-items:center;width:2rem;height:2rem;padding:0;line-height:1;display:grid}.shopping-ai-actions{flex-wrap:wrap;gap:.45rem;display:flex}.shopping-ai-preview{border:1px solid var(--border);background:#fcfbff;border-radius:12px;gap:.42rem;padding:.65rem;display:grid}.shopping-ai-preview-list,.shopping-offer-list{gap:.25rem;margin:0;padding-left:1rem;display:grid}.shopping-offer-loading{color:var(--muted);align-items:center;gap:.55rem;display:flex}.shopping-spinner{border:2px solid color-mix(in srgb,var(--brand)30%,var(--border));border-top-color:var(--brand-strong);border-radius:999px;flex:none;width:1rem;height:1rem;animation:.85s linear infinite shopping-spin}@keyframes shopping-spin{to{transform:rotate(360deg)}}.path-card-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.8rem;display:grid}.dashboard-page .path-product-card{border:1px solid var(--border);box-shadow:var(--shadow-soft);text-align:left;color:var(--foreground);cursor:pointer;background:radial-gradient(circle at 92% 8%,#f2b44138,#0000 38%),linear-gradient(160deg,#fff,#f5f2fc);border-radius:16px;gap:.62rem;padding:.9rem;display:grid}.dashboard-page .path-product-card:hover{border-color:color-mix(in srgb,var(--brand)40%,var(--border));transform:translateY(-2px)}.path-product-card-head{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.path-product-chip{border:1px solid color-mix(in srgb,var(--brand)36%,var(--border));color:color-mix(in srgb,var(--brand-strong)80%,#000 5%);letter-spacing:.04em;text-transform:uppercase;background:#eee9f8;border-radius:999px;padding:.2rem .56rem;font-size:.73rem}.path-product-meta{color:var(--muted);font-size:.82rem}.path-product-title{font-size:clamp(1.08rem,2vw,1.35rem);line-height:1.15}.path-product-stats{flex-wrap:wrap;gap:.35rem;display:flex}.path-product-stats span{border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:999px;padding:.16rem .46rem;font-size:.76rem}.path-product-cta{color:var(--brand-strong);font-size:.88rem;font-weight:700}.path-modal-overlay{z-index:80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#12101d73;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.path-modal{border:1px solid var(--border);background:linear-gradient(160deg,#fff,#f5f2fc);border-radius:18px;gap:.85rem;width:min(980px,100%);max-height:min(88dvh,920px);padding:1rem;display:grid;overflow:auto;box-shadow:0 30px 70px #08120c52}.path-modal-head{justify-content:space-between;align-items:start;gap:.75rem;display:flex}.path-modal-title-wrap{gap:.35rem;display:grid}.path-modal-title{font-size:clamp(1.3rem,2.7vw,1.75rem);line-height:1.1}.dashboard-page .path-modal-close{border:1px solid var(--border);background:var(--surface);color:var(--foreground);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;width:2.3rem;height:2.3rem;font-size:1.25rem;line-height:1;display:inline-flex}.path-week-head{background:linear-gradient(140deg,#fefefe,#f4f1fb)}.dashboard-page .week-nav-button{border:1px solid var(--border);background:var(--surface);color:var(--foreground);border-radius:999px;padding:.38rem .72rem;font-size:.84rem;text-decoration:none}.dashboard-page .week-nav-button:disabled{cursor:not-allowed;opacity:.5}.path-modal-empty{border:1px dashed var(--border);color:var(--muted);background:#fdfcff;border-radius:12px;padding:.82rem}.path-assignment-columns{gap:.75rem;display:grid}.path-assignment-group{gap:.45rem;display:grid}.path-assignment-list{gap:.48rem;display:grid}.path-assignment-card{border:1px solid var(--border);background:#fff;border-radius:12px;gap:.3rem;padding:.68rem;display:grid}.path-assignment-top{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.path-kind-pill{border:1px solid var(--border);letter-spacing:.03em;border-radius:999px;padding:.14rem .48rem;font-size:.72rem}.path-kind-pill.is-training{color:#144a93;background:#eaf4ff;border-color:#bdd8ff}.path-kind-pill.is-nutrition{color:#1d7244;background:#eaf9ef;border-color:#b8ebc8}.path-kind-pill.is-info{color:#8b5306;background:#fff3de;border-color:#ffd59a}.path-assignment-week-range{color:var(--muted);font-size:.78rem}.path-assignment-name{font-size:.94rem;font-weight:700}.path-assignment-variant{color:var(--muted);font-size:.82rem}.training-week-meta{align-items:center;gap:.35rem;display:inline-flex}.training-week-number{font-size:clamp(1.4rem,2.4vw,1.95rem);line-height:1}.training-day-card{background:linear-gradient(#fff,#f7f4fd);gap:.65rem}.training-day-assignment-wrap{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.45rem;display:grid}.dashboard-page .training-assignment-card{border:1px solid color-mix(in srgb,var(--brand)34%,var(--border));color:var(--foreground);text-align:left;background:#efeafb;border-radius:12px;gap:.2rem;padding:.56rem;display:grid}.training-assignment-card span{color:var(--muted);font-size:.8rem}.dashboard-page .training-icon-button{border:1px solid var(--border);background:var(--surface);color:var(--foreground);border-radius:10px;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;padding:0;display:inline-flex}.dashboard-page .training-icon-button.is-danger{border-color:color-mix(in srgb,var(--danger)32%,var(--border));color:var(--danger)}.dashboard-page .training-add-button{border:1px dashed color-mix(in srgb,var(--brand)42%,var(--border));color:var(--brand-strong);background:#f5f1fc;border-radius:10px;justify-content:center;align-items:center;gap:.35rem;padding:.45rem .62rem;display:inline-flex}.dashboard-page .training-add-button:disabled{opacity:.5;cursor:not-allowed}.training-plan-product-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;display:grid}.dashboard-page .training-plan-product-card{border:1px solid var(--border);text-align:left;color:var(--foreground);box-shadow:var(--shadow-soft);background:radial-gradient(circle at 92% 8%,#726e9733,#0000 36%),linear-gradient(155deg,#fff,#f4f1fc);border-radius:16px;gap:.58rem;padding:.85rem;display:grid}.training-plan-card-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.training-plan-card-meta{color:var(--muted);font-size:.8rem}.training-plan-card-title{font-size:1.05rem;line-height:1.2}.training-plan-card-stats{flex-wrap:wrap;gap:.32rem;display:flex}.training-plan-card-stats span{border:1px solid var(--border);color:var(--muted);background:#fff;border-radius:999px;padding:.14rem .45rem;font-size:.74rem}.training-plan-step-list{gap:.5rem;display:grid}.training-plan-block-group{gap:.45rem;display:grid}.training-plan-block-title{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:.88rem}.training-plan-block-steps{gap:.45rem;display:grid}.training-step-line{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.45rem;display:flex}.training-step-metric-pill{border:1px solid color-mix(in srgb,var(--brand)35%,var(--border));color:var(--brand-strong);white-space:nowrap;background:#efeafb;border-radius:999px;padding:.2rem .5rem;font-size:.76rem;line-height:1}.training-action-modal{width:min(640px,100%)}.training-warning-banner{border:1px solid color-mix(in srgb,var(--accent)52%,var(--border));color:#6a4a1c;background:#fff7e8;border-radius:12px;padding:.62rem}.training-action-form,.training-delete-form{gap:.65rem;display:grid}.training-delete-form{grid-template-columns:minmax(0,1fr)}.dashboard-page .training-secondary-button{border:1px solid var(--border);background:var(--surface);color:var(--foreground)}.nutrition-day-card{background:linear-gradient(#fff,#f8f5fd);gap:.7rem}.nutrition-slot-stack{gap:.6rem;display:grid}.nutrition-slot-card{border:1px solid var(--border);background:#fcfbff;border-radius:12px;gap:.45rem;padding:.55rem;display:grid}.nutrition-slot-head{justify-content:space-between;align-items:start;gap:.55rem;display:flex}.nutrition-slot-actions{align-items:center;gap:.3rem;display:inline-flex}.nutrition-slot-recipe-pill{border:1px solid color-mix(in srgb,var(--brand)36%,var(--border));color:var(--brand-strong);background:#eee9f8;border-radius:999px;width:fit-content;padding:.14rem .5rem;font-size:.78rem}.nutrition-slot-macro-wrap{border:1px solid color-mix(in srgb,var(--brand)18%,var(--border));background:linear-gradient(155deg,#faf7ff,#f2ecfb);border-radius:12px;gap:.45rem;padding:.55rem;display:grid}.nutrition-slot-macro-title{text-transform:uppercase;letter-spacing:.04em;color:#5f5378;margin:0;font-size:.76rem}.nutrition-slot-macro-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem;display:grid}.nutrition-slot-macro-pill{background:#1f1a2c;border:1px solid #2f2a3a;border-radius:10px;gap:.15rem;padding:.4rem .5rem;display:grid}.nutrition-slot-macro-pill small{color:#ffffffbf;font-size:.7rem}.nutrition-slot-macro-pill strong{color:#fff;font-size:.86rem}.nutrition-slot-macro-note{color:#7a5d1f;margin:0;font-size:.74rem}.nutrition-slot-ingredient-list{gap:.38rem;margin:0;padding:0;list-style:none;display:grid}.nutrition-slot-ingredient-item{border:1px solid color-mix(in srgb,var(--brand)12%,var(--border));background:#fff;border-radius:10px;justify-content:flex-start;align-items:center;gap:.5rem;padding:.38rem .5rem;display:flex}.nutrition-slot-ingredient-name{color:#2f2447;font-size:.83rem;font-weight:600}.nutrition-slot-ingredient-amount{border:1px solid color-mix(in srgb,var(--brand)24%,var(--border));color:var(--brand-strong);white-space:nowrap;background:#f3eefc;border-radius:999px;padding:.14rem .45rem;font-size:.74rem}.nutrition-view-toggle-row{border:1px solid var(--border);z-index:6;background:#f2eef9;border-radius:999px;gap:.4rem;width:fit-content;padding:.2rem;display:inline-flex;position:sticky;top:.7rem;box-shadow:0 8px 18px #14102014}.dashboard-page .nutrition-view-toggle{color:var(--muted);background:0 0;border:1px solid #0000;border-radius:999px;padding:.35rem .75rem;font-size:.82rem;line-height:1}.dashboard-page .nutrition-view-toggle.is-active{border-color:color-mix(in srgb,var(--brand)40%,var(--border));color:var(--brand-strong);background:#fff}.nutrition-daily-focus-list{gap:.45rem;display:grid}.nutrition-focus-day{border:1px solid color-mix(in srgb,var(--brand)12%,var(--border));background:#f8f5fd;border-radius:12px;overflow:clip}.dashboard-page .nutrition-focus-day-bar{width:100%;color:inherit;background:0 0;border:0;border-radius:0;justify-content:space-between;align-items:center;gap:.5rem;padding:.55rem .7rem;display:flex}.dashboard-page .nutrition-focus-day-bar.is-expanded{background:linear-gradient(90deg,#eeeaf8,#f6f2fc)}.nutrition-focus-day-panel{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .2s,opacity .2s;display:grid}.nutrition-focus-day-panel.is-expanded{opacity:1;grid-template-rows:1fr}.nutrition-focus-day-panel-inner{min-height:0;padding:0 .35rem .35rem;overflow:hidden}.nutrition-focus-day .nutrition-day-card{margin:0}.nutrition-focus-day .nutrition-day-card .calendar-day-title{display:none}.nutrition-assistant-wrap{position:relative}.dashboard-page .nutrition-assistant-bubble{border:1px solid color-mix(in srgb,var(--brand)40%,var(--border));width:fit-content;color:var(--brand-strong);background:linear-gradient(155deg,#efeafb,#e8e1f8)}.nutrition-assistant-panel{border:1px solid var(--border);background:#fdfcff;border-radius:14px;gap:.6rem;padding:.72rem;display:grid}.nutrition-assistant-message{border:1px solid color-mix(in srgb,var(--brand)36%,var(--border));background:#eee9f8;border-radius:12px;padding:.62rem}.nutrition-modal{width:min(980px,100%)}.nutrition-recipe-filter-row{gap:.5rem;display:grid}.nutrition-variant-only{color:var(--muted);font-size:.85rem}.dashboard-page .nutrition-clear-recipe-button{border:1px dashed color-mix(in srgb,var(--brand)38%,var(--border));color:var(--brand-strong);background:#f5f1fc}.nutrition-recipe-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.55rem;display:grid}.nutrition-recipe-card{border:1px solid var(--border);background:#fff;border-radius:12px;gap:.4rem;padding:.6rem;display:grid}.nutrition-recipe-card-top{justify-content:space-between;align-items:start;gap:.45rem;display:flex}.nutrition-recipe-card-title{font-weight:700;line-height:1.2}.nutrition-recipe-card-badges{flex-wrap:wrap;gap:.3rem;display:flex}.nutrition-recipe-desc{font-size:.83rem}.nutrition-recipes-toolbar{z-index:8;background:color-mix(in srgb,var(--surface)92%,#f3edf9);position:sticky;top:5.6rem}.nutrition-recipes-search-wrap{border:1px solid color-mix(in srgb,var(--brand)30%,var(--border));background:#fff;border-radius:12px;align-items:center;gap:.5rem;padding:.15rem .55rem;display:flex}.nutrition-recipes-search-wrap svg{color:var(--brand-strong)}.nutrition-recipes-search-wrap input{border:0;padding-left:0;padding-right:0}.nutrition-recipes-search-wrap input:focus{outline:none}.nutrition-recipes-filter-row{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.nutrition-recipes-page-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.nutrition-recipes-product-card{border-radius:14px;transition:transform .12s,box-shadow .12s;box-shadow:0 10px 20px #1813240f}.nutrition-recipes-product-card:hover{transform:translateY(-2px);box-shadow:0 14px 26px #1813241c}.nutrition-recipes-macro-grid{margin-top:.15rem}.nutrition-detail-list{gap:.28rem;margin:0;padding-left:1.1rem;display:grid}.dashboard-page input,.dashboard-page select,.dashboard-page textarea,.admin-page-stack input,.admin-page-stack select,.admin-page-stack textarea,.auth-page input,.auth-page select,.auth-page textarea{border:1px solid var(--border);background:var(--surface);color:var(--foreground);border-radius:10px;width:100%;padding:.62rem .72rem}.dashboard-page button,.admin-page-stack button,.auth-page button,.logout-button{border:1px solid var(--brand-strong);background:linear-gradient(140deg,var(--brand),var(--brand-strong));color:#fff;font:inherit;cursor:pointer;border-radius:10px;padding:.56rem .84rem}.dashboard-page button:hover,.auth-page button:hover,.logout-button:hover{filter:brightness(1.05)}.logout-button{padding:.42rem .68rem;font-size:.8rem}.auth-wrap{place-items:center;min-height:100dvh;padding:1rem;display:grid}.auth-card{border:1px solid var(--border);background:var(--surface);width:min(460px,100%);box-shadow:var(--shadow-soft);border-radius:18px;padding:1.2rem}.error-text{color:var(--danger)}@media (min-width:900px){.user-topbar-inner{padding:.82rem 1.2rem}.user-nav-desktop{display:block}.user-menu-mobile{display:none}.user-main{padding:1.2rem}.admin-nav{overflow:visible}.admin-topbar-inner{padding:.72rem 1.2rem}.admin-main{padding:1.2rem}}@media (max-width:760px){.admin-toolbar{flex-wrap:wrap}.admin-toolbar-search{width:100%}}@media (min-width:720px){.dashboard-hero{grid-template-columns:1.2fr minmax(250px,.8fr);align-items:stretch}.dashboard-main-grid{grid-template-columns:1.3fr .9fr}.pair-invite-form,.pair-accept-form,.recipe-add-form{grid-template-columns:minmax(220px,1fr) auto;align-items:center}.manual-item-form{grid-template-columns:minmax(220px,1fr) 110px 90px auto;align-items:center}.shopping-item-row{grid-template-columns:auto minmax(0,1fr) auto auto}.path-assignment-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.training-delete-form{grid-template-columns:auto auto;justify-content:start;align-items:center}.nutrition-recipe-filter-row{grid-template-columns:minmax(0,1fr) 120px auto;align-items:center}.nutrition-daily-focus-list{gap:.55rem}}
