.page-module__Zo4guG__header{gap:3rem;max-width:80rem;margin:auto;padding:2rem 1rem;display:flex}.page-module__Zo4guG__image{border-radius:var(--radius-md);flex-shrink:0;width:28rem;height:20rem;position:relative;overflow:hidden}.page-module__Zo4guG__header img{object-fit:cover}.page-module__Zo4guG__headerText{max-width:40rem;padding:.5rem 0 0}.page-module__Zo4guG__titleRow{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.page-module__Zo4guG__headerText h1{margin:0;font-size:2.5rem;line-height:1.15}.page-module__Zo4guG__creator{color:var(--color-text-muted);margin:.5rem 0 .75rem;font-size:1rem}.page-module__Zo4guG__creator a{font-weight:600}.page-module__Zo4guG__summary{color:var(--color-text-muted);margin:1rem 0 0;font-size:1.0625rem;line-height:1.6}.page-module__Zo4guG__mealInfo{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);flex-wrap:wrap;gap:1.5rem;margin-top:1.5rem;padding:1rem 0;display:flex}.page-module__Zo4guG__infoItem{flex-direction:column;gap:.15rem;font-size:.9375rem;display:flex}.page-module__Zo4guG__infoLabel{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);font-size:.75rem;font-weight:600}.page-module__Zo4guG__infoHighlight{color:var(--color-accent);font-weight:600}.page-module__Zo4guG__difficulty{font-weight:600}.page-module__Zo4guG__main{max-width:60rem;margin:2rem auto 4rem;padding:0 1rem}.page-module__Zo4guG__section{margin-bottom:3rem}.page-module__Zo4guG__section h2{border-bottom:2px solid var(--color-accent);margin-bottom:1rem;padding-bottom:.5rem;font-size:1.5rem;display:inline-block}.page-module__Zo4guG__ingredientsList{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.5rem 2rem;list-style:none}.page-module__Zo4guG__ingredientsList li{border-bottom:1px solid var(--color-border);padding:.75rem 0;font-size:1.0625rem}.page-module__Zo4guG__ingredientsList li:last-child{border-bottom:none}.page-module__Zo4guG__instructions{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1rem 2rem;font-size:1.0625rem;line-height:1.7;list-style-position:outside}.page-module__Zo4guG__instructions li{padding:.75rem 0 .75rem .5rem}.page-module__Zo4guG__instructions li:not(:last-child){border-bottom:1px solid var(--color-border)}@media (max-width:768px){.page-module__Zo4guG__header{flex-direction:column;padding:1.5rem 1rem}.page-module__Zo4guG__image{width:100%;height:15rem}.page-module__Zo4guG__headerText h1{font-size:1.875rem}.page-module__Zo4guG__mealInfo{gap:1rem}.page-module__Zo4guG__ingredientsList,.page-module__Zo4guG__instructions{padding:.5rem 1.25rem}}
.star-rating-module__ivDb5q__stars{align-items:center;gap:.5rem;display:inline-flex}.star-rating-module__ivDb5q__icons{letter-spacing:.1rem;font-size:1rem;display:inline-flex}.star-rating-module__ivDb5q__filled{color:var(--color-gold)}.star-rating-module__ivDb5q__empty{color:var(--color-border-strong)}.star-rating-module__ivDb5q__count{color:var(--color-text-muted);font-size:.8125rem}.star-rating-module__ivDb5q__sm .star-rating-module__ivDb5q__icons{font-size:.8125rem}.star-rating-module__ivDb5q__sm .star-rating-module__ivDb5q__count{font-size:.75rem}.star-rating-module__ivDb5q__lg .star-rating-module__ivDb5q__icons{font-size:1.375rem}.star-rating-module__ivDb5q__lg .star-rating-module__ivDb5q__count{font-size:.9375rem}
.favorite-button-module__N2Xfva__button{border:1px solid var(--color-border-strong);background:var(--color-surface);width:2.25rem;height:2.25rem;color:var(--color-text-muted);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;transition:color .15s,border-color .15s,transform .15s;display:inline-flex}.favorite-button-module__N2Xfva__button:hover{color:var(--color-accent);border-color:var(--color-accent)}.favorite-button-module__N2Xfva__button:active{transform:scale(.92)}.favorite-button-module__N2Xfva__active{color:var(--color-accent);border-color:var(--color-accent)}
.meal-item-module__iEm1tq__meal{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);flex-direction:column;height:100%;transition:box-shadow .2s,transform .2s;display:flex;overflow:hidden}.meal-item-module__iEm1tq__meal:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.meal-item-module__iEm1tq__imageLink{display:block}.meal-item-module__iEm1tq__image{background:var(--color-surface-alt);height:12rem;position:relative}.meal-item-module__iEm1tq__meal img{object-fit:cover}.meal-item-module__iEm1tq__body{flex-direction:column;flex:1;gap:.35rem;padding:1.25rem;display:flex}.meal-item-module__iEm1tq__headerRow{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.meal-item-module__iEm1tq__body h2{margin:0;font-size:1.25rem;line-height:1.3}.meal-item-module__iEm1tq__body h2 a{color:var(--color-text)}.meal-item-module__iEm1tq__creator{color:var(--color-text-muted);margin:0;font-size:.8125rem}.meal-item-module__iEm1tq__summary{color:var(--color-text-muted);flex:1;margin:.35rem 0 0;font-size:.9375rem;line-height:1.5}.meal-item-module__iEm1tq__actions{margin-top:1rem}.meal-item-module__iEm1tq__link{font-size:.875rem;font-weight:600}
.meals-filter-module__i9yM-a__filterContainer{width:90%;max-width:var(--content-width);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);margin:0 auto 2rem;padding:1.25rem 1.5rem}.meals-filter-module__i9yM-a__searchBox{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.meals-filter-module__i9yM-a__searchInput{background:var(--color-bg);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-text);flex:1;padding:.65rem 1rem;font-size:.9375rem}.meals-filter-module__i9yM-a__searchInput:focus{border-color:var(--color-accent);outline:none}.meals-filter-module__i9yM-a__status{color:var(--color-text-muted);min-width:5.5rem;font-size:.8125rem}.meals-filter-module__i9yM-a__filters{flex-wrap:wrap;align-items:flex-end;gap:1rem;display:flex}.meals-filter-module__i9yM-a__filterGroup{flex-direction:column;flex:1;gap:.35rem;min-width:150px;display:flex}.meals-filter-module__i9yM-a__filterGroup label{color:var(--color-text-muted);font-size:.8125rem;font-weight:600}.meals-filter-module__i9yM-a__select{background:var(--color-bg);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;padding:.6rem .75rem;font-size:.9375rem}.meals-filter-module__i9yM-a__select:focus{border-color:var(--color-accent);outline:none}.meals-filter-module__i9yM-a__clearButton{color:var(--color-text-muted);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);cursor:pointer;background:0 0;align-self:flex-end;padding:.6rem 1.25rem;font-size:.875rem;font-weight:600}.meals-filter-module__i9yM-a__clearButton:hover:not(:disabled){border-color:var(--color-text);color:var(--color-text)}.meals-filter-module__i9yM-a__clearButton:disabled{opacity:.6;cursor:not-allowed}@media (max-width:768px){.meals-filter-module__i9yM-a__filterContainer{padding:1rem}.meals-filter-module__i9yM-a__searchBox,.meals-filter-module__i9yM-a__filters{flex-direction:column;align-items:stretch}.meals-filter-module__i9yM-a__filterGroup{min-width:100%}.meals-filter-module__i9yM-a__clearButton{align-self:stretch;width:100%}}
.pagination-module__pawPgG__pagination{font-family:var(--font-sans);justify-content:center;align-items:center;gap:1.5rem;margin:3rem auto 1rem;display:flex}.pagination-module__pawPgG__step{color:var(--color-text);padding:.5rem .25rem;font-size:.875rem;font-weight:600;text-decoration:none}.pagination-module__pawPgG__step[aria-disabled=true]{color:var(--color-text-muted);pointer-events:none;opacity:.5}.pagination-module__pawPgG__step:hover{color:var(--color-accent)}.pagination-module__pawPgG__pages{align-items:center;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.pagination-module__pawPgG__pageItem{align-items:center;display:flex}.pagination-module__pawPgG__gap{color:var(--color-text-muted);padding:0 .35rem}.pagination-module__pawPgG__page{min-width:2.25rem;height:2.25rem;color:var(--color-text);border-radius:999px;justify-content:center;align-items:center;font-size:.875rem;text-decoration:none;display:inline-flex}.pagination-module__pawPgG__page:hover{background:var(--color-surface-alt)}.pagination-module__pawPgG__current{background:var(--color-accent);color:#fff;font-weight:600}.pagination-module__pawPgG__current:hover{background:var(--color-accent)}
.page-module__CxEfpW__header{width:90%;max-width:75rem;margin:3rem auto 2rem}.page-module__CxEfpW__header h1{font-family:var(--font-serif);color:var(--color-text);margin:0 0 .5rem;font-size:2.5rem;font-weight:600}.page-module__CxEfpW__highlight{color:var(--color-accent)}.page-module__CxEfpW__header p{color:var(--color-text-muted);margin:0;font-size:1.0625rem}.page-module__CxEfpW__main{width:90%;max-width:75rem;margin:0 auto 4rem}.page-module__CxEfpW__state,.page-module__CxEfpW__empty{text-align:center;color:var(--color-text-muted);padding:4rem 1rem}.page-module__CxEfpW__empty p{margin:0 0 1rem;font-size:1.0625rem}.page-module__CxEfpW__empty a{font-weight:600}
.rating-widget-module__bDXs2a__widget{border-top:1px solid var(--color-border);margin-top:1.5rem;padding-top:1.5rem}.rating-widget-module__bDXs2a__prompt{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin:0 0 .5rem;font-size:.8125rem;font-weight:600}.rating-widget-module__bDXs2a__starRow{gap:.25rem;display:inline-flex}.rating-widget-module__bDXs2a__starRow button{cursor:pointer;background:0 0;border:none;padding:.125rem;font-size:1.75rem;line-height:1;transition:transform .15s}.rating-widget-module__bDXs2a__starRow button:hover:not(:disabled),.rating-widget-module__bDXs2a__starRow button:focus-visible{transform:scale(1.15)}.rating-widget-module__bDXs2a__starRow button:disabled{cursor:not-allowed;opacity:.6}.rating-widget-module__bDXs2a__filled{color:var(--color-gold)}.rating-widget-module__bDXs2a__empty{color:var(--color-border-strong)}.rating-widget-module__bDXs2a__thanks{border-top:1px solid var(--color-border);color:var(--color-text-muted);margin-top:1.5rem;padding-top:1.5rem;font-size:.9375rem}
