@import '_content/BlazorBase.Components/BlazorBase.Components.22hfir5bzc.bundle.scp.css';
@import '_content/BlazorBase.CRUD/BlazorBase.CRUD.p1zdg4f4br.bundle.scp.css';
@import '_content/BlazorBase.Files/BlazorBase.Files.2ys2m0ccb1.bundle.scp.css';
@import '_content/BlazorBase.User/BlazorBase.User.yoiq0av1ua.bundle.scp.css';
@import '_content/Microsoft.FluentUI.AspNetCore.Components/Microsoft.FluentUI.AspNetCore.Components.bundle.scp.css';

/* /Layout/MainLayout.razor.rz.scp.css */
.avatar[b-7wfebgmtwp] {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: var(--color-accent-fill);
    color: var(--color-text-on-accent);
    font-size: 12px;
    font-weight: 700;
    user-select: none;
}

/*
  The framework components render themselves; where they sit is the host's call. BaseLayout shows the
  navigation as a rail beside the body and, at 1024 px and below, as an off-canvas drawer behind the
  header button, so the navigation only needs to fill the space the layout gives it.
*/
.side-nav[b-7wfebgmtwp] {
    display: block;
    height: 100%;
}
/* /Modules/AccessTokens/Pages/AccessTokensPage.razor.rz.scp.css */
.access-tokens[b-zwcsagirpl] {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
    max-width: 56rem;
    margin: 0 auto;
}

.intro[b-zwcsagirpl],
.hint[b-zwcsagirpl],
.empty[b-zwcsagirpl] {
    margin: 0;
    color: var(--color-text-secondary);
}

.hint[b-zwcsagirpl] {
    font-size: var(--font-size-xs);
}

.created-card[b-zwcsagirpl],
.create-card[b-zwcsagirpl],
.list-card[b-zwcsagirpl] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
    padding: var(--space-4);
    background: var(--color-bg-surface);
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-md);
}

.created-card[b-zwcsagirpl] {
    border-color: var(--color-warning);
}

.section-title[b-zwcsagirpl] {
    margin: 0;
    font-size: var(--font-size-lg);
    line-height: var(--line-height-md);
}

.copy-block[b-zwcsagirpl] {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
}

.copy-label[b-zwcsagirpl],
.field-label[b-zwcsagirpl] {
    font-weight: var(--font-weight-semibold);
}

.copy-value[b-zwcsagirpl] {
    display: block;
    padding: var(--space-2) var(--space-3);
    background: var(--color-bg-subtle);
    border-radius: var(--radius-sm);
    overflow-wrap: anywhere;
    user-select: all;
}

.field[b-zwcsagirpl] {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
}

.date-input[b-zwcsagirpl] {
    min-height: var(--control-height-touch);
    max-width: 16rem;
    padding: 0 var(--space-3);
    background: var(--color-bg-surface);
    border: var(--stroke-width-thin) solid var(--color-border-strong);
    border-radius: var(--radius-sm);
    color: var(--color-text-primary);
    font: inherit;
}

.status[b-zwcsagirpl] {
    display: grid;
    place-items: center;
    padding: var(--space-6);
}

.table-scroll[b-zwcsagirpl] {
    overflow-x: auto;
}

.token-table[b-zwcsagirpl] {
    width: 100%;
    border-collapse: collapse;
}

.token-table th[b-zwcsagirpl],
.token-table td[b-zwcsagirpl] {
    padding: var(--space-2) var(--space-3);
    text-align: left;
    vertical-align: middle;
    border-bottom: var(--stroke-width-thin) solid var(--color-border);
}

.token-table th[b-zwcsagirpl] {
    color: var(--color-text-secondary);
    font-weight: var(--font-weight-semibold);
    white-space: nowrap;
}

.token-name-cell[b-zwcsagirpl] {
    overflow-wrap: anywhere;
}

.token-revoked[b-zwcsagirpl] {
    color: var(--color-text-secondary);
}

.visually-hidden[b-zwcsagirpl] {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
}

.actions[b-zwcsagirpl] {
    display: flex;
    justify-content: flex-end;
    gap: var(--space-2);
}
/* /Modules/Ai/Pages/AiSettingsPage.razor.rz.scp.css */
.ai-settings[b-2yy56oml2u] {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
    max-width: 64rem;
    margin: 0 auto;
}

.intro[b-2yy56oml2u],
.hint[b-2yy56oml2u],
.empty[b-2yy56oml2u] {
    margin: 0;
    color: var(--color-text-secondary);
}

.hint[b-2yy56oml2u] {
    font-size: var(--font-size-xs);
}

.status-card[b-2yy56oml2u],
.usage-card[b-2yy56oml2u] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
    padding: var(--space-4);
    background: var(--color-bg-surface);
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-md);
}

.section-title[b-2yy56oml2u] {
    margin: 0;
    font-size: var(--font-size-lg);
    line-height: var(--line-height-md);
}

.status[b-2yy56oml2u] {
    display: grid;
    place-items: center;
    padding: var(--space-6);
}

.status-list[b-2yy56oml2u] {
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: var(--space-2) var(--space-4);
    margin: 0;
}

.status-list dt[b-2yy56oml2u] {
    color: var(--color-text-secondary);
    font-weight: var(--font-weight-semibold);
}

.status-list dd[b-2yy56oml2u] {
    margin: 0;
    overflow-wrap: anywhere;
}

.table-scroll[b-2yy56oml2u] {
    overflow-x: auto;
}

.usage-table[b-2yy56oml2u] {
    width: 100%;
    border-collapse: collapse;
}

.usage-table th[b-2yy56oml2u],
.usage-table td[b-2yy56oml2u] {
    padding: var(--space-2) var(--space-3);
    text-align: left;
    vertical-align: middle;
    border-bottom: var(--stroke-width-thin) solid var(--color-border);
}

.usage-table th[b-2yy56oml2u] {
    color: var(--color-text-secondary);
    font-weight: var(--font-weight-semibold);
    white-space: nowrap;
}

.usage-table .number[b-2yy56oml2u] {
    text-align: right;
    white-space: nowrap;
}
/* /Modules/Import/Components/PhotoImportPanel.razor.rz.scp.css */
.photo-import[b-o86ey4gq5w] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
    padding: var(--space-4) 0;
}

.drop-area[b-o86ey4gq5w] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-2);
    padding: var(--space-3) var(--space-4);
    color: var(--color-text-secondary);
    cursor: pointer;
}

.hint[b-o86ey4gq5w] {
    margin: 0;
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
}

.photo-list[b-o86ey4gq5w] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
    margin: 0;
    padding: 0;
    list-style: none;
}

.photo-item[b-o86ey4gq5w] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    padding: var(--space-2) var(--space-3);
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-bg-elevated);
}

.photo-name[b-o86ey4gq5w] {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.photo-size[b-o86ey4gq5w] {
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
}

.keep-cover[b-o86ey4gq5w] {
    align-self: flex-start;
}

.actions[b-o86ey4gq5w] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: var(--space-3);
}

.working-text[b-o86ey4gq5w] {
    color: var(--color-text-secondary);
}
/* /Modules/Import/Pages/RecipeImportPage.razor.rz.scp.css */
.import[b-qngqymk4in] {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
    max-width: var(--shell-max);
    margin: 0 auto;
}

.header[b-qngqymk4in] {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
}

.intro[b-qngqymk4in],
.hint[b-qngqymk4in] {
    margin: 0;
    color: var(--color-text-secondary);
}

.hint[b-qngqymk4in] {
    font-size: var(--font-size-xs);
}

.tab-body[b-qngqymk4in] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
    padding: var(--space-4) 0;
}

.fetch-cover[b-qngqymk4in] {
    align-self: flex-start;
}

.actions[b-qngqymk4in] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: var(--space-3);
}

.working-text[b-qngqymk4in] {
    color: var(--color-text-secondary);
}
/* /Modules/Ingredients/Components/IngredientCard.razor.rz.scp.css */
.picnic-actions[b-v4a8otywyd] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-2);
    padding: var(--space-2) var(--space-4);
}
/* /Modules/MealPlans/Components/CookedRatingDialog.razor.rz.scp.css */
.meal-name[b-mo7b1j1ca2] {
    margin: 0;
    font-weight: var(--font-weight-semibold);
    overflow-wrap: anywhere;
}

.rating-block[b-mo7b1j1ca2] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-3);
}

.rating-label[b-mo7b1j1ca2] {
    color: var(--color-text-secondary);
}

.actions[b-mo7b1j1ca2] {
    display: flex;
    justify-content: flex-end;
    gap: var(--space-2);
}
/* /Modules/MealPlans/Components/MealEntryDialog.razor.rz.scp.css */
.context[b-jd3qr6nkwg] {
    margin: 0;
    color: var(--color-text-secondary);
}

.mode-switch[b-jd3qr6nkwg] {
    display: flex;
    gap: var(--space-2);
}

.status[b-jd3qr6nkwg] {
    display: grid;
    place-items: center;
    padding: var(--space-4);
    color: var(--color-text-secondary);
}

.selected-recipe[b-jd3qr6nkwg] {
    margin: 0;
    color: var(--color-accent-text);
}

.results[b-jd3qr6nkwg] {
    display: flex;
    flex-direction: column;
    max-height: 16rem;
    margin: 0;
    padding: 0;
    list-style: none;
    overflow-y: auto;
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-sm);
}

.result-item[b-jd3qr6nkwg] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    width: 100%;
    min-height: var(--control-height-touch);
    padding: var(--space-1) var(--space-3);
    border: 0;
    background: transparent;
    color: var(--color-text-primary);
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.result-item:hover[b-jd3qr6nkwg],
.result-item:focus-visible[b-jd3qr6nkwg] {
    background: var(--color-bg-hover);
}

.result-item-selected[b-jd3qr6nkwg] {
    background: var(--color-accent-subtle);
    color: var(--color-accent-text);
    font-weight: var(--font-weight-semibold);
}

.result-picture[b-jd3qr6nkwg] {
    flex: 0 0 auto;
    width: 48px;
    height: 36px;
    border-radius: var(--radius-sm);
    overflow: hidden;
}

.result-title[b-jd3qr6nkwg] {
    min-width: 0;
    overflow-wrap: anywhere;
}

.servings-row[b-jd3qr6nkwg] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-3);
}

.servings-label[b-jd3qr6nkwg] {
    font-weight: var(--font-weight-semibold);
}

.actions[b-jd3qr6nkwg] {
    display: flex;
    justify-content: flex-end;
    gap: var(--space-2);
}
/* /Modules/MealPlans/Components/MealPlanEntryCard.razor.rz.scp.css */
.entry[b-gzlsk69x7f] {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
    padding: var(--space-2);
    background: var(--color-bg-elevated);
    border: var(--stroke-width-thin) solid var(--color-border);
    border-left: var(--stroke-width-thick) solid var(--color-accent-fill);
    border-radius: var(--radius-sm);
    box-shadow: var(--shadow-sm);
}

.entry-cooked[b-gzlsk69x7f] {
    border-left-color: var(--color-success);
}

.entry-skipped[b-gzlsk69x7f] {
    border-left-color: var(--color-border-strong);
    color: var(--color-text-muted);
}

.entry-skipped .entry-title[b-gzlsk69x7f] {
    text-decoration: line-through;
}

.entry-main[b-gzlsk69x7f] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
}

.entry-picture[b-gzlsk69x7f] {
    display: block;
    width: 100%;
    height: 72px;
    border-radius: var(--radius-sm);
    overflow: hidden;
}

.entry-text[b-gzlsk69x7f] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.entry-title[b-gzlsk69x7f] {
    color: var(--color-text-primary);
    font-weight: var(--font-weight-semibold);
    overflow-wrap: anywhere;
    text-decoration: none;
}

a.entry-title:hover[b-gzlsk69x7f] {
    text-decoration: underline;
}

.entry-meta[b-gzlsk69x7f] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-1) var(--space-2);
}

.entry-meta[b-gzlsk69x7f],
.entry-note[b-gzlsk69x7f] {
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
    overflow-wrap: anywhere;
}

.entry-status[b-gzlsk69x7f] {
    padding: 0 var(--space-2);
    border-radius: var(--radius-pill);
    background: var(--color-bg-subtle);
}

.entry-actions[b-gzlsk69x7f] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

@media (max-width: 1099px) {
    .entry-main[b-gzlsk69x7f] {
        flex-direction: row;
        align-items: flex-start;
    }

    .entry-picture[b-gzlsk69x7f] {
        flex: 0 0 auto;
        width: 56px;
        height: 56px;
    }

    .entry-actions[b-gzlsk69x7f] {
        justify-content: flex-end;
    }
}
/* /Modules/MealPlans/Components/ModalPanel.razor.rz.scp.css */
.backdrop[b-6aifshrvsn] {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: grid;
    place-items: center;
    padding: var(--space-4);
    background: rgb(0 0 0 / 45%);
}

.panel[b-6aifshrvsn] {
    display: flex;
    flex-direction: column;
    width: min(32rem, 100%);
    max-height: 100%;
    background: var(--color-bg-elevated);
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-lg);
    color: var(--color-text-primary);
}

.panel-header[b-6aifshrvsn] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-3);
    padding: var(--space-3) var(--space-4);
    border-bottom: var(--stroke-width-thin) solid var(--color-border);
}

.panel-title[b-6aifshrvsn] {
    margin: 0;
    font-size: var(--font-size-lg);
    line-height: var(--line-height-md);
}

.panel-body[b-6aifshrvsn] {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
    padding: var(--space-4);
    overflow-y: auto;
}
/* /Modules/MealPlans/Components/PlanRecipeDialog.razor.rz.scp.css */
.recipe-name[b-lrwhm8qf0b] {
    margin: 0;
    font-weight: var(--font-weight-semibold);
    overflow-wrap: anywhere;
}

.field[b-lrwhm8qf0b] {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
}

.field-label[b-lrwhm8qf0b] {
    font-weight: var(--font-weight-semibold);
}

.date-input[b-lrwhm8qf0b] {
    min-height: var(--control-height-touch);
    padding: 0 var(--space-3);
    background: var(--color-bg-surface);
    border: var(--stroke-width-thin) solid var(--color-border-strong);
    border-radius: var(--radius-sm);
    color: var(--color-text-primary);
    font: inherit;
}

.servings-row[b-lrwhm8qf0b] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-3);
}

.servings-label[b-lrwhm8qf0b] {
    font-weight: var(--font-weight-semibold);
}

.planned-message[b-lrwhm8qf0b] {
    margin: 0;
    color: var(--color-success);
}

.actions[b-lrwhm8qf0b] {
    display: flex;
    justify-content: flex-end;
    gap: var(--space-2);
}
/* /Modules/MealPlans/Components/UpcomingMeals.razor.rz.scp.css */
.upcoming[b-rl6lyrt5a9] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
    text-align: left;
}

.upcoming-heading[b-rl6lyrt5a9] {
    margin: 0;
    font-size: var(--font-size-lg);
}

.upcoming-status[b-rl6lyrt5a9] {
    display: grid;
    place-items: center;
    padding: var(--space-4);
}

.upcoming-error[b-rl6lyrt5a9] {
    margin: 0;
    color: var(--color-danger);
}

.upcoming-days[b-rl6lyrt5a9] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
    gap: var(--space-3);
}

.upcoming-day[b-rl6lyrt5a9] {
    padding: var(--space-3) var(--space-4);
    background: var(--color-bg-elevated);
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-sm);
}

.upcoming-today[b-rl6lyrt5a9] {
    border-color: var(--color-accent-fill);
}

.upcoming-day-title[b-rl6lyrt5a9] {
    margin: 0 0 var(--space-2);
    font-size: var(--font-size-md);
}

.upcoming-list[b-rl6lyrt5a9] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
    margin: 0;
    padding: 0;
    list-style: none;
}

.upcoming-entry[b-rl6lyrt5a9] {
    display: flex;
    flex-direction: column;
}

.upcoming-slot[b-rl6lyrt5a9],
.upcoming-servings[b-rl6lyrt5a9] {
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
}

.upcoming-slot[b-rl6lyrt5a9] {
    text-transform: uppercase;
}

.upcoming-meal[b-rl6lyrt5a9] {
    color: var(--color-text-primary);
    font-weight: var(--font-weight-semibold);
    overflow-wrap: anywhere;
}

.upcoming-empty[b-rl6lyrt5a9] {
    margin: 0;
    color: var(--color-text-muted);
}

.open-meal-plan[b-rl6lyrt5a9] {
    color: var(--color-accent-text);
}
/* /Modules/MealPlans/Pages/MealPlanPage.razor.rz.scp.css */
.plan[b-02jiw7gvtd] {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
    max-width: var(--shell-max);
    margin: 0 auto;
}

.header[b-02jiw7gvtd] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-3);
}

.week-nav[b-02jiw7gvtd] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-2);
}

.week-label[b-02jiw7gvtd] {
    min-width: 12rem;
    text-align: center;
    font-weight: var(--font-weight-semibold);
}

.planning-assistant-link[b-02jiw7gvtd] {
    color: var(--color-accent-text);
    font-weight: var(--font-weight-semibold);
}

.status[b-02jiw7gvtd] {
    display: grid;
    place-items: center;
    padding: var(--space-6);
    color: var(--color-text-secondary);
}

.days[b-02jiw7gvtd] {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    grid-template-rows: repeat(var(--rows), auto);
    gap: var(--space-2);
}

.day[b-02jiw7gvtd] {
    display: grid;
    grid-row: span var(--rows);
    grid-template-rows: subgrid;
    gap: var(--space-2);
    min-width: 0;
}

.day-header[b-02jiw7gvtd] {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 0;
    padding: var(--space-2);
    background: var(--color-bg-subtle);
    border-radius: var(--radius-sm);
    font-size: var(--font-size-md);
    line-height: var(--line-height-md);
}

.day-today .day-header[b-02jiw7gvtd] {
    background: var(--color-accent-fill);
    color: var(--color-text-on-accent);
}

.day-name[b-02jiw7gvtd] {
    font-weight: var(--font-weight-bold);
}

.day-date[b-02jiw7gvtd] {
    font-size: var(--font-size-xs);
}

.cell[b-02jiw7gvtd] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
    padding: var(--space-2);
    background: var(--color-bg-surface);
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-sm);
    min-width: 0;
}

.cell-slot[b-02jiw7gvtd] {
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
    font-weight: var(--font-weight-semibold);
    text-transform: uppercase;
}

.copy-summary[b-02jiw7gvtd],
.copy-hint[b-02jiw7gvtd] {
    margin: 0;
    color: var(--color-text-secondary);
}

.copy-hint[b-02jiw7gvtd] {
    font-size: var(--font-size-xs);
}

.dialog-actions[b-02jiw7gvtd] {
    display: flex;
    justify-content: flex-end;
    gap: var(--space-2);
}

@media (max-width: 1099px) {
    .days[b-02jiw7gvtd] {
        display: flex;
        flex-direction: column;
        gap: var(--space-4);
    }

    .day[b-02jiw7gvtd] {
        display: flex;
        flex-direction: column;
        grid-row: auto;
    }

    .day-header[b-02jiw7gvtd] {
        flex-direction: row;
        justify-content: space-between;
        gap: var(--space-3);
    }

    .day-name[b-02jiw7gvtd] {
        font-size: var(--font-size-lg);
    }

    .week-label[b-02jiw7gvtd] {
        min-width: 0;
        flex: 1 1 100%;
        order: -1;
    }
}
/* /Modules/Nutrition/Components/NutritionPanel.razor.rz.scp.css */
.nutrition[b-93sravwc73] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
    padding: var(--space-4);
    border-radius: var(--radius-md);
    background: var(--color-bg-subtle);
}

.status[b-93sravwc73] {
    display: grid;
    place-items: center;
    padding: var(--space-4);
}

.load-error[b-93sravwc73] {
    margin: 0;
    color: var(--color-danger);
}

.completeness[b-93sravwc73] {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
}

.completeness-label[b-93sravwc73] {
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
}

.completeness-bar[b-93sravwc73] {
    display: block;
    height: 6px;
    border-radius: var(--radius-pill);
    background: var(--color-border);
    overflow: hidden;
}

.completeness-bar[b-93sravwc73]::before {
    content: "";
    display: block;
    width: var(--completeness);
    height: 100%;
    background: var(--color-accent-fill);
}

.nutrition-table[b-93sravwc73] {
    width: 100%;
    border-collapse: collapse;
}

.nutrition-table th[b-93sravwc73],
.nutrition-table td[b-93sravwc73] {
    padding: var(--space-1) var(--space-2);
    border-bottom: var(--stroke-width-thin) solid var(--color-border);
    text-align: left;
}

.nutrition-table tbody th[b-93sravwc73] {
    font-weight: var(--font-weight-regular);
}

.nutrition-table .amount[b-93sravwc73] {
    text-align: right;
    font-variant-numeric: tabular-nums;
}

.nutrition-table td.per-serving[b-93sravwc73] {
    font-weight: var(--font-weight-semibold);
}

.visually-hidden[b-93sravwc73] {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
}

.no-values[b-93sravwc73],
.basis[b-93sravwc73] {
    margin: 0;
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
}

.gaps h3[b-93sravwc73] {
    margin: 0 0 var(--space-1);
    font-size: var(--font-size-md);
}

.gap-list[b-93sravwc73] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.nutrition-gap[b-93sravwc73] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-2);
    padding: var(--space-1) 0;
}

.gap-link[b-93sravwc73] {
    color: var(--color-accent-text);
}

.gap-reason[b-93sravwc73] {
    color: var(--color-text-secondary);
}
/* /Modules/Nutrition/Components/WeekNutritionSummary.razor.rz.scp.css */
.week-nutrition[b-o0kufgapb9] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
    padding: var(--space-4);
    border-radius: var(--radius-md);
    background: var(--color-bg-subtle);
}

.week-nutrition h2[b-o0kufgapb9] {
    margin: 0;
    font-size: var(--font-size-lg);
}

.status[b-o0kufgapb9] {
    display: grid;
    place-items: center;
    padding: var(--space-4);
}

.load-error[b-o0kufgapb9] {
    margin: 0;
    color: var(--color-danger);
}

.nutrition-days[b-o0kufgapb9] {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: var(--space-2);
    margin: 0;
    padding: 0;
    list-style: none;
}

.nutrition-day[b-o0kufgapb9] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: var(--space-2);
    border-radius: var(--radius-sm);
    background: var(--color-bg-surface);
}

.nutrition-day-name[b-o0kufgapb9] {
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
    font-weight: var(--font-weight-semibold);
}

.nutrition-day-kcal[b-o0kufgapb9] {
    font-weight: var(--font-weight-semibold);
    font-variant-numeric: tabular-nums;
}

.nutrition-incomplete[b-o0kufgapb9] {
    color: var(--color-warning);
}

.nutrition-average[b-o0kufgapb9],
.nutrition-target[b-o0kufgapb9],
.nutrition-target-missing[b-o0kufgapb9],
.nutrition-no-values[b-o0kufgapb9] {
    margin: 0;
}

.nutrition-target-below[b-o0kufgapb9],
.nutrition-target-above[b-o0kufgapb9] {
    color: var(--color-warning);
}

.nutrition-target-met[b-o0kufgapb9] {
    color: var(--color-success);
}

.nutrition-target-missing[b-o0kufgapb9],
.nutrition-no-values[b-o0kufgapb9],
.nutrition-note[b-o0kufgapb9] {
    margin: 0;
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
}

@media (max-width: 1099px) {
    .nutrition-days[b-o0kufgapb9] {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}
/* /Modules/Pantry/Components/PantryItemDialog.razor.rz.scp.css */
.field[b-h4qcdgp291] {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
}

.field-label[b-h4qcdgp291] {
    font-weight: var(--font-weight-semibold);
}

.date-input[b-h4qcdgp291] {
    min-height: var(--control-height-touch);
    padding: 0 var(--space-3);
    background: var(--color-bg-surface);
    border: var(--stroke-width-thin) solid var(--color-border-strong);
    border-radius: var(--radius-sm);
    color: var(--color-text-primary);
    font: inherit;
}

.actions[b-h4qcdgp291] {
    display: flex;
    justify-content: flex-end;
    gap: var(--space-2);
}
/* /Modules/Pantry/Pages/PantryPage.razor.rz.scp.css */
.pantry[b-ub86t1wnyl] {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
    max-width: var(--shell-max);
    margin: 0 auto;
}

.header[b-ub86t1wnyl] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-3);
}

.quick-add[b-ub86t1wnyl] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
    padding: var(--space-3);
    background: var(--color-bg-surface);
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-md);
}

.section-title[b-ub86t1wnyl],
.category-title[b-ub86t1wnyl] {
    margin: 0;
    font-size: var(--font-size-lg);
    line-height: var(--line-height-md);
}

.quick-add-fields[b-ub86t1wnyl] {
    display: grid;
    grid-template-columns: minmax(12rem, 2fr) minmax(6rem, 1fr) minmax(8rem, 1fr) minmax(10rem, 1fr) auto;
    align-items: start;
    gap: var(--space-2);
}

.date-input[b-ub86t1wnyl] {
    min-height: var(--control-height-touch);
    padding: 0 var(--space-3);
    background: var(--color-bg-surface);
    border: var(--stroke-width-thin) solid var(--color-border-strong);
    border-radius: var(--radius-sm);
    color: var(--color-text-primary);
    font: inherit;
}

.status[b-ub86t1wnyl] {
    display: grid;
    place-items: center;
    padding: var(--space-6);
    color: var(--color-text-secondary);
}

.category[b-ub86t1wnyl] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
}

.items[b-ub86t1wnyl] {
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 0;
    list-style: none;
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-md);
    overflow: hidden;
}

.item[b-ub86t1wnyl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-3);
    min-height: var(--control-height-touch);
    padding: var(--space-2) var(--space-3);
    background: var(--color-bg-surface);
}

.item + .item[b-ub86t1wnyl] {
    border-top: var(--stroke-width-thin) solid var(--color-border);
}

.item-text[b-ub86t1wnyl] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-1) var(--space-3);
    min-width: 0;
}

.item-name[b-ub86t1wnyl] {
    font-weight: var(--font-weight-semibold);
    overflow-wrap: anywhere;
}

.item-quantity[b-ub86t1wnyl] {
    color: var(--color-text-secondary);
}

.best-before[b-ub86t1wnyl] {
    padding: 0 var(--space-2);
    border-radius: var(--radius-pill);
    background: var(--color-bg-subtle);
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
}

.best-before-soon[b-ub86t1wnyl] {
    color: var(--color-warning);
}

.best-before-expired[b-ub86t1wnyl] {
    color: var(--color-danger);
    font-weight: var(--font-weight-semibold);
}

.item-actions[b-ub86t1wnyl] {
    display: flex;
    flex: 0 0 auto;
}

@media (max-width: 767px) {
    .quick-add-fields[b-ub86t1wnyl] {
        grid-template-columns: 1fr 1fr;
    }

    .quick-add-ingredient[b-ub86t1wnyl],
    .quick-add-fields[b-ub86t1wnyl]  .add-stock {
        grid-column: 1 / -1;
    }
}

.quick-add-ingredient[b-ub86t1wnyl]  .ingredient-search {
    width: 100%;
}
/* /Modules/Picnic/Components/PicnicCartDialog.razor.rz.scp.css */
.cart-dialog[b-u3sko4j2jq]  .panel {
    width: min(48rem, 100%);
    max-height: calc(100dvh - 2 * var(--space-4));
}

.line-image[b-u3sko4j2jq] {
    display: flex;
}

.status[b-u3sko4j2jq] {
    display: grid;
    place-items: center;
    padding: var(--space-4);
}

.hint[b-u3sko4j2jq] {
    margin: 0;
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
}

.lines[b-u3sko4j2jq],
.unmapped-lines[b-u3sko4j2jq],
.current-cart-lines[b-u3sko4j2jq],
.result-lines[b-u3sko4j2jq] {
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 0;
    list-style: none;
}

.lines[b-u3sko4j2jq] {
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-md);
}

.lines > :not(:first-child)[b-u3sko4j2jq] {
    border-top: var(--stroke-width-thin) solid var(--color-border);
}

.line[b-u3sko4j2jq] {
    display: grid;
    grid-template-columns: auto auto minmax(0, 1fr) 4.5rem 5.5rem;
    align-items: center;
    gap: var(--space-3);
    padding: var(--space-2) var(--space-3);
}

.line-select[b-u3sko4j2jq] {
    width: 24px;
    height: 24px;
    margin: 0;
    accent-color: var(--color-accent-fill);
    cursor: pointer;
}

.line-text[b-u3sko4j2jq] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.line-name[b-u3sko4j2jq] {
    font-weight: var(--font-weight-semibold);
    overflow-wrap: anywhere;
}

.line-need[b-u3sko4j2jq],
.line-product[b-u3sko4j2jq] {
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
}

.line-warning[b-u3sko4j2jq] {
    color: var(--color-warning);
    font-size: var(--font-size-xs);
}

.count-input[b-u3sko4j2jq] {
    width: 100%;
    min-height: var(--control-height-touch);
    padding: 0 var(--space-2);
    border: var(--stroke-width-thin) solid var(--color-border-strong);
    border-radius: var(--radius-sm);
    background: var(--color-bg-surface);
    color: var(--color-text-primary);
    font: inherit;
    text-align: right;
}

.line-total[b-u3sko4j2jq] {
    text-align: right;
    font-weight: var(--font-weight-semibold);
}

.section-title[b-u3sko4j2jq] {
    margin: 0;
    font-size: var(--font-size-md);
}

.unmapped[b-u3sko4j2jq],
.current-cart[b-u3sko4j2jq] {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
    padding: var(--space-3);
    background: var(--color-bg-subtle);
    border-radius: var(--radius-md);
}

.current-cart summary[b-u3sko4j2jq] {
    cursor: pointer;
    font-weight: var(--font-weight-semibold);
}

.selected-total[b-u3sko4j2jq],
.cart-total[b-u3sko4j2jq] {
    margin: 0;
    font-weight: var(--font-weight-semibold);
}

.order-hint[b-u3sko4j2jq],
.result-summary[b-u3sko4j2jq] {
    margin: 0;
}

.result[b-u3sko4j2jq] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
}

.result-line[b-u3sko4j2jq] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: var(--space-1) var(--space-3);
    padding: var(--space-2) 0;
    border-bottom: var(--stroke-width-thin) solid var(--color-border);
}

.result-line-problem .result-line-status[b-u3sko4j2jq] {
    color: var(--color-danger);
}

.result-line-error[b-u3sko4j2jq] {
    grid-column: 1 / -1;
    color: var(--color-danger);
    font-size: var(--font-size-xs);
}

.actions[b-u3sko4j2jq] {
    display: flex;
    justify-content: flex-end;
    gap: var(--space-2);
}

@media (max-width: 767px) {
    .line[b-u3sko4j2jq] {
        grid-template-columns: auto minmax(0, 1fr) 4rem;
    }

    .line-image[b-u3sko4j2jq] {
        display: none;
    }

    .line-total[b-u3sko4j2jq] {
        grid-column: 2 / -1;
        text-align: left;
    }
}
/* /Modules/Picnic/Components/PicnicErrorNotice.razor.rz.scp.css */
.reconnect-link[b-2dnbm9xgrs] {
    margin-inline-start: var(--space-2);
    white-space: nowrap;
}
/* /Modules/Picnic/Components/PicnicProductDialog.razor.rz.scp.css */
.product-dialog[b-l2oenzqo9h]  .panel {
    max-height: calc(100dvh - 2 * var(--space-4));
}

.status[b-l2oenzqo9h] {
    display: grid;
    place-items: center;
    padding: var(--space-4);
}

.hint[b-l2oenzqo9h] {
    margin: 0;
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
}

.results[b-l2oenzqo9h] {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
    max-height: 18rem;
    margin: 0;
    padding: 0;
    overflow-y: auto;
    list-style: none;
}

.result[b-l2oenzqo9h] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    width: 100%;
    min-height: var(--control-height-touch);
    padding: var(--space-2) var(--space-3);
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-sm);
    background: var(--color-bg-surface);
    color: var(--color-text-primary);
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.result:hover[b-l2oenzqo9h],
.result:focus-visible[b-l2oenzqo9h] {
    background: var(--color-bg-hover);
}

.result-selected[b-l2oenzqo9h] {
    border-color: var(--color-accent-fill);
    box-shadow: 0 0 0 1px var(--color-accent-fill);
}

.result-text[b-l2oenzqo9h] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.result-name[b-l2oenzqo9h] {
    font-weight: var(--font-weight-semibold);
    overflow-wrap: anywhere;
}

.result-meta[b-l2oenzqo9h] {
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
}

.selection[b-l2oenzqo9h] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
}

.selection-title[b-l2oenzqo9h] {
    margin: 0;
    font-size: var(--font-size-md);
}

.amount-row[b-l2oenzqo9h] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: var(--space-2);
}

.actions[b-l2oenzqo9h] {
    display: flex;
    justify-content: flex-end;
    gap: var(--space-2);
}
/* /Modules/Picnic/Components/PicnicProductImage.razor.rz.scp.css */
.product-image[b-cp8gkei52i] {
    flex: 0 0 auto;
    width: 48px;
    height: 48px;
    object-fit: contain;
    background: var(--color-bg-subtle);
    border-radius: var(--radius-sm);
}
/* /Modules/Picnic/Pages/PicnicSettingsPage.razor.rz.scp.css */
.picnic-settings[b-tjtiazdcxx] {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
    max-width: 40rem;
    margin: 0 auto;
}

.intro[b-tjtiazdcxx],
.hint[b-tjtiazdcxx] {
    margin: 0;
    color: var(--color-text-secondary);
}

.hint[b-tjtiazdcxx] {
    font-size: var(--font-size-xs);
}

.status[b-tjtiazdcxx] {
    display: grid;
    place-items: center;
    padding: var(--space-6);
}

.status-card[b-tjtiazdcxx],
.wizard[b-tjtiazdcxx] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
    padding: var(--space-4);
    background: var(--color-bg-surface);
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-md);
}

.section-title[b-tjtiazdcxx] {
    margin: 0;
    font-size: var(--font-size-lg);
    line-height: var(--line-height-md);
}

.status-list[b-tjtiazdcxx] {
    display: grid;
    grid-template-columns: max-content minmax(0, 1fr);
    gap: var(--space-1) var(--space-4);
    margin: 0;
}

.status-list dt[b-tjtiazdcxx] {
    color: var(--color-text-secondary);
}

.status-list dd[b-tjtiazdcxx] {
    margin: 0;
    overflow-wrap: anywhere;
}

.last-error[b-tjtiazdcxx] {
    color: var(--color-danger);
}

.channel-row[b-tjtiazdcxx] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-2);
}

.info-message[b-tjtiazdcxx] {
    margin: 0;
    color: var(--color-success);
}

.actions[b-tjtiazdcxx] {
    display: flex;
    justify-content: flex-end;
    gap: var(--space-2);
}
/* /Modules/Planning/Components/PlanningAcceptedActions.razor.rz.scp.css */
.after-accept[b-1ks80p6uuv] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
    padding: var(--space-4);
    background: var(--color-bg-elevated);
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-md);
}

.section-title[b-1ks80p6uuv] {
    margin: 0;
    font-size: var(--font-size-lg);
    line-height: var(--line-height-md);
}

.hint[b-1ks80p6uuv] {
    margin: 0;
    color: var(--color-text-secondary);
}

.actions[b-1ks80p6uuv] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-3);
}

.link[b-1ks80p6uuv] {
    color: var(--color-accent-text);
    font-weight: var(--font-weight-semibold);
}
/* /Modules/Planning/Components/PlanningProgressList.razor.rz.scp.css */
.steps[b-viwwkc8zna] {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
    margin: 0;
    padding: 0;
    list-style: none;
}

.step[b-viwwkc8zna] {
    display: flex;
    align-items: baseline;
    gap: var(--space-3);
    padding: var(--space-1) var(--space-2);
    border-left: var(--stroke-width-thick) solid var(--color-border);
}

.step-time[b-viwwkc8zna] {
    flex: 0 0 auto;
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
    font-variant-numeric: tabular-nums;
}

.step-text[b-viwwkc8zna] {
    min-width: 0;
    overflow-wrap: anywhere;
}

.step-toolcall[b-viwwkc8zna] {
    border-left-color: var(--color-accent-fill);
}

.step-proposalready[b-viwwkc8zna],
.step-accepted[b-viwwkc8zna] {
    font-weight: var(--font-weight-semibold);
}

.step-failed[b-viwwkc8zna],
.step-proposalrejected[b-viwwkc8zna] {
    color: var(--color-danger);
}

.step-active[b-viwwkc8zna] {
    align-items: center;
    color: var(--color-text-secondary);
}
/* /Modules/Planning/Components/PlanningRunHistory.razor.rz.scp.css */
.history[b-2gz9wcdca3] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
}

.section-title[b-2gz9wcdca3] {
    margin: 0;
    font-size: var(--font-size-lg);
    line-height: var(--line-height-md);
}

.status[b-2gz9wcdca3] {
    display: grid;
    place-items: center;
    margin: 0;
    padding: var(--space-4);
    color: var(--color-text-secondary);
}

.runs[b-2gz9wcdca3] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
    margin: 0;
    padding: 0;
    list-style: none;
}

.run-link[b-2gz9wcdca3] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: var(--space-1) var(--space-3);
    padding: var(--space-3);
    background: var(--color-bg-elevated);
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-md);
    color: var(--color-text-primary);
    text-decoration: none;
}

.run-link:hover[b-2gz9wcdca3],
.run-link:focus-visible[b-2gz9wcdca3] {
    background: var(--color-bg-hover);
}

.run-week[b-2gz9wcdca3] {
    font-weight: var(--font-weight-semibold);
}

.run-status[b-2gz9wcdca3] {
    justify-self: end;
    padding: 0 var(--space-2);
    border-radius: var(--radius-pill);
    background: var(--color-bg-subtle);
    font-size: var(--font-size-xs);
}

.status-awaitingreview[b-2gz9wcdca3] {
    background: var(--color-accent-subtle);
    color: var(--color-accent-text);
}

.status-failed[b-2gz9wcdca3] {
    color: var(--color-danger);
}

.run-wishes[b-2gz9wcdca3],
.run-meta[b-2gz9wcdca3] {
    grid-column: 1 / -1;
    min-width: 0;
    overflow-wrap: anywhere;
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
}
/* /Modules/Planning/Components/PlanningStartForm.razor.rz.scp.css */
.start-form[b-15jqlq7pdp] {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
    padding: var(--space-4);
    background: var(--color-bg-elevated);
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-md);
}

.section-title[b-15jqlq7pdp] {
    margin: 0;
    font-size: var(--font-size-lg);
    line-height: var(--line-height-md);
}

.field[b-15jqlq7pdp] {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
}

.field-label[b-15jqlq7pdp] {
    font-weight: var(--font-weight-semibold);
}

.week-input[b-15jqlq7pdp] {
    max-width: 14rem;
    min-height: var(--control-height-touch);
    padding: var(--space-1) var(--space-2);
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-sm);
    background: var(--color-bg-surface);
    color: var(--color-text-primary);
    font: inherit;
}

.hint[b-15jqlq7pdp] {
    margin: 0;
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
}

.field[b-15jqlq7pdp]  .text-area-field [slot="input"] {
    --inline-size: 100%;
    width: 100%;
    min-height: 6rem;
}

.slot-switches[b-15jqlq7pdp] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-3);
}

.actions[b-15jqlq7pdp] {
    display: flex;
    justify-content: flex-end;
}
/* /Modules/Planning/Components/ProposalMealCard.razor.rz.scp.css */
.meal[b-3d4t210ho1] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
    padding: var(--space-2);
    background: var(--color-bg-elevated);
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-sm);
    min-width: 0;
}

.meal-free-text[b-3d4t210ho1] {
    border-style: dashed;
}

.meal-title[b-3d4t210ho1] {
    font-weight: var(--font-weight-semibold);
    overflow-wrap: anywhere;
}

.meal-free-text .meal-title[b-3d4t210ho1] {
    font-style: italic;
}

.meal-reason[b-3d4t210ho1] {
    margin: 0;
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
}

.meal-servings[b-3d4t210ho1] {
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
}

.meal-actions[b-3d4t210ho1] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-1);
}

.servings-editor[b-3d4t210ho1] {
    min-width: 0;
}

.servings-editor[b-3d4t210ho1]  .stepper {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-1);
}

.servings-editor[b-3d4t210ho1]  .stepper-value {
    min-width: 0;
    font-size: var(--font-size-xs);
}
/* /Modules/Planning/Components/ProposalRecipeLookupDialog.razor.rz.scp.css */
.context[b-2y1curxkvl] {
    margin: 0;
    color: var(--color-text-secondary);
}

.status[b-2y1curxkvl] {
    display: grid;
    place-items: center;
    padding: var(--space-4);
    color: var(--color-text-secondary);
}

.results[b-2y1curxkvl] {
    display: flex;
    flex-direction: column;
    max-height: 20rem;
    margin: 0;
    padding: 0;
    list-style: none;
    overflow-y: auto;
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-sm);
}

.result-item[b-2y1curxkvl] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    width: 100%;
    min-height: var(--control-height-touch);
    padding: var(--space-1) var(--space-3);
    border: 0;
    background: transparent;
    color: var(--color-text-primary);
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.result-item:hover[b-2y1curxkvl],
.result-item:focus-visible[b-2y1curxkvl] {
    background: var(--color-bg-hover);
}

.result-picture[b-2y1curxkvl] {
    flex: 0 0 auto;
    width: 48px;
    height: 36px;
    border-radius: var(--radius-sm);
    overflow: hidden;
}

.result-title[b-2y1curxkvl] {
    min-width: 0;
    overflow-wrap: anywhere;
}
/* /Modules/Planning/Components/ProposalWeekGrid.razor.rz.scp.css */
.days[b-2qryq971mg] {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    grid-template-rows: repeat(var(--rows), auto);
    gap: var(--space-2);
}

.day[b-2qryq971mg] {
    display: grid;
    grid-row: span var(--rows);
    grid-template-rows: subgrid;
    gap: var(--space-2);
    min-width: 0;
}

.day-header[b-2qryq971mg] {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 0;
    padding: var(--space-2);
    background: var(--color-bg-subtle);
    border-radius: var(--radius-sm);
    font-size: var(--font-size-md);
    line-height: var(--line-height-md);
}

.day-name[b-2qryq971mg] {
    font-weight: var(--font-weight-bold);
}

.day-date[b-2qryq971mg] {
    font-size: var(--font-size-xs);
}

.cell[b-2qryq971mg] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
    padding: var(--space-2);
    background: var(--color-bg-surface);
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-sm);
    min-width: 0;
}

.cell-slot[b-2qryq971mg] {
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
    font-weight: var(--font-weight-semibold);
    text-transform: uppercase;
}

@media (max-width: 1099px) {
    .days[b-2qryq971mg] {
        display: flex;
        flex-direction: column;
        gap: var(--space-4);
    }

    .day[b-2qryq971mg] {
        display: flex;
        flex-direction: column;
        grid-row: auto;
    }

    .day-header[b-2qryq971mg] {
        flex-direction: row;
        justify-content: space-between;
        gap: var(--space-3);
    }
}
/* /Modules/Planning/Pages/PlanningAssistantPage.razor.rz.scp.css */
.assistant[b-fnsrotr90o] {
    display: flex;
    flex-direction: column;
    gap: var(--space-5);
    max-width: 48rem;
    margin: 0 auto;
}

.header[b-fnsrotr90o] {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
}

.header h1[b-fnsrotr90o] {
    margin: 0;
}

.intro[b-fnsrotr90o] {
    margin: 0;
    color: var(--color-text-secondary);
}

.status[b-fnsrotr90o] {
    display: grid;
    place-items: center;
    padding: var(--space-6);
}
/* /Modules/Planning/Pages/PlanningRunPage.razor.rz.scp.css */
.run-page[b-ogx8h3aso8] {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
    max-width: var(--shell-max);
    margin: 0 auto;
}

.header[b-ogx8h3aso8] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: space-between;
    gap: var(--space-3);
}

.header h1[b-ogx8h3aso8] {
    margin: 0;
}

.back-link[b-ogx8h3aso8] {
    color: var(--color-accent-text);
}

.status[b-ogx8h3aso8] {
    display: grid;
    place-items: center;
    padding: var(--space-6);
}

.overview[b-ogx8h3aso8],
.progress[b-ogx8h3aso8],
.proposal[b-ogx8h3aso8],
.review[b-ogx8h3aso8],
.regenerate[b-ogx8h3aso8] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
    padding: var(--space-4);
    background: var(--color-bg-elevated);
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-md);
}

.overview-line[b-ogx8h3aso8] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-3);
}

.week-label[b-ogx8h3aso8] {
    font-size: var(--font-size-lg);
    font-weight: var(--font-weight-semibold);
}

.run-status[b-ogx8h3aso8] {
    padding: 0 var(--space-2);
    border-radius: var(--radius-pill);
    background: var(--color-bg-subtle);
}

.status-awaitingreview[b-ogx8h3aso8] {
    background: var(--color-accent-subtle);
    color: var(--color-accent-text);
}

.status-failed[b-ogx8h3aso8] {
    color: var(--color-danger);
}

.wishes[b-ogx8h3aso8],
.feedback[b-ogx8h3aso8],
.cost[b-ogx8h3aso8],
.summary[b-ogx8h3aso8],
.hint[b-ogx8h3aso8] {
    margin: 0;
    overflow-wrap: anywhere;
}

.feedback[b-ogx8h3aso8],
.cost[b-ogx8h3aso8],
.hint[b-ogx8h3aso8] {
    color: var(--color-text-secondary);
}

.cost[b-ogx8h3aso8],
.hint[b-ogx8h3aso8] {
    font-size: var(--font-size-xs);
}

.section-title[b-ogx8h3aso8] {
    margin: 0;
    font-size: var(--font-size-lg);
    line-height: var(--line-height-md);
}

.ideas[b-ogx8h3aso8] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
}

.ideas-title[b-ogx8h3aso8] {
    margin: 0;
    font-size: var(--font-size-md);
}

.ideas-list[b-ogx8h3aso8] {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
    margin: 0;
    padding-left: var(--space-5);
}

.idea-title[b-ogx8h3aso8] {
    font-weight: var(--font-weight-semibold);
}

.idea-reason[b-ogx8h3aso8] {
    margin-left: var(--space-2);
    color: var(--color-text-secondary);
}

.actions[b-ogx8h3aso8] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: var(--space-2);
}

.regenerate[b-ogx8h3aso8]  .text-area-field [slot="input"] {
    --inline-size: 100%;
    width: 100%;
    min-height: 5rem;
}
/* /Modules/Preferences/Pages/PreferencesPage.razor.rz.scp.css */
.preferences[b-pqbkjhf91n] {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
    max-width: 48rem;
    margin: 0 auto;
}

.header[b-pqbkjhf91n] {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
}

.intro[b-pqbkjhf91n],
.hint[b-pqbkjhf91n] {
    margin: 0;
    color: var(--color-text-secondary);
}

.hint[b-pqbkjhf91n] {
    font-size: var(--font-size-xs);
}

.status[b-pqbkjhf91n] {
    display: grid;
    place-items: center;
    padding: var(--space-6);
}

.section[b-pqbkjhf91n] {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
    padding: var(--space-4);
    background: var(--color-bg-elevated);
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-md);
}

.section-title[b-pqbkjhf91n] {
    margin: 0;
    font-size: var(--font-size-lg);
    line-height: var(--line-height-md);
}

.field[b-pqbkjhf91n] {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
}

.field-label[b-pqbkjhf91n] {
    font-weight: var(--font-weight-semibold);
}

.field[b-pqbkjhf91n]  .text-area-field [slot="input"] {
    --inline-size: 100%;
    width: 100%;
}

.slot-switches[b-pqbkjhf91n] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-4);
}

.number-grid[b-pqbkjhf91n] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-4);
}

.save-bar[b-pqbkjhf91n] {
    position: sticky;
    bottom: 0;
    z-index: 10;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: var(--space-3);
    padding: var(--space-3) 0;
    background: var(--color-bg-surface);
}

@media (max-width: 40rem) {
    .number-grid[b-pqbkjhf91n] {
        grid-template-columns: minmax(0, 1fr);
    }
}
/* /Modules/Recipes/Components/IngredientPicker.razor.rz.scp.css */
.picker[b-laboggzaf4] {
    position: relative;
    width: 100%;
}

.suggestions[b-laboggzaf4] {
    position: absolute;
    z-index: 20;
    top: 100%;
    left: 0;
    right: 0;
    display: flex;
    flex-direction: column;
    max-height: 280px;
    overflow-y: auto;
    background: var(--color-bg-elevated);
    border: var(--stroke-width-thin) solid var(--color-border-strong);
    border-radius: var(--radius-sm);
    box-shadow: var(--shadow-lg);
}

.suggestion[b-laboggzaf4] {
    min-height: var(--control-height-touch);
    padding: 0 var(--space-3);
    border: 0;
    background: transparent;
    color: var(--color-text-primary);
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.suggestion:hover[b-laboggzaf4],
.suggestion:focus-visible[b-laboggzaf4] {
    background: var(--color-bg-hover);
}

.suggestion-create[b-laboggzaf4] {
    color: var(--color-accent-text);
    font-weight: var(--font-weight-semibold);
}

.picker-error[b-laboggzaf4] {
    color: var(--color-danger);
    font-size: var(--font-size-xs);
}

.create-row[b-laboggzaf4] {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
    padding: var(--space-2) var(--space-3);
    border-top: var(--stroke-width-thin) solid var(--color-border);
}

.create-row .suggestion[b-laboggzaf4] {
    padding: 0;
}
/* /Modules/Recipes/Components/IngredientRowEditor.razor.rz.scp.css */
.row[b-izv3tieft3] {
    display: grid;
    grid-template-columns: minmax(0, 2.2fr) minmax(0, 0.8fr) minmax(0, 1fr) minmax(0, 1.4fr) minmax(0, 1.2fr) auto auto;
    align-items: center;
    gap: var(--space-2);
    padding: var(--space-2) 0;
    border-bottom: var(--stroke-width-thin) solid var(--color-border);
}

.field[b-izv3tieft3] {
    min-width: 0;
}

.actions[b-izv3tieft3] {
    display: flex;
    justify-content: flex-end;
}

@media (max-width: 899px) {
    .row[b-izv3tieft3] {
        grid-template-columns: repeat(6, minmax(0, 1fr));
        padding: var(--space-3) 0;
    }

    .field-name[b-izv3tieft3] {
        grid-column: 1 / -1;
    }

    .field-quantity[b-izv3tieft3] {
        grid-column: span 2;
    }

    .field-unit[b-izv3tieft3] {
        grid-column: span 4;
    }

    .field-note[b-izv3tieft3] {
        grid-column: span 3;
    }

    .field-group[b-izv3tieft3] {
        grid-column: span 3;
    }

    .field-optional[b-izv3tieft3] {
        grid-column: span 3;
    }

    .actions[b-izv3tieft3] {
        grid-column: span 3;
    }
}

.source-line[b-izv3tieft3] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-2);
    grid-column: 1 / -1;
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
}

.new-ingredient-badge[b-izv3tieft3] {
    padding: 0 var(--space-2);
    border: var(--stroke-width-thin) solid var(--color-warning);
    border-radius: var(--radius-md);
    color: var(--color-warning);
    font-weight: var(--font-weight-semibold);
}
/* /Modules/Recipes/Components/RecipeImageEditor.razor.rz.scp.css */
.image-editor[b-cp8w5q6ak0] {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
}

.images[b-cp8w5q6ak0] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: var(--space-3);
}

.image[b-cp8w5q6ak0] {
    display: flex;
    flex-direction: column;
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-bg-elevated);
    overflow: hidden;
}

.image-cover[b-cp8w5q6ak0] {
    border-color: var(--color-accent-fill);
    border-width: var(--stroke-width-thick);
}

.image-picture[b-cp8w5q6ak0] {
    aspect-ratio: 4 / 3;
}

.image-actions[b-cp8w5q6ak0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-2);
    padding: var(--space-2);
}

.gallery-host[b-cp8w5q6ak0]  .gallery {
    display: none;
}

@media (max-width: 599px) {
    .images[b-cp8w5q6ak0] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
/* /Modules/Recipes/Components/RecipePicture.razor.rz.scp.css */
.picture[b-ax6kahkq8p] {
    width: 100%;
    height: 100%;
    background: var(--color-bg-subtle);
    overflow: hidden;
}

.picture-image[b-ax6kahkq8p] {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.picture-placeholder[b-ax6kahkq8p] {
    display: grid;
    place-items: center;
    width: 100%;
    height: 100%;
    color: var(--color-text-muted);
}
/* /Modules/Recipes/Components/RecipeRatingInput.razor.rz.scp.css */
.rating[b-7bwari0md4] {
    display: inline-flex;
    align-items: center;
}

.rating-star[b-7bwari0md4] {
    color: var(--color-warning);
}
/* /Modules/Recipes/Components/RecipeSummaryCard.razor.rz.scp.css */
.card[b-t5cwiys183] {
    display: flex;
    flex-direction: column;
    height: 100%;
    background: var(--color-bg-elevated);
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-sm);
    color: var(--color-text-primary);
    text-decoration: none;
    overflow: hidden;
    transition: box-shadow var(--duration-normal) var(--easing-standard);
}

.card:hover[b-t5cwiys183] {
    box-shadow: var(--shadow-lg);
}

.cover[b-t5cwiys183] {
    position: relative;
    aspect-ratio: 4 / 3;
}

.favorite[b-t5cwiys183] {
    position: absolute;
    top: var(--space-2);
    right: var(--space-2);
    display: grid;
    place-items: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--color-bg-elevated);
    color: var(--color-danger);
    box-shadow: var(--shadow-sm);
}

.body[b-t5cwiys183] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
    padding: var(--space-3) var(--space-4) var(--space-4);
}

.title[b-t5cwiys183] {
    margin: 0;
    font-size: var(--font-size-md);
    line-height: var(--line-height-md);
    font-weight: var(--font-weight-semibold);
}

.meta[b-t5cwiys183] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-1) var(--space-3);
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
}

.tags[b-t5cwiys183] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-1);
}

.tag[b-t5cwiys183] {
    padding: 0 var(--space-2);
    border-radius: var(--radius-pill);
    background: var(--color-accent-subtle);
    color: var(--color-accent-text);
    font-size: var(--font-size-xs);
    line-height: var(--line-height-sm, 20px);
}
/* /Modules/Recipes/Components/ServingsStepper.razor.rz.scp.css */
.stepper[b-ny6el4l4z5] {
    display: inline-flex;
    align-items: center;
    gap: var(--space-3);
}

.stepper-value[b-ny6el4l4z5] {
    min-width: 6.5rem;
    text-align: center;
    font-weight: var(--font-weight-semibold);
}
/* /Modules/Recipes/Components/StepRowEditor.razor.rz.scp.css */
.step[b-9x4hzsota6] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: start;
    gap: var(--space-3);
    padding: var(--space-3) 0;
    border-bottom: var(--stroke-width-thin) solid var(--color-border);
}

.step-number[b-9x4hzsota6] {
    display: grid;
    place-items: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--color-accent-fill);
    color: var(--color-text-on-accent);
    font-weight: var(--font-weight-bold);
}

.step-fields[b-9x4hzsota6] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 9rem;
    gap: var(--space-2);
}

.actions[b-9x4hzsota6] {
    display: flex;
    justify-content: flex-end;
}

@media (max-width: 899px) {
    .step[b-9x4hzsota6] {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .step-fields[b-9x4hzsota6] {
        grid-template-columns: minmax(0, 1fr);
    }

    .actions[b-9x4hzsota6] {
        grid-column: 1 / -1;
    }
}
/* /Modules/Recipes/Components/TagPicker.razor.rz.scp.css */
.tag-picker[b-df856u3tqw] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
}

.chips[b-df856u3tqw] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-2);
}

.chip[b-df856u3tqw] {
    min-height: var(--control-height-lg);
    padding: 0 var(--space-4);
    border: var(--stroke-width-thin) solid var(--color-border-strong);
    border-radius: var(--radius-pill);
    background: var(--color-bg-elevated);
    color: var(--color-text-primary);
    font: inherit;
    cursor: pointer;
}

.chip-selected[b-df856u3tqw] {
    border-color: var(--color-accent-fill);
    background: var(--color-accent-fill);
    color: var(--color-text-on-accent);
}

.new-tag[b-df856u3tqw] {
    display: flex;
    gap: var(--space-2);
    max-width: 28rem;
}

.new-tag-name[b-df856u3tqw] {
    flex: 1;
}
/* /Modules/Recipes/Pages/RecipeDetailPage.razor.rz.scp.css */
.detail[b-pqtrqbv76b] {
    display: flex;
    flex-direction: column;
    gap: var(--space-5);
    max-width: var(--shell-max);
    margin: 0 auto;
}

.status[b-pqtrqbv76b] {
    display: grid;
    place-items: center;
    padding: var(--space-6);
    color: var(--color-text-secondary);
}

.hero[b-pqtrqbv76b] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
}

.hero-picture[b-pqtrqbv76b] {
    aspect-ratio: 16 / 9;
    max-height: 420px;
    width: 100%;
    border-radius: var(--radius-md);
    overflow: hidden;
}

.thumbnails[b-pqtrqbv76b] {
    display: flex;
    gap: var(--space-2);
    overflow-x: auto;
}

.thumbnail[b-pqtrqbv76b] {
    flex: 0 0 auto;
    width: 88px;
    height: 66px;
    padding: 0;
    border: var(--stroke-width-thick) solid transparent;
    border-radius: var(--radius-sm);
    background: transparent;
    overflow: hidden;
    cursor: pointer;
}

.thumbnail-selected[b-pqtrqbv76b] {
    border-color: var(--color-accent-fill);
}

.summary[b-pqtrqbv76b] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
}

.title-row[b-pqtrqbv76b] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-3);
}

.recipe-title[b-pqtrqbv76b] {
    font-size: var(--font-size-hero);
    line-height: var(--line-height-hero);
}

.title-actions[b-pqtrqbv76b] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-2);
}

.description[b-pqtrqbv76b] {
    margin: 0;
    color: var(--color-text-secondary);
}

.facts[b-pqtrqbv76b] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-5);
    margin: 0;
}

.fact dt[b-pqtrqbv76b] {
    color: var(--color-text-muted);
    font-size: var(--font-size-xs);
}

.fact dd[b-pqtrqbv76b] {
    margin: 0;
    font-weight: var(--font-weight-semibold);
}

.tags[b-pqtrqbv76b] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-2);
}

.tag[b-pqtrqbv76b] {
    padding: 0 var(--space-3);
    border-radius: var(--radius-pill);
    background: var(--color-accent-subtle);
    color: var(--color-accent-text);
    font-size: var(--font-size-xs);
    line-height: 24px;
}

.rating-row[b-pqtrqbv76b] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    color: var(--color-text-secondary);
}

.columns[b-pqtrqbv76b] {
    display: grid;
    grid-template-columns: minmax(280px, 1fr) minmax(0, 2fr);
    gap: var(--space-6);
    align-items: start;
}

.section-header[b-pqtrqbv76b] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-3);
    margin-bottom: var(--space-3);
}

.group-name[b-pqtrqbv76b] {
    margin: var(--space-4) 0 var(--space-1);
    font-size: var(--font-size-md);
    color: var(--color-accent-text);
}

.ingredient-list[b-pqtrqbv76b] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.ingredient-line[b-pqtrqbv76b] {
    display: grid;
    grid-template-columns: minmax(6rem, auto) minmax(0, 1fr);
    gap: var(--space-3);
    padding: var(--space-2) 0;
    border-bottom: var(--stroke-width-thin) solid var(--color-border);
}

.ingredient-quantity[b-pqtrqbv76b] {
    font-weight: var(--font-weight-semibold);
}

.ingredient-note[b-pqtrqbv76b],
.ingredient-optional[b-pqtrqbv76b] {
    color: var(--color-text-secondary);
}

.step-list[b-pqtrqbv76b] {
    margin: var(--space-3) 0 0;
    padding: 0;
    list-style: none;
    counter-reset: step;
}

.step-item[b-pqtrqbv76b] {
    position: relative;
    margin-bottom: var(--space-4);
    padding-left: 48px;
    counter-increment: step;
}

.step-item[b-pqtrqbv76b]::before {
    content: counter(step);
    position: absolute;
    left: 0;
    top: 0;
    display: grid;
    place-items: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--color-accent-fill);
    color: var(--color-text-on-accent);
    font-weight: var(--font-weight-bold);
}

.step-item p[b-pqtrqbv76b] {
    margin: 0 0 var(--space-1);
}

.step-duration[b-pqtrqbv76b] {
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
}

.notes[b-pqtrqbv76b] {
    padding: var(--space-4);
    border-radius: var(--radius-md);
    background: var(--color-bg-subtle);
}

.source[b-pqtrqbv76b] {
    word-break: break-all;
}

@media (max-width: 899px) {
    .columns[b-pqtrqbv76b] {
        grid-template-columns: minmax(0, 1fr);
        gap: var(--space-5);
    }

    .recipe-title[b-pqtrqbv76b] {
        font-size: var(--font-size-xxl);
        line-height: var(--line-height-xxl);
    }
}

.load-error[b-pqtrqbv76b] {
    color: var(--color-danger);
}
/* /Modules/Recipes/Pages/RecipeEditPage.razor.rz.scp.css */
.edit[b-qlaitsbsrk] {
    display: flex;
    flex-direction: column;
    gap: var(--space-5);
    max-width: var(--shell-max);
    margin: 0 auto;
}

.import-banner[b-qlaitsbsrk] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
    padding: var(--space-4);
    border: var(--stroke-width-thin) solid var(--color-warning);
    border-radius: var(--radius-md);
    background: var(--color-bg-subtle);
}

.import-banner h2[b-qlaitsbsrk] {
    font-size: var(--font-size-lg);
}

.import-warnings[b-qlaitsbsrk] {
    margin: 0;
    padding-left: var(--space-5);
    color: var(--color-text-secondary);
}

.create-new-ingredients[b-qlaitsbsrk] {
    align-self: flex-start;
}

.status[b-qlaitsbsrk] {
    display: grid;
    place-items: center;
    padding: var(--space-6);
    color: var(--color-text-secondary);
}

.load-error[b-qlaitsbsrk] {
    color: var(--color-danger);
}

.section[b-qlaitsbsrk] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
    padding: var(--space-4);
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-bg-elevated);
}

.section h2[b-qlaitsbsrk] {
    font-size: var(--font-size-lg);
}

.basics-grid[b-qlaitsbsrk] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: end;
    gap: var(--space-3);
}

.span-all[b-qlaitsbsrk] {
    grid-column: 1 / -1;
}

.ingredient-rows[b-qlaitsbsrk],
.step-rows[b-qlaitsbsrk] {
    display: flex;
    flex-direction: column;
}

.add-ingredient[b-qlaitsbsrk],
.add-step[b-qlaitsbsrk] {
    align-self: flex-start;
}

.save-bar[b-qlaitsbsrk] {
    position: sticky;
    bottom: 0;
    z-index: 10;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: var(--space-3);
    padding: var(--space-3) var(--space-4);
    padding-bottom: calc(var(--space-3) + env(safe-area-inset-bottom, 0px));
    border-top: var(--stroke-width-thin) solid var(--color-border-strong);
    background: var(--color-bg-elevated);
    box-shadow: var(--shadow-lg);
}

.save-messages[b-qlaitsbsrk] {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-width: 0;
}

.problem[b-qlaitsbsrk] {
    color: var(--color-danger);
    font-size: var(--font-size-xs);
}

@media (max-width: 899px) {
    .basics-grid[b-qlaitsbsrk] {
        grid-template-columns: minmax(0, 1fr);
    }

    .save-bar .save-recipe[b-qlaitsbsrk],
    .save-bar .cancel-edit[b-qlaitsbsrk] {
        flex: 1 1 40%;
    }
}
/* /Modules/Recipes/Pages/RecipesPage.razor.rz.scp.css */
.recipes[b-nsibhi8kp2] {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
    max-width: var(--shell-max);
    margin: 0 auto;
}

.header[b-nsibhi8kp2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-3);
}

.header-actions[b-nsibhi8kp2] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-2);
}

.filters[b-nsibhi8kp2] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    align-items: end;
    gap: var(--space-3);
}

.filter-search[b-nsibhi8kp2] {
    grid-column: 1 / -1;
}

.filter-switch[b-nsibhi8kp2] {
    align-self: center;
}

.grid[b-nsibhi8kp2] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: var(--space-4);
}

.status[b-nsibhi8kp2] {
    display: grid;
    place-items: center;
    padding: var(--space-6);
    color: var(--color-text-secondary);
}

@media (max-width: 599px) {
    .grid[b-nsibhi8kp2] {
        grid-template-columns: minmax(0, 1fr);
    }

    .filters[b-nsibhi8kp2] {
        grid-template-columns: minmax(0, 1fr);
    }
}
/* /Modules/Shopping/Components/ManualItemDialog.razor.rz.scp.css */
.amount-row[b-sgzc3szoc2] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: var(--space-2);
}

.actions[b-sgzc3szoc2] {
    display: flex;
    justify-content: flex-end;
    gap: var(--space-2);
}

.ingredient-host[b-sgzc3szoc2]  .ingredient-search {
    width: 100%;
}
/* /Modules/Shopping/Components/ShoppingItemRow.razor.rz.scp.css */
.item[b-1zi2yiprx3] {
    display: flex;
    flex-direction: column;
    background: var(--color-bg-surface);
}

.row[b-1zi2yiprx3] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-2);
}

.check-target[b-1zi2yiprx3] {
    display: flex;
    flex: 1 1 auto;
    align-items: center;
    gap: var(--space-3);
    min-width: 0;
    min-height: 56px;
    padding: var(--space-2) var(--space-3);
    cursor: pointer;
}

.check-box[b-1zi2yiprx3] {
    flex: 0 0 auto;
    width: 28px;
    height: 28px;
    margin: 0;
    accent-color: var(--color-accent-fill);
    cursor: pointer;
}

.item-text[b-1zi2yiprx3] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: var(--space-1) var(--space-3);
    min-width: 0;
}

.item-name[b-1zi2yiprx3] {
    font-weight: var(--font-weight-semibold);
    overflow-wrap: anywhere;
}

.item-quantity[b-1zi2yiprx3] {
    color: var(--color-text-secondary);
}

.item-picnic[b-1zi2yiprx3] {
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
}

.item-checked .item-name[b-1zi2yiprx3],
.item-checked .item-quantity[b-1zi2yiprx3] {
    color: var(--color-text-muted);
    text-decoration: line-through;
}

.row-actions[b-1zi2yiprx3] {
    display: flex;
    flex: 0 0 auto;
}

.details[b-1zi2yiprx3] {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
    padding: 0 var(--space-3) var(--space-3) calc(var(--space-3) * 2 + 28px);
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
}

.details-recipes[b-1zi2yiprx3] {
    margin: 0;
    padding-left: var(--space-4);
}
/* /Modules/Shopping/Pages/ShoppingPage.razor.rz.scp.css */
.shopping[b-d3yys5hac1] {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
    max-width: var(--shell-max);
    margin: 0 auto;
}

.header[b-d3yys5hac1],
.toolbar[b-d3yys5hac1] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-3);
}

.week-nav[b-d3yys5hac1],
.toolbar-actions[b-d3yys5hac1] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-2);
}

.week-label[b-d3yys5hac1] {
    min-width: 12rem;
    text-align: center;
    font-weight: var(--font-weight-semibold);
}

.status[b-d3yys5hac1] {
    display: grid;
    place-items: center;
    padding: var(--space-6);
    margin: 0;
    color: var(--color-text-secondary);
    text-align: center;
}

.check-progress[b-d3yys5hac1] {
    margin: 0;
    color: var(--color-text-secondary);
    font-weight: var(--font-weight-semibold);
}

.category[b-d3yys5hac1] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
}

.category-title[b-d3yys5hac1] {
    margin: 0;
    font-size: var(--font-size-lg);
    line-height: var(--line-height-md);
}

.items[b-d3yys5hac1] {
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 0;
    list-style: none;
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-md);
    overflow: hidden;
}

.items > :not(:first-child)[b-d3yys5hac1] {
    border-top: var(--stroke-width-thin) solid var(--color-border);
}

.assumed-at-home[b-d3yys5hac1] {
    background: var(--color-bg-subtle);
    border: var(--stroke-width-thin) solid var(--color-border);
    border-radius: var(--radius-md);
}

.assumed-summary[b-d3yys5hac1] {
    min-height: var(--control-height-touch);
    padding: var(--space-3);
    font-weight: var(--font-weight-semibold);
    cursor: pointer;
}

.assumed-hint[b-d3yys5hac1] {
    margin: 0;
    padding: 0 var(--space-3);
    color: var(--color-text-secondary);
    font-size: var(--font-size-xs);
}

.assumed-list[b-d3yys5hac1] {
    margin: 0;
    padding: var(--space-2) var(--space-3) var(--space-3);
    list-style: none;
}

.assumed-item[b-d3yys5hac1] {
    display: flex;
    justify-content: space-between;
    gap: var(--space-3);
    padding: var(--space-1) 0;
}

.assumed-quantity[b-d3yys5hac1] {
    color: var(--color-text-secondary);
}

@media (max-width: 767px) {
    .week-label[b-d3yys5hac1] {
        min-width: 0;
        flex: 1 1 100%;
        order: -1;
    }

    .toolbar-actions[b-d3yys5hac1] {
        width: 100%;
    }
}
/* /Pages/HomePage.razor.rz.scp.css */
.home[b-gvph3oxsbu] {
    max-width: 640px;
    margin: var(--space-6) auto 0;
    text-align: center;
}

.home p[b-gvph3oxsbu] {
    color: var(--color-text-secondary);
    margin: var(--space-3) 0 var(--space-5);
}

.assistant-link[b-gvph3oxsbu] {
    display: inline-block;
    margin-bottom: var(--space-5);
    color: var(--color-accent-text);
    font-weight: var(--font-weight-semibold);
}
