.login-form{font-size:1.2rem;background:#fff;padding:2.5rem 2.75rem 2.25rem;border-radius:1.5rem;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:1rem;width:100%;max-width:var(--content-max-xs);margin:0 auto}.login-form--embedded{padding:0;border-radius:0;box-shadow:none;max-width:none;scroll-margin-block:1rem}.login-form h2{margin-top:0;margin-bottom:.5rem;text-align:center}.login-form input{font-size:.8em;padding:.85rem 1rem;border-radius:.75rem;border:none;background:#f4f4f4}.login-form button{padding:.7rem .9rem;border-radius:var(--border-radius-pill);border:none;background:var(--color-accent);color:#fff;cursor:pointer;font-weight:600;font-size:.9em;transition:transform .12s ease,box-shadow .12s ease,background-color .15s ease}.login-form button:hover:not(:disabled){transform:translateY(-.0625rem);box-shadow:var(--shadow-interactive);background-color:#5d7b70}.login-form button:disabled{opacity:.65;cursor:not-allowed}.login-form button:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-interactive-sm)}.login-error{color:#d64545;font-size:.9rem}.link{cursor:pointer;color:var(--color-accent);text-decoration:underline;font-size:.9rem;text-align:center;margin-top:.5rem}.auth-switch{margin-top:1rem;text-align:center;font-size:.9rem}.auth-try-banner{margin:1.35rem auto 0;max-width:var(--content-max-xs);padding:1.25rem 1.35rem 1.2rem;border-radius:1.125rem;background:linear-gradient(145deg,#708d8124,#f0f6e9f2 55%,#fff);border:.125rem solid var(--color-accent);box-shadow:var(--shadow-lg);text-align:center}.auth-try-banner__eyebrow{margin:0 0 .35rem;font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent)}.auth-try-banner__title{margin:0 0 .5rem;font-family:var(--font-title);font-size:1.05rem;line-height:1.35;color:var(--color-text)}.auth-try-banner__cta{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:.88rem 1rem;border-radius:3em;border:none;background-color:var(--color-accent);color:#fff!important;font-weight:600;font-size:.95rem;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background-color .15s ease}.auth-try-banner__cta:hover{transform:translateY(-.0625rem);box-shadow:var(--shadow-interactive);background-color:#5d7b70;color:#fff}.auth-try-banner__cta:active{transform:translateY(0)}.auth-try-banner__footnote{margin:.85rem 0 0;font-size:.82rem;line-height:1.4;color:#666}.auth-try-banner__link{background:none;border:none;padding:0;margin:0;color:var(--color-accent);text-decoration:underline;cursor:pointer;font:inherit}.auth-overlay{position:fixed;inset:0;background:#00000073;-webkit-backdrop-filter:blur(.375rem);backdrop-filter:blur(.375rem);display:flex;align-items:center;justify-content:center;z-index:40}.auth-modal{position:relative;background:#fff;padding:2.5rem 2.75rem 2rem;border-radius:1.5rem;box-shadow:var(--shadow-xl);max-width:var(--content-max-xs);width:100%;max-height:min(92vh,45rem);overflow-y:auto}.auth-modal__close{position:absolute;top:1rem;right:1rem;width:2rem;height:2rem;border-radius:var(--border-radius-pill);background:#f0f6e9e6;font-size:1rem;line-height:1}.auth-modal__switch{margin-top:1rem;text-align:center;font-size:.9rem}.link-button{background:none;border:none;padding:0;margin:0;color:var(--color-accent);text-decoration:underline;cursor:pointer;font:inherit}.header{display:flex;justify-content:start;align-items:center;padding:1rem;position:relative}.header__nav{font-size:var(--font-size-brand);display:flex;margin:0 auto;gap:3rem;font-weight:700}.header__logo{font-size:var(--font-size-h3);font-family:var(--font-title)}.header__burger{display:none}@media(max-width:48rem){.header{justify-content:space-between}.header__burger{display:flex;flex-direction:column;font-size:1rem;width:3em;height:2em;justify-content:space-between;background:none;border:none;cursor:pointer;z-index:var(--z-header)}.header__burger span{height:.2rem;width:100%;background:var(--color-text);border-radius:.2rem;transition:all .3s ease}.header__burger--open span:nth-child(1){transform:translateY(.8em) rotate(45deg)}.header__burger--open span:nth-child(2){opacity:0}.header__burger--open span:nth-child(3){transform:translateY(-.8em) rotate(-45deg)}.header__burger--back{position:relative;justify-content:center}.header__burger--back span{position:absolute;transform-origin:left center}.header__burger--back span:nth-child(1){transform:rotate(-34deg) scaleX(.6)}.header__burger--back span:nth-child(3){transform:rotate(34deg) scaleX(.6)}.header__nav{position:fixed;top:0;left:0;width:100%;height:100vh;background:var(--color-bg);-webkit-backdrop-filter:blur(.375rem);backdrop-filter:blur(.375rem);display:flex;flex-direction:column;justify-content:start;align-items:start;padding:8rem;gap:2rem;transform:translate(-100%);opacity:0;transition:transform .4s cubic-bezier(.4,0,.2,1),opacity .25s ease;z-index:var(--z-nav-overlay)}.header__nav--open{transform:translate(0);opacity:1}.header__nav a{font-size:var(--font-size-h2);text-decoration:none;color:var(--color-text);font-weight:500}.header__nav a:hover{opacity:.7}}.footer{display:flex;flex-direction:column;align-items:center;gap:.35rem;text-align:center;padding:var(--spacing);background-color:var(--color-bg);color:var(--color-black);font-size:.9rem}.footer p{margin:0}.footer__link{font-size:.78rem;opacity:.66;letter-spacing:.01em}.footer__link:hover,.footer__link:focus-visible{opacity:.95}:root{--client-nav-bar-icon-size: 2.25rem;--client-nav-bar-height: calc( var(--client-nav-bar-icon-size) + 1.25rem );--client-nav-bar-rail-width: 14rem}.site-shell--client-nav-bar{padding-bottom:calc(var(--client-nav-bar-height) + env(safe-area-inset-bottom,0))}.client-nav-bar{position:fixed;left:0;right:0;bottom:0;z-index:900;display:flex;justify-content:center;align-items:stretch;min-height:var(--client-nav-bar-height);padding-bottom:env(safe-area-inset-bottom,0);background:var(--color-bg);border-top:.1em solid var(--color-accent-transparent);box-shadow:var(--shadow-nav-top)}.client-nav-bar__list{display:flex;flex:1;max-width:32rem;margin:0;padding:0 var(--spacing);list-style:none;align-items:stretch;justify-content:space-between}.client-nav-bar__item{flex:1;display:flex;justify-content:center;min-width:0}.client-nav-bar__link{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;max-width:5.5rem;gap:.15rem;padding:.4rem .35rem;opacity:.55;transition:opacity .15s ease;text-decoration:none;color:var(--color-text)}.client-nav-bar__link--active{opacity:1}.client-nav-bar__icon{display:block;flex-shrink:0;width:var(--client-nav-bar-icon-size);height:var(--client-nav-bar-icon-size);object-fit:contain}.client-nav-bar__label{position:absolute;width:.0625rem;height:.0625rem;padding:0;margin:-.0625rem;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(orientation:landscape)and (min-width:36rem){.site-shell--client-nav-bar{padding-bottom:0;padding-left:calc(var(--client-nav-bar-rail-width) + env(safe-area-inset-left,0))}.client-nav-bar{top:0;right:auto;bottom:0;width:var(--client-nav-bar-rail-width);min-height:100vh;min-height:100dvh;padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0);padding-left:env(safe-area-inset-left,0);padding-right:0;border-top:none;border-right:.1em solid var(--color-accent-transparent);box-shadow:var(--shadow-nav-left);justify-content:flex-start;align-items:stretch}.client-nav-bar__list{flex-direction:column;flex:0 1 auto;justify-content:center;gap:.25rem;max-width:none;width:100%;padding:var(--spacing) .65rem var(--spacing) .75rem}.client-nav-bar__item{flex:0 0 auto;width:100%;justify-content:stretch}.client-nav-bar__link{flex-direction:row;justify-content:flex-start;align-items:center;gap:.65rem;max-width:none;width:100%;padding:.55rem .5rem;border-radius:var(--border-radius);font-size:.95rem;font-weight:500}.client-nav-bar__link--active{border:solid .2rem var(--color-accent)}.client-nav-bar__label{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;white-space:normal;line-height:1.25}}.form-container{background:#fff;max-width:var(--content-max-sm);margin:auto;padding:2rem;border-radius:1rem;box-shadow:var(--shadow-lg);overflow:hidden}.form-container .progress-bar{width:90%;height:.5rem;background:#eee;border-radius:.3125rem;overflow:hidden;margin:1rem auto 2rem}.form-container .progress{height:100%;background:var(--color-accent);min-width:4%;transition:width .4s ease}.form-step{animation:slide-in .45s ease both}@keyframes slide-in{0%{opacity:0;transform:translate(2.5rem)}to{opacity:1;transform:translate(0)}}.title-label{margin-top:2rem;margin-bottom:1rem;font-size:var(--font-size-h3);font-weight:600;color:var(--color-text)}.form-container input,.form-container select{width:100%;padding:.75rem;margin-top:.4rem;border:.0625rem solid #ddd;border-radius:.375rem;font-size:1rem;box-sizing:border-box}.frequency-options{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin:1.2rem 0}.option-card{display:flex;align-items:center;justify-content:center;height:3rem;padding:.75rem;background:none;border:.125rem solid #474747;border-radius:.625rem;cursor:pointer;transition:background .3s ease,transform .2s ease;font-size:var(--font-size-body-lg)}.option-card.selected{background:var(--color-accent);color:#fff;transform:scale(1.03);box-shadow:var(--shadow-sm)}.meal-list{display:flex;flex-direction:column;margin-bottom:2rem}.meal-row{display:flex;align-items:center;padding:.6rem 0}.meal-label{flex:1;font-size:var(--font-size-h3);color:var(--color-text)}.meal-status{margin-right:1rem;font-size:.95rem}.meal-status.included{color:var(--color-accent)}.meal-status.outdoor{color:#474747}.meal-status.skipped{color:#aaa}.meal-modify{border-radius:.9rem;padding:.25rem .5rem;font-size:.9rem;cursor:pointer}.calculator{margin-top:1rem;padding:1rem;border:.0625rem solid var(--color-accent);border-radius:.5rem;animation:slide-down .35s ease both}@keyframes slide-down{0%{opacity:0;transform:translateY(-.625rem)}to{opacity:1;transform:translateY(0)}}.form-button{width:100%;margin-top:1rem;padding:.75rem 1rem;border-radius:.5rem;font-size:var(--font-size-button);cursor:pointer}.submit-button{width:100%;margin-top:1.6rem;padding:.9rem 1rem;background:var(--color-accent);color:#fff;border:none;border-radius:.6rem;font-size:var(--font-size-button);font-weight:600;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.submit-button:hover{transform:translateY(-.0625rem);box-shadow:var(--shadow-interactive-sm)}@media(max-width:30rem){.frequency-options{grid-template-columns:1fr}}.page-up{position:fixed;bottom:2rem;right:2rem;width:3rem;height:3rem;border-radius:50%;background:var(--color-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.6em;font-weight:700;line-height:1;cursor:pointer;text-decoration:none;transition:transform .2s ease,opacity .2s ease;opacity:0;animation:fadeUp .3s ease forwards;touch-action:manipulation}@keyframes fadeUp{0%{opacity:0;transform:translateY(.375rem)}to{opacity:1;transform:translateY(0)}}.page-up:hover{transform:translateY(-.125rem)}.sportif-vege{background:var(--color-bg)}.sv-hero{padding:var(--spacing-3xl) var(--spacing-xl)}.sv-hero__content{max-width:var(--content-max-lg);margin:0 auto;display:grid;grid-template-columns:1.1fr .9fr;gap:var(--spacing-2xl);align-items:center}.sv-hero__text h1{margin-bottom:var(--spacing-lg)}.sv-hero__subtitle{margin-bottom:var(--spacing-xl)}.cta-wrapper{display:flex;flex-direction:column;align-items:center;gap:.4rem}.sv-hero__cta{margin-bottom:var(--spacing-sm);color:#fff!important}.guarantee{margin-top:var(--spacing-sm);font-size:var(--font-size-small);position:relative;display:inline-block}.guarantee:after{content:"";position:absolute;left:-5%;bottom:-.375rem;width:110%;height:.375rem;background:var(--color-accent);opacity:.35;border-radius:50% 50% 40% 40%;transform:rotate(-1.5deg)}.sv-hero__media{aspect-ratio:1 / 1;border-radius:var(--border-radius-lg);overflow:hidden}.sv-hero__media video{width:100%;height:100%;object-fit:cover}.sv-form{padding:var(--spacing-3xl) var(--spacing-xl) var(--spacing-3xl);max-width:var(--content-max-md);margin:0 auto}.section-intro{text-align:left;max-width:var(--content-max-sm);margin-bottom:var(--spacing-xl)}.section-intro p{font-size:var(--font-size-body-lg)}.sv-form__features{list-style:none;padding:0;margin:0 auto var(--spacing-2xl);max-width:37.5rem}.sv-form__features li{margin-bottom:.8rem;font-size:var(--font-size-body-lg)}@media(max-width:48rem){.sv-hero{padding:var(--spacing-2xl) var(--spacing-md)}.sv-hero__content{grid-template-columns:1fr;text-align:center}.sv-hero__media{order:2}.sv-hero__cta{margin:var(--spacing-lg) auto var(--spacing-sm)}.sv-form{padding:var(--spacing-2xl) var(--spacing-md) var(--spacing-3xl)}}.apropos{--apropos-photo-size: 20rem;max-width:max(var(--content-max-sm),90vw);margin:0 auto;padding:2.5rem 1.5rem 4rem;color:var(--color-text);background:var(--color-bg)}.apropos__title{text-align:center;margin:0 0 1.75rem;line-height:var(--line-height-tight)}.apropos__intro{text-align:left;font-size:var(--font-size-body-lg);line-height:var(--line-height-relaxed);margin:0 0 2.5rem}.apropos__section-title{margin:0 0 1.75rem;color:var(--color-text)}.apropos-team{display:flex;flex-direction:column;gap:2.75rem;margin-bottom:3rem}.apropos-block{display:grid;grid-template-columns:minmax(0,var(--apropos-photo-size)) minmax(0,1fr);gap:1.5rem 2rem;align-items:start}.apropos-block--image-right{grid-template-columns:minmax(0,1fr) minmax(0,var(--apropos-photo-size))}.apropos-block--image-right .apropos-block__media{grid-column:2;grid-row:1}.apropos-block--image-right .apropos-block__text{grid-column:1;grid-row:1}.apropos-block__media{margin:0}.apropos-block__photo{display:block;width:var(--apropos-photo-size);height:var(--apropos-photo-size);object-fit:contain;border-radius:var(--apropos-photo-size);box-shadow:var(--shadow-md)}.apropos-block__text{min-width:0}.apropos-block__text--left{text-align:left}.apropos-block__text--right{text-align:right}.apropos-block__name{margin:0 0 .65rem;line-height:var(--line-height-tight)}.apropos-block__bio{font-size:var(--font-size-body);line-height:var(--line-height-relaxed);margin:0}.apropos-contact{border-top:var(--border-width) solid var(--color-accent-transparent);padding-top:2.25rem}.apropos-contact__title{margin:0 0 .75rem}.apropos-contact__intro{text-align:left;font-size:var(--font-size-body);line-height:var(--line-height-relaxed);margin:0 0 1.25rem}.apropos-contact__links{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.75rem 1.25rem}.apropos-contact__links a{color:var(--color-accent);font-weight:600;text-decoration:underline;text-underline-offset:.19rem}.apropos-contact__links a:hover{color:var(--color-accent-red)}@media(max-width:50rem){.apropos{--apropos-photo-size: 14rem}.apropos-block,.apropos-block--image-right{grid-template-columns:1fr}.apropos-block--image-right .apropos-block__media,.apropos-block--image-right .apropos-block__text{grid-column:1;grid-row:auto}.apropos-block--image-right .apropos-block__media{order:-1}.apropos-block__photo{width:100%;max-width:var(--apropos-photo-size);height:var(--apropos-photo-size);margin-left:auto;margin-right:auto}.apropos-block__text--right{text-align:left}.apropos-block--image-right .apropos-block__text{order:1}}.privacy-policy{padding:clamp(2rem,4vw,4rem) var(--spacing-md)}.privacy-policy__content{width:min(var(--content-max-md),100%);margin:0 auto;padding:clamp(.4rem,1vw,var(--spacing-md)) 0}.privacy-policy__title{margin-top:0;line-height:var(--line-height-tight);color:var(--color-text-dark)}.privacy-policy__effective-date{margin:.7rem 0 0;font-size:var(--font-size-small);color:var(--color-text-light)}.privacy-policy__accent{color:var(--color-accent);font-size:1.03em}.privacy-policy__intro{margin:var(--spacing-lg) 0 0;line-height:var(--line-height-relaxed);color:var(--color-text)}.privacy-policy__sections{display:flex;flex-direction:column;margin-top:1.7rem}.privacy-policy__section{padding:var(--spacing-md) 0 .9rem}.privacy-policy__section h2{margin:0;font-family:var(--font-body);font-size:var(--font-size-h3);color:var(--color-text-dark);font-weight:500;letter-spacing:.01em}.privacy-policy__section p{margin:.8rem 0 0;line-height:var(--line-height-body);color:var(--color-text)}.privacy-policy__section ul{margin:.8rem 0 0;padding-left:1.15rem}.privacy-policy__section li{line-height:1.58;color:var(--color-text)}.privacy-policy__bullet-label{color:var(--color-text-dark);font-size:var(--font-size-body-lg)}.privacy-policy__bullet-description{font-style:italic;font-weight:400;color:var(--color-text-light)}.privacy-policy__section li+li{margin-top:.4rem}.privacy-policy__contact-link{display:inline-block;margin-top:.7rem;font-weight:600}@media(max-width:48rem){.privacy-policy{padding-inline:.75rem}}.verify-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f8fafc,#eef2f7);padding:var(--spacing-lg)}.verify-card{background:var(--color-surface);padding:var(--spacing-3xl);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);text-align:center;max-width:var(--content-max-xs);width:100%;animation:fadeIn .3s ease-in-out}.verify-card h1{margin-top:.9rem}.verify-card p{color:var(--color-text-muted);margin-top:var(--spacing-sm)}.primary-btn,.secondary-btn{margin-top:var(--spacing-2xl);padding:.75rem 1.125rem;border-radius:var(--border-radius-md);border:none;cursor:pointer;font-weight:500;font-size:var(--font-size-body);transition:.2s ease}.primary-btn{background:var(--color-text-dark);color:#fff}.primary-btn:hover{background:#000}.secondary-btn{background:var(--color-border)}.secondary-btn:hover{background:#d1d5db}.spinner{width:2.5rem;height:2.5rem;border:.25rem solid var(--color-border);border-top:.25rem solid var(--color-text-dark);border-radius:50%;margin:0 auto;animation:spin 1s linear infinite}.success-icon{font-size:var(--font-size-icon-lg);color:var(--color-success)}.error-icon{font-size:var(--font-size-icon-lg);color:var(--color-error)}@keyframes spin{to{transform:rotate(360deg)}}.loader-spinner{margin:auto;width:4rem;aspect-ratio:1;border:.7rem solid #ddd;border-top-color:var(--color-accent);border-radius:50%;animation:loader-spin .9s linear infinite}@keyframes loader-spin{to{transform:rotate(360deg)}}.reset-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg);padding:var(--spacing-lg)}.reset-card{background:var(--color-surface);padding:var(--spacing-3xl);border-radius:var(--border-radius);box-shadow:var(--shadow-lg);text-align:left;max-width:var(--content-max-sm);width:100%;animation:fadeIn .3s ease-in-out}.reset-card h1{margin-top:.3rem}.reset-card p{color:var(--color-text-muted);margin-top:var(--spacing-sm)}.reset-form{margin-top:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-md)}.field-group{display:flex;flex-direction:column;gap:.38rem}.field-group label{font-size:var(--font-size-label);font-weight:500;color:var(--color-text-dark)}.field-group input{padding:.6rem .7rem;border-radius:var(--border-radius-md);border:var(--border-width) solid var(--color-border);font-size:var(--font-size-body);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.field-group input:focus{border-color:var(--color-text-dark);box-shadow:var(--shadow-focus)}.field-group small{font-size:var(--font-size-caption);color:#9ca3af}.reset-error{margin-top:var(--spacing-xs);font-size:var(--font-size-label);color:var(--color-error)}.success-icon{font-size:var(--font-size-icon-lg);color:var(--color-success);text-align:center}.error-icon{font-size:var(--font-size-icon-lg);color:var(--color-error);text-align:center}@keyframes fadeIn{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}.migration-card{max-width:var(--content-max-sm)}.migration-title{margin-top:0;line-height:var(--line-height-tight)}.migration-message{white-space:pre-line;color:var(--color-text);line-height:1.6;margin-top:1rem}.migration-divider{margin:1.75rem 0 .5rem;border:none;border-top:var(--border-width) solid var(--color-border)}.dashboard-news{position:relative;margin-bottom:2rem;border-radius:1.35rem;overflow:hidden;border:.125rem solid rgba(112,141,129,.35);background:linear-gradient(135deg,#fffffffa,#f0f6e9eb 42%,#708d811f);box-shadow:var(--shadow-feature)}.dashboard-news__glow{position:absolute;top:-3rem;right:-2rem;width:9rem;height:9rem;border-radius:50%;background:radial-gradient(circle,rgba(112,141,129,.28) 0%,transparent 70%);pointer-events:none}.dashboard-news__inner{position:relative;padding:1.5rem 1.6rem 1.45rem}.dashboard-news__header{margin-bottom:1rem}.dashboard-news__eyebrow{margin:0 0 .35rem;font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent)}.dashboard-news__title{font-size:clamp(1.15rem,2.8vw,1.45rem);line-height:1.3;color:var(--color-text)}.dashboard-news__highlights{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.dashboard-news__pill{display:inline-flex;align-items:center;padding:.35rem .75rem;border-radius:2em;font-size:.78rem;font-weight:600;color:var(--color-accent);background:#708d811f;border:.0625rem solid rgba(112,141,129,.22)}.dashboard-news__lead{margin:0 0 1.25rem;font-size:.96rem;line-height:1.55;color:var(--color-text);max-width:var(--content-max-md)}.dashboard-news__beta{padding:1.15rem 1.2rem 1.1rem;border-radius:1rem;background:#ffffffb8;border:.0625rem solid rgba(112,141,129,.2);-webkit-backdrop-filter:blur(.25rem);backdrop-filter:blur(.25rem)}.dashboard-news__beta-title{margin:0 0 .45rem;font-family:var(--font-body);font-size:1rem;font-weight:700;color:var(--color-text)}.dashboard-news__beta-text{margin:0 0 .75rem;font-size:.92rem;line-height:1.45;color:var(--color-text)}.dashboard-news__topics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem 1rem;margin:0 0 1.1rem;padding:0;list-style:none}.dashboard-news__topics li{position:relative;padding-left:1.15rem;font-size:.88rem;line-height:1.35;color:#5a5a5a}.dashboard-news__topics li:before{content:"";position:absolute;left:0;top:.45em;width:.45rem;height:.45rem;border-radius:50%;background:var(--color-accent)}.dashboard-news__cta{display:block!important;text-align:center;margin:0 auto!important;width:100%;max-width:var(--content-max-xs);padding:.85rem 1.25rem;font-weight:600;text-decoration:none;transition:transform .12s ease,box-shadow .12s ease}.dashboard-news__cta:hover{transform:translateY(-.0625rem);box-shadow:var(--shadow-accent);color:#fff}.dashboard-news__footnote{text-align:center;margin:.75rem 0 0;font-size:.8rem;line-height:1.4;color:#777}@media(max-width:48rem){.dashboard-news__inner{padding:1.25rem 1.15rem 1.2rem}.dashboard-news__topics{grid-template-columns:1fr}}.nav-card{--nav-card-icon-size: clamp(3rem, 6vw, 4rem);display:flex;flex-direction:row;align-items:flex-start;gap:1rem;border-radius:1.2rem;padding:1.2rem 1.4rem;background:#fff;box-shadow:var(--shadow-md);text-align:left;font-family:inherit;cursor:pointer;border:none;transition:box-shadow .2s ease,transform .15s ease}.nav-card:hover{box-shadow:var(--shadow-md-hover)}.nav-card:focus-visible{outline:.125rem solid var(--color-accent);outline-offset:.125rem}.nav-card__icon{display:block;flex-shrink:0;width:var(--nav-card-icon-size);height:var(--nav-card-icon-size);object-fit:contain;align-self:center;margin-right:.4rem}.nav-card__content{display:flex;flex-direction:column;gap:.75rem;min-width:0}.nav-card__title{margin:0}.nav-card__description{margin:0;font-size:.95rem;color:var(--color-text);line-height:1.45}.client-page{max-width:var(--content-max-md);margin-inline:auto;padding-inline:1.5rem}.client-page__header{text-align:center;margin-bottom:2rem}.client-page__subtitle{margin-top:.5rem;color:var(--color-text-muted)}.client-page__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.button--ghost-danger{background:transparent;border-color:var(--color-accent-red);color:var(--color-accent-red)}.client-page__privacy-link-wrapper{margin-top:1.25rem;text-align:center}.client-page__privacy-link{color:var(--color-accent);font-size:.92rem;opacity:.85;text-decoration:none}.client-page__privacy-link:hover,.client-page__privacy-link:focus-visible{opacity:1;text-decoration:underline}@media(max-width:48rem){.client-page{padding-inline:1rem}.client-page__grid,.user-form__group{grid-template-columns:1fr}}.grocery-footer{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.grocery-item-row{display:flex;justify-content:flex-start;align-items:center;gap:.5em;font-size:.9em}.grocery-item-row--checked .grocery-item-row__name,.grocery-item-row--checked .grocery-item-row__name-input,.grocery-item-row--checked .grocery-item-row__qty,.grocery-item-row--checked .grocery-item-row__unit{text-decoration:line-through;color:#b0b0b0}.grocery-item-row__checkbox{transform:scale(1.5);background-color:transparent}.grocery-item-row__checkbox:checked{accent-color:lightgrey}.grocery-item-row__qty{font-family:var(--font-body);color:var(--color-text);display:inline-block;max-width:8ch;padding:.2em .3em;border-radius:.6em;border:.05em solid var(--color-accent-transparent);background:transparent}.grocery-item-row__unit{min-width:2ch}.grocery-item-row__name{width:fit-content;padding:.2em;min-width:10ch;display:inline-block}.grocery-item-row__name-input{font-family:var(--font-body);width:fit-content;min-width:10ch;padding:.2em .3em;border-radius:.6em;border:.05em solid var(--color-accent-transparent)}.grocery-item-row__delete{margin-left:auto;border:none;padding:.2em .3em;font-weight:700;font-size:1.4em;background:transparent;color:var(--color-accent-red);cursor:pointer}.collapsible-arrow{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;position:relative;flex-shrink:0}.collapsible-arrow__arm{position:absolute;width:.8rem;height:.125rem;background-color:currentColor;border-radius:.0625rem;transition:transform .2s ease}.collapsible-arrow__arm--left{left:-.1rem;transform-origin:center center;transform:rotate(45deg)}.collapsible-arrow__arm--right{right:0rem;transform-origin:center center;transform:rotate(-45deg)}.collapsible-arrow--open .collapsible-arrow__arm--left{transform:rotate(-45deg)}.collapsible-arrow--open .collapsible-arrow__arm--right{transform:rotate(45deg)}.grocery-category{font-size:1rem;border:.05rem solid #ddd;border-radius:.6rem;margin:.2rem 0;overflow:hidden;background:#fff;box-shadow:var(--shadow-sm);transition:box-shadow .3s ease}.grocery-category--empty .grocery-category__header{background-color:#e0e0e0;color:#666}.grocery-category__header{display:flex;align-items:center;padding:.75rem 1rem;background:#f9f9f9;cursor:pointer;-webkit-user-select:none;user-select:none}.grocery-category__header:hover{background:#f0f0f0}.grocery-category--empty .grocery-category__header:hover{background:#e8e8e8}.grocery-category__icon{width:1.25rem;height:1.25rem;margin-right:.75rem;object-fit:contain}.grocery-category__title{flex:1;font-weight:600}.grocery-category__content{overflow:hidden;max-height:0;transition:max-height .3s ease}.grocery-category__content--open{max-height:125rem}.grocery-items{padding:.6rem 1rem .9rem;display:flex;flex-direction:column;gap:.35rem}.grocery-category__empty{font-size:.9rem;color:#888;margin:0}.grocery-category__add-button{font-size:.8em!important;border-radius:.8em!important;margin-top:.3rem;align-self:flex-start;border-color:var(--color-accent-transparent)!important;padding:.2em .5em!important}@media(max-width:48rem){.grocery-category{font-size:1.1rem}}.grocery-panels{display:flex;flex-direction:column;gap:.75rem}.grocery-layout{display:flex;flex-direction:column;gap:1.5rem}.grocery-error{color:#8d0801}.user-form{display:flex;flex-direction:row;gap:1.25rem}.user-form__group{display:flex;flex-direction:column;gap:.7rem}.user-form label{display:flex;flex-direction:column;font-size:.85rem;gap:.25rem}.user-form input,.user-form select{padding:.35rem .5rem;border-radius:.375rem;border:.0625rem solid #ccc;font-size:.9rem}.user-card__actions{display:flex;flex-direction:row;gap:.75rem;margin-top:1rem}.user-card__actions .button--irreversible{margin-left:auto}@media(max-width:48rem){.user-form{flex-direction:column}}.user-card{border-radius:.75rem;background:#fff;box-shadow:var(--shadow-md);overflow:hidden}.user-card__header{width:100%;padding:.9rem 1.2rem;border:none;background:#f9f9f9;display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-family:inherit;text-align:left}.user-card__header-text{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap}.user-card__title{font-weight:600}.user-card__subtitle{font-size:.85rem;color:#666}.user-card__body{padding:1rem 1.2rem 1.2rem}.client-users{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.users-list-actions{display:flex;flex-direction:row;justify-content:flex-start;margin-top:1rem}.users-settings{margin-top:2rem;padding:1rem 1.25rem;border:.0625rem solid rgba(0,0,0,.08);border-radius:1rem;background:#fff}.users-settings__trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;background:transparent;border:none;padding:0;color:inherit}.users-settings__trigger-left{display:inline-flex;align-items:center;gap:.65rem}.users-settings__icon{width:1.3rem;height:1.3rem;opacity:.9}.users-settings__trigger-left h2{margin:0;font-size:clamp(1.2rem,2vw,1.35rem)}.users-settings__header{margin-top:.35rem}.users-settings__subtitle{margin:0;color:#616161}.users-settings__content{margin-top:1rem;padding-top:1rem;border-top:.0625rem solid rgba(0,0,0,.08);display:flex;flex-direction:column;gap:.75rem}.users-settings__content p{margin:0;color:#4d4d4d;line-height:1.4}.users-settings__content .button{align-self:flex-start}.users-settings__delete-link{display:inline;border:none;background:none;padding:0;margin:0;font:inherit;color:var(--color-accent-red);text-decoration:underline;text-underline-offset:.12em;cursor:pointer}.users-settings__delete-link:hover:not(:disabled){opacity:.85}.users-settings__delete-link:disabled{color:#b37e7e;cursor:not-allowed;text-decoration:none}@media(max-width:48rem){.users-settings{padding:1rem}}.user-tag{display:inline-block;padding:.1875rem .5rem;border-radius:.3125rem;font-size:.8rem}button.user-tag{cursor:pointer;font:inherit;margin:0}.user-tag--solid{border:.125rem solid #708d81;background-color:#708d81;color:#fff}.user-tag--bordered{border:.125rem solid #708d81;color:#708d81}.user-tag--greyed{border:.125rem solid #ccc;color:#aaa}.weekplan-wrapper{width:100%}.weekplan-help{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:.75rem;padding:.5rem .75rem;border:.0625rem solid #ddd;border-radius:.5rem;background:#fafafa}.weekplan-help__text{margin:0;font-size:.9rem}.weekplan-help .user-tag{cursor:pointer}.weekplan-table-wrapper{display:block;overflow-x:auto;width:100%}.weekplan-table{font-size:clamp(.75rem,1vw,1rem);width:100%;border-collapse:collapse;border-radius:.8rem;margin-top:0;table-layout:fixed}.weekplan-table__day-col{width:clamp(5rem,12vw,12rem);white-space:nowrap}.weekplan-table__meal-col{max-width:21.5%}.weekplan-table th,.weekplan-table td{border:.0625rem solid #ddd;padding:.5rem .75rem;text-align:left;overflow:hidden}.weekplan-row--today{background-color:#f0f4f8;font-weight:600}.weekplan-cell{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.4rem}.weekplan-table--editable .weekplan-cell .user-tag{cursor:pointer}.week-summary.radar-window{background:#fff;box-shadow:var(--shadow-md);border-radius:.9375rem;margin-top:4rem;transition:all .3s ease;overflow:hidden;padding:1rem}.week-summary__header.radar-header{display:flex;align-items:center;justify-content:center;position:relative;cursor:pointer;width:100%;border:none;background:transparent;padding:0;font:inherit}.week-summary__title{flex:0 1 auto;text-align:center;margin:0}.week-summary__header .collapsible-arrow{position:absolute;right:1rem;top:50%;transform:translateY(-50%)}.radar-content{opacity:0;max-height:0;overflow:hidden;transition:all .4s ease}.radar-content.radar-content--expanded{margin-top:2rem;opacity:1;max-height:125rem}.week-summary__block-title.title,.week-summary__progress .title{display:flex;align-items:center;justify-content:center;font-size:1.2rem;margin-bottom:.8rem}.tooltip.info-icon{display:inline-block;margin-left:.5rem;width:1rem;height:1rem;border-radius:50%;background-color:#ccc;color:#fff;text-align:center;line-height:1rem;cursor:help;font-size:.75rem}.week-summary__radar-block{margin-bottom:1rem}.week-summary__progress.progress-container{margin-top:1.25rem}.week-summary__progress .progress-bar{position:relative;width:90%;background-color:#eee;border-radius:1rem;overflow:hidden;display:flex;font-size:1.6rem;height:2rem}.progress-fill-home{height:100%;background-color:var(--color-accent);text-align:center;color:#fff;line-height:1.2em;font-size:1em}.progress-fill-outside{height:100%;background-color:#ccc;text-align:center;color:#fff;line-height:1.2em;font-size:1em}.week-summary__progress .progress-percent{position:absolute;inset:0;height:100%;width:100%;display:flex;align-items:center;justify-content:center;text-align:center;font-size:.7em;color:#fff;pointer-events:none}.week-summary__progress .subtitle{text-align:center;font-size:1rem;margin-top:.4rem}@media(max-width:48rem){.tooltip.info-icon{margin-left:.25rem}}.recipe-card{border-radius:.875rem;background:#fff;box-shadow:var(--shadow-md);padding:.1em 1em .1em 1.15em;display:block;min-height:6.25rem;position:relative;width:100%;max-width:20rem;min-width:17.5rem;box-sizing:border-box;cursor:pointer;transition:box-shadow .2s ease,transform .15s ease}.recipe-card:hover{box-shadow:var(--shadow-md-hover)}.recipe-card__content{display:grid;grid-template-columns:1fr auto;gap:.75rem}.recipe-card__info{display:flex;flex-direction:column;gap:.4rem;padding:.9em 0}.recipe-card__subtitle{font-size:.8em;text-transform:uppercase;letter-spacing:.05em;color:var(--color-accent)}.recipe-card__title{font-size:1em;margin:0;max-width:20ch;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.25em;min-height:2.5em}.recipe-card__title--long{font-size:.85em}.recipe-card__title--very-long{font-size:.7em}.recipe-card__meta{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.85rem;color:var(--color-text)}.recipe-card__image{display:flex;align-items:center;justify-content:center}.recipe-card__image img{height:6em;aspect-ratio:1/1;border-radius:.5rem;object-fit:cover;flex-shrink:0}.recipe-card__swap-btn{padding:.3em!important;font-size:.8em;border-color:var(--color-accent-transparent)!important}@media(min-width:48rem){.recipe-card--compact .recipe-card__title{-webkit-line-clamp:3;line-clamp:3}.recipe-card--compact .recipe-card__title--long{font-size:1em}.recipe-card--compact .recipe-card__title--very-long{font-size:.9em}}@media(max-width:48rem){.recipe-card{max-width:92vw;justify-self:center;align-self:center;padding:.1em 1em .1em 1.3em}.recipe-card__info{padding:1.2em 0}.recipe-card__title{line-height:1.5em}}.dessert-card{border-radius:.875rem;background:#fff;box-shadow:var(--shadow-md);padding:.35rem;box-sizing:border-box;cursor:default;width:100%;height:100%;min-width:0;min-height:0;aspect-ratio:1;display:flex;align-items:stretch;justify-content:stretch}.dessert-card__image{display:flex;flex:1 1 auto;min-width:0;min-height:0;align-items:center;justify-content:center}.dessert-card__image img,.dessert-card__placeholder{width:100%;height:100%;aspect-ratio:1 / 1;border-radius:.5rem;object-fit:cover;flex-shrink:0}.dessert-card__placeholder{background:#f0f0f0}.dessert-card>.dessert-card__placeholder{flex:1 1 auto;min-width:0;min-height:0}@media(max-width:48rem){.dessert-card{padding:.4rem}}.recipes-layout{display:flex;flex-direction:column;gap:2rem}.recipes-section h2{margin-bottom:.75rem}.recipes-grid{font-size:1.1rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(17.5rem,1fr));gap:1rem}.recipes-grid--dessert{--dessert-grid-cell: 6em;grid-template-columns:repeat(auto-fill,var(--dessert-grid-cell));justify-content:start;align-content:start}.recipe-slot{display:flex;flex-direction:column;gap:.35rem}.recipe-slot__label{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-accent);font-weight:600}@media(max-width:48rem){.recipes-grid{font-size:1.2rem}.recipes-grid:not(.recipes-grid--dessert){grid-template-columns:1fr}}.modal-backdrop{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1100}.modal-content{position:relative;background:var(--color-bg);border-radius:.5rem;padding:1.25rem;width:min(50rem,94vw);max-height:80vh;display:flex;flex-direction:column;z-index:1101}.modal__header{position:sticky;top:0;display:flex;justify-content:space-between;align-items:center;background:transparent;z-index:10;padding-bottom:.5rem}.modal__close{color:var(--color-accent-red);font-size:var(--font-size-h2);font-weight:700;background:transparent;padding:.05rem .6rem;border:none;border-radius:1.5rem;cursor:pointer;line-height:1}.modal__title{margin:0}.modal__body{margin-top:.5rem;overflow-y:auto;flex:1}.modal-content--wide{max-width:var(--content-max-md)}@media(max-width:48rem){.modal-content{width:92vw;max-height:90vh;padding:1.25rem}.modal-backdrop--keyboard-safe.modal-backdrop--keyboard-open{align-items:flex-start;padding:max(.75rem,env(safe-area-inset-top,0)) .5rem max(.75rem,env(safe-area-inset-bottom,0));overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-content--keyboard-safe.modal-content--keyboard-open{width:min(100%,28rem);max-height:calc(100dvh - 1.5rem);margin-inline:auto;flex-shrink:0}.modal-content--keyboard-safe.modal-content--keyboard-open .modal__body{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;max-height:calc(100dvh - 6rem)}}.recipe-modal__subtitle{margin:0 0 .5rem;font-size:.95rem;color:#555}.recipe-modal__intro{white-space:pre-line;margin-top:.5rem;margin-bottom:1rem}.portions-section{display:flex;flex-direction:row;align-items:baseline;gap:.5rem;flex-wrap:wrap;margin-bottom:1.5rem}.portions-section__content{white-space:pre-line;display:flex;flex-direction:row;gap:2rem}.portions-meal-section,.portion-users{display:flex;flex-direction:column;gap:.25rem}.portions-greyed{color:gray;opacity:.6}.recipe-modal__ingredients-note{display:block;font-size:.9rem;color:var(--color-text);margin-bottom:.5rem}.recipe-modal__content{display:grid;grid-template-columns:1fr 1.3fr;gap:1.5rem}@media(max-width:48rem){.recipe-modal{width:92vw;padding-inline:1.25rem}.recipe-modal__content{grid-template-columns:1fr}}.swap-modal__alternatives{display:grid;grid-template-columns:repeat(auto-fill,minmax(17.5rem,1fr));gap:.7rem}@media(max-width:48rem){.swap-modal__alternatives{grid-template-columns:1fr}}.recipes-header{margin-bottom:1.5rem;display:flex;flex-direction:column;align-items:center;gap:.4rem}.recipes-header--bottom{margin-top:1.5rem;margin-bottom:0}.recipes-header__actions{display:flex;flex-direction:column;flex-wrap:wrap;align-items:center;gap:.4rem}.recipes-header__unsaved{outline:.25rem solid var(--color-accent-red);transition:outline .3s ease}.recipes-header button{font-size:1.2em}.recipes-workflow-guide{margin-top:0;margin-bottom:1rem;scroll-margin-top:1rem}.recipes-workflow-weekplan{margin-bottom:2rem}.temp-register-modal__intro{margin:0 0 1rem;color:#444;line-height:1.55;font-size:.95rem}.temp-register-modal__benefits{margin:0 0 1rem;padding-left:1.2rem;color:#333;line-height:1.5;font-size:.92rem}.temp-register-modal__benefits li+li{margin-top:.45rem}.temp-register-modal__email-details{margin:0 0 1.25rem;border:none;background:none}.temp-register-modal__email-details summary{display:inline;cursor:pointer;padding:0;font-size:.9rem;font-weight:inherit;color:var(--color-accent);text-decoration:underline;text-underline-offset:.15em;list-style:none}.temp-register-modal__email-details summary::-webkit-details-marker{display:none}.temp-register-modal__email-body{margin:.65rem 0 0;padding:0;font-size:.88rem;line-height:1.55;color:#555}.modal-content{background:#fff}.temp-client-recipes__grocery-action{display:flex;justify-content:center;margin-top:2.5rem;margin-bottom:.5rem}.temp-client-recipes__grocery-btn{font-size:1.2rem;min-width:min(100%,18rem)}.admin-form__title{margin-top:0;margin-bottom:1rem}.admin-form__message{margin:.75rem 0;font-size:.9rem}.admin-form__message--success{color:#0a6b0a}.admin-form__toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1rem;margin-bottom:1rem}.admin-form__toolbar .admin-form__field{flex:1;min-width:10rem}.admin-form__actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.admin-form__field{display:flex;flex-direction:column;margin-bottom:.75rem}.admin-form__field label{font-weight:500;margin-bottom:.25rem}.admin-form__field input[type=text],.admin-form__field input[type=number],.admin-form__field textarea{padding:.4rem .5rem;border-radius:.375rem;border:.0625rem solid #ccc;font-size:.95rem}.admin-form__field textarea{min-height:6.25rem;resize:vertical}.admin-form__row{display:flex;flex-wrap:wrap;gap:1rem}.admin-form__row .admin-form__field{flex:1;min-width:6.25rem}.admin-form__fieldset{margin:1rem 0;padding:1rem;border:.0625rem solid #ddd;border-radius:.5rem}.admin-form__fieldset legend{font-weight:600}.admin-form__ingredient-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.5rem}.admin-form__ingredient-row input{flex:1;min-width:5rem;padding:.35rem .5rem;border-radius:.375rem;border:.0625rem solid #ccc}.admin-form__checkbox{display:inline-flex;align-items:center;gap:.35rem;font-weight:400;cursor:pointer}.admin-form__hint{font-size:.75rem;color:#666;margin-bottom:.2rem}.button--ghost-small{min-width:2rem;padding:.25rem .5rem;font-size:1.1rem;background:transparent;border:.0625rem solid #ccc;border-radius:.375rem;cursor:pointer}.button--ghost-small:disabled{opacity:.5;cursor:not-allowed}.button--small{padding:.35rem .75rem;font-size:.9rem}.admin-recipe-form{margin-top:.5rem}.admin-form--recipe{margin-top:1rem}.admin-ingredient-form{margin-top:.5rem}.admin-form--ingredient{margin-top:1rem}@media(max-width:37.5rem){.admin-form__ingredient-row{flex-direction:column;align-items:stretch}.admin-form__ingredient-row input{min-width:0}}.admin-dashboard{max-width:var(--content-max-md);margin-inline:auto;padding-inline:1.5rem}.admin-dashboard__header{text-align:center;margin-bottom:2rem}.admin-dashboard__subtitle{margin-top:.5rem;color:#555}.admin-dashboard__grid{display:flex;flex-direction:column;gap:1.5rem}.admin-card{border-radius:.75rem;padding:1.5rem;background:#fff;box-shadow:var(--shadow-md)}.admin-card h2{margin-top:0;margin-bottom:.5rem}.admin-card__message{margin-top:.75rem;font-size:.9rem;color:#333}.admin-section{border-radius:.75rem;background:#fff;box-shadow:var(--shadow-md)}.admin-section__header{width:100%;padding:1rem 1.2rem;border:none;background:transparent;display:flex;align-items:center;justify-content:space-between;font-size:1rem;font-weight:600;cursor:pointer}.admin-section__body{padding:0 1.2rem 1.2rem;border-top:.0625rem solid #eee;font-size:.95rem;line-height:1.5}.admin-section__intro{margin-top:1rem}.admin-section__chevron{width:.8rem;height:.8rem;border-right:.125rem solid #444;border-bottom:.125rem solid #444;transform:rotate(45deg);transition:transform .2s ease}.admin-section__chevron.open{transform:rotate(-135deg)}.banner{position:fixed;top:1.25rem;left:50%;padding:.75rem 1.25rem;border-radius:.375rem;color:#fff;font-weight:500;z-index:1000;max-width:min(92vw,var(--content-max-sm));cursor:grab;user-select:none;-webkit-user-select:none;transform:translate(calc(-50% + var(--banner-offset, 0)));opacity:var(--banner-opacity, 1);transition:transform .22s ease,opacity .22s ease;touch-action:none}.banner-dragging{cursor:grabbing;transition:none}.banner-exiting{transition:transform .28s ease,opacity .28s ease}.banner-info{background:#474747}.banner-success{background:var(--color-accent)}.banner-error{background:var(--color-accent-red)}:root{--root-font-size: clamp(.875rem, .8125rem + .35vw, 1rem);--color-bg: #f0f6e9;--color-accent: #708d81;--color-accent-transparent: #708d8180;--color-accent-red: #8d0801;--color-text: #474747;--color-text-muted: #6b7280;--color-text-light: #616161;--color-text-dark: #111827;--color-surface: #ffffff;--color-border: #e5e7eb;--color-border-subtle: rgba(0, 0, 0, .08);--color-disabled-bg: #ccc;--color-disabled-text: var(--color-text-light);--color-muted: #8a8a8a;--color-success: #198e5d;--color-error: #c60a00;--font-body: "Gopher", system-ui, sans-serif;--font-title: "Dela Gothic One", system-ui, sans-serif;--font-brand: "Montserrat", system-ui, sans-serif;--font-size-body: clamp(.9375rem, .9rem + .15vw, 1rem);--font-size-body-lg: clamp(1rem, .95rem + .25vw, 1.125rem);--font-size-small: clamp(.8125rem, .78rem + .15vw, .875rem);--font-size-caption: clamp(.75rem, .72rem + .1vw, .8125rem);--font-size-label: clamp(.8125rem, .8rem + .1vw, .875rem);--font-size-h1: clamp(1.75rem, 1.2rem + 2.5vw, 3rem);--font-size-h2: clamp(1.35rem, 1.05rem + 1.2vw, 2rem);--font-size-h3: clamp(1.125rem, 1rem + .5vw, 1.375rem);--font-size-h4: clamp(1rem, .95rem + .25vw, 1.125rem);--font-size-subtitle: clamp(1rem, .92rem + .35vw, 1.2rem);--font-size-brand: clamp(1rem, .9rem + .5vw, 1.5rem);--font-size-button: clamp(1rem, .95rem + .2vw, 1.2rem);--font-size-icon-lg: clamp(2rem, 1.5rem + 2vw, 2.5rem);--line-height-tight: 1.2;--line-height-body: 1.6;--line-height-relaxed: 1.65;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 2.5rem;--spacing-3xl: 4rem;--spacing: var(--spacing-md);--border-radius: .75rem;--border-radius-sm: .375rem;--border-radius-md: .5rem;--border-radius-lg: 1rem;--border-radius-xl: 1.5rem;--border-radius-pill: 62.5rem;--content-max-lg: 75rem;--content-max-md: 68rem;--content-max-sm: 50rem;--content-max-xs: 26rem;--content-max: var(--content-max-md);--border-width: .0625rem;--border-width-md: .125rem;--shadow-sm: 0 .125rem .375rem rgba(0, 0, 0, .06);--shadow-md: 0 .25rem 1rem rgba(0, 0, 0, .06);--shadow-md-hover: 0 .375rem 1.25rem rgba(0, 0, 0, .1);--shadow-lg: 0 1.25rem 2.5rem rgba(0, 0, 0, .08);--shadow-xl: 0 1.375rem 4.375rem rgba(0, 0, 0, .2);--shadow-interactive: 0 .625rem 1.625rem rgba(0, 0, 0, .16);--shadow-interactive-sm: 0 .25rem .875rem rgba(0, 0, 0, .14);--shadow-accent: 0 .5rem 1.375rem rgba(112, 141, 129, .35);--shadow-nav-top: 0 -.25rem .75rem rgba(71, 71, 71, .08);--shadow-nav-left: .25rem 0 .75rem rgba(71, 71, 71, .06);--shadow-feature: 0 .25rem 1.5rem rgba(71, 71, 71, .07), inset 0 .0625rem 0 rgba(255, 255, 255, .85);--shadow-focus: 0 0 0 var(--border-width) rgba(17, 24, 39, .07);--z-header: 1001;--z-nav-overlay: 1000}@font-face{font-family:Gopher;src:url(/assets/fonts/Gopher-Medium.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Dela Gothic One;src:url(/assets/fonts/DelaGothicOne-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url(/assets/fonts/MontserratBold.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}*{box-sizing:border-box}html{font-size:var(--root-font-size)}html,body{margin:0;padding:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-body);line-height:var(--line-height-body)}h1,h2,h3,h4,h5,h6{font-family:var(--font-title);font-weight:400;margin:0;line-height:var(--line-height-tight)}h1{font-size:var(--font-size-h1)}h2{font-size:var(--font-size-h2)}h3{font-size:var(--font-size-h3)}h4{font-size:var(--font-size-h4)}h5,h6{font-size:var(--font-size-body-lg)}p,li,span,label{font-family:var(--font-body)}small{font-size:var(--font-size-caption)}.site-title{font-family:var(--font-brand);font-size:var(--font-size-brand);font-weight:700;letter-spacing:.03em}.text-subtitle,[class*=__subtitle]:not(.recipe-card__subtitle){font-size:var(--font-size-subtitle);line-height:var(--line-height-body)}.text-muted{color:var(--color-muted);font-size:var(--font-size-small)}.text-small{font-size:var(--font-size-small)}.text-caption{font-size:var(--font-size-caption)}.page{width:100%}.section{padding:var(--spacing-3xl) var(--spacing-xl)}.section--centered{max-width:var(--content-max);margin:0 auto}.section--accent{background-color:var(--color-accent);color:#fff;text-align:center}@media(max-width:48rem){.section{padding:var(--spacing-2xl) var(--spacing-md)}}button{cursor:pointer;border:none;outline:none;border-radius:var(--border-radius)}.btn-disabled,button:disabled{background-color:var(--color-disabled-bg);cursor:not-allowed;opacity:.7}.button{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;border-radius:var(--border-radius);font-size:var(--font-size-button);font-family:var(--font-body);font-weight:500;cursor:pointer;border:var(--border-width-md) solid transparent;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.button:disabled{background-color:#ccc!important;border-color:#ccc!important;color:var(--color-disabled-text)!important;cursor:not-allowed;opacity:.9}.button--primary{background-color:var(--color-accent);color:#fff;border-color:var(--color-accent);border-radius:1.2em}.button--primary:hover:not(:disabled){filter:brightness(1.1)}.button--secondary{background-color:transparent;color:var(--color-accent);border-color:var(--color-accent)}.button--secondary:hover:not(:disabled){background-color:#708d8114}.button--tertiary{background-color:#00000014;color:var(--color-disabled-text);border-color:transparent}.button--tertiary:hover:not(:disabled){background-color:#0000001f}.button--irreversible{background-color:transparent;color:var(--color-accent-red);border-color:var(--color-accent-red)}.button--irreversible:hover:not(:disabled){background-color:var(--color-accent-red);color:#fff}.button--primary.button--unsaved{color:var(--color-accent-red)}.button--primary.button--unsaved:hover:not(:disabled){background-color:#8d080114}a{color:var(--color-accent);text-decoration:none;transition:color .15s ease}a:hover,a:focus,a:visited{color:var(--color-accent)}
