:root{color-scheme:light;--bg-cream: #f7f2ea;--bg-paper: #fffdf8;--surface-canvas: #f2ebe3;--surface-base: rgba(255, 255, 255, .88);--surface-elevated: rgba(255, 255, 255, .94);--surface-muted: rgba(248, 244, 238, .94);--surface-control: #ffffff;--surface-control-muted: #f7fafc;--surface-floating: rgba(255, 252, 248, .98);--surface-overlay: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(252, 250, 247, .97));--surface-panel: linear-gradient(180deg, rgba(255, 252, 248, .98), rgba(246, 239, 230, .98));--surface-panel-muted: rgba(255, 255, 255, .82);--ink-900: #1f2933;--ink-700: #3f4f5f;--ink-600: #556779;--ink-500: #6b7280;--blue-700: #2f5f87;--blue-600: #3d79a8;--sage-600: #3d7658;--gold-700: #855d0d;--tomato-700: #b64437;--violet-600: #5e50a9;--tomato-600: #d1483e;--tomato-500: #e55c4d;--sage-500: #72a58a;--sage-400: #8ab79e;--gold-400: #f4be66;--border-soft: rgba(90, 105, 122, .18);--border-strong: rgba(90, 105, 122, .28);--shadow-soft: 0 10px 22px rgba(31, 41, 51, .1);--shadow-lift: 0 20px 40px rgba(31, 41, 51, .16);--shadow-interactive: 0 12px 22px rgba(63, 79, 95, .14);--radius-xs: 8px;--radius-sm: 10px;--radius-md: 12px;--radius-lg: 18px;--radius-xl: 24px;--radius-pill: 999px;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 1.75rem;--space-8: 2rem;--container-gutter: var(--space-5);--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-label: .82rem;--font-size-body: .95rem;--font-size-title: clamp(1.4rem, 2.4vw, 2rem);--control-height-sm: 2.25rem;--control-height-md: 2.75rem;--control-height-lg: 3.25rem;--transition: .18s cubic-bezier(.2, .7, .2, 1);--transition-emphasis: .22s cubic-bezier(.2, .7, .2, 1);--focus-ring: 0 0 0 4px rgba(209, 72, 62, .12)}html,body,#root{margin:0;min-height:100%;background-color:var(--surface-canvas)}#root{min-height:100vh;position:relative;z-index:1}*,*:before,*:after{box-sizing:border-box}body{font-family:var(--font-body);line-height:1.55;color:var(--ink-900);background:radial-gradient(circle at 10% -10%,rgba(229,92,77,.2),transparent 42%),radial-gradient(circle at 100% 0%,rgba(114,165,138,.2),transparent 38%),linear-gradient(180deg,#fcf8f2,#f7f2ea 45%,#f2ebe3);background-attachment:fixed;overscroll-behavior:none}body[data-theme=dark]{color-scheme:dark;--surface-canvas: #0b131d;--surface-base: rgba(20, 31, 43, .88);--surface-elevated: rgba(26, 39, 54, .94);--surface-muted: rgba(21, 31, 44, .86);--surface-control: #1a2736;--surface-control-muted: #223244;--surface-floating: rgba(21, 31, 44, .96);--surface-overlay: linear-gradient(180deg, rgba(21, 31, 44, .96), rgba(17, 25, 36, .95));--surface-panel: linear-gradient(180deg, rgba(18, 28, 39, .98), rgba(22, 34, 47, .98));--surface-panel-muted: rgba(18, 28, 39, .9);--ink-900: #eef3f8;--ink-700: #c7d2df;--ink-600: #b2c2d3;--ink-500: #9eb0c4;--border-soft: rgba(164, 180, 200, .22);--border-strong: rgba(164, 180, 200, .34);--shadow-soft: 0 12px 24px rgba(0, 0, 0, .24);--shadow-lift: 0 22px 44px rgba(0, 0, 0, .36);--shadow-interactive: 0 14px 26px rgba(0, 0, 0, .22);--focus-ring: 0 0 0 4px rgba(245, 167, 160, .12);background:radial-gradient(circle at 10% -10%,rgba(153,65,57,.28),transparent 42%),radial-gradient(circle at 100% 0%,rgba(53,92,74,.36),transparent 38%),linear-gradient(180deg,#121a24,#0f1721 48%,#0b131d)}html[data-theme=dark],body[data-theme=dark],body[data-theme=dark] #root{background:radial-gradient(circle at 10% -10%,rgba(153,65,57,.28),transparent 42%),radial-gradient(circle at 100% 0%,rgba(53,92,74,.36),transparent 38%),linear-gradient(180deg,#121a24,#0f1721 48%,#0b131d);background-attachment:fixed}body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.32) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.32) 1px,transparent 1px);background-size:28px 28px;-webkit-mask-image:radial-gradient(circle at center,black 50%,transparent 100%);mask-image:radial-gradient(circle at center,black 50%,transparent 100%);opacity:.35;z-index:0}.container{max-width:1200px;margin:0 auto;padding-inline:var(--container-gutter)}.header{margin:var(--space-4) var(--container-gutter) var(--space-2);border-radius:28px;background:linear-gradient(135deg,#b8423b,#ce5445 52%,#dc7253);color:#fff;box-shadow:0 18px 34px #a6423a3d;border:1px solid rgba(255,255,255,.2);overflow:hidden}.header-container{padding-inline:10px}.header-content{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.9fr);align-items:stretch;gap:var(--space-5);padding:clamp(.95rem,2vw,1.35rem) 0}.header-brand{display:inline-flex;align-items:flex-start;justify-content:flex-start;gap:clamp(1rem,2vw,1.4rem);width:100%;min-width:0;padding:clamp(1rem,2vw,1.3rem) clamp(1rem,2.2vw,1.35rem);border-radius:22px;background:linear-gradient(180deg,#ffffff29,#ffffff14);box-shadow:inset 0 1px #ffffff42,0 12px 24px #7a272329;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-logo{width:clamp(78px,9vw,102px);height:clamp(78px,9vw,102px);flex:0 0 auto;object-fit:contain;border-radius:999px;background:radial-gradient(circle at 35% 35%,#ffffff57,#ffffff24);padding:.6rem;box-shadow:0 14px 26px #6d1f1b42,inset 0 1px #ffffff4d}.header-title-block{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0}.header-kicker{display:inline-flex;align-items:center;gap:.4rem;margin-bottom:.45rem;font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#fff4efb8}.header-title{margin:0;font-size:clamp(2rem,3.8vw,3rem);line-height:.96;font-weight:800;letter-spacing:.01em;text-wrap:balance}.header-tagline{margin:.42rem 0 0;font-size:clamp(.94rem,1.5vw,1.1rem);font-weight:650;letter-spacing:.04em;color:#fff5f2e6}.header-copy{margin:.78rem 0 0;max-width:42rem;font-size:.95rem;line-height:1.58;color:#fff2eee0}.header-meta{display:flex;flex-wrap:wrap;gap:.55rem;margin:1rem 0 0;padding:0;list-style:none}.header-meta-item{display:inline-flex;align-items:center;min-height:38px;padding:.45rem .78rem;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:#ffffff1f;color:#fff8f5f0;font-size:.8rem;font-weight:700;line-height:1.25;box-shadow:inset 0 1px #ffffff1f}.header-shell-panel{display:grid;align-content:start;gap:.75rem;min-width:0;padding:clamp(.95rem,2vw,1.2rem);border-radius:24px;border:1px solid rgba(255,255,255,.18);background:linear-gradient(180deg,#ffffff2e,#ffffff14);box-shadow:inset 0 1px #fff3,0 12px 24px #7a272329;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-shell-label,.controls-section-label,.results-count-label,.auth-user-kicker,.header-prompt-kicker{font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.header-shell-label{color:#fff4efb3}.header-shell-title{margin:0;font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.15;color:#fff8f5}.header-shell-description,.header-shell-note{margin:0;font-size:.92rem;line-height:1.55;color:#fff4efdb}.header-shell-note{padding:.82rem .9rem;border-radius:18px;border:1px solid rgba(255,255,255,.14);background:#ffffff1a}.header-prompt-stack{display:grid;gap:.7rem}.header-prompt-card{display:grid;gap:.7rem;padding:.9rem;border-radius:18px;border:1px solid rgba(255,255,255,.16);background:#ffffff1a}.header-prompt-card-strong{background:#ffffff29}.header-prompt-copy{display:grid;gap:.32rem}.header-prompt-kicker{color:#fff4efb8}.header-prompt-copy strong{color:#fff9f7;font-size:.98rem;line-height:1.3}.header-prompt-copy p{margin:0;color:#fff4efd1;font-size:.84rem;line-height:1.5}.header-prompt-actions{display:flex;flex-wrap:wrap;gap:.55rem}body[data-theme=dark] .header{background:linear-gradient(135deg,#7c2d2a,#9a4035 52%,#b2563f);box-shadow:0 18px 34px #090e1457;border-color:#ffffff1f}body[data-theme=dark] .header-brand{background:linear-gradient(180deg,#121c2742,#121c2724);box-shadow:inset 0 1px #ffffff1f,0 12px 24px #090e1438}body[data-theme=dark] .header-logo{background:radial-gradient(circle at 35% 35%,#fff3,#121c272e);box-shadow:0 14px 26px #090e1452,inset 0 1px #ffffff2e}body[data-theme=dark] .header-tagline{color:#f5ede9d6}body[data-theme=dark] .header-kicker,body[data-theme=dark] .header-shell-label,body[data-theme=dark] .header-prompt-kicker{color:#f5ede9a8}body[data-theme=dark] .header-copy,body[data-theme=dark] .header-shell-description,body[data-theme=dark] .header-shell-note,body[data-theme=dark] .header-prompt-copy p{color:#f5ede9d1}body[data-theme=dark] .header-meta-item,body[data-theme=dark] .header-shell-panel,body[data-theme=dark] .header-shell-note,body[data-theme=dark] .header-prompt-card{border-color:#ffffff1f;background:#121c272e}body[data-theme=dark] .header-prompt-card-strong{background:#121c2747}.message-stack{position:fixed;top:max(12px,env(safe-area-inset-top,0px) + 8px);right:12px;z-index:26000;display:grid;gap:.55rem;width:min(92vw,360px)}.message-pill{border-radius:20px;padding:.86rem .92rem;box-shadow:var(--shadow-interactive);border:1px solid rgba(90,105,122,.16);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.message-pill-shell{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.72rem;align-items:start}.message-pill-icon{width:38px;height:38px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:#ffffff94;box-shadow:inset 0 1px #ffffffb8;font-size:.95rem}.message-pill-body{display:grid;gap:.4rem;min-width:0}.message-pill-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.message-pill-label,.status-banner-kicker{font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.message-pill-label{color:inherit;opacity:.78}.message-pill-close{width:30px;height:30px;border:1px solid rgba(90,105,122,.14);border-radius:999px;background:#ffffff85;color:inherit;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform var(--transition),background-color var(--transition),border-color var(--transition)}.message-pill-close:hover{transform:translateY(-1px);background:#ffffffb8;border-color:#5a697a38}.message-pill-close:focus-visible{outline:none;box-shadow:var(--focus-ring)}.message-pill-text{margin:0;font-size:.88rem;font-weight:650;line-height:1.45}.message-pill-actions{display:flex;flex-wrap:wrap;gap:.45rem}.message-pill-info{color:#1f2933;background:#fff3cdf2;border-color:#ffce568c}.message-pill-success{color:#113228;background:#cef4ddf2;border-color:#57c7858c}.message-pill-error{color:#5f1d1d;background:#ffdedef5;border-color:#d758588c}.auth-return-banner,.app-offline-banner{margin:0 var(--container-gutter) .7rem;border-radius:22px;border:1px solid var(--status-banner-border, rgba(90, 105, 122, .16));background:var(--status-banner-surface, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 14px 26px #1f293314}.auth-return-banner{--status-banner-surface: linear-gradient(180deg, rgba(255, 252, 247, .96), rgba(247, 239, 230, .94))}.auth-return-banner-success{--status-banner-border: rgba(87, 199, 133, .3)}.auth-return-banner-error{--status-banner-border: rgba(215, 88, 88, .3)}.app-offline-banner{--status-banner-surface: linear-gradient(180deg, rgba(255, 248, 235, .98), rgba(250, 239, 216, .96));--status-banner-border: rgba(232, 160, 54, .28)}.auth-return-banner-inner,.app-offline-banner-inner{min-height:70px;display:flex;align-items:center;justify-content:space-between;gap:.85rem;padding-block:.78rem}.status-banner-shell{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.78rem;min-width:0}.status-banner-icon{width:42px;height:42px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;background:#ffffff9e;color:var(--ink-900);box-shadow:inset 0 1px #ffffffc7}.status-banner-copy{display:grid;gap:.18rem;min-width:0}.status-banner-kicker{color:var(--ink-500)}.status-banner-text{color:var(--ink-800);font-size:.9rem;font-weight:650;line-height:1.45}.auth-return-close{flex:0 0 auto;width:38px;height:38px;border-radius:999px;border:1px solid rgba(90,105,122,.16);background:#ffffffb8;color:var(--ink-700);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform var(--transition),background-color var(--transition),border-color var(--transition)}.auth-return-close:hover{transform:translateY(-1px);background:#ffffffe6;border-color:#d1483e3d}.auth-return-close:focus-visible{outline:none;box-shadow:var(--focus-ring)}@media(max-width:700px){.message-stack{left:12px;right:12px;width:auto}.auth-sync-pill-online{padding-inline:.62rem}.auth-sync-pill-online .auth-sync-label{display:inline}.group-invites-pill{padding-inline:.62rem}.group-invites-pill .group-invites-label{display:inline}.auth-return-banner,.app-offline-banner{margin-inline:12px}.auth-return-banner-inner,.app-offline-banner-inner{align-items:flex-start}.status-banner-shell{align-items:start}.auth-return-close{margin-top:.12rem}}.main{padding:var(--space-3) 0 calc(var(--space-6) * 2);min-height:calc(100vh - 200px)}.controls-nav-row,.controls-search-row,.controls-filter-row,.controls-tools-row{display:flex;flex-wrap:wrap;align-items:center;gap:.62rem}.controls-nav-row,.controls-filter-row{justify-content:space-between}.controls-search-row{justify-content:center}.controls-filter-group,.controls-main-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.52rem}.controls-main-actions{justify-content:flex-end}.scope-select-wrap{display:inline-flex;align-items:center;min-width:170px}.scope-select-wrap .category-select{min-width:170px}.recipe-scope-select{font-weight:700;border-width:2px;border-color:#d1483e73;background:linear-gradient(180deg,#fff7ecf2,#fff1e0f2);box-shadow:0 0 0 2px #d1483e17,0 6px 14px #d1483e24}.recipe-scope-select:focus{border-color:#d1483eb8;box-shadow:var(--focus-ring),0 8px 18px #d1483e2e}.group-scope-controls{display:inline-flex;align-items:center;gap:.42rem;min-width:0}.group-scope-controls select{min-width:160px}.scope-select-wrap .btn,.auth-mode-toggle .btn{min-width:0}.profile-theme-row{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin:.2rem 0 .8rem}.profile-theme-label{font-size:.82rem;font-weight:700;color:var(--ink-700)}.auth-form{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;min-width:0}.auth-form-caption{margin:0;width:100%;font-size:.78rem;color:var(--ink-500)}.auth-input-row{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;width:100%;min-width:0}.auth-form input,.profile-auth-form input{min-width:150px;border:1px solid var(--border-soft);border-radius:999px;background:var(--surface-control);color:var(--ink-900);padding:.48rem .72rem;font-size:.84rem}.auth-input-row input{flex:1 1 170px}.auth-form input:focus,.profile-auth-form input:focus{outline:none;border-color:#d1483e8c;box-shadow:var(--focus-ring)}.auth-mode-toggle{display:inline-flex;flex-wrap:wrap;gap:.35rem;margin:0;padding:0;border:0;min-width:0}.shopping-unit-toggle{display:inline-flex;flex-wrap:wrap;gap:var(--space-2);margin:0;padding:0;border:0;min-width:0}.auth-mode-toggle .btn,.shopping-unit-toggle .btn{min-width:0}.auth-signed-in{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.45rem;max-width:100%}.controls button,.controls input,.controls select{max-width:100%}.auth-sync-pill{display:inline-flex;align-items:center;gap:.28rem;border-radius:999px;padding:.2rem .5rem;font-size:.73rem;font-weight:700;color:#316f57;background:#dff5ea;border:1px solid rgba(53,112,87,.26)}.auth-sync-pill-offline{color:#fbe2e2;background:#8b2424;border:1px solid rgba(248,113,113,.46)}.group-invites-pill{display:inline-flex;align-items:center;gap:.32rem}.group-invites-count{min-width:1.25rem;height:1.25rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;padding:0 .3rem;font-size:.72rem;font-weight:700;color:#fff;background:#c7352f}.toolbar-icon-button{position:relative;width:38px;min-width:38px;padding:0;justify-content:center;flex:0 0 auto}.toolbar-icon-button i{font-size:.9rem;opacity:.78}.toolbar-icon-button .group-invites-count{position:absolute;top:-.22rem;right:-.18rem;min-width:1rem;height:1rem;font-size:.64rem}.app-offline-banner{margin:0 20px;border-radius:16px;border:1px solid rgba(212,132,25,.28);background:linear-gradient(135deg,#ffecc7f0,#fff7ddf0);color:#6c3d0f;box-shadow:0 10px 18px #a6692329;font-size:.9rem;font-weight:600;padding:.7rem 0}.auth-return-banner{margin:0 20px .55rem;border-radius:16px;border:1px solid transparent;box-shadow:0 10px 18px #4654651f}.auth-return-banner-success{color:#0f5132;border-color:#3cb37159;background:linear-gradient(135deg,#ddffecf2,#eefff6f2)}.auth-return-banner-error{color:#7f1d1d;border-color:#ef444459;background:linear-gradient(135deg,#ffe5e5f2,#fff1f1f2)}.auth-return-banner-info{color:#0f4b7a;border-color:#3b82f659;background:linear-gradient(135deg,#deeffff2,#eef7fff2)}.auth-return-banner-inner{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:.7rem;font-size:.9rem;font-weight:600;padding:.52rem 0}.auth-return-close{width:30px;height:30px;border:1px solid rgba(90,105,122,.16);border-radius:999px;background:#fffc;color:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 8px 18px #1f29331f;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition),background-color var(--transition)}.auth-return-close:hover{transform:translateY(-1px);border-color:#d1483e38;background:#fffffff0;box-shadow:var(--shadow-interactive)}.auth-return-close:focus-visible{outline:none;box-shadow:var(--focus-ring),0 8px 18px #1f29331f}.auth-user-email{max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;color:var(--ink-700);padding:.26rem .58rem;border-radius:999px;border:1px solid rgba(90,105,122,.28);background:var(--surface-control-muted)}.auth-user-link{cursor:pointer;font:inherit;text-align:left;display:inline-flex;align-items:center;gap:.36rem;justify-content:center}.auth-user-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-user-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;border:1px solid rgba(90,105,122,.3);background:#fff}.auth-user-link:hover{border-color:#72a58a80}.auth-user-link:focus-visible{outline:none;box-shadow:0 0 0 3px #72a58a29}.auth-config-note{font-size:.77rem;color:var(--ink-500);padding:.24rem .52rem;border-radius:999px;border:1px dashed rgba(90,105,122,.32)}.shared-readonly-pill{display:inline-flex;align-items:center;gap:.38rem;padding:.35rem .62rem;border-radius:999px;font-size:.78rem;color:var(--ink-700);border:1px solid rgba(90,105,122,.26);background:var(--surface-control-muted)}.controls-utility-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.52rem;padding:.52rem .58rem;margin-top:.18rem;border-top:1px solid rgba(90,105,122,.22);border-radius:12px;background:#f2ece3}.controls-tools-row{display:flex;align-items:center;gap:.5rem}.view-toggle-group{display:inline-flex;gap:.45rem;padding:.2rem;border-radius:999px;border:1px solid var(--border-soft);background:var(--surface-control-muted)}.controls-danger-zone{display:flex;align-items:center;justify-content:flex-start}.controls-danger-zone .btn-danger{box-shadow:0 6px 12px #bc304333}.btn-add-inline{min-width:136px}.back-to-top-btn,.mobile-add-fab{position:fixed;right:max(16px,env(safe-area-inset-right,0px) + 16px);z-index:920;box-shadow:var(--shadow-lift)}.back-to-top-btn{bottom:max(16px,env(safe-area-inset-bottom,0px) + 16px);min-width:0;padding-inline:.95rem}.mobile-add-fab{bottom:max(16px,env(safe-area-inset-bottom,0px) + 16px);min-height:50px;padding-inline:1rem}.mobile-add-fab-has-top{bottom:calc(max(16px,env(safe-area-inset-bottom,0px) + 16px) + 4.05rem)}.ios-install-help{margin-top:.18rem;border:1px solid var(--border-soft);border-radius:14px;background:var(--surface-control);padding:.62rem .74rem;text-align:center}.controls-tools-row .ios-install-help{margin-top:0}.ios-install-help summary{display:flex;align-items:center;justify-content:center;width:100%;gap:.45rem;cursor:pointer;color:var(--ink-900);font-size:.9rem;font-weight:700;padding:.1rem .2rem;border-radius:10px}.ios-install-help summary::marker{color:var(--sage-500)}.ios-install-help p{margin:.55rem 0 .45rem;color:var(--ink-700);font-size:.86rem}.ios-install-help ol{margin:0;padding-left:0;list-style-position:inside;color:var(--ink-700);font-size:.84rem;line-height:1.5}.ios-install-help li+li{margin-top:.32rem}.search-box{position:relative;max-width:520px;width:100%;padding:1px;border-radius:999px;background:linear-gradient(110deg,var(--tomato-500),var(--gold-400),var(--sage-500))}.search-box-prominent{max-width:860px}.search-box input{width:100%;padding:.84rem .98rem .84rem 2.72rem;border:0;border-radius:999px;font-size:.97rem;color:var(--ink-900);background:var(--surface-control);transition:border-color var(--transition),box-shadow var(--transition)}.search-box-prominent input{min-height:56px;padding:.92rem 1.02rem .92rem 2.95rem;font-size:1.04rem}.search-box input:focus{outline:none;border-color:#d1483e8c;box-shadow:var(--focus-ring)}.search-box i{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--ink-500)}.category-filter{position:relative}.category-select{appearance:none;min-width:190px;padding:.76rem 2.5rem .76rem .95rem;border:1px solid var(--border-soft);border-radius:999px;font-size:.95rem;color:var(--ink-900);background:var(--surface-control);transition:border-color var(--transition),box-shadow var(--transition)}.category-select:focus{outline:none;border-color:#d1483e8c;box-shadow:var(--focus-ring)}.category-filter i{position:absolute;right:.95rem;top:50%;transform:translateY(-50%);color:var(--ink-500);pointer-events:none}.results-count{color:var(--ink-500);font-size:.84rem;font-weight:620;letter-spacing:.01em;padding:.08rem .2rem .08rem .58rem;margin-left:.1rem;border-left:1px solid rgba(90,105,122,.25);white-space:nowrap}.theme-switch{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer}.theme-switch input{position:absolute;opacity:0;pointer-events:none}.theme-switch-track{width:54px;height:30px;border-radius:999px;padding:3px;background:var(--surface-control-muted);border:1px solid var(--border-strong);display:inline-flex;align-items:center;box-shadow:inset 0 1px #ffffffa6;transition:background-color var(--transition),border-color var(--transition)}.theme-switch input:focus-visible+.theme-switch-track{outline:none;box-shadow:var(--focus-ring),inset 0 1px #ffffffa6}.theme-switch-knob{width:22px;height:22px;border-radius:999px;background:var(--surface-control);color:#cc9340;display:grid;place-items:center;font-size:.74rem;box-shadow:var(--shadow-soft);transform:translate(0);transition:transform var(--transition),background-color var(--transition),color var(--transition)}.theme-switch input:checked+.theme-switch-track .theme-switch-knob{transform:translate(24px);color:#dce6ff;background:#2e3a4a}.theme-switch-label{font-size:.86rem;font-weight:650;color:var(--ink-700);min-width:38px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:var(--control-height-md);padding:.72rem 1.1rem;border:1px solid transparent;border-radius:999px;font-size:.92rem;font-weight:650;letter-spacing:.01em;cursor:pointer;text-decoration:none;white-space:nowrap;line-height:1;transition:transform var(--transition),box-shadow var(--transition),background-color var(--transition),border-color var(--transition),color var(--transition)}.btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn-primary{color:#fff;background:linear-gradient(140deg,var(--tomato-600),var(--tomato-500));box-shadow:0 8px 16px #d1483e47}.btn-primary:hover{box-shadow:0 12px 22px #d1483e54}.btn-secondary{color:var(--ink-900);background:var(--surface-control);border-color:var(--border-soft)}.btn-secondary:hover{border-color:var(--border-strong);background:var(--surface-elevated);box-shadow:var(--shadow-interactive)}.btn-small{min-height:var(--control-height-sm);padding:.58rem .92rem;font-size:.84rem}.btn-danger{color:#fff;background:linear-gradient(140deg,#bc3043,#d64052);box-shadow:0 8px 16px #bc304347}.btn-danger:hover{box-shadow:0 12px 22px #bc304357}.btn:is(.btn-add-inline,.btn-small.btn-primary,.btn-pin,.btn-danger.btn-small){background-image:none}.btn:is(.btn-add-inline,.btn-small.btn-primary){background-color:#d24f44}.btn.btn-pin{background-color:#d4deea}.btn.btn-danger.btn-small{background-color:#c63c4e}.btn-visit{color:#fff;background:linear-gradient(140deg,#4c7d66,#62957c);box-shadow:0 8px 16px #4c7d6642}.btn-visit:hover{box-shadow:0 12px 22px #4c7d6654}.btn-copy{color:var(--ink-900);background:linear-gradient(140deg,#f7df9d,#f2c968);box-shadow:0 8px 16px #c89d3a38}.btn-copy:hover{box-shadow:0 12px 22px #c89d3a4d}.btn-print{color:#fff;background:linear-gradient(140deg,#2f5f87,#3f79a8);box-shadow:0 8px 16px #2f5f8747}.btn-print:hover{box-shadow:0 12px 22px #2f5f8757}.btn-pin{color:var(--ink-900);background:linear-gradient(140deg,#dfe5ee,#ccd7e5);box-shadow:0 8px 16px #54678033}.btn-pin-active{color:#fff;background:linear-gradient(140deg,#5d6fa0,#7389bf);box-shadow:0 10px 18px #53659847}.btn-pin:hover,.btn-pin-active:hover{box-shadow:0 12px 22px #53659857}.recipe-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.05rem;margin-bottom:2.5rem;align-items:start}@media(min-width:1024px){.recipe-grid{display:block;column-count:3;column-gap:1.25rem}.recipe-card{display:inline-block;width:100%;margin-bottom:1.25rem;break-inside:avoid}}.recipe-card{position:relative;overflow:hidden;border-radius:22px;border:1px solid var(--border-soft);background:linear-gradient(180deg,#fffffffb,#f8f3ecf2);box-shadow:0 16px 28px #4654651f;display:flex;flex-direction:column;align-self:start;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition);animation:cardRise .34s cubic-bezier(.23,1,.32,1);content-visibility:auto;contain-intrinsic-size:560px;contain:layout style paint}.recipe-card-clickable{cursor:pointer}.recipe-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--tomato-500),var(--gold-400),var(--sage-400));opacity:0;transition:opacity var(--transition);z-index:4}.recipe-card:after{content:"";position:absolute;inset:auto -22% 58% auto;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(229,92,77,.14),transparent 70%);pointer-events:none;z-index:0}.recipe-card-hit-area{position:absolute;inset:0;z-index:2;border:0;padding:0;margin:0;border-radius:inherit;background:transparent;cursor:pointer;pointer-events:none}.recipe-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lift);border-color:#72a58a70}.recipe-card:focus-within{box-shadow:var(--focus-ring),var(--shadow-lift);border-color:#d1483e6b}.recipe-card:hover:before{opacity:1}.recipe-card:focus-within:before{opacity:1}.recipe-card-hit-area:focus-visible{outline:none}.recipe-card.highlighted{border-color:#d1483ed1;box-shadow:0 0 0 3px #d1483e33,var(--shadow-lift)}.recipe-header{position:relative;z-index:1;display:grid;gap:.82rem;padding:1.02rem 1.05rem .92rem;background:linear-gradient(160deg,#f5eee4e0,#ffffff94);border-bottom:1px solid rgba(90,105,122,.16)}.recipe-header-main,.recipe-header-copy{display:grid}.recipe-header-main{gap:.76rem}.recipe-header-copy{gap:.58rem}.recipe-title{margin:0;font-size:clamp(1.14rem,1.7vw,1.34rem);line-height:1.16;font-weight:760;letter-spacing:.01em;color:var(--ink-900);text-wrap:balance}.recipe-origin-badges{display:flex;flex-wrap:wrap;gap:.4rem;margin:0}.recipe-origin-badges-focused{margin:0}.recipe-origin-badge{display:inline-flex;align-items:center;gap:.35rem;max-width:100%;border-radius:var(--radius-pill);padding:.28rem .62rem;font-size:.75rem;font-weight:700;border:1px solid var(--border-soft);color:var(--ink-700);background:#ffffffdb;line-height:1.3;white-space:normal}.recipe-origin-badge-shared{background:color-mix(in srgb,var(--blue-600) 12%,transparent);border-color:color-mix(in srgb,var(--blue-600) 20%,transparent);color:var(--blue-700)}.recipe-origin-badge-group{background:#72a58a24;border-color:#72a58a3d;color:var(--sage-600)}.recipe-origin-badge-readonly{background:#f4be6629;border-color:#f4be6642;color:var(--gold-700)}.recipe-origin-badge-editable{background:#e55c4d1f;border-color:#e55c4d38;color:var(--tomato-700)}.recipe-origin-badge-mine{background:#7d6fd41f;border-color:#7d6fd43d;color:var(--violet-600)}.recipe-origin-badge-meta{background:#5a697a14;border-color:#5a697a1f;color:var(--ink-600)}.recipe-provenance-panel{padding:.78rem .82rem;border-radius:16px;border:1px solid rgba(90,105,122,.12);background:linear-gradient(180deg,#ffffffd1,#f8f4eeeb);box-shadow:inset 0 1px #ffffffb8}.recipe-provenance-list{display:grid;gap:.55rem;margin:0}.recipe-provenance-list-focused{margin:0;gap:.72rem}.recipe-provenance-item{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:.5rem .68rem}.recipe-provenance-item-focused{padding:.82rem .9rem;border-radius:16px;border:1px solid rgba(90,105,122,.12);background:#ffffffb8}.recipe-provenance-label{display:inline-flex;align-items:center;font-size:.72rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-500);line-height:1;padding:.3rem .52rem;border-radius:var(--radius-pill);background:#5a697a14}.identity-block-compact{gap:.5rem}.identity-block-compact .identity-avatar{width:32px;height:32px;font-size:.74rem}.identity-block-compact .identity-copy strong{font-size:.8rem}.identity-block-compact .identity-copy small{font-size:.72rem}.recipe-categories{display:flex;flex-wrap:wrap;gap:.45rem}.recipe-categories-header,.recipe-categories-focused{gap:.5rem}.recipe-category{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;padding:.22rem .66rem;color:#fff;font-size:.75rem;font-weight:650;letter-spacing:.01em;text-transform:capitalize;box-shadow:inset 0 -1px #fff3}.recipe-body{position:relative;z-index:1;padding:1rem 1.05rem 1.05rem;display:flex;flex:1;flex-direction:column;gap:.9rem}.recipe-body.recipe-body-compact{gap:.72rem}.recipe-content-stack{display:grid;gap:.78rem}.recipe-image{width:100%;aspect-ratio:16 / 9;max-height:200px;display:block;object-fit:cover;border-radius:16px;border:1px solid var(--border-soft);background:#f8fafcb8;box-shadow:0 14px 24px #3f4f5f1f}.recipe-url{display:block;color:#356892;text-decoration:none;font-size:.88rem;word-break:break-word;padding:.62rem .76rem;border-radius:var(--radius-md);background:#72a58a1f;border:1px solid rgba(114,165,138,.24);transition:background-color var(--transition),border-color var(--transition),transform var(--transition)}.recipe-url:hover{background:#72a58a2e;border-color:#72a58a59;transform:translate(2px)}.recipe-url:focus-visible,.import-preview-content a:focus-visible,.export-preview-content a:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:12px}.recipe-notes{margin:0;color:var(--ink-700);font-size:.9rem;font-style:italic;background:linear-gradient(180deg,#e55c4d14,#f4be6614);border:1px solid rgba(229,92,77,.14);border-left:3px solid rgba(229,92,77,.55);border-radius:0 14px 14px 0;padding:.58rem .72rem}.recipe-section{background:linear-gradient(180deg,#ffffffbd,#f9f5eff0);border:1px solid rgba(90,105,122,.12);border-radius:16px;padding:.82rem .9rem}.recipe-section-title{font-size:.93rem;font-weight:760;margin:0 0 .58rem;color:var(--ink-900);display:inline-flex;align-items:center;gap:.4rem}.recipe-list{margin:0;padding-left:1.1rem;color:var(--ink-700);font-size:.9rem;line-height:1.6}.recipe-actions{margin-top:auto;display:grid;gap:.58rem;position:relative;z-index:3}.recipe-action-group,.recipe-action-status{display:flex;flex-wrap:wrap;gap:.42rem;padding:.42rem;border-radius:16px;border:1px solid rgba(90,105,122,.1);background:#faf7f2e6;box-shadow:inset 0 1px #ffffffc2}.recipe-action-group-manage{background:#f4ede7e6}.recipe-action-status{justify-content:center}.recipe-actions .btn{flex:1 1 2.4rem;width:auto;min-width:0;min-height:38px;padding:.36rem .52rem;justify-content:center}.recipe-actions .btn i{margin:0;font-size:.9rem}.recipe-actions .shared-readonly-pill{width:100%;justify-content:center}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.focused-recipe-overlay{position:fixed;inset:0;z-index:1200;background:#080e16a3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:max(14px,env(safe-area-inset-top,0px) + 10px) max(14px,env(safe-area-inset-right,0px) + 14px) max(14px,env(safe-area-inset-bottom,0px) + 14px) max(14px,env(safe-area-inset-left,0px) + 14px);display:flex;align-items:center;justify-content:center}.focused-recipe-panel{width:min(1120px,100%);max-height:calc(100dvh - max(28px,env(safe-area-inset-top,0px) + 14px) - max(28px,env(safe-area-inset-bottom,0px) + 14px));display:flex;flex-direction:column;gap:1rem;border-radius:28px;border:1px solid var(--border-soft);background:linear-gradient(180deg,#fffffffb,#f7f2eaf5);box-shadow:var(--shadow-lift);padding:1.08rem 1.08rem 1.18rem;overflow-y:auto}.focused-recipe-topbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.focused-recipe-kicker,.focused-recipe-panel-kicker{margin:0;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-500)}.focused-recipe-close{display:flex;align-items:center;gap:.35rem;justify-content:center;width:fit-content;border:1px solid transparent;background:linear-gradient(140deg,#bc3043,#d64052);color:#fff;border-radius:999px;padding:.45rem .7rem;cursor:pointer;font-size:.85rem}.focused-recipe-close:hover{box-shadow:0 12px 22px #bc304357}.focused-recipe-close:focus-visible{outline:none;box-shadow:var(--focus-ring),0 12px 22px #bc304338}.focused-recipe-header{display:grid;gap:.72rem}.focused-recipe-title-block{display:grid;gap:.78rem}.focused-recipe-header h2{margin:0;font-size:clamp(1.7rem,3.2vw,2.5rem);line-height:.98;letter-spacing:.01em;text-wrap:balance}.focused-recipe-summary{display:grid;gap:1rem;align-items:start}.focused-recipe-summary-has-image{grid-template-columns:minmax(0,1.45fr) minmax(280px,.92fr)}.focused-recipe-summary-no-image{grid-template-columns:minmax(0,1fr)}.focused-recipe-image-wrap{margin:0;padding:.5rem;border-radius:24px;border:1px solid rgba(90,105,122,.12);background:linear-gradient(180deg,#ffffffd1,#f7f1eaf2);box-shadow:inset 0 1px #ffffffc7}.focused-recipe-image{width:100%;max-height:min(52vh,480px);display:block;object-fit:cover;border-radius:18px;border:1px solid var(--border-soft);box-shadow:0 18px 30px #3f4f5f24}.focused-recipe-aside{display:grid;gap:.9rem}.focused-recipe-aside-panel{display:grid;gap:.75rem;padding:.98rem 1rem;border-radius:20px;border:1px solid rgba(90,105,122,.12);background:linear-gradient(180deg,#ffffffc7,#f8f4eef0);box-shadow:inset 0 1px #ffffffc7}.recipe-notes-focused{padding:.78rem .88rem;border-radius:16px}.focused-recipe-section{margin:0;border:1px solid var(--border-soft);border-radius:22px;background:linear-gradient(180deg,#ffffffc7,#f8f4eef5);padding:1rem 1.02rem 1.06rem}.focused-recipe-content-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:start}.focused-recipe-actions-shell{margin-top:auto}.focused-recipe-actions{display:grid;gap:.78rem}.focused-recipe-action-group{display:flex;flex-wrap:wrap;gap:.6rem;padding:.72rem;border-radius:22px;border:1px solid rgba(90,105,122,.12);background:#faf7f2e6;box-shadow:inset 0 1px #ffffffc2}.focused-recipe-action-group-manage{background:#f4ede7e6}.focused-recipe-action-group .btn{flex:1 1 220px;min-width:0}.no-recipes{text-align:center;padding:4rem 1.3rem;color:var(--ink-700);border-radius:var(--radius-lg);border:1px dashed rgba(90,105,122,.3);background:#ffffffa8}.no-recipes>i{font-size:3.6rem;margin-bottom:.8rem;color:#d1483e80}.no-recipes h2{font-size:1.5rem;margin-bottom:.5rem}.no-recipes p{margin-bottom:1rem}.empty-state-card{display:grid;justify-items:center;gap:.82rem;max-width:560px;margin:0 auto;text-align:center;padding:1.15rem 1.1rem 1.18rem;border-radius:22px;border:1px solid rgba(90,105,122,.16);background:linear-gradient(180deg,#ffffffeb,#f6f0e9f5);box-shadow:inset 0 1px #ffffffd1,0 16px 30px #3f4f5f14}.empty-state-card-compact{max-width:none;padding:.98rem 1rem}.empty-state-icon{width:72px;height:72px;border-radius:22px;display:grid;place-items:center;background:linear-gradient(180deg,#e55c4d24,#f4be661f);color:#d1483ed1;box-shadow:inset 0 1px #fffc,0 12px 22px #d1483e1a}.empty-state-icon i{font-size:1.55rem}.empty-state-copy{display:grid;gap:.38rem}.empty-state-copy h3{font-size:1.2rem;color:var(--ink-900);line-height:1.15}.empty-state-copy p{margin:0;color:var(--ink-700);line-height:1.6}.empty-state-actions,.empty-state-action-row{display:flex;flex-wrap:wrap;justify-content:center;gap:.55rem}.empty-state-actions{margin-top:.1rem}.identity-block{display:flex;align-items:center;gap:.65rem;min-width:0}.identity-avatar{width:40px;height:40px;border-radius:var(--radius-pill);flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:800;letter-spacing:.04em;color:#fff;background:linear-gradient(140deg,var(--tomato-600),#e58b58);box-shadow:0 8px 18px #d1483e2e;overflow:hidden}.identity-avatar-image{width:100%;height:100%;display:block;object-fit:cover}.identity-avatar-self{background:linear-gradient(140deg,var(--sage-600),var(--sage-500))}.identity-avatar-member,.identity-avatar-activity{background:linear-gradient(140deg,#50667f,#7088a5)}.identity-avatar-invite,.identity-avatar-search{background:linear-gradient(140deg,var(--gold-700),#d6a649)}.identity-avatar-editable{background:linear-gradient(140deg,#5d6fa0,#7389bf)}.identity-copy{min-width:0;display:grid;gap:.12rem}.identity-copy strong,.share-existing-meta-block strong{font-size:.86rem;color:var(--ink-900);line-height:1.35}.identity-copy small,.share-existing-meta-block small{display:block;font-size:.75rem;color:var(--ink-500);line-height:1.4}.share-existing-item-shell{display:grid;gap:.45rem;min-width:0}.share-existing-meta-block{display:grid;gap:.12rem;padding-left:.08rem}.meal-planner{position:relative;display:grid;gap:var(--space-4);border:1px solid var(--border-soft);border-radius:24px;background:linear-gradient(180deg,#fffffff5,#f5efe7f5);box-shadow:0 18px 34px #4654651f;padding:clamp(1rem,2vw,1.3rem);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow:hidden}.meal-planner:before{content:"";position:absolute;inset:-28% auto auto 62%;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(229,92,77,.12),transparent 72%);pointer-events:none}.meal-planner-header{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.95rem}.meal-planner-heading{display:grid;gap:.58rem;min-width:0}.meal-planner-kicker,.meal-day-card-kicker,.meal-slot-head small{margin:0;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.meal-planner-kicker,.meal-day-card-kicker{color:var(--ink-500)}.meal-planner-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem .75rem}.meal-planner-header h2{margin:0;font-size:clamp(1.3rem,2vw,1.58rem);line-height:1.08;color:var(--ink-900)}.meal-planner-description{margin:0;max-width:60ch;color:var(--ink-700);font-size:.92rem;line-height:1.6}.meal-planner-meta{display:flex;flex-wrap:wrap;gap:.55rem}.meal-planner-meta-pill,.meal-planner-status-pill{display:inline-flex;align-items:center;gap:.42rem;min-height:36px;padding:.42rem .78rem;border-radius:999px;border:1px solid rgba(90,105,122,.18);background:#ffffffb8;color:var(--ink-700);font-size:.8rem;font-weight:700;line-height:1.2;box-shadow:inset 0 1px #ffffffbd}.meal-planner-status-pill{color:var(--ink-600);background:#f4ede5f5}.meal-planner-status-pill-active{color:var(--sage-700);border-color:#72a58a47;background:#e2f1e9f2}.meal-planner-clear{align-self:start}.meal-planner-clear:disabled,.meal-planner-clear:disabled:hover{cursor:not-allowed;opacity:.6;transform:none;box-shadow:none;border-color:var(--border-soft);background:var(--surface-control-muted)}.meal-planner-state-shell,.meal-planner-grid,.meal-planner-empty-state{position:relative;z-index:1;animation:plannerSurfaceRise .28s cubic-bezier(.22,1,.36,1)}.meal-planner-empty-state{padding:clamp(.35rem,1vw,.55rem);border-radius:22px;border:1px solid rgba(90,105,122,.12);background:linear-gradient(180deg,#fffaf6f0,#f9f4edf5)}.meal-planner-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.95rem}.meal-day-card{display:grid;gap:.9rem;min-width:0;border-radius:22px;border:1px solid rgba(90,105,122,.12);background:linear-gradient(180deg,#ffffffeb,#faf6f0fa);padding:1rem;box-shadow:inset 0 1px #ffffffd1}.meal-day-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem}.meal-day-card-title-group{display:grid;gap:.28rem;min-width:0}.meal-day-card h3{margin:0;font-size:1.08rem;line-height:1.15;color:var(--ink-900)}.meal-day-card-count{display:inline-flex;align-items:center;justify-content:center;min-width:2.5rem;min-height:2.25rem;padding:0 .65rem;border-radius:999px;border:1px solid rgba(90,105,122,.16);background:#f6f1eaf5;color:var(--ink-600);font-size:.82rem;font-weight:760;line-height:1}.meal-day-card-count-active{border-color:#72a58a47;background:#e2f1e9f2;color:var(--sage-700)}.meal-day-card-slots{display:grid;gap:.75rem}.meal-slot{display:grid;gap:.42rem;padding:.75rem;border-radius:18px;border:1px solid rgba(90,105,122,.1);background:#ffffffb8;box-shadow:inset 0 1px #ffffffb3}.meal-slot-filled{border-color:#72a58a38;background:linear-gradient(180deg,#eef7f2eb,#ffffffd6)}.meal-slot-head{display:flex;align-items:baseline;justify-content:space-between;gap:.65rem}.meal-slot span{font-size:.84rem;font-weight:700;color:var(--ink-800)}.meal-slot-head small{color:var(--ink-500);line-height:1.2}.meal-slot-select-wrap{position:relative}.meal-slot-select-wrap i{position:absolute;top:50%;right:.95rem;transform:translateY(-50%);color:var(--ink-500);pointer-events:none}.meal-slot-select{appearance:none;width:100%;min-height:50px;border:1px solid var(--border-soft);border-radius:16px;background:var(--surface-control);color:var(--ink-900);padding:.78rem 2.6rem .78rem .95rem;font-size:.92rem;font-weight:650;line-height:1.35;box-shadow:inset 0 1px #ffffffd1;transition:border-color var(--transition),box-shadow var(--transition),background-color var(--transition)}.meal-slot-select:hover{border-color:#72a58a4d}.meal-slot-select:focus{outline:none;border-color:#d1483e8c;box-shadow:var(--focus-ring)}.meal-slot-selected{min-height:1.1rem;color:var(--ink-500);font-size:.76rem;line-height:1.45}.meal-slot-selected-active{color:var(--sage-700)}@keyframes plannerSurfaceRise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:980px){.meal-planner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.meal-planner-header{grid-template-columns:minmax(0,1fr)}.meal-planner-clear{width:100%}.meal-planner-grid{grid-template-columns:1fr}.meal-day-card{padding:.92rem}}body[data-theme=dark] .meal-planner{border-color:#a4b4c82e;background:linear-gradient(180deg,#121c28f2,#0d151ffa);box-shadow:0 22px 38px #00000047}body[data-theme=dark] .meal-planner:before{background:radial-gradient(circle,rgba(229,92,77,.16),transparent 72%)}body[data-theme=dark] .meal-planner-kicker,body[data-theme=dark] .meal-day-card-kicker,body[data-theme=dark] .meal-slot-head small{color:#9fb0c4}body[data-theme=dark] .meal-planner-header h2{color:#f4f7fb}body[data-theme=dark] .meal-planner-description{color:#c3d0dd}body[data-theme=dark] .meal-planner-meta-pill,body[data-theme=dark] .meal-planner-status-pill,body[data-theme=dark] .meal-day-card-count{border-color:#a4b4c833;background:#151f2ce0;color:#c8d5e2;box-shadow:inset 0 1px #ffffff0a}body[data-theme=dark] .meal-planner-status-pill-active,body[data-theme=dark] .meal-day-card-count-active{border-color:#72a58a52;background:#1e3a2de0;color:#d8efe2}body[data-theme=dark] .meal-planner-clear:disabled,body[data-theme=dark] .meal-planner-clear:disabled:hover{border-color:#a4b4c82e;background:#151f2cb8}body[data-theme=dark] .meal-planner-empty-state,body[data-theme=dark] .meal-day-card,body[data-theme=dark] .meal-slot{border-color:#a4b4c829;background:#141f2be0;box-shadow:inset 0 1px #ffffff0d}body[data-theme=dark] .meal-slot-filled{border-color:#72a58a3d;background:linear-gradient(180deg,#172d24eb,#141f2be6)}body[data-theme=dark] .meal-day-card h3,body[data-theme=dark] .meal-slot span{color:#f1f5f9}body[data-theme=dark] .meal-slot-select{border-color:#a4b4c833;background:#0c131df0;color:#f4f7fb;box-shadow:inset 0 1px #ffffff0a}body[data-theme=dark] .meal-slot-select:hover{border-color:#72a58a57}body[data-theme=dark] .meal-slot-select-wrap i,body[data-theme=dark] .meal-slot-selected{color:#9fb0c4}body[data-theme=dark] .meal-slot-selected-active{color:#d8efe2}.modal{display:none;position:fixed;z-index:1000;inset:0;background-color:#10182080;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow-y:auto;overscroll-behavior:contain;padding:max(12px,env(safe-area-inset-top,0px) + 8px) max(12px,env(safe-area-inset-right,0px) + 12px) max(12px,env(safe-area-inset-bottom,0px) + 12px) max(12px,env(safe-area-inset-left,0px) + 12px)}.modal.show{display:block}.modal-content{position:relative;width:min(100%,640px);max-width:640px;max-height:calc(100dvh - max(24px,env(safe-area-inset-top,0px) + 12px) - max(24px,env(safe-area-inset-bottom,0px) + 12px));margin:0 auto;overflow-y:auto;overflow-x:hidden;padding:var(--space-5) var(--space-5) var(--space-4);border-radius:var(--radius-xl);border:1px solid rgba(90,105,122,.18);background:var(--surface-overlay);box-shadow:var(--shadow-lift);scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:rgba(114,165,138,.55) rgba(255,255,255,.55);clip-path:inset(0 round var(--radius-xl))}.modal-shell{position:relative;display:grid;gap:var(--space-4)}.modal-header-block{display:grid;gap:.65rem;padding-right:3.2rem}.modal-header-copy{display:grid;gap:.38rem}.modal-header-copy h2{margin:0;font-size:var(--font-size-title);line-height:1.1;letter-spacing:.01em}.modal-subtitle,.profile-modal-subtitle,.share-modal-subtitle,.import-preview-subtitle{margin:0;color:var(--ink-700);font-size:.95rem;line-height:1.55;max-width:60ch}.modal-helper-note,.share-helper-note{margin:0;display:block;width:fit-content;max-width:100%;padding:.55rem .78rem;border-radius:14px;border:1px solid rgba(90,105,122,.14);background:#ffffffbd;color:var(--ink-600);font-size:.8rem;line-height:1.45;box-shadow:inset 0 1px #ffffffc7}.modal-content::-webkit-scrollbar{width:10px}.modal-content::-webkit-scrollbar-track{background:#ffffff8c;border-radius:var(--radius-pill);margin-block:12px}.modal-content::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#72a58ab8,#72a58a80);border-radius:var(--radius-pill);border:2px solid rgba(255,255,255,.75)}.modal-content::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#72a58adb,#72a58a9e)}.close,.modal-close-button{position:absolute;right:var(--space-4);top:var(--space-4);width:40px;height:40px;border-radius:999px;border:1px solid rgba(90,105,122,.16);background:#ffffffdb;display:inline-flex;align-items:center;justify-content:center;color:var(--ink-700);font-size:1.2rem;cursor:pointer;box-shadow:0 10px 22px #1f293324;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition),background-color var(--transition),color var(--transition);z-index:2}.modal-close-button{padding:0}.modal-close-button i{font-size:.9rem}.close:hover,.modal-close-button:hover{transform:translateY(-1px);color:var(--ink-900);border-color:#d1483e38;background-color:#fffffff5;box-shadow:var(--shadow-interactive)}.modal-close-button:focus-visible{outline:none;box-shadow:var(--focus-ring),0 10px 22px #1f293324}.modal-content h2{margin-bottom:.95rem;font-size:1.4rem}.modal-loading-shell{max-width:440px}.modal-loading-card{display:grid;justify-items:center;gap:.82rem;text-align:center;padding:1.3rem 1.15rem}.modal-loading-icon{width:68px;height:68px;border-radius:22px;display:grid;place-items:center;background:linear-gradient(180deg,#e55c4d1f,#f4be661f);color:var(--tomato-600);box-shadow:inset 0 1px #fffc,0 12px 22px #d1483e1f}.modal-loading-icon i{font-size:1.5rem}.modal-loading-copy-block{display:grid;gap:.34rem}.modal-loading-kicker,.app-error-badge span{font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.modal-loading-kicker{margin:0;color:var(--ink-500)}.modal-loading-copy-block h2{margin:0;font-size:1.25rem;color:var(--ink-900)}.modal-loading-copy{margin:0;color:var(--ink-700);font-size:.96rem;line-height:1.55;text-align:center}.modal-error-content{display:grid;place-items:center}.app-error-shell{min-height:100vh;display:grid;place-items:center;padding:1.5rem;background:linear-gradient(180deg,#f6efe6eb,#fffffffa)}.app-error-card{width:min(520px,100%);display:grid;justify-items:center;gap:.95rem;text-align:center;border-radius:28px;border:1px solid rgba(90,105,122,.16);background:#fffffff0;box-shadow:0 24px 56px #10182029;padding:1.55rem 1.3rem}.app-error-card-modal{width:min(420px,100%)}.app-error-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.44rem .76rem;border-radius:999px;background:#fff4f1eb;border:1px solid rgba(199,77,63,.18);color:#8f3b30}.app-error-badge i{font-size:.92rem}.app-error-copy{display:grid;gap:.46rem}.app-error-logo{width:72px;height:72px;object-fit:contain}.app-error-card h1,.app-error-card h2{color:var(--ink-900)}.app-error-card p{margin:0;color:var(--ink-600);line-height:1.55}.app-error-reassurance,.app-error-technical{width:min(100%,420px);border-radius:18px;border:1px solid rgba(90,105,122,.12);background:linear-gradient(180deg,#fffc,#f8f4eeeb);padding:.82rem .9rem}.app-error-reassurance{display:grid;gap:.3rem;text-align:left}.app-error-reassurance strong{color:var(--ink-900);font-size:.84rem}.app-error-steps{width:min(100%,420px);margin:0;padding-left:1.1rem;display:grid;gap:.4rem;text-align:left;color:var(--ink-700);line-height:1.55}.app-error-technical{color:var(--ink-500);font-size:.82rem;line-height:1.5}.app-error-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.55rem}body[data-theme=dark] .app-error-shell{background:linear-gradient(180deg,#0b131df5,#121c28fa)}body[data-theme=dark] .modal-error-content{background:transparent}body[data-theme=dark] .app-error-card{border-color:#a4b4c838;background:#151f2cf0;box-shadow:0 28px 60px #00000057}body[data-theme=dark] .modal-loading-icon{background:linear-gradient(180deg,#7c2d2a3d,#5335123d);color:#ffb1a6;box-shadow:inset 0 1px #ffffff14,0 12px 24px #0000003d}body[data-theme=dark] .modal-loading-kicker{color:#9fb2c5}body[data-theme=dark] .modal-loading-copy-block h2,body[data-theme=dark] .app-error-card h1,body[data-theme=dark] .app-error-card h2{color:#f4f7fb}body[data-theme=dark] .app-error-card p{color:#b9c7d8}body[data-theme=dark] .app-error-card i{color:#ff8e7d}body[data-theme=dark] .app-error-badge{background:#491f1b75;border-color:#ff8e7d2e;color:#ffc2b9}body[data-theme=dark] .app-error-reassurance,body[data-theme=dark] .app-error-technical{border-color:#a4b4c82e;background:linear-gradient(180deg,#182432e6,#131f2cf0)}body[data-theme=dark] .app-error-reassurance strong{color:#eef4fb}body[data-theme=dark] .app-error-steps{color:#c7d2df}body[data-theme=dark] .app-error-technical{color:#9fb2c5}.add-recipe-modal{max-width:700px}.extract-preview-card-empty{min-height:112px;place-content:center}.add-recipe-subtitle{margin:-.25rem 0 .95rem;color:var(--ink-700);font-size:.92rem;line-height:1.5}.add-recipe-form{display:grid;gap:.8rem}.add-recipe-panel{border:1px solid rgba(90,105,122,.16);border-radius:18px;background:#ffffffd1;padding:.9rem .95rem;box-shadow:inset 0 1px #ffffffb8}.add-recipe-source-panel{background:linear-gradient(180deg,#fffaf6f5,#ffffffd6)}.add-recipe-panel-header{display:grid;gap:.2rem;margin-bottom:.75rem}.add-recipe-panel-header h3{font-size:.98rem;color:var(--ink-900)}.add-recipe-panel-header p{margin:0;color:var(--ink-500);font-size:.84rem;line-height:1.45}.recipe-type-toggle>label{margin-bottom:.45rem}.extract-actions{display:grid;gap:.55rem}.extract-actions .btn{min-height:46px}.extract-notice{margin:0;color:var(--ink-500);font-size:.82rem;line-height:1.45}.extract-review-banner{display:grid;gap:.6rem;border-radius:16px;border:1px solid rgba(90,105,122,.16);background:#ffffffdb;padding:.8rem .88rem}.extract-review-banner-text{display:grid;gap:.18rem}.extract-review-banner-text strong{color:var(--ink-900);font-size:.92rem}.extract-review-banner-text p{margin:0;color:var(--ink-500);font-size:.82rem;line-height:1.45}.extract-review-banner-stats{display:flex;flex-wrap:wrap;gap:.42rem}.extract-review-banner-stats span{border-radius:var(--radius-pill);padding:.24rem .52rem;font-size:.75rem;font-weight:650;background:#72a58a1f;border:1px solid rgba(114,165,138,.18);color:var(--ink-700)}.extract-review-banner-review{border-color:#e4b44d47;background:#fff8e5db}.extract-review-banner-strong{border-color:#72a58a3d;background:#f1fbf5e0}.extract-preview-card{display:grid;gap:.75rem}.extract-preview-panel-header{margin-bottom:0}.extract-preview-shell{display:grid;gap:.7rem}.extract-preview-header{display:flex;flex-wrap:wrap;gap:.4rem .7rem;align-items:baseline}.extract-preview-header strong{font-size:1rem;color:var(--ink-900)}.extract-meta{color:var(--ink-500);font-size:.78rem}.extract-preview-stats span{border-radius:var(--radius-pill);padding:.28rem .55rem;font-size:.76rem;font-weight:650;color:var(--ink-700);background:#72a58a1f;border:1px solid rgba(114,165,138,.18)}.extract-warning-box{display:grid;gap:.4rem;border-radius:14px;border:1px solid rgba(228,180,77,.34);background:#fff7e0bf;padding:.7rem .8rem}.extract-warning-box p{margin:0;color:#7b5b13;font-size:.82rem;line-height:1.45}.extract-image-preview{border-radius:16px;overflow:hidden;border:1px solid rgba(90,105,122,.16);background:#ffffffe6}.extract-image-preview img{width:100%;max-height:220px;object-fit:cover;display:block}.card-scan-preview-card{display:grid;gap:.7rem;margin-top:.6rem;border-radius:16px;border:1px solid rgba(90,105,122,.16);background:#ffffffe0;padding:.72rem}.card-scan-preview-image-wrap{border-radius:14px;overflow:hidden;border:1px solid rgba(90,105,122,.14)}.card-scan-preview-image{display:block;width:100%;max-height:180px;object-fit:cover}.card-scan-preview-meta{display:grid;gap:.55rem}.card-scan-prep-note{margin:0;color:var(--ink-500);font-size:.79rem;line-height:1.45}.card-scan-preview-file-state{display:flex;align-items:center;gap:.55rem;border-radius:14px;border:1px dashed rgba(90,105,122,.24);background:#fff8f5db;padding:.72rem .78rem;color:var(--ink-700);font-size:.82rem;line-height:1.45}.card-scan-preview-file-state i{color:#c44a3c;font-size:1rem}.card-scan-tips-grid{display:flex;flex-wrap:wrap;gap:.4rem}.card-scan-tips-grid span{display:inline-flex;align-items:center;gap:.35rem;border-radius:var(--radius-pill);padding:.24rem .52rem;font-size:.75rem;color:var(--ink-700);background:#5a697a14;border:1px solid rgba(90,105,122,.12)}.extract-preview-actions,.add-recipe-submit-row{display:flex;justify-content:flex-end;gap:.55rem}.add-recipe-submit-row{margin-top:.1rem}.recipe-image-editor{display:grid;gap:.6rem}.import-preview-modal,.export-preview-modal{max-width:760px}.welcome-modal{max-width:620px}.welcome-modal-subtitle{margin:0 0 .9rem;color:var(--ink-700);font-size:.96rem}.welcome-modal-list{margin:0 0 1rem;padding-left:1.15rem;display:grid;gap:.55rem;color:var(--ink-900)}.welcome-modal-actions{display:flex;justify-content:flex-end}.transfer-preview-hero,.transfer-preview-toolbar,.transfer-preview-review-card{border:1px solid rgba(90,105,122,.12);border-radius:22px;background:linear-gradient(180deg,#ffffffe0,#f8f4eef0);box-shadow:inset 0 1px #fffc}.transfer-preview-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,.9fr);gap:.9rem;padding:1rem}.transfer-preview-hero-copy,.transfer-preview-toolbar-copy,.transfer-preview-review-copy,.transfer-preview-heading-group{display:grid;gap:.38rem}.transfer-preview-kicker,.transfer-preview-toolbar-kicker{margin:0;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-500)}.transfer-preview-heading-group h3,.transfer-preview-toolbar-copy h3,.transfer-preview-review-copy h3{margin:0;color:var(--ink-900);font-size:1.12rem;line-height:1.2}.transfer-preview-heading-group p,.transfer-preview-toolbar-copy p,.transfer-preview-review-copy p,.transfer-preview-footer-copy p{margin:0;color:var(--ink-700);line-height:1.55}.transfer-preview-meta,.transfer-preview-signal-meta{display:flex;flex-wrap:wrap;gap:.5rem}.transfer-preview-meta-pill,.transfer-preview-signal-meta span,.transfer-preview-review-count,.transfer-preview-state-pill{display:inline-flex;align-items:center;min-height:32px;padding:.32rem .68rem;border-radius:999px;font-size:.76rem;font-weight:700;line-height:1.25;border:1px solid rgba(90,105,122,.16);background:#ffffffbd;box-shadow:inset 0 1px #ffffffc7}.transfer-preview-meta-pill{color:var(--ink-700)}.transfer-preview-signal{display:grid;align-content:start;gap:.5rem;padding:.9rem;border-radius:20px;border:1px solid rgba(90,105,122,.14);background:#ffffffbd}.transfer-preview-signal-label{color:var(--ink-500);font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.transfer-preview-signal strong{color:var(--ink-900);font-size:1rem;line-height:1.25}.transfer-preview-signal p{margin:0;color:var(--ink-700);line-height:1.55}.transfer-preview-signal-ready{background:linear-gradient(180deg,#f4fbf6f5,#ebf7f0eb);border-color:#72a58a3d}.transfer-preview-signal-partial{background:linear-gradient(180deg,#fffaf2fa,#faf2e6f0);border-color:#f4be6642}.transfer-preview-signal-review,.transfer-preview-signal-idle{background:linear-gradient(180deg,#fff7f5fa,#fbefecf0);border-color:#d1483e2e}.transfer-preview-toolbar,.transfer-preview-review-card{display:grid;gap:.8rem;padding:.95rem 1rem}.transfer-preview-toolbar{grid-template-columns:minmax(0,1fr) auto;align-items:center}.import-preview-actions{display:flex;flex-wrap:wrap;gap:.5rem}.transfer-preview-review-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.8rem}.transfer-preview-review-count{color:var(--sage-700);background:linear-gradient(180deg,#f4fbf6f5,#ebf7f0eb);border-color:#72a58a3d}.import-preview-list,.export-preview-list{display:grid;gap:.7rem;max-height:46vh;overflow-y:auto;padding-right:2px}.import-preview-item,.export-preview-item{display:grid;gap:.72rem;padding:.92rem .94rem;border-radius:18px;border:1px solid rgba(90,105,122,.18);background:#ffffffeb;box-shadow:inset 0 1px #ffffffc7}.import-preview-item-selected,.export-preview-item-selected{border-color:#72a58a4d;box-shadow:inset 0 1px #ffffffc7,0 10px 22px #72a58a14}.transfer-preview-item-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.55rem}.import-preview-check{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;color:var(--ink-700)}.import-preview-check input{width:16px;height:16px;accent-color:var(--tomato-600)}.import-preview-content,.export-preview-content{display:grid;gap:.34rem}.import-preview-content h3,.export-preview-content h3{font-size:1rem;margin:0}.import-preview-content p,.export-preview-content p,.transfer-preview-source-note{font-size:.83rem;color:var(--ink-500);margin:0;line-height:1.5}.import-preview-content a,.export-preview-content a{display:inline-block;font-size:.82rem;color:#356892;text-decoration:none;word-break:break-all}.import-preview-content a:hover,.export-preview-content a:hover{text-decoration:underline}.import-preview-categories{display:flex;flex-wrap:wrap;gap:.35rem}.import-preview-categories span{display:inline-flex;align-items:center;min-height:28px;border-radius:var(--radius-pill);padding:.22rem .56rem;font-size:.72rem;font-weight:700;color:var(--gold-700);background:linear-gradient(180deg,#fff8e5f5,#fff3d6e6);border:1px solid rgba(244,190,102,.34);box-shadow:inset 0 1px #ffffffc7}.import-preview-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem}.transfer-preview-footer-copy{display:grid;gap:.18rem;max-width:42ch}.transfer-preview-footer-actions,.transfer-preview-item-actions{display:flex;flex-wrap:wrap;gap:.55rem}.transfer-preview-footer-actions{justify-content:flex-end}.transfer-preview-state-pill-selected{color:var(--sage-700);background:linear-gradient(180deg,#f4fbf6f5,#ebf7f0eb);border-color:#72a58a3d}.transfer-preview-state-pill-muted{color:var(--ink-600);background:#f4ede5f5}.export-preview-content h3{display:inline-flex;align-items:center;gap:.4rem}.export-preview-content h3 i{color:#e4b44d;font-size:.8rem}@media(max-width:760px){.transfer-preview-hero,.transfer-preview-toolbar{grid-template-columns:1fr}.transfer-preview-hero,.transfer-preview-toolbar,.transfer-preview-review-card{padding:.92rem}.import-preview-footer{align-items:stretch}.transfer-preview-footer-actions,.transfer-preview-item-actions{width:100%;justify-content:stretch}.transfer-preview-footer-actions .btn,.transfer-preview-item-actions .btn,.import-preview-actions .btn{flex:1 1 160px}}.shopping-list-modal{width:min(100%,900px);max-width:900px}.import-preview-modal,.export-preview-modal{width:min(100%,760px);max-width:760px}.shopping-list-count{font-size:.8rem;color:var(--ink-700);font-weight:650;margin-left:auto}.shopping-unit-toggle{display:inline-flex;gap:.5rem;margin-bottom:.7rem}.shopping-list-layout{display:grid;grid-template-columns:minmax(250px,1fr) minmax(300px,1.2fr);gap:.8rem}.shopping-list-recipes,.shopping-list-ingredients{border:1px solid var(--border-soft);border-radius:16px;background:#ffffffdb;padding:.82rem;box-shadow:inset 0 1px #ffffffc7}.shopping-list-recipes h3,.shopping-list-ingredients h3{font-size:.95rem;margin-bottom:.5rem}.shopping-list-recipe-items,.shopping-list-ingredient-items{display:grid;gap:.45rem;max-height:45vh;overflow-y:auto;overflow-x:hidden;padding-right:2px}.shopping-list-subtitle{font-size:.9rem;margin:.7rem 0 .45rem}.shopping-merge-legend{display:grid;gap:.2rem;margin-bottom:.45rem;font-size:.76rem;color:var(--ink-700)}.share-modal{width:min(100%,560px);max-width:520px}.share-modal-overlay{z-index:1301;overscroll-behavior:none}.profile-modal-overlay{z-index:1302}.profile-modal{width:min(100%,600px);max-width:560px}.profile-modal-subtitle{margin:0}.profile-modal-shell{gap:.9rem}.profile-top-rail{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(220px,.95fr);gap:.78rem;align-items:stretch}.profile-state-card,.profile-theme-card,.profile-form-card{position:relative;display:grid;gap:.78rem;padding:1rem 1.05rem;border-radius:22px;border:1px solid rgba(90,105,122,.14);background:linear-gradient(180deg,#ffffffdb,#f8f4eef0);box-shadow:inset 0 1px #ffffffd1;overflow:hidden}.profile-state-card:before,.profile-form-card-emphasis:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:3px;opacity:.9}.profile-state-card-signed-out:before,.profile-modal-shell-signed-out .profile-form-card-emphasis:before{background:linear-gradient(90deg,var(--tomato-500),var(--gold-400),var(--sage-500))}.profile-state-card-signed-in:before,.profile-modal-shell-signed-in .profile-form-card-emphasis:before{background:linear-gradient(90deg,var(--sage-600),var(--sage-500),var(--gold-400))}.profile-state-card-reset:before,.profile-modal-shell-reset .profile-form-card-emphasis:before{background:linear-gradient(90deg,var(--blue-600),#5f86be,var(--sage-500))}.profile-state-card-signed-out{background:linear-gradient(180deg,color-mix(in srgb,var(--tomato-500) 8%,white),#f8f4eef5)}.profile-state-card-signed-in{background:linear-gradient(180deg,color-mix(in srgb,var(--sage-500) 14%,white),#f8f4eef5)}.profile-state-card-reset{background:linear-gradient(180deg,color-mix(in srgb,var(--blue-600) 12%,white),#f4f7fcf5)}.profile-form,.profile-auth-form{display:grid;gap:.8rem}.profile-state-copy,.profile-theme-copy,.profile-card-heading,.profile-account-copy{display:grid;gap:.32rem;min-width:0}.profile-card-heading-tight{gap:.28rem}.profile-section-kicker,.profile-readonly-label{display:inline-flex;align-items:center;gap:.35rem;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-500)}.profile-state-copy strong,.profile-theme-copy strong,.profile-card-heading strong,.profile-account-copy strong{font-size:1.04rem;line-height:1.2;color:var(--ink-900)}.profile-state-copy p,.profile-theme-copy p,.profile-card-heading p,.profile-account-copy p,.profile-avatar-caption{margin:0;color:var(--ink-700);font-size:.86rem;line-height:1.55}.profile-avatar-crop-panel{width:min(100%,280px);display:grid;gap:.72rem;padding:.9rem .92rem;border-radius:18px;border:1px solid rgba(90,105,122,.14);background:linear-gradient(180deg,#fffffff0,#f6f0e7eb);box-shadow:inset 0 1px #ffffffb8}.profile-avatar-crop-copy{display:grid;gap:.26rem;text-align:left}.profile-avatar-crop-copy strong{color:var(--ink-900);font-size:.94rem;line-height:1.3}.profile-avatar-crop-copy p,.profile-avatar-crop-note{margin:0;color:var(--ink-600);font-size:.78rem;line-height:1.5}.profile-avatar-crop-stage{position:relative;width:240px;height:240px;justify-self:center;overflow:hidden;border-radius:24px;background:radial-gradient(circle at top,#ffffffeb,#e7dfd4f5);border:1px solid rgba(90,105,122,.16);box-shadow:inset 0 1px #ffffffb3;touch-action:none;cursor:grab}.profile-avatar-crop-stage:active{cursor:grabbing}.profile-avatar-crop-image{position:absolute;top:0;left:0;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;will-change:transform}.profile-avatar-crop-mask{position:absolute;inset:0;border-radius:24px;pointer-events:none;box-shadow:inset 0 0 0 999px #131c2529}.profile-avatar-crop-mask:after{content:"";position:absolute;inset:14px;border-radius:50%;border:2px solid rgba(255,255,255,.96);box-shadow:0 0 0 999px #131c2538}.profile-avatar-crop-slider{display:grid;gap:.38rem;text-align:left;color:var(--ink-700);font-size:.8rem;font-weight:700}.profile-avatar-crop-slider input{width:100%;accent-color:var(--tomato-600)}.profile-avatar-crop-actions{display:flex;flex-wrap:wrap;gap:.5rem}.profile-avatar-crop-actions .btn{flex:1 1 0}.profile-state-chips{display:flex;flex-wrap:wrap;gap:.45rem}.profile-state-chips-inline{margin-top:.08rem}.profile-inline-chip{display:inline-flex;align-items:center;gap:.38rem;min-height:34px;padding:.36rem .68rem;border-radius:999px;border:1px solid rgba(90,105,122,.14);background:#ffffffb8;color:var(--ink-700);font-size:.77rem;font-weight:700;line-height:1.25;box-shadow:inset 0 1px #ffffffbd}.profile-inline-chip-success{border-color:#72a58a42;background:#e2f1e9eb;color:var(--sage-700)}.profile-inline-chip-reset{border-color:#3f79a83d;background:#e2edfaeb;color:#2f5f87}.profile-theme-card{align-content:space-between}.profile-theme-row{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.7rem;margin:0;padding-top:.78rem;border-top:1px solid rgba(90,105,122,.12)}.profile-theme-label{font-size:.78rem;font-weight:800;color:var(--ink-700)}.profile-auth-fields,.profile-field-grid{display:grid;gap:.75rem}.profile-field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-auth-field,.profile-field-grid-item{margin-bottom:0}.profile-auth-mode-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.profile-auth-mode-button{min-height:66px;flex-direction:column;align-items:flex-start;justify-content:center;padding:.82rem .92rem;border-radius:18px;text-align:left;white-space:normal}.profile-auth-mode-button span{font-size:.92rem;font-weight:700}.profile-auth-mode-button small{font-size:.76rem;font-weight:600;opacity:.82}.profile-account-summary{display:grid;grid-template-columns:minmax(0,126px) minmax(0,1fr);gap:1rem;align-items:center}.profile-avatar-stack{display:grid;justify-items:center;gap:.7rem}.profile-avatar-row{position:relative;width:108px;height:108px;padding:4px;border:1px solid rgba(90,105,122,.2);border-radius:50%;background:linear-gradient(180deg,#ffffffeb,#f2ece4f5);overflow:visible;justify-self:center;box-shadow:0 12px 26px #3743511f}.profile-avatar-preview{width:100%;height:100%;display:block;border-radius:50%;border:none;object-fit:cover;background:#fff}.profile-avatar-edit-btn{position:absolute;left:50%;bottom:-12px;transform:translate(-50%);min-width:84px;height:36px;padding:0 .72rem;border-radius:999px;border:1px solid rgba(90,105,122,.3);background:#fffffff5;color:var(--ink-700);display:inline-flex;align-items:center;justify-content:center;gap:.35rem;cursor:pointer;z-index:1;font-size:.76rem;font-weight:700;box-shadow:0 10px 20px #161d262e;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition),background-color var(--transition)}.profile-avatar-edit-btn:hover{transform:translate(-50%) translateY(-1px);border-color:#72a58a80;box-shadow:var(--shadow-interactive)}.profile-avatar-edit-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.profile-avatar-edit-btn:active{transform:translate(-50%)}.profile-avatar-input{display:none}.profile-avatar-actions-menu{position:absolute;top:calc(100% + 1rem);left:50%;right:auto;transform:translate(-50%);display:grid;gap:.4rem;min-width:176px;padding:.5rem;border-radius:18px;border:1px solid rgba(90,105,122,.24);background:var(--surface-elevated);box-shadow:0 10px 26px #1a212b2e;z-index:4}.profile-avatar-actions-menu-inline{position:static;top:auto;left:auto;right:auto;transform:none;width:min(220px,calc(100vw - 4rem));min-width:0;justify-self:center;margin-top:.5rem;margin-bottom:.15rem}.profile-avatar-actions-menu .btn{width:100%;min-height:40px;justify-content:flex-start}.profile-readonly-row{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem .8rem;min-height:46px;padding:.68rem .82rem;border-radius:16px;border:1px solid rgba(90,105,122,.14);background:#ffffffad}.profile-readonly-row strong{font-size:.88rem;line-height:1.35;color:var(--ink-900);word-break:break-word}.profile-form-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.55rem}.profile-auth-actions{justify-content:space-between;align-items:center}@media(max-width:700px){.profile-top-rail,.profile-account-summary,.profile-field-grid,.profile-auth-mode-toggle{grid-template-columns:minmax(0,1fr)}.profile-theme-row{grid-template-columns:minmax(0,1fr);justify-items:start}.profile-form-actions,.profile-auth-actions{justify-content:stretch}.profile-form-actions .btn,.profile-auth-actions .btn{flex:1 1 100%;width:100%}.profile-avatar-crop-panel,.profile-avatar-crop-stage{width:min(100%,240px)}.profile-avatar-crop-actions{width:100%}}.card-scan-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.card-scan-action-row{display:grid;grid-template-columns:minmax(0,1fr);gap:.6rem;margin-bottom:.65rem}.card-scan-action-row .btn{min-height:46px}.card-scan-helper{margin:.42rem 0 0;font-size:.8rem;color:var(--ink-500)}.card-scan-file-chip{display:inline-flex;align-items:center;gap:.42rem;margin-top:.55rem;padding:.34rem .62rem;border-radius:var(--radius-pill);border:1px solid rgba(90,105,122,.2);background:#ffffffd6;color:var(--ink-700);font-size:.8rem;font-weight:600}.share-modal-subtitle{margin:0}.share-helper-note{margin-top:-.1rem}.share-form{display:grid;gap:.7rem}.modal-section{border:1px solid rgba(90,105,122,.16);border-radius:18px;background:linear-gradient(180deg,#ffffffd6,#f8f4eeeb);padding:.8rem .88rem;box-shadow:inset 0 1px #ffffffd1}.modal-section summary{cursor:pointer;display:flex;align-items:center;min-height:44px;font-size:.92rem;font-weight:800;color:var(--ink-900)}.modal-section summary:focus-visible,.shopping-panel summary:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:14px}.modal-section[open] summary{margin-bottom:.8rem}.modal-section+.modal-section{margin-top:.75rem}.modal-section-danger{border-color:#bc304338;background:linear-gradient(180deg,#fff7f8eb,#fff0f2e6)}.share-edit-toggle{display:inline-flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--ink-700)}.share-form-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.55rem}.group-danger-zone{margin-top:.95rem;padding-top:.35rem}.share-lookup-row{display:flex;gap:.45rem}.share-lookup-row input{flex:1 1 auto;min-width:0}.share-lookup-row select{width:auto;flex:0 0 120px}.share-lookup-row .btn{flex:0 0 auto}.share-results{display:grid;gap:.45rem}.share-result-item{display:flex;align-items:center;justify-content:space-between;gap:.55rem;border:1px solid rgba(90,105,122,.18);border-radius:16px;background:#ffffffeb;padding:.58rem .68rem;box-shadow:inset 0 1px #fffc}.share-result-item strong{display:block;font-size:.85rem;color:var(--ink-900)}.share-result-item small{display:block;font-size:.75rem;color:var(--ink-500)}.share-existing{display:grid;gap:.45rem}.share-existing h3{margin:.2rem 0 0;font-size:.88rem;color:var(--ink-900)}.share-empty{margin:0;font-size:.82rem;color:var(--ink-500)}.share-existing-list{display:grid;gap:.45rem}.share-existing-item{display:flex;align-items:center;justify-content:space-between;gap:.55rem;border:1px solid rgba(90,105,122,.18);border-radius:16px;background:#ffffffe0;padding:.58rem .68rem;box-shadow:inset 0 1px #fffc}.share-existing-item strong{display:block;font-size:.85rem;color:var(--ink-900)}.share-existing-item small{display:block;font-size:.75rem;color:var(--ink-500)}.share-existing-actions{display:inline-flex;align-items:center;gap:.4rem}.group-activity-list{display:grid;gap:.55rem}.group-activity-items{display:grid;gap:.5rem}.group-activity-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:.6rem;border:1px solid rgba(90,105,122,.18);border-radius:16px;background:#ffffffe6;padding:.72rem .78rem;box-shadow:inset 0 1px #ffffffc7}.group-activity-identity{position:relative;width:42px;height:42px}.group-activity-type-badge{position:absolute;right:-2px;bottom:-2px;width:22px;height:22px;border-radius:var(--radius-pill);display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#f4fbf6f5,#ebf7f0eb);border:1px solid rgba(114,165,138,.22);color:var(--sage-600);font-size:.62rem;box-shadow:0 6px 12px #1f29331f}.group-activity-content{display:grid;gap:.16rem;min-width:0}.group-activity-content strong{font-size:.84rem;color:var(--ink-900);line-height:1.4}.group-activity-content small{font-size:.75rem;color:var(--ink-500);line-height:1.4}.group-activity-time{font-size:.74rem;color:var(--ink-500);white-space:nowrap;margin-top:.08rem}.shopping-list-recipe-item,.shopping-list-ingredient-item{display:flex;align-items:flex-start;gap:.68rem;border:1px solid rgba(90,105,122,.16);border-radius:18px;background:linear-gradient(180deg,#fffffff5,#f8f4eeeb);padding:.72rem .8rem;box-shadow:inset 0 1px #fffc}.shopping-list-recipe-item input,.shopping-list-ingredient-item input{width:16px;height:16px;margin-top:3px;accent-color:var(--tomato-600)}.shopping-list-recipe-item span,.shopping-list-ingredient-item span{font-size:.87rem;color:var(--ink-900)}.shopping-list-recipe-item span,.shopping-list-ingredient-item span,.shopping-suggestion-copy,.shopping-history-copy{min-width:0}.shopping-list-recipe-item span,.shopping-list-ingredient-item span{display:grid;gap:.18rem}.shopping-list-recipe-item small{display:block;font-size:.75rem;color:var(--ink-500)}.shopping-list-item-checked{text-decoration:line-through;color:var(--ink-500)}.shopping-list-pantry-item{background:linear-gradient(180deg,#f7fbf8fa,#eef7f1f0);border-color:#72a58a38}.shopping-pantry-flag{display:inline-flex;align-items:center;width:fit-content;min-height:24px;padding:.14rem .5rem;border-radius:var(--radius-pill);background:linear-gradient(180deg,#f4fbf6f5,#ebf7f0eb);border:1px solid rgba(114,165,138,.22);color:var(--sage-600);font-size:.7rem;font-weight:700;box-shadow:inset 0 1px #ffffffc7}.shopping-list-empty{font-size:.86rem;color:var(--ink-700)}.shopping-builder-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.92fr);gap:.95rem;padding:clamp(.95rem,2vw,1.1rem);border-radius:24px;border:1px solid rgba(90,105,122,.14);background:linear-gradient(180deg,#fffbf7fa,#f6efe6f5);box-shadow:0 16px 28px #4654651a;overflow:hidden}.shopping-builder-hero:before{content:"";position:absolute;inset:-38% -10% auto auto;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(229,92,77,.14),transparent 72%);pointer-events:none}.shopping-builder-hero-copy,.shopping-builder-hero-heading,.shopping-toolbar-heading,.shopping-review-banner-copy,.shopping-review-card-copy{display:grid}.shopping-builder-hero-copy{position:relative;z-index:1;gap:.74rem}.shopping-builder-kicker,.shopping-toolbar-kicker,.shopping-export-signal-label,.shopping-review-banner-kicker,.shopping-review-card-kicker{margin:0;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.shopping-builder-kicker,.shopping-toolbar-kicker,.shopping-review-card-kicker{color:var(--ink-500)}.shopping-builder-hero-heading{gap:.38rem}.shopping-builder-hero-heading h3{margin:0;font-size:clamp(1.2rem,2vw,1.48rem);line-height:1.08;color:var(--ink-900)}.shopping-builder-hero-heading p,.shopping-toolbar-heading p,.shopping-review-banner-copy p,.shopping-review-card-copy p,.shopping-export-signal p{margin:0;color:var(--ink-600);font-size:.84rem;line-height:1.55}.shopping-list-toolbar,.shopping-builder-controls{display:grid;gap:.8rem}.shopping-list-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.shopping-list-meta-pills,.shopping-export-signal-meta,.shopping-review-banner-stats{display:flex;flex-wrap:wrap;gap:.45rem}.shopping-list-meta-pill,.shopping-export-signal-meta span,.shopping-review-banner-stats span,.shopping-panel-summary-count,.shopping-suggestion-badge{display:inline-flex;align-items:center;min-height:31px;padding:.3rem .7rem;border-radius:var(--radius-pill);border:1px solid rgba(90,105,122,.16);background:linear-gradient(180deg,#fffffff5,#f7f3eeeb);color:var(--ink-700);font-size:.77rem;font-weight:700;line-height:1.2;box-shadow:inset 0 1px #ffffffc7}.shopping-export-signal{position:relative;z-index:1;display:grid;align-content:start;gap:.58rem;padding:.96rem 1rem;border-radius:20px;border:1px solid rgba(90,105,122,.14);background:#ffffffbd;box-shadow:inset 0 1px #fffc}.shopping-export-signal-label{color:var(--ink-500)}.shopping-export-signal strong,.shopping-review-banner-copy strong,.shopping-review-card-copy strong{color:var(--ink-900);font-size:.95rem;line-height:1.35}.shopping-export-signal-idle{background:#ffffffc7}.shopping-export-signal-review{background:linear-gradient(180deg,#fff8ebf5,#fdf3d9eb);border-color:#dfab4642}.shopping-export-signal-ready{background:linear-gradient(180deg,#f4fbf6fa,#e8f5edf0);border-color:#72a58a42}.shopping-export-signal-review .shopping-export-signal-meta span{background:#fffaf0e6;border-color:#dfab4642;color:#8a631a}.shopping-export-signal-ready .shopping-export-signal-meta span{background:#f5fcf7e6;border-color:#72a58a3d;color:var(--sage-700)}.shopping-toolbar-section,.shopping-review-card,.shopping-review-banner{border:1px solid rgba(90,105,122,.12);border-radius:20px;background:linear-gradient(180deg,#ffffffd6,#f8f4eef0);box-shadow:inset 0 1px #fffc}.shopping-toolbar-section{display:grid;gap:.72rem;padding:.92rem .96rem}.shopping-toolbar-section-primary{background:linear-gradient(180deg,#fffbf7fa,#f7efe7f5)}.shopping-toolbar-section-primary .shopping-list-toolbar-actions .btn{flex:1 1 180px}.shopping-toolbar-section-utility .shopping-list-action-row{gap:.5rem;margin-bottom:0}.shopping-list-action-row,.shopping-list-toolbar-actions,.shopping-history-actions,.shopping-section-order-actions,.shopping-section-order-footer,.shopping-manual-actions{display:flex;flex-wrap:wrap;gap:.45rem}.shopping-list-action-row .btn{flex:1 1 140px}.shopping-builder-hint{margin:-.05rem 0 0}.shopping-support-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:.8rem}.shopping-panel{border:1px solid rgba(90,105,122,.16);border-radius:20px;background:linear-gradient(180deg,#ffffffe0,#f8f4eef0);padding:.92rem .98rem;box-shadow:inset 0 1px #ffffffd1}.shopping-panel summary{list-style:none;cursor:pointer;color:var(--ink-900)}.shopping-panel summary::-webkit-details-marker{display:none}.shopping-panel summary::marker{content:""}.shopping-panel-summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.72rem}.shopping-panel-summary-copy{display:grid;gap:.18rem;min-width:0}.shopping-panel-summary-step{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:800;color:#fff;background:linear-gradient(140deg,var(--tomato-600),var(--tomato-500));box-shadow:0 10px 18px #d1483e33}.shopping-panel-summary-title{font-size:.95rem;font-weight:800;line-height:1.2;color:var(--ink-900)}.shopping-panel-summary-copy small{font-size:.76rem;color:var(--ink-500);line-height:1.4}.shopping-panel[open] summary{margin-bottom:.88rem}.shopping-panel-note{margin:-.04rem 0 .62rem;color:var(--ink-500);font-size:.8rem;line-height:1.5}.shopping-list-layout{display:grid;gap:.86rem}.shopping-list-recipes,.shopping-list-ingredients,.shopping-history-list,.shopping-section-order-list,.shopping-suggestion-list,.shopping-group-sections{display:grid}.shopping-list-recipes,.shopping-list-ingredients{gap:.72rem}.shopping-history-list,.shopping-section-order-list,.shopping-suggestion-list,.shopping-list-recipe-items,.shopping-list-ingredient-items{gap:.55rem}.shopping-group-sections{gap:.82rem}.shopping-group-section{display:grid;gap:.48rem}.shopping-group-heading{display:inline-flex;align-items:center;justify-content:flex-start;width:fit-content;min-height:32px;padding:.3rem .68rem;border-radius:var(--radius-pill);background:linear-gradient(180deg,#f4fbf6fa,#ebf7f0f0);border:1px solid rgba(114,165,138,.22);color:var(--sage-600);font-size:.76rem;font-weight:700;letter-spacing:.01em;box-shadow:inset 0 1px #ffffffc7}.shopping-history-item,.shopping-section-order-item,.shopping-suggestion-item{border:1px solid rgba(90,105,122,.16);border-radius:18px;background:#ffffffe0;padding:.72rem .8rem;box-shadow:inset 0 1px #ffffffc7}.shopping-history-item,.shopping-section-order-item{display:flex;align-items:center;justify-content:space-between;gap:.72rem}.shopping-suggestion-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.78rem}.shopping-pantry-entry{background:#f4fbf6eb;border-color:#72a58a3d}.shopping-history-copy{display:grid;gap:.16rem}.shopping-history-copy strong,.shopping-section-order-item strong,.shopping-suggestion-copy strong{font-size:.86rem;color:var(--ink-900);line-height:1.35}.shopping-history-copy small,.shopping-suggestion-copy small,.shopping-manual-item-count{font-size:.75rem;color:var(--ink-500);line-height:1.45}.shopping-suggestion-copy{display:grid;gap:.24rem}.shopping-suggestion-badge{width:fit-content;min-height:25px;background:linear-gradient(180deg,#fff8ebfa,#fdf3d9f0);border-color:#dfab463d;color:#8a631a;padding-inline:.58rem}.shopping-review-banner{display:grid;grid-template-columns:minmax(0,1.35fr) auto;gap:.86rem;padding:.92rem .96rem;margin-bottom:.8rem;background:linear-gradient(180deg,#fff8ebf5,#fdf3d9eb);border-color:#dfab463d}.shopping-review-banner-copy{gap:.24rem}.shopping-review-banner-kicker{color:#8a631a}.shopping-review-banner-stats{align-content:start;justify-content:flex-end}.shopping-review-banner-stats span{background:#fffbf1eb;border-color:#dfab463d;color:#8a631a}.shopping-review-card{display:grid;gap:.72rem;padding:.9rem .94rem}.shopping-review-card+.shopping-review-card{margin-top:.72rem}.shopping-review-card-copy{gap:.22rem}.shopping-manual-tools{display:flex;flex-wrap:wrap;gap:.5rem}.shopping-manual-input{flex:1 1 220px;min-width:210px;min-height:42px;border:1px solid var(--border-soft);border-radius:12px;padding:.58rem .7rem;font-size:.84rem;background:#ffffffeb;color:var(--ink-900)}.shopping-manual-input:focus,.shopping-manual-item-input:focus{outline:none;border-color:#d1483e8c;box-shadow:var(--focus-ring)}.shopping-merge-check{accent-color:var(--sage-500)}.shopping-list-unresolved-item{border-style:dashed;border-color:#dfab4647}.shopping-list-modal .import-preview-actions{align-items:stretch;margin-bottom:0}.shopping-list-manual-item{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:start;gap:.45rem;width:100%}.shopping-manual-item-text,.shopping-manual-item-input{grid-column:2;display:block;width:100%;max-width:none;min-width:0;border:1px solid var(--border-soft);border-radius:10px;background:#ffffffeb;color:var(--ink-900);padding:.58rem .68rem;min-height:2.4rem;font-size:.84rem}.shopping-manual-item-count,.shopping-manual-actions{grid-column:2}.shopping-pantry-btn{margin-left:auto;align-self:center}body[data-theme=dark] .shopping-builder-hero{background:linear-gradient(180deg,#121c27f5,#0e1620fa);border-color:#a4b4c829;box-shadow:0 18px 30px #0000003d}body[data-theme=dark] .shopping-builder-hero:before{background:radial-gradient(circle,rgba(229,92,77,.2),transparent 72%)}body[data-theme=dark] .shopping-builder-kicker,body[data-theme=dark] .shopping-toolbar-kicker,body[data-theme=dark] .shopping-export-signal-label,body[data-theme=dark] .shopping-review-card-kicker{color:#9fb2c5}body[data-theme=dark] .shopping-builder-hero-heading h3,body[data-theme=dark] .shopping-export-signal strong,body[data-theme=dark] .shopping-review-banner-copy strong,body[data-theme=dark] .shopping-review-card-copy strong,body[data-theme=dark] .shopping-history-copy strong,body[data-theme=dark] .shopping-section-order-item strong,body[data-theme=dark] .shopping-suggestion-copy strong,body[data-theme=dark] .shopping-panel-summary-title{color:#eef4fb}body[data-theme=dark] .shopping-builder-hero-heading p,body[data-theme=dark] .shopping-toolbar-heading p,body[data-theme=dark] .shopping-export-signal p,body[data-theme=dark] .shopping-history-copy small,body[data-theme=dark] .shopping-suggestion-copy small,body[data-theme=dark] .shopping-review-card-copy p,body[data-theme=dark] .shopping-manual-item-count,body[data-theme=dark] .shopping-panel-summary-copy small,body[data-theme=dark] .shopping-panel-note{color:#9fb2c5}body[data-theme=dark] .shopping-toolbar-section,body[data-theme=dark] .shopping-review-card,body[data-theme=dark] .shopping-review-banner,body[data-theme=dark] .shopping-export-signal,body[data-theme=dark] .shopping-panel,body[data-theme=dark] .shopping-list-recipe-item,body[data-theme=dark] .shopping-list-ingredient-item,body[data-theme=dark] .shopping-history-item,body[data-theme=dark] .shopping-section-order-item,body[data-theme=dark] .shopping-suggestion-item,body[data-theme=dark] .shopping-list-recipes,body[data-theme=dark] .shopping-list-ingredients{background:#141f2be0;border-color:#a4b4c82e;box-shadow:inset 0 1px #ffffff0f}body[data-theme=dark] .shopping-export-signal-review,body[data-theme=dark] .shopping-review-banner{background:linear-gradient(180deg,#42351299,#372d0fb8);border-color:#e4b44d47}body[data-theme=dark] .shopping-export-signal-ready{background:linear-gradient(180deg,#192f29e6,#142622f0);border-color:#72a58a3d}body[data-theme=dark] .shopping-list-pantry-item,body[data-theme=dark] .shopping-pantry-entry{background:#1d3a33eb;border-color:#72a58a3d}body[data-theme=dark] .shopping-pantry-flag,body[data-theme=dark] .shopping-group-heading{background:#2b453ce6;border-color:#72a58a3d;color:#b8e0c7;box-shadow:inset 0 1px #ffffff0f}body[data-theme=dark] .shopping-list-meta-pill,body[data-theme=dark] .shopping-export-signal-meta span,body[data-theme=dark] .shopping-panel-summary-count{background:#192533eb;border-color:#a4b4c833;color:#d7e2ee;box-shadow:inset 0 1px #ffffff0f}body[data-theme=dark] .shopping-suggestion-badge,body[data-theme=dark] .shopping-review-banner-stats span,body[data-theme=dark] .shopping-export-signal-review .shopping-export-signal-meta span{background:#4e3c13db;border-color:#f4be6642;color:#f4d58a}body[data-theme=dark] .shopping-export-signal-ready .shopping-export-signal-meta span{background:#1c3530e6;border-color:#72a58a3d;color:#d9eee2}body[data-theme=dark] .shopping-review-banner-kicker{color:#f4d58a}body[data-theme=dark] .shopping-list-unresolved-item{border-color:#e4b44d47}body[data-theme=dark] .shopping-pantry-panel .empty-state-card{background:#141f2bc2;border:1px solid rgba(164,180,200,.16);border-radius:16px;padding:.85rem .9rem}body[data-theme=dark] .shopping-pantry-panel .empty-state-icon{background:#2b453ce6;color:#a6dabb}body[data-theme=dark] .shopping-pantry-panel .empty-state-copy h3{color:#eef4fb}body[data-theme=dark] .shopping-pantry-panel .empty-state-copy p{color:#9fb2c5}body[data-theme=dark] .message-pill{border-color:#a4b4c833;box-shadow:0 18px 30px #0000004d}body[data-theme=dark] .message-pill-icon,body[data-theme=dark] .message-pill-close,body[data-theme=dark] .status-banner-icon{background:#121c27bd;border-color:#a4b4c833;box-shadow:inset 0 1px #ffffff0f}body[data-theme=dark] .message-pill-close:hover{background:#1b293aeb}body[data-theme=dark] .status-banner-kicker{color:#9fb2c5}body[data-theme=dark] .status-banner-text{color:#e4edf7}body[data-theme=dark] .auth-return-banner{--status-banner-surface: linear-gradient(180deg, rgba(24, 36, 50, .95), rgba(19, 31, 44, .94));--status-banner-border: rgba(164, 180, 200, .2)}body[data-theme=dark] .auth-return-banner-success{--status-banner-border: rgba(114, 165, 138, .28)}body[data-theme=dark] .auth-return-banner-error{--status-banner-border: rgba(255, 142, 125, .24)}body[data-theme=dark] .app-offline-banner{--status-banner-surface: linear-gradient(180deg, rgba(69, 52, 24, .94), rgba(31, 39, 52, .94));--status-banner-border: rgba(228, 180, 77, .26)}body[data-theme=dark] .modal-subtitle,body[data-theme=dark] .profile-modal-subtitle,body[data-theme=dark] .share-modal-subtitle,body[data-theme=dark] .import-preview-subtitle{color:#c7d2df}body[data-theme=dark] .modal-helper-note,body[data-theme=dark] .share-helper-note{background:#141f2bd1;border-color:#a4b4c82e;color:#b2c2d3;box-shadow:inset 0 1px #ffffff0f}body[data-theme=dark] .modal-close-button,body[data-theme=dark] .close,body[data-theme=dark] .auth-return-close{background:#121c27db;border-color:#a4b4c838;color:#d7e2ee;box-shadow:0 16px 28px #00000047}body[data-theme=dark] .modal-close-button:hover,body[data-theme=dark] .close:hover,body[data-theme=dark] .auth-return-close:hover{background:#1b293af0;border-color:#f5a7a047}body[data-theme=dark] .empty-state-card,body[data-theme=dark] .transfer-preview-hero,body[data-theme=dark] .transfer-preview-toolbar,body[data-theme=dark] .transfer-preview-review-card,body[data-theme=dark] .modal-section,body[data-theme=dark] .profile-state-card,body[data-theme=dark] .profile-theme-card,body[data-theme=dark] .profile-form-card,body[data-theme=dark] .profile-readonly-row,body[data-theme=dark] .profile-avatar-actions-menu,body[data-theme=dark] .shopping-panel,body[data-theme=dark] .share-result-item,body[data-theme=dark] .share-existing-item,body[data-theme=dark] .group-activity-item,body[data-theme=dark] .import-preview-item,body[data-theme=dark] .export-preview-item,body[data-theme=dark] .shopping-list-recipe-item,body[data-theme=dark] .shopping-list-ingredient-item,body[data-theme=dark] .shopping-history-item,body[data-theme=dark] .shopping-section-order-item,body[data-theme=dark] .shopping-suggestion-item,body[data-theme=dark] .shopping-list-recipes,body[data-theme=dark] .shopping-list-ingredients{background:#141f2be0;border-color:#a4b4c82e;box-shadow:inset 0 1px #ffffff0f}body[data-theme=dark] .profile-state-card-signed-out{background:linear-gradient(180deg,#43221cf0,#141f2be6)}body[data-theme=dark] .profile-state-card-signed-in{background:linear-gradient(180deg,#1b3c2ef0,#141f2be6)}body[data-theme=dark] .profile-state-card-reset{background:linear-gradient(180deg,#1f324af0,#141f2be6)}body[data-theme=dark] .transfer-preview-kicker,body[data-theme=dark] .transfer-preview-toolbar-kicker,body[data-theme=dark] .transfer-preview-signal-label{color:#9fb2c5}body[data-theme=dark] .transfer-preview-heading-group h3,body[data-theme=dark] .transfer-preview-toolbar-copy h3,body[data-theme=dark] .transfer-preview-review-copy h3,body[data-theme=dark] .transfer-preview-signal strong{color:#eef4fb}body[data-theme=dark] .transfer-preview-heading-group p,body[data-theme=dark] .transfer-preview-toolbar-copy p,body[data-theme=dark] .transfer-preview-review-copy p,body[data-theme=dark] .transfer-preview-footer-copy p,body[data-theme=dark] .transfer-preview-signal p,body[data-theme=dark] .transfer-preview-source-note{color:#b7c8d8}body[data-theme=dark] .transfer-preview-meta-pill,body[data-theme=dark] .transfer-preview-signal-meta span,body[data-theme=dark] .transfer-preview-review-count,body[data-theme=dark] .transfer-preview-state-pill{background:#121c27b8;border-color:#a4b4c82e;color:#d7e2ee;box-shadow:inset 0 1px #ffffff0d}body[data-theme=dark] .transfer-preview-signal{background:#121c27ad;border-color:#a4b4c82e}body[data-theme=dark] .transfer-preview-signal-ready,body[data-theme=dark] .transfer-preview-state-pill-selected,body[data-theme=dark] .transfer-preview-review-count{background:linear-gradient(180deg,#1c382deb,#142b23f0);border-color:#72a58a3d;color:#cfe9d8}body[data-theme=dark] .transfer-preview-signal-partial{background:linear-gradient(180deg,#4d3916eb,#322813f0);border-color:#f4be663d}body[data-theme=dark] .transfer-preview-signal-review,body[data-theme=dark] .transfer-preview-signal-idle{background:linear-gradient(180deg,#48231feb,#2e1a18f0);border-color:#ff8e7d33}body[data-theme=dark] .transfer-preview-state-pill-muted{background:#222f3eeb;color:#b7c8d8}body[data-theme=dark] .profile-state-copy strong,body[data-theme=dark] .profile-theme-copy strong,body[data-theme=dark] .profile-card-heading strong,body[data-theme=dark] .profile-account-copy strong,body[data-theme=dark] .profile-readonly-row strong{color:#eef3f8}body[data-theme=dark] .profile-state-copy p,body[data-theme=dark] .profile-theme-copy p,body[data-theme=dark] .profile-card-heading p,body[data-theme=dark] .profile-account-copy p,body[data-theme=dark] .profile-avatar-caption,body[data-theme=dark] .profile-theme-label,body[data-theme=dark] .profile-section-kicker,body[data-theme=dark] .profile-readonly-label{color:#b7c8d8}body[data-theme=dark] .profile-theme-row{border-top-color:#a4b4c829}body[data-theme=dark] .profile-inline-chip{background:#ffffff0f;border-color:#a4b4c82e;color:#d7e2ee;box-shadow:inset 0 1px #ffffff0d}body[data-theme=dark] .profile-inline-chip-success{background:#39906633;border-color:#72a58a42;color:#b8e1ca}body[data-theme=dark] .profile-inline-chip-reset{background:#3f79a838;border-color:#679ccd47;color:#cae1f7}body[data-theme=dark] .profile-avatar-row{background:linear-gradient(180deg,#141f2bf0,#1c2b3bf0);border-color:#a4b4c82e;box-shadow:0 14px 28px #00000047}body[data-theme=dark] .profile-avatar-crop-panel{border-color:#a4b4c82e;background:linear-gradient(180deg,#141f2beb,#1c2b3beb);box-shadow:inset 0 1px #ffffff0d}body[data-theme=dark] .profile-avatar-crop-copy strong{color:#eef4fb}body[data-theme=dark] .profile-avatar-crop-copy p,body[data-theme=dark] .profile-avatar-crop-note,body[data-theme=dark] .profile-avatar-crop-slider{color:#9fb2c5}body[data-theme=dark] .profile-avatar-crop-stage{background:radial-gradient(circle at top,#2a3d50db,#141f2bf5);border-color:#a4b4c833}body[data-theme=dark] .profile-avatar-crop-mask{box-shadow:inset 0 0 0 999px #0c12193d}body[data-theme=dark] .profile-avatar-crop-mask:after{border-color:#ffffffe6;box-shadow:0 0 0 999px #0c12194d}body[data-theme=dark] .profile-avatar-edit-btn{background:#1b293af5;border-color:#a4b4c838;color:#eef3f8;box-shadow:0 12px 24px #00000047}body[data-theme=dark] .profile-avatar-edit-btn:hover{border-color:#72a58a61}body[data-theme=dark] .modal-section-danger{background:linear-gradient(180deg,#3d1821d1,#30131ce0);border-color:#f8717138}body[data-theme=dark] .import-summary-chip,body[data-theme=dark] .shopping-pantry-flag,body[data-theme=dark] .shopping-group-heading,body[data-theme=dark] .group-activity-type-badge{background:#2b453ce6;border-color:#72a58a3d;color:#b8e0c7;box-shadow:inset 0 1px #ffffff0f}body[data-theme=dark] .shopping-list-meta-pill{background:#192533eb;border-color:#a4b4c833;color:#d7e2ee;box-shadow:inset 0 1px #ffffff0f}body[data-theme=dark] .import-preview-categories span{background:#4e3c13db;border-color:#f4be6642;color:#f4d58a;box-shadow:inset 0 1px #ffffff0f}body[data-theme=dark] .shopping-manual-input,body[data-theme=dark] .shopping-manual-item-input,body[data-theme=dark] .shopping-manual-item-text{background:#121c27eb;border-color:#a4b4c838;color:#eef3f8}.form-group{margin-bottom:.98rem}.form-group label{display:block;margin-bottom:.42rem;font-weight:650;color:var(--ink-900);font-size:.92rem}.form-group input,.form-group select,.form-group textarea{width:100%;border:1px solid var(--border-soft);border-radius:var(--radius-md);background:#fff;font-size:.95rem;font-family:inherit;color:var(--ink-900);padding:.7rem .76rem;transition:border-color var(--transition),box-shadow var(--transition),transform var(--transition)}.form-group textarea{min-height:82px}.field-tools-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.45rem;margin:-.08rem 0 .5rem}.field-tools-row-categories{margin-top:.08rem}.field-helper-text{font-size:.78rem;color:var(--ink-500);line-height:1.4}.field-tools-actions{display:inline-flex;flex-wrap:wrap;gap:.4rem}.field-tools-actions .btn{min-height:34px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#72a58acc;box-shadow:0 0 0 4px #72a58a24;transform:translateY(-1px)}.category-checkboxes{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:.75rem;margin-top:.45rem}.checkbox-item{display:flex;align-items:center;gap:.52rem;background:#f8fafce6;border:1px solid rgba(90,105,122,.16);border-radius:10px;padding:.48rem .56rem;transition:border-color var(--transition),box-shadow var(--transition),background-color var(--transition)}.checkbox-item:has(input:checked){border-color:#d1483e42;background:#fff4f1f0;box-shadow:0 10px 18px #d1483e14}.checkbox-item input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--tomato-600)}.checkbox-item label{margin:0;font-size:.9rem;font-weight:500}.toggle-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}.extract-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:.65rem}.extract-notice{margin:0;font-size:.8rem;line-height:1.45;color:var(--ink-700);background:#72a58a1f;border:1px solid rgba(114,165,138,.24);border-radius:10px;padding:.42rem .56rem}.extract-meta{font-size:.8rem;color:var(--ink-700);font-weight:600}.extract-preview-card{border:1px solid var(--border-soft);border-radius:12px;background:#ffffffc2;padding:.7rem;margin-bottom:.7rem;display:grid;gap:.5rem}.extract-preview-header{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:space-between;align-items:center}.extract-preview-stats{display:flex;flex-wrap:wrap;gap:.45rem}.extract-preview-stats span{font-size:.78rem;color:var(--ink-700);border:1px solid var(--border-soft);border-radius:999px;padding:.2rem .48rem;background:#ffffffdb}.extract-preview-actions{display:flex;flex-wrap:wrap;gap:.5rem}.extract-warning-box{border:1px solid rgba(223,160,64,.45);background:#faeac573;border-radius:10px;padding:.55rem .65rem;margin-bottom:.65rem}.extract-warning-box p{font-size:.82rem;color:var(--ink-700)}.extract-review-checklist{display:grid;gap:.45rem;border-radius:14px;border:1px solid rgba(90,105,122,.14);background:#f8fafce0;padding:.72rem .8rem}.extract-review-checklist strong{font-size:.82rem;color:var(--ink-900)}.extract-review-checklist-items{display:flex;flex-wrap:wrap;gap:.4rem}.extract-review-checklist-item,.extract-field-status,.extract-category-chip{display:inline-flex;align-items:center;gap:.35rem;border-radius:var(--radius-pill);padding:.26rem .58rem;font-size:.75rem;font-weight:650}.extract-review-checklist-item-strong,.extract-field-status-strong{background:#72a58a24;border:1px solid rgba(114,165,138,.22);color:var(--sage-600)}.extract-review-checklist-item-review,.extract-field-status-review{background:#f4be662e;border:1px solid rgba(244,190,102,.28);color:#855d0d}.extract-review-checklist-item-missing,.extract-field-status-missing{background:#e55c4d24;border:1px solid rgba(229,92,77,.24);color:#b64437}.extract-field-review-grid{display:grid;gap:.7rem}.extract-field-card{display:grid;gap:.55rem;border-radius:14px;border:1px solid rgba(90,105,122,.16);background:#ffffffe6;padding:.8rem}.extract-field-card-strong{border-color:#72a58a33;background:#f4fbf6f0}.extract-field-card-review{border-color:#f4be6647;background:#fff9edf2}.extract-field-card-missing{border-color:#e55c4d3d;background:#fff3f1f2}.extract-field-card-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.5rem}.extract-field-card-header h4{margin:0;font-size:.9rem;color:var(--ink-900)}.extract-field-card-header p{margin:.15rem 0 0;font-size:.79rem;line-height:1.45;color:var(--ink-700)}.extract-field-card-body{color:var(--ink-900);font-size:.92rem;line-height:1.45}.extract-field-empty{margin:0;font-size:.8rem;color:var(--ink-500)}.extract-suspicious-list{display:grid;gap:.5rem;list-style:none;padding:0;margin:0}.extract-suspicious-item{display:grid;gap:.2rem;border-radius:10px;border:1px dashed rgba(244,190,102,.36);background:#ffffffb8;padding:.55rem .6rem}.extract-suspicious-line{color:var(--ink-900);font-size:.84rem;line-height:1.45}.extract-suspicious-item small{color:#855d0d;font-size:.74rem;line-height:1.35}.extract-category-chips{display:flex;flex-wrap:wrap;gap:.4rem}.extract-category-chip{background:#72a58a1f;border:1px solid rgba(114,165,138,.2);color:var(--ink-700)}.extract-image-preview{margin-bottom:.7rem}.extract-image-preview img{width:100%;max-height:190px;object-fit:cover;border-radius:10px;border:1px solid var(--border-soft)}.recipe-image-editor{margin-bottom:.85rem}.recipe-image-editor .btn{width:auto}.toggle-btn{min-height:var(--control-height-lg);border:1px solid var(--border-soft);border-radius:var(--radius-lg);background:var(--surface-control);color:var(--ink-900);font:inherit;font-size:.9rem;font-weight:650;padding:.72rem .8rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;box-shadow:inset 0 1px #fffc;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition),background-color var(--transition),color var(--transition)}.toggle-btn:focus-visible{outline:none;box-shadow:var(--focus-ring),inset 0 1px #fffc}.toggle-btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-interactive)}.toggle-btn-active{border-color:#d1483e38;color:var(--tomato-700);background:linear-gradient(180deg,#fff7f4fa,#ffeee8fa);box-shadow:0 12px 24px #d1483e1f}.add-recipe-modal-shell{gap:1rem}.add-recipe-journey-shell,.recipe-type-toggle,.add-recipe-field-group,.extract-actions-card,.extract-preview-footer,.add-recipe-footer{border:1px solid rgba(90,105,122,.14);border-radius:20px;background:linear-gradient(180deg,#ffffffe0,#f8f4eef0);box-shadow:inset 0 1px #ffffffd1}.add-recipe-journey-shell{padding:.88rem .92rem}.add-recipe-journey{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.65rem;margin:0;padding:0;list-style:none}.add-recipe-journey-step{display:grid;gap:.45rem;align-content:start;min-height:100%;padding:.8rem .82rem;border-radius:16px;border:1px solid rgba(90,105,122,.1);background:#ffffffb8}.add-recipe-journey-step-current{border-color:#d1483e33;background:linear-gradient(180deg,#fff7f4f5,#fff1ecf5);box-shadow:0 16px 28px #d1483e14}.add-recipe-journey-step-complete{border-color:#72a58a33;background:linear-gradient(180deg,#f3fbf6f5,#ecf7f0f0)}.add-recipe-journey-step-upcoming{opacity:.84}.add-recipe-journey-number,.add-recipe-panel-kicker{display:inline-flex;align-items:center;justify-content:center;width:fit-content;min-height:28px;padding:.22rem .58rem;border-radius:var(--radius-pill);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.add-recipe-journey-number{color:var(--tomato-700);background:#e55c4d1f;border:1px solid rgba(229,92,77,.18)}.add-recipe-panel-kicker{color:var(--ink-500);background:#5a697a14;border:1px solid rgba(90,105,122,.1)}.add-recipe-journey-copy{display:grid;gap:.22rem}.add-recipe-journey-copy strong,.add-recipe-field-group-header h4,.add-recipe-footer-copy strong,.extract-actions-card-copy strong{color:var(--ink-900)}.add-recipe-journey-copy strong{font-size:.9rem;line-height:1.32}.add-recipe-journey-copy p,.add-recipe-field-group-header p,.add-recipe-footer-copy p,.extract-preview-footer-copy p,.extract-actions-card-copy p{margin:0;color:var(--ink-600);font-size:.8rem;line-height:1.5}.recipe-type-toggle{margin:0;padding:.85rem .9rem .92rem}.recipe-type-toggle legend,.form-group-fieldset legend{padding:0;margin-bottom:.5rem;font-weight:700;color:var(--ink-900);font-size:.92rem}.recipe-type-toggle .toggle-buttons{margin-top:.15rem}.add-recipe-panel-header{gap:.28rem}.extract-preview-heading,.extract-actions-card-copy,.extract-preview-footer-copy,.add-recipe-footer-copy,.add-recipe-field-group-header{display:grid;gap:.24rem}.extract-preview-heading strong{font-size:1.08rem}.extract-actions-card,.extract-preview-footer,.add-recipe-footer{display:grid;gap:.75rem;padding:.88rem .94rem}.extract-actions-card{grid-template-columns:minmax(0,1fr) auto;align-items:center}.extract-actions{justify-content:flex-end;margin-bottom:0}.extract-warning-box strong{font-size:.82rem;color:#7b5b13}.extract-suspicious-block{display:grid;gap:.45rem}.extract-suspicious-heading{margin:0;font-size:.78rem;font-weight:700;color:#855d0d}.add-recipe-group-stack{display:grid;gap:.75rem}.add-recipe-field-group{padding:.92rem .94rem}.add-recipe-field-group-header h4{margin:0;font-size:.96rem}.form-group-fieldset{margin:0;padding:0}.extract-preview-footer,.add-recipe-footer{grid-template-columns:minmax(0,1fr) auto;align-items:center}.extract-preview-actions,.add-recipe-submit-row{align-items:center}.add-recipe-submit-row .btn{min-width:180px}.footer{margin:0 20px 20px;border-radius:16px;padding:1rem 0;text-align:center;color:var(--ink-700);border:1px solid var(--border-soft);background:#ffffffc2;box-shadow:var(--shadow-soft)}.footer p{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;flex-wrap:wrap}.footer-logo{width:26px;height:26px;object-fit:contain;border-radius:50%}.footer i{color:var(--tomato-600)}.footer-separator{color:var(--ink-500)}.footer-link{color:var(--ink-700);font-weight:700;text-underline-offset:.18em;text-decoration-thickness:1.5px;transition:color .18s ease}.footer-link:hover,.footer-link:focus-visible{color:var(--tomato-600)}.pwa-install-wrap{position:fixed;right:16px;bottom:16px;z-index:10000;display:block}.pwa-install-btn{position:static;padding-right:2rem}.pwa-install-dismiss{position:absolute;top:6px;right:6px;width:24px;height:24px;border-radius:999px;border:0;background:var(--surface-control);color:var(--ink-700);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;z-index:1}.pwa-install-dismiss:hover{filter:brightness(.98)}.pwa-install-dismiss:focus-visible{outline:none;box-shadow:0 0 0 3px #72a58a29}.sw-update-banner{position:fixed;left:50%;transform:translate(-50%);bottom:20px;z-index:10001;display:flex;align-items:center;gap:8px;min-width:280px;max-width:calc(100% - 24px);padding:11px 13px;border-radius:14px;background:#fffffff2;border:1px solid rgba(90,105,122,.2);box-shadow:var(--shadow-lift)}.back-to-top-btn{position:fixed;right:16px;bottom:78px;z-index:10002;min-width:0;width:auto;padding-inline:.9rem;box-shadow:0 10px 18px #d1483e47}.back-to-top-btn.back-to-top-btn-has-install{bottom:136px}.mobile-add-fab{position:fixed;right:16px;bottom:84px;z-index:10003;display:inline-flex;min-width:0;border-radius:999px;padding-inline:.95rem;box-shadow:0 10px 18px #d1483e4d}.mobile-add-fab.mobile-add-fab-has-install{bottom:140px}.mobile-add-fab.mobile-add-fab-has-top{bottom:146px}.mobile-add-fab.mobile-add-fab-has-install.mobile-add-fab-has-top{bottom:200px}.back-to-top-btn i{font-size:.9rem}.back-to-top-btn span{display:inline}.sw-update-message{color:var(--ink-900);font-weight:600;font-size:.93rem;flex:1}@keyframes cardRise{0%{opacity:0;transform:translateY(10px) scale(.992)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:980px){.controls-nav-row,.controls-filter-row{align-items:flex-start}.controls-main-actions{width:100%;justify-content:flex-start}.controls-nav-right{width:100%;margin-left:0;justify-content:space-between}.auth-form,.auth-input-row{width:100%}.auth-form input{flex:1 1 170px}.controls-filter-group{width:100%}.controls-danger-zone{margin-left:0;justify-content:flex-start}.controls-utility-row{justify-content:flex-start}}@media(max-width:1023px)and (orientation:landscape){.controls-main-actions{justify-content:flex-start}}@media(min-width:900px)and (max-width:1023px){.controls-main-actions{justify-content:flex-start}}@media(max-width:768px){.header{margin:12px}.header-content{padding:1.35rem 0}.container{padding:0 14px}.controls{margin-bottom:1.35rem;gap:.72rem;padding:.78rem}.view-toggle-group{justify-content:stretch;width:100%}.view-toggle-group .btn{width:100%}.controls-nav-row{gap:.5rem}.controls-search-row{margin-top:.3rem;margin-bottom:.4rem}.controls-nav-right{width:100%;flex-direction:column;align-items:stretch;gap:.45rem}.controls-nav-right>*{min-width:0}.controls-theme-sync-row{width:100%;justify-content:space-between;align-items:center}.controls-account-row{max-width:100%;justify-content:flex-end}.auth-form,.auth-signed-in{width:100%;justify-content:flex-start}.auth-signed-in>*{min-width:0}.auth-user-link{min-width:0;width:auto;max-width:min(100%,280px);flex:0 1 auto;align-self:flex-start}.auth-input-row{width:100%}.auth-input-row .btn{flex:1 1 180px;min-width:0}.auth-user-email{max-width:100%}.controls-filter-group{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.controls-main-actions{width:100%;display:flex;justify-content:flex-end}.controls-advanced-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.controls-advanced-actions .btn{width:100%}.scope-select-wrap{width:100%;min-width:0}.scope-select-wrap .category-select{min-width:0}.group-scope-controls{width:100%;display:grid;grid-template-columns:minmax(0,1fr)}.group-scope-controls select{min-width:0}.ios-install-help{margin-top:.45rem;padding:.65rem .68rem}.controls-tools-row .ios-install-help{width:100%;box-sizing:border-box}.controls-main-actions .btn,.controls-filter-group .category-filter,.controls-filter-group .results-count{width:100%}.controls-main-actions .btn,.scope-select-wrap .btn,.auth-mode-toggle .btn,.auth-input-row .btn,.controls-danger-zone .btn{min-width:0;white-space:normal;line-height:1.2}.controls-danger-zone{width:100%;margin-left:0;justify-content:stretch}.controls-danger-zone .btn{width:100%}.search-box,.category-filter,.category-select{max-width:none;width:100%}.recipe-grid{grid-template-columns:1fr;gap:.95rem}.modal-content{margin:6% auto;width:95%;padding:1.05rem}.import-preview-item,.export-preview-item,.shopping-list-layout{grid-template-columns:1fr}.shopping-list-modal{width:96%;max-height:92vh;margin:4vh auto;padding:.95rem}.shopping-list-modal .import-preview-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.shopping-list-modal .import-preview-actions .btn{width:100%;min-width:0}.shopping-list-modal .shopping-list-count{grid-column:1 / -1;margin-left:0}.shopping-list-modal .shopping-list-recipe-items,.shopping-list-modal .shopping-list-ingredient-items{max-height:none;overflow:visible;padding-right:0}.shopping-unit-toggle{width:100%;display:grid;grid-template-columns:1fr 1fr}.shopping-list-manual-item{grid-template-columns:auto 1fr}.shopping-list-manual-item .btn{width:100%}.shopping-manual-actions{display:grid;grid-template-columns:1fr}.shopping-list-count{margin-left:0;width:100%}.import-preview-check{margin-top:0}.import-preview-footer{flex-direction:column}.footer{margin:0 12px 12px}.theme-switch{width:auto;margin-left:0;justify-content:flex-start}.meal-planner-header{flex-direction:column;align-items:stretch}.focused-recipe-overlay{padding:10px}.focused-recipe-panel{border-radius:14px;padding:.85rem}.back-to-top-btn{left:50%;right:auto;bottom:82px;transform:translate(-50%);width:60px;height:60px;min-width:60px;padding:0;border-radius:999px}.back-to-top-btn span{display:none}.back-to-top-btn i{font-size:1rem}}@media(max-width:768px)and (orientation:landscape){.controls-nav-right{width:100%;align-items:stretch}.controls-theme-sync-row{width:100%;justify-content:space-between;align-items:center}.controls-account-row{margin-left:auto;justify-content:flex-end;width:auto;flex:0 1 auto}.controls-main-actions{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1023px)and (orientation:landscape){.controls-nav-right{width:100%;align-items:stretch}.controls-theme-sync-row{width:100%;justify-content:space-between;align-items:center}.controls-account-row{margin-left:auto;justify-content:flex-end;width:auto;flex:0 1 auto}.shopping-list-modal{width:96%;max-height:88vh;margin:3vh auto;padding:.9rem}.shopping-list-modal .import-preview-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.shopping-list-modal .import-preview-actions .btn{width:100%;min-width:0}.shopping-list-modal .shopping-list-count{grid-column:1 / -1;margin-left:0}.shopping-list-modal .shopping-list-recipe-items,.shopping-list-modal .shopping-list-ingredient-items{max-height:none;overflow:visible;padding-right:0}}@media(max-width:1023px)and (orientation:portrait){.recipe-grid{display:block;column-count:2;column-gap:.95rem}.recipe-card{display:inline-block;width:100%;margin-bottom:.95rem;break-inside:avoid}}@media(max-width:640px)and (orientation:portrait){.recipe-grid{column-count:1}}@media(max-height:520px)and (orientation:landscape){.recipe-grid{display:block;column-count:2;column-gap:.95rem}.recipe-card{display:inline-block;width:100%;margin-bottom:.95rem;break-inside:avoid}}@media(max-width:520px){.logo{font-size:1.65rem}.logo-mark{width:36px;height:36px}.footer-logo{width:22px;height:22px;margin-right:.25rem;vertical-align:text-bottom}.footer p{display:block;font-size:.84rem;line-height:1.35;white-space:nowrap}.footer i{margin-left:.2rem;vertical-align:text-bottom}.controls-nav-row,.controls-filter-group{display:grid;grid-template-columns:1fr}.controls-search-row{margin-top:.38rem;margin-bottom:.48rem}.controls-nav-right,.controls-utility-row{width:100%}.controls-theme-sync-row{width:100%;justify-content:space-between}.controls-account-row{max-width:100%;justify-content:flex-end}.auth-signed-in{display:grid;grid-template-columns:1fr}.auth-user-link{width:auto;max-width:min(100%,260px);align-self:flex-start}.controls-main-actions{display:flex;justify-content:flex-end;gap:.45rem}.controls-advanced-actions{grid-template-columns:1fr}.controls-main-actions .btn{width:100%}.controls-danger-zone{margin-left:auto;justify-content:flex-end}.theme-switch{margin-left:0;width:fit-content;justify-self:start;align-self:start}.auth-form{display:grid;grid-template-columns:1fr}.auth-input-row{display:grid;grid-template-columns:1fr;width:100%}.auth-mode-toggle{width:100%}.share-lookup-row{flex-direction:column}.share-lookup-row input,.share-lookup-row select,.share-lookup-row .btn{width:100%;max-width:100%}.share-lookup-row select{flex:1 1 auto;min-height:40px;font-size:.88rem}.profile-avatar-row{width:74px;height:74px}.profile-avatar-preview{width:100%;height:100%}.profile-avatar-edit-btn{width:26px;height:26px}.profile-form-actions{width:100%;display:grid;grid-template-columns:1fr}.share-existing-item{flex-direction:column;align-items:flex-start}.share-existing-actions{width:100%;display:grid;grid-template-columns:1fr}.auth-mode-toggle .btn,.auth-form .btn,.auth-signed-in .btn{width:100%}.ios-install-help{padding:.62rem}.ios-install-help summary{font-size:.84rem}.ios-install-help p,.ios-install-help ol{font-size:.8rem}.recipe-actions{gap:.34rem}.recipe-action-group,.recipe-action-status{gap:.34rem;padding:.34rem}.recipe-actions .btn{min-height:34px;padding:.3rem .42rem}.recipe-actions .btn i{font-size:.84rem}.toggle-buttons{grid-template-columns:1fr}.extract-actions .btn{width:100%}.extract-notice{font-size:.78rem}.extract-preview-actions .btn{width:100%}.shopping-list-modal{width:96%;max-height:90vh;margin:5vh auto;padding:.85rem .8rem .9rem}.shopping-list-modal .import-preview-actions{grid-template-columns:1fr}.messages-wrap{left:12px;right:12px;max-width:none}.sw-update-banner{bottom:12px;left:12px;right:12px;transform:none;min-width:0}.pwa-install-wrap{right:12px;left:12px;width:auto;bottom:10px}.pwa-install-btn{min-height:48px;width:100%;padding-right:2.3rem}.pwa-install-dismiss{top:10px;right:10px;width:28px;height:28px}.main{padding-bottom:9rem}.back-to-top-btn{left:auto;right:12px;bottom:74px;transform:none;width:54px;height:54px;min-width:54px;padding:0;border-radius:999px}.back-to-top-btn.back-to-top-btn-has-install{bottom:132px}.back-to-top-btn i{font-size:.95rem}.mobile-add-fab{display:inline-flex;right:12px;bottom:74px;width:auto;padding-inline:.95rem}.mobile-add-fab.mobile-add-fab-has-install{bottom:132px}.mobile-add-fab.mobile-add-fab-has-top{bottom:138px}.mobile-add-fab.mobile-add-fab-has-install.mobile-add-fab-has-top{bottom:194px}.mobile-add-fab span{display:inline}}@media(prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.btn:hover,.toggle-btn:hover,.recipe-card:hover,.recipe-url:hover,.profile-avatar-edit-btn:hover,.auth-return-close:hover,.message-pill-close:hover,.focused-recipe-close:hover,.form-group input:focus,.form-group select:focus,.form-group textarea:focus{transform:none!important}}body[data-theme=dark]:before{opacity:.14}body[data-theme=dark] .controls,body[data-theme=dark] .recipe-card,body[data-theme=dark] .footer,body[data-theme=dark] .modal-content,body[data-theme=dark] .sw-update-banner,body[data-theme=dark] .import-preview-item,body[data-theme=dark] .export-preview-item,body[data-theme=dark] .shopping-list-recipes,body[data-theme=dark] .shopping-list-ingredients,body[data-theme=dark] .shopping-list-recipe-item,body[data-theme=dark] .shopping-list-ingredient-item,body[data-theme=dark] .shopping-manual-input,body[data-theme=dark] .shopping-manual-item-input,body[data-theme=dark] .no-recipes,body[data-theme=dark] .meal-planner,body[data-theme=dark] .meal-day-card,body[data-theme=dark] .view-toggle-group{background:linear-gradient(180deg,#151f2ce0,#111924e6)}body[data-theme=dark] .controls{background:#182432;border-color:#a4b4c857;box-shadow:0 12px 22px #0000004d}body[data-theme=dark] .controls-utility-row{background:#15212f;border-top-color:#a4b4c847}body[data-theme=dark] .controls,body[data-theme=dark] .recipe-card,body[data-theme=dark] .footer,body[data-theme=dark] .modal-content,body[data-theme=dark] .sw-update-banner,body[data-theme=dark] .import-preview-item,body[data-theme=dark] .export-preview-item,body[data-theme=dark] .no-recipes,body[data-theme=dark] .recipe-section,body[data-theme=dark] .checkbox-item,body[data-theme=dark] .import-summary-chip,body[data-theme=dark] .import-preview-categories span,body[data-theme=dark] .meal-planner,body[data-theme=dark] .meal-day-card,body[data-theme=dark] .view-toggle-group,body[data-theme=dark] .meal-slot-select,body[data-theme=dark] .shopping-list-recipes,body[data-theme=dark] .shopping-list-ingredients,body[data-theme=dark] .shopping-list-recipe-item,body[data-theme=dark] .shopping-list-ingredient-item,body[data-theme=dark] .shopping-manual-input,body[data-theme=dark] .shopping-manual-item-input,body[data-theme=dark] .shopping-manual-item-text{border-color:#a4b4c842}body[data-theme=dark] .shopping-manual-item-input,body[data-theme=dark] .shopping-manual-item-text{background:#121a24f0;color:var(--ink-900)}body[data-theme=dark] .search-box input,body[data-theme=dark] .category-select,body[data-theme=dark] .form-group input,body[data-theme=dark] .form-group select,body[data-theme=dark] .form-group textarea,body[data-theme=dark] .toggle-btn,body[data-theme=dark] .btn-secondary,body[data-theme=dark] .meal-slot-select,body[data-theme=dark] .btn-pin,body[data-theme=dark] .tools-menu-panel{background:#1a2736;color:var(--ink-900);border-color:#a4b4c847}body[data-theme=dark] .toggle-btn.toggle-btn-active{background:linear-gradient(140deg,var(--tomato-600),var(--tomato-500));color:#fff;border-color:transparent;box-shadow:0 8px 16px #d1483e47}body[data-theme=dark] .toggle-btn.toggle-btn-active:hover{box-shadow:0 10px 20px #d1483e57}body[data-theme=dark] .profile-auth-form input{background:#f4f7fb;color:#1a2736;border-color:#72829473}body[data-theme=dark] .profile-auth-form input::placeholder{color:#4f6072}body[data-theme=dark] .controls .search-box input,body[data-theme=dark] .controls .category-select,body[data-theme=dark] .controls .view-toggle-group,body[data-theme=dark] .controls .ios-install-help,body[data-theme=dark] .controls .auth-form input,body[data-theme=dark] .controls .auth-user-email,body[data-theme=dark] .controls .theme-switch-track{background:var(--surface-control);border-color:#a4b4c84d}body[data-theme=dark] .auth-user-email,body[data-theme=dark] .auth-config-note{color:var(--ink-700)}body[data-theme=dark] .auth-sync-pill{color:#cfe9dc;border-color:#86baa057;background:#1d3a33}body[data-theme=dark] .auth-sync-pill-offline{color:#ffe3e3;border-color:#f8717185;background:#7a1f1f}body[data-theme=dark] .auth-user-avatar{border-color:#a4b4c85c;background:#1a2736}body[data-theme=dark] .profile-avatar-row{border-color:#a4b4c847;background:#15212f}body[data-theme=dark] .profile-avatar-preview{background:#1a2736;border-color:#a4b4c859}body[data-theme=dark] .profile-avatar-edit-btn{background:#1a2736;color:#d8e7f5;border-color:#a4b4c857}body[data-theme=dark] .profile-avatar-actions-menu{background:#1a2736;border-color:#a4b4c857}body[data-theme=dark] .pwa-install-dismiss{background:#1a2736;color:#d8e7f5;border-color:#a4b4c857}body[data-theme=dark] .share-result-item{border-color:#a4b4c847;background:#1a2736}body[data-theme=dark] .share-existing-item{border-color:#a4b4c847;background:#15212f}body[data-theme=dark] .empty-state-icon{background:#d1483e29;color:#ffd2cedb}body[data-theme=dark] .identity-avatar{box-shadow:0 10px 20px #050a1252}body[data-theme=dark] .group-activity-type-badge{background:#151f2cf0;border-color:#a4b4c847}body[data-theme=dark] .modal-section{border-color:#a4b4c847;background:linear-gradient(180deg,#182432e6,#131f2ce6)}body[data-theme=dark] .modal-section summary{color:#e6eef8}body[data-theme=dark] .modal-section summary::marker{color:#a8bdd5}body[data-theme=dark] .modal-section[open] summary{border-bottom:1px solid rgba(164,180,200,.22);padding-bottom:.4rem}body[data-theme=dark] .share-result-item strong{color:var(--ink-900)}body[data-theme=dark] .shared-readonly-pill{color:var(--ink-700);border-color:#a4b4c857;background:#1a2736}body[data-theme=dark] .auth-config-note{border-color:#a4b4c857}body[data-theme=dark] .controls .theme-switch-track{background:var(--surface-control-muted)}body[data-theme=dark] .controls{background:#182432}body[data-theme=dark] .recipe-scope-select{border-color:#f5a7a0e0;background:linear-gradient(180deg,#94342ef5,#7c2b27f5);color:#fff5f3;text-shadow:0 1px 0 rgba(0,0,0,.22);box-shadow:0 0 0 2px #f5a7a033,0 0 0 5px #f5a7a01a,0 10px 20px #00000052}body[data-theme=dark] .recipe-scope-select:focus{border-color:#ffccc6fa;box-shadow:0 0 0 3px #ffccc657,0 0 0 7px #ffccc624,0 12px 22px #0000005c}body[data-theme=dark] .controls-advanced-panel{background:#15212f;border-color:#a4b4c847}body[data-theme=dark] .controls-advanced-summary{color:#e6eef8}body[data-theme=dark] .btn.btn-small.btn-secondary,body[data-theme=dark] .btn.btn-secondary,body[data-theme=dark] .ios-install-help,body[data-theme=dark] .theme-switch-track{background-image:none}body[data-theme=dark] .btn.btn-small.btn-secondary,body[data-theme=dark] .btn.btn-secondary{background-color:#1a2736}body[data-theme=dark] .btn.btn-primary.btn-add-inline{background-color:#ca4a40;background-image:none}body[data-theme=dark] .btn.btn-pin{background-color:#2b3a4c;background-image:none}body[data-theme=dark] .controls-utility-row{background-color:#15212f;border:1px solid rgba(164,180,200,.38);border-top-color:#a4b4c875}body[data-theme=dark] .theme-switch-track{background-color:#273646;border-color:#a4b4c859}body[data-theme=dark] .ios-install-help{background-color:#202d3d}body[data-theme=dark] .controls .results-count{border-left-color:#a4b4c857}body[data-theme=dark] .btn-pin-active{background:linear-gradient(140deg,#55689f,#6f84bf)}body[data-theme=dark] .recipe-header{background:linear-gradient(160deg,#273242cc,#151f2c66)}body[data-theme=dark] .recipe-provenance-panel,body[data-theme=dark] .recipe-action-group,body[data-theme=dark] .recipe-action-status,body[data-theme=dark] .focused-recipe-aside-panel,body[data-theme=dark] .focused-recipe-action-group,body[data-theme=dark] .focused-recipe-image-wrap{background:#151f2cb8;border-color:#a4b4c838}body[data-theme=dark] .recipe-url,body[data-theme=dark] .recipe-notes,body[data-theme=dark] .recipe-section,body[data-theme=dark] .import-summary-chip,body[data-theme=dark] .import-preview-categories span{background:#222e3ea6}body[data-theme=dark] .recipe-provenance-item-focused{background:#1b2735c7;border-color:#a4b4c833}body[data-theme=dark] .recipe-provenance-label{color:#9eb0c4;background:#a4b4c81f}body[data-theme=dark] .focused-recipe-panel,body[data-theme=dark] .focused-recipe-section{background:linear-gradient(180deg,#151f2cf0,#111924f2);border-color:#a4b4c847;color:var(--ink-900)}body[data-theme=dark] .modal-content{scrollbar-color:rgba(200,222,243,.78) rgba(62,76,94,.75)}body[data-theme=dark] .modal-content::-webkit-scrollbar-track{background:#3e4c5ebf}body[data-theme=dark] .modal-content::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#c8def3db,#a4c4e2bd);border-color:#1e2a38d1}body[data-theme=dark] .modal-content::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#daeaf9f0,#b6d2ecd1)}body[data-theme=dark] .modal-content::-webkit-scrollbar-button{background:#809bb5db}body[data-theme=dark] .focused-recipe-image{border-color:#a4b4c847}body[data-theme=dark] .focused-recipe-kicker,body[data-theme=dark] .focused-recipe-panel-kicker{color:#9fb2c5}body[data-theme=dark] .recipe-image,body[data-theme=dark] .extract-image-preview img{border-color:#a4b4c84d}body[data-theme=dark] .extract-warning-box{border-color:#f5c15e66;background:#59462259}body[data-theme=dark] .ios-install-help{background:#202d3d;border-color:#a4b4c857}body[data-theme=dark] .ios-install-help summary{color:#f2f7ff}body[data-theme=dark] .ios-install-help p,body[data-theme=dark] .ios-install-help ol{color:#d6e0ec}body[data-theme=dark] .ios-install-help summary::marker{color:#a8c5e5}body[data-theme=dark] .extract-preview-card,body[data-theme=dark] .extract-preview-stats span{background:#1a2534db;border-color:#a4b4c847}body[data-theme=dark] .checkbox-item{background:#222e3ec7}body[data-theme=dark] .recipe-url{color:#9ed0ff}body[data-theme=dark] .message-info{background:linear-gradient(140deg,#425972,#516d8b)}body[data-theme=dark] .theme-switch-track{background:#273646;border-color:#a4b4c859}body[data-theme=dark] .theme-switch input:checked+.theme-switch-track{background:#3b5873}.controls{display:grid;gap:.56rem;padding:.82rem .88rem .78rem;border-radius:var(--radius-xl);background:var(--surface-panel);border:1px solid rgba(90,105,122,.08);box-shadow:0 10px 18px #3743510d}.controls+.recipe-grid{margin-top:var(--space-6)}.controls-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.controls-row-primary{justify-content:space-between;align-items:center;gap:.62rem;padding-bottom:.52rem;border-bottom:1px solid rgba(90,105,122,.08)}.controls-row-search{justify-content:space-between;gap:.5rem}.controls-row-scope,.controls-row-group,.controls-row-filters,.controls-row-bottom{justify-content:space-between;gap:.48rem}.controls-row-bottom{justify-content:flex-end}.controls-row-results{min-height:16px}.controls-search-wrap{flex:1 1 100%;min-width:min(100%,320px)}.controls-primary-nav,.controls-primary-status{display:grid;gap:.3rem;min-width:0}.controls-primary-status{margin-left:auto;justify-items:end}.controls-account-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.45rem;width:100%}.controls-section-label{margin:0 .18rem;color:var(--ink-500)}.controls-filter-stack{display:flex;flex:1 1 560px;flex-wrap:wrap;align-items:center;gap:.7rem;min-width:0}.controls-utility-cluster,.controls-status-cluster{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.55rem;min-width:0}.controls-status-cluster{margin-left:0}.controls .btn{box-shadow:none}.controls .btn:hover{transform:translateY(-1px)}.view-toggle-group{display:inline-flex;gap:.3rem;margin:0;padding:.14rem;border-radius:12px;min-width:0;border:1px solid rgba(90,105,122,.08);background:#ffffff80;box-shadow:inset 0 1px #ffffff94}.view-toggle-group legend{margin:0;padding:0}.toolbar-tab{min-width:136px;min-height:38px;padding:.5rem .78rem;border-radius:10px}.view-toggle-group .toolbar-tab.btn-secondary{color:var(--ink-600);background:transparent;border-color:transparent}.view-toggle-group .toolbar-tab.btn-secondary:hover{background:#ffffff9e;border-color:#5a697a14}.view-toggle-group .toolbar-tab.btn-primary{background:linear-gradient(180deg,#d6574afa,#c7473bfa);box-shadow:0 7px 14px #cd534629}.toolbar-search-box{max-width:none;padding:0;border-radius:16px;background:transparent;box-shadow:0 8px 14px #3743510d}.toolbar-search-box input{min-height:42px;padding:.66rem 3.15rem .66rem 2.58rem;border:1px solid rgba(90,105,122,.1);border-radius:16px;background:#fffffffa;box-shadow:inset 0 1px #ffffffc7}.toolbar-search-box input::placeholder{color:var(--ink-500)}.toolbar-search-box input:focus{border-color:#d1483e6b;box-shadow:0 0 0 3px #d1483e14,0 8px 16px #37435112}.toolbar-search-box>i{left:.98rem;font-size:.92rem;color:var(--ink-500)}.toolbar-search-add{position:absolute;top:50%;right:.3rem;width:36px;min-width:36px;height:36px;min-height:36px;padding:0;border-radius:10px;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;border-color:transparent;background:linear-gradient(140deg,var(--tomato-600),var(--tomato-500));color:#fff;box-shadow:0 10px 18px #d1483e4d!important}.toolbar-search-add:hover{transform:translateY(-50%) translateY(-1px);box-shadow:0 12px 22px #d1483e54!important}.toolbar-search-add:active{transform:translateY(-50%)}.toolbar-search-add i{position:static;transform:none;color:currentColor;font-size:.92rem}.toolbar-primary-cta{min-height:60px;min-width:168px;padding-inline:1.35rem;border-radius:18px;box-shadow:0 16px 28px #d1483e3d!important}.toolbar-primary-cta:hover{box-shadow:0 20px 34px #d1483e4a!important}.toolbar-select-field,.scope-select-wrap,.group-scope-controls{min-width:0}.toolbar-select-field .category-select,.toolbar-group-select,.recipe-scope-select{min-width:180px;min-height:38px;padding:.58rem 2.05rem .58rem .82rem;border-radius:12px;border:1px solid rgba(90,105,122,.08);background:#ffffffb8;box-shadow:inset 0 1px #fff9}.recipe-scope-select{font-weight:600;border-width:1px;box-shadow:inset 0 1px #fffc}.toolbar-select-field .category-select:focus,.toolbar-group-select:focus,.recipe-scope-select:focus{border-color:#d1483e57;box-shadow:0 0 0 3px #d1483e14}.group-scope-controls{gap:.45rem}.group-scope-controls-compact{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;width:100%}.toolbar-select-field-compact{flex:1 1 auto}.toolbar-group-manage-button,.toolbar-scope-button,.toolbar-icon-button,.toolbar-tools-button{min-height:38px;border-radius:10px}.toolbar-scope-button{gap:.38rem;padding-inline:.8rem;font-weight:650}.toolbar-scope-button i{font-size:.68rem;opacity:.68}.scope-menu-panel{min-width:180px;width:min(240px,calc(100vw - 1rem));max-width:calc(100vw - 1rem)}.scope-menu-list{display:grid;gap:.35rem}.group-refresh-indicator{display:inline-flex;align-items:center;gap:.38rem;min-height:36px;padding:.34rem .12rem;border-radius:10px;border:0;background:transparent;color:var(--ink-500);font-size:.72rem;font-weight:650;line-height:1.3}.group-refresh-indicator i{color:#709d84}.group-refresh-indicator-active{color:#b05a4a}.group-refresh-indicator-active i{color:#c06a5b}.toolbar-ghost-button,.auth-user-email,.group-invites-pill{min-height:38px;border-radius:10px;border:1px solid rgba(90,105,122,.08);background:#ffffff70;color:var(--ink-700)}.toolbar-ghost-button:hover,.auth-user-link:hover{border-color:#5a697a24;background:#ffffffa3;box-shadow:0 6px 12px #3743510f}.auth-user-email{max-width:none;padding:.24rem .42rem}.auth-user-link-compact{min-width:0;justify-content:flex-start}.auth-user-avatar{width:28px;height:28px;flex:0 0 auto}.auth-user-avatar-fallback{display:inline-flex;align-items:center;justify-content:center;color:var(--tomato-700);background:#e55c4d1f}.auth-user-meta{min-width:0;display:grid;gap:.08rem}.auth-user-meta-compact{gap:.02rem}.auth-user-kicker{font-size:.63rem;font-weight:700;letter-spacing:.04em;color:var(--ink-500)}.auth-user-label{font-size:.78rem;font-weight:650;color:var(--ink-900)}.toolbar-sync-text{display:inline-flex;align-items:center;min-height:38px;padding:0 .1rem;color:var(--ink-500);font-size:.72rem;font-weight:600;white-space:nowrap}.toolbar-sync-text-online{color:#3d755d}.toolbar-sync-text-offline{color:#b6493e}.auth-config-note-inline{display:inline-flex;align-items:center;min-height:38px;padding-inline:.2rem}.auth-sync-pill{min-height:42px;padding:.28rem .7rem;border-radius:14px;font-size:.75rem;border-color:#3570572e;box-shadow:inset 0 1px #ffffffb3}.results-count{display:inline-flex;align-items:center;gap:.35rem;min-height:44px;margin-left:0;padding:.5rem .8rem;border:1px solid rgba(90,105,122,.12);border-radius:14px;background:#ffffff80;color:var(--ink-600);font-size:.82rem;font-weight:600;letter-spacing:.01em}.results-count-label{color:var(--ink-500)}.results-count strong{font-size:1rem;color:var(--ink-900)}.results-count-inline{margin:0;color:var(--ink-500);font-size:.74rem;font-weight:600;line-height:1.35}.toolbar-compact-button{min-height:38px}.toolbar-icon-button-active{border-color:#d1483e1f;background:#fff5f1e6;color:#b64437}.toolbar-compact-button-active{border-color:#d1483e24;background:#fff5f1eb;color:#b64437}.tools-menu{position:relative}.toolbar-tools-button{min-height:38px;min-width:38px}.tools-menu-panel{position:absolute;top:calc(100% + .42rem);right:0;z-index:30;min-width:220px;width:min(360px,calc(100vw - 2rem));max-width:calc(100vw - 1rem);padding:.4rem;border-radius:18px;border:1px solid rgba(90,105,122,.08);background:var(--surface-floating);box-shadow:0 16px 26px #1f29331f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.tools-menu-section+.tools-menu-section{margin-top:.35rem;padding-top:.42rem;border-top:1px solid rgba(90,105,122,.08)}.tools-menu-heading{margin:0 0 .45rem;padding:0 .35rem;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-500)}.tools-menu-section-danger .tools-menu-heading{color:#b6493e}.tools-menu-items{display:grid;gap:.38rem}.scope-menu-list .tools-menu-button,#recipe-tools-menu .tools-menu-button{display:flex;align-items:center;gap:.55rem}.tools-menu-button{width:100%;min-width:0;justify-content:flex-start;min-height:40px;padding:.7rem .82rem;border-radius:12px;box-shadow:none!important;white-space:nowrap;overflow-wrap:normal;word-break:normal;line-height:1.3}.tools-menu-button:focus-visible{outline:none;box-shadow:var(--focus-ring)!important}.tools-menu-button.btn-secondary{background:#ffffff9e;border-color:#5a697a14}.tools-menu-button.btn-pin,.tools-menu-button.btn-pin-active{justify-content:flex-start}.tools-menu-button-danger{margin-top:.15rem}.tools-menu-note{margin:0;padding:.2rem .4rem .1rem;color:var(--ink-500);font-size:.8rem;line-height:1.45}.tools-install-help{margin-top:0;padding:.62rem .74rem;border-radius:16px;background:#ffffff94;border-color:#5a697a14;text-align:left}.tools-install-help summary{justify-content:flex-start;font-size:.84rem}.tools-install-help p,.tools-install-help ol{font-size:.8rem}body[data-theme=dark] .controls{background:var(--surface-panel);border-color:#a4b4c81a;box-shadow:0 12px 22px #0000002e}body[data-theme=dark] .controls-row-primary{border-bottom-color:#a4b4c814}body[data-theme=dark] .controls .view-toggle-group,body[data-theme=dark] .view-toggle-group{background:#121c27db;border-color:#a4b4c81a;box-shadow:inset 0 1px #ffffff08}body[data-theme=dark] .view-toggle-group .toolbar-tab.btn-secondary{color:#a9bbce}body[data-theme=dark] .view-toggle-group .toolbar-tab.btn-secondary:hover{background:#ffffff0f;border-color:transparent}body[data-theme=dark] .toolbar-search-box{box-shadow:0 10px 18px #0003}body[data-theme=dark] .controls .search-box input,body[data-theme=dark] .toolbar-search-box input,body[data-theme=dark] .toolbar-select-field .category-select,body[data-theme=dark] .toolbar-group-select,body[data-theme=dark] .recipe-scope-select,body[data-theme=dark] .toolbar-search-add,body[data-theme=dark] .toolbar-ghost-button,body[data-theme=dark] .auth-user-email,body[data-theme=dark] .group-invites-pill,body[data-theme=dark] .tools-menu-panel,body[data-theme=dark] .tools-menu-button.btn-secondary,body[data-theme=dark] .tools-install-help{background:var(--surface-elevated);border-color:#a4b4c81a;color:var(--ink-900)}body[data-theme=dark] .toolbar-search-box input::placeholder,body[data-theme=dark] .results-count,body[data-theme=dark] .results-count-inline,body[data-theme=dark] .tools-menu-heading,body[data-theme=dark] .tools-menu-note,body[data-theme=dark] .profile-theme-label,body[data-theme=dark] .controls-section-label,body[data-theme=dark] .results-count-label,body[data-theme=dark] .auth-user-kicker,body[data-theme=dark] .toolbar-sync-text,body[data-theme=dark] .auth-config-note-inline{color:#9fb2c5}body[data-theme=dark] .results-count{background:#141f2bdb;border-color:#a4b4c829;color:#d9e4f0}body[data-theme=dark] .results-count strong,body[data-theme=dark] .auth-user-label{color:#eef4fb}body[data-theme=dark] .auth-user-avatar-fallback{color:#fff1ef;background:#782b26e6}body[data-theme=dark] .controls .search-box input:focus,body[data-theme=dark] .toolbar-search-box input:focus,body[data-theme=dark] .toolbar-select-field .category-select:focus,body[data-theme=dark] .toolbar-group-select:focus,body[data-theme=dark] .recipe-scope-select:focus{border-color:#f5a7a066;box-shadow:0 0 0 3px #f5a7a014}body[data-theme=dark] .toolbar-search-add{border-color:transparent;background:linear-gradient(140deg,var(--tomato-600),var(--tomato-500));color:#fff;box-shadow:0 10px 18px #d1483e4d!important}body[data-theme=dark] .toolbar-search-add:hover{box-shadow:0 12px 22px #d1483e54!important}body[data-theme=dark] .toolbar-compact-button-active{background:#782b26d1;border-color:#f5a7a033;color:#fff3f0}body[data-theme=dark] .toolbar-icon-button-active{background:#782b26c7;border-color:#f5a7a02e;color:#fff3f0}body[data-theme=dark] .group-refresh-indicator{background:transparent;border-color:transparent;color:#99aebe}body[data-theme=dark] .group-refresh-indicator i{color:#8fb8a1}body[data-theme=dark] .group-refresh-indicator-active{background:transparent;border-color:transparent;color:#e0b8b2}body[data-theme=dark] .group-refresh-indicator-active i{color:#f0aba2}body[data-theme=dark] .auth-sync-pill{background:#1d3a33f0}body[data-theme=dark] .auth-sync-pill-offline{background:#7a1f1ff0}body[data-theme=dark] .toolbar-sync-text-online{color:#9ad0af}body[data-theme=dark] .toolbar-sync-text-offline{color:#f2a39a}body[data-theme=dark] .auth-user-link:hover,body[data-theme=dark] .toolbar-ghost-button:hover{border-color:#a4b4c824;box-shadow:0 8px 14px #00000024}body[data-theme=dark] .tools-menu-section+.tools-menu-section{border-top-color:#a4b4c814}body[data-theme=dark] .tools-menu-section-danger .tools-menu-heading{color:#f3a098}body[data-theme=dark] .tools-install-help summary,body[data-theme=dark] .tools-install-help p,body[data-theme=dark] .tools-install-help ol{color:#dce6f2}body[data-theme=dark] .add-recipe-panel,body[data-theme=dark] .toggle-btn,body[data-theme=dark] .card-scan-file-chip,body[data-theme=dark] .extract-image-preview{background:#141f2be0;border-color:#a4b4c82e;color:#eef4fb}body[data-theme=dark] .add-recipe-source-panel{background:linear-gradient(180deg,#231b1eeb,#141f2be6)}body[data-theme=dark] .add-recipe-panel-header h3,body[data-theme=dark] .extract-preview-header strong,body[data-theme=dark] .toggle-btn{color:#eef4fb}body[data-theme=dark] .add-recipe-subtitle,body[data-theme=dark] .add-recipe-panel-header p,body[data-theme=dark] .extract-notice,body[data-theme=dark] .extract-meta,body[data-theme=dark] .card-scan-helper,body[data-theme=dark] .card-scan-file-chip,body[data-theme=dark] .field-helper-text{color:#9fb2c5}body[data-theme=dark] .toggle-btn:hover{border-color:#a4b4c84d;box-shadow:var(--shadow-interactive)}body[data-theme=dark] .toggle-btn-active{background:#58221ef0;border-color:#f5a7a04d;color:#fff1ef}body[data-theme=dark] .extract-preview-stats span{background:#2a3d50c7;border-color:#72a58a3d;color:#d7e3ef}body[data-theme=dark] .extract-review-banner,body[data-theme=dark] .card-scan-preview-card,body[data-theme=dark] .recipe-origin-badge,body[data-theme=dark] .card-scan-preview-file-state{background:#141f2be0;border-color:#a4b4c82e;color:#eef4fb}body[data-theme=dark] .extract-review-banner-text strong,body[data-theme=dark] .recipe-origin-badge{color:#eef4fb}body[data-theme=dark] .extract-review-banner-text p,body[data-theme=dark] .card-scan-tips-grid span,body[data-theme=dark] .recipe-origin-badge-meta,body[data-theme=dark] .card-scan-prep-note{color:#9fb2c5}body[data-theme=dark] .extract-review-banner-stats span,body[data-theme=dark] .card-scan-tips-grid span{background:#2a3d50c7;border-color:#a4b4c829}body[data-theme=dark] .extract-review-banner-review{background:#45381257;border-color:#e4b44d42}body[data-theme=dark] .extract-review-banner-strong{background:#1c3530e6;border-color:#72a58a3d}body[data-theme=dark] .add-recipe-journey-shell,body[data-theme=dark] .recipe-type-toggle,body[data-theme=dark] .add-recipe-field-group,body[data-theme=dark] .extract-actions-card,body[data-theme=dark] .extract-preview-footer,body[data-theme=dark] .add-recipe-footer{background:#141f2be0;border-color:#a4b4c82e;box-shadow:inset 0 1px #ffffff0d}body[data-theme=dark] .add-recipe-journey-step{background:#121c27e6;border-color:#a4b4c824}body[data-theme=dark] .add-recipe-journey-step-current{background:linear-gradient(180deg,#431f1eeb,#24181feb);border-color:#f5a7a03d;box-shadow:0 18px 30px #0003}body[data-theme=dark] .add-recipe-journey-step-complete{background:linear-gradient(180deg,#1d342ef0,#182a26f0);border-color:#72a58a38}body[data-theme=dark] .add-recipe-journey-number{color:#ffd5cf;background:#e55c4d29;border-color:#f5a7a033}body[data-theme=dark] .add-recipe-panel-kicker{color:#b2c2d3;background:#2a3d50b8;border-color:#a4b4c81f}body[data-theme=dark] .recipe-type-toggle legend,body[data-theme=dark] .form-group-fieldset legend,body[data-theme=dark] .add-recipe-journey-copy strong,body[data-theme=dark] .add-recipe-field-group-header h4,body[data-theme=dark] .add-recipe-footer-copy strong,body[data-theme=dark] .extract-actions-card-copy strong,body[data-theme=dark] .extract-preview-heading strong{color:#eef4fb}body[data-theme=dark] .add-recipe-journey-copy p,body[data-theme=dark] .add-recipe-field-group-header p,body[data-theme=dark] .add-recipe-footer-copy p,body[data-theme=dark] .extract-preview-footer-copy p,body[data-theme=dark] .extract-actions-card-copy p{color:#9fb2c5}body[data-theme=dark] .extract-warning-box strong,body[data-theme=dark] .extract-suspicious-heading,body[data-theme=dark] .extract-suspicious-item small{color:#f4d58a}body[data-theme=dark] .recipe-origin-badge-shared{background:#22394ef0;border-color:#5896cc3d;color:#cfe7ff}body[data-theme=dark] .recipe-origin-badge-group{background:#1c3530f0;border-color:#72a58a3d;color:#d9eee2}body[data-theme=dark] .recipe-origin-badge-readonly{background:#533d10f0;border-color:#f4be6642;color:#fde4a6}body[data-theme=dark] .recipe-origin-badge-editable{background:#58221ef0;border-color:#f5a7a042;color:#fff1ef}body[data-theme=dark] .recipe-origin-badge-mine{background:#352c61f0;border-color:#a190ff3d;color:#e2dbff}body[data-theme=dark] .checkbox-item{background:#141f2bd1;border-color:#a4b4c829}body[data-theme=dark] .checkbox-item:has(input:checked){background:#58221ed6;border-color:#f5a7a047;box-shadow:0 12px 22px #0003}body[data-theme=dark] .checkbox-item label{color:#eef4fb}body[data-theme=dark] .group-activity-item{background:#141f2be0;border-color:#a4b4c82e}body[data-theme=dark] .group-activity-icon{background:#1c3530e6;color:#8fd0aa}body[data-theme=dark] .group-activity-content strong{color:#eef4fb}body[data-theme=dark] .group-activity-content small,body[data-theme=dark] .group-activity-time{color:#9fb2c5}body[data-theme=dark] .shopping-list-meta-pill{background:#141f2be0;border-color:#a4b4c82e;color:#dce6f2}body[data-theme=dark] .shopping-panel{background:#141f2be0;border-color:#a4b4c82e}body[data-theme=dark] .shopping-panel summary{color:#eef4fb}body[data-theme=dark] .shopping-panel-note{color:#9fb2c5}body[data-theme=dark] .shopping-group-heading{background:#1c3530e6;border-color:#72a58a3d;color:#d9eee2}body[data-theme=dark] .extract-warning-box{background:#45381266;border-color:#e4b44d4d}body[data-theme=dark] .extract-warning-box p{color:#f6d684}body[data-theme=dark] .add-recipe-modal{background:linear-gradient(180deg,#121c27fa,#0e1620fa);border-color:#a4b4c833;box-shadow:0 28px 56px #00000080;scrollbar-color:rgba(114,165,138,.45) rgba(18,28,39,.55)}body[data-theme=dark] .add-recipe-modal::-webkit-scrollbar-track{background:#121c278c}body[data-theme=dark] .add-recipe-modal::-webkit-scrollbar-thumb{border-color:#121c27b8}@media(max-width:1023px){.container{--container-gutter: var(--space-4)}.shopping-builder-hero{grid-template-columns:1fr}.shopping-list-toolbar,.shopping-builder-controls{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.shopping-toolbar-section,.shopping-review-banner,.shopping-review-card{padding:.84rem .86rem;border-radius:18px}.shopping-export-signal,.shopping-panel{border-radius:18px}.shopping-review-banner{grid-template-columns:1fr}.shopping-review-banner-stats{justify-content:flex-start}.shopping-list-action-row,.shopping-list-toolbar-actions,.shopping-unit-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.shopping-list-toolbar-actions{align-items:stretch}.controls-primary-action{flex:0 0 auto;width:auto}.controls-primary-action .toolbar-primary-cta{width:auto;min-width:146px}.controls-status-cluster,.controls-utility-cluster{justify-content:flex-start}.auth-user-email{max-width:260px;white-space:normal}.auth-user-link{align-items:flex-start}.shopping-list-toolbar-actions .btn,.shopping-list-action-row .btn,.shopping-unit-toggle .btn{width:100%;min-width:0}.field-tools-row{display:grid;gap:.4rem}.field-tools-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.field-tools-actions .btn{width:100%}.add-recipe-modal{width:94%;max-height:92vh;margin:4vh auto;padding:1rem .95rem}.add-recipe-form{gap:.7rem}.add-recipe-panel{padding:.8rem;border-radius:16px}.toggle-buttons,.add-recipe-journey{grid-template-columns:1fr}.recipe-type-toggle,.add-recipe-field-group,.extract-actions-card,.extract-preview-footer,.add-recipe-footer{padding:.78rem .8rem;border-radius:18px}.toggle-btn{justify-content:flex-start;min-height:48px}.extract-actions-card,.extract-preview-footer,.add-recipe-footer{grid-template-columns:1fr}.extract-preview-actions,.add-recipe-submit-row{display:grid;grid-template-columns:1fr}.extract-preview-actions .btn,.add-recipe-submit-row .btn{width:100%;min-width:0}.extract-actions{justify-content:stretch}.extract-actions .btn{width:100%}.extract-preview-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.extract-preview-stats span{text-align:center}.extract-review-banner-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.extract-review-banner-stats span{text-align:center}.controls{padding:var(--space-4);border-radius:var(--radius-lg)}.controls+.recipe-grid{margin-top:var(--space-4)}.controls-row-primary,.controls-row-search,.controls-row-filters{align-items:stretch}.view-toggle-group,.controls-status-cluster,.controls-search-wrap,.controls-primary-action,.controls-filter-stack,.controls-utility-cluster{width:100%}.view-toggle-group{justify-content:stretch;padding:.18rem;gap:.22rem;border-radius:13px;border-color:#5a697a1a;background:#ffffff57;box-shadow:inset 0 1px #ffffff73}.view-toggle-group .toolbar-tab{flex:1 1 0;min-width:0;min-height:40px;padding:.5rem .62rem;font-size:.77rem;gap:.32rem;border-radius:10px}.view-toggle-group .toolbar-tab.btn-primary{box-shadow:0 4px 10px #cd53461f}.controls-status-cluster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;align-items:stretch;justify-content:stretch}.controls-status-cluster>.auth-user-email{grid-column:1 / -1;width:100%;max-width:none}.controls-status-cluster>.auth-sync-pill,.controls-status-cluster>.group-invites-pill,.controls-status-cluster>.auth-config-note{width:100%}.controls-status-cluster .auth-sync-pill,.controls-status-cluster .group-invites-pill{min-height:36px;padding:.45rem .62rem;border-radius:12px;font-size:.72rem;justify-content:flex-start}.controls-status-cluster .group-invites-count{margin-left:auto;min-width:1rem;height:1rem;font-size:.64rem}.auth-user-email{min-height:48px;padding:.52rem .68rem;border-radius:14px;border-color:#5a697a24;white-space:normal}.auth-user-link{align-items:flex-start;gap:.52rem}.auth-user-avatar{width:28px;height:28px}.auth-user-meta{gap:.08rem}.auth-user-kicker{font-size:.64rem;letter-spacing:.07em;text-transform:uppercase;opacity:.82}.auth-user-label{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;line-height:1.2;font-size:.8rem}.controls-row-search{gap:.8rem}.controls-primary-action .toolbar-primary-cta{width:100%}.controls-row-filters{gap:.75rem}.controls-utility-cluster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;align-items:stretch;justify-content:stretch}.controls-utility-cluster>.results-count{grid-column:1 / -1}.controls-utility-cluster .toolbar-compact-button,.controls-utility-cluster .toolbar-tools-button,.controls-utility-cluster .results-count{min-height:40px;border-radius:12px}.controls-utility-cluster .toolbar-compact-button,.controls-utility-cluster .toolbar-tools-button{padding:.5rem .68rem;font-size:.76rem;justify-content:flex-start}.controls-utility-cluster .results-count{padding:.42rem .64rem;justify-content:flex-start}.toolbar-select-field,.scope-select-wrap,.group-scope-controls{width:100%}.toolbar-select-field .category-select,.toolbar-group-select,.recipe-scope-select,.group-scope-controls .btn{width:100%;min-width:0}.group-scope-controls{display:grid;grid-template-columns:minmax(0,1fr)}.group-refresh-indicator{width:100%;justify-content:center}.tools-menu{margin-left:auto}.tools-menu-panel{right:0;width:min(380px,calc(100vw - 2rem))}}@media(max-width:900px){.transfer-preview-hero,.transfer-preview-toolbar,.profile-top-rail,.profile-account-summary{grid-template-columns:1fr}.profile-avatar-stack{justify-items:start;padding-bottom:.85rem}.profile-avatar-row{justify-self:start}.profile-avatar-actions-menu{left:0;right:auto;transform:none;min-width:min(220px,calc(100vw - 4rem));max-width:calc(100vw - 4rem)}}@media(max-width:640px){.modal-content{padding:.95rem .85rem .9rem;border-radius:20px;clip-path:inset(0 round 20px)}.modal-header-block{padding-right:2.8rem}.modal-close-button{right:.85rem;top:.85rem;width:38px;height:38px}.modal-subtitle,.profile-modal-subtitle,.share-modal-subtitle,.import-preview-subtitle{font-size:.9rem}.modal-helper-note,.share-helper-note{width:100%}.shopping-builder-hero,.shopping-builder-controls,.shopping-list-toolbar{gap:.6rem}.shopping-list-toolbar,.shopping-builder-controls{grid-template-columns:1fr}.shopping-builder-hero,.shopping-export-signal,.shopping-toolbar-section,.shopping-review-banner,.shopping-review-card,.shopping-panel{padding:.74rem .76rem}.shopping-panel{border-radius:18px}.shopping-panel summary{font-size:.88rem}.shopping-panel-summary{grid-template-columns:auto minmax(0,1fr);align-items:start}.shopping-panel-summary-count{grid-column:2;justify-self:flex-start}.shopping-suggestion-item,.shopping-history-item,.shopping-section-order-item{grid-template-columns:1fr}.shopping-history-item,.shopping-section-order-item{display:grid;align-items:stretch}.shopping-list-meta-pills,.shopping-list-toolbar-actions,.shopping-list-action-row,.shopping-unit-toggle,.shopping-export-signal-meta,.shopping-review-banner-stats{display:grid;grid-template-columns:1fr}.shopping-list-meta-pill,.shopping-group-heading,.shopping-panel-summary-count,.shopping-export-signal-meta span,.shopping-review-banner-stats span,.shopping-suggestion-badge{width:100%;justify-content:center}.shopping-pantry-btn{margin-left:0;width:100%}.shopping-list-toolbar-actions .btn,.shopping-list-action-row .btn,.shopping-unit-toggle .btn{min-height:44px}.group-activity-item{grid-template-columns:auto minmax(0,1fr)}.group-activity-time{grid-column:2;margin-top:-.02rem}.category-checkboxes{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.checkbox-item{min-height:44px}.card-scan-preview-card,.extract-review-banner,.add-recipe-journey-step{padding:.68rem .7rem}.card-scan-tips-grid,.recipe-origin-badges{gap:.34rem}.card-scan-tips-grid span,.recipe-origin-badge,.extract-review-banner-stats span{font-size:.72rem}.extract-review-banner-stats{grid-template-columns:1fr}.recipe-origin-badges-focused{margin:-.1rem 0 .15rem}.focused-recipe-panel{gap:.82rem;padding:.92rem .82rem .95rem;border-radius:var(--radius-xl)}.focused-recipe-topbar{flex-direction:column;align-items:stretch}.focused-recipe-close{width:100%;min-height:44px}.focused-recipe-summary-has-image,.focused-recipe-content-grid{grid-template-columns:1fr}.focused-recipe-action-group .btn{flex-basis:100%}.recipe-actions .btn{min-height:42px}.add-recipe-modal{width:100%;padding:.92rem .82rem .95rem;border-radius:var(--radius-lg)}.add-recipe-subtitle{margin-bottom:.8rem;font-size:.86rem}.recipe-type-toggle>label,.add-recipe-panel-header h3{font-size:.92rem}.add-recipe-panel-header p,.extract-notice,.card-scan-helper{font-size:.79rem}.add-recipe-panel{padding:.75rem .74rem}.toggle-btn{min-height:46px;padding:.68rem .72rem;font-size:.9rem}.extract-actions .btn{min-height:44px}.extract-preview-stats{grid-template-columns:1fr}.extract-image-preview img{max-height:180px}.transfer-preview-meta,.transfer-preview-signal-meta,.transfer-preview-footer-actions,.transfer-preview-item-actions,.import-preview-actions,.meal-planner-meta{display:grid;grid-template-columns:1fr}.transfer-preview-meta-pill,.transfer-preview-signal-meta span,.transfer-preview-review-count,.meal-planner-meta-pill,.meal-planner-status-pill{width:100%;justify-content:flex-start}.transfer-preview-footer-actions .btn,.transfer-preview-item-actions .btn,.import-preview-actions .btn{width:100%;flex-basis:auto}.meal-slot{padding:.82rem}.meal-slot-select{min-height:52px}.collab-overview-pill,.collab-access-badge,.collab-trust-note,.share-edit-toggle{min-height:36px;white-space:normal}.share-edit-toggle{align-items:flex-start}.back-to-top-btn,.mobile-add-fab{right:max(12px,env(safe-area-inset-right,0px) + 12px)}.controls{gap:.78rem;padding:var(--space-3)}.controls-status-cluster,.controls-utility-cluster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.controls-status-cluster>.auth-sync-pill,.controls-status-cluster>.group-invites-pill,.controls-status-cluster>.auth-user-email,.controls-status-cluster>.auth-config-note,.controls-utility-cluster>.toolbar-compact-button,.controls-utility-cluster>.tools-menu{width:100%}.controls-utility-cluster>.results-count{grid-column:1 / -1}.controls-status-cluster .auth-user-email,.controls-status-cluster .group-invites-pill,.controls-status-cluster .auth-sync-pill,.controls-utility-cluster .toolbar-compact-button,.controls-utility-cluster .toolbar-tools-button{width:100%;justify-content:center}.auth-user-email{max-width:none}.toolbar-primary-cta{min-height:56px}.toolbar-search-box input{min-height:56px;font-size:1rem}.tools-menu{margin-left:0}.tools-menu-panel{left:0;right:0;width:auto;max-width:100%;padding:.45rem;box-sizing:border-box;overflow-x:clip}.tools-menu-section,.tools-menu-items,.tools-menu-button,.tools-install-help,.tools-install-help summary,.tools-install-help p,.tools-install-help ol{min-width:0}.tools-menu-button,.tools-install-help summary{white-space:normal;overflow-wrap:anywhere}.tools-install-help{padding:.68rem .72rem}.tools-install-help ol{padding-left:1rem;list-style-position:outside}.controls-account-row{grid-template-columns:minmax(0,1fr) auto auto}.controls-row-bottom{justify-content:flex-end}.toolbar-search-box input,.toolbar-select-field .category-select,.toolbar-group-select,.toolbar-scope-button,.toolbar-icon-button,.toolbar-tools-button,.auth-user-email,.group-invites-pill{min-height:42px}.controls .tools-menu-panel{left:auto;right:0;width:min(300px,calc(100vw - 1rem));max-width:calc(100vw - 1rem)}.controls .scope-menu-panel{min-width:180px;width:min(240px,calc(100vw - 1rem))}}@media(max-width:980px){.header-content{grid-template-columns:1fr}.controls-primary-status{margin-left:0;justify-items:start}.controls-account-row{width:100%}.controls-status-cluster{justify-content:flex-start}.results-count{order:-1}}@media(max-width:700px){.header{margin:12px 12px 10px;border-radius:24px}.header-container{padding-inline:8px}.header-content{grid-template-columns:1fr;gap:.85rem;padding:.8rem 0}.header-brand{width:100%;flex-direction:column;text-align:left;gap:.8rem;padding:.85rem .95rem}.header-logo{width:74px;height:74px;padding:.5rem}.header-title-block{align-items:flex-start}.header-title{font-size:clamp(1.85rem,8vw,2.35rem)}.header-tagline{margin-top:.28rem;font-size:.92rem;letter-spacing:.03em}.header-copy{font-size:.9rem}.header-meta{gap:.45rem}.header-meta-item{min-height:34px;padding:.4rem .68rem;font-size:.77rem}.header-prompt-card,.header-shell-note,.header-prompt-actions{width:100%}.header-prompt-actions .btn{flex:1 1 0}.controls{padding:.82rem .82rem .76rem}.view-toggle-group{width:100%;padding:.14rem;gap:.18rem;border-radius:12px;background:#ffffff6b}.toolbar-tab{flex:1 1 0;min-width:0;min-height:40px;padding:.56rem .66rem;font-size:.79rem;gap:.32rem;border-radius:10px}.view-toggle-group .toolbar-tab.btn-primary{box-shadow:0 5px 12px #cd534624}.controls-primary-nav,.controls-primary-status,.controls-search-wrap,.controls-primary-action,.controls-filter-stack,.group-scope-controls,.auth-user-email{width:100%;max-width:none}.controls-row-scope,.controls-row-group,.controls-row-filters,.controls-row-bottom{width:100%}.controls-row-bottom{display:flex;flex-wrap:nowrap;align-items:center;gap:.48rem}.controls-primary-status{margin-left:0;justify-items:start}.controls-account-row{grid-template-columns:minmax(0,1fr) auto auto;gap:.38rem}.toolbar-sync-text{font-size:.68rem}.toolbar-scope-button{width:auto}.group-scope-controls-compact{grid-template-columns:minmax(0,1fr) auto}.toolbar-compact-button,.toolbar-icon-button,.toolbar-tools-button,.toolbar-group-manage-button{width:38px;min-width:38px;min-height:38px}.controls .tools-menu-panel,.controls .scope-menu-panel{left:auto;right:0;width:min(280px,calc(100vw - 1rem));max-width:calc(100vw - 1rem)}.controls .scope-menu-panel{left:0;right:auto;min-width:180px;width:min(240px,calc(100vw - 1rem))}.controls .tools-menu-button,.controls .scope-menu-list .tools-menu-button,.controls .tools-install-help summary{white-space:nowrap;overflow-wrap:normal;word-break:normal}.results-count-inline{font-size:.72rem}.controls-status-cluster,.controls-utility-cluster{justify-content:stretch}.controls-status-cluster,.controls-utility-cluster{align-items:stretch}.controls-status-cluster>.auth-user-email{grid-column:1 / -1}.controls-status-cluster .auth-sync-pill,.controls-status-cluster .group-invites-pill{min-height:40px;padding:.55rem .7rem;border-radius:13px;font-size:.74rem;justify-content:flex-start}.controls-status-cluster .auth-sync-pill{gap:.35rem}.controls-status-cluster .group-invites-count{margin-left:auto;min-width:1.1rem;height:1.1rem;font-size:.68rem}.auth-user-link{align-items:flex-start;gap:.6rem}.controls-utility-cluster .toolbar-compact-button,.controls-utility-cluster .toolbar-tools-button,.controls-utility-cluster .results-count{min-height:42px;border-radius:13px}.controls-utility-cluster .toolbar-compact-button,.controls-utility-cluster .toolbar-tools-button{padding:.58rem .78rem;font-size:.78rem;justify-content:flex-start}.controls-utility-cluster .results-count{padding:.48rem .72rem;justify-content:flex-start}.results-count,.group-invites-pill,.auth-sync-pill,.toolbar-ghost-button,.group-scope-controls .btn{width:100%;justify-content:center}.controls-row-bottom>.toolbar-compact-button{flex:0 0 38px;width:38px;min-width:38px;justify-content:center}.controls-row-bottom>.tools-menu{flex:1 1 auto;min-width:0}.controls-row-bottom>.tools-menu .toolbar-tools-button{width:100%;min-width:0;justify-content:center}.auth-user-email{justify-content:flex-start;white-space:nowrap;min-height:38px;padding:.42rem .56rem;border-radius:10px}.auth-user-avatar{width:32px;height:32px}.auth-user-meta{gap:.14rem}.auth-user-kicker{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.auth-user-label{white-space:nowrap;overflow:visible;text-overflow:clip;overflow-wrap:normal;line-height:1.25}.meal-planner-clear{width:100%}}.collab-overview-card{position:relative;display:grid;grid-template-columns:minmax(0,1.2fr) auto;gap:.95rem;padding:1rem 1.05rem;border-radius:22px;border:1px solid rgba(90,105,122,.14);background:linear-gradient(180deg,#fffbf7fa,#f6f0e7f5);box-shadow:0 16px 28px #4654651a;overflow:hidden}.collab-overview-card:before{content:"";position:absolute;inset:-36% -10% auto auto;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(229,92,77,.12),transparent 72%);pointer-events:none}.collab-overview-copy,.collab-permission-copy,.collab-section-copy{position:relative;z-index:1;min-width:0;display:grid}.collab-overview-copy{gap:.38rem}.collab-overview-kicker,.collab-section-kicker{margin:0;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-500)}.collab-overview-copy h3,.collab-section-copy h3,.collab-permission-copy strong{margin:0;color:var(--ink-900);line-height:1.12}.collab-overview-copy h3{font-size:clamp(1.08rem,1.8vw,1.28rem)}.collab-section-copy h3,.collab-permission-copy strong{font-size:1rem}.collab-overview-copy p:last-child,.collab-section-copy p:last-child,.collab-permission-copy p{margin:0;color:var(--ink-700);font-size:.88rem;line-height:1.58}.collab-overview-metrics{position:relative;z-index:1;display:flex;flex-wrap:wrap;align-content:flex-start;justify-content:flex-end;gap:.45rem}.collab-overview-pill,.collab-access-badge,.collab-trust-note{display:inline-flex;align-items:center;gap:.35rem;min-height:32px;padding:.34rem .65rem;border-radius:999px;border:1px solid rgba(90,105,122,.16);background:#ffffffb8;color:var(--ink-700);font-size:.75rem;font-weight:700;line-height:1.25;box-shadow:inset 0 1px #ffffffbd}.collab-overview-pill-strong,.collab-access-badge-success{color:var(--sage-700);border-color:#72a58a3d;background:#e2f1e9f0}.collab-access-badge-muted{color:var(--ink-600);background:#f4ede5f0}.collab-access-badge-warning,.collab-access-badge-warm{color:#8b5b12;border-color:#d6a64947;background:#fff5ddf5}.collab-section-intro{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.72rem;margin-bottom:.85rem}.collab-section-copy{gap:.26rem;max-width:58ch}.collab-trust-note{align-self:flex-start;max-width:min(100%,28rem);color:var(--ink-600);background:#faf6eff0}.collab-trust-note i{color:var(--tomato-600)}.collab-trust-note-danger{color:#8f2432;border-color:#bc304338;background:#ffeff2f0}.collab-permission-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.8rem;padding:.85rem .95rem;border-radius:18px;border:1px solid rgba(90,105,122,.14);background:linear-gradient(180deg,#fffbf7fa,#f8f3ecf0);box-shadow:inset 0 1px #fffc}.collab-permission-copy{gap:.3rem;max-width:38rem}.share-edit-toggle{justify-content:center;min-height:42px;padding:.58rem .82rem;border-radius:14px;border:1px solid rgba(90,105,122,.16);background:#ffffffd1;box-shadow:inset 0 1px #ffffffc7}.share-edit-toggle input{accent-color:var(--tomato-600)}.share-edit-toggle:focus-within,.import-preview-item:focus-within,.export-preview-item:focus-within,.shopping-list-recipe-item:focus-within,.shopping-list-ingredient-item:focus-within,.share-result-item:focus-within,.share-existing-item:focus-within,.checkbox-item:focus-within{box-shadow:var(--focus-ring)}.share-lookup-row{flex-wrap:wrap;align-items:center;gap:.55rem}.share-lookup-row select{flex:0 0 190px}.share-results,.share-existing,.share-existing-list,.group-activity-items{gap:.65rem}.share-result-item,.share-existing-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.85rem;border-radius:18px;border:1px solid rgba(90,105,122,.16);background:linear-gradient(180deg,#fffffff5,#f8f4eef0);padding:.82rem .9rem;box-shadow:inset 0 1px #fffc}.share-result-item{background:linear-gradient(180deg,#fffcf9fa,#f8f3ecf0)}.share-result-item .btn,.share-existing-item .btn{min-width:128px}.share-existing-item-shell{display:grid;gap:.6rem;min-width:0}.share-existing-meta-block{display:grid;gap:.35rem;padding-left:3rem}.collab-badge-row{display:flex;flex-wrap:wrap;gap:.42rem}.share-existing-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.45rem}.share-existing-actions select{min-width:196px}.group-danger-zone{margin-top:0;padding-top:0}.group-activity-item{gap:.8rem;border-radius:18px;background:linear-gradient(180deg,#fffffff5,#f8f4eef0);padding:.84rem .92rem}.group-activity-heading{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}.group-activity-content{gap:.28rem}.group-activity-time{align-self:center;padding:.22rem .52rem;border-radius:999px;border:1px solid rgba(90,105,122,.16);background:#ffffffb8}body[data-theme=dark] .collab-overview-card,body[data-theme=dark] .collab-permission-card,body[data-theme=dark] .share-edit-toggle,body[data-theme=dark] .share-result-item,body[data-theme=dark] .share-existing-item,body[data-theme=dark] .group-activity-item,body[data-theme=dark] .group-activity-time{border-color:#a4b4c833;background:#141f2be0;box-shadow:inset 0 1px #ffffff0f}body[data-theme=dark] .collab-overview-card:before{background:radial-gradient(circle,rgba(245,167,160,.12),transparent 72%)}body[data-theme=dark] .collab-overview-kicker,body[data-theme=dark] .collab-section-kicker{color:#9fb0c2}body[data-theme=dark] .collab-overview-copy h3,body[data-theme=dark] .collab-section-copy h3,body[data-theme=dark] .collab-permission-copy strong,body[data-theme=dark] .share-existing-meta-block strong,body[data-theme=dark] .group-activity-content strong{color:#eef3f8}body[data-theme=dark] .collab-overview-copy p:last-child,body[data-theme=dark] .collab-section-copy p:last-child,body[data-theme=dark] .collab-permission-copy p,body[data-theme=dark] .share-existing-meta-block small,body[data-theme=dark] .group-activity-content small,body[data-theme=dark] .share-empty,body[data-theme=dark] .group-activity-time{color:#b8c5d3}body[data-theme=dark] .collab-overview-pill,body[data-theme=dark] .collab-access-badge,body[data-theme=dark] .collab-trust-note{border-color:#a4b4c838;background:#1a2736eb;color:#cbd7e3;box-shadow:inset 0 1px #ffffff0a}body[data-theme=dark] .collab-overview-pill-strong,body[data-theme=dark] .collab-access-badge-success{color:#cfe9dc;border-color:#72a58a47;background:#234539b8}body[data-theme=dark] .collab-access-badge-warning,body[data-theme=dark] .collab-access-badge-warm{color:#f0d294;border-color:#d6a64947;background:#513a14b8}body[data-theme=dark] .collab-access-badge-muted{color:#b6c4d3;background:#232f3ee6}body[data-theme=dark] .collab-trust-note-danger{color:#f3c0c7;border-color:#bc304342;background:#541a27b3}body[data-theme=dark] .share-edit-toggle input{accent-color:#f08a7e}@media(max-width:900px){.collab-overview-card,.share-result-item,.share-existing-item{grid-template-columns:minmax(0,1fr)}.collab-overview-metrics,.share-existing-actions{justify-content:flex-start}}@media(max-width:640px){.collab-overview-card,.collab-permission-card,.share-result-item,.share-existing-item,.group-activity-item{padding:.76rem .8rem}.collab-section-intro,.share-existing-actions,.share-lookup-row{flex-direction:column;align-items:stretch}.share-lookup-row select,.share-lookup-row .btn,.share-existing-actions select,.share-result-item .btn,.share-existing-item .btn,.share-edit-toggle{width:100%}.share-existing-meta-block{padding-left:0}.group-activity-item{grid-template-columns:auto minmax(0,1fr)}.group-activity-time{grid-column:2;justify-self:start}}.privacy-page-shell{min-height:100vh;padding:48px 16px 64px;background:radial-gradient(circle at top left,rgba(229,92,77,.18),transparent 32%),radial-gradient(circle at top right,rgba(114,165,138,.18),transparent 28%),linear-gradient(180deg,#fcf8f2,#f7f2ea)}.privacy-page-card{width:min(820px,100%);margin:0 auto;padding:clamp(24px,4vw,44px);border-radius:28px;border:1px solid rgba(99,110,114,.18);background:#ffffffeb;box-shadow:0 20px 40px #1f29331f;color:#1f2933;line-height:1.65;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.privacy-page-eyebrow{display:inline-flex;align-items:center;gap:.6rem;margin-bottom:1rem;padding:.45rem .8rem;border-radius:999px;background:#d1483e1f;color:#d1483e;font-size:.9rem;font-weight:700;letter-spacing:.02em}.privacy-page-eyebrow-logo{width:24px;height:24px;border-radius:50%}.privacy-page-card h1{margin:0;font-size:clamp(2rem,4vw,3rem);line-height:1.1}.privacy-page-effective-date{margin:.9rem 0 0;color:#52606d}.privacy-page-card section+section{margin-top:2rem}.privacy-page-card h2{margin:0 0 .65rem;font-size:1.2rem}.privacy-page-card p,.privacy-page-card li{font-size:1rem}.privacy-page-card a{color:#d1483e;font-weight:600}.privacy-page-home-link{display:inline-block;margin-top:2rem;text-decoration:none}.privacy-page-home-link:hover,.privacy-page-home-link:focus-visible{text-decoration:underline}@media(max-width:640px){.privacy-page-shell{padding:20px 10px 28px}.privacy-page-card{border-radius:22px}}body[data-theme=dark] .privacy-page-shell{background:radial-gradient(circle at top left,rgba(153,65,57,.24),transparent 34%),radial-gradient(circle at top right,rgba(53,92,74,.24),transparent 30%),linear-gradient(180deg,#121a24,#0b131d)}body[data-theme=dark] .privacy-page-card{background:#121a24e6;border-color:#a4b4c842;box-shadow:0 22px 42px #00000052;color:#eef3f8}body[data-theme=dark] .privacy-page-effective-date{color:#c7d2df}body[data-theme=dark] .privacy-page-eyebrow{background:#d1685d29;color:#f0948c}body[data-theme=dark] .privacy-page-card a{color:#f0948c}
