/* Recipe preferences: the first-time card in the recipe library, the gear dialog and the Settings › Recipes card. Steppers and chips reuse recipe-discovery.css. */
.recipe-preferences-card{margin:14px 0 0;background:var(--surface-2);border:1px solid var(--line)}
.recipe-pref-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.recipe-pref-heading h3{margin:0}
.recipe-pref-heading p{font-size:14px;line-height:1.5;margin:6px 0 0;color:var(--muted)}
.recipe-pref-heading button{flex:0 0 auto;width:auto;min-height:40px;margin:0;padding:8px 16px;font-size:14px}
.recipe-pref-form{display:grid;gap:16px;margin-top:14px}
.recipe-pref-section h4{margin:0 0 8px;font-size:14px;color:var(--ink)}
.recipe-pref-form .recipe-pref-lead{margin:-4px 0 8px}
.recipe-pref-household{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.recipe-pref-field{display:grid;gap:6px;min-width:0}
.recipe-pref-field-label{font-size:13px;font-weight:600;color:var(--ink)}
.recipe-pref-form .recipe-family-stepper{padding:4px}
.recipe-pref-form .recipe-family-stepper button{flex-basis:40px;width:40px;min-height:40px;font-size:20px}
.recipe-pref-form .recipe-family-stepper input{font-size:18px;padding:6px 0!important}
.recipe-pref-form .small{font-size:12px;line-height:1.5;margin:8px 0 0}
.recipe-pref-form .auth-error{margin-top:8px}
.recipe-pref-chips{flex-wrap:wrap;overflow:visible;mask-image:none;padding:0;gap:6px}
.recipe-pref-chips::after{display:none}
.recipe-pref-row{display:grid;gap:6px;margin-top:12px}
.recipe-pref-row .recipe-chip-label{min-width:0;font-size:13px;color:var(--ink)}
.recipe-pref-allergens{margin-top:10px}
.recipe-pref-allergens summary{font-size:13px;font-weight:600;color:var(--ink);cursor:pointer;padding:6px 0}
.recipe-pref-allergens .recipe-pref-chips{padding:8px 0 4px}
.recipe-pref-notice{margin:10px 0 0;padding:10px 12px;border-radius:12px;background:var(--warn-bg);color:var(--warn);font-size:13px;line-height:1.5}
dialog#recipe-preferences-dialog{width:min(520px,calc(100vw - 32px));max-height:calc(100dvh - 32px);box-sizing:border-box;padding:24px;border-radius:24px;overflow:auto}
#recipe-preferences-dialog header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}
#recipe-preferences-dialog h2{font-size:22px;line-height:1.2;margin:0}
#recipe-preferences-dialog header button{width:auto;min-width:40px;min-height:40px;padding:0;margin:0;font-size:24px}
.recipe-pref-actions{display:flex;justify-content:flex-end;margin-top:18px}
.recipe-pref-actions button{width:auto;min-height:44px;margin:0;padding:10px 20px}
.recipe-prefs-gear{position:relative;flex:0 0 50px;display:inline-flex;align-items:center;justify-content:center;width:50px;min-height:50px;padding:8px;margin:0;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);box-shadow:none}
.recipe-prefs-gear svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.recipe-prefs-gear[data-active=true]{background:var(--tint);color:var(--brand)}
.recipe-prefs-dot{position:absolute;top:7px;right:8px;width:9px;height:9px;border-radius:50%;background:var(--bad-fill);border:2px solid var(--glass-2);box-sizing:content-box}
.recipe-prefs-gear:focus-visible{outline:2px solid var(--brand);outline-offset:1px}
.recipe-hidden-note{display:flex;align-items:center;flex-wrap:wrap;gap:2px 8px;margin:-6px 0 12px;font-size:13px;color:var(--muted)}
.recipe-hidden-note button{width:auto;min-height:32px;margin:0;padding:4px 2px;font-size:13px;color:var(--brand);text-decoration:underline;text-underline-offset:3px}
.recipe-hidden-detail{display:flex;align-items:center;flex-wrap:wrap;gap:2px 8px;margin:0 0 12px;padding:10px 12px;border-radius:12px;background:var(--warn-bg);color:var(--warn);font-size:13px}
.recipe-hidden-detail button{width:auto;min-height:32px;margin:0;padding:4px 2px;font-size:13px;color:var(--warn);text-decoration:underline;text-underline-offset:3px}
.recipe-family-default{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0 0;font-size:13px;font-weight:600;color:var(--ink)}
.recipe-family-default button{width:auto;min-height:36px;margin:0;padding:6px 12px;font-size:13px;font-weight:600}
@media(max-width:340px){.recipe-pref-household{grid-template-columns:1fr}}
@media(max-width:400px){.recipe-pref-heading{flex-direction:column}.recipe-pref-heading button{align-self:flex-end}}

/* Compact controls: filters open on demand, selected chips remain visible below. */
.recipe-prefs-gear{width:auto!important;flex:0 0 auto;min-width:44px;padding:10px 12px;gap:7px}
.recipe-prefs-gear svg{flex:0 0 18px;width:18px;height:18px}
.recipe-prefs-label{font-size:12px;font-weight:750}
.recipe-filters>summary{list-style:none;cursor:pointer;min-height:44px;margin:0}
.recipe-filters>summary::-webkit-details-marker{display:none}
.recipe-filters>summary>svg{transition:transform .18s}
.recipe-filters[open]>summary>svg{transform:rotate(90deg)}
.recipe-filters-body{padding-top:10px}
.recipe-filters-body>.recipe-filters-clear{display:block;margin:0 0 10px auto}
[data-filter-count]:empty{display:none}
[data-filter-count]{min-width:21px;text-align:center;border-radius:20px;background:var(--lime);color:var(--on-accent);padding:2px 6px;font-size:12px}
#storage-warning{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
#storage-warning[hidden]{display:none}
#storage-warning>span{flex:1 1 240px}
#sync-recovery-dialog{max-width:460px}
#sync-recovery-dialog form{display:grid;gap:14px}
#sync-recovery-dialog [role=alert]{color:var(--bad)}

@media(max-width:360px){.food-navigation{gap:6px!important}.recipe-prefs-gear{padding:8px;gap:5px}.recipe-prefs-label{font-size:11px}}
