.auth-form-error{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:rgba(255,107,107,.1);border:1.5px solid rgba(255,107,107,.35);border-radius:var(--radius-sm);color:#a03030;font-size:var(--text-sm);line-height:1.4;animation:auth-form-error-in var(--anim-duration-fast) var(--anim-timing-ease-out)}.auth-form-error-icon{width:20px;height:20px;color:var(--color-accent);flex-shrink:0;margin-top:1px}.auth-form-error-text{flex:1 1;min-width:0;word-wrap:break-word;font-weight:var(--font-weight-semibold)}@keyframes auth-form-error-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.auth-link{color:var(--color-primary);font-weight:var(--font-weight-semibold);text-decoration:none;border-radius:var(--radius-subtle);transition:var(--hover-link-transition);-webkit-text-decoration-color:transparent;text-decoration-color:transparent;text-underline-offset:3px}.auth-link:hover{text-decoration:underline;-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}.auth-link:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.user-menu{position:relative}.user-menu,.user-menu-trigger{display:inline-flex;align-items:center}.user-menu-trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;border-radius:var(--radius-subtle);padding:7px 14px;gap:var(--space-2);color:var(--nav-ink,#ffffff);cursor:pointer;font-family:var(--font-sans);font-size:.96rem;letter-spacing:normal;font-weight:var(--font-weight-semibold);transition:background var(--anim-fast),color var(--anim-nav-skin);min-height:46px;line-height:1}.user-menu-trigger:hover,.user-menu-trigger[aria-expanded=true]{background:var(--nav-hover-bg,transparent)}.user-menu-trigger:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.user-menu-trigger-name{max-width:9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:none;letter-spacing:normal}.user-menu-caret{margin-right:2px;transition:transform var(--anim-fast)}.user-menu-trigger[aria-expanded=true] .user-menu-caret{transform:rotate(180deg)}.user-menu-list{--user-menu-inline-padding:var(--space-3);--user-menu-row-block-padding:var(--space-3);--user-menu-section-divider:1px solid var(--color-border);--user-menu-item-hover-bg:color-mix(in srgb,var(--color-primary) 22%,var(--color-bg));position:absolute;top:calc(100% + var(--space-2));right:0;min-width:264px;background:#ffffff;border:1px solid rgba(0,0,0,.1);border-radius:var(--radius);box-shadow:0 4px 6px rgba(0,0,0,.04),0 12px 32px rgba(0,0,0,.12);padding:var(--space-2);display:flex;flex-direction:column;gap:1px;z-index:var(--z-popover);animation:user-menu-pop .12s var(--anim-timing-ease-out);max-height:calc(100dvh - 80px);overflow-y:auto}@media (min-width:768px){.user-menu-list:not(.user-menu-list-inline){border-radius:var(--radius-subtle)}}@keyframes user-menu-pop{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.user-menu-list,.user-menu-list *{color:var(--color-text)}.user-menu-list .user-menu-item-danger,.user-menu-list .user-menu-item-danger *{color:var(--color-accent)}.user-menu-list .user-menu-item-warn,.user-menu-list .user-menu-item-warn *{color:color-mix(in srgb,var(--color-text) 32%,var(--color-primary) 68%)}.user-menu-identity{padding:var(--space-3) var(--space-4);border-bottom:var(--user-menu-section-divider);margin-bottom:0;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:var(--space-2);cursor:default;flex-shrink:0}.user-menu-identity-text{display:flex;flex-direction:column;gap:2px;min-width:0}.user-menu-list-inline .user-menu-identity{padding:0 0 var(--space-3);flex-direction:column}.user-menu-reciplits{padding:var(--space-2) var(--user-menu-inline-padding) var(--space-3);margin-bottom:0}.user-menu-nav-items,.user-menu-reciplits{border-bottom:var(--user-menu-section-divider)}.user-menu-nav-items .user-menu-item{font-size:var(--text-base)}.user-menu-list-inline .user-menu-reciplits{padding-left:0;padding-right:0}.user-menu-reciplits .reciplits-counter-bar{-webkit-padding-start:0;padding-inline-start:0}.user-menu-identity-name{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:700;line-height:1.2}.user-menu-identity-email{font-size:.78rem;color:var(--color-muted)!important;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}.user-menu-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;text-align:left;text-decoration:none;margin-inline:0;padding:var(--user-menu-row-block-padding) var(--user-menu-inline-padding);border-radius:var(--radius-subtle);cursor:pointer;text-transform:none;letter-spacing:normal;transition:var(--hover-subtle-transition);display:block;width:100%;line-height:1.3;box-sizing:border-box}.header-nav .user-menu-list a.user-menu-item,.site-nav .user-menu-list a.user-menu-item{text-decoration:none}.header-nav .user-menu-list a.user-menu-item,.header-nav .user-menu-list button.user-menu-item,.site-nav .user-menu-list a.user-menu-item,.site-nav .user-menu-list button.user-menu-item{padding:var(--user-menu-row-block-padding) var(--user-menu-inline-padding);white-space:normal;letter-spacing:normal;color:var(--color-text)}@media (min-width:992px){.header-nav .user-menu-list:not(.user-menu-list-inline) .user-menu-identity-name,.header-nav .user-menu-list:not(.user-menu-list-inline) a.user-menu-item:not(.user-menu-item-danger):not(.user-menu-item-warn),.header-nav .user-menu-list:not(.user-menu-list-inline) a.user-menu-item:not(.user-menu-item-danger):not(.user-menu-item-warn):hover,.header-nav .user-menu-list:not(.user-menu-list-inline) button.user-menu-item:not(.user-menu-item-danger):not(.user-menu-item-warn),.header-nav .user-menu-list:not(.user-menu-list-inline) button.user-menu-item:not(.user-menu-item-danger):not(.user-menu-item-warn):hover{color:#000000}}.header-nav .user-menu-list a.user-menu-item-warn,.header-nav .user-menu-list a.user-menu-item-warn:hover{color:color-mix(in srgb,var(--color-text) 32%,var(--color-primary) 68%)}.header-nav .user-menu-list a.user-menu-item:after{content:none;display:none}.header-nav .user-menu-list a.user-menu-item:hover:not(.user-menu-item-warn),.header-nav .user-menu-list button.user-menu-item:hover:not(.user-menu-item-danger):not(.user-menu-item-warn),.site-nav .user-menu-list a.user-menu-item:hover:not(.user-menu-item-warn){color:var(--color-primary);text-decoration:none;background:var(--user-menu-item-hover-bg)}.user-menu-list .user-menu-item:hover:not(.user-menu-item-danger):not(.user-menu-item-warn){background:var(--user-menu-item-hover-bg);color:var(--color-primary)}.user-menu-item:focus-visible,.user-menu-item:hover{outline:none;text-decoration:none}.user-menu-item:focus-visible{box-shadow:0 0 0 2px var(--color-primary) inset}.user-menu-item:focus-visible:not(.user-menu-item-danger):not(.user-menu-item-warn){background:var(--user-menu-item-hover-bg)}.user-menu-item:disabled{cursor:not-allowed;opacity:.5}.user-menu-item-danger:focus-visible,.user-menu-item-danger:hover:not(:disabled){background:color-mix(in srgb,var(--color-accent) 14%,transparent)}.user-menu-item-warn:focus-visible,.user-menu-item-warn:hover:not(:disabled){background:var(--user-menu-item-hover-bg)}.user-menu-item-danger:focus-visible,.user-menu-item-warn:focus-visible{box-shadow:0 0 0 2px var(--color-primary) inset}.user-menu__logout-section{padding-inline:var(--user-menu-inline-padding);padding-block:var(--space-2) 0;margin-inline:0}.user-menu__lang-section,.user-menu__write-group{padding-inline:var(--user-menu-inline-padding);padding-block:var(--space-2);border-bottom:var(--user-menu-section-divider)}.user-menu__write-group{display:flex;flex-direction:column;gap:var(--space-2);margin-inline:0}.user-menu-unit-preference{padding:var(--space-3) var(--user-menu-inline-padding);border-bottom:var(--user-menu-section-divider)}.user-menu__lang-row{display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-2) 0}.user-menu__lang-label{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;letter-spacing:normal;text-transform:none;color:var(--color-muted)}.user-menu__lang-row .lang-switch{margin:0;color:var(--color-text);font-size:.8rem}.user-menu-unit-preference .unit-system-toggle{width:100%;box-sizing:border-box;justify-content:center}.user-menu-unit-preference .unit-system-toggle__button--active,.user-menu-unit-preference .unit-system-toggle__button--active:focus-visible,.user-menu-unit-preference .unit-system-toggle__button--active:hover:not(:disabled){background:var(--color-sage-subdued);border-color:transparent;color:#ffffff}.user-menu-unit-preference .unit-system-toggle__button--active .unit-system-toggle__label{color:#ffffff}.user-menu-list .write-recipe-btn--menu{width:100%;box-sizing:border-box;min-height:2.5rem;margin-inline:0;padding:var(--space-2) var(--space-3);text-align:center;justify-content:center;align-items:center;gap:var(--space-2);text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-subtle);background:var(--color-primary)!important;color:#1a1a1a!important;transition:var(--hover-aggressive-transition)}.user-menu-list .write-recipe-btn--menu .write-recipe-btn__icon,.user-menu-list .write-recipe-btn--menu .write-recipe-btn__label{display:inline-flex;align-items:center;justify-content:center;line-height:1;text-align:center}.user-menu-list .write-recipe-btn--menu .write-recipe-btn__icon .app-icon,.user-menu-list .write-recipe-btn--menu .write-recipe-btn__icon i{display:block}.header-nav .user-menu-list a.write-recipe-btn--menu:after{content:none;display:none}.user-menu-list .write-recipe-btn--menu *{color:#1a1a1a!important}.user-menu-list .write-recipe-btn--menu:focus-visible,.user-menu-list .write-recipe-btn--menu:hover{background:color-mix(in srgb,#000000 10%,var(--color-primary))!important;box-shadow:none;outline:none;text-decoration:none}.user-menu-list .write-recipe-btn--menu:focus-visible{box-shadow:inset 0 0 0 2px rgba(0,0,0,.3)}.user-menu-inline{display:flex;flex-direction:column;gap:var(--space-3);width:100%}.user-menu-trigger-inline{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-base);font-weight:600}.user-menu-list-inline{position:static;background:none;border:none;box-shadow:none;padding:0;min-width:0;max-height:none;animation:none}@media (max-width:1100px){.user-menu-dropdown .user-menu-trigger-name{display:none}}@media (max-width:480px){.user-menu-list{right:auto;left:50%;transform:translateX(-50%);min-width:min(280px,calc(100vw - 2 * var(--space-4)))}@keyframes user-menu-pop{0%{opacity:0;transform:translateX(-50%) translateY(-6px) scale(.98)}to{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}}:root{--color-primary:#f4b33c;--color-primary-rgb:244,179,60;--color-accent:#d23a32;--color-white:#ffffff;--color-bg:#faf9f8;--color-text:#2a2a2a;--color-text-on-primary:#1a1a1a;--color-muted:#666666;--color-border:rgb(var(--color-primary-rgb)/15%);--color-remove-border:var(--color-accent);--color-remove-bg:var(--color-white);--color-remove-ink:var(--color-accent);--color-remove-hover-bg:color-mix(in srgb,var(--color-accent) 12%,var(--color-white));--color-remove-hover-border:color-mix(in srgb,var(--color-accent) 72%,var(--color-text-on-primary));--color-remove-solid-bg:var(--color-accent);--color-remove-solid-ink:var(--color-remove-bg);--color-remove-solid-hover:color-mix(in srgb,#000000 12%,var(--color-accent));--color-sage-subdued:rgb(83,102,77);--color-sage-subdued-rgb:83,102,77;--color-recipe-owner-bar:var(--color-sage-subdued);--color-recipe-owner-bar-rgb:var(--color-sage-subdued-rgb);--color-surface-subtle:rgb(var(--color-primary-rgb)/6%);--color-surface-blue-subtle:#e8eaf6;--color-surface-blue-subtle-ink:#283593;--color-surface-sage-subtle:rgb(var(--color-sage-subdued-rgb)/11%);--color-announcement-bg-default:#e1f0ec;--color-subtle-teal:rgb(242 246 247);--color-subtle-teal-rgb:242,246,247;--category-badge-bg:var(--color-sage-subdued);--category-badge-text:var(--color-white);--category-badge-focus-ring:rgb(255 255 255/55%);--color-code-bg:rgb(var(--color-primary-rgb)/8%);--color-pre-bg:#f0ede9;--color-blockquote-bg:var(--color-code-bg);--color-primary-alpha-10:rgb(var(--color-primary-rgb)/10%);--color-primary-alpha-12:rgb(var(--color-primary-rgb)/12%);--color-primary-alpha-15:rgb(var(--color-primary-rgb)/15%);--color-primary-alpha-20:rgb(var(--color-primary-rgb)/20%);--color-primary-alpha-25:rgb(var(--color-primary-rgb)/25%);--color-primary-alpha-40:rgb(var(--color-primary-rgb)/40%);--font-sans:var(--font-body),system-ui,sans-serif;--font-display:var(--font-zilla-slab),serif;--font-heading:var(--font-display);--font-heading-narrow:var(--font-sans);--font-mono:"Courier New",Courier,monospace;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--title-h1-size:clamp(2rem,1.375rem + 2vw,var(--text-4xl));--title-h2-size:clamp(1.625rem,1.125rem + 1.5vw,var(--text-3xl));--title-hero-size:clamp(2.375rem,1.625rem + 3vw,3.25rem);--title-h1-line-height:1.04;--title-h2-line-height:1.06;--title-hero-line-height:1;--text-display:var(--title-hero-size);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--title-display-weight:var(--font-weight-normal);--title-h1-h2-weight:var(--font-weight-semibold);--title-h3-size:var(--text-xl);--title-h3-weight:var(--font-weight-extrabold);--title-h3-tracking:0.05em;--title-h4-size:var(--text-lg);--title-h4-weight:var(--font-weight-bold);--title-h4-tracking:0.06em;--title-h5-size:var(--text-base);--title-h5-weight:var(--font-weight-bold);--title-h5-tracking:0.07em;--title-h6-size:var(--text-xs);--title-h6-weight:var(--font-weight-bold);--title-h6-tracking:0.08em;--letter-spacing-normal:0.02em;--letter-spacing-tight:0;--letter-spacing-wide:0.05em;--letter-spacing-wider:0.06em;--letter-spacing-widest:0.08em;--line-height-tight:1.15;--line-height-normal:1.3;--line-height-relaxed:1.7;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--max-width:1300px;--content-width:720px;--gutter:var(--space-6);--panel-width:calc(var(--max-width) + 2 * var(--space-8));--home-promo-banner-extend:clamp(2rem,5.5vw,4.25rem);--touch-target-min:2.75rem;--recipe-chrome-action-size:var(--touch-target-min);--icon-size-sm:18px;--icon-size-md:20px;--radius:12px;--radius-sm:6px;--radius-subtle:0.4rem;--radius-pill:100px;--radius-chip:20px;--border-width-default:1.5px;--border-width-thin:1px;--color-input-border:rgb(42 42 42/9%);--color-input-border-hover:var(--color-primary-alpha-40);--color-input-border-focus:var(--color-primary);--color-input-border-hover-light:rgb(255 255 255/38%);--color-card-border:var(--color-input-border);--border-subtle:var(--border-width-thin) solid var(--color-card-border);--color-border-muted:rgb(42 42 42/20%);--border-muted:var(--border-width-thin) solid var(--color-border-muted);--shadow-sm:0 2px 8px rgba(0,0,0,0.35);--shadow-md:0 4px 16px rgba(0,0,0,0.45);--shadow-elevated:0 12px 40px rgba(0,0,0,0.55);--shadow-inset-soft:inset 0 1px 2px rgba(255,255,255,0.06);--shadow-subtle:0 2px 10px rgba(0,0,0,0.035);--shadow-hover-subtle:0 3px 10px rgba(0,0,0,0.03);--shadow-nav-pill:0 4px 18px rgba(0,0,0,0.06),0 1px 3px rgba(0,0,0,0.04);--shadow-float:0 3px 10px rgba(0,0,0,0.16),0 1px 3px rgba(0,0,0,0.1);--panel-menu-border-color:rgba(0,0,0,0.1);--panel-menu-border:1px solid var(--panel-menu-border-color);--panel-menu-shadow:var(--shadow-nav-pill);--divider-subtle:1px solid var(--color-border);--recipe-item-card-bg:rgb(255 255 255/90%);--recipe-item-card-border:none;--recipe-item-card-shadow:none;--recipe-item-list-gap:var(--space-2);--anim-duration-fast:0.2s;--anim-duration-normal:0.3s;--anim-duration-slow:0.5s;--anim-timing-ease:ease;--anim-timing-ease-in:ease-in;--anim-timing-ease-out:ease-out;--anim-timing-ease-in-out:ease-in-out;--anim-fast:var(--anim-duration-fast) var(--anim-timing-ease);--anim-nav-skin:0.32s var(--anim-timing-ease);--anim-nav-reveal:transform 0.34s var(--anim-timing-ease-in-out),opacity 0.26s var(--anim-timing-ease);--anim-reveal-quick:opacity var(--anim-duration-fast) var(--anim-timing-ease-out),transform var(--anim-duration-fast) var(--anim-timing-ease-out),max-width var(--anim-duration-fast) var(--anim-timing-ease-out),margin-left var(--anim-duration-fast) var(--anim-timing-ease-out);--hover-subtle-surface:#ffffff;--hover-subtle-bg:color-mix(in srgb,#000000 5%,var(--hover-subtle-surface));--hover-subtle-border:transparent;--hover-subtle-transition:background var(--anim-fast),color var(--anim-fast);--hover-subtle-on-dark-bg:rgba(255,255,255,0.15);--hover-subtle-on-dark-active-bg:rgba(255,255,255,0.22);--hover-subtle-on-dark-transition:background var(--anim-fast);--hover-aggressive-bg:var(--color-primary);--hover-aggressive-ink:var(--color-text-on-primary);--hover-aggressive-active-bg:color-mix(in srgb,#000000 12%,var(--hover-aggressive-bg));--hover-aggressive-transition:background var(--anim-fast),color var(--anim-fast),border-color var(--anim-fast);--hover-outline-primary-bg:var(--color-primary-alpha-15);--hover-btn-transition:background var(--anim-fast),color var(--anim-fast),border-color var(--anim-fast),filter var(--anim-fast);--hover-link-transition:color var(--anim-fast),text-decoration-color var(--anim-fast);--z-base:1;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-toast:540;--z-modal-backdrop:400;--z-modal:500;--z-popover:600;--z-tooltip:700;--glass-bg:var(--color-bg);--glass-border:var(--border-width-default) solid var(--color-border);--input-bg:var(--color-white);--input-border:var(--border-width-thin) solid var(--color-input-border);--input-border-focus:var(--color-input-border-focus);--input-bg-focus:var(--color-white);--input-padding-block:var(--space-2);--input-padding-inline:var(--space-3);--input-min-height:2.35rem;--input-font-size:1rem;--input-shadow-focus:inset 0 1px 2px rgba(0,0,0,0.05),0 0 0 3px var(--color-primary-alpha-10);--badge-padding-lg:4px 8px;--badge-padding-sm:2px 7px;--badge-font-size-lg:0.7rem;--badge-font-size-sm:0.65rem;--badge-font-weight:700;--badge-letter-spacing:0.75px;--badge-text-transform:uppercase;--badge-border-radius:0;--chip-padding:5px 14px;--chip-border:var(--border-width-default) solid var(--color-border);--chip-font-size:var(--text-sm);--chip-font-weight:600;--chip-border-radius:var(--radius-pill);--btn-padding:var(--space-3) var(--space-6);--btn-font-size:var(--text-sm);--btn-font-weight:700;--btn-line-height:var(--line-height-tight);--btn-letter-spacing:var(--letter-spacing-wider);--btn-border-radius:var(--radius-subtle);--btn-border:var(--border-width-default) solid transparent}@media (min-width:481px) and (max-width:1024px){:root{--gutter:clamp(var(--space-4),2.8vw,var(--space-6))}}@media (max-width:480px){:root{--gutter:var(--space-4)}}