@keyframes auth-visual-glow{0%{transform:translate(-3%,-2%)scale(1)}to{transform:translate(12%,10%)scale(1.15)}}.recipe-banner-container{width:100%;height:100%;padding-inline:var(--banner-inset,0px);color:#fff;flex-direction:column;display:flex;position:relative}.recipe-banner-container .recipe-banner-title-container{box-shadow:0 8px 32px color-mix(in srgb, var(--ink-permanent) 22%, transparent);background:0 0;border-radius:18px;position:relative}.recipe-banner-container .recipe-banner-title-container>*{z-index:1}.recipe-banner-container .recipe-banner-title-container:before{content:"";z-index:-1;border-radius:inherit;background:linear-gradient(114deg, var(--glass-gradient-start) 0%, var(--glass-gradient-end) 100%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;border:1px solid #ffffff1b;width:100%;height:100%;position:absolute;inset:0}.recipe-banner-container .recipe-banner-title-container{text-align:right;width:fit-content;max-width:min(480px,100% - 24px);margin:40px 14px 0 auto;padding:24px}.is-mobile .recipe-banner-container .recipe-banner-title-container{max-width:calc(100% - 20px);margin:20px 0 0 auto;padding:10px 14px;display:none}.is-mobile .recipe-banner-container .recipe-banner-title-container .slide-title{font-size:28px;line-height:32px}.recipe-banner-container .recipe-banner-content{box-shadow:0 8px 32px color-mix(in srgb, var(--ink-permanent) 22%, transparent);background:0 0}.recipe-banner-container .recipe-banner-content>*{z-index:1}.recipe-banner-container .recipe-banner-content:before{content:"";z-index:-1;border-radius:inherit;background:linear-gradient(114deg, var(--glass-gradient-start) 0%, var(--glass-gradient-end) 100%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;border:1px solid #ffffff1b;width:100%;height:100%;position:absolute;inset:0}.recipe-banner-container .recipe-banner-content{right:calc(var(--banner-inset,0px) + 20px);border-radius:24px;flex-direction:column;gap:8px;max-width:520px;padding:12px 14px;display:flex;position:absolute;bottom:36px}.is-mobile .recipe-banner-container .recipe-banner-content{gap:6px;width:auto;max-width:calc(50% - 20px);padding:10px 12px;bottom:32px;left:auto;right:10px;transform:none}.is-mobile .recipe-banner-container .recipe-banner-content .detail-icon{font-size:14px}.is-sm-mobile .recipe-banner-container .recipe-banner-content{width:calc(100% - 44px);max-width:100%;right:auto}.recipe-banner-container .recipe-banner-content .recipe-banner-content-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.recipe-banner-container .recipe-banner-content .recipe-banner-content-heading .tag{border:1px solid var(--surface-hover);border-radius:999px;width:fit-content;padding:2px 10px}.recipe-banner-container .recipe-banner-content .recipe-title{-webkit-line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;min-height:1lh;margin-bottom:6px;font-size:28px;line-height:32px;display:-webkit-box;overflow:hidden}.is-mobile .recipe-banner-container .recipe-banner-content .recipe-title{margin-bottom:4px;font-size:18px;line-height:22px}.recipe-banner-container .recipe-banner-content .recipe-banner-content-details{align-items:center;gap:10px;display:flex}.recipe-banner-container .recipe-banner-content .recipe-banner-cta-icon{border-radius:999px;flex-shrink:0;width:34px;min-width:0;height:34px;margin-left:auto;padding:0}.recipe-banner-container .recipe-banner-content .recipe-banner-cta-icon .custom-icon{margin:0}
.hero-banner-carousel-container{--banner-inset:max(20px, calc((100% - 1280px) / 2))}.hero-banner-carousel-container .embla{border-radius:0}.hero-banner-carousel-container .embla__slide>div,.hero-banner-carousel-container .embla__slide>a,.hero-banner-carousel-container .embla__slide>button{height:100%;min-height:480px}.is-mobile .hero-banner-carousel-container .embla__slide>div,.is-mobile .hero-banner-carousel-container .embla__slide>a,.is-mobile .hero-banner-carousel-container .embla__slide>button{height:300px;min-height:0;max-height:300px;overflow:hidden}.is-mobile .hero-banner-carousel-container .default-banner-container{padding:24px 16px}.hero-banner-carousel-container .embla .embla__controls{padding:0 max(20px,var(--banner-inset,20px));bottom:6px}.hero-banner-carousel-container .embla .embla__controls .embla__dots{gap:8px}.hero-banner-carousel-container .embla .embla__controls .embla__dots:before{display:none}.is-mobile .hero-banner-carousel-container .embla .embla__controls .embla__dots{margin-inline:0 auto}.hero-banner-carousel-container .embla .embla__controls .embla__dots .embla__dot{width:18px;height:18px}.hero-banner-carousel-container .embla .embla__controls .embla__dots .embla__dot:after{display:none}.hero-banner-carousel-container .embla .embla__controls .embla__dots .embla__dot:before{background:color-mix(in srgb, var(--text-white) 55%, transparent);opacity:1;border:0;width:7px;height:7px;transition:width .22s cubic-bezier(.2,0,0,1),background-color .22s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero-banner-carousel-container .embla .embla__controls .embla__dots .embla__dot:hover:before{background:color-mix(in srgb, var(--text-white) 85%, transparent)}.hero-banner-carousel-container .embla .embla__controls .embla__dots .embla__dot--selected:before{background:color-mix(in srgb, var(--text-white) 95%, transparent);width:24px;height:7px;box-shadow:0 1px 6px color-mix(in srgb, var(--ink) 25%, transparent)}
@keyframes auth-visual-glow{0%{transform:translate(-3%,-2%)scale(1)}to{transform:translate(12%,10%)scale(1.15)}}.custom-banner-container{width:100%;height:100%}.custom-banner-container.custom-button{border-radius:0}.custom-banner-container .custom-banner-content{width:100%;height:100%;padding-inline:var(--banner-inset,0px);flex-direction:column;justify-content:center;align-items:flex-start;display:flex;position:relative}.is-mobile .custom-banner-container .custom-banner-content{justify-content:end;align-items:flex-end}.custom-banner-container .custom-banner-content .custom-banner-title-container{isolation:isolate;color:var(--text-white);width:fit-content;max-width:min(700px,100% - 28px);box-shadow:0 8px 32px color-mix(in srgb, var(--ink-permanent) 22%, transparent);background:0 0;border-radius:20px;flex-direction:column;align-items:flex-start;gap:22px;margin:0 0 0 14px;padding:32px 24px;display:flex;position:relative}.custom-banner-container .custom-banner-content .custom-banner-title-container>*{z-index:1}.custom-banner-container .custom-banner-content .custom-banner-title-container:before{content:"";z-index:-1;border-radius:inherit;background:linear-gradient(114deg, var(--glass-gradient-start) 0%, var(--glass-gradient-end) 100%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;border:1px solid #ffffff1b;width:100%;height:100%;position:absolute;inset:0}.custom-banner-container .custom-banner-content .custom-banner-title-container .slide-title,.custom-banner-container .custom-banner-content .custom-banner-title-container .slide-description{text-shadow:0 1px 10px color-mix(in srgb, var(--ink-permanent,#000) 45%, transparent)}:root:has(.theme-light) .custom-banner-container .custom-banner-content .custom-banner-title-container:before{background:linear-gradient(114deg,#0f172a57 0%,#0f172a33 100%)}.custom-banner-container .custom-banner-content .custom-banner-title-container{justify-content:center;min-width:50%;min-height:200px}.custom-banner-container .custom-banner-content .custom-banner-title-container:before{border:none}.is-mobile .custom-banner-container .custom-banner-content .custom-banner-title-container{justify-content:space-between;gap:6px;max-width:calc(60% - 20px);min-height:40px;margin:0 auto 28px;padding:18px 24px}.is-mobile .custom-banner-container .custom-banner-content .custom-banner-title-container .slide-title{font-size:26px;line-height:30px}.is-sm-mobile .custom-banner-container .custom-banner-content .custom-banner-title-container{min-width:100%;max-width:calc(100% - 20px)}
@keyframes auth-visual-glow{0%{transform:translate(-3%,-2%)scale(1)}to{transform:translate(12%,10%)scale(1.15)}}.plan-banner-container{width:100%;height:100%;padding-inline:var(--banner-inset,0px);color:#fff;flex-direction:column;display:flex;position:relative}.plan-banner-container .plan-banner-title-container{box-shadow:0 8px 32px color-mix(in srgb, var(--ink-permanent) 22%, transparent);background:0 0;border-radius:18px;position:relative}.plan-banner-container .plan-banner-title-container>*{z-index:1}.plan-banner-container .plan-banner-title-container:before{content:"";z-index:-1;border-radius:inherit;background:linear-gradient(114deg, var(--glass-gradient-start) 0%, var(--glass-gradient-end) 100%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;border:1px solid #ffffff1b;width:100%;height:100%;position:absolute;inset:0}.plan-banner-container .plan-banner-title-container{text-align:right;width:fit-content;max-width:min(480px,100% - 24px);margin:40px 14px 0 auto;padding:24px}.is-mobile .plan-banner-container .plan-banner-title-container{max-width:calc(100% - 20px);margin:20px 0 0 auto;padding:10px 14px;display:none}.is-mobile .plan-banner-container .plan-banner-title-container .slide-title{font-size:28px;line-height:32px}.plan-banner-container .plan-banner-content{box-shadow:0 8px 32px color-mix(in srgb, var(--ink-permanent) 22%, transparent);background:0 0}.plan-banner-container .plan-banner-content>*{z-index:1}.plan-banner-container .plan-banner-content:before{content:"";z-index:-1;border-radius:inherit;background:linear-gradient(114deg, var(--glass-gradient-start) 0%, var(--glass-gradient-end) 100%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;border:1px solid #ffffff1b;width:100%;height:100%;position:absolute;inset:0}.plan-banner-container .plan-banner-content{right:calc(var(--banner-inset,0px) + 20px);border-radius:24px;flex-direction:column;gap:8px;max-width:520px;padding:12px 14px;display:flex;position:absolute;bottom:36px}.is-mobile .plan-banner-container .plan-banner-content{gap:6px;width:auto;max-width:calc(50% - 20px);padding:10px 12px;bottom:32px;left:auto;right:10px;transform:none}.is-mobile .plan-banner-container .plan-banner-content .detail-icon{font-size:14px}.is-sm-mobile .plan-banner-container .plan-banner-content{width:calc(100% - 44px);max-width:100%;right:auto}.plan-banner-container .plan-banner-content .plan-title{-webkit-line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;min-height:1lh;margin-bottom:6px;font-size:28px;line-height:32px;display:-webkit-box;overflow:hidden}.is-mobile .plan-banner-container .plan-banner-content .plan-title{margin-bottom:4px;font-size:18px;line-height:22px}.plan-banner-container .plan-banner-content .plan-banner-content-details{align-items:center;gap:10px;display:flex}.plan-banner-container .plan-banner-content .plan-banner-cta-icon{border-radius:999px;flex-shrink:0;width:34px;min-width:0;height:34px;margin-left:auto;padding:0}.plan-banner-container .plan-banner-content .plan-banner-cta-icon .custom-icon{margin:0}
@keyframes auth-visual-glow{0%{transform:translate(-3%,-2%)scale(1)}to{transform:translate(12%,10%)scale(1.15)}}.default-banner-grid{grid-template-columns:1fr 1fr;align-items:center;gap:32px;max-width:1680px;display:grid}@media (max-width:960px){.default-banner-grid{text-align:center;grid-template-columns:1fr;gap:20px}}.default-banner-left{max-width:680px}@media (max-width:960px){.default-banner-left{max-width:720px;margin:0 auto}}.default-banner-right{min-height:420px;display:block;position:relative;overflow:visible}@media (max-width:960px){.default-banner-right{min-height:220px}}.default-banner-title,.default-banner-text{color:var(--text-white);filter:drop-shadow(1px 1px #00000040);font-weight:400}.default-banner-left{background:color-mix(in srgb, var(--surface-inverse) 3%, transparent);border:1px solid color-mix(in srgb, var(--surface-inverse) 14%, transparent);box-shadow:0 8px 24px color-mix(in srgb, var(--ink) 10%, transparent);border-radius:24px;padding:12px}.default-banner-left .default-banner-title{font-size:50px;font-weight:400;line-height:70px}@media (max-width:960px){.default-banner-left .default-banner-title{margin-top:16px;font-size:32px;line-height:42px}}@media (max-width:600px){.default-banner-left .default-banner-title{margin-top:12px;font-size:24px;font-weight:500;line-height:36px}}.default-banner-left .default-banner-text{margin-top:12px;font-size:24px;font-weight:300;line-height:38px}@media (max-width:960px){.default-banner-left .default-banner-text{margin-top:24px;margin-bottom:32px;font-size:18px;font-weight:400;line-height:24px}}@media (max-width:600px){.default-banner-left .default-banner-text{margin:16px auto;font-size:16px;font-weight:500;line-height:20px}}.search-field-container{margin-top:24px}@media (max-width:960px){.search-field-container{margin-top:16px;margin-bottom:16px}}.default-banner-image{width:min(100%,699px);height:auto;margin:0;position:absolute;bottom:-100px;left:50%;transform:translate(-50%)}@media (max-width:960px){.default-banner-image{max-width:380px;max-height:320px;display:none;bottom:-60px}}@media (max-width:600px){.default-banner-image{max-width:260px;max-height:200px;display:none;bottom:90px}}
.default-banner-container-outer{background:var(--primary-700);background:url(/assets/images/illustrations/hero-banner-pattern.svg),linear-gradient(90deg, var(--primary-700) 0%, var(--primary) 100%);width:100%;overflow:hidden}.default-banner-container{place-items:center;margin:0 auto;padding:48px 32px;display:grid}@media (max-width:960px){.default-banner-container{padding:calc(var(--topbar-height-mobile,0px) + 32px) 16px 32px 16px}}
@keyframes auth-visual-glow{0%{transform:translate(-3%,-2%)scale(1)}to{transform:translate(12%,10%)scale(1.15)}}.embla{--slide-spacing:0;--slide-size:100%;width:100%;margin:auto;position:relative;overflow:hidden}.embla .embla__container{touch-action:pan-y pinch-zoom;gap:var(--slide-spacing);display:flex}.embla .embla__container .embla__slide{flex:0 0 var(--slide-size);min-width:0}.embla .embla__controls{width:100%;padding:0 var(--padding-horizontal) 4px;position:absolute;bottom:0}.embla .embla__controls .embla__button__svg{width:35%;height:35%}.embla .embla__controls .embla__dots{flex-wrap:wrap;align-items:center;width:fit-content;display:flex;position:relative}.embla .embla__controls .embla__dots.start{margin-inline:0 auto}.embla .embla__controls .embla__dots.center{margin-inline:auto}.embla .embla__controls .embla__dots.end{margin-inline:auto 0}.is-mobile .embla .embla__controls .embla__dots{margin-inline:auto}.embla .embla__controls .embla__dots:before{content:"";background-color:var(--background-paper-alpha-10);width:100%;height:100%;box-shadow:0 0 10px 0 var(--background-paper-alpha-10);z-index:0;border-radius:999px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.embla .embla__controls .embla__dots .embla__dot{-webkit-tap-highlight-color:rgba(var(--text), .5);appearance:none;touch-action:manipulation;cursor:pointer;background-color:#0000;border:0;border-radius:50%;justify-content:center;align-items:center;width:25px;height:25px;margin:0;padding:0;text-decoration:none;display:flex;position:relative}.embla .embla__controls .embla__dots .embla__dot:before,.embla .embla__controls .embla__dots .embla__dot:after{content:"";border-radius:999px;align-items:center;width:10px;height:10px;transition:transform .32s ease-in-out,opacity .32s ease-in-out;display:flex;position:absolute}.embla .embla__controls .embla__dots .embla__dot:before{border:.2rem solid var(--text-soft);opacity:.8}.embla .embla__controls .embla__dots .embla__dot:after{border:.2rem solid var(--text);opacity:0}.embla .embla__controls .embla__dots .embla__dot--selected:after{opacity:1;transform:scale(1.3)}.shopping-lists-carousel-container .embla{--slide-spacing:20px;--slide-size:300px}.is-mobile .shopping-lists-carousel-container .embla{--slide-spacing:12px;--slide-size:74%}.shopping-lists-carousel-container .embla{padding-inline:var(--padding-horizontal)}.shopping-lists-carousel-container .shopping-list-card__top{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.shopping-lists-carousel-container .shopping-list-card__icon{background:var(--brand-tint-soft);width:44px;height:44px;color:var(--primary);border-radius:12px;flex:none;place-items:center;display:grid}.shopping-lists-carousel-container .shopping-list-card__icon svg{font-size:22px}.shopping-lists-carousel-container .shopping-list-card__count{letter-spacing:.6px;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;font-size:.72rem;font-weight:600}.shopping-lists-carousel-container .shopping-list-card__text{flex-direction:column;gap:2px;width:100%;min-width:0;display:flex}.shopping-lists-carousel-container .shopping-list-card__title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:1rem;font-weight:600;line-height:1.3;overflow:hidden}.shopping-lists-carousel-container .shopping-list-card__meta{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.shopping-lists-carousel-container .shopping-list-card.custom-button{text-align:left;text-transform:none;background:var(--surface-elevated);border:1px solid var(--border);width:100%;min-height:150px;color:var(--text);box-shadow:var(--shadow-sm);border-radius:16px;flex-direction:column;justify-content:space-between;align-items:stretch;gap:16px;padding:16px;transition:background-color .16s,border-color .16s,transform .16s,box-shadow .16s;display:flex}.shopping-lists-carousel-container .shopping-list-card.custom-button:hover{background:var(--surface-hover);border-color:var(--brand-tint-soft-border);box-shadow:var(--shadow-md)}
