@import '_content/Microsoft.FluentUI.AspNetCore.Components/Microsoft.FluentUI.AspNetCore.Components.84wtju4z0n.bundle.scp.css';

/* /Components/ActivityHeatMap.razor.rz.scp.css */
.activity-heatmap[b-al48kzxg1z] {
    overflow-x: auto;
    padding: 0.25rem 0;
}

.heatmap-svg[b-al48kzxg1z] {
    width: 100%;
    height: auto;
    display: block;
    min-width: 500px;
}

@media (max-width: 480px) {
    .heatmap-svg[b-al48kzxg1z] {
        min-width: 400px;
    }
}
/* /Components/AdHocWorkoutPanel.razor.rz.scp.css */
.strength-text-input[b-8pmt7o0z4x]
{
    width: 100%;
    min-width: 10rem;
    padding: 0.45rem 0.5rem;
    border: 1px solid var(--ha-border);
    border-radius: 0.45rem;
    color: var(--ha-text);
    background-color: var(--ha-panel);
}

.adhoc-search[b-8pmt7o0z4x]
{
    position: relative;
    margin-bottom: 0.75rem;
}

.adhoc-search__input[b-8pmt7o0z4x]
{
    width: 100%;
}

.adhoc-search__results[b-8pmt7o0z4x]
{
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: var(--neutral-fill-rest);
    border: 1px solid var(--neutral-stroke-rest);
    border-radius: 4px;
    max-height: 200px;
    overflow-y: auto;
    z-index: 10;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

.adhoc-search__result[b-8pmt7o0z4x]
{
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: none;
    background: transparent;
    cursor: pointer;
    text-align: left;
    font-size: 0.875rem;
    color: inherit;
}

.adhoc-search__result:hover[b-8pmt7o0z4x]
{
    background: var(--accent-fill-hover);
    color: var(--foreground-on-accent-rest);
}

.adhoc-selected__list[b-8pmt7o0z4x]
{
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.adhoc-selected__item[b-8pmt7o0z4x]
{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.375rem 0.5rem;
    background: var(--neutral-fill-secondary-rest);
    border-radius: 4px;
    font-size: 0.875rem;
}

.remove-set-btn[b-8pmt7o0z4x]
{
    background: none;
    border: none;
    color: var(--ha-text-placeholder);
    font-size: 0.85rem;
    cursor: pointer;
    padding: 0.2rem 0.4rem;
    border-radius: 0.25rem;
    line-height: 1;
    transition: color 0.15s, background 0.15s;
}

.remove-set-btn:hover[b-8pmt7o0z4x]
{
    color: var(--ha-danger);
    background: rgba(198, 40, 40, 0.08);
}
/* /Components/BehavioralPRs.razor.rz.scp.css */
/* ── Behavioral PRs Feed ────────────────────────────────────── */
.behavioral-prs[b-hqtl4c4giy] {
    border-left: 4px solid var(--ha-gold-bg, var(--ha-warning));
}

.behavioral-prs__header[b-hqtl4c4giy] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}

.behavioral-prs__icon[b-hqtl4c4giy] {
    font-size: 1.75rem;
    line-height: 1;
}

.behavioral-prs__kicker[b-hqtl4c4giy] {
    margin: 0;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.behavioral-prs__title[b-hqtl4c4giy] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
}

.behavioral-prs__list[b-hqtl4c4giy] {
    display: grid;
    gap: 0.5rem;
}

.behavioral-prs__item[b-hqtl4c4giy] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    padding: 0.55rem 0.75rem;
    border-radius: 0.6rem;
    background: linear-gradient(135deg, var(--ha-gold-bg, var(--ha-warning-bg)) 0%, var(--ha-panel, var(--ha-panel)) 100%);
    border: 1px solid var(--ha-border, var(--ha-border));
    transition: transform 0.15s ease;
}

.behavioral-prs__item:hover[b-hqtl4c4giy] {
    transform: translateX(2px);
}

.behavioral-prs__emoji[b-hqtl4c4giy] {
    font-size: 1.35rem;
    flex-shrink: 0;
}

.behavioral-prs__detail[b-hqtl4c4giy] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    min-width: 0;
}

.behavioral-prs__name[b-hqtl4c4giy] {
    font-size: 0.92rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
}

.behavioral-prs__date[b-hqtl4c4giy] {
    font-size: 0.78rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
}
/* /Components/BehaviorPlan.razor.rz.scp.css */
/* ── Behavior Plan Card ─────────────────────────────────────── */
.behavior-plan[b-i1y0q3nvw6] {
    border-left: 4px solid var(--ha-success, var(--ha-success));
}

.behavior-plan__header[b-i1y0q3nvw6] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}

.behavior-plan__icon[b-i1y0q3nvw6] {
    font-size: 1.75rem;
    line-height: 1;
}

.behavior-plan__kicker[b-i1y0q3nvw6] {
    margin: 0;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.behavior-plan__title[b-i1y0q3nvw6] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
}

.behavior-plan__body[b-i1y0q3nvw6] {
    margin-bottom: 1rem;
}

/* ── Week sections ─────────────────────────────────────────── */
.behavior-plan__section[b-i1y0q3nvw6] {
    margin-bottom: 1rem;
}

.behavior-plan__section-title[b-i1y0q3nvw6] {
    margin: 0 0 0.5rem;
    font-size: 0.85rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

/* ── Behavior scripts ──────────────────────────────────────── */
.behavior-plan__script-card[b-i1y0q3nvw6] {
    padding: 0.65rem 0.85rem;
    margin-bottom: 0.5rem;
    border-radius: 0.6rem;
    background: var(--ha-panel-alt, var(--ha-panel-alt));
    border: 1px solid var(--ha-border, var(--ha-border));
}

.behavior-plan__script-text[b-i1y0q3nvw6] {
    margin: 0;
    font-size: 0.92rem;
    color: var(--ha-text, var(--ha-text));
    line-height: 1.5;
}

.behavior-plan__trigger[b-i1y0q3nvw6] {
    font-weight: 600;
    color: var(--ha-accent, var(--ha-accent));
}

.behavior-plan__action[b-i1y0q3nvw6] {
    font-weight: 600;
    color: var(--ha-success-emphasis, var(--ha-success-emphasis));
}

.behavior-plan__reward[b-i1y0q3nvw6] {
    margin: 0.3rem 0 0;
    font-size: 0.82rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

/* ── Habit stacks (visual chain) ───────────────────────────── */
.behavior-plan__habit-chain[b-i1y0q3nvw6] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.55rem 0.85rem;
    margin-bottom: 0.4rem;
    border-radius: 0.6rem;
    background: var(--ha-panel-alt, var(--ha-panel-alt));
    border: 1px solid var(--ha-border, var(--ha-border));
    flex-wrap: wrap;
}

.behavior-plan__anchor[b-i1y0q3nvw6] {
    font-size: 0.88rem;
    font-weight: 600;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.behavior-plan__chain-arrow[b-i1y0q3nvw6] {
    color: var(--ha-accent, var(--ha-accent));
    font-weight: 700;
    font-size: 1.1rem;
    flex-shrink: 0;
}

.behavior-plan__new-behavior[b-i1y0q3nvw6] {
    font-size: 0.92rem;
    font-weight: 600;
    color: var(--ha-success-emphasis, var(--ha-success-emphasis));
}

/* ── Commitment devices ────────────────────────────────────── */
.behavior-plan__commitment-card[b-i1y0q3nvw6] {
    padding: 0.6rem 0.85rem;
    margin-bottom: 0.4rem;
    border-radius: 0.6rem;
    background: var(--ha-panel-alt, var(--ha-panel-alt));
    border: 1px solid var(--ha-border, var(--ha-border));
}

.behavior-plan__commitment-what[b-i1y0q3nvw6] {
    margin: 0;
    font-size: 0.92rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
}

.behavior-plan__commitment-how[b-i1y0q3nvw6] {
    margin: 0.25rem 0 0;
    font-size: 0.82rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

/* ── Encouragement ─────────────────────────────────────────── */
.behavior-plan__encouragement[b-i1y0q3nvw6] {
    margin-top: 1rem;
    padding: 0.85rem 1rem;
    border-radius: 0.75rem;
    background: linear-gradient(135deg, var(--ha-success-bg, var(--ha-success-bg)) 0%, var(--ha-panel, var(--ha-panel)) 100%);
    border: 1px solid var(--ha-success-border, var(--ha-success-border));
}

.behavior-plan__encouragement p[b-i1y0q3nvw6] {
    margin: 0;
    font-size: 0.92rem;
    font-style: italic;
    color: var(--ha-success-emphasis, var(--ha-success-emphasis));
    line-height: 1.5;
}

/* ── States ────────────────────────────────────────────────── */
.behavior-plan__prompt[b-i1y0q3nvw6] {
    margin: 0 0 0.75rem;
    font-size: 0.92rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.behavior-plan__error[b-i1y0q3nvw6] {
    margin: 0.5rem 0 0;
    font-size: 0.85rem;
    color: var(--ha-danger, var(--ha-danger));
}

@media (max-width: 480px) {
    .behavior-plan__habit-chain[b-i1y0q3nvw6] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.25rem;
    }
}
/* /Components/CalendarGrid.razor.rz.scp.css */
.mesocycle-strip[b-6u96jlm2em]
{
    margin: 0.25rem 0 1.25rem;
    padding: 0.75rem 1rem;
    background: var(--ha-surface-subtle, var(--ha-surface-subtle));
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 0.5rem;
}

.mesocycle-strip__phases[b-6u96jlm2em]
{
    display: flex;
    gap: 0.5rem;
    margin-bottom: 0.5rem;
    flex-wrap: wrap;
}

.mesocycle-strip__phase[b-6u96jlm2em]
{
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--ha-text-muted, var(--ha-text-muted));
    padding: 0.2rem 0.6rem;
    border-radius: 1rem;
    background: var(--ha-panel, var(--ha-panel));
    border: 1px solid var(--ha-border, var(--ha-border));
}

.mesocycle-strip__phase--active[b-6u96jlm2em]
{
    color: var(--ha-panel);
    background: var(--ha-success, var(--ha-success));
    border-color: var(--ha-success, var(--ha-success));
}

.mesocycle-strip__phase--accumulation[b-6u96jlm2em]
{
    background: var(--ha-accent-emphasis, var(--ha-accent-emphasis));
    border-color: var(--ha-accent-emphasis, var(--ha-accent-emphasis));
}

.mesocycle-strip__phase--intensification[b-6u96jlm2em]
{
    background: var(--ha-warning-emphasis, var(--ha-warning-emphasis));
    border-color: var(--ha-warning-emphasis, var(--ha-warning-emphasis));
}

.mesocycle-strip__phase--overreach[b-6u96jlm2em]
{
    background: var(--ha-danger-emphasis, var(--ha-danger));
    border-color: var(--ha-danger-emphasis, var(--ha-danger));
}

.mesocycle-strip__bar[b-6u96jlm2em]
{
    height: 8px;
    border-radius: 4px;
    background: var(--ha-border, var(--ha-border));
    overflow: hidden;
    margin-bottom: 0.4rem;
}

.mesocycle-strip__fill[b-6u96jlm2em]
{
    height: 100%;
    border-radius: 4px;
    background: linear-gradient(90deg, var(--ha-accent-emphasis, var(--ha-accent-emphasis)), var(--ha-accent-muted, var(--ha-accent-muted)));
    transition: width 0.4s ease;
}

.mesocycle-strip__fill--intensification[b-6u96jlm2em]
{
    background: linear-gradient(90deg, var(--ha-warning-emphasis, var(--ha-warning-emphasis)), var(--ha-warning, var(--ha-gold)));
}

.mesocycle-strip__fill--overreach[b-6u96jlm2em]
{
    background: linear-gradient(90deg, var(--ha-danger-emphasis, var(--ha-danger)), var(--ha-danger, var(--ha-danger)));
}

.mesocycle-strip__banner[b-6u96jlm2em]
{
    font-size: 0.85rem;
    font-weight: 600;
    margin-bottom: 0.25rem;
    color: var(--ha-text, var(--ha-text));
}

.status-alert--warning[b-6u96jlm2em],
.status-alert--info[b-6u96jlm2em]
{
    margin-bottom: 0.75rem;
    border-radius: 0.5rem;
    padding: 0.75rem 1rem;
}

/* ── Week view ──────────────────────────────────────────────── */
[b-6u96jlm2em] .week-view__nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem;
}

[b-6u96jlm2em] .week-view__label {
    font-weight: 600;
    font-size: 0.95rem;
}

[b-6u96jlm2em] .week-nav-btn {
    background: none;
    border: 1px solid var(--ha-border);
    border-radius: 6px;
    padding: 0.25rem 0.75rem;
    cursor: pointer;
    font-size: 0.85rem;
    color: var(--ha-text);
}

[b-6u96jlm2em] .week-nav-btn:hover {
    background: var(--ha-surface-subtle);
}

[b-6u96jlm2em] .week-view__cards {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 0.5rem;
}

[b-6u96jlm2em] .week-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
    padding: 0.75rem 0.35rem;
    border: 1px solid var(--ha-border);
    border-radius: 8px;
    background: var(--ha-panel);
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s;
    text-align: center;
    font: inherit;
    color: inherit;
}

[b-6u96jlm2em] .week-card:disabled {
    cursor: default;
}

[b-6u96jlm2em] .week-card:not(:disabled):hover {
    background: var(--ha-surface-subtle);
}

[b-6u96jlm2em] .week-card--selected {
    background: var(--ha-accent-bg);
    border-color: var(--ha-accent-emphasis);
}

[b-6u96jlm2em] .week-card--today {
    border-color: var(--ha-accent-emphasis);
    border-width: 2px;
}

[b-6u96jlm2em] .week-card--rest {
    opacity: 0.6;
}

[b-6u96jlm2em] .week-card__day {
    font-size: 0.75rem;
    color: var(--ha-text-muted);
    text-transform: uppercase;
    font-weight: 600;
}

[b-6u96jlm2em] .week-card__date {
    font-size: 1.25rem;
    font-weight: 700;
}

[b-6u96jlm2em] .week-card__title {
    font-size: 0.75rem;
    color: var(--ha-text-muted);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
}

@media (max-width: 480px) {
    [b-6u96jlm2em] .week-view__cards {
        grid-template-columns: repeat(7, 1fr);
        gap: 0.25rem;
    }

    [b-6u96jlm2em] .week-card {
        padding: 0.5rem 0.15rem;
    }

    [b-6u96jlm2em] .week-card__title {
        display: none;
    }
}

@media (max-width: 480px) {
    [b-6u96jlm2em] .week-view__cards {
        grid-template-columns: repeat(7, minmax(44px, 1fr));
        gap: 0.15rem;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    [b-6u96jlm2em] .week-card {
        min-width: 44px;
        padding: 0.25rem;
        font-size: 0.7rem;
    }
}

/* ── Calendar day (month view) ──────────────────────────────── */
[b-6u96jlm2em] .calendar-day__button {
    width: 100%;
    background: transparent;
    color: inherit;
    border: 0;
    padding: 0;
    text-align: left;
    font: inherit;
    cursor: pointer;
}

[b-6u96jlm2em] .calendar-day__button:disabled {
    cursor: default;
    opacity: 0.75;
}

[b-6u96jlm2em] .calendar-day--selected {
    background: var(--ha-accent-bg);
}

[b-6u96jlm2em] .calendar-day--today {
    border: 2px solid var(--ha-accent-emphasis);
    border-radius: 6px;
}

[b-6u96jlm2em] .calendar-day--today .calendar-day__button {
    font-weight: 600;
}
/* /Components/CoachChat.razor.rz.scp.css */
.session-chat-panel[b-9mju5txp6x] {
    margin-top: 1rem;
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 0.85rem;
    overflow: hidden;
    background: var(--ha-surface-subtle, var(--ha-surface-subtle));
}

.session-chat-toggle[b-9mju5txp6x] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 0.65rem 1rem;
    background: none;
    border: none;
    cursor: pointer;
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--ha-accent, var(--ha-accent-emphasis));
    text-align: left;
    transition: background 0.15s;
}

.session-chat-toggle:hover[b-9mju5txp6x] {
    background: var(--ha-surface-hover, var(--ha-accent-bg));
}

.session-chat-toggle__hint[b-9mju5txp6x] {
    font-size: 0.78rem;
    color: var(--ha-fg-muted, var(--ha-text-muted));
    font-weight: 400;
}

.session-chat-body[b-9mju5txp6x] {
    padding: 0.75rem 1rem;
    border-top: 1px solid var(--ha-border, var(--ha-border));
}

.chat-history[b-9mju5txp6x] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
    max-height: 320px;
    overflow-y: auto;
}

.chat-bubble[b-9mju5txp6x] {
    padding: 0.55rem 0.85rem;
    border-radius: 0.65rem;
    font-size: 0.875rem;
    line-height: 1.5;
    max-width: 90%;
}

.chat-bubble--user[b-9mju5txp6x] {
    background: var(--ha-accent, var(--ha-accent-emphasis));
    color: var(--ha-panel);
    align-self: flex-end;
    border-bottom-right-radius: 0.2rem;
}

.chat-bubble--coach[b-9mju5txp6x] {
    background: var(--ha-surface-default, var(--ha-panel));
    border: 1px solid var(--ha-border, var(--ha-border));
    border-left: 3px solid var(--ha-accent, var(--ha-accent-emphasis));
    align-self: flex-start;
    border-bottom-left-radius: 0.2rem;
}

.chat-bubble__label[b-9mju5txp6x] {
    display: block;
    font-size: 0.72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom: 0.2rem;
    opacity: 0.7;
}

.chat-bubble--user .chat-bubble__label[b-9mju5txp6x] {
    color: rgba(255, 255, 255, 0.8);
}

.chat-bubble--coach .chat-bubble__label[b-9mju5txp6x] {
    color: var(--ha-accent, var(--ha-accent-emphasis));
}

.chat-alternatives[b-9mju5txp6x] {
    margin-top: 0.5rem;
    font-size: 0.82rem;
}

.chat-alt-item[b-9mju5txp6x] {
    display: flex;
    gap: 0.5rem;
    align-items: baseline;
    padding: 0.25rem 0;
    border-bottom: 1px solid var(--ha-border-subtle, var(--ha-border));
}

.chat-alt-item:last-child[b-9mju5txp6x] { border-bottom: none; }

.chat-alt-name[b-9mju5txp6x] { font-weight: 600; color: var(--ha-fg-default, var(--ha-text)); }
.chat-alt-sets[b-9mju5txp6x] { color: var(--ha-accent, var(--ha-accent-emphasis)); font-size: 0.78rem; }
.chat-alt-notes[b-9mju5txp6x] { color: var(--ha-fg-muted, var(--ha-text-muted)); font-size: 0.75rem; font-style: italic; }

.chat-safety-note[b-9mju5txp6x] {
    margin-top: 0.5rem;
    padding: 0.4rem 0.65rem;
    background: var(--ha-warning-bg, var(--ha-warning-bg));
    border: 1px solid var(--ha-warning-border, var(--ha-warning-border));
    border-radius: 0.45rem;
    font-size: 0.8rem;
    color: var(--ha-warning-emphasis, var(--ha-warning));
}

.chat-input-row[b-9mju5txp6x] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

.chat-input[b-9mju5txp6x] {
    flex: 1;
    padding: 0.45rem 0.75rem;
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 0.5rem;
    font-size: 0.875rem;
    color: var(--ha-fg-default, var(--ha-text));
    background: var(--ha-surface-default, var(--ha-panel));
}

.chat-input:focus[b-9mju5txp6x] {
    outline: none;
    border-color: var(--ha-accent-emphasis, var(--ha-accent-muted));
    box-shadow: 0 0 0 3px rgba(83, 155, 245, 0.15);
}

.chat-error[b-9mju5txp6x] {
    margin-top: 0.4rem;
    font-size: 0.8rem;
    color: var(--ha-danger, var(--ha-danger));
}

@media (max-width: 480px) {
    .chat-input-row[b-9mju5txp6x] {
        flex-direction: column;
        align-items: stretch;
    }
}

/* ── Typing indicator ──────────────────────────────────────── */
.chat-typing-indicator[b-9mju5txp6x] {
    padding: 0.4rem 0;
    font-size: 0.85rem;
    color: var(--ha-fg-muted, var(--ha-text-muted));
    font-style: italic;
}

.chat-typing-dots[b-9mju5txp6x] {
    display: inline-flex;
    gap: 0;
}

.chat-typing-dots span[b-9mju5txp6x] {
    animation: chat-typing-dots-b-9mju5txp6x 1.4s infinite;
    font-weight: 700;
    font-style: normal;
}

.chat-typing-dots span:nth-child(2)[b-9mju5txp6x] {
    animation-delay: 0.2s;
}

.chat-typing-dots span:nth-child(3)[b-9mju5txp6x] {
    animation-delay: 0.4s;
}

@keyframes chat-typing-dots-b-9mju5txp6x {
    0%, 20% { opacity: 0.2; }
    50% { opacity: 1; }
    100% { opacity: 0.2; }
}
/* /Components/ConsistencyForecast.razor.rz.scp.css */
/* ── Consistency Forecast Card (compact) ───────────────────── */
.consistency-forecast[b-ek86wotoao] {
    border-left: 3px solid var(--ha-accent, var(--ha-accent));
}

.consistency-forecast__body[b-ek86wotoao] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
}

.consistency-forecast__icon[b-ek86wotoao] {
    font-size: 1.5rem;
    line-height: 1;
    flex-shrink: 0;
    margin-top: 0.1rem;
}

.consistency-forecast__content[b-ek86wotoao] {
    flex: 1;
    min-width: 0;
}

.consistency-forecast__kicker[b-ek86wotoao] {
    margin: 0;
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.consistency-forecast__message[b-ek86wotoao] {
    margin: 0.2rem 0 0;
    font-size: 0.92rem;
    color: var(--ha-text, var(--ha-text));
    line-height: 1.45;
}
/* /Components/DraftBanner.razor.rz.scp.css */
/* ── Draft banner — component isolation ──────────────────────── */
.plan-gen-draft-banner[b-l9dscw3hxt] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    border-radius: 10px;
    background: var(--ha-warning-bg, rgba(210, 153, 34, 0.1));
    border: 1px solid var(--ha-warning-border, rgba(210, 153, 34, 0.3));
    color: var(--ha-warning, var(--ha-warning));
    font-size: 0.9rem;
    margin-bottom: 1rem;
}

.plan-gen-draft-banner__icon[b-l9dscw3hxt] {
    font-size: 1.1rem;
}
/* /Components/ExerciseNotesEditor.razor.rz.scp.css */
.strength-text-input[b-ylo6ompait]
{
    width: 100%;
    min-width: 10rem;
    padding: 0.45rem 0.5rem;
    border: 1px solid var(--ha-border);
    border-radius: 0.45rem;
    color: var(--ha-text);
    background-color: var(--ha-panel);
}

.exercise-notes-panel[b-ylo6ompait]
{
    padding: 0.5rem 0;
}

.exercise-notes-input[b-ylo6ompait]
{
    width: 100%;
    resize: vertical;
    min-height: 2.5rem;
    font-size: 0.85rem;
}
/* /Components/ExercisePicker.razor.rz.scp.css */
.exercise-picker[b-f3lr1hjy46] {
    position: relative;
    width: 100%;
}

.exercise-picker__dropdown[b-f3lr1hjy46] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 100;
    background: var(--ha-panel, var(--ha-panel));
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 0.375rem;
    box-shadow: var(--ha-shadow, 0 4px 12px rgba(0,0,0,0.08));
    max-height: 220px;
    overflow-y: auto;
    margin-top: 2px;
}

.exercise-picker__option[b-f3lr1hjy46] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: none;
    background: transparent;
    cursor: pointer;
    font-size: 0.82rem;
    text-align: left;
    color: var(--ha-text, var(--ha-text));
    gap: 0.5rem;
}

.exercise-picker__option:hover[b-f3lr1hjy46] {
    background: var(--ha-accent-soft, var(--ha-accent-bg));
}

.exercise-picker__option-name[b-f3lr1hjy46] {
    font-weight: 500;
}

.exercise-picker__option-meta[b-f3lr1hjy46] {
    font-size: 0.72rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    white-space: nowrap;
}
/* /Components/GoalAudit.razor.rz.scp.css */
/* ── Goal Audit Card ────────────────────────────────────────── */
.goal-audit[b-b0gw4jnhhd] {
    border-left: 4px solid var(--ha-accent, var(--ha-accent));
}

.goal-audit__header[b-b0gw4jnhhd] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}

.goal-audit__icon[b-b0gw4jnhhd] {
    font-size: 1.75rem;
    line-height: 1;
}

.goal-audit__kicker[b-b0gw4jnhhd] {
    margin: 0;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.goal-audit__title[b-b0gw4jnhhd] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
}

.goal-audit__body[b-b0gw4jnhhd] {
    margin-bottom: 1rem;
}

.goal-audit__gauge-section[b-b0gw4jnhhd] {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 1rem;
}

.goal-audit__gauge[b-b0gw4jnhhd] {
    position: relative;
    width: 110px;
    height: 110px;
}

.goal-audit__svg[b-b0gw4jnhhd] {
    width: 100%;
    height: 100%;
}

.goal-audit__track[b-b0gw4jnhhd] {
    fill: none;
    stroke: var(--ha-border, var(--ha-border));
    stroke-width: 8;
}

.goal-audit__fill[b-b0gw4jnhhd] {
    fill: none;
    stroke-width: 8;
    stroke-linecap: round;
    transition: stroke-dashoffset 0.6s ease;
}

.goal-audit__fill.goal-audit--poor[b-b0gw4jnhhd] {
    stroke: var(--ha-danger, var(--ha-danger));
}

.goal-audit__fill.goal-audit--fair[b-b0gw4jnhhd] {
    stroke: var(--ha-warning, var(--ha-warning));
}

.goal-audit__fill.goal-audit--good[b-b0gw4jnhhd] {
    stroke: var(--ha-success, var(--ha-success));
}

.goal-audit__score[b-b0gw4jnhhd] {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1;
}

.goal-audit__score.goal-audit--poor[b-b0gw4jnhhd] {
    color: var(--ha-danger, var(--ha-danger));
}

.goal-audit__score.goal-audit--fair[b-b0gw4jnhhd] {
    color: var(--ha-warning, var(--ha-warning));
}

.goal-audit__score.goal-audit--good[b-b0gw4jnhhd] {
    color: var(--ha-success, var(--ha-success));
}

.goal-audit__gauge-label[b-b0gw4jnhhd] {
    margin: 0.25rem 0 0;
    font-size: 0.85rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.goal-audit__section-title[b-b0gw4jnhhd] {
    margin: 0 0 0.5rem;
    font-size: 0.88rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
}

/* ── Drift patterns ────────────────────────────────────────── */
.goal-audit__drifts[b-b0gw4jnhhd] {
    margin-bottom: 1rem;
}

.goal-audit__drift-card[b-b0gw4jnhhd] {
    padding: 0.6rem 0.85rem;
    margin-bottom: 0.5rem;
    border-radius: 0.6rem;
    background: var(--ha-panel-alt, var(--ha-panel-alt));
    border: 1px solid var(--ha-border, var(--ha-border));
}

.goal-audit__drift-pattern[b-b0gw4jnhhd] {
    margin: 0;
    font-size: 0.92rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
}

.goal-audit__drift-evidence[b-b0gw4jnhhd] {
    margin: 0.2rem 0 0;
    font-size: 0.82rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    font-style: italic;
}

/* ── Recommended adjustments ───────────────────────────────── */
.goal-audit__adjustments[b-b0gw4jnhhd] {
    margin-bottom: 0.5rem;
}

.goal-audit__adjustment-item[b-b0gw4jnhhd] {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    padding: 0.4rem 0;
    font-size: 0.9rem;
    color: var(--ha-text, var(--ha-text));
}

.goal-audit__adjustment-bullet[b-b0gw4jnhhd] {
    color: var(--ha-accent, var(--ha-accent));
    font-weight: 700;
    flex-shrink: 0;
}

.goal-audit__prompt[b-b0gw4jnhhd] {
    margin: 0 0 0.75rem;
    font-size: 0.92rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.goal-audit__error[b-b0gw4jnhhd] {
    margin: 0.5rem 0 0;
    font-size: 0.85rem;
    color: var(--ha-danger, var(--ha-danger));
}
/* /Components/IntervalTimer.razor.rz.scp.css */
.interval-timer[b-tzdfxdgg9f] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.25rem;
    padding: 2rem 1.5rem;
    border-radius: 20px;
    background: var(--ha-panel);
    border: 2px solid var(--ha-border);
    transition: border-color 0.3s;
}

.interval-timer--work[b-tzdfxdgg9f] {
    border-color: var(--ha-accent);
}

.interval-timer--rest[b-tzdfxdgg9f] {
    border-color: var(--ha-success);
}

.interval-timer__header[b-tzdfxdgg9f] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.interval-timer__display[b-tzdfxdgg9f] {
    display: flex;
    align-items: center;
    justify-content: center;
}

.interval-timer__time[b-tzdfxdgg9f] {
    font-size: 4rem;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.04em;
    line-height: 1;
    color: var(--ha-text);
}

.interval-timer__round[b-tzdfxdgg9f] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
}

.interval-timer__round-label[b-tzdfxdgg9f] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--ha-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.interval-timer__round-value[b-tzdfxdgg9f] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--ha-text);
}

.interval-timer__amrap-row[b-tzdfxdgg9f] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.interval-timer__amrap-btn[b-tzdfxdgg9f] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    border: 2px solid var(--ha-accent);
    border-radius: 50%;
    background: transparent;
    color: var(--ha-accent);
    font-size: 1.5rem;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
}

.interval-timer__amrap-btn:hover[b-tzdfxdgg9f] {
    background: var(--ha-accent);
    color: var(--ha-panel);
}

.interval-timer__controls[b-tzdfxdgg9f] {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
    justify-content: center;
}

.interval-timer__btn[b-tzdfxdgg9f] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.65rem 1.25rem;
    border: 1px solid var(--ha-border);
    border-radius: 999px;
    font-size: 0.9rem;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s;
}

.interval-timer__btn--start[b-tzdfxdgg9f] {
    background: var(--ha-accent);
    color: var(--ha-panel);
    border-color: var(--ha-accent);
}

.interval-timer__btn--start:hover[b-tzdfxdgg9f] {
    opacity: 0.9;
}

.interval-timer__btn--pause[b-tzdfxdgg9f] {
    background: var(--ha-warning);
    color: var(--ha-panel);
    border-color: var(--ha-warning);
}

.interval-timer__btn--pause:hover[b-tzdfxdgg9f] {
    opacity: 0.9;
}

.interval-timer__btn--reset[b-tzdfxdgg9f] {
    background: var(--ha-panel);
    color: var(--ha-text);
}

.interval-timer__btn--reset:hover[b-tzdfxdgg9f] {
    background: var(--ha-panel-alt, var(--ha-panel-alt));
}
/* /Components/LoadingSkeleton.razor.rz.scp.css */
.loading-skeleton[b-m03io3olix] {
    display: grid;
    gap: 0.75rem;
    padding: 1rem 0;
}

.loading-skeleton__bar[b-m03io3olix] {
    height: 1rem;
    border-radius: 0.5rem;
    background: linear-gradient(90deg, var(--ha-panel-alt) 25%, var(--ha-border) 50%, var(--ha-panel-alt) 75%);
    background-size: 200% 100%;
    animation: skeleton-shimmer-b-m03io3olix 1.5s ease-in-out infinite;
}

.loading-skeleton__bar--wide[b-m03io3olix]   { width: 100%; }
.loading-skeleton__bar--medium[b-m03io3olix] { width: 75%; }
.loading-skeleton__bar--narrow[b-m03io3olix] { width: 50%; }

@keyframes skeleton-shimmer-b-m03io3olix {
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* ── CSS-only rotating messages (no timer, no re-renders) ── */

.loading-skeleton__messages[b-m03io3olix] {
    position: relative;
    height: 1.4rem;
    margin-top: 0.5rem;
    overflow: hidden;
}

.loading-skeleton__message[b-m03io3olix] {
    position: absolute;
    inset: 0;
    margin: 0;
    font-size: 0.85rem;
    color: var(--ha-text-muted);
    text-align: center;
    opacity: 0;
    animation: loading-msg-cycle-b-m03io3olix 8s ease-in-out infinite;
}

.loading-skeleton__message--0[b-m03io3olix] { animation-delay: 0s; }
.loading-skeleton__message--1[b-m03io3olix] { animation-delay: 2s; }
.loading-skeleton__message--2[b-m03io3olix] { animation-delay: 4s; }
.loading-skeleton__message--3[b-m03io3olix] { animation-delay: 6s; }

@keyframes loading-msg-cycle-b-m03io3olix {
    0%, 5%   { opacity: 0; }
    10%, 20% { opacity: 1; }
    25%, 100%{ opacity: 0; }
}
/* /Components/MomentumReport.razor.rz.scp.css */
/* ── Momentum Report Card ──────────────────────────────────── */
.momentum-report[b-ww2q1wcbws] {
    border-left: 4px solid var(--ha-accent, var(--ha-accent));
}

.momentum-report__header[b-ww2q1wcbws] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}

.momentum-report__icon[b-ww2q1wcbws] {
    font-size: 1.75rem;
    line-height: 1;
}

.momentum-report__kicker[b-ww2q1wcbws] {
    margin: 0;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.momentum-report__title[b-ww2q1wcbws] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
}

.momentum-report__body[b-ww2q1wcbws] {
    margin-bottom: 1rem;
}

/* ── Trajectory ────────────────────────────────────────────── */
.momentum-report__trajectory[b-ww2q1wcbws] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 1rem;
    padding: 0.65rem 1rem;
    border-radius: 0.6rem;
    background: var(--ha-panel-alt, var(--ha-panel-alt));
    border: 1px solid var(--ha-border, var(--ha-border));
}

.momentum-report__trajectory-arrow[b-ww2q1wcbws] {
    font-size: 1.5rem;
    line-height: 1;
}

.momentum-report__trajectory-label[b-ww2q1wcbws] {
    font-size: 1rem;
    font-weight: 700;
    text-transform: capitalize;
}

.momentum-report__trajectory--improving[b-ww2q1wcbws] {
    color: var(--ha-success-emphasis, var(--ha-success-emphasis));
}

.momentum-report__trajectory--stable[b-ww2q1wcbws] {
    color: var(--ha-text, var(--ha-text));
}

.momentum-report__trajectory--declining[b-ww2q1wcbws] {
    color: var(--ha-warning, var(--ha-warning));
}

/* ── Highlights (celebration cards) ────────────────────────── */
.momentum-report__highlights[b-ww2q1wcbws] {
    margin-bottom: 1rem;
}

.momentum-report__section-title[b-ww2q1wcbws] {
    margin: 0 0 0.5rem;
    font-size: 0.88rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
}

.momentum-report__highlight-grid[b-ww2q1wcbws] {
    display: grid;
    gap: 0.5rem;
}

.momentum-report__highlight-card[b-ww2q1wcbws] {
    padding: 0.65rem 0.85rem;
    border-radius: 0.6rem;
    background: linear-gradient(135deg, var(--ha-success-bg, var(--ha-success-bg)) 0%, var(--ha-panel, var(--ha-panel)) 100%);
    border: 1px solid var(--ha-success-border, var(--ha-success-border));
}

.momentum-report__highlight-card p[b-ww2q1wcbws] {
    margin: 0;
    font-size: 0.92rem;
    color: var(--ha-success-emphasis, var(--ha-success-emphasis));
    font-weight: 500;
}

/* ── Correlation insight ───────────────────────────────────── */
.momentum-report__correlation[b-ww2q1wcbws] {
    margin-bottom: 1rem;
}

.momentum-report__correlation-card[b-ww2q1wcbws] {
    padding: 0.75rem 1rem;
    border-radius: 0.6rem;
    background: var(--ha-panel-alt, var(--ha-panel-alt));
    border: 1px solid var(--ha-accent-soft, var(--ha-accent-soft));
}

.momentum-report__correlation-text[b-ww2q1wcbws] {
    margin: 0;
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
    line-height: 1.5;
}

.momentum-report__confidence[b-ww2q1wcbws] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.5rem;
}

.momentum-report__confidence-label[b-ww2q1wcbws] {
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

/* ── Monthly focus card ────────────────────────────────────── */
.momentum-report__focus[b-ww2q1wcbws] {
    margin-bottom: 1rem;
}

.momentum-report__focus-card[b-ww2q1wcbws] {
    padding: 0.75rem 1rem;
    border-radius: 0.6rem;
    background: linear-gradient(135deg, var(--ha-panel-alt, var(--ha-panel-alt)) 0%, var(--ha-panel, var(--ha-panel)) 100%);
    border: 1px solid var(--ha-accent-soft, var(--ha-accent-soft));
    border-left: 3px solid var(--ha-accent, var(--ha-accent));
}

.momentum-report__focus-card p[b-ww2q1wcbws] {
    margin: 0;
    font-size: 0.92rem;
    color: var(--ha-text, var(--ha-text));
    line-height: 1.5;
}

/* ── Narrative letter from Morgan ──────────────────────────── */
.momentum-report__narrative[b-ww2q1wcbws] {
    margin-bottom: 0.5rem;
}

.momentum-report__letter[b-ww2q1wcbws] {
    padding: 1rem 1.25rem;
    border-radius: 0.75rem;
    background: linear-gradient(180deg, var(--ha-panel, var(--ha-panel)) 0%, var(--ha-panel-alt, var(--ha-panel-alt)) 100%);
    border: 1px solid var(--ha-border, var(--ha-border));
}

.momentum-report__letter-from[b-ww2q1wcbws] {
    margin: 0 0 0.75rem;
    font-size: 0.78rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.momentum-report__letter-text[b-ww2q1wcbws] {
    margin: 0 0 0.65rem;
    font-size: 0.95rem;
    color: var(--ha-text, var(--ha-text));
    line-height: 1.65;
}

.momentum-report__letter-text:last-child[b-ww2q1wcbws] {
    margin-bottom: 0;
}

/* ── States ────────────────────────────────────────────────── */
.momentum-report__prompt[b-ww2q1wcbws] {
    margin: 0 0 0.75rem;
    font-size: 0.92rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.momentum-report__error[b-ww2q1wcbws] {
    margin: 0.5rem 0 0;
    font-size: 0.85rem;
    color: var(--ha-danger, var(--ha-danger));
}

@media (max-width: 480px) {
    .momentum-report__trajectory[b-ww2q1wcbws] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.3rem;
    }
}
/* /Components/MomentumScore.razor.rz.scp.css */
.momentum-score[b-cek46y8esm] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
    padding: 1.25rem 1rem;
}

.momentum-score__gauge[b-cek46y8esm] {
    position: relative;
    width: 120px;
    height: 120px;
}

.momentum-score__svg[b-cek46y8esm] {
    width: 100%;
    height: 100%;
}

.momentum-score__track[b-cek46y8esm] {
    fill: none;
    stroke: var(--ha-border, var(--ha-border));
    stroke-width: 8;
}

.momentum-score__fill[b-cek46y8esm] {
    fill: none;
    stroke-width: 8;
    stroke-linecap: round;
    transition: stroke-dashoffset 0.6s ease-out;
}

/* Count-up animation for the score number */
.momentum-score--animated .momentum-score__value[b-cek46y8esm] {
    animation: score-pop-b-cek46y8esm 0.3s ease-out 0.55s both;
}

@keyframes score-pop-b-cek46y8esm {
    0%   { transform: scale(1); }
    50%  { transform: scale(1.1); }
    100% { transform: scale(1); }
}

.momentum-score__fill.momentum-score--low[b-cek46y8esm] {
    stroke: var(--ha-danger, var(--ha-danger));
}

.momentum-score__fill.momentum-score--moderate[b-cek46y8esm] {
    stroke: var(--ha-warning, var(--ha-warning));
}

.momentum-score__fill.momentum-score--great[b-cek46y8esm] {
    stroke: var(--ha-success, var(--ha-success));
}

.momentum-score__value[b-cek46y8esm] {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1;
}

.momentum-score__value.momentum-score--low[b-cek46y8esm] {
    color: var(--ha-danger, var(--ha-danger));
}

.momentum-score__value.momentum-score--moderate[b-cek46y8esm] {
    color: var(--ha-warning, var(--ha-warning));
}

.momentum-score__value.momentum-score--great[b-cek46y8esm] {
    color: var(--ha-success, var(--ha-success));
}

.momentum-score__label[b-cek46y8esm] {
    font-size: 0.85rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--ha-text-muted, var(--ha-text-muted));
    margin: 0;
}

.momentum-score__interpretation[b-cek46y8esm] {
    font-size: 0.88rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    text-align: center;
    margin: 0.15rem 0 0;
    max-width: 260px;
}
/* /Components/OfflineIndicator.razor.rz.scp.css */
.offline-banner[b-zkwdq0t5iy] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.6rem 1rem;
    font-size: 0.875rem;
    font-weight: 600;
    text-align: center;
    animation: offline-slide-down-b-zkwdq0t5iy 0.25s ease-out;
}

.offline-banner--offline[b-zkwdq0t5iy] {
    background: var(--ha-warning-bg);
    color: var(--ha-warning-emphasis);
    border-bottom: 1px solid var(--ha-warning-border);
}

.offline-banner--online[b-zkwdq0t5iy] {
    background: var(--ha-success-bg);
    color: var(--ha-success);
    border-bottom: 1px solid var(--ha-success-border);
}

.offline-banner__icon[b-zkwdq0t5iy] {
    font-size: 1rem;
    line-height: 1;
}

@keyframes offline-slide-down-b-zkwdq0t5iy {
    from {
        transform: translateY(-100%);
    }
    to {
        transform: translateY(0);
    }
}
/* /Components/OvertrainingRiskAlert.razor.rz.scp.css */
/* ── Overtraining Risk Alert Banner ─────────────────────────── */
.overtraining-alert[b-8c10tw7609] {
    padding: 0.85rem 1rem;
    border-radius: 0.75rem;
    border: 1px solid;
}

.overtraining-alert--warning[b-8c10tw7609] {
    background: var(--ha-warning-bg, var(--ha-warning-bg));
    border-color: var(--ha-warning-border, var(--ha-gold));
    color: var(--ha-warning-emphasis, var(--ha-warning-emphasis));
}

.overtraining-alert--danger[b-8c10tw7609] {
    background: var(--ha-danger-bg, var(--ha-danger-bg));
    border-color: var(--ha-danger-border, var(--ha-danger));
    color: var(--ha-danger-emphasis, var(--ha-danger));
}

.overtraining-alert__content[b-8c10tw7609] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
}

.overtraining-alert__icon[b-8c10tw7609] {
    font-size: 1.4rem;
    line-height: 1;
    flex-shrink: 0;
    margin-top: 0.1rem;
}

.overtraining-alert__body[b-8c10tw7609] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

.overtraining-alert__title[b-8c10tw7609] {
    margin: 0;
    font-size: 0.95rem;
    font-weight: 700;
}

.overtraining-alert__factors[b-8c10tw7609] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.3rem;
}

.overtraining-alert__factor[b-8c10tw7609] {
    padding: 0.15rem 0.5rem;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 500;
    background: rgba(255, 255, 255, 0.5);
    border: 1px solid rgba(0, 0, 0, 0.1);
}

.overtraining-alert__action[b-8c10tw7609] {
    margin: 0;
    font-size: 0.88rem;
    font-weight: 500;
    line-height: 1.4;
}

.overtraining-alert__dismiss[b-8c10tw7609] {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 1rem;
    padding: 0.2rem;
    opacity: 0.6;
    color: inherit;
    flex-shrink: 0;
    border-radius: 0.25rem;
    transition: opacity 0.15s;
}

.overtraining-alert__dismiss:hover[b-8c10tw7609] {
    opacity: 1;
}

.overtraining-alert__check[b-8c10tw7609] {
    margin-bottom: 0.5rem;
}

.overtraining-alert__error[b-8c10tw7609] {
    margin: 0.5rem 0 0;
    font-size: 0.85rem;
    color: var(--ha-danger, var(--ha-danger));
}

@media (max-width: 480px) {
    .overtraining-alert__content[b-8c10tw7609] {
        flex-direction: column;
        gap: 0.5rem;
    }

    .overtraining-alert__dismiss[b-8c10tw7609] {
        align-self: flex-end;
    }
}
/* /Components/PageHeader.razor.rz.scp.css */
/*
 * PageHeader — scoped styles for the reusable page hero component.
 * Layout and typography classes (.page-hero, .page-kicker, .page-intro)
 * are defined globally in app.css so they remain consistent with pages
 * that have not yet been migrated.
 */
/* /Components/PasswordStrength.razor.rz.scp.css */
.password-strength[b-cabtz6i06h] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    margin-top: 0.25rem;
}

.password-strength__bar[b-cabtz6i06h] {
    height: 6px;
    background: var(--ha-border, var(--ha-border));
    border-radius: 3px;
    overflow: hidden;
}

.password-strength__fill[b-cabtz6i06h] {
    height: 100%;
    border-radius: 3px;
    transition: width 0.3s ease, background-color 0.3s ease;
}

.password-strength__fill--very-weak[b-cabtz6i06h] {
    background-color: var(--ha-danger, var(--ha-danger));
}

.password-strength__fill--weak[b-cabtz6i06h] {
    background-color: var(--ha-warning);
}

.password-strength__fill--medium[b-cabtz6i06h] {
    background-color: var(--ha-warning, var(--ha-warning));
}

.password-strength__fill--strong[b-cabtz6i06h] {
    background-color: var(--ha-success-emphasis);
}

.password-strength__fill--very-strong[b-cabtz6i06h] {
    background-color: var(--ha-success, var(--ha-success));
}

.password-strength__label[b-cabtz6i06h] {
    font-size: 0.8rem;
    font-weight: 600;
}

.password-strength__label--very-weak[b-cabtz6i06h] {
    color: var(--ha-danger, var(--ha-danger));
}

.password-strength__label--weak[b-cabtz6i06h] {
    color: var(--ha-warning);
}

.password-strength__label--medium[b-cabtz6i06h] {
    color: var(--ha-warning, var(--ha-warning));
}

.password-strength__label--strong[b-cabtz6i06h] {
    color: var(--ha-success-emphasis);
}

.password-strength__label--very-strong[b-cabtz6i06h] {
    color: var(--ha-success, var(--ha-success));
}

.password-strength__checks[b-cabtz6i06h] {
    list-style: none;
    padding: 0;
    margin: 0.25rem 0 0;
    font-size: 0.8rem;
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.password-strength__checks li.met[b-cabtz6i06h] {
    color: var(--ha-success, var(--ha-success));
}

.password-strength__checks li.unmet[b-cabtz6i06h] {
    color: var(--ha-text-muted, var(--ha-text-muted));
}
/* /Components/PlanAdjustChat.razor.rz.scp.css */
/* ── Plan adjust chat — component isolation ──────────────────── */
.plan-gen-adjust-chat__form[b-7b9ff0vmwi] {
    display: flex;
    gap: 0.5rem;
    align-items: flex-end;
    margin-bottom: 0.75rem;
}

.plan-gen-adjust-chat__form fluent-text-field[b-7b9ff0vmwi] {
    flex: 1;
}

.plan-gen-adjust-chat__history[b-7b9ff0vmwi] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 0.75rem;
}

.plan-gen-adjust-chat__entry[b-7b9ff0vmwi] {
    padding: 0.5rem 0.75rem;
    border-radius: 8px;
    font-size: 0.88rem;
    line-height: 1.5;
}

.plan-gen-adjust-chat__entry--user[b-7b9ff0vmwi] {
    background: var(--ha-panel-alt, var(--ha-panel-alt));
    border: 1px solid var(--ha-border, var(--ha-border));
}

.plan-gen-adjust-chat__entry--assistant[b-7b9ff0vmwi] {
    background: var(--ha-success-bg, var(--ha-success-bg));
    border: 1px solid var(--ha-success-border, var(--ha-success-border));
}

@media (max-width: 480px) {
    .plan-gen-adjust-chat__form[b-7b9ff0vmwi] {
        flex-direction: column;
        align-items: stretch;
    }
}
/* /Components/PlanRationale.razor.rz.scp.css */
/* ── Plan rationale — component isolation ────────────────────── */
.plan-gen-rationale[b-zvywct7ybw] {
    display: grid;
    gap: 0.6rem;
}

.plan-gen-rationale p[b-zvywct7ybw] {
    margin: 0;
    line-height: 1.6;
    color: var(--ha-text-muted, var(--ha-text-muted));
}
/* /Components/PlanSourceBadge.razor.rz.scp.css */
/* ── Plan source badge — component isolation ─────────────────── */
.plan-source-badge[b-tku8tb3e78] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.75rem;
    font-weight: 500;
    padding: 0.2rem 0.65rem;
    border-radius: 1rem;
    margin-bottom: 0.5rem;
}

.plan-source-badge--ai[b-tku8tb3e78] {
    color: var(--ha-success, var(--ha-success));
    background: var(--ha-success-bg, var(--ha-success-bg));
    border: 1px solid var(--ha-success-border, var(--ha-success-border));
}

.plan-source-badge--template[b-tku8tb3e78] {
    color: var(--ha-text-muted, var(--ha-text-muted));
    background: var(--ha-panel-alt, var(--ha-panel-alt));
    border: 1px solid var(--ha-border, var(--ha-border));
}

.plan-source-badge--deterministic[b-tku8tb3e78] {
    color: var(--ha-text-muted, var(--ha-text-muted));
    background: var(--ha-panel-alt, var(--ha-panel-alt));
    border: 1px solid var(--ha-border, var(--ha-border));
}

.plan-source-badge--coach[b-tku8tb3e78] {
    color: var(--ha-accent, var(--ha-accent));
    background: var(--ha-accent-soft, var(--ha-accent-bg));
    border: 1px solid var(--ha-accent-border, var(--ha-accent-muted));
}

@media (max-width: 480px) {
    .plan-source-badge[b-tku8tb3e78] {
        font-size: 0.7rem;
    }
}
/* /Components/PrCelebration.razor.rz.scp.css */
/* ── Full-viewport overlay ────────────────────────────────────── */
.pr-celebration[b-26of1q47m7]
{
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.65);
    cursor: pointer;
    overflow: hidden;
}

/* ── Content card ────────────────────────────────────────────── */
.pr-celebration__content[b-26of1q47m7]
{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 2rem 2.5rem;
    background: var(--ha-panel, var(--ha-text));
    border: 2px solid var(--ha-gold);
    border-radius: 1rem;
    text-align: center;
    z-index: 1;
    animation: pr-scale-in-b-26of1q47m7 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    cursor: default;
}

.pr-celebration__trophy[b-26of1q47m7]
{
    font-size: 3rem;
    animation: pr-bounce-b-26of1q47m7 0.8s ease infinite alternate;
}

.pr-celebration__heading[b-26of1q47m7]
{
    margin: 0;
    font-size: 1.75rem;
    font-weight: 800;
    color: var(--ha-gold);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.pr-celebration__exercise[b-26of1q47m7]
{
    margin: 0;
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-panel));
}

/* ── Old → New comparison ────────────────────────────────────── */
.pr-celebration__comparison[b-26of1q47m7]
{
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-top: 0.5rem;
    font-size: 1rem;
}

.pr-celebration__old[b-26of1q47m7]
{
    color: var(--ha-text-muted, var(--ha-text-placeholder));
    text-decoration: line-through;
}

.pr-celebration__arrow[b-26of1q47m7]
{
    color: var(--ha-gold);
    font-size: 1.2rem;
}

.pr-celebration__new[b-26of1q47m7]
{
    color: var(--ha-success, var(--ha-success));
    font-weight: 700;
    font-size: 1.15rem;
}

/* ── Confetti particles ──────────────────────────────────────── */
.pr-celebration__confetti[b-26of1q47m7]
{
    position: absolute;
    top: -10px;
    width: 10px;
    height: 10px;
    opacity: 0.85;
    animation: pr-confetti-fall-b-26of1q47m7 2.5s ease-in forwards;
}

.pr-celebration__confetti--0[b-26of1q47m7] { background: var(--ha-danger); border-radius: 50%; }
.pr-celebration__confetti--1[b-26of1q47m7] { background: var(--ha-gold); border-radius: 2px; }
.pr-celebration__confetti--2[b-26of1q47m7] { background: var(--ha-success); border-radius: 50%; }
.pr-celebration__confetti--3[b-26of1q47m7] { background: var(--ha-accent); border-radius: 2px; }
.pr-celebration__confetti--4[b-26of1q47m7] { background: var(--ha-warning); border-radius: 50%; }
.pr-celebration__confetti--5[b-26of1q47m7] { background: var(--ha-accent-hover); border-radius: 2px; }

/* ── Keyframes ───────────────────────────────────────────────── */
@keyframes pr-confetti-fall-b-26of1q47m7
{
    0%
    {
        transform: translateY(0) rotate(0deg);
        opacity: 1;
    }
    100%
    {
        transform: translateY(100vh) rotate(720deg);
        opacity: 0;
    }
}

@keyframes pr-scale-in-b-26of1q47m7
{
    0%
    {
        transform: scale(0.3);
        opacity: 0;
    }
    100%
    {
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes pr-bounce-b-26of1q47m7
{
    0%   { transform: translateY(0); }
    100% { transform: translateY(-8px); }
}
/* /Components/ProgressLineChart.razor.rz.scp.css */
.progress-line-chart[b-9obwbczk1e] {
    overflow-x: auto;
}

.line-chart-svg[b-9obwbczk1e] {
    width: 100%;
    height: auto;
    display: block;
    overflow: visible;
}
/* /Components/ReadinessScore.razor.rz.scp.css */
/* ── Readiness Score Dashboard Widget ───────────────────────── */
.readiness-score[b-tbdg0dn8p5] {
    border-left: 4px solid var(--ha-accent, var(--ha-accent));
}

.readiness-score__header[b-tbdg0dn8p5] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}

.readiness-score__icon[b-tbdg0dn8p5] {
    font-size: 1.75rem;
    line-height: 1;
}

.readiness-score__kicker[b-tbdg0dn8p5] {
    margin: 0;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.readiness-score__title[b-tbdg0dn8p5] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
}

.readiness-score__body[b-tbdg0dn8p5] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.readiness-score__gauge[b-tbdg0dn8p5] {
    position: relative;
    width: 110px;
    height: 110px;
    flex-shrink: 0;
}

.readiness-score__svg[b-tbdg0dn8p5] {
    width: 100%;
    height: 100%;
}

.readiness-score__track[b-tbdg0dn8p5] {
    fill: none;
    stroke: var(--ha-border, var(--ha-border));
    stroke-width: 8;
}

.readiness-score__fill[b-tbdg0dn8p5] {
    fill: none;
    stroke-width: 8;
    stroke-linecap: round;
    transition: stroke-dashoffset 0.6s ease;
}

.readiness-score__fill.readiness-score--rest[b-tbdg0dn8p5] {
    stroke: var(--ha-danger, var(--ha-danger));
}

.readiness-score__fill.readiness-score--modify[b-tbdg0dn8p5] {
    stroke: var(--ha-warning, var(--ha-warning));
}

.readiness-score__fill.readiness-score--train[b-tbdg0dn8p5] {
    stroke: var(--ha-success, var(--ha-success));
}

.readiness-score__value[b-tbdg0dn8p5] {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1;
}

.readiness-score__value.readiness-score--rest[b-tbdg0dn8p5] {
    color: var(--ha-danger, var(--ha-danger));
}

.readiness-score__value.readiness-score--modify[b-tbdg0dn8p5] {
    color: var(--ha-warning, var(--ha-warning));
}

.readiness-score__value.readiness-score--train[b-tbdg0dn8p5] {
    color: var(--ha-success, var(--ha-success));
}

.readiness-score__details[b-tbdg0dn8p5] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    flex: 1;
    min-width: 180px;
}

.readiness-score__verdict[b-tbdg0dn8p5] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.3rem 0.75rem;
    border-radius: 999px;
    font-size: 0.88rem;
    font-weight: 600;
    width: fit-content;
}

.readiness-score__verdict--train[b-tbdg0dn8p5] {
    background: var(--ha-success-bg, var(--ha-success-bg));
    color: var(--ha-success-emphasis, var(--ha-success-emphasis));
}

.readiness-score__verdict--modify[b-tbdg0dn8p5] {
    background: var(--ha-warning-bg, var(--ha-warning-bg));
    color: var(--ha-warning-emphasis, var(--ha-warning-emphasis));
}

.readiness-score__verdict--rest[b-tbdg0dn8p5] {
    background: var(--ha-danger-bg, var(--ha-danger-bg));
    color: var(--ha-danger-emphasis, var(--ha-danger));
}

.readiness-score__factors[b-tbdg0dn8p5] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.readiness-score__factor-pill[b-tbdg0dn8p5] {
    padding: 0.2rem 0.6rem;
    border-radius: 999px;
    font-size: 0.78rem;
    font-weight: 500;
    background: var(--ha-surface-subtle, var(--ha-surface-subtle));
    color: var(--ha-text-muted, var(--ha-text-muted));
    border: 1px solid var(--ha-border, var(--ha-border));
}

.readiness-score__recommendation[b-tbdg0dn8p5] {
    margin: 0;
    font-size: 0.88rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    line-height: 1.45;
    font-style: italic;
}

.readiness-score__prompt[b-tbdg0dn8p5] {
    margin: 0 0 0.75rem;
    font-size: 0.92rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.readiness-score__error[b-tbdg0dn8p5] {
    margin: 0.5rem 0 0;
    font-size: 0.85rem;
    color: var(--ha-danger, var(--ha-danger));
}

@media (max-width: 480px) {
    .readiness-score__body[b-tbdg0dn8p5] {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .readiness-score__factors[b-tbdg0dn8p5] {
        justify-content: center;
    }
}
/* /Components/ResponseFeedback.razor.rz.scp.css */
/* ── Thumbs-up / Thumbs-down feedback widget ───────────────── */
.response-feedback[b-hzk1jbcc63] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    margin-top: 0.5rem;
    font-size: 0.78rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.response-feedback__label[b-hzk1jbcc63] {
    font-weight: 500;
}

.response-feedback__btn[b-hzk1jbcc63] {
    background: none;
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 0.4rem;
    padding: 0.4rem 0.6rem;
    font-size: 0.85rem;
    cursor: pointer;
    transition: background 0.12s, border-color 0.12s;
    line-height: 1;
    min-width: 44px;
    min-height: 44px;
}

.response-feedback__btn:hover:not(:disabled)[b-hzk1jbcc63] {
    background: var(--ha-accent-soft, var(--ha-accent-soft));
    border-color: var(--ha-accent, var(--ha-accent-emphasis));
}

.response-feedback__btn:disabled[b-hzk1jbcc63] {
    opacity: 0.5;
    cursor: default;
}

.response-feedback__thanks[b-hzk1jbcc63] {
    font-weight: 500;
    color: var(--ha-success, var(--ha-success-emphasis));
    font-size: 0.78rem;
}
/* /Components/RestTimer.razor.rz.scp.css */
/* ── Rest timer container ────────────────────────────────────── */
.rest-timer[b-5pv5036n6g]
{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    padding: 1.5rem;
}

/* ── SVG ring ────────────────────────────────────────────────── */
.rest-timer__ring[b-5pv5036n6g]
{
    position: relative;
    width: 140px;
    height: 140px;
}

.rest-timer__svg[b-5pv5036n6g]
{
    width: 100%;
    height: 100%;
    transform: rotate(-90deg);
}

.rest-timer__track[b-5pv5036n6g]
{
    fill: none;
    stroke: var(--ha-border, var(--ha-border));
    stroke-width: 8;
}

.rest-timer__progress[b-5pv5036n6g]
{
    fill: none;
    stroke-width: 8;
    stroke-linecap: round;
    stroke-dasharray: 326.73; /* 2 * PI * 52 */
    transition: stroke-dashoffset 0.3s ease, stroke 0.5s ease;
}

.rest-timer__progress.rest-timer--green[b-5pv5036n6g]  { stroke: var(--ha-success, var(--ha-success)); }
.rest-timer__progress.rest-timer--yellow[b-5pv5036n6g] { stroke: var(--ha-warning, var(--ha-warning)); }
.rest-timer__progress.rest-timer--red[b-5pv5036n6g]    { stroke: var(--ha-danger, var(--ha-danger)); }

/* ── Countdown text overlay ──────────────────────────────────── */
.rest-timer__display[b-5pv5036n6g]
{
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.75rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    transition: color 0.5s ease;
}

.rest-timer__display.rest-timer--green[b-5pv5036n6g]  { color: var(--ha-success, var(--ha-success)); }
.rest-timer__display.rest-timer--yellow[b-5pv5036n6g] { color: var(--ha-warning, var(--ha-warning-emphasis)); }
.rest-timer__display.rest-timer--red[b-5pv5036n6g]    { color: var(--ha-danger, var(--ha-danger)); }

/* ── Quick-adjust buttons ────────────────────────────────────── */
.rest-timer__controls[b-5pv5036n6g]
{
    display: flex;
    gap: 0.5rem;
}

.rest-timer__adjust-btn[b-5pv5036n6g]
{
    padding: 0.35rem 0.75rem;
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 0.5rem;
    background: var(--ha-panel-alt, var(--ha-surface-subtle));
    color: var(--ha-text-muted, var(--ha-text-muted));
    font-size: 0.85rem;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.12s, border-color 0.12s, color 0.12s;
    min-height: 44px;
    min-width: 44px;
}

.rest-timer__adjust-btn:hover[b-5pv5036n6g]
{
    background: var(--ha-accent-soft, var(--ha-accent-soft));
    border-color: var(--ha-accent, var(--ha-accent-muted));
    color: var(--ha-accent, var(--ha-accent-emphasis));
}

.rest-timer__adjust-btn:disabled[b-5pv5036n6g]
{
    opacity: 0.4;
    cursor: not-allowed;
}

/* ── Skip button ─────────────────────────────────────────────── */
.rest-timer__skip[b-5pv5036n6g]
{
    margin-top: 0.25rem;
}
/* /Components/RunningDayEditor.razor.rz.scp.css */
.day-editor[b-5a46f40b8f] {
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 0.5rem;
    background: var(--ha-panel, var(--ha-panel));
    overflow: hidden;
}

.day-editor__header[b-5a46f40b8f] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.65rem 0.85rem;
    background: var(--ha-panel-alt, var(--ha-bg));
    border-bottom: 1px solid var(--ha-border, var(--ha-border));
}

.day-editor__expand[b-5a46f40b8f] {
    background: transparent;
    border: none;
    cursor: pointer;
    font-size: 0.8rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    padding: 0.5rem;
    min-width: 44px;
    min-height: 44px;
    flex-shrink: 0;
}

.day-editor__actions[b-5a46f40b8f] {
    display: flex;
    gap: 0.25rem;
    flex-shrink: 0;
}

.day-editor__btn[b-5a46f40b8f] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 0.25rem;
    background: var(--ha-panel, var(--ha-panel));
    cursor: pointer;
    font-size: 0.75rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    transition: background 0.15s, border-color 0.15s;
}

@media (max-width: 768px) {
    .day-editor__btn[b-5a46f40b8f] {
        width: 44px;
        height: 44px;
    }
}

.day-editor__btn:hover:not(:disabled)[b-5a46f40b8f] {
    background: var(--ha-accent-soft, var(--ha-accent-bg));
    border-color: var(--ha-accent, var(--ha-accent));
    color: var(--ha-accent, var(--ha-accent));
}

.day-editor__btn:disabled[b-5a46f40b8f] {
    opacity: 0.35;
    cursor: not-allowed;
}

.day-editor__btn--danger:hover:not(:disabled)[b-5a46f40b8f] {
    background: var(--ha-danger-bg);
    border-color: var(--ha-danger, var(--ha-danger));
    color: var(--ha-danger, var(--ha-danger));
}

.day-editor__body[b-5a46f40b8f] {
    padding: 0.75rem 0.85rem;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.day-editor__table[b-5a46f40b8f] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.82rem;
    min-width: 680px;
}

.day-editor__table th[b-5a46f40b8f] {
    text-align: left;
    padding: 0.35rem 0.4rem;
    font-weight: 600;
    color: var(--ha-text-muted, var(--ha-text-muted));
    border-bottom: 1px solid var(--ha-border, var(--ha-border));
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.day-editor__table td[b-5a46f40b8f] {
    padding: 0.35rem 0.4rem;
    vertical-align: middle;
}

.col-session-type[b-5a46f40b8f] { width: 22%; }
.col-distance[b-5a46f40b8f] { width: 12%; }
.col-duration[b-5a46f40b8f] { width: 12%; }
.col-pace[b-5a46f40b8f] { width: 16%; }
.col-notes[b-5a46f40b8f] { width: 26%; }
.col-actions[b-5a46f40b8f] { width: 12%; }

.exercise-row-actions[b-5a46f40b8f] {
    display: flex;
    gap: 0.2rem;
}

@media (max-width: 480px) {
    .day-editor__header[b-5a46f40b8f] {
        flex-wrap: wrap;
    }

    .day-editor__body[b-5a46f40b8f] {
        padding: 0.5rem;
    }
}
/* /Components/StreakCounter.razor.rz.scp.css */
.streak-counter[b-mjwquw62zt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
    padding: 1.5rem 1rem;
}

.streak-counter__display[b-mjwquw62zt] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.streak-counter__number[b-mjwquw62zt] {
    font-size: 3.5rem;
    font-weight: 700;
    line-height: 1;
    color: var(--ha-text);
}

.streak-counter__flame[b-mjwquw62zt] {
    font-size: 2.5rem;
    line-height: 1;
}

.streak-counter__label[b-mjwquw62zt] {
    font-size: 1rem;
    font-weight: 500;
    color: var(--ha-text-muted);
    margin: 0;
}

.streak-counter__best[b-mjwquw62zt] {
    font-size: 0.82rem;
    color: var(--ha-text-muted);
    margin: 0;
}
/* /Components/StreakShield.razor.rz.scp.css */
.streak-shield[b-e8xiw8y8tg] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.35rem 0.75rem;
    border-radius: 999px;
    background: var(--ha-success-bg, var(--ha-success-bg));
    border: 1px solid var(--ha-success-border, var(--ha-success-border));
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--ha-success, var(--ha-success));
    white-space: nowrap;
}

.streak-shield__icon[b-e8xiw8y8tg] {
    font-size: 1rem;
    line-height: 1;
}

.streak-shield__text[b-e8xiw8y8tg] {
    line-height: 1.3;
}
/* /Components/SubscriptionGate.razor.rz.scp.css */
.subscription-gate[b-307235cyjs] {
    text-align: center;
    padding: 2.5rem 1.5rem;
    border: 1px dashed var(--ha-border);
    border-radius: 0.75rem;
    background: linear-gradient(135deg, var(--ha-bg) 0%, var(--ha-panel) 100%);
}

.subscription-gate--loading[b-307235cyjs] {
    border-style: solid;
}

.subscription-gate__content h2[b-307235cyjs] {
    margin: 0 0 0.5rem;
    font-size: 1.15rem;
    color: var(--ha-text);
}

.subscription-gate__content p[b-307235cyjs] {
    margin: 0 0 1.25rem;
    color: var(--ha-text-muted);
    font-size: 0.95rem;
}
/* /Components/TemplateBuilderShell.razor.rz.scp.css */
/* ── Clone attribution banner ────────────────────────────────── */
.clone-banner[b-so8e18tsul] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 1rem;
    margin-bottom: 1rem;
    background: var(--ha-accent-soft, var(--ha-accent-bg));
    border: 1px solid var(--ha-accent-bg);
    border-radius: 0.5rem;
    font-size: 0.85rem;
    color: var(--ha-text, var(--ha-text));
}

/* ── Builder section cards ──────────────────────────────────── */
.builder-section[b-so8e18tsul] {
    margin-bottom: 1rem;
}

.builder-section__title[b-so8e18tsul] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
    margin: 0 0 0.75rem;
}

.builder-section__header[b-so8e18tsul] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem;
}

.builder-section__count[b-so8e18tsul] {
    font-size: 0.8rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    font-weight: 500;
}

/* ── Form grid ──────────────────────────────────────────────── */
.builder-form-grid[b-so8e18tsul] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem 1rem;
}

/*
 * ::deep is needed because form-field elements come from
 * parent RenderFragments (InfoFields) and lack this component's
 * CSS isolation scope attribute.
 */
[b-so8e18tsul] .form-field {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

[b-so8e18tsul] .form-field--full {
    grid-column: 1 / -1;
}

[b-so8e18tsul] .form-field label {
    font-size: 0.82rem;
    font-weight: 500;
    color: var(--ha-text, var(--ha-text));
}

[b-so8e18tsul] .required {
    color: var(--ha-danger, var(--ha-danger));
}

[b-so8e18tsul] .field-error {
    font-size: 0.75rem;
    color: var(--ha-danger, var(--ha-danger));
}

[b-so8e18tsul] .field-hint {
    font-size: 0.72rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

/* ── Day list ───────────────────────────────────────────────── */
.day-list[b-so8e18tsul] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* ── Actions bar ────────────────────────────────────────────── */
.builder-actions[b-so8e18tsul] {
    display: flex;
    gap: 0.75rem;
    padding: 1rem 0;
    position: sticky;
    bottom: 0;
    background: var(--ha-bg, var(--ha-panel));
    border-top: 1px solid var(--ha-border, var(--ha-border));
    z-index: 10;
}

/* ── Responsive ─────────────────────────────────────────────── */
@media (max-width: 480px) {
    .builder-form-grid[b-so8e18tsul] {
        grid-template-columns: 1fr;
    }

    .builder-actions[b-so8e18tsul] {
        flex-direction: column;
    }

    .clone-banner[b-so8e18tsul] {
        font-size: 0.8rem;
    }
}
/* /Components/TemplateDayEditor.razor.rz.scp.css */
.day-editor[b-mrtno4pj9d] {
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 0.5rem;
    background: var(--ha-panel, var(--ha-panel));
}

.day-editor__header[b-mrtno4pj9d] {
    border-radius: 0.5rem 0.5rem 0 0;
}

.day-editor__header[b-mrtno4pj9d] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.65rem 0.85rem;
    background: var(--ha-panel-alt, var(--ha-bg));
    border-bottom: 1px solid var(--ha-border, var(--ha-border));
}

.day-editor__expand[b-mrtno4pj9d] {
    background: transparent;
    border: none;
    cursor: pointer;
    font-size: 0.8rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    padding: 0.5rem;
    min-width: 44px;
    min-height: 44px;
    flex-shrink: 0;
}

.day-editor__actions[b-mrtno4pj9d] {
    display: flex;
    gap: 0.25rem;
    flex-shrink: 0;
}

.day-editor__btn[b-mrtno4pj9d] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 0.25rem;
    background: var(--ha-panel, var(--ha-panel));
    cursor: pointer;
    font-size: 0.75rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    transition: background 0.15s, border-color 0.15s;
}

@media (max-width: 768px) {
    .day-editor__btn[b-mrtno4pj9d] {
        width: 44px;
        height: 44px;
    }
}

.day-editor__btn:hover:not(:disabled)[b-mrtno4pj9d] {
    background: var(--ha-accent-soft, var(--ha-accent-bg));
    border-color: var(--ha-accent, var(--ha-accent));
    color: var(--ha-accent, var(--ha-accent));
}

.day-editor__btn:disabled[b-mrtno4pj9d] {
    opacity: 0.35;
    cursor: not-allowed;
}

.day-editor__btn--danger:hover:not(:disabled)[b-mrtno4pj9d] {
    background: var(--ha-danger-bg);
    border-color: var(--ha-danger, var(--ha-danger));
    color: var(--ha-danger, var(--ha-danger));
}

.day-editor__body[b-mrtno4pj9d] {
    padding: 0.75rem 0.85rem;
}

.day-editor__table[b-mrtno4pj9d] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.82rem;
    min-width: 520px;
}

.day-editor__table th[b-mrtno4pj9d] {
    text-align: left;
    padding: 0.35rem 0.4rem;
    font-weight: 600;
    color: var(--ha-text-muted, var(--ha-text-muted));
    border-bottom: 1px solid var(--ha-border, var(--ha-border));
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.day-editor__table td[b-mrtno4pj9d] {
    padding: 0.35rem 0.4rem;
    vertical-align: middle;
}

.col-exercise[b-mrtno4pj9d] { width: 35%; }
.col-sets[b-mrtno4pj9d] { width: 10%; }
.col-reps[b-mrtno4pj9d] { width: 13%; }
.col-notes[b-mrtno4pj9d] { width: 30%; }
.col-actions[b-mrtno4pj9d] { width: 12%; }

.exercise-row-actions[b-mrtno4pj9d] {
    display: flex;
    gap: 0.2rem;
}

@media (max-width: 480px) {
    .day-editor__header[b-mrtno4pj9d] {
        flex-wrap: wrap;
    }

    .day-editor__body[b-mrtno4pj9d] {
        padding: 0.5rem;
    }
}
/* /Components/ThemeToggle.razor.rz.scp.css */
.theme-toggle[b-ocvqz222di] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.4rem 0.75rem;
    border: 1px solid var(--ha-border);
    border-radius: 999px;
    background: var(--ha-panel);
    color: var(--ha-text);
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s;
    line-height: 1;
}

.theme-toggle:hover[b-ocvqz222di] {
    background: var(--ha-panel-alt, var(--ha-panel-alt));
    border-color: var(--ha-accent);
}

.theme-toggle__icon[b-ocvqz222di] {
    font-size: 1rem;
    line-height: 1;
}

.theme-toggle__label[b-ocvqz222di] {
    user-select: none;
}
/* /Components/VolumeChart.razor.rz.scp.css */
.volume-chart[b-361t672a3h] {
    margin-top: 0.5rem;
}

.volume-chart-svg[b-361t672a3h] {
    width: 100%;
    height: auto;
    display: block;
    overflow: visible;
}

.volume-chart__legend[b-361t672a3h] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 0.75rem;
    font-size: 0.78rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.volume-chart__legend-item[b-361t672a3h] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.volume-chart__legend-swatch[b-361t672a3h] {
    display: inline-block;
    width: 0.85rem;
    height: 0.85rem;
    border-radius: 2px;
    flex-shrink: 0;
}
/* /Components/WeeklyChallenge.razor.rz.scp.css */
.weekly-challenge[b-6exdwzxttx] {
    border-left: 4px solid var(--ha-accent, var(--ha-accent));
}

.weekly-challenge__header[b-6exdwzxttx] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}

.weekly-challenge__icon[b-6exdwzxttx] {
    font-size: 1.75rem;
    line-height: 1;
}

.weekly-challenge__kicker[b-6exdwzxttx] {
    margin: 0 0 0.1rem;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.weekly-challenge__title[b-6exdwzxttx] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
}

.weekly-challenge__progress[b-6exdwzxttx] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.5rem;
}

.weekly-challenge__progress-bar[b-6exdwzxttx] {
    flex: 1;
    height: 12px;
    background: var(--ha-border, var(--ha-border));
    border-radius: 6px;
    overflow: hidden;
}

.weekly-challenge__progress-fill[b-6exdwzxttx] {
    height: 100%;
    background: linear-gradient(90deg, var(--ha-accent, var(--ha-accent)), var(--ha-accent-emphasis, var(--ha-accent-emphasis)));
    border-radius: 6px;
    transition: width 0.3s ease;
    min-width: 2px;
}

.weekly-challenge__progress-text[b-6exdwzxttx] {
    font-size: 0.88rem;
    font-weight: 600;
    font-variant-numeric: tabular-nums;
    color: var(--ha-text, var(--ha-text));
    white-space: nowrap;
}

.weekly-challenge__rationale[b-6exdwzxttx] {
    font-size: 0.88rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    margin: 0;
    line-height: 1.5;
}

@media (max-width: 480px) {
    .weekly-challenge__progress[b-6exdwzxttx] {
        flex-direction: column;
        align-items: stretch;
        gap: 0.35rem;
    }

    .weekly-challenge__progress-text[b-6exdwzxttx] {
        text-align: center;
    }
}
/* /Components/WhyThisPlan.razor.rz.scp.css */
/* ── "Why this plan?" collapsible section ───────────────────── */
.why-this-plan[b-5tbvmvo665] {
    margin-top: 1rem;
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 0.65rem;
    background: var(--ha-panel-alt, var(--ha-surface-subtle));
}

.why-this-plan__toggle[b-5tbvmvo665] {
    cursor: pointer;
    padding: 0.55rem 0.85rem;
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--ha-accent, var(--ha-accent-emphasis));
    list-style: none;
    user-select: none;
}

.why-this-plan__toggle[b-5tbvmvo665]::-webkit-details-marker {
    display: none;
}

.why-this-plan__toggle[b-5tbvmvo665]::before {
    content: "▸ ";
    font-size: 0.7rem;
}

.why-this-plan[open] > .why-this-plan__toggle[b-5tbvmvo665]::before {
    content: "▾ ";
}

.why-this-plan__body[b-5tbvmvo665] {
    padding: 0 0.85rem 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
}

/* ── Confidence badge ──────────────────────────────────────── */
.why-this-plan__confidence[b-5tbvmvo665] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.why-this-plan__confidence-badge[b-5tbvmvo665] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.78rem;
    font-weight: 600;
    padding: 0.2rem 0.6rem;
    border-radius: 1rem;
    width: fit-content;
    text-transform: capitalize;
}

.why-this-plan__confidence-badge--high[b-5tbvmvo665] {
    background: var(--ha-success-bg);
    color: var(--ha-success-emphasis);
}

.why-this-plan__confidence-badge--medium[b-5tbvmvo665] {
    background: var(--ha-warning-bg);
    color: var(--ha-warning-emphasis);
}

.why-this-plan__confidence-badge--low[b-5tbvmvo665] {
    background: var(--ha-danger-bg);
    color: var(--ha-danger);
}

.why-this-plan__confidence-note[b-5tbvmvo665] {
    font-size: 0.8rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    margin: 0;
}

/* ── Personalization pills ─────────────────────────────────── */
.why-this-plan__factors[b-5tbvmvo665] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.why-this-plan__pill[b-5tbvmvo665] {
    display: inline-flex;
    align-items: center;
    padding: 0.18rem 0.55rem;
    border-radius: 1rem;
    background: var(--ha-surface-subtle);
    color: var(--ha-text, var(--ha-text));
    font-size: 0.75rem;
    font-weight: 500;
    border: 1px solid var(--ha-border, var(--ha-border));
}

.why-this-plan__empty[b-5tbvmvo665] {
    font-size: 0.8rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    margin: 0;
}
/* /Components/WorkoutDayDetail.razor.rz.scp.css */
.strength-day[b-jxsnyt9tvj]
{
    display: grid;
    gap: 1rem;
}

.strength-day__heading[b-jxsnyt9tvj]
{
    align-items: flex-start;
    gap: 1rem;
}

.strength-day__actions[b-jxsnyt9tvj]
{
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-top: 1rem;
}

.strength-exercise-card[b-jxsnyt9tvj]
{
    border: 1px solid var(--ha-border);
    border-radius: 0.85rem;
    padding: 1rem;
    background: linear-gradient(180deg, var(--ha-surface-subtle) 0%, var(--ha-panel) 100%);
}

.strength-exercise-card__header[b-jxsnyt9tvj]
{
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
}

.strength-exercise-card__summary[b-jxsnyt9tvj]
{
    display: grid;
    gap: 0.75rem;
    grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
    margin: 0.75rem 0;
}

.strength-summary-card[b-jxsnyt9tvj]
{
    border: 1px solid var(--ha-border);
    border-radius: 0.75rem;
    padding: 0.75rem;
    background-color: var(--ha-panel);
}

.strength-set-table td[b-jxsnyt9tvj],
.strength-set-table th[b-jxsnyt9tvj]
{
    vertical-align: top;
}

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

.strength-input[b-jxsnyt9tvj]
{
    width: 6rem;
}

.strength-text-input[b-jxsnyt9tvj]
{
    width: 100%;
    min-width: 10rem;
    padding: 0.45rem 0.5rem;
    border: 1px solid var(--ha-border);
    border-radius: 0.45rem;
    color: var(--ha-text);
    background-color: var(--ha-panel);
}

.strength-checkbox[b-jxsnyt9tvj]
{
    width: 1rem;
    height: 1rem;
}

.weight-input-group[b-jxsnyt9tvj]
{
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.plate-calc-btn[b-jxsnyt9tvj]
{
    width: 24px;
    height: 24px;
    border: none;
    background: transparent;
    cursor: pointer;
    font-size: 0.9rem;
    padding: 0;
    opacity: 0.6;
    flex-shrink: 0;
}

.plate-calc-btn:hover[b-jxsnyt9tvj]
{
    opacity: 1;
}

.plate-popover[b-jxsnyt9tvj]
{
    position: absolute;
    z-index: 50;
    background: var(--ha-panel);
    border: 1px solid var(--ha-border);
    border-radius: 8px;
    padding: 0.5rem 0.75rem;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    min-width: 160px;
    margin-top: 0.25rem;
}

.plate-popover__header[b-jxsnyt9tvj]
{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.35rem;
    font-size: 0.85rem;
}

.plate-popover__close[b-jxsnyt9tvj]
{
    background: none;
    border: none;
    cursor: pointer;
    font-size: 0.85rem;
    color: var(--ha-text-muted);
}

.plate-popover__plates[b-jxsnyt9tvj]
{
    display: flex;
    flex-wrap: wrap;
    gap: 0.3rem;
}

.plate-chip[b-jxsnyt9tvj]
{
    display: inline-block;
    padding: 0.15rem 0.5rem;
    border-radius: 4px;
    font-size: 0.8rem;
    font-weight: 600;
}

.plate-chip--red[b-jxsnyt9tvj] { background: var(--ha-plate-red-bg); color: var(--ha-plate-red-text); }
.plate-chip--blue[b-jxsnyt9tvj] { background: var(--ha-plate-blue-bg); color: var(--ha-plate-blue-text); }
.plate-chip--yellow[b-jxsnyt9tvj] { background: var(--ha-plate-yellow-bg); color: var(--ha-plate-yellow-text); }
.plate-chip--green[b-jxsnyt9tvj] { background: var(--ha-plate-green-bg); color: var(--ha-plate-green-text); }
.plate-chip--white[b-jxsnyt9tvj] { background: var(--ha-plate-white-bg); color: var(--ha-plate-white-text); border: 1px solid var(--ha-plate-white-border); }
.plate-chip--gray[b-jxsnyt9tvj] { background: var(--ha-plate-gray-bg); color: var(--ha-plate-gray-text); }

.strength-exercise-card__actions[b-jxsnyt9tvj]
{
    display: flex;
    justify-content: flex-end;
    margin-top: 0.75rem;
}

@media (max-width: 960px)
{
    .strength-day__heading[b-jxsnyt9tvj],
    .strength-exercise-card__header[b-jxsnyt9tvj]
    {
        flex-direction: column;
    }

    .strength-input[b-jxsnyt9tvj]
    {
        width: 100%;
    }
}

@media (max-width: 480px)
{
    .set-type-chips[b-jxsnyt9tvj]
    {
        flex-wrap: wrap;
    }

    .set-type-chip[b-jxsnyt9tvj]
    {
        padding: 0.5rem 0.65rem;
        font-size: 0.78rem;
        min-height: 2.5rem;
        display: inline-flex;
        align-items: center;
    }

    .readiness-rating__btn[b-jxsnyt9tvj]
    {
        width: 2.75rem;
        height: 2.75rem;
        font-size: 0.95rem;
    }

    .readiness-panel__row[b-jxsnyt9tvj]
    {
        flex-direction: column;
        align-items: stretch;
        gap: 0.35rem;
    }

    .readiness-panel__row label[b-jxsnyt9tvj]
    {
        min-width: 0;
    }

    .swap-option[b-jxsnyt9tvj]
    {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.25rem;
    }

    .swap-option__meta[b-jxsnyt9tvj]
    {
        margin-left: 0;
    }

    .strength-exercise-card__summary[b-jxsnyt9tvj]
    {
        grid-template-columns: repeat(auto-fit, minmax(8rem, 1fr));
    }

    .strength-text-input[b-jxsnyt9tvj]
    {
        min-width: 0;
    }

    .pr-badge[b-jxsnyt9tvj]
    {
        padding: 0.2rem 0.5rem;
        min-height: 1.5rem;
    }
}

.recovery-indicator[b-jxsnyt9tvj]
{
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.8rem;
    padding: 0.15rem 0.5rem;
    border-radius: 1rem;
}

.recovery-indicator--green[b-jxsnyt9tvj] { color: var(--ha-success-emphasis); background: var(--ha-success-bg); }
.recovery-indicator--amber[b-jxsnyt9tvj] { color: var(--ha-warning-emphasis); background: var(--ha-warning-bg); }
.recovery-indicator--red[b-jxsnyt9tvj]   { color: var(--ha-danger); background: var(--ha-danger-bg); }

.strength-exercise-card--pr[b-jxsnyt9tvj]
{
    border-color: var(--ha-gold);
    background: linear-gradient(180deg, var(--ha-gold-bg) 0%, var(--ha-panel) 100%);
    box-shadow: 0 0 0 2px var(--ha-gold-highlight);
}

.strength-exercise-card__badges[b-jxsnyt9tvj]
{
    display: flex;
    gap: 0.4rem;
    flex-wrap: wrap;
    align-items: flex-start;
}

.pill--pr[b-jxsnyt9tvj]
{
    background: linear-gradient(135deg, var(--ha-gold), var(--ha-gold-highlight));
    color: var(--ha-gold-text);
    font-weight: 600;
}

.rest-timer[b-jxsnyt9tvj]
{
    display: flex;
    align-items: center;
    gap: 0.6rem;
    margin-top: 0.6rem;
    padding: 0.5rem 0.75rem;
    border-radius: 0.6rem;
    background: var(--ha-success-bg);
    border: 1px solid var(--ha-success-border);
    color: var(--ha-success-emphasis);
    font-size: 0.9rem;
}

.rest-timer--ending[b-jxsnyt9tvj]
{
    background: var(--ha-warning-bg);
    border-color: var(--ha-warning-border);
    color: var(--ha-warning-emphasis);
}

.rest-timer__icon[b-jxsnyt9tvj] { font-size: 1.1rem; }

@media (max-width: 480px)
{
    .rest-timer[b-jxsnyt9tvj]
    {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 50;
        border-radius: 0;
        margin: 0;
        padding: 0.75rem 1rem;
        justify-content: center;
        box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.1);
    }
}

.rest-picker[b-jxsnyt9tvj]
{
    display: flex;
    align-items: center;
    gap: 0.35rem;
    margin-top: 0.5rem;
    flex-wrap: wrap;
}

.rest-picker__label[b-jxsnyt9tvj]
{
    font-size: 0.8rem;
    color: var(--ha-text-muted);
    margin-right: 0.15rem;
}

.rest-picker__btn[b-jxsnyt9tvj]
{
    font-size: 0.75rem;
    padding: 0.2rem 0.5rem;
    border-radius: 1rem;
    border: 1px solid var(--ha-border);
    background: var(--ha-panel);
    color: var(--ha-text);
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s;
}

.rest-picker__btn:hover[b-jxsnyt9tvj]
{
    background: var(--ha-surface-inset);
    border-color: var(--ha-accent-emphasis);
}

.rest-picker__btn--active[b-jxsnyt9tvj]
{
    background: var(--ha-accent-bg);
    border-color: var(--ha-accent-emphasis);
    color: var(--ha-accent-emphasis);
    font-weight: 600;
}

.session-summary[b-jxsnyt9tvj]
{
    margin-top: 1.25rem;
    padding: 1.25rem;
    border-radius: 1rem;
    background: linear-gradient(135deg, var(--ha-success-bg) 0%, var(--ha-success-bg) 100%);
    border: 1px solid var(--ha-success-border);
}

.session-summary__header[b-jxsnyt9tvj]
{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 0.75rem;
}

.session-summary__header h3[b-jxsnyt9tvj]
{
    margin: 0;
    color: var(--ha-success-emphasis);
}

.set-type-chips[b-jxsnyt9tvj]
{
    display: flex;
    gap: 0.25rem;
    flex-wrap: nowrap;
}

.set-type-chip[b-jxsnyt9tvj]
{
    padding: 0.2rem 0.45rem;
    border: 1px solid var(--ha-border);
    border-radius: 0.4rem;
    background: var(--ha-surface-subtle);
    color: var(--ha-text-muted);
    font-size: 0.72rem;
    font-weight: 500;
    cursor: pointer;
    line-height: 1.4;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
    white-space: nowrap;
}

.set-type-chip:hover[b-jxsnyt9tvj]
{
    background: var(--ha-accent-bg);
    border-color: var(--ha-accent-muted);
    color: var(--ha-accent-emphasis);
}

.set-type-chip--active[b-jxsnyt9tvj]
{
    background: var(--ha-accent-bg);
    border-color: var(--ha-accent-muted);
    color: var(--ha-accent-emphasis);
    font-weight: 600;
}

.set-prev-session[b-jxsnyt9tvj]
{
    font-size: 0.72rem;
    color: var(--ha-text-muted);
    margin-top: 0.2rem;
    font-style: italic;
}

.pr-badge[b-jxsnyt9tvj]
{
    display: inline-block;
    margin-left: 0.35rem;
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--ha-warning-emphasis);
    background: var(--ha-gold-highlight);
    border: 1px solid var(--ha-gold);
    border-radius: 0.35rem;
    padding: 0.1rem 0.35rem;
    vertical-align: middle;
}

.set-row--pr[b-jxsnyt9tvj]
{
    background: var(--ha-gold-bg);
}

.set-row--autofilled[b-jxsnyt9tvj]
{
    background: var(--ha-accent-bg);
    border-left: 3px solid var(--ha-accent-emphasis);
}

.quick-accept-btn[b-jxsnyt9tvj]
{
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 2px solid var(--ha-success-emphasis);
    background: var(--ha-success-bg);
    color: var(--ha-success-emphasis);
    font-weight: bold;
    font-size: 1.1rem;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    transition: background 0.15s, transform 0.1s;
}

.quick-accept-btn:hover[b-jxsnyt9tvj]
{
    background: var(--ha-success-emphasis);
    color: var(--ha-panel);
    transform: scale(1.1);
}

.set-row--warmup[b-jxsnyt9tvj]
{
    background: var(--ha-surface-inset);
    color: var(--ha-text-muted);
    font-style: italic;
}

.set-row--warmup td[b-jxsnyt9tvj]
{
    opacity: 0.85;
}

.session-notes-group[b-jxsnyt9tvj]
{
    margin-bottom: 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.session-notes-label[b-jxsnyt9tvj]
{
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--ha-text);
}

.session-notes-input[b-jxsnyt9tvj]
{
    width: 100%;
    padding: 0.5rem 0.65rem;
    border: 1px solid var(--ha-border);
    border-radius: 0.5rem;
    font-size: 0.88rem;
    color: var(--ha-text);
    background: var(--ha-surface-subtle);
    resize: vertical;
    font-family: inherit;
    line-height: 1.5;
    transition: border-color 0.15s, background 0.15s;
    box-sizing: border-box;
}

.session-notes-input:focus[b-jxsnyt9tvj]
{
    outline: none;
    border-color: var(--ha-accent-muted);
    background: var(--ha-panel);
    box-shadow: 0 0 0 3px rgba(83, 155, 245, 0.15);
}

.readiness-start-btn[b-jxsnyt9tvj]
{
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.4rem 0.85rem;
    border: 1.5px dashed var(--ha-border);
    border-radius: 0.5rem;
    background: transparent;
    color: var(--ha-text-muted);
    font-size: 0.85rem;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
}

.readiness-start-btn:hover[b-jxsnyt9tvj]
{
    background: var(--ha-accent-bg);
    border-color: var(--ha-accent-muted);
    color: var(--ha-accent-emphasis);
}

.readiness-summary[b-jxsnyt9tvj]
{
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.45rem 0.85rem;
    border-radius: 0.5rem;
    font-size: 0.85rem;
    width: 100%;
}

.readiness-summary--ready[b-jxsnyt9tvj] { background: var(--ha-success-bg); color: var(--ha-success-emphasis); border: 1px solid var(--ha-success-border); }
.readiness-summary--moderate[b-jxsnyt9tvj] { background: var(--ha-warning-bg); color: var(--ha-warning-emphasis); border: 1px solid var(--ha-warning-border); }
.readiness-summary--low[b-jxsnyt9tvj] { background: var(--ha-warning-bg); color: var(--ha-warning-emphasis); border: 1px solid var(--ha-warning-border); }
.readiness-summary--not-ready[b-jxsnyt9tvj] { background: var(--ha-danger-bg); color: var(--ha-danger); border: 1px solid var(--ha-danger-border); }

.readiness-summary__icon[b-jxsnyt9tvj] { font-size: 1rem; }
.readiness-summary__label[b-jxsnyt9tvj] { flex: 1; }
.readiness-summary__edit[b-jxsnyt9tvj] { background: none; border: none; cursor: pointer; font-size: 0.9rem; opacity: 0.7; padding: 0; }
.readiness-summary__edit:hover[b-jxsnyt9tvj] { opacity: 1; }

.readiness-panel[b-jxsnyt9tvj]
{
    width: 100%;
    padding: 1rem;
    background: var(--ha-surface-subtle);
    border: 1px solid var(--ha-border);
    border-radius: 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.readiness-panel__title[b-jxsnyt9tvj]
{
    margin: 0 0 0.25rem;
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--ha-text);
}

.readiness-panel__row[b-jxsnyt9tvj]
{
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.readiness-panel__row label[b-jxsnyt9tvj]
{
    min-width: 10rem;
    font-size: 0.85rem;
    color: var(--ha-text-muted);
}

.readiness-rating[b-jxsnyt9tvj]
{
    display: flex;
    gap: 0.3rem;
}

.readiness-rating__btn[b-jxsnyt9tvj]
{
    width: 2rem;
    height: 2rem;
    border: 1.5px solid var(--ha-border);
    border-radius: 50%;
    background: var(--ha-panel);
    color: var(--ha-text-muted);
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.12s, border-color 0.12s, color 0.12s;
}

.readiness-rating__btn:hover[b-jxsnyt9tvj]
{
    background: var(--ha-accent-bg);
    border-color: var(--ha-accent-muted);
    color: var(--ha-accent-emphasis);
}

.readiness-rating__btn--active[b-jxsnyt9tvj]
{
    background: var(--ha-accent-emphasis);
    border-color: var(--ha-accent-emphasis);
    color: var(--ha-panel);
}

.readiness-panel__actions[b-jxsnyt9tvj]
{
    display: flex;
    gap: 0.5rem;
    margin-top: 0.25rem;
}

.strength-exercise-card__title[b-jxsnyt9tvj]
{
    flex: 1;
    min-width: 0;
}

.exercise-swapped[b-jxsnyt9tvj]
{
    font-weight: 600;
    color: var(--ha-success-emphasis);
}

.exercise-swapped__original[b-jxsnyt9tvj]
{
    display: block;
    font-size: 0.75rem;
    color: var(--ha-text-muted);
    font-weight: 400;
    margin-top: 0.1rem;
}

.swap-btn[b-jxsnyt9tvj]
{
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.25rem 0.65rem;
    border: 1px solid var(--ha-accent-emphasis);
    border-radius: 2rem;
    background: var(--ha-surface-subtle);
    color: var(--ha-accent-emphasis);
    font-size: 0.78rem;
    font-weight: 500;
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.15s, color 0.15s;
}

.swap-btn:hover[b-jxsnyt9tvj]
{
    background: var(--ha-accent-bg);
}

.swap-btn--active[b-jxsnyt9tvj]
{
    background: var(--ha-accent-bg);
    border-color: var(--ha-accent-emphasis);
    color: var(--ha-accent-emphasis);
}

.demo-btn[b-jxsnyt9tvj]
{
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.25rem 0.65rem;
    border: 1px solid var(--ha-text-muted);
    border-radius: 2rem;
    background: var(--ha-surface-subtle);
    color: var(--ha-text-muted);
    font-size: 0.78rem;
    font-weight: 500;
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.15s;
}

.demo-btn:hover[b-jxsnyt9tvj]
{
    background: var(--ha-surface-hover);
}

.exercise-demo[b-jxsnyt9tvj]
{
    display: flex;
    justify-content: center;
    padding: 0.5rem;
    background: var(--ha-surface-subtle);
    border-radius: 8px;
    margin-bottom: 0.5rem;
}

.exercise-demo__gif[b-jxsnyt9tvj]
{
    max-width: 200px;
    max-height: 200px;
    border-radius: 6px;
}

.swap-panel[b-jxsnyt9tvj]
{
    margin-top: 0.75rem;
    border: 1px solid var(--ha-accent-bg);
    border-radius: 0.65rem;
    padding: 0.75rem;
    background: var(--ha-accent-bg);
}

.swap-panel__label[b-jxsnyt9tvj]
{
    font-size: 0.8rem;
    color: var(--ha-accent-emphasis);
    font-weight: 500;
    margin-bottom: 0.5rem;
}

.swap-panel__loading[b-jxsnyt9tvj],
.swap-panel__empty[b-jxsnyt9tvj]
{
    font-size: 0.82rem;
    color: var(--ha-text-muted);
}

.swap-panel__list[b-jxsnyt9tvj]
{
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

.swap-option[b-jxsnyt9tvj]
{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.45rem 0.75rem;
    border: 1px solid var(--ha-accent-muted);
    border-radius: 0.5rem;
    background: var(--ha-panel);
    cursor: pointer;
    text-align: left;
    transition: background 0.15s, border-color 0.15s;
}

.swap-option:hover[b-jxsnyt9tvj]
{
    background: var(--ha-accent-bg);
    border-color: var(--ha-accent-emphasis);
}

.swap-option__name[b-jxsnyt9tvj]
{
    font-size: 0.88rem;
    font-weight: 500;
    color: var(--ha-text);
}

.swap-option__meta[b-jxsnyt9tvj]
{
    font-size: 0.75rem;
    color: var(--ha-text-muted);
    margin-left: 1rem;
    white-space: nowrap;
}

.superset-group[b-jxsnyt9tvj] {
    border: 2px solid var(--ha-superset);
    border-radius: 0.85rem;
    overflow: hidden;
}

.superset-group__header[b-jxsnyt9tvj] {
    background: linear-gradient(90deg, var(--ha-superset) 0%, var(--ha-superset-light) 100%);
    padding: 0.4rem 1rem;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.superset-group__label[b-jxsnyt9tvj] {
    font-size: 0.78rem;
    font-weight: 700;
    color: var(--ha-panel);
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.superset-group__hint[b-jxsnyt9tvj] {
    font-size: 0.72rem;
    color: rgba(255,255,255,0.8);
}

.strength-exercise-card--grouped[b-jxsnyt9tvj] {
    border: none;
    border-bottom: 1px solid var(--ha-superset-border);
    border-radius: 0;
    background: linear-gradient(180deg, var(--ha-superset-bg) 0%, var(--ha-panel) 100%);
}

.strength-exercise-card--grouped:last-child[b-jxsnyt9tvj] {
    border-bottom: none;
}

.add-set-btn[b-jxsnyt9tvj] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.45rem 0.85rem;
    border: 1.5px dashed var(--ha-accent-muted);
    border-radius: 0.5rem;
    background: transparent;
    color: var(--ha-accent-muted);
    font-size: 0.82rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s;
}

.add-set-btn:hover[b-jxsnyt9tvj] {
    background: rgba(83, 155, 245, 0.08);
    border-color: var(--ha-accent-emphasis);
    color: var(--ha-accent-emphasis);
}

.add-set-btn__icon[b-jxsnyt9tvj] {
    font-size: 1rem;
    line-height: 1;
}

.set-row--extra[b-jxsnyt9tvj] {
    background: var(--ha-accent-bg);
}

.set-row--extra td[b-jxsnyt9tvj] {
    border-bottom: 1px dashed var(--ha-border);
}

.remove-set-btn[b-jxsnyt9tvj] {
    background: none;
    border: none;
    color: var(--ha-text-muted);
    font-size: 0.85rem;
    cursor: pointer;
    padding: 0.2rem 0.4rem;
    border-radius: 0.25rem;
    line-height: 1;
    transition: color 0.15s, background 0.15s;
}

.remove-set-btn:hover[b-jxsnyt9tvj] {
    color: var(--ha-danger);
    background: rgba(198, 40, 40, 0.08);
}

.extra-set-actions[b-jxsnyt9tvj] {
    display: flex;
    align-items: center;
    gap: 0.3rem;
}

@media (max-width: 480px) {
    .plate-calc-btn[b-jxsnyt9tvj] {
        width: 36px;
        height: 36px;
        font-size: 1rem;
    }

    .quick-accept-btn[b-jxsnyt9tvj] {
        width: 44px;
        height: 44px;
    }
}

@media (max-width: 480px) {
    .strength-text-input[b-jxsnyt9tvj] {
        min-width: 0;
    }

    .session-notes-input[b-jxsnyt9tvj] {
        font-size: 1rem;
    }
}
/* /Components/WorkoutTimer.razor.rz.scp.css */
/* ── Workout timer container ─────────────────────────────────── */
.workout-timer[b-7axrd6533j]
{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.75rem;
}

/* ── Start button ────────────────────────────────────────────── */
.workout-timer__start-btn[b-7axrd6533j]
{
    font-weight: 600;
}

/* ── Elapsed time display ────────────────────────────────────── */
.workout-timer__display[b-7axrd6533j]
{
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: var(--ha-success-bg);
    border: 1px solid var(--ha-success-border);
    border-radius: 0.75rem;
}

.workout-timer__icon[b-7axrd6533j]
{
    font-size: 1.1rem;
}

.workout-timer__time[b-7axrd6533j]
{
    font-size: 1.5rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    color: var(--ha-success, var(--ha-success));
    letter-spacing: 0.04em;
}

/* ── Pause / Resume controls ─────────────────────────────────── */
.workout-timer__controls[b-7axrd6533j]
{
    display: flex;
    gap: 0.5rem;
}

.workout-timer__control-btn[b-7axrd6533j]
{
    padding: 0.3rem 0.75rem;
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 0.5rem;
    background: var(--ha-panel-alt, var(--ha-surface-subtle));
    color: var(--ha-text-muted, var(--ha-text-muted));
    font-size: 0.85rem;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.12s, border-color 0.12s, color 0.12s;
}

.workout-timer__control-btn:hover[b-7axrd6533j]
{
    background: var(--ha-accent-soft, var(--ha-accent-soft));
    border-color: var(--ha-accent, var(--ha-accent-muted));
    color: var(--ha-accent, var(--ha-accent-emphasis));
}

/* ── Error message ───────────────────────────────────────────── */
.workout-timer__error[b-7axrd6533j]
{
    font-size: 0.82rem;
    color: var(--ha-danger, var(--ha-danger));
    background: var(--ha-danger-bg);
    border: 1px solid var(--ha-danger);
    border-radius: 0.5rem;
    padding: 0.4rem 0.75rem;
}
/* /Layout/ConsumerNavTree.razor.rz.scp.css */
.consumer-nav__tree[b-zpbvesvx3c],
.consumer-nav__drawer-tree[b-zpbvesvx3c] {
    display: grid;
    gap: 0.15rem;
}

.consumer-nav__section[b-zpbvesvx3c] {
    display: grid;
    gap: 0.1rem;
}

.consumer-nav__section-toggle[b-zpbvesvx3c] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    width: 100%;
    min-height: 44px;
    padding: 0.68rem 0.82rem;
    margin-top: 0.4rem;
    border: none;
    border-radius: 14px;
    background: transparent;
    color: var(--ha-text-muted);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    text-align: left;
    cursor: pointer;
    transition: background var(--ha-transition-fast), color var(--ha-transition-fast), transform var(--ha-transition-fast), box-shadow var(--ha-transition-fast);
}

.consumer-nav__section:first-of-type .consumer-nav__section-toggle[b-zpbvesvx3c] {
    margin-top: 0;
}

.consumer-nav__section-toggle:hover[b-zpbvesvx3c] {
    background: color-mix(in srgb, var(--ha-panel-alt) 88%, var(--ha-panel));
    color: var(--ha-text);
    transform: translateX(2px);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ha-accent) 8%, transparent);
}

.consumer-nav__section-toggle--active[b-zpbvesvx3c],
.consumer-nav__section-toggle--active:hover[b-zpbvesvx3c] {
    background: var(--ha-accent-soft);
    color: var(--ha-accent);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ha-accent) 14%, transparent);
}

.consumer-nav__section-chevron[b-zpbvesvx3c] {
    width: 1rem;
    font-size: 0.78rem;
    line-height: 1;
    transition: transform var(--ha-transition-medium);
}

.consumer-nav__section-toggle--expanded .consumer-nav__section-chevron[b-zpbvesvx3c] {
    transform: rotate(90deg);
}

.consumer-nav__section-icon[b-zpbvesvx3c],
.consumer-nav__section-emoji[b-zpbvesvx3c] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.45rem;
    height: 1.45rem;
    flex-shrink: 0;
    border-radius: 10px;
    background: color-mix(in srgb, var(--ha-accent-soft) 72%, var(--ha-panel));
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ha-accent) 12%, transparent);
    font-size: 0.82rem;
    line-height: 1;
    opacity: 0.88;
    transform: translateY(-0.02em);
}

.consumer-nav__section-icon[b-zpbvesvx3c]  fluent-icon {
    color: currentColor;
    font-size: 0.9rem;
}

.consumer-nav__section-toggle--active .consumer-nav__section-icon[b-zpbvesvx3c],
.consumer-nav__section-toggle--active .consumer-nav__section-emoji[b-zpbvesvx3c] {
    background: color-mix(in srgb, var(--ha-accent-soft) 86%, var(--ha-panel));
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ha-accent) 24%, transparent);
}

.consumer-nav__section-children[b-zpbvesvx3c] {
    max-height: 0;
    overflow: hidden;
    visibility: hidden;
    opacity: 0;
    transform: translateY(-4px);
    margin-left: 0.45rem;
    padding-left: 0.9rem;
    border-left: 1px solid color-mix(in srgb, var(--ha-accent) 12%, var(--ha-border-subtle, var(--ha-border)));
    transition: max-height 0.28s var(--ha-easing-default), opacity 0.16s ease, transform 0.2s var(--ha-easing-default), visibility 0s linear var(--ha-transition-medium);
}

.consumer-nav__section-children--expanded[b-zpbvesvx3c] {
    max-height: 520px;
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
    transition: max-height 0.32s var(--ha-easing-default), opacity 0.2s ease, transform 0.24s var(--ha-easing-default), visibility 0s;
}

.consumer-nav__link[b-zpbvesvx3c] {
    display: flex;
    align-items: center;
    min-height: 44px;
    padding: 0.66rem 0.78rem;
    border-radius: 14px;
    color: var(--ha-text);
    font-size: 0.91rem;
    font-weight: 600;
    text-decoration: none;
    transition: background var(--ha-transition-fast), color var(--ha-transition-fast), transform var(--ha-transition-fast), box-shadow var(--ha-transition-fast);
}

.consumer-nav__link:hover[b-zpbvesvx3c] {
    background: var(--ha-surface-hover);
    color: var(--ha-text);
    transform: translateX(2px);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ha-accent) 8%, transparent);
}

.consumer-nav__link.active[b-zpbvesvx3c] {
    background: var(--ha-accent-soft);
    color: var(--ha-accent);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ha-accent) 16%, transparent);
}

.consumer-nav__link-content[b-zpbvesvx3c] {
    display: inline-flex;
    align-items: center;
    gap: 0.78rem;
    min-width: 0;
}

.consumer-nav__link-content[b-zpbvesvx3c]  fluent-icon {
    color: color-mix(in srgb, currentColor 86%, var(--ha-text-muted));
}

.consumer-nav__link.active .consumer-nav__link-content[b-zpbvesvx3c]  fluent-icon,
.consumer-nav__link--dashboard .consumer-nav__link-content[b-zpbvesvx3c]  fluent-icon {
    color: currentColor;
}

.consumer-nav__link--dashboard[b-zpbvesvx3c] {
    margin-bottom: 0.25rem;
    background: color-mix(in srgb, var(--ha-accent-bg) 72%, var(--ha-panel));
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ha-accent) 10%, transparent);
}

@media (prefers-reduced-motion: reduce) {
    .consumer-nav__section-toggle[b-zpbvesvx3c],
    .consumer-nav__section-children[b-zpbvesvx3c],
    .consumer-nav__link[b-zpbvesvx3c] {
        transition: none;
        animation: none;
    }
}
/* /Layout/MainLayout.razor.rz.scp.css */
.email-verify-banner[b-dai0ao5dbf] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
    padding: 0.75rem 1.25rem;
    background: var(--ha-warning-bg);
    color: var(--ha-badge-system-text);
    border: 1px solid var(--ha-warning-border);
    border-radius: 8px;
    margin-bottom: 1rem;
    font-size: 0.9rem;
}

.email-verify-banner span:first-child[b-dai0ao5dbf] {
    flex: 1;
}

.consumer-nav--fallback[b-dai0ao5dbf] {
    position: sticky;
    top: 0;
    display: grid;
    align-content: start;
    height: 100dvh;
    padding: 1.1rem 0.9rem calc(1.1rem + env(safe-area-inset-bottom, 0px));
    overflow-y: auto;
    box-sizing: border-box;
}

.consumer-nav--fallback .consumer-nav__panel-shell[b-dai0ao5dbf] {
    gap: 0.35rem;
}

.app-footer[b-dai0ao5dbf] {
    text-align: center;
    padding: 1.25rem 2rem;
    border-top: 1px solid var(--ha-border);
    color: var(--ha-text-muted);
    font-size: 0.8rem;
}

@media (max-width: 960px) {
    .consumer-nav--fallback[b-dai0ao5dbf] {
        position: static;
        height: auto;
        padding: 0.9rem 0.75rem 0;
        overflow: visible;
    }

    .app-footer[b-dai0ao5dbf] {
        padding: 1rem 1.25rem;
    }
}

/* Guest nav (unauthenticated) — same rail shape as main nav */
.consumer-nav--guest[b-dai0ao5dbf] {
    position: sticky;
    top: 0;
    display: grid;
    align-content: start;
    height: 100dvh;
    padding: 1.1rem 0.9rem calc(1.1rem + env(safe-area-inset-bottom, 0px));
    overflow-y: auto;
    box-sizing: border-box;
}

.consumer-nav--guest .consumer-nav__panel-shell[b-dai0ao5dbf] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.consumer-nav--guest .consumer-nav__brand[b-dai0ao5dbf] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.5rem 0.6rem;
    font-weight: 600;
    font-size: 1.1rem;
    color: var(--ha-text);
    margin-bottom: 0.5rem;
}

@media (max-width: 960px) {
    .consumer-nav--guest[b-dai0ao5dbf] {
        position: static;
        height: auto;
        padding: 0.9rem 0.75rem 0;
        overflow: visible;
    }
}
/* /Layout/NavMenu.razor.rz.scp.css */
.consumer-nav[b-ys2bq62udl] {
    position: relative;
}

.consumer-nav__overlay[b-ys2bq62udl],
.consumer-nav__tablet-bar[b-ys2bq62udl],
.consumer-nav__drawer[b-ys2bq62udl],
.consumer-bottom-nav[b-ys2bq62udl] {
    display: none;
}

.consumer-nav__rail[b-ys2bq62udl] {
    position: sticky;
    top: 0;
    display: grid;
    align-content: start;
    grid-auto-rows: max-content;
    gap: 0.85rem;
    height: 100dvh;
    padding: 1.1rem 0.9rem calc(1.1rem + env(safe-area-inset-bottom, 0px));
    overflow-y: auto;
    box-sizing: border-box;
}

.consumer-nav__brand-card[b-ys2bq62udl] {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0.8rem;
    padding: 0.95rem;
    border-radius: 22px;
    border: 1px solid color-mix(in srgb, var(--ha-accent) 18%, transparent);
    background: linear-gradient(180deg, color-mix(in srgb, var(--ha-panel) 92%, white) 0%, color-mix(in srgb, var(--ha-accent-soft) 56%, var(--ha-panel)) 100%);
    box-shadow: var(--ha-shadow);
    transition: transform var(--ha-transition-medium), box-shadow var(--ha-transition-medium);
}

.consumer-nav__brand-card:hover[b-ys2bq62udl] {
    transform: translateY(-1px);
    box-shadow: 0 18px 42px rgba(21, 64, 46, 0.12);
}

.consumer-nav__brand-mark[b-ys2bq62udl] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.8rem;
    height: 2.8rem;
    border-radius: 16px;
    color: var(--ha-accent);
    background: color-mix(in srgb, var(--ha-panel) 88%, white);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ha-border) 65%, white);
}

.consumer-nav__brand-copy[b-ys2bq62udl] {
    display: grid;
    gap: 0.2rem;
}

.consumer-nav__brand-kicker[b-ys2bq62udl],
.consumer-nav__tablet-kicker[b-ys2bq62udl],
.consumer-nav__drawer-kicker[b-ys2bq62udl] {
    margin: 0;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--ha-text-muted);
}

.consumer-nav__brand-title[b-ys2bq62udl],
.consumer-nav__tablet-title[b-ys2bq62udl],
.consumer-nav__drawer-title[b-ys2bq62udl] {
    margin: 0;
    font-size: 1.25rem;
    line-height: 1.1;
    color: var(--ha-text);
}

.consumer-nav__brand-text[b-ys2bq62udl] {
    margin: 0;
    color: var(--ha-text-muted);
    font-size: 0.83rem;
    line-height: 1.45;
}

.consumer-nav__panel-shell[b-ys2bq62udl] {
    display: grid;
    align-content: start;
    gap: 0.3rem;
    padding: 0.45rem;
    border-radius: 24px;
    border: 1px solid color-mix(in srgb, var(--ha-accent) 14%, var(--ha-border));
    background: linear-gradient(180deg, color-mix(in srgb, var(--ha-panel) 94%, white) 0%, color-mix(in srgb, var(--ha-accent-soft) 26%, var(--ha-panel)) 100%);
    box-shadow: 0 16px 42px rgba(21, 64, 46, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.62);
    backdrop-filter: blur(18px);
}

@media (max-width: 960px) {
    .consumer-nav__rail[b-ys2bq62udl] {
        display: none;
    }

    .consumer-nav__tablet-bar[b-ys2bq62udl] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 1rem;
        padding: 0.65rem 1rem 0.1rem;
    }

    .consumer-nav__tablet-brand[b-ys2bq62udl] {
        display: grid;
        gap: 0.15rem;
    }

    .consumer-nav__tablet-title[b-ys2bq62udl] {
        font-size: 1rem;
    }

    .consumer-nav__tablet-toggle[b-ys2bq62udl]::part(control),
    .consumer-nav__drawer-close[b-ys2bq62udl]::part(control) {
        border-radius: 999px;
        border: 1px solid color-mix(in srgb, var(--ha-accent) 18%, var(--ha-border));
        background: color-mix(in srgb, var(--ha-panel) 88%, white);
        color: var(--ha-text);
        min-width: 44px;
    }

    .consumer-nav__overlay--visible[b-ys2bq62udl] {
        display: block;
        position: fixed;
        inset: 0;
        z-index: 80;
        background: rgba(17, 24, 39, 0.42);
        backdrop-filter: blur(2px);
    }

    .consumer-nav__drawer[b-ys2bq62udl] {
        display: block;
        position: fixed;
        inset: 0;
        z-index: 90;
        pointer-events: none;
    }

    .consumer-nav__drawer--open[b-ys2bq62udl] {
        pointer-events: auto;
    }

    .consumer-nav__drawer-surface[b-ys2bq62udl] {
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        width: min(24rem, 92vw);
        display: grid;
        gap: 0.6rem;
        padding: 0.95rem 0.95rem calc(0.95rem + env(safe-area-inset-bottom, 0px));
        background: linear-gradient(180deg, color-mix(in srgb, var(--ha-panel) 96%, white) 0%, color-mix(in srgb, var(--ha-accent-soft) 22%, var(--ha-panel)) 100%);
        box-shadow: 0 24px 64px rgba(19, 48, 34, 0.22);
        border-right: 1px solid color-mix(in srgb, var(--ha-accent) 15%, var(--ha-border));
        transform: translateX(calc(-100% - 1rem));
        transition: transform 0.32s var(--ha-easing-default), opacity 0.2s ease;
        opacity: 0;
    }

    .consumer-nav__drawer--open .consumer-nav__drawer-surface[b-ys2bq62udl] {
        transform: translateX(0);
        opacity: 1;
    }

    .consumer-nav__drawer-header[b-ys2bq62udl] {
        display: flex;
        justify-content: space-between;
        align-items: start;
        gap: 0.75rem;
        padding-bottom: 0.35rem;
    }

    .consumer-nav__menu-trigger[b-ys2bq62udl]::part(control) {
        background: color-mix(in srgb, var(--ha-accent-soft) 82%, white);
        border-color: color-mix(in srgb, var(--ha-accent) 22%, var(--ha-border));
        color: var(--ha-accent);
        box-shadow: 0 10px 24px rgba(21, 64, 46, 0.12);
    }

    .consumer-nav__menu-trigger:hover[b-ys2bq62udl]::part(control),
    .consumer-nav__menu-trigger:focus-visible[b-ys2bq62udl]::part(control) {
        background: color-mix(in srgb, var(--ha-accent-soft) 90%, white);
        border-color: color-mix(in srgb, var(--ha-accent) 30%, var(--ha-border));
    }

    .consumer-nav__menu-trigger-content[b-ys2bq62udl] {
        display: inline-flex;
        align-items: center;
        gap: 0.5rem;
        font-weight: 700;
    }

    .consumer-bottom-nav__item--menu-trigger[b-ys2bq62udl] {
        color: var(--ha-accent);
        background: color-mix(in srgb, var(--ha-accent-soft) 72%, white);
        box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ha-accent) 12%, transparent);
    }

    .consumer-bottom-nav__item--menu-trigger:hover[b-ys2bq62udl] {
        background: color-mix(in srgb, var(--ha-accent-soft) 82%, white);
    }
}

@media (max-width: 768px) {
    .consumer-nav__tablet-bar[b-ys2bq62udl] {
        display: none;
    }

    .consumer-nav__drawer-surface[b-ys2bq62udl] {
        width: min(24rem, 100vw);
        padding-top: 1rem;
    }

    .consumer-bottom-nav[b-ys2bq62udl] {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 70;
        display: flex;
        align-items: stretch;
        justify-content: space-between;
        gap: 0.3rem;
        padding: 0.4rem calc(0.7rem + env(safe-area-inset-left, 0px)) calc(0.5rem + env(safe-area-inset-bottom, 0px)) calc(0.7rem + env(safe-area-inset-right, 0px));
        background: color-mix(in srgb, var(--ha-panel) 94%, white);
        backdrop-filter: blur(18px);
        border-top: 1px solid color-mix(in srgb, var(--ha-accent) 16%, var(--ha-border));
        box-shadow: 0 -10px 30px rgba(19, 48, 34, 0.12);
    }

    .consumer-bottom-nav__item[b-ys2bq62udl] {
        flex: 1 1 0;
        display: grid;
        justify-items: center;
        gap: 0.16rem;
        min-height: 44px;
        padding: 0.42rem 0.16rem;
        border: none;
        border-radius: 14px;
        background: transparent;
        color: var(--ha-text-muted);
        text-decoration: none;
        font: inherit;
        font-size: 0.61rem;
        font-weight: 700;
        letter-spacing: 0.02em;
        line-height: 1.1;
        cursor: pointer;
        transition: background var(--ha-transition-fast), color var(--ha-transition-fast), transform var(--ha-transition-fast), box-shadow var(--ha-transition-fast);
    }

    .consumer-bottom-nav__item--active[b-ys2bq62udl] {
        color: var(--ha-accent);
        background: color-mix(in srgb, var(--ha-accent-soft) 78%, white);
        transform: translateY(-1px);
        box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ha-accent) 12%, transparent);
    }

    .consumer-bottom-nav__item:hover[b-ys2bq62udl] {
        background: color-mix(in srgb, var(--ha-accent-soft) 52%, white);
    }

    .consumer-bottom-nav__item fluent-icon[b-ys2bq62udl] {
        font-size: 1.08rem;
        color: currentColor;
    }
}

@media (max-width: 480px) {
    .consumer-nav__brand-card[b-ys2bq62udl] {
        grid-template-columns: 1fr;
    }

    .consumer-bottom-nav__item[b-ys2bq62udl] {
        font-size: 0.58rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .consumer-nav__brand-card[b-ys2bq62udl],
    .consumer-nav__drawer-surface[b-ys2bq62udl],
    .consumer-bottom-nav__item[b-ys2bq62udl] {
        transition: none;
        animation: none;
    }
}
/* /Pages/About.razor.rz.scp.css */
.about-hero[b-e6b9pgp982] {
    display: grid;
    gap: 1.25rem;
    grid-template-columns: minmax(0, 1.55fr) minmax(260px, 0.95fr);
    align-items: stretch;
    padding: 1.5rem;
    border: 1px solid var(--ha-border);
    border-radius: var(--ha-radius-lg);
    background: linear-gradient(135deg, rgba(21, 121, 90, 0.12) 0%, rgba(255, 255, 255, 0.97) 54%, rgba(218, 242, 229, 0.9) 100%);
    box-shadow: var(--ha-shadow);
}

.about-hero__copy[b-e6b9pgp982] {
    display: grid;
    gap: 1rem;
}

.about-hero__copy h1[b-e6b9pgp982] {
    margin: 0;
    font-size: clamp(2rem, 4vw, 2.9rem);
    line-height: 1.05;
}

.about-hero__pills[b-e6b9pgp982] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.about-hero__panel[b-e6b9pgp982] {
    display: grid;
    gap: 0.75rem;
    padding: 1.15rem;
    border-radius: var(--ha-radius-md);
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid rgba(21, 121, 90, 0.16);
}

.about-hero__panel-item[b-e6b9pgp982] {
    display: grid;
    gap: 0.2rem;
    padding: 0.8rem;
    border-radius: var(--ha-radius-sm);
    background: var(--ha-panel);
    border: 1px solid var(--ha-border);
}

.about-hero__panel-label[b-e6b9pgp982] {
    color: var(--ha-text-muted);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.about-surface[b-e6b9pgp982] {
    margin-top: 1.25rem;
}

.about-surface__heading[b-e6b9pgp982] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.about-surface__intro[b-e6b9pgp982] {
    max-width: 46rem;
    color: var(--ha-text-muted);
}

.about-features[b-e6b9pgp982] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 1.25rem;
    margin-top: 1.5rem;
}

.about-feature[b-e6b9pgp982] {
    display: grid;
    gap: 0.75rem;
    padding: 1.1rem;
    border-radius: var(--ha-radius-md);
    background: linear-gradient(180deg, var(--ha-panel) 0%, var(--ha-surface-hover) 100%);
    border: 1px solid var(--ha-border);
}

.about-feature__heading[b-e6b9pgp982] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.about-feature__icon[b-e6b9pgp982] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 999px;
    background: var(--ha-accent-soft);
    color: var(--ha-accent);
    flex-shrink: 0;
}

.about-feature h3[b-e6b9pgp982] {
    margin: 0;
    font-size: 1rem;
}

.about-feature p[b-e6b9pgp982] {
    margin: 0;
    font-size: 0.9rem;
    color: var(--ha-text-muted);
}

.about-feedback-card[b-e6b9pgp982] {
    margin-top: 1.25rem;
    background: linear-gradient(180deg, var(--ha-panel) 0%, rgba(227, 247, 237, 0.68) 100%);
}

.feedback-form[b-e6b9pgp982] {
    margin-top: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    max-width: 480px;
}

.feedback-field[b-e6b9pgp982] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.feedback-label[b-e6b9pgp982] {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--ha-text);
}

.feedback-select[b-e6b9pgp982] {
    padding: 0.5rem 0.75rem;
    border-radius: 0.5rem;
    border: 1px solid var(--ha-border);
    font-size: 0.9rem;
    background: var(--ha-panel);
}

.feedback-textarea[b-e6b9pgp982] {
    padding: 0.5rem 0.75rem;
    border-radius: 0.5rem;
    border: 1px solid var(--ha-border);
    font-size: 0.9rem;
    resize: vertical;
    font-family: inherit;
}

.feedback-textarea:focus[b-e6b9pgp982],
.feedback-select:focus[b-e6b9pgp982] {
    outline: none;
    border-color: var(--ha-accent-emphasis);
    box-shadow: 0 0 0 3px rgba(21, 121, 90, 0.18);
}

.about-version[b-e6b9pgp982] {
    margin-top: 2rem;
    padding: 1rem 0;
    text-align: center;
    font-size: 0.75rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    letter-spacing: 0.02em;
}

.about-version--admin[b-e6b9pgp982] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
}

.version-separator[b-e6b9pgp982] {
    opacity: 0.5;
}

@media (max-width: 900px) {
    .about-hero[b-e6b9pgp982] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .about-hero[b-e6b9pgp982] {
        padding: 1.25rem;
    }

    .about-hero__pills[b-e6b9pgp982] {
        flex-direction: column;
        align-items: flex-start;
    }
}
/* /Pages/AccountSettings.razor.rz.scp.css */
/* ── Account Settings — Tabbed Redesign ─────────── */

/* ── Profile Header Card ─────────────────────────── */
.acct-header[b-zipzxe4u25] {
    margin-bottom: 0.5rem;
}

.acct-header__row[b-zipzxe4u25] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    flex-wrap: wrap;
}

.acct-header__avatar[b-zipzxe4u25] {
    width: 64px;
    height: 64px;
    border-radius: var(--ha-radius-full);
    background: linear-gradient(135deg, var(--ha-accent) 0%, var(--ha-accent-hover) 100%);
    color: var(--ha-panel);
    font-size: 1.4rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    letter-spacing: 0.04em;
}

.acct-header__info[b-zipzxe4u25] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    flex: 1 1 auto;
    min-width: 0;
}

.acct-header__name[b-zipzxe4u25] {
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--ha-text);
}

.acct-header__email[b-zipzxe4u25] {
    font-size: 0.9rem;
    color: var(--ha-text-muted);
}

.acct-header__since[b-zipzxe4u25] {
    font-size: 0.8rem;
    color: var(--ha-text-muted);
}

.acct-header__meta[b-zipzxe4u25] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.25rem;
    flex-shrink: 0;
}

.acct-header__badge[b-zipzxe4u25] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.8rem;
    color: var(--ha-text-muted);
}

.acct-header__badge-dot[b-zipzxe4u25] {
    width: 8px;
    height: 8px;
    border-radius: var(--ha-radius-full);
    display: inline-block;
}

.acct-header__badge-dot--ok[b-zipzxe4u25] {
    background: var(--ha-success);
}

.acct-header__badge-dot--warn[b-zipzxe4u25] {
    background: var(--ha-warning);
}

.acct-header__last-login[b-zipzxe4u25] {
    font-size: 0.75rem;
    color: var(--ha-text-muted);
}

/* ── Tabs ─────────────────────────────────────────── */
.acct-tabs[b-zipzxe4u25] {
    margin-bottom: 0.5rem;
}

/* ── Panel (tab content cards) ───────────────────── */
.acct-panel[b-zipzxe4u25] {
    margin-bottom: 1rem;
}

.acct-panel__title[b-zipzxe4u25] {
    margin: 0 0 0.75rem 0;
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--ha-text);
}

.acct-panel__desc[b-zipzxe4u25] {
    font-size: 0.88rem;
    color: var(--ha-text-muted);
    margin: 0 0 1rem 0;
}

/* ── Form grid: 2-col on desktop ─────────────────── */
.acct-form-grid[b-zipzxe4u25] {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
    margin-bottom: 1rem;
}

@media (min-width: 768px) {
    .acct-form-grid[b-zipzxe4u25] {
        grid-template-columns: 1fr 1fr;
    }
}

.acct-field[b-zipzxe4u25] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.acct-field__label[b-zipzxe4u25] {
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--ha-text-muted);
}

/* ── Inline read-only value ──────────────────────── */
.acct-inline-value[b-zipzxe4u25] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    margin-bottom: 1rem;
}

.acct-inline-value span:last-child[b-zipzxe4u25] {
    font-size: 0.95rem;
}

/* ── Expandable form sections ────────────────────── */
.acct-expand[b-zipzxe4u25] {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--ha-border);
}

/* ── Toggle row (preferences) ────────────────────── */
.acct-toggle-row[b-zipzxe4u25] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.acct-toggle-row__label[b-zipzxe4u25] {
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--ha-text);
    display: block;
}

.acct-toggle-row__hint[b-zipzxe4u25] {
    font-size: 0.8rem;
    color: var(--ha-text-muted);
    display: block;
    margin-top: 0.2rem;
}

/* ── Quick Actions grid ──────────────────────────── */
.acct-actions-grid[b-zipzxe4u25] {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.75rem;
    margin-bottom: 1rem;
}

@media (min-width: 768px) {
    .acct-actions-grid[b-zipzxe4u25] {
        grid-template-columns: 1fr 1fr 1fr;
    }
}

.acct-action-btn[b-zipzxe4u25] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.85rem 1rem;
    background: var(--ha-surface-subtle);
    border: 1px solid var(--ha-border);
    border-radius: var(--ha-radius-md);
    cursor: pointer;
    text-align: left;
    transition: background var(--ha-transition-fast), border-color var(--ha-transition-fast);
}

.acct-action-btn:hover[b-zipzxe4u25] {
    background: var(--ha-surface-hover);
    border-color: var(--ha-accent-muted);
}

.acct-action-btn:focus-visible[b-zipzxe4u25] {
    outline: 2px solid var(--ha-accent);
    outline-offset: 2px;
}

.acct-action-btn__icon[b-zipzxe4u25] {
    font-size: 1.5rem;
    flex-shrink: 0;
}

.acct-action-btn__text[b-zipzxe4u25] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
}

.acct-action-btn__text strong[b-zipzxe4u25] {
    font-size: 0.88rem;
    color: var(--ha-text);
}

.acct-action-btn__text span:last-child[b-zipzxe4u25] {
    font-size: 0.78rem;
    color: var(--ha-text-muted);
}

/* ── Danger Zone ─────────────────────────────────── */
.acct-danger-zone[b-zipzxe4u25] {
    margin-top: 1.5rem;
    border-color: var(--ha-danger-border);
}

.acct-danger-zone__title[b-zipzxe4u25] {
    margin: 0 0 0.5rem 0;
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--ha-danger);
}

.acct-delete-confirm[b-zipzxe4u25] {
    margin-top: 1rem;
    padding: 0.85rem 1rem;
    background: var(--ha-danger-bg);
    border: 1px solid var(--ha-danger-border);
    border-radius: var(--ha-radius-md);
}

.acct-delete-confirm__warning[b-zipzxe4u25] {
    display: block;
    font-weight: 600;
    color: var(--ha-danger);
    font-size: 0.88rem;
    margin-bottom: 0.75rem;
}

/* ── Responsive tweaks ───────────────────────────── */
@media (max-width: 480px) {
    .acct-header__row[b-zipzxe4u25] {
        flex-direction: column;
        align-items: flex-start;
    }

    .acct-header__meta[b-zipzxe4u25] {
        align-items: flex-start;
    }

    .acct-actions-grid[b-zipzxe4u25] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/Achievements.razor.rz.scp.css */
.achievements__filter-tabs[b-uhg22gmqe7] {
    display: flex;
    gap: 0.35rem;
    flex-wrap: wrap;
}

.achievements__grid[b-uhg22gmqe7] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    margin-top: 1rem;
}

.achievements__card[b-uhg22gmqe7] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 1.25rem 1rem;
    gap: 0.5rem;
    transition: opacity 0.2s, filter 0.2s;
}

.achievements__card--locked[b-uhg22gmqe7] {
    opacity: 0.5;
    filter: grayscale(0.85);
}

.achievements__card-icon[b-uhg22gmqe7] {
    font-size: 2.5rem;
    line-height: 1;
}

.achievements__card-name[b-uhg22gmqe7] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--ha-text);
    margin: 0;
}

.achievements__card-desc[b-uhg22gmqe7] {
    font-size: 0.82rem;
    color: var(--ha-text-muted);
    margin: 0;
    line-height: 1.4;
}

.achievements__card-date[b-uhg22gmqe7] {
    margin-top: auto;
}

/* Re-use toggle styles */
.view-toggle[b-uhg22gmqe7] {
    padding: 0.3rem 0.7rem;
    border: 1px solid var(--ha-border);
    border-radius: 0.4rem;
    background: var(--ha-surface-subtle);
    color: var(--ha-text-muted);
    font-size: 0.8rem;
    cursor: pointer;
    transition: background 0.12s, border-color 0.12s, color 0.12s;
    white-space: nowrap;
}

.view-toggle:hover[b-uhg22gmqe7],
.view-toggle--active[b-uhg22gmqe7] {
    background: var(--ha-accent-soft);
    border-color: var(--ha-accent-muted);
    color: var(--ha-accent-emphasis);
}

@media (max-width: 960px) {
    .achievements__grid[b-uhg22gmqe7] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .achievements__grid[b-uhg22gmqe7] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/ActiveWorkout.razor.rz.scp.css */
/* ── Active Workout: Full-screen focused layout ─────────────────── */

/* ── Loading / Error states ──────────────────────────────────────── */
.aw-loading[b-ozm9irukdr],
.aw-error[b-ozm9irukdr] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 60vh;
    gap: 1.5rem;
    padding: 2rem 1rem;
}

/* ── Main Container ──────────────────────────────────────────────── */
.aw-container[b-ozm9irukdr] {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    min-height: 100dvh;
    padding-bottom: env(safe-area-inset-bottom, 0);
}

/* ── Header ──────────────────────────────────────────────────────── */
.aw-header[b-ozm9irukdr] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    background: var(--ha-panel, var(--ha-panel));
    border-bottom: 1px solid var(--ha-border, var(--ha-border));
    position: sticky;
    top: 0;
    z-index: 10;
}

.aw-header__left[b-ozm9irukdr] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.aw-header__back[b-ozm9irukdr] {
    font-size: 1.25rem;
    min-width: 44px;
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}

.aw-header__info[b-ozm9irukdr] {
    display: flex;
    flex-direction: column;
}

.aw-header__title[b-ozm9irukdr] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--ha-text, var(--ha-text));
    line-height: 1.3;
}

.aw-header__progress[b-ozm9irukdr] {
    font-size: 0.8rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.aw-header__elapsed[b-ozm9irukdr] {
    font-size: 1rem;
    font-weight: 600;
    font-variant-numeric: tabular-nums;
    color: var(--ha-success, var(--ha-success));
    padding: 0.25rem 0.75rem;
    background: var(--ha-success-bg, var(--ha-success-bg));
    border: 1px solid var(--ha-success-border, var(--ha-success-border));
    border-radius: 0.5rem;
}

/* ── Progress Bar ────────────────────────────────────────────────── */
.aw-progress[b-ozm9irukdr] {
    height: 4px;
    background: var(--ha-surface-subtle, var(--ha-surface-subtle));
    overflow: hidden;
}

.aw-progress__fill[b-ozm9irukdr] {
    height: 100%;
    background: var(--ha-accent, var(--ha-accent-emphasis));
    transition: width 0.4s ease;
}

/* ── Rest Timer Overlay ──────────────────────────────────────────── */
.aw-rest-overlay[b-ozm9irukdr] {
    position: fixed;
    inset: 0;
    z-index: 100;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.7);
    backdrop-filter: blur(4px);
}

.aw-rest-content[b-ozm9irukdr] {
    background: var(--ha-panel, var(--ha-panel));
    border-radius: 1.25rem;
    padding: 2rem;
    text-align: center;
    max-width: 340px;
    width: 90%;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
}

.aw-rest__title[b-ozm9irukdr] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--ha-text, var(--ha-text));
    margin-bottom: 1rem;
}

.aw-rest__next-preview[b-ozm9irukdr] {
    margin-top: 1.25rem;
    padding-top: 1rem;
    border-top: 1px solid var(--ha-border, var(--ha-border));
}

.aw-rest__next-label[b-ozm9irukdr] {
    font-size: 0.85rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

/* ── Exercise Card ───────────────────────────────────────────────── */
.aw-exercise[b-ozm9irukdr] {
    flex: 1;
    padding: 1.25rem 1rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.aw-exercise__header[b-ozm9irukdr] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.5rem;
}

.aw-exercise__name[b-ozm9irukdr] {
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--ha-text, var(--ha-text));
    margin: 0;
}

.aw-exercise__muscle[b-ozm9irukdr],
.aw-exercise__equipment[b-ozm9irukdr] {
    font-size: 0.75rem;
    font-weight: 500;
    padding: 0.15rem 0.5rem;
    border-radius: 1rem;
    background: var(--ha-surface-subtle, var(--ha-surface-subtle));
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.aw-exercise__notes[b-ozm9irukdr] {
    font-size: 0.85rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    font-style: italic;
    margin: 0;
}

/* ── Progression Summary ────────────────────────────────────────── */
.aw-progression[b-ozm9irukdr] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem 0.75rem;
    background: var(--ha-surface-subtle, var(--ha-surface-subtle));
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 0.5rem;
    flex-wrap: wrap;
}

.aw-progression__item[b-ozm9irukdr] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
}

.aw-progression__label[b-ozm9irukdr] {
    font-size: 0.65rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.aw-progression__value[b-ozm9irukdr] {
    font-size: 0.9rem;
    font-weight: 700;
    color: var(--ha-text, var(--ha-text));
}

.aw-trend[b-ozm9irukdr] {
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.15rem 0.5rem;
    border-radius: 1rem;
    white-space: nowrap;
}

.aw-trend--up[b-ozm9irukdr] {
    color: var(--ha-success-emphasis, var(--ha-success-emphasis));
    background: var(--ha-success-bg, var(--ha-success-bg));
}

.aw-trend--hold[b-ozm9irukdr] {
    color: var(--ha-accent-emphasis, var(--ha-accent-emphasis));
    background: var(--ha-accent-bg, var(--ha-accent-soft));
}

.aw-trend--down[b-ozm9irukdr] {
    color: var(--ha-text-muted, var(--ha-text-muted));
    background: var(--ha-surface-subtle, var(--ha-surface-subtle));
}

/* ── Previous Session Hint (set rows) ───────────────────────────── */
.aw-sets__prev[b-ozm9irukdr] {
    font-size: 0.7rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    font-style: italic;
    margin-top: 0.15rem;
}

/* ── Set Table ───────────────────────────────────────────────────── */
.aw-sets[b-ozm9irukdr] {
    display: flex;
    flex-direction: column;
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 0.75rem;
    overflow: hidden;
}

.aw-sets__header[b-ozm9irukdr] {
    display: grid;
    grid-template-columns: 3rem 1fr 5rem 4rem 3rem;
    padding: 0.5rem 0.75rem;
    background: var(--ha-surface-hover, var(--ha-surface-subtle));
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--ha-text-muted, var(--ha-text-muted));
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.aw-sets__row[b-ozm9irukdr] {
    display: grid;
    grid-template-columns: 3rem 1fr 5rem 4rem 3rem;
    align-items: center;
    padding: 0.5rem 0.75rem;
    border-top: 1px solid var(--ha-border, var(--ha-border));
    transition: background 0.15s;
}

.aw-sets__row--active[b-ozm9irukdr] {
    background: var(--ha-accent-soft, var(--ha-accent-soft));
    border-left: 3px solid var(--ha-accent, var(--ha-accent-emphasis));
}

.aw-sets__row--done[b-ozm9irukdr] {
    background: var(--ha-success-bg, var(--ha-success-bg));
    opacity: 0.8;
}

.aw-sets__col-set[b-ozm9irukdr] {
    font-weight: 600;
    text-align: center;
}

.aw-sets__col-target[b-ozm9irukdr] {
    font-size: 0.85rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

/* ── Inline inputs ───────────────────────────────────────────────── */
.aw-input[b-ozm9irukdr] {
    width: 100%;
    padding: 0.4rem 0.3rem;
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 0.375rem;
    font-size: 0.95rem;
    font-weight: 600;
    text-align: center;
    background: var(--ha-panel, var(--ha-panel));
    color: var(--ha-text, var(--ha-text));
    font-variant-numeric: tabular-nums;
    -moz-appearance: textfield;
    min-height: 44px;
}

.aw-input:focus[b-ozm9irukdr] {
    outline: 2px solid var(--ha-accent, var(--ha-accent-emphasis));
    outline-offset: -1px;
    border-color: var(--ha-accent, var(--ha-accent-emphasis));
}

.aw-input[b-ozm9irukdr]::-webkit-inner-spin-button,
.aw-input[b-ozm9irukdr]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* ── Complete set button ─────────────────────────────────────────── */
.aw-complete-btn[b-ozm9irukdr] {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 2px solid var(--ha-success, var(--ha-success));
    background: transparent;
    color: var(--ha-success, var(--ha-success));
    font-size: 1.2rem;
    font-weight: 700;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s, color 0.15s;
}

.aw-complete-btn:hover[b-ozm9irukdr],
.aw-complete-btn:focus-visible[b-ozm9irukdr] {
    background: var(--ha-success, var(--ha-success));
    color: var(--ha-panel);
}

/* ── Notes toggle ────────────────────────────────────────────────── */
.aw-notes-toggle[b-ozm9irukdr] {
    margin-top: 0.5rem;
}

.aw-notes-toggle > summary[b-ozm9irukdr] {
    cursor: pointer;
    font-size: 0.85rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    padding: 0.5rem 0;
}

/* ── Exercise Navigation ─────────────────────────────────────────── */
.aw-nav[b-ozm9irukdr] {
    display: flex;
    gap: 0.75rem;
    padding: 1rem;
    border-top: 1px solid var(--ha-border, var(--ha-border));
    background: var(--ha-panel, var(--ha-panel));
    position: sticky;
    bottom: 0;
    z-index: 5;
}

.aw-nav > *[b-ozm9irukdr] {
    flex: 1;
}

/* ── Next Exercise Preview ───────────────────────────────────────── */
.aw-next-preview[b-ozm9irukdr] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: var(--ha-surface-subtle, var(--ha-surface-subtle));
    border-top: 1px solid var(--ha-border, var(--ha-border));
    font-size: 0.85rem;
}

.aw-next-preview__label[b-ozm9irukdr] {
    font-weight: 600;
    color: var(--ha-text-muted, var(--ha-text-muted));
    white-space: nowrap;
}

.aw-next-preview__name[b-ozm9irukdr] {
    font-weight: 700;
    color: var(--ha-text, var(--ha-text));
}

.aw-next-preview__detail[b-ozm9irukdr] {
    color: var(--ha-text-muted, var(--ha-text-muted));
}

/* ── Session Summary ─────────────────────────────────────────────── */
.aw-summary[b-ozm9irukdr] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 80vh;
    padding: 2rem 1rem;
    gap: 2rem;
    text-align: center;
}

.aw-summary__header[b-ozm9irukdr] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
}

.aw-summary__icon[b-ozm9irukdr] {
    font-size: 3rem;
}

.aw-summary__header h1[b-ozm9irukdr] {
    font-size: 1.75rem;
    font-weight: 800;
    color: var(--ha-text, var(--ha-text));
    margin: 0;
}

.aw-summary__date[b-ozm9irukdr] {
    font-size: 0.9rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.aw-summary__stats[b-ozm9irukdr] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    width: 100%;
    max-width: 360px;
}

.aw-summary__stat[b-ozm9irukdr] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 1rem;
    background: var(--ha-surface-subtle, var(--ha-surface-subtle));
    border-radius: 0.75rem;
}

.aw-summary__stat-value[b-ozm9irukdr] {
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--ha-accent, var(--ha-accent-emphasis));
    font-variant-numeric: tabular-nums;
}

.aw-summary__stat-label[b-ozm9irukdr] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--ha-text-muted, var(--ha-text-muted));
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.aw-summary__prs[b-ozm9irukdr] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
}

.aw-summary__prs h3[b-ozm9irukdr] {
    margin: 0;
    font-size: 1.1rem;
    color: var(--ha-gold, var(--ha-warning));
}

.aw-summary__actions[b-ozm9irukdr] {
    display: flex;
    gap: 0.75rem;
}

/* ── Exit Confirmation Modal ─────────────────────────────────────── */
.aw-modal-overlay[b-ozm9irukdr] {
    position: fixed;
    inset: 0;
    z-index: 200;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.5);
}

.aw-modal[b-ozm9irukdr] {
    background: var(--ha-panel, var(--ha-panel));
    border-radius: 1rem;
    padding: 1.5rem;
    max-width: 360px;
    width: 90%;
    text-align: center;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
}

.aw-modal h3[b-ozm9irukdr] {
    margin: 0 0 0.5rem;
    font-size: 1.15rem;
}

.aw-modal p[b-ozm9irukdr] {
    font-size: 0.9rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    margin: 0 0 1.25rem;
}

.aw-modal__actions[b-ozm9irukdr] {
    display: flex;
    gap: 0.75rem;
    justify-content: center;
}

/* ── Responsive: larger screens ──────────────────────────────────── */
@media (min-width: 768px) {
    .aw-container[b-ozm9irukdr] {
        max-width: 600px;
        margin: 0 auto;
    }

    .aw-sets__header[b-ozm9irukdr],
    .aw-sets__row[b-ozm9irukdr] {
        grid-template-columns: 3.5rem 1fr 6rem 5rem 3.5rem;
    }

    .aw-exercise__name[b-ozm9irukdr] {
        font-size: 1.75rem;
    }

    .aw-summary__stats[b-ozm9irukdr] {
        grid-template-columns: repeat(4, 1fr);
        max-width: 520px;
    }
}

/* ── Exercise Card Slide Transitions ─────────────────────────────── */
.aw-exercise--slide-left[b-ozm9irukdr] {
    animation: aw-slide-in-left-b-ozm9irukdr var(--ha-transition-medium, 0.25s ease) forwards;
}

.aw-exercise--slide-right[b-ozm9irukdr] {
    animation: aw-slide-in-right-b-ozm9irukdr var(--ha-transition-medium, 0.25s ease) forwards;
}

@keyframes aw-slide-in-left-b-ozm9irukdr {
    0% {
        opacity: 0;
        transform: translateX(40px);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes aw-slide-in-right-b-ozm9irukdr {
    0% {
        opacity: 0;
        transform: translateX(-40px);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}
/* /Pages/Admin.razor.rz.scp.css */
.admin-page__hero[b-4g9li1pgt2] {
    align-items: center;
}

.admin-page__hero-copy[b-4g9li1pgt2] {
    display: grid;
    gap: 0.5rem;
}

.admin-page__actions[b-4g9li1pgt2] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.admin-overview[b-4g9li1pgt2] {
    display: grid;
    gap: 1.25rem;
    background: linear-gradient(135deg, rgba(21, 121, 90, 0.12) 0%, rgba(255, 255, 255, 0.97) 56%, rgba(218, 242, 229, 0.9) 100%);
}

.admin-overview__header[b-4g9li1pgt2] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    flex-wrap: wrap;
}

.admin-overview__copy[b-4g9li1pgt2] {
    display: grid;
    gap: 0.45rem;
    max-width: 46rem;
}

.admin-overview__copy h2[b-4g9li1pgt2] {
    margin: 0;
}

.admin-overview__metrics[b-4g9li1pgt2] {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.admin-overview__metric-card[b-4g9li1pgt2] {
    background: rgba(255, 255, 255, 0.9);
}

.admin-overview__metric-heading[b-4g9li1pgt2] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    margin-bottom: 0.5rem;
}

.admin-overview__metric-heading .metric-card__label[b-4g9li1pgt2] {
    margin-bottom: 0;
}

.admin-overview__metric-detail[b-4g9li1pgt2] {
    display: block;
    margin-top: 0.45rem;
    color: var(--ha-text-muted);
    font-size: 0.85rem;
    line-height: 1.45;
}

.admin-overview__signals[b-4g9li1pgt2] {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.admin-signal-card[b-4g9li1pgt2] {
    display: grid;
    gap: 0.85rem;
    padding: 1rem;
    border-radius: var(--ha-radius-md);
    border: 1px solid var(--ha-border);
}

.admin-signal-card--warning[b-4g9li1pgt2] {
    background: linear-gradient(180deg, var(--ha-panel) 0%, rgba(255, 248, 225, 0.92) 100%);
    border-color: color-mix(in srgb, var(--ha-warning-emphasis) 38%, var(--ha-border));
}

.admin-signal-card--success[b-4g9li1pgt2] {
    background: linear-gradient(180deg, var(--ha-panel) 0%, rgba(220, 252, 231, 0.78) 100%);
    border-color: color-mix(in srgb, var(--ha-success-emphasis) 34%, var(--ha-border));
}

.admin-signal-card__heading[b-4g9li1pgt2] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
}

.admin-signal-card__heading h3[b-4g9li1pgt2] {
    margin: 0;
}

.admin-signal-card__icon[b-4g9li1pgt2] {
    flex-shrink: 0;
    margin-top: 0.1rem;
}

.admin-signal-card--warning .admin-signal-card__icon[b-4g9li1pgt2] {
    color: var(--ha-warning-emphasis);
}

.admin-signal-card--success .admin-signal-card__icon[b-4g9li1pgt2] {
    color: var(--ha-success-emphasis);
}

.admin-signal-list[b-4g9li1pgt2] {
    margin: 0;
    padding-left: 1.1rem;
    display: grid;
    gap: 0.55rem;
    color: var(--ha-text);
}

.admin-detail-card[b-4g9li1pgt2] {
    display: grid;
    gap: 1rem;
}

.admin-detail-card--warning[b-4g9li1pgt2] {
    border-color: color-mix(in srgb, var(--ha-warning-emphasis) 30%, var(--ha-border));
}

.admin-detail-card__heading[b-4g9li1pgt2] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    flex-wrap: wrap;
}

.admin-detail-card__heading p[b-4g9li1pgt2] {
    margin: 0.3rem 0 0;
}

.admin-page__grid[b-4g9li1pgt2] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
    gap: 1rem;
}

.admin-page__detail-item[b-4g9li1pgt2] {
    display: grid;
    gap: 0.35rem;
    padding: 1rem;
    border: 1px solid var(--ha-border);
    border-radius: 0.85rem;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, var(--ha-panel) 100%);
}

.admin-page__label[b-4g9li1pgt2] {
    color: var(--ha-text-muted);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.admin-page__value[b-4g9li1pgt2] {
    color: var(--ha-text);
    font-size: 0.98rem;
    line-height: 1.45;
    word-break: break-word;
}

.admin-service-banner[b-4g9li1pgt2] {
    display: grid;
    gap: 0.35rem;
    padding: 1rem;
    border-radius: 0.85rem;
    border: 1px solid var(--ha-border);
}

.admin-service-banner--success[b-4g9li1pgt2] {
    background: linear-gradient(180deg, var(--ha-panel) 0%, rgba(220, 252, 231, 0.72) 100%);
    border-color: color-mix(in srgb, var(--ha-success-emphasis) 30%, var(--ha-border));
}

.admin-service-banner--warning[b-4g9li1pgt2] {
    background: linear-gradient(180deg, var(--ha-panel) 0%, rgba(255, 248, 225, 0.92) 100%);
    border-color: color-mix(in srgb, var(--ha-warning-emphasis) 38%, var(--ha-border));
}

.admin-agent-group[b-4g9li1pgt2] {
    display: grid;
    gap: 0.85rem;
}

.admin-agent-group__header[b-4g9li1pgt2] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.admin-agent-group__header h3[b-4g9li1pgt2] {
    margin: 0;
}

[b-4g9li1pgt2] .admin-agents-list {
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
}

[b-4g9li1pgt2] .admin-agent-row {
    display: flex;
    gap: 0.75rem;
    align-items: flex-start;
    padding: 0.95rem;
    border-radius: 0.85rem;
    border: 1px solid var(--ha-border);
}

[b-4g9li1pgt2] .admin-agent-row--warning {
    background: linear-gradient(180deg, var(--ha-panel) 0%, rgba(255, 248, 225, 0.92) 100%);
    border-color: color-mix(in srgb, var(--ha-warning-emphasis) 38%, var(--ha-border));
}

[b-4g9li1pgt2] .admin-agent-row--success {
    background: linear-gradient(180deg, var(--ha-panel) 0%, rgba(220, 252, 231, 0.72) 100%);
    border-color: color-mix(in srgb, var(--ha-success-emphasis) 30%, var(--ha-border));
}

[b-4g9li1pgt2] .admin-agent-row__info {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    min-width: 0;
}

[b-4g9li1pgt2] .admin-agent-row__status {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

[b-4g9li1pgt2] .admin-agent-intents {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem;
    margin-top: 0.25rem;
}

[b-4g9li1pgt2] .admin-agent-error {
    font-size: 0.82rem;
    color: var(--ha-text-muted);
    line-height: 1.45;
    word-break: break-word;
}

@media (max-width: 720px) {
    .admin-page__actions[b-4g9li1pgt2],
    .admin-detail-card__heading[b-4g9li1pgt2],
    .admin-agent-group__header[b-4g9li1pgt2] {
        flex-direction: column;
        align-items: stretch;
    }
}

@media (prefers-reduced-motion: reduce) {
    .admin-overview[b-4g9li1pgt2],
    .admin-signal-card[b-4g9li1pgt2],
    .admin-page__detail-item[b-4g9li1pgt2],
    .admin-agent-row[b-4g9li1pgt2] {
        scroll-behavior: auto;
    }
}
/* /Pages/AdminFeedback.razor.rz.scp.css */
.admin-feedback__summary[b-b3rfw9mcz9] {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.admin-feedback__metric-card[b-b3rfw9mcz9] {
    display: grid;
    gap: 0.5rem;
    background: linear-gradient(180deg, var(--ha-panel) 0%, rgba(227, 247, 237, 0.62) 100%);
}

.admin-feedback__metric-heading[b-b3rfw9mcz9] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
}

.admin-feedback__metric-heading .metric-card__label[b-b3rfw9mcz9] {
    margin-bottom: 0;
}

.admin-feedback__metric-detail[b-b3rfw9mcz9] {
    color: var(--ha-text-muted);
    font-size: 0.85rem;
    line-height: 1.45;
}

.admin-feedback__spotlight[b-b3rfw9mcz9] {
    display: grid;
    gap: 0.85rem;
}

.admin-feedback__spotlight--warning[b-b3rfw9mcz9] {
    background: linear-gradient(180deg, var(--ha-panel) 0%, rgba(255, 248, 225, 0.92) 100%);
    border-color: color-mix(in srgb, var(--ha-warning-emphasis) 38%, var(--ha-border));
}

.admin-feedback__spotlight--success[b-b3rfw9mcz9] {
    background: linear-gradient(180deg, var(--ha-panel) 0%, rgba(220, 252, 231, 0.72) 100%);
    border-color: color-mix(in srgb, var(--ha-success-emphasis) 30%, var(--ha-border));
}

.admin-feedback__spotlight-heading[b-b3rfw9mcz9] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    flex-wrap: wrap;
}

.admin-feedback__spotlight-heading p[b-b3rfw9mcz9] {
    margin: 0.3rem 0 0;
}

.admin-feedback__spotlight-list[b-b3rfw9mcz9] {
    margin: 0;
    padding-left: 1.1rem;
    display: grid;
    gap: 0.5rem;
}

.feedback-filters[b-b3rfw9mcz9] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.feedback-filter-label[b-b3rfw9mcz9] {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--ha-text-muted);
    margin-right: 0.25rem;
}

.filter-btn[b-b3rfw9mcz9] {
    font-size: 0.8rem;
    padding: 0.3rem 0.7rem;
    border-radius: 1rem;
    border: 1px solid var(--ha-border);
    background: var(--ha-panel);
    color: var(--ha-text);
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s;
    min-height: 44px;
}

.filter-btn:hover[b-b3rfw9mcz9] {
    background: var(--ha-bg);
    border-color: var(--ha-accent-emphasis);
}

.filter-btn--active[b-b3rfw9mcz9] {
    background: var(--ha-accent-soft);
    border-color: var(--ha-accent-emphasis);
    color: var(--ha-accent-emphasis);
    font-weight: 600;
}

.feedback-list[b-b3rfw9mcz9] {
    display: grid;
    gap: 0.75rem;
}

.feedback-item__header[b-b3rfw9mcz9] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.feedback-item__header > div[b-b3rfw9mcz9] {
    display: flex;
    gap: 0.4rem;
}

.feedback-item__description[b-b3rfw9mcz9] {
    margin: 0.5rem 0;
    font-size: 0.95rem;
    line-height: 1.5;
}

.feedback-item__meta[b-b3rfw9mcz9] {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 0.5rem;
}

@media (max-width: 720px) {
    .admin-feedback__spotlight-heading[b-b3rfw9mcz9] {
        flex-direction: column;
        align-items: stretch;
    }
}

@media (prefers-reduced-motion: reduce) {
    .filter-btn[b-b3rfw9mcz9] {
        transition: none;
    }
}
/* /Pages/AdminUserDetail.razor.rz.scp.css */
/* ---- Admin User Detail page ---- */

.page-kicker__back[b-t7utusz454] {
    color: var(--accent-foreground-rest);
    text-decoration: none;
    font-size: 0.875rem;
}

.page-kicker__back:hover[b-t7utusz454] {
    text-decoration: underline;
}

.user-detail__heading-badges[b-t7utusz454] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    align-items: center;
}

.pill--accent[b-t7utusz454] {
    background-color: var(--ha-accent-bg);
    color: var(--ha-accent);
    border: 1px solid var(--ha-accent);
}

/* Two-column detail grid */
.user-detail__grid[b-t7utusz454] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 1rem 1.5rem;
    margin-top: 1rem;
}

.user-detail__item[b-t7utusz454] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.user-detail__label[b-t7utusz454] {
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--neutral-foreground-hint);
}

.user-detail__value[b-t7utusz454] {
    font-size: 0.9rem;
    color: var(--neutral-foreground-rest);
}

.user-detail__id[b-t7utusz454] {
    font-family: monospace;
    font-size: 0.78rem;
    word-break: break-all;
    color: var(--neutral-foreground-hint);
}

/* Stats grid */
.user-detail__stats-grid[b-t7utusz454] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
    gap: 1rem;
    margin-top: 1rem;
}

.user-detail__stat-card[b-t7utusz454] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 1rem 0.75rem;
    background-color: var(--neutral-fill-rest);
    border-radius: 6px;
    text-align: center;
}

.user-detail__stat-value[b-t7utusz454] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--neutral-foreground-rest);
    line-height: 1;
}

.user-detail__stat-label[b-t7utusz454] {
    font-size: 0.75rem;
    color: var(--neutral-foreground-hint);
}

/* Tag sections (equipment, training days, allergens) */
.user-detail__tag-section[b-t7utusz454] {
    margin-top: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.user-detail__tags[b-t7utusz454] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

/* Pill variants shared with AdminUsers */
.pill--sm[b-t7utusz454] {
    font-size: 0.7rem;
    padding: 2px 8px;
}

.pill--neutral[b-t7utusz454] {
    background-color: var(--neutral-fill-rest);
    color: var(--neutral-foreground-rest);
}
/* /Pages/AdminUsers.razor.rz.scp.css */
/* ---- Admin Users list page ---- */

.admin-users__summary[b-00smat0ixj] {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.admin-users__metric-card[b-00smat0ixj] {
    display: grid;
    gap: 0.5rem;
    background: linear-gradient(180deg, var(--ha-panel) 0%, rgba(227, 247, 237, 0.62) 100%);
}

.admin-users__metric-heading[b-00smat0ixj] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
}

.admin-users__metric-heading .metric-card__label[b-00smat0ixj] {
    margin-bottom: 0;
}

.admin-users__metric-detail[b-00smat0ixj] {
    color: var(--ha-text-muted);
    font-size: 0.85rem;
    line-height: 1.45;
}

.admin-users__spotlight[b-00smat0ixj] {
    display: grid;
    gap: 0.85rem;
}

.admin-users__spotlight--warning[b-00smat0ixj] {
    background: linear-gradient(180deg, var(--ha-panel) 0%, rgba(255, 248, 225, 0.92) 100%);
    border-color: color-mix(in srgb, var(--ha-warning-emphasis) 38%, var(--ha-border));
}

.admin-users__spotlight--success[b-00smat0ixj] {
    background: linear-gradient(180deg, var(--ha-panel) 0%, rgba(220, 252, 231, 0.72) 100%);
    border-color: color-mix(in srgb, var(--ha-success-emphasis) 30%, var(--ha-border));
}

.admin-users__spotlight-heading[b-00smat0ixj] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    flex-wrap: wrap;
}

.admin-users__spotlight-heading p[b-00smat0ixj] {
    margin: 0.3rem 0 0;
}

.admin-users__spotlight-list[b-00smat0ixj] {
    margin: 0;
    padding-left: 1.1rem;
    display: grid;
    gap: 0.5rem;
}

.users-table-wrapper[b-00smat0ixj] {
    overflow-x: auto;
    margin-top: 1rem;
}

.users-table[b-00smat0ixj] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
}

.users-table th[b-00smat0ixj] {
    text-align: left;
    padding: 0.5rem 0.75rem;
    color: var(--neutral-foreground-hint);
    font-weight: 600;
    border-bottom: 1px solid var(--neutral-stroke-rest);
    white-space: nowrap;
}

.users-table td[b-00smat0ixj] {
    padding: 0.75rem 0.75rem;
    border-bottom: 1px solid var(--neutral-stroke-rest);
    vertical-align: middle;
}

.users-table tbody tr:last-child td[b-00smat0ixj] {
    border-bottom: none;
}

.users-table tbody tr:hover td[b-00smat0ixj] {
    background-color: var(--neutral-fill-stealth-hover);
}

.users-table__email-link[b-00smat0ixj] {
    display: inline-flex;
    align-items: center;
    background: none;
    border: none;
    padding: 0;
    color: var(--accent-foreground-rest);
    font-size: inherit;
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 2px;
    min-height: 44px;
}

.users-table__email-link:hover[b-00smat0ixj] {
    color: var(--accent-foreground-hover);
}

.users-table__date[b-00smat0ixj] {
    color: var(--neutral-foreground-hint);
    white-space: nowrap;
}

.users-table__actions[b-00smat0ixj] {
    display: flex;
    gap: 0.5rem;
    justify-content: flex-end;
    white-space: nowrap;
}

.users-table__actions[b-00smat0ixj]  fluent-button,
.users-table__actions button[b-00smat0ixj] {
    min-height: 44px;
}

.users-table__delete-btn[b-00smat0ixj] {
    --accent-foreground-rest: var(--error-foreground);
    color: var(--error);
}

.users-table__role[b-00smat0ixj] {
    white-space: nowrap;
}

.role-select[b-00smat0ixj] {
    appearance: none;
    -webkit-appearance: none;
    border: 1px solid var(--neutral-stroke-rest);
    border-radius: 12px;
    padding: 3px 24px 3px 10px;
    font-size: 0.75rem;
    font-weight: 600;
    cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%236c757d' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 8px center;
    background-color: var(--neutral-fill-rest);
    color: var(--neutral-foreground-rest);
    transition: border-color 0.15s;
    min-height: 44px;
}

.role-select:hover:not(:disabled)[b-00smat0ixj] {
    border-color: var(--neutral-stroke-hover);
}

.role-select:focus[b-00smat0ixj] {
    outline: 2px solid var(--accent-fill-rest);
    outline-offset: 1px;
}

.role-select:disabled[b-00smat0ixj] {
    opacity: 0.6;
    cursor: not-allowed;
}

.role-select--admin[b-00smat0ixj] {
    background-color: var(--ha-accent-bg);
    border-color: var(--ha-accent);
    color: var(--ha-accent);
}

.role-select--user[b-00smat0ixj] {
    background-color: var(--neutral-fill-rest);
    border-color: var(--neutral-stroke-rest);
    color: var(--neutral-foreground-rest);
}


.pill--sm[b-00smat0ixj] {
    font-size: 0.7rem;
    padding: 2px 8px;
}

.pill--neutral[b-00smat0ixj] {
    background-color: var(--neutral-fill-rest);
    color: var(--neutral-foreground-rest);
}

/* ---- Delete confirmation modal ---- */

.modal-overlay[b-00smat0ixj] {
    position: fixed;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
}

.modal-card[b-00smat0ixj] {
    background-color: var(--neutral-layer-1);
    border: 1px solid var(--neutral-stroke-rest);
    border-radius: 8px;
    padding: 1.75rem 2rem;
    max-width: 480px;
    width: 90%;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.18);
}

.modal-card h3[b-00smat0ixj] {
    margin: 0 0 0.75rem;
    font-size: 1.1rem;
}

.modal-card p[b-00smat0ixj] {
    margin: 0 0 1.25rem;
    color: var(--neutral-foreground-rest);
    line-height: 1.5;
}

.modal-card__actions[b-00smat0ixj] {
    display: flex;
    gap: 0.75rem;
    justify-content: flex-end;
}

.modal-card__confirm-delete[b-00smat0ixj] {
    --accent-fill-rest: var(--error);
    --accent-fill-hover: var(--error-hover);
    --accent-fill-active: var(--error-active);
    --foreground-on-accent-rest: white;
}

@media (max-width: 720px) {
    .admin-users__spotlight-heading[b-00smat0ixj] {
        flex-direction: column;
        align-items: stretch;
    }
}

@media (prefers-reduced-motion: reduce) {
    .role-select[b-00smat0ixj] {
        transition: none;
    }
}
/* /Pages/AskMyCoaches.razor.rz.scp.css */
/* ── Layout ──────────────────────────────────────────────────── */
.coach-chat-layout[b-ow31mzwk84] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    max-width: 780px;
    margin: 0 auto;
}

/* ── Chat window ──────────────────────────────────────────────── */
.coach-chat-window[b-ow31mzwk84] {
    background: var(--ha-panel-alt, var(--ha-surface-subtle));
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 0.75rem;
    min-height: 340px;
    max-height: 520px;
    overflow-y: auto;
    padding: 1.25rem 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    scroll-behavior: smooth;
}

/* ── Empty state ──────────────────────────────────────────────── */
.coach-empty-state[b-ow31mzwk84] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    padding: 2rem 1rem;
    flex: 1;
    text-align: center;
}

.coach-avatar-row[b-ow31mzwk84] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    justify-content: center;
}

.coach-empty-state__text[b-ow31mzwk84] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
    margin: 0;
}

.coach-empty-state__sub[b-ow31mzwk84] {
    font-size: 0.82rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    margin: 0;
}

/* ── Chat rows ────────────────────────────────────────────────── */
.chat-row[b-ow31mzwk84] {
    display: flex;
    gap: 0.5rem;
    max-width: 88%;
}

.chat-row--user[b-ow31mzwk84] {
    align-self: flex-end;
    flex-direction: row-reverse;
}

.chat-row--coach[b-ow31mzwk84] {
    align-self: flex-start;
}

/* ── Coach avatar circle ──────────────────────────────────────── */
.coach-avatar[b-ow31mzwk84] {
    width: 2.1rem;
    height: 2.1rem;
    min-width: 2.1rem;
    border-radius: 50%;
    background: color-mix(in srgb, var(--coach-color) 15%, white);
    border: 1.5px solid color-mix(in srgb, var(--coach-color) 40%, white);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    line-height: 1;
    cursor: default;
    user-select: none;
}

.coach-avatar--lg[b-ow31mzwk84] {
    width: 2.8rem;
    height: 2.8rem;
    min-width: 2.8rem;
    font-size: 1.35rem;
}

/* ── Chat bubble wrap (name + bubble + timestamp) ─────────────── */
.chat-bubble-wrap[b-ow31mzwk84] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    max-width: 100%;
}

.chat-coach-name[b-ow31mzwk84] {
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.01em;
}

.chat-timestamp[b-ow31mzwk84] {
    font-size: 0.7rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    padding-left: 0.25rem;
}

/* ── Bubbles ──────────────────────────────────────────────────── */
.chat-bubble[b-ow31mzwk84] {
    padding: 0.6rem 0.875rem;
    border-radius: 1rem;
    font-size: 0.9rem;
    line-height: 1.55;
    word-break: break-word;
}

.chat-bubble--user[b-ow31mzwk84] {
    background: var(--ha-accent, var(--ha-accent-emphasis));
    color: var(--ha-panel);
    border-bottom-right-radius: 0.25rem;
}

.chat-bubble--coach[b-ow31mzwk84] {
    background: var(--ha-panel, var(--ha-panel));
    border: 1px solid var(--ha-border, var(--ha-border));
    color: var(--ha-text, var(--ha-text));
    border-bottom-left-radius: 0.25rem;
}

/* ── Bubble content ───────────────────────────────────────────── */
.chat-bubble__para[b-ow31mzwk84] {
    margin: 0 0 0.35rem;
}

.chat-bubble__para:last-child[b-ow31mzwk84] {
    margin-bottom: 0;
}

.chat-bubble__list[b-ow31mzwk84] {
    margin: 0.25rem 0 0.25rem 1rem;
    padding: 0;
}

.chat-bubble__list li[b-ow31mzwk84] {
    margin-bottom: 0.2rem;
}

/* ── Typing indicator ─────────────────────────────────────────── */
.chat-bubble--typing[b-ow31mzwk84] {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.6rem 0.875rem;
    min-width: 3.5rem;
}

.typing-dot[b-ow31mzwk84] {
    width: 0.45rem;
    height: 0.45rem;
    border-radius: 50%;
    background: var(--ha-text-muted, var(--ha-text-muted));
    animation: typing-pulse-b-ow31mzwk84 1.2s infinite ease-in-out;
}

.typing-dot:nth-child(2)[b-ow31mzwk84] { animation-delay: 0.2s; }
.typing-dot:nth-child(3)[b-ow31mzwk84] { animation-delay: 0.4s; }

@keyframes typing-pulse-b-ow31mzwk84 {
    0%, 60%, 100% { transform: translateY(0); opacity: 0.5; }
    30%            { transform: translateY(-4px); opacity: 1; }
}

/* ── Input bar ────────────────────────────────────────────────── */
.coach-input-bar[b-ow31mzwk84] {
    background: var(--ha-panel, var(--ha-panel));
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 0.75rem;
    padding: 0.75rem 1rem;
    width: 100%;
    box-sizing: border-box;
}

.coach-input-form[b-ow31mzwk84] {
    display: flex;
    gap: 0.75rem;
    align-items: flex-end;
    width: 100%;
}

.coach-input-form fluent-text-area[b-ow31mzwk84],
.coach-input-form [class*="fluent-text-area"][b-ow31mzwk84],
.coach-input-form > *:first-child[b-ow31mzwk84] {
    flex: 1;
    min-width: 0;
}

/* ── Coach roster (Meet Your Coaches) ────────────────────────── */
.coach-roster[b-ow31mzwk84] {
    max-width: 780px;
    margin: 1.5rem auto 0;
    text-align: center;
}

.coach-roster__heading[b-ow31mzwk84] {
    font-size: 1.3rem;
    font-weight: 700;
    color: var(--ha-text, var(--ha-text));
    margin: 0 0 0.25rem;
}

.coach-roster__sub[b-ow31mzwk84] {
    font-size: 0.875rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    margin: 0 0 1.25rem;
}

.coach-roster__cards[b-ow31mzwk84] {
    display: flex;
    gap: 0.875rem;
    flex-wrap: wrap;
    justify-content: center;
}

.coach-card[b-ow31mzwk84] {
    background: var(--ha-panel, var(--ha-panel));
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 0.75rem;
    padding: 1.25rem 1rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.4rem;
    flex: 1;
    min-width: 130px;
    max-width: 148px;
    text-align: center;
}

.coach-card__avatar[b-ow31mzwk84] {
    width: 3.25rem;
    height: 3.25rem;
    border-radius: 50%;
    background: color-mix(in srgb, var(--coach-color) 15%, white);
    border: 2px solid color-mix(in srgb, var(--coach-color) 35%, white);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    line-height: 1;
    margin-bottom: 0.35rem;
}

.coach-card__name[b-ow31mzwk84] {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--ha-text, var(--ha-text));
}

.coach-card__specialty[b-ow31mzwk84] {
    font-size: 0.68rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--ha-text-muted, var(--ha-text-muted));
    margin-bottom: 0.15rem;
}

.coach-card__desc[b-ow31mzwk84] {
    font-size: 0.78rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    line-height: 1.45;
    margin: 0;
}

@media (max-width: 480px) {
    .coach-input-form[b-ow31mzwk84] {
        flex-direction: column;
        gap: 0.75rem;
    }

    .coach-chat-window[b-ow31mzwk84] {
        min-height: 200px;
        max-height: 50vh;
    }

    .coach-card[b-ow31mzwk84] {
        min-width: unset;
    }

    .chat-coach-name[b-ow31mzwk84] {
        font-size: 0.85rem;
    }

    .chat-timestamp[b-ow31mzwk84] {
        font-size: 0.8rem;
    }
}

@media (max-width: 480px) {
    .coach-roster__cards[b-ow31mzwk84] {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0.75rem;
    }

    .coach-card[b-ow31mzwk84] {
        max-width: none;
    }
}
/* /Pages/BodyMeasurements.razor.rz.scp.css */
/* ── Body Measurements Page ────────────────────── */

.measurements-form__grid[b-9tb8brtfot] {
    display: grid;
    gap: 1rem 1.5rem;
    grid-template-columns: repeat(2, 1fr);
    align-items: end;
}

.measurements-form__grid[b-9tb8brtfot]  fluent-number-field,
.measurements-form__grid[b-9tb8brtfot]  fluent-date-picker {
    width: 100%;
}

.measurements-form__notes[b-9tb8brtfot] {
    margin-top: 0.75rem;
}

.measurements-form__notes[b-9tb8brtfot]  fluent-text-area {
    width: 100%;
}

.measurements-form__actions[b-9tb8brtfot] {
    margin-top: 0.75rem;
}

.measurements-form__unit-hint[b-9tb8brtfot] {
    margin-bottom: 0.5rem;
}

.delete-btn[b-9tb8brtfot] {
    min-width: auto;
    padding: 0.25rem;
}

/* ── Responsive ────────────────────────────────── */

@media (min-width: 769px) {
    .measurements-form__grid[b-9tb8brtfot] {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 480px) {
    .measurements-form__grid[b-9tb8brtfot] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/CardioLog.razor.rz.scp.css */
/* ── Cardio Log Page ───────────────────────────── */

.cardio-form__grid[b-od7d9ofdnp] {
    display: grid;
    gap: 1rem 1.5rem;
    grid-template-columns: repeat(2, 1fr);
    align-items: end;
}

.cardio-form__grid[b-od7d9ofdnp]  fluent-number-field,
.cardio-form__grid[b-od7d9ofdnp]  fluent-select,
.cardio-form__grid[b-od7d9ofdnp]  fluent-date-picker {
    width: 100%;
}

.cardio-form__notes[b-od7d9ofdnp] {
    margin-top: 0.75rem;
}

.cardio-form__notes[b-od7d9ofdnp]  fluent-text-area {
    width: 100%;
}

.cardio-form__actions[b-od7d9ofdnp] {
    margin-top: 0.75rem;
}

.cardio-form__card[b-od7d9ofdnp] {
    overflow: visible;
}

.activity-cell[b-od7d9ofdnp] {
    font-weight: 500;
}

.delete-btn[b-od7d9ofdnp] {
    min-width: auto;
    padding: 0.25rem;
}

/* ── Responsive ────────────────────────────────── */

@media (min-width: 769px) {
    .cardio-form__grid[b-od7d9ofdnp] {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 480px) {
    .cardio-form__grid[b-od7d9ofdnp] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/Challenges.razor.rz.scp.css */
.challenges__list[b-sxprrdfrv9] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.challenges__item[b-sxprrdfrv9] {
    padding: 1rem;
    border: 1px solid var(--ha-border);
    border-radius: 0.5rem;
    background: var(--ha-surface-subtle);
}

.challenges__item-header[b-sxprrdfrv9] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 0.5rem;
}

.challenges__item-header h3[b-sxprrdfrv9] {
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
    color: var(--ha-text);
}

/* Progress bar */
.challenges__progress[b-sxprrdfrv9] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-top: 0.5rem;
}

.challenges__progress-bar[b-sxprrdfrv9] {
    flex: 1;
    height: 8px;
    background: var(--ha-border);
    border-radius: 4px;
    overflow: hidden;
}

.challenges__progress-fill[b-sxprrdfrv9] {
    height: 100%;
    border-radius: 4px;
    transition: width 0.3s ease;
}

.challenges__progress-fill--active[b-sxprrdfrv9] {
    background: var(--ha-success);
}

.challenges__progress-fill--completed[b-sxprrdfrv9] {
    background: var(--ha-gold);
}

.challenges__progress-fill--failed[b-sxprrdfrv9] {
    background: var(--ha-danger);
}

.challenges__progress-text[b-sxprrdfrv9] {
    font-size: 0.82rem;
    color: var(--ha-text-muted);
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

.challenges__days-remaining[b-sxprrdfrv9] {
    display: block;
    margin-top: 0.35rem;
    font-size: 0.78rem;
}

/* Pill variants re-used from project conventions */
.pill--danger[b-sxprrdfrv9] {
    background: var(--ha-danger-bg);
    color: var(--ha-danger);
}

@media (max-width: 480px) {
    .challenges__item-header[b-sxprrdfrv9] {
        flex-direction: column;
    }
}
/* /Pages/Coach.razor.rz.scp.css */
.coach-review-card[b-02gwuadxs3],
.coach-adjustment-card[b-02gwuadxs3],
.coach-adjustment-empty[b-02gwuadxs3] {
    margin-top: 1rem;
}

.coach-review-header[b-02gwuadxs3] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: start;
}

.coach-review-date[b-02gwuadxs3],
.coach-adjustment-target[b-02gwuadxs3],
.coach-adjustment-review-title[b-02gwuadxs3] {
    margin: 0 0 0.35rem;
    font-size: 0.8rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.coach-summary[b-02gwuadxs3] {
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
}

.coach-adjustment-grid[b-02gwuadxs3] {
    display: grid;
    gap: 1rem;
    margin-top: 1rem;
}

.coach-adjustment-card[b-02gwuadxs3] {
    background: linear-gradient(180deg, var(--ha-panel, var(--ha-panel)) 0%, var(--ha-panel-alt, var(--ha-panel-alt)) 100%);
}

.coach-adjustment-header[b-02gwuadxs3] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: start;
}

.coach-status[b-02gwuadxs3] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 6.5rem;
    padding: 0.35rem 0.75rem;
    border-radius: 999px;
    font-size: 0.85rem;
    font-weight: 600;
}

.coach-status--pending[b-02gwuadxs3] {
    background: var(--ha-accent-soft, var(--ha-accent-soft));
    color: var(--ha-accent, var(--ha-accent));
}

.coach-status--applied[b-02gwuadxs3] {
    background: var(--ha-success-bg);
    color: var(--ha-success, var(--ha-success));
}

.coach-status--dismissed[b-02gwuadxs3] {
    background: var(--ha-panel-alt, var(--ha-panel-alt));
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.coach-adjustment-review[b-02gwuadxs3] {
    margin-top: 1rem;
    padding: 1rem;
    border-radius: 0.9rem;
    background: var(--ha-panel-alt, var(--ha-panel-alt));
}

.coach-plan-reference[b-02gwuadxs3] {
    margin-top: 0.9rem;
    padding: 0.9rem 1rem;
    border-radius: 0.8rem;
    background: var(--ha-panel, var(--ha-panel));
}

.coach-adjustment-actions[b-02gwuadxs3] {
    margin-top: 1rem;
    flex-wrap: wrap;
}

/* ── Weekly review inside coach ─────────────────────────────── */
.metric-grid[b-02gwuadxs3] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: 0.75rem;
    margin-top: 0.75rem;
}

.metric-card[b-02gwuadxs3] {
    padding: 0.85rem;
    border-radius: 0.75rem;
    background: linear-gradient(135deg, var(--ha-panel-alt, var(--ha-panel-alt)) 0%, var(--ha-panel, var(--ha-panel)) 100%);
    border: 1px solid var(--ha-border, var(--ha-border));
    text-align: center;
}

.metric-card__label[b-02gwuadxs3] {
    display: block;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--ha-text-muted, var(--ha-text-muted));
    margin-bottom: 0.3rem;
}

.metric-card__value[b-02gwuadxs3] {
    display: block;
    font-size: 1.3rem;
    font-weight: 700;
    color: var(--ha-text, var(--ha-text));
}

.weekly-insight-list[b-02gwuadxs3] {
    list-style: none;
    padding: 0;
    margin: 0.5rem 0 0;
}

.weekly-insight-list li[b-02gwuadxs3] {
    padding: 0.5rem 0;
    border-bottom: 1px solid var(--ha-border, var(--ha-border));
    font-size: 0.95rem;
    color: var(--ha-text, var(--ha-text));
}

.weekly-insight-list li:last-child[b-02gwuadxs3] {
    border-bottom: none;
}

.weekly-review__recommendations[b-02gwuadxs3] {
    display: grid;
    gap: 0.75rem;
    margin-top: 0.5rem;
}

.weekly-review__recommendation[b-02gwuadxs3] {
    padding: 0.75rem;
    border-radius: 0.75rem;
    background: var(--ha-panel-alt, var(--ha-panel-alt));
}

.weekly-review__notifications[b-02gwuadxs3] {
    display: grid;
    gap: 0.75rem;
    margin-top: 0.5rem;
}

.weekly-review__notification[b-02gwuadxs3] {
    padding: 0.75rem;
    border-radius: 0.75rem;
    background: var(--ha-panel-alt, var(--ha-panel-alt));
}

.weekly-review__notification-header[b-02gwuadxs3] {
    display: flex;
    justify-content: space-between;
    gap: 0.5rem;
    align-items: start;
}

/* ── Collapsible coach review sections ──────────────────────── */
.coach-review-collapsible[b-02gwuadxs3] {
    border: none;
}

.coach-review-summary[b-02gwuadxs3] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    list-style: none;
    padding: 0;
}

.coach-review-summary[b-02gwuadxs3]::-webkit-details-marker {
    display: none;
}

.coach-review-summary[b-02gwuadxs3]::marker {
    display: none;
    content: "";
}

.coach-review-toggle[b-02gwuadxs3] {
    font-size: 1.2rem;
    transition: transform 0.2s;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

details[open] .coach-review-toggle[b-02gwuadxs3] {
    transform: rotate(90deg);
}

.coach-review-content[b-02gwuadxs3] {
    padding-top: 0.75rem;
}

@media (max-width: 720px) {
    .coach-review-header[b-02gwuadxs3],
    .coach-adjustment-header[b-02gwuadxs3] {
        flex-direction: column;
    }

    .coach-status[b-02gwuadxs3] {
        min-width: 0;
    }
}

@media (max-width: 480px) {
    .weekly-review__notification-header[b-02gwuadxs3] {
        flex-direction: column;
        gap: 0.5rem;
        align-items: flex-start;
    }
}

/* ── Follow-up input ─────────────────────────────────────────── */
.coach-followup[b-02gwuadxs3] {
    margin-top: 1rem;
}

/* ── Momentum + Streak Shield row ──────────────────────────── */
.coach-momentum-card[b-02gwuadxs3] {
    border-left: 4px solid var(--ha-success, var(--ha-success));
}

.coach-momentum-row[b-02gwuadxs3] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.coach-momentum-badges[b-02gwuadxs3] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

@media (max-width: 480px) {
    .coach-momentum-row[b-02gwuadxs3] {
        flex-direction: column;
        align-items: center;
    }
}

/* ── Coach tools section (readiness + risk) ────────────────── */
.coach-tools-section[b-02gwuadxs3] {
    display: grid;
    gap: 1rem;
    margin-top: 1.5rem;
}

.coach-followup__input-row[b-02gwuadxs3] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

.coach-followup__input[b-02gwuadxs3] {
    flex: 1;
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 0.5rem;
    font-size: 0.88rem;
    font-family: inherit;
    color: var(--ha-text, var(--ha-text));
    background: var(--ha-panel, var(--ha-panel));
    transition: border-color 0.15s;
}

.coach-followup__input:focus[b-02gwuadxs3] {
    outline: none;
    border-color: var(--ha-accent, var(--ha-accent-emphasis));
}

.coach-followup__input[b-02gwuadxs3]::placeholder {
    color: var(--ha-text-muted, var(--ha-text-muted));
}

/* ── Coach Morgan persona ──────────────────────────────────── */
.coach-avatar[b-02gwuadxs3] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.6rem;
    height: 1.6rem;
    font-size: 1rem;
    margin-right: 0.35rem;
    vertical-align: middle;
}

.coach-morgan-response[b-02gwuadxs3] {
    border-left: 3px solid var(--ha-accent, var(--ha-accent-emphasis));
    padding-left: 1rem;
    margin-top: 0.75rem;
    background: linear-gradient(135deg, var(--ha-panel-alt, var(--ha-panel-alt)) 0%, transparent 100%);
    border-radius: 0 0.5rem 0.5rem 0;
    padding: 0.85rem 1rem;
}

/* ── Typing indicator ──────────────────────────────────────── */
.coach-typing-indicator[b-02gwuadxs3] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 0;
    font-size: 0.95rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    font-style: italic;
}

.coach-typing-text[b-02gwuadxs3] {
    display: inline-flex;
    align-items: baseline;
}

.typing-dots[b-02gwuadxs3] {
    display: inline-flex;
    gap: 0;
    margin-left: 0;
}

.typing-dots span[b-02gwuadxs3] {
    animation: typing-dots-b-02gwuadxs3 1.4s infinite;
    font-weight: 700;
    font-style: normal;
}

.typing-dots span:nth-child(2)[b-02gwuadxs3] {
    animation-delay: 0.2s;
}

.typing-dots span:nth-child(3)[b-02gwuadxs3] {
    animation-delay: 0.4s;
}

@keyframes typing-dots-b-02gwuadxs3 {
    0%, 20% { opacity: 0.2; }
    50% { opacity: 1; }
    100% { opacity: 0.2; }
}
/* /Pages/DailyPlan.razor.rz.scp.css */
/* ── Today's Workout section ──────────────────────────────────── */
.daily-workout-card[b-re0gc3d08o] {
    border-left: 4px solid var(--ha-accent, var(--ha-accent));
}

.daily-workout-session-name[b-re0gc3d08o] {
    font-weight: 600;
    font-size: 1.05rem;
    color: var(--ha-text, var(--ha-text));
    margin-bottom: 0.75rem;
}

.daily-workout-rest[b-re0gc3d08o] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem 0;
}

.daily-workout-rest__icon[b-re0gc3d08o] {
    font-size: 2rem;
}

.daily-workout-rest__title[b-re0gc3d08o] {
    font-weight: 600;
    font-size: 1.05rem;
    color: var(--ha-text, var(--ha-text));
    margin: 0 0 0.15rem;
}

.daily-workout-exercises[b-re0gc3d08o] {
    display: grid;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}

.daily-workout-exercise[b-re0gc3d08o] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    background: var(--ha-panel-alt, var(--ha-panel-alt));
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 0.4rem;
}

.daily-workout-exercise__name[b-re0gc3d08o] {
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--ha-text, var(--ha-text));
}

.daily-workout-exercise__detail[b-re0gc3d08o] {
    font-size: 0.85rem;
    font-weight: 500;
    color: var(--ha-accent, var(--ha-accent));
    font-variant-numeric: tabular-nums;
}

.daily-workout-exercise__notes[b-re0gc3d08o] {
    font-size: 0.8rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    flex-basis: 100%;
}

/* ── Training/rest day calorie banner ─────────────────────────── */
.daily-plan__calorie-banner[b-re0gc3d08o] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    border-radius: 12px;
    font-size: 0.92rem;
    font-weight: 600;
    color: var(--ha-text-muted, var(--ha-text-muted));
    background: var(--ha-panel-alt, var(--ha-panel-alt));
    border: 1px solid var(--ha-border, var(--ha-border));
}

.daily-plan__calorie-banner--training[b-re0gc3d08o] {
    color: var(--ha-success, var(--ha-success));
    background: var(--ha-success-bg);
    border-color: var(--ha-success-border);
}

.daily-plan__calorie-banner--rest[b-re0gc3d08o] {
    color: var(--ha-text-muted, var(--ha-text-muted));
    background: var(--ha-panel-alt, var(--ha-panel-alt));
    border-color: var(--ha-border, var(--ha-border));
}

/* ── Hydration section ───────────────────────────────────────── */
.hydration-summary[b-re0gc3d08o] {
    font-size: 0.92rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
    margin-bottom: 0.5rem;
}

.hydration-progress-bar[b-re0gc3d08o] {
    height: 12px;
    background: var(--ha-border, var(--ha-border));
    border-radius: 6px;
    overflow: hidden;
    margin-bottom: 0.75rem;
}

.hydration-progress-fill[b-re0gc3d08o] {
    height: 100%;
    background: linear-gradient(90deg, var(--ha-accent-muted), var(--ha-accent, var(--ha-accent)));
    border-radius: 6px;
    transition: width 0.3s ease;
    min-width: 2px;
}

.hydration-buttons[b-re0gc3d08o] {
    gap: 0.5rem;
}

@media (max-width: 480px) {
    .daily-workout-exercise[b-re0gc3d08o] {
        flex-direction: column;
        gap: 0.15rem;
    }

    .daily-plan__calorie-banner[b-re0gc3d08o] {
        flex-direction: column;
        text-align: center;
        padding: 0.6rem 0.75rem;
        font-size: 0.85rem;
    }

    .hydration-buttons[b-re0gc3d08o] {
        flex-direction: column;
    }

    .daily-workout-rest[b-re0gc3d08o] {
        flex-direction: column;
        text-align: center;
    }

    .daily-coaching-row[b-re0gc3d08o] {
        flex-direction: column;
        align-items: center;
    }
}

/* ── Coaching row (momentum + shield) ──────────────────────── */
.daily-coaching-card[b-re0gc3d08o] {
    border-left: 4px solid var(--ha-success, var(--ha-success));
}

.daily-coaching-row[b-re0gc3d08o] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.daily-coaching-badges[b-re0gc3d08o] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

/* ── Motivational message ──────────────────────────────────── */
.daily-motivation[b-re0gc3d08o] {
    margin: 0 0 0.5rem;
    padding: 0.5rem 0.75rem;
    border-radius: var(--ha-radius-sm, 8px);
    font-size: 0.92rem;
    font-weight: 600;
    text-align: center;
    animation: motivation-fade-in-b-re0gc3d08o 0.4s ease-out;
}

.daily-motivation--success[b-re0gc3d08o] {
    color: var(--ha-success-emphasis, var(--ha-success-emphasis));
    background: var(--ha-success-bg, var(--ha-success-bg));
}

.daily-motivation--accent[b-re0gc3d08o] {
    color: var(--ha-accent-emphasis, var(--ha-accent-emphasis));
    background: var(--ha-accent-bg, var(--ha-accent-bg));
}

.daily-motivation--muted[b-re0gc3d08o] {
    color: var(--ha-text-muted, var(--ha-text-muted));
    background: var(--ha-panel-alt, var(--ha-panel-alt));
}

@keyframes motivation-fade-in-b-re0gc3d08o {
    from { opacity: 0; transform: translateY(-4px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ── Fresh Start section ───────────────────────────────────── */
.daily-fresh-start[b-re0gc3d08o] {
    border-left: 4px solid var(--ha-accent, var(--ha-accent));
}

.daily-fresh-start__header[b-re0gc3d08o] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}

.daily-fresh-start__icon[b-re0gc3d08o] {
    font-size: 1.75rem;
    line-height: 1;
}

.daily-fresh-start__title[b-re0gc3d08o] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
}

.daily-fresh-start__subtitle[b-re0gc3d08o] {
    margin: 0;
    font-size: 0.88rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.daily-fresh-start__result[b-re0gc3d08o] {
    padding: 0.75rem 1rem;
    margin-bottom: 0.75rem;
    border-radius: 0.75rem;
    background: var(--ha-success-bg, var(--ha-success-bg));
    border: 1px solid var(--ha-success-border, var(--ha-success-border));
}

.daily-fresh-start__result-text[b-re0gc3d08o] {
    margin: 0;
    font-size: 0.92rem;
    color: var(--ha-success-emphasis, var(--ha-success-emphasis));
    line-height: 1.5;
}
/* /Pages/ExerciseDetail.razor.rz.scp.css */
.exercise-detail__info[b-jfnh3qt3be] {
    display: flex;
    gap: 1.5rem;
    align-items: flex-start;
}

.exercise-detail__image[b-jfnh3qt3be] {
    width: 200px;
    height: auto;
    border-radius: 0.5rem;
    object-fit: cover;
    flex-shrink: 0;
}

.exercise-detail__meta[b-jfnh3qt3be] {
    flex: 1;
    min-width: 0;
}

.exercise-detail__range-filter[b-jfnh3qt3be] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.exercise-detail__range-label[b-jfnh3qt3be] {
    font-size: 0.88rem;
    color: var(--ha-text-muted);
    font-weight: 500;
    margin-right: 0.25rem;
}

/* Re-use the same toggle style from StrengthHistory */
.view-toggle[b-jfnh3qt3be] {
    padding: 0.3rem 0.7rem;
    border: 1px solid var(--ha-border);
    border-radius: 0.4rem;
    background: var(--ha-surface-subtle);
    color: var(--ha-text-muted);
    font-size: 0.8rem;
    cursor: pointer;
    transition: background 0.12s, border-color 0.12s, color 0.12s;
    white-space: nowrap;
}

.view-toggle:hover[b-jfnh3qt3be],
.view-toggle--active[b-jfnh3qt3be] {
    background: var(--ha-accent-soft);
    border-color: var(--ha-accent-muted);
    color: var(--ha-accent-emphasis);
}

@media (max-width: 480px) {
    .exercise-detail__info[b-jfnh3qt3be] {
        flex-direction: column;
    }

    .exercise-detail__image[b-jfnh3qt3be] {
        width: 100%;
        max-width: 280px;
    }
}
/* /Pages/ExerciseLibrary.razor.rz.scp.css */
.exercise-search-card[b-5hqyzuwh5p] {
    margin-bottom: 1rem;
}

.exercise-search-bar[b-5hqyzuwh5p] {
    display: flex;
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.exercise-search-bar__input[b-5hqyzuwh5p] {
    flex: 1;
}

.exercise-filters[b-5hqyzuwh5p] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 0.75rem;
}

.exercise-results-header[b-5hqyzuwh5p] {
    margin-bottom: 0.5rem;
}

.exercise-grid[b-5hqyzuwh5p] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 0.75rem;
}

/* ── Card base ──────────────────────────────────────────────────── */
.exercise-card[b-5hqyzuwh5p] {
    background: var(--ha-surface-subtle);
    border: 1px solid var(--ha-border);
    border-radius: 8px;
    padding: 0.85rem 1rem;
    cursor: pointer;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.exercise-card:hover[b-5hqyzuwh5p] {
    border-color: var(--ha-accent-emphasis);
    box-shadow: 0 1px 4px rgba(59,130,246,0.12);
}

.exercise-card--selected[b-5hqyzuwh5p] {
    border-color: var(--ha-accent-emphasis);
    background: var(--ha-accent-bg);
}

.exercise-card__header[b-5hqyzuwh5p] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 0.5rem;
    margin-bottom: 0.5rem;
}

.exercise-card__name[b-5hqyzuwh5p] {
    font-weight: 600;
    font-size: 0.92rem;
    color: var(--ha-text);
    flex: 1;
}

.exercise-card__badges[b-5hqyzuwh5p] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.3rem;
    flex-shrink: 0;
}

.exercise-card__meta[b-5hqyzuwh5p] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.3rem;
}

/* ── Expanded detail panel ──────────────────────────────────────── */
.exercise-card__detail[b-5hqyzuwh5p] {
    margin-top: 0.75rem;
    padding-top: 0.75rem;
    border-top: 1px solid var(--ha-border);
    font-size: 0.85rem;
}

/* Animated GIF demonstration */
.exercise-card__gif-wrap[b-5hqyzuwh5p] {
    margin: 0 -0.1rem 0.75rem;
    border-radius: 6px;
    overflow: hidden;
    background: var(--ha-surface-contrast);
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 120px;
}

.exercise-card__gif[b-5hqyzuwh5p] {
    max-width: 100%;
    max-height: 240px;
    object-fit: contain;
    display: block;
}

/* Start/end static photos side by side */
.exercise-card__images[b-5hqyzuwh5p] {
    position: relative;
    margin-bottom: 0.75rem;
}

.exercise-card__image[b-5hqyzuwh5p] {
    width: 100%;
    border-radius: 6px;
    max-height: 240px;
    object-fit: cover;
    background: var(--ha-border);
    display: block;
}

.exercise-card__image--clickable[b-5hqyzuwh5p] {
    cursor: pointer;
}

.exercise-card__image-label[b-5hqyzuwh5p] {
    display: block;
    text-align: center;
    font-size: 0.75rem;
    color: var(--neutral-foreground-hint);
    margin-top: 0.25rem;
}

/* Muscle labels */
.exercise-card__muscles[b-5hqyzuwh5p] {
    margin-bottom: 0.35rem;
    font-size: 0.82rem;
    line-height: 1.4;
}

/* Step-by-step instructions */
.exercise-instructions[b-5hqyzuwh5p] {
    margin: 0.5rem 0 0.75rem 1.2rem;
    padding: 0;
    font-size: 0.81rem;
    color: var(--ha-text);
    line-height: 1.55;
}

.exercise-instructions li[b-5hqyzuwh5p] {
    margin-bottom: 0.35rem;
}

.exercise-card__increment[b-5hqyzuwh5p] {
    margin-top: 0.5rem;
    font-size: 0.82rem;
    color: var(--ha-text-muted);
}

/* ── Tags ──────────────────────────────────────────────────────── */
.exercise-tag[b-5hqyzuwh5p] {
    display: inline-block;
    padding: 0.15rem 0.5rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 500;
    background: var(--ha-badge-bg);
    color: var(--ha-text-muted);
    white-space: nowrap;
}

.exercise-tag--pattern[b-5hqyzuwh5p] {
    background: var(--ha-accent-bg);
    color: var(--ha-accent-emphasis);
}

.exercise-tag--equipment[b-5hqyzuwh5p] {
    background: var(--ha-success-bg);
    color: var(--ha-success-emphasis);
}

.exercise-tag--category[b-5hqyzuwh5p] {
    background: var(--ha-plate-yellow-bg);
    color: var(--ha-plate-yellow-text);
}

/* Level badges */
.exercise-tag--level[b-5hqyzuwh5p]          { background: var(--ha-badge-info-bg); color: var(--ha-badge-info-text); }
.exercise-tag--level-beginner[b-5hqyzuwh5p]      { background: var(--ha-success-bg); color: var(--ha-success-emphasis); }
.exercise-tag--level-intermediate[b-5hqyzuwh5p]  { background: var(--ha-plate-yellow-bg); color: var(--ha-plate-yellow-text); }
.exercise-tag--level-advanced[b-5hqyzuwh5p]      { background: var(--ha-danger-bg); color: var(--ha-danger); }

/* ── Import action (top-right of page hero) ───────────────────── */
.exercise-import-action[b-5hqyzuwh5p] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.import-result[b-5hqyzuwh5p] {
    font-size: 0.82rem;
    font-weight: 500;
    padding: 0.25rem 0.75rem;
    border-radius: 6px;
}

.import-result--success[b-5hqyzuwh5p] {
    background: var(--ha-success-bg);
    color: var(--ha-success-emphasis);
}

.import-result--neutral[b-5hqyzuwh5p] {
    background: var(--ha-surface-hover);
    color: var(--ha-text-muted);
}

/* ── Pagination ──────────────────────────────────────────────────── */
.exercise-pagination[b-5hqyzuwh5p] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    margin-top: 1.25rem;
    padding-top: 1rem;
    border-top: 1px solid var(--ha-border);
}

.exercise-pagination__info[b-5hqyzuwh5p] {
    font-size: 0.85rem;
    font-weight: 500;
    color: var(--ha-text-muted);
    min-width: 7rem;
    text-align: center;
}

@media (max-width: 480px) {
    .exercise-search-bar[b-5hqyzuwh5p] {
        flex-direction: column;
    }

    .exercise-filters[b-5hqyzuwh5p] {
        grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    }

    .exercise-pagination[b-5hqyzuwh5p] {
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .exercise-pagination__info[b-5hqyzuwh5p] {
        min-width: 0;
        width: 100%;
        order: -1;
    }

    .exercise-card[b-5hqyzuwh5p] {
        padding: 0.75rem;
    }

    .exercise-card__header[b-5hqyzuwh5p] {
        flex-direction: column;
        gap: 0.35rem;
    }

    .exercise-tag[b-5hqyzuwh5p] {
        padding: 0.25rem 0.55rem;
        min-height: 1.5rem;
    }
}

@media (max-width: 480px) {
    .exercise-grid[b-5hqyzuwh5p] {
        grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    }
}

/* Custom exercise form */
.custom-exercise-form[b-5hqyzuwh5p] {
    margin-top: 1rem;
}

.custom-exercise-form__row[b-5hqyzuwh5p] {
    display: flex;
    gap: 0.75rem;
    margin-bottom: 0.5rem;
}

@media (max-width: 600px) {
    .custom-exercise-form__row[b-5hqyzuwh5p] {
        flex-direction: column;
    }
}

/* ── Inline style extraction ─────────────────────────────────── */

.exercise-library__create-card[b-5hqyzuwh5p] {
    margin-bottom: 1rem;
}

.exercise-library__create-actions[b-5hqyzuwh5p] {
    margin-top: 0.75rem;
}

.exercise-library__create-result[b-5hqyzuwh5p] {
    margin-top: 0.5rem;
}
/* /Pages/FitnessAssessment.razor.rz.scp.css */
/* ─── Wizard progress indicator ─── */
.wizard-progress[b-nlrfepqt9b] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    margin-bottom: 1.5rem;
    padding: 0 1rem;
}

.wizard-progress__step[b-nlrfepqt9b] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
    min-width: 60px;
}

.wizard-progress__number[b-nlrfepqt9b] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--ha-border, var(--ha-border));
    color: var(--ha-text-muted, var(--ha-text-muted));
    font-weight: 600;
    font-size: 0.85rem;
    transition: all 0.2s ease;
}

.wizard-progress__step.active .wizard-progress__number[b-nlrfepqt9b] {
    background: var(--ha-accent, var(--ha-accent));
    color: var(--ha-panel);
}

.wizard-progress__step.completed .wizard-progress__number[b-nlrfepqt9b] {
    background: var(--ha-success, var(--ha-success));
    color: var(--ha-panel);
}

.wizard-progress__label[b-nlrfepqt9b] {
    font-size: 0.75rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    text-align: center;
}

.wizard-progress__step.active .wizard-progress__label[b-nlrfepqt9b] {
    color: var(--ha-accent, var(--ha-accent));
    font-weight: 600;
}

.wizard-progress__connector[b-nlrfepqt9b] {
    flex: 1;
    height: 2px;
    background: var(--ha-border, var(--ha-border));
    margin: 0 0.25rem;
    margin-bottom: 1.25rem;
    transition: background 0.2s ease;
}

.wizard-progress__connector.completed[b-nlrfepqt9b] {
    background: var(--ha-success, var(--ha-success));
}

/* ─── Wizard navigation buttons ─── */
.wizard-buttons[b-nlrfepqt9b] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
}

.wizard-buttons__right[b-nlrfepqt9b] {
    display: flex;
    gap: 0.5rem;
}

/* ─── Form field wrapper ─── */
.profile-select-field[b-nlrfepqt9b] {
    display: grid;
    gap: 0.35rem;
}

/* ─── PAR-Q questions ─── */
.parq-questions[b-nlrfepqt9b] {
    display: grid;
    gap: 0.75rem;
}

.parq-question[b-nlrfepqt9b] {
    padding: 0.75rem 1rem;
    background: var(--ha-panel-alt, var(--ha-bg));
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 12px;
}

/* ─── Movement screen ─── */
.movement-screen[b-nlrfepqt9b] {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.movement-card[b-nlrfepqt9b] {
    padding: 1rem;
}

/* ─── Summary (assessment complete) ─── */
.summary-grid[b-nlrfepqt9b] {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.summary-item[b-nlrfepqt9b] {
    padding: 1.25rem;
}

.summary-value[b-nlrfepqt9b] {
    font-size: 1.5rem;
    font-weight: 700;
    margin: 0.5rem 0;
}

.summary-value--success[b-nlrfepqt9b] {
    color: var(--ha-success, var(--ha-success));
}

.summary-value--warning[b-nlrfepqt9b] {
    color: var(--ha-warning, var(--ha-warning));
}

.summary-list[b-nlrfepqt9b] {
    list-style: none;
    padding: 0;
    margin: 0.5rem 0 0;
    display: grid;
    gap: 0.35rem;
}

.summary-list li[b-nlrfepqt9b] {
    padding: 0.35rem 0;
    border-bottom: 1px solid var(--ha-border, var(--ha-border));
    font-size: 0.9rem;
}

.summary-list li:last-child[b-nlrfepqt9b] {
    border-bottom: none;
}

/* ── Responsive: FitnessAssessment mobile ────────────────────── */
@media (max-width: 480px) {
    .wizard-progress[b-nlrfepqt9b] {
        gap: 0;
        padding: 0 0.25rem;
    }

    .wizard-progress__step[b-nlrfepqt9b] {
        min-width: 44px;
    }

    .wizard-progress__number[b-nlrfepqt9b] {
        width: 26px;
        height: 26px;
        font-size: 0.75rem;
    }

    .wizard-progress__label[b-nlrfepqt9b] {
        font-size: 0.65rem;
    }

    .wizard-buttons[b-nlrfepqt9b] {
        flex-direction: column;
        gap: 0.5rem;
    }

    .wizard-buttons__right[b-nlrfepqt9b] {
        width: 100%;
        flex-direction: column;
    }

    .movement-screen[b-nlrfepqt9b] {
        grid-template-columns: 1fr;
    }

    .summary-grid[b-nlrfepqt9b] {
        grid-template-columns: 1fr;
    }

    .parq-question[b-nlrfepqt9b] {
        padding: 0.5rem 0.75rem;
    }
}
/* /Pages/GroceryList.razor.rz.scp.css */
.grocery-list-page[b-kuz8drfxp2] {
    gap: 1.25rem;
}

.grocery-list__actions[b-kuz8drfxp2] {
    margin-bottom: 0.5rem;
}

.grocery-export-link[b-kuz8drfxp2] {
    background: var(--ha-panel);
    border: 1px solid var(--ha-border);
}

.grocery-groups[b-kuz8drfxp2] {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.grocery-group[b-kuz8drfxp2] {
    height: 100%;
    padding: 1rem;
    border-radius: 18px;
}

.grocery-group h3[b-kuz8drfxp2] {
    margin-bottom: 0;
}

.grocery-group li[b-kuz8drfxp2] {
    display: flex;
    gap: 0.75rem;
    justify-content: space-between;
    align-items: start;
}

.grocery-ingredient-list[b-kuz8drfxp2] {
    display: grid;
    gap: 0.5rem;
    list-style: none;
    padding-left: 0;
}

/* ── Grocery checklist ───────────────────────────────────────── */
.grocery-checklist-toolbar[b-kuz8drfxp2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}

.grocery-checklist-count[b-kuz8drfxp2] {
    font-size: 0.85rem;
    font-weight: 500;
    color: var(--ha-text-muted);
}

.grocery-item[b-kuz8drfxp2] {
    display: flex;
    gap: 0.75rem;
    justify-content: space-between;
    align-items: start;
}

.grocery-item__label[b-kuz8drfxp2] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
    font-size: 0.88rem;
}

.grocery-item__label input[type="checkbox"][b-kuz8drfxp2] {
    width: 1rem;
    height: 1rem;
    accent-color: var(--ha-success);
    cursor: pointer;
    flex-shrink: 0;
}

.grocery-item__name--struck[b-kuz8drfxp2] {
    text-decoration: line-through;
    color: var(--ha-text-muted);
}

.grocery-item--checked[b-kuz8drfxp2] {
    opacity: 0.7;
}

@media (max-width: 720px) {
    .grocery-groups[b-kuz8drfxp2] {
        grid-template-columns: 1fr;
    }

    .grocery-group li[b-kuz8drfxp2] {
        flex-direction: column;
    }
}

@media print {
    .grocery-list__actions[b-kuz8drfxp2],
    .page-hero[b-kuz8drfxp2],
    .status-alert[b-kuz8drfxp2] {
        display: none !important;
    }

    .grocery-list-card[b-kuz8drfxp2],
    .grocery-group[b-kuz8drfxp2] {
        box-shadow: none;
        border-color: var(--ha-border);
    }
}
/* /Pages/Home.razor.rz.scp.css */
.home-hero[b-xwd56iabh9] {
    display: grid;
    gap: 1.25rem;
    grid-template-columns: minmax(0, 1.65fr) minmax(280px, 0.95fr);
    align-items: stretch;
}

.home-hero--priority[b-xwd56iabh9] {
    padding: 1.5rem;
    border: 1px solid var(--ha-border);
    border-radius: var(--ha-radius-lg);
    background: linear-gradient(135deg, rgba(21, 121, 90, 0.12) 0%, rgba(255, 255, 255, 0.96) 52%, rgba(218, 242, 229, 0.92) 100%);
    box-shadow: var(--ha-shadow);
}

.home-hero__content[b-xwd56iabh9] {
    display: grid;
    gap: 1rem;
}

.home-hero__eyebrow[b-xwd56iabh9] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    align-items: center;
}

.home-hero__date[b-xwd56iabh9] {
    color: var(--ha-text-muted);
    font-size: 0.875rem;
    font-weight: 600;
}

.home-hero__greeting[b-xwd56iabh9] {
    margin: 0;
    font-size: clamp(2rem, 4vw, 2.75rem);
    line-height: 1.05;
}

.home-hero__intro[b-xwd56iabh9] {
    margin: 0;
    max-width: 42rem;
    color: var(--ha-text-muted);
    font-size: 1rem;
}

.home-hero__summary[b-xwd56iabh9] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.home-hero__summary-item[b-xwd56iabh9] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.55rem 0.85rem;
    border-radius: var(--ha-radius-full);
    background: rgba(255, 255, 255, 0.84);
    border: 1px solid rgba(21, 121, 90, 0.16);
    color: var(--ha-text);
    font-weight: 600;
}

.home-hero__actions[b-xwd56iabh9] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.home-hero__actions .cta-link[b-xwd56iabh9],
.home-hero__actions .secondary-link[b-xwd56iabh9] {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
}

.home-hero__priority-card[b-xwd56iabh9] {
    display: grid;
    gap: 0.85rem;
    padding: 1.2rem;
    border-radius: var(--ha-radius-md);
    background: rgba(255, 255, 255, 0.88);
    border: 1px solid rgba(21, 121, 90, 0.16);
}

.home-hero__priority-card h2[b-xwd56iabh9],
.home-section-heading h2[b-xwd56iabh9] {
    margin: 0;
}

.home-hero__priority-card p[b-xwd56iabh9],
.home-section-heading p[b-xwd56iabh9] {
    margin: 0;
    color: var(--ha-text-muted);
}

.home-hero__priority-label[b-xwd56iabh9],
.home-hero__priority-metric-label[b-xwd56iabh9] {
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.home-hero__priority-label[b-xwd56iabh9] {
    color: var(--ha-accent);
}

.home-hero__priority-metrics[b-xwd56iabh9] {
    display: grid;
    gap: 0.75rem;
}

.home-hero__priority-metric[b-xwd56iabh9] {
    display: grid;
    gap: 0.2rem;
    padding: 0.75rem;
    border-radius: var(--ha-radius-sm);
    background: var(--ha-panel);
    border: 1px solid var(--ha-border);
}

.home-hero__priority-metric-label[b-xwd56iabh9] {
    color: var(--ha-text-muted);
}

.home-hero__priority-metric-value[b-xwd56iabh9] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--ha-text);
}

.home-priority-grid[b-xwd56iabh9] {
    display: grid;
    gap: 1.25rem;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    align-items: start;
}

.home-priority-card[b-xwd56iabh9] {
    border-left: 1px solid var(--ha-border);
    background: linear-gradient(180deg, var(--ha-panel) 0%, rgba(218, 242, 229, 0.32) 100%);
}

.home-priority-card--glance[b-xwd56iabh9] {
    background: linear-gradient(180deg, var(--ha-panel) 0%, rgba(227, 247, 237, 0.78) 100%);
}

.home-onboarding-prompt[b-xwd56iabh9] {
    background: linear-gradient(180deg, var(--ha-panel) 0%, rgba(227, 247, 237, 0.66) 100%);
}

.home-meal-chips[b-xwd56iabh9] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-top: 0.5rem;
}

.meal-chip[b-xwd56iabh9] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.2rem 0.65rem;
    border-radius: 999px;
    font-size: 0.78rem;
    font-weight: 500;
    border: 1px solid transparent;
}

.meal-chip__icon[b-xwd56iabh9] {
    display: inline-flex;
}

.meal-chip--confirmed[b-xwd56iabh9] {
    background: var(--ha-success-bg);
    color: var(--ha-success);
    border-color: var(--ha-success-border);
}

.metric-card--streak .metric-card__value[b-xwd56iabh9] {
    color: var(--ha-warning);
}

.home-workout-card[b-xwd56iabh9] {
    border-left-color: rgba(21, 121, 90, 0.18);
}

.home-workout-title[b-xwd56iabh9] {
    font-weight: 600;
    font-size: 1.05rem;
    margin-bottom: 0.5rem;
}

.home-workout-exercises[b-xwd56iabh9] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    margin-bottom: 0.75rem;
}

.home-workout-exercise-chip[b-xwd56iabh9] {
    display: inline-block;
    padding: 0.2rem 0.6rem;
    background: var(--ha-panel-alt);
    border-radius: 4px;
    font-size: 0.82rem;
    color: var(--ha-text);
}

.home-workout-rest[b-xwd56iabh9] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem 0;
}

.home-workout-rest__icon[b-xwd56iabh9] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 999px;
    background: var(--ha-accent-soft);
    color: var(--ha-accent);
    flex-shrink: 0;
}

.home-challenges[b-xwd56iabh9] {
    border-left: 1px solid var(--ha-border);
    background: linear-gradient(180deg, var(--ha-panel) 0%, rgba(227, 247, 237, 0.58) 100%);
}

.home-challenges__list[b-xwd56iabh9] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.home-challenges__item[b-xwd56iabh9] {
    padding: 0.6rem 0.75rem;
    background: var(--ha-panel-alt);
    border: 1px solid var(--ha-border);
    border-radius: 0.4rem;
}

.home-challenges__header[b-xwd56iabh9] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.35rem;
}

.home-challenges__name[b-xwd56iabh9] {
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--ha-text);
}

.home-challenges__days[b-xwd56iabh9] {
    font-size: 0.78rem;
    white-space: nowrap;
}

.home-challenges__progress[b-xwd56iabh9] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
}

.home-challenges__progress-bar[b-xwd56iabh9] {
    flex: 1;
    height: 6px;
    background: var(--ha-border);
    border-radius: 3px;
    overflow: hidden;
}

.home-challenges__progress-fill[b-xwd56iabh9] {
    height: 100%;
    border-radius: 3px;
    background: var(--ha-success);
    transition: width 0.3s ease;
}

.home-challenges__progress-text[b-xwd56iabh9] {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--ha-text-muted);
    font-variant-numeric: tabular-nums;
    min-width: 2.5rem;
    text-align: right;
}

.home-completed[b-xwd56iabh9] {
    border-left: 1px solid var(--ha-border);
    background: linear-gradient(180deg, var(--ha-panel) 0%, rgba(220, 252, 231, 0.55) 100%);
}

.home-completed__list[b-xwd56iabh9] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.home-completed__item[b-xwd56iabh9] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.5rem 0.6rem;
    background: var(--ha-panel-alt);
    border: 1px solid var(--ha-border);
    border-radius: 0.4rem;
}

.home-completed__icon[b-xwd56iabh9] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--ha-success);
    flex-shrink: 0;
}

.home-completed__detail[b-xwd56iabh9] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    min-width: 0;
}

.home-completed__name[b-xwd56iabh9] {
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--ha-text);
}

.home-completed__meta[b-xwd56iabh9] {
    font-size: 0.78rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.home-achievements[b-xwd56iabh9] {
    border-left: 1px solid var(--ha-border);
    background: linear-gradient(180deg, var(--ha-panel) 0%, rgba(255, 248, 225, 0.78) 100%);
}

.home-achievements__grid[b-xwd56iabh9] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
    gap: 0.75rem;
}

.home-achievements__badge[b-xwd56iabh9] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 0.75rem 0.5rem;
    background: var(--ha-panel-alt);
    border: 1px solid var(--ha-border);
    border-radius: 0.5rem;
    gap: 0.25rem;
    transition: transform 0.15s ease;
}

.home-achievements__badge:hover[b-xwd56iabh9] {
    transform: translateY(-2px);
}

.home-achievements__badge-icon[b-xwd56iabh9] {
    font-size: 2rem;
    line-height: 1;
}

.home-achievements__badge-name[b-xwd56iabh9] {
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--ha-text);
    line-height: 1.2;
}

.home-achievements__badge-date[b-xwd56iabh9] {
    font-size: 0.72rem;
}

[b-xwd56iabh9] .home-glance-card .metric-grid--compact {
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: 0.75rem;
}

.home-welcome-banner[b-xwd56iabh9] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.35rem;
    margin-bottom: 1rem;
    background: linear-gradient(135deg, rgba(21, 121, 90, 0.14) 0%, rgba(255, 255, 255, 0.96) 100%);
    border: 1px solid var(--ha-border);
    border-radius: var(--ha-radius-lg);
    position: relative;
    box-shadow: var(--ha-shadow);
}

.home-welcome-banner__content[b-xwd56iabh9] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.home-welcome-banner__title[b-xwd56iabh9] {
    margin: 0;
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--ha-text);
}

.home-welcome-banner__text[b-xwd56iabh9] {
    margin: 0;
    font-size: 0.9rem;
    color: var(--ha-text-muted);
}

.home-welcome-banner__actions[b-xwd56iabh9] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    margin-top: 0.35rem;
}

.home-welcome-banner__btn[b-xwd56iabh9] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    padding: 0.6rem 0.9rem;
    border-radius: 0.75rem;
    font-size: 0.84rem;
    font-weight: 600;
    text-decoration: none;
    color: var(--ha-accent);
    background: var(--ha-panel);
    border: 1px solid var(--ha-border);
    transition: background 0.12s, border-color 0.12s;
    min-height: 44px;
}

.home-welcome-banner__btn:hover[b-xwd56iabh9] {
    background: var(--ha-accent-soft);
    border-color: var(--ha-accent);
}

.home-welcome-banner__btn--primary[b-xwd56iabh9] {
    background: var(--ha-accent);
    color: var(--ha-panel);
    border-color: var(--ha-accent);
}

.home-welcome-banner__btn--primary:hover[b-xwd56iabh9] {
    background: var(--ha-accent-hover);
    border-color: var(--ha-accent-hover);
    color: var(--ha-panel);
}

.home-welcome-banner__dismiss[b-xwd56iabh9] {
    border-radius: 999px;
    color: var(--ha-text-muted);
    padding: 0.25rem;
    min-width: 2rem;
    flex-shrink: 0;
}

.home-welcome-banner__dismiss:hover[b-xwd56iabh9] {
    color: var(--ha-text);
    background: rgba(255, 255, 255, 0.9);
}

.home-support-section[b-xwd56iabh9] {
    display: grid;
    gap: 1rem;
}

.home-section-heading[b-xwd56iabh9] {
    display: grid;
    gap: 0.35rem;
}

.home-support-grid[b-xwd56iabh9] {
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.home-support-card[b-xwd56iabh9] {
    background: linear-gradient(180deg, var(--ha-panel) 0%, var(--ha-surface-hover) 100%);
    box-shadow: none;
}

@media (max-width: 900px) {
    .home-hero[b-xwd56iabh9] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .home-hero--priority[b-xwd56iabh9] {
        padding: 1.25rem;
    }

    .home-hero__summary[b-xwd56iabh9],
    .home-hero__actions[b-xwd56iabh9],
    .home-welcome-banner__actions[b-xwd56iabh9] {
        flex-direction: column;
    }

    .home-hero__summary-item[b-xwd56iabh9],
    .home-welcome-banner__btn[b-xwd56iabh9] {
        width: 100%;
        box-sizing: border-box;
    }

    .home-achievements__grid[b-xwd56iabh9] {
        grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
    }

    .home-challenges__header[b-xwd56iabh9] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.15rem;
    }

    .home-welcome-banner[b-xwd56iabh9] {
        flex-direction: column;
    }
}

@media (prefers-reduced-motion: reduce) {
    .home-challenges__progress-fill[b-xwd56iabh9],
    .home-achievements__badge[b-xwd56iabh9],
    .home-welcome-banner__btn[b-xwd56iabh9] {
        transition: none;
    }

    .home-achievements__badge:hover[b-xwd56iabh9] {
        transform: none;
    }
}
/* /Pages/IntervalWorkout.razor.rz.scp.css */
.running-form[b-r36lums32o] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1rem;
    margin: 1rem 0;
}

.running-form__field[b-r36lums32o] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.running-form__label[b-r36lums32o] {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
}

.coach-response[b-r36lums32o] {
    line-height: 1.7;
    font-size: 0.95rem;
}

.coach-response p[b-r36lums32o] {
    margin-bottom: 0.75rem;
}

.interval-result[b-r36lums32o] {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--ha-border);
}

@media (max-width: 480px) {
    .running-form[b-r36lums32o] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/Login.razor.rz.scp.css */
.login-shell[b-1rhb28nyfz] {
    display: grid;
    gap: 1.25rem;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
    align-items: start;
}

.login-hero[b-1rhb28nyfz] {
    display: grid;
    gap: 1rem;
    padding: 1.5rem;
    border: 1px solid var(--ha-border);
    border-radius: var(--ha-radius-lg);
    background: linear-gradient(135deg, rgba(21, 121, 90, 0.12) 0%, rgba(255, 255, 255, 0.97) 54%, rgba(218, 242, 229, 0.9) 100%);
    box-shadow: var(--ha-shadow);
}

.login-hero__copy[b-1rhb28nyfz] {
    display: grid;
    gap: 1rem;
}

.login-hero__copy h1[b-1rhb28nyfz] {
    margin: 0;
    font-size: clamp(2rem, 4vw, 2.9rem);
    line-height: 1.05;
}

.login-hero__pills[b-1rhb28nyfz] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.login-hero__panel[b-1rhb28nyfz] {
    display: grid;
    gap: 0.75rem;
    padding: 1.15rem;
    border-radius: var(--ha-radius-md);
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid rgba(21, 121, 90, 0.16);
}

.login-hero__panel-title[b-1rhb28nyfz] {
    margin: 0;
    font-size: 1.1rem;
}

.login-hero__list[b-1rhb28nyfz] {
    display: grid;
    gap: 0.75rem;
    list-style: none;
    margin: 0;
    padding: 0;
}

.login-hero__list li[b-1rhb28nyfz] {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0.65rem;
    align-items: start;
    color: var(--ha-text-muted);
}

.login-shell__forms[b-1rhb28nyfz] {
    display: grid;
    gap: 1rem;
}

.auth-mode-toggle[b-1rhb28nyfz] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.auth-mode-toggle__button[b-1rhb28nyfz] {
    width: 100%;
}

.social-login-section[b-1rhb28nyfz] {
    display: grid;
    gap: 0.5rem;
    margin-bottom: 0.25rem;
}

.social-login-btn[b-1rhb28nyfz] {
    width: 100%;
    justify-content: center;
    font-weight: 500;
    min-height: 48px;
}

[b-1rhb28nyfz] .social-icon {
    display: inline-flex;
    align-items: center;
    margin-right: 6px;
    line-height: 0;
}

[b-1rhb28nyfz] .social-icon svg {
    vertical-align: middle;
}

.social-login-apple[b-1rhb28nyfz] {
    --accent-fill-rest: var(--ha-text);
    --accent-fill-hover: var(--ha-text);
    --accent-fill-active: var(--ha-text);
    --accent-foreground-rest: var(--ha-panel);
    color: var(--ha-panel);
}

.auth-divider[b-1rhb28nyfz] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin: 0.75rem 0;
    color: var(--ha-text-muted, var(--ha-text-muted));
    font-size: 0.82rem;
}

.auth-divider[b-1rhb28nyfz]::before,
.auth-divider[b-1rhb28nyfz]::after {
    content: "";
    flex: 1;
    height: 1px;
    background: var(--ha-border, var(--ha-border));
}

.password-field-wrapper[b-1rhb28nyfz] {
    position: relative;
}

.password-toggle[b-1rhb28nyfz] {
    position: absolute;
    right: 0.5rem;
    top: 1.9rem;
    background: var(--ha-panel);
    border: 1px solid var(--ha-border);
    cursor: pointer;
    min-width: 3.3rem;
    padding: 0.28rem 0.55rem;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1;
    border-radius: 999px;
    color: var(--ha-accent-emphasis);
    z-index: 1;
}

.password-toggle:hover[b-1rhb28nyfz] {
    background: var(--ha-accent-soft);
}

.field-error[b-1rhb28nyfz] {
    color: var(--ha-danger, var(--ha-danger));
    font-size: 0.83rem;
    margin: -0.25rem 0 0 0;
    padding: 0;
}

.field-hint[b-1rhb28nyfz] {
    color: var(--ha-text-muted, var(--ha-text-muted));
    font-size: 0.83rem;
    margin: -0.25rem 0 0 0;
}

.submit-btn[b-1rhb28nyfz] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
}

.forgot-password-link[b-1rhb28nyfz] {
    font-size: 0.85rem;
    color: var(--ha-accent-emphasis);
    cursor: pointer;
    text-decoration: none;
}

.forgot-password-link:hover[b-1rhb28nyfz] {
    text-decoration: underline;
}

.login-links[b-1rhb28nyfz] {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
    justify-content: space-between;
}

.section-meta[b-1rhb28nyfz] {
    font-size: 0.9rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    margin-bottom: 0.5rem;
}

.remember-me-row[b-1rhb28nyfz] {
    display: flex;
    align-items: center;
    margin-top: -0.25rem;
}

.login-error-help[b-1rhb28nyfz] {
    background: var(--ha-danger-bg, var(--ha-panel-alt));
    border-left: 3px solid var(--ha-danger, var(--ha-danger));
    border-radius: 4px;
    padding: 0.65rem 0.85rem;
    margin-top: 0.25rem;
}

.login-card[b-1rhb28nyfz] {
    width: 100%;
    max-width: 560px;
}

.login-card--primary[b-1rhb28nyfz] {
    margin: 0;
}

.login-card--spaced[b-1rhb28nyfz] {
    max-width: 560px;
    margin: 0;
}

.btn-spinner[b-1rhb28nyfz] {
    width: 16px;
    height: 16px;
    margin-right: 6px;
}

.login-error-text[b-1rhb28nyfz] {
    color: var(--ha-danger, var(--ha-danger));
    font-size: 0.88rem;
    margin: 0 0 0.25rem 0;
    font-weight: 500;
}

.login-error-hint[b-1rhb28nyfz] {
    font-size: 0.85rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    margin: 0;
}

@media (max-width: 960px) {
    .login-shell[b-1rhb28nyfz] {
        grid-template-columns: 1fr;
    }

    .login-card[b-1rhb28nyfz],
    .login-card--spaced[b-1rhb28nyfz] {
        max-width: none;
    }
}

@media (max-width: 480px) {
    .form-layout[b-1rhb28nyfz] {
        gap: 0.75rem;
    }

    .login-hero[b-1rhb28nyfz] {
        padding: 1.25rem;
    }

    .login-hero__pills[b-1rhb28nyfz],
    .login-links[b-1rhb28nyfz] {
        flex-direction: column;
        align-items: flex-start;
    }
}
/* /Pages/MagicLinkVerify.razor.rz.scp.css */
/* ── Magic Link Verify Page ────────────────────── */

.magic-link-card[b-27pwcaex59] {
    max-width: 480px;
    margin: 0 auto;
}

.magic-link-card__actions[b-27pwcaex59] {
    margin-top: 1rem;
}
/* /Pages/NutritionCalendar.razor.rz.scp.css */
.nutrition-calendar-page[b-zgu3owtgzv] {
    gap: 1.25rem;
}

.nutrition-day-grid[b-zgu3owtgzv],
.nutrition-meal-grid[b-zgu3owtgzv] {
    display: grid;
    gap: 1rem;
}

.nutrition-day-grid[b-zgu3owtgzv] {
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.nutrition-meal-grid[b-zgu3owtgzv] {
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.nutrition-day-card[b-zgu3owtgzv],
.nutrition-meal-card[b-zgu3owtgzv] {
    height: 100%;
}

.nutrition-meal-card[b-zgu3owtgzv] {
    padding: 1rem;
    border-radius: 18px;
}

.nutrition-meal-card__header[b-zgu3owtgzv],
.nutrition-swap-card[b-zgu3owtgzv],
.nutrition-ingredient-list li[b-zgu3owtgzv] {
    display: flex;
    gap: 0.75rem;
    justify-content: space-between;
    align-items: start;
}

.nutrition-meal-card__header[b-zgu3owtgzv] {
    flex-direction: column;
}

.nutrition-meal-card h3[b-zgu3owtgzv] {
    margin-bottom: 0;
}

.nutrition-meal-metrics .metric-card[b-zgu3owtgzv] {
    min-width: 0;
}

.nutrition-ingredient-list[b-zgu3owtgzv] {
    display: grid;
    gap: 0.5rem;
    list-style: none;
    padding-left: 0;
}

.nutrition-swap-card[b-zgu3owtgzv] {
    justify-content: space-between;
}

.nutrition-swap-card__content[b-zgu3owtgzv] {
    display: grid;
    gap: 0.25rem;
}

@media (max-width: 720px) {
    .nutrition-day-grid[b-zgu3owtgzv],
    .nutrition-meal-grid[b-zgu3owtgzv] {
        grid-template-columns: 1fr;
    }

    .nutrition-swap-card[b-zgu3owtgzv],
    .nutrition-ingredient-list li[b-zgu3owtgzv] {
        flex-direction: column;
    }
}

/* ── Training day card accent ────────────────────────────────── */
.nutrition-day-card--training[b-zgu3owtgzv]
{
    border-color: var(--ha-success-border);
    background: linear-gradient(180deg, var(--ha-success-bg) 0%, var(--ha-panel) 100%);
}

/* ── Recipe link ─────────────────────────────────────────────── */
.recipe-link[b-zgu3owtgzv]
{
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.85rem;
    font-weight: 500;
    color: var(--ha-success, var(--ha-success));
    text-decoration: none;
    margin: 0.4rem 0 0.5rem;
}

.recipe-link:hover[b-zgu3owtgzv] { text-decoration: underline; }

.recipe-link--small[b-zgu3owtgzv]
{
    font-size: 0.78rem;
    margin: 0.25rem 0 0;
}

/* ── Macro donut rings ───────────────────────────────────────── */
.macro-rings-row[b-zgu3owtgzv]
{
    display: flex;
    align-items: center;
    gap: 0.85rem;
    margin: 0.5rem 0;
}

.macro-rings-labels[b-zgu3owtgzv]
{
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.macro-rings-label[b-zgu3owtgzv]
{
    font-size: 0.8rem;
    font-weight: 600;
}

.macro-rings-label span[b-zgu3owtgzv]
{
    font-weight: 400;
    color: var(--ha-text-muted, var(--ha-text-muted));
    margin-left: 0.15rem;
}

.macro-rings-label--calories[b-zgu3owtgzv] { color: var(--ha-text, var(--ha-text)); font-size: 0.88rem; }
.macro-rings-label--protein[b-zgu3owtgzv]  { color: var(--ha-success, var(--ha-success)); }
.macro-rings-label--carbs[b-zgu3owtgzv]    { color: var(--ha-accent, var(--ha-accent-emphasis)); }
.macro-rings-label--fat[b-zgu3owtgzv]      { color: var(--ha-warning); }

/* ── Meal confirmation button ────────────────────────────────── */
.meal-confirm-btn[b-zgu3owtgzv] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.4rem 0.85rem;
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 2rem;
    background: var(--ha-panel-alt, var(--ha-surface-subtle));
    color: var(--ha-text-muted, var(--ha-text-muted));
    font-size: 0.82rem;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
    margin-top: 0.5rem;
}

.meal-confirm-btn:hover[b-zgu3owtgzv] {
    border-color: var(--ha-accent, var(--ha-accent-emphasis));
    color: var(--ha-accent, var(--ha-accent-emphasis));
    background: var(--ha-accent-soft, var(--ha-accent-bg));
}

.meal-confirm-btn--confirmed[b-zgu3owtgzv] {
    border-color: var(--ha-success, var(--ha-success-emphasis));
    color: var(--ha-success, var(--ha-success-emphasis));
    background: var(--ha-success-bg);
}

.meal-confirm-btn--confirmed:hover[b-zgu3owtgzv] {
    background: var(--ha-success-bg);
    border-color: var(--ha-success-emphasis);
}

/* ── Daily macro summary card ────────────────────────────────── */
.nutrition-daily-macro-summary[b-zgu3owtgzv] {
    border-left: 4px solid var(--ha-accent, var(--ha-accent-emphasis));
}

/* ── Macro input panel ───────────────────────────────────────── */
.macro-toggle-btn[b-zgu3owtgzv] {
    display: inline-block;
    padding: 0.3rem 0;
    border: none;
    background: none;
    color: var(--ha-accent, var(--ha-accent-emphasis));
    font-size: 0.82rem;
    cursor: pointer;
    text-align: left;
}

.macro-toggle-btn:hover[b-zgu3owtgzv] {
    text-decoration: underline;
}

.macro-input-panel[b-zgu3owtgzv] {
    display: grid;
    gap: 0.5rem;
    padding: 0.75rem;
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 12px;
    background: var(--ha-panel-alt, var(--ha-surface-subtle));
}

.macro-input-grid[b-zgu3owtgzv] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
    gap: 0.5rem;
}

.macro-input-field[b-zgu3owtgzv] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    font-size: 0.82rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.macro-input-field input[b-zgu3owtgzv] {
    padding: 0.35rem 0.5rem;
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 6px;
    font-size: 0.85rem;
}

.macro-input-field--wide[b-zgu3owtgzv] {
    grid-column: 1 / -1;
}

/* ── Mobile touch & input fixes ──────────────────────────────── */
@media (max-width: 480px) {
    .meal-confirm-btn[b-zgu3owtgzv] {
        font-size: 0.9rem;
        min-height: 44px;
        padding: 0.5rem 1rem;
    }

    .macro-toggle-btn[b-zgu3owtgzv] {
        font-size: 0.9rem;
        min-height: 36px;
    }

    .macro-input-field input[b-zgu3owtgzv] {
        font-size: 16px;
    }
}
/* /Pages/NutritionPlan.razor.rz.scp.css */
.nutrition-plan-page[b-qyhstb4com] {
    gap: 1.25rem;
}

.nutrition-plan__actions[b-qyhstb4com] {
    margin-bottom: 0.5rem;
}

@media print {
    .nutrition-plan__actions[b-qyhstb4com],
    .page-hero[b-qyhstb4com],
    .status-alert[b-qyhstb4com] {
        display: none !important;
    }
}

/* ── Daily Meal Plan ─────────────────────────────────────────── */
.nutrition-days-heading[b-qyhstb4com] {
    margin-top: 0.5rem;
}

.nutrition-day-card[b-qyhstb4com] {
    margin-bottom: 0;
}

.nutrition-day-header[b-qyhstb4com] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 0.5rem;
}

.nutrition-day-header h3[b-qyhstb4com] {
    margin: 0;
    font-size: 1.05rem;
}

.nutrition-day-badge[b-qyhstb4com] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.2rem 0.6rem;
    border-radius: 1rem;
    font-size: 0.75rem;
    font-weight: 600;
}

.nutrition-day-badge--training[b-qyhstb4com] {
    color: var(--ha-success, var(--ha-success));
    background: var(--ha-success-bg);
}

.nutrition-day-badge--rest[b-qyhstb4com] {
    color: var(--ha-text-muted, var(--ha-text-muted));
    background: var(--ha-panel-alt, var(--ha-panel-alt));
}

.nutrition-day-macros[b-qyhstb4com] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}

.nutrition-day-macro[b-qyhstb4com] {
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.nutrition-meals-list[b-qyhstb4com] {
    display: grid;
    gap: 0.75rem;
}

.nutrition-meal-item[b-qyhstb4com] {
    padding: 0.75rem;
    border-radius: 0.6rem;
    background: var(--ha-panel-alt, var(--ha-panel-alt));
    border: 1px solid var(--ha-border, var(--ha-border));
}

.nutrition-meal-header[b-qyhstb4com] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.25rem;
}

.nutrition-meal-type[b-qyhstb4com] {
    font-size: 0.78rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--ha-accent, var(--ha-accent));
}

.nutrition-meal-cals[b-qyhstb4com] {
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.nutrition-meal-title[b-qyhstb4com] {
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
    margin: 0 0 0.2rem;
}

.nutrition-meal-summary[b-qyhstb4com] {
    font-size: 0.85rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    margin: 0 0 0.35rem;
    line-height: 1.45;
}

.nutrition-meal-macros[b-qyhstb4com] {
    display: flex;
    gap: 0.75rem;
    font-size: 0.78rem;
    font-weight: 500;
    color: var(--ha-text-muted, var(--ha-text-muted));
    margin-bottom: 0.35rem;
}

.nutrition-meal-ingredients[b-qyhstb4com] {
    list-style: disc;
    padding-left: 1.25rem;
    margin: 0.35rem 0 0;
}

.nutrition-meal-ingredients li[b-qyhstb4com] {
    font-size: 0.85rem;
    color: var(--ha-text, var(--ha-text));
    line-height: 1.5;
}

.nutrition-ingredient-qty[b-qyhstb4com] {
    color: var(--ha-text-muted, var(--ha-text-muted));
    font-size: 0.8rem;
}

.nutrition-meal-subs[b-qyhstb4com] {
    margin-top: 0.5rem;
    font-size: 0.82rem;
}

.nutrition-meal-subs summary[b-qyhstb4com] {
    cursor: pointer;
    color: var(--ha-accent, var(--ha-accent));
    font-weight: 500;
}

.nutrition-sub-item[b-qyhstb4com] {
    padding: 0.4rem 0;
    border-bottom: 1px solid var(--ha-border, var(--ha-border));
    font-size: 0.82rem;
    color: var(--ha-text, var(--ha-text));
}

.nutrition-sub-item:last-child[b-qyhstb4com] {
    border-bottom: none;
}

/* ── Meal Prep Guide ─────────────────────────────────────────── */
.meal-prep-content[b-qyhstb4com] {
    display: grid;
    gap: 0.35rem;
}

.meal-prep-content h3[b-qyhstb4com] {
    margin-top: 0.75rem;
    margin-bottom: 0.15rem;
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
}

.meal-prep-content p[b-qyhstb4com] {
    margin: 0;
    font-size: 0.88rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    line-height: 1.5;
}

.meal-prep-list[b-qyhstb4com] {
    list-style: disc;
    padding-left: 1.25rem;
    margin: 0.15rem 0;
}

.meal-prep-list li[b-qyhstb4com] {
    font-size: 0.88rem;
    color: var(--ha-text, var(--ha-text));
    line-height: 1.55;
}

@media (max-width: 480px) {
    .nutrition-day-header[b-qyhstb4com] {
        flex-direction: column;
        align-items: flex-start;
    }

    .nutrition-day-macros[b-qyhstb4com] {
        gap: 0.5rem;
    }

    .nutrition-meals-list[b-qyhstb4com] {
        grid-template-columns: 1fr;
    }

    .nutrition-meal-header[b-qyhstb4com] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.15rem;
    }

    .nutrition-meal-macros[b-qyhstb4com] {
        flex-wrap: wrap;
        gap: 0.4rem;
    }

    .meal-prep-content h3[b-qyhstb4com] {
        font-size: 0.88rem;
    }

    .nutrition-plan__actions[b-qyhstb4com] {
        flex-direction: column;
        gap: 0.5rem;
    }
}
/* /Pages/Onboarding.razor.rz.scp.css */
/* ── Layout ──────────────────────────────────────────────── */

.profile-layout[b-m66igd4lf2] {
    display: grid;
    gap: 1.5rem;
    max-width: 760px;
    margin: 0 auto;
}

/* ── Wizard stepper ─────────────────────────────────────── */

.wizard-stepper[b-m66igd4lf2] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    padding: 0 1rem;
}

.wizard-stepper__step[b-m66igd4lf2] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
    min-width: 60px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0.25rem;
    font-family: inherit;
    transition: opacity var(--ha-transition-fast);
}

.wizard-stepper__step:disabled[b-m66igd4lf2] {
    cursor: default;
    opacity: 0.5;
}

.wizard-stepper__step:not(:disabled):hover .wizard-stepper__circle[b-m66igd4lf2] {
    transform: scale(1.04);
    box-shadow: 0 2px 8px rgba(15, 108, 189, 0.18);
}

.wizard-stepper__circle[b-m66igd4lf2] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--ha-border);
    border: 2px solid transparent;
    color: var(--ha-text-muted);
    font-weight: 600;
    font-size: 0.85rem;
    transition: all var(--ha-transition-medium);
}

.wizard-stepper__step--active .wizard-stepper__circle[b-m66igd4lf2] {
    background: var(--ha-accent);
    color: var(--ha-panel);
}

.wizard-stepper__step--done .wizard-stepper__circle[b-m66igd4lf2] {
    background: var(--ha-success);
    color: var(--ha-panel);
}

.wizard-stepper__label[b-m66igd4lf2] {
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--ha-text-muted);
    text-align: center;
    white-space: nowrap;
}

.wizard-stepper__step--active .wizard-stepper__label[b-m66igd4lf2] {
    color: var(--ha-accent);
    font-weight: 700;
}

.wizard-stepper__step--done .wizard-stepper__label[b-m66igd4lf2] {
    color: var(--ha-success);
}

.wizard-stepper__connector[b-m66igd4lf2] {
    flex: 1;
    height: 2px;
    background: var(--ha-border);
    margin: 0 0.25rem 1.25rem;
    min-width: 20px;
    transition: background var(--ha-transition-medium);
}

.wizard-stepper__connector--done[b-m66igd4lf2] {
    background: var(--ha-success);
}

/* ── Content panel ──────────────────────────────────────── */

.profile-panel[b-m66igd4lf2] {
    background: var(--ha-panel);
    border: 1px solid var(--ha-border);
    border-radius: var(--ha-radius-md);
    box-shadow: var(--ha-shadow);
    overflow: visible;
}

.profile-panel__content[b-m66igd4lf2] {
    padding: 1.75rem;
    animation: stepFadeIn-b-m66igd4lf2 0.25s ease-out;
}

@keyframes stepFadeIn-b-m66igd4lf2 {
    from { opacity: 0; transform: translateY(6px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ── Tab section layout ─────────────────────────────────── */

.tab-section[b-m66igd4lf2] {
    display: grid;
    gap: 1.5rem;
}

.tab-section__header[b-m66igd4lf2] {
    margin-bottom: 0.25rem;
}

.step-microcopy[b-m66igd4lf2] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--ha-accent);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin: 0 0 0.35rem;
}

.tab-section__title[b-m66igd4lf2] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--ha-text);
    margin: 0 0 0.35rem;
}

.tab-section__desc[b-m66igd4lf2] {
    font-size: 0.875rem;
    color: var(--ha-text-muted);
    margin: 0;
}

/* ── Field helpers ───────────────────────────────────────── */

.field-group[b-m66igd4lf2] {
    display: grid;
    gap: 0.5rem;
}

.field-label[b-m66igd4lf2] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--ha-text-muted);
}

.field-hint[b-m66igd4lf2] {
    font-size: 0.8rem;
    color: var(--ha-text-placeholder);
    margin: 0;
}

.field-row[b-m66igd4lf2] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

/* ── Segmented controls ──────────────────────────────────── */

.segmented-control[b-m66igd4lf2] {
    display: flex;
    border: 1.5px solid var(--ha-border);
    border-radius: var(--ha-radius-md);
    overflow: hidden;
    width: fit-content;
    max-width: 100%;
}

.seg-btn[b-m66igd4lf2] {
    flex: 1 1 auto;
    padding: 0.55rem 1.1rem;
    background: var(--ha-panel);
    border: none;
    border-right: 1px solid var(--ha-border);
    cursor: pointer;
    font-size: 0.875rem;
    font-family: inherit;
    color: var(--ha-text-muted);
    white-space: nowrap;
    min-height: 44px;
    transition: background var(--ha-transition-fast), color var(--ha-transition-fast);
}

.seg-btn:last-child[b-m66igd4lf2] {
    border-right: none;
}

.seg-btn:hover:not(.seg-btn--active)[b-m66igd4lf2] {
    background: var(--ha-surface-hover);
    color: var(--ha-text);
}

.seg-btn--active[b-m66igd4lf2] {
    background: var(--ha-accent);
    color: var(--ha-panel);
    font-weight: 600;
}

.seg-btn:focus-visible[b-m66igd4lf2] {
    outline: 2px solid var(--ha-accent);
    outline-offset: -2px;
}

/* ── Chip / pill selectors ───────────────────────────────── */

.chip-group[b-m66igd4lf2] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
    padding-bottom: 2px;
    -webkit-overflow-scrolling: touch;
}

.chip-group--wrap[b-m66igd4lf2] {
    flex-wrap: wrap;
    overflow-x: visible;
}

.chip-group[b-m66igd4lf2]::-webkit-scrollbar {
    display: none;
}

.chip[b-m66igd4lf2] {
    padding: 0.45rem 0.95rem;
    border: 1.5px solid var(--ha-border);
    border-radius: var(--ha-radius-full);
    background: var(--ha-panel);
    cursor: pointer;
    font-size: 0.875rem;
    font-family: inherit;
    color: var(--ha-text);
    white-space: nowrap;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    transition: all var(--ha-transition-fast);
    flex-shrink: 0;
}

.chip:hover:not(.chip--on)[b-m66igd4lf2] {
    border-color: var(--ha-accent);
    background: var(--ha-surface-hover);
}

.chip--on[b-m66igd4lf2] {
    background: var(--ha-accent-soft);
    border-color: var(--ha-accent);
    color: var(--ha-accent);
    font-weight: 600;
}

.chip--on.chip--danger[b-m66igd4lf2] {
    background: var(--ha-danger-bg);
    border-color: var(--ha-danger);
    color: var(--ha-danger);
}

.chip--on.chip--warning[b-m66igd4lf2] {
    background: var(--ha-warning-bg);
    border-color: var(--ha-warning);
    color: var(--ha-warning);
}

.chip:focus-visible[b-m66igd4lf2] {
    outline: 2px solid var(--ha-accent);
    outline-offset: 2px;
}

/* ── Goal cards — hero selection tiles ───────────────────── */

.goal-cards[b-m66igd4lf2] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 0.75rem;
}

.goal-card[b-m66igd4lf2] {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 1.25rem 0.75rem;
    border: 2px solid var(--ha-border);
    border-radius: 12px;
    cursor: pointer;
    transition: all var(--ha-transition-fast);
    text-align: center;
    background: var(--ha-panel);
    min-height: 120px;
    font-family: inherit;
}

.goal-card:hover[b-m66igd4lf2] {
    border-color: var(--ha-accent);
    background: rgba(15, 108, 189, 0.04);
}

.goal-card--selected[b-m66igd4lf2] {
    border-color: var(--ha-accent);
    background: var(--ha-accent-soft);
}

.goal-card__check[b-m66igd4lf2] {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: var(--ha-accent);
    color: var(--ha-panel);
    font-size: 0.68rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

.goal-card__icon[b-m66igd4lf2] {
    font-size: 2rem;
    line-height: 1;
}

.goal-card__label[b-m66igd4lf2] {
    display: block;
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--ha-text);
}

.goal-card--selected .goal-card__label[b-m66igd4lf2] {
    color: var(--ha-accent);
}

.goal-card__desc[b-m66igd4lf2] {
    display: block;
    font-size: 0.76rem;
    color: var(--ha-text-muted);
    line-height: 1.3;
}

.goal-card--selected .goal-card__desc[b-m66igd4lf2] {
    color: var(--ha-accent);
    opacity: 0.8;
}

.goal-card:focus-visible[b-m66igd4lf2] {
    outline: 2px solid var(--ha-accent);
    outline-offset: 2px;
    border-color: var(--ha-accent);
}

/* ── Diet type cards ─────────────────────────────────────── */

.diet-cards[b-m66igd4lf2] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
    gap: 0.5rem;
}

.diet-card[b-m66igd4lf2] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.3rem;
    padding: 0.75rem 0.5rem;
    border: 1.5px solid var(--ha-border);
    border-radius: var(--ha-radius-md);
    cursor: pointer;
    font-family: inherit;
    background: var(--ha-panel);
    text-align: center;
    transition: all var(--ha-transition-fast);
    min-height: 44px;
}

.diet-card:hover:not(.diet-card--selected)[b-m66igd4lf2] {
    border-color: var(--ha-accent);
    background: var(--ha-surface-hover);
}

.diet-card--selected[b-m66igd4lf2] {
    border-color: var(--ha-accent);
    background: var(--ha-accent-soft);
}

.diet-card__icon[b-m66igd4lf2] {
    font-size: 1.5rem;
}

.diet-card__label[b-m66igd4lf2] {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--ha-text);
}

.diet-card--selected .diet-card__label[b-m66igd4lf2] {
    color: var(--ha-accent);
}

.diet-card:focus-visible[b-m66igd4lf2] {
    outline: 2px solid var(--ha-accent);
    outline-offset: 2px;
}

/* ── Shared field component ──────────────────────────────── */

.profile-select-field[b-m66igd4lf2] {
    display: grid;
    gap: 0.35rem;
}

/* ── Basics / lifestyle grids ────────────────────────────── */

.basics-grid[b-m66igd4lf2] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}

.lifestyle-grid[b-m66igd4lf2] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
}

/* ── Bottom nav bar ──────────────────────────────────────── */

.profile-nav-bar[b-m66igd4lf2] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.75rem;
    margin-top: 1rem;
}

.profile-nav-bar__right[b-m66igd4lf2] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    justify-content: flex-end;
}

/* ── Optional badge ──────────────────────────────────────── */

.optional-badge[b-m66igd4lf2] {
    font-weight: 400;
    font-size: 0.82rem;
    color: var(--ha-text-muted);
}

/* ── Responsive ──────────────────────────────────────────── */

@media (max-width: 768px) {
    .field-row[b-m66igd4lf2] {
        grid-template-columns: 1fr;
    }

    .basics-grid[b-m66igd4lf2] {
        grid-template-columns: 1fr;
    }

    .lifestyle-grid[b-m66igd4lf2] {
        grid-template-columns: repeat(2, 1fr);
    }

    .wizard-stepper__step[b-m66igd4lf2] {
        min-width: 52px;
    }

    .wizard-stepper__circle[b-m66igd4lf2] {
        width: 32px;
        height: 32px;
        font-size: 0.8rem;
    }

    .wizard-stepper__connector[b-m66igd4lf2] {
        margin-bottom: 1.15rem;
    }

    .profile-panel__content[b-m66igd4lf2] {
        padding: 1.25rem;
    }
}

@media (max-width: 480px) {
    .wizard-stepper__label[b-m66igd4lf2] {
        display: none;
    }

    .wizard-stepper__step[b-m66igd4lf2] {
        min-width: 40px;
    }

    .wizard-stepper__circle[b-m66igd4lf2] {
        width: 30px;
        height: 30px;
        font-size: 0.75rem;
    }

    .wizard-stepper__connector[b-m66igd4lf2] {
        margin-top: 15px;
        min-width: 12px;
    }

    .lifestyle-grid[b-m66igd4lf2] {
        grid-template-columns: 1fr;
    }

    .segmented-control[b-m66igd4lf2] {
        width: 100%;
    }

    .seg-btn[b-m66igd4lf2] {
        padding: 0.55rem 0.75rem;
        font-size: 0.82rem;
    }

    .profile-panel__content[b-m66igd4lf2] {
        padding: 1rem;
    }

    .goal-cards[b-m66igd4lf2] {
        grid-template-columns: repeat(2, 1fr);
        gap: 0.75rem;
    }

    .goal-card[b-m66igd4lf2] {
        padding: 1.1rem 0.75rem;
        min-height: 110px;
    }

    .goal-card__icon[b-m66igd4lf2] {
        font-size: 2rem;
    }

    .diet-cards[b-m66igd4lf2] {
        grid-template-columns: repeat(3, 1fr);
    }
}
/* /Pages/PaceZones.razor.rz.scp.css */
.running-form[b-adbtpeq2i5] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1rem;
    margin: 1rem 0;
}

.running-form__field[b-adbtpeq2i5] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.running-form__label[b-adbtpeq2i5] {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
}

.zone-section-title[b-adbtpeq2i5] {
    margin-top: 1.25rem;
    margin-bottom: 0.5rem;
    font-size: 1rem;
    font-weight: 600;
}

.zone-table-wrapper[b-adbtpeq2i5] {
    overflow-x: auto;
}

.zone-table[b-adbtpeq2i5] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.9rem;
}

.zone-table th[b-adbtpeq2i5] {
    text-align: left;
    padding: 0.5rem 0.75rem;
    border-bottom: 2px solid var(--ha-border);
    color: var(--ha-text-muted);
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.zone-table td[b-adbtpeq2i5] {
    padding: 0.5rem 0.75rem;
    border-bottom: 1px solid var(--ha-border);
}

.zone-row[b-adbtpeq2i5] {
    border-left: 3px solid transparent;
}

.zone-row--1[b-adbtpeq2i5] { border-left-color: var(--ha-accent); }
.zone-row--2[b-adbtpeq2i5] { border-left-color: var(--ha-success); }
.zone-row--3[b-adbtpeq2i5] { border-left-color: var(--ha-warning); }
.zone-row--4[b-adbtpeq2i5] { border-left-color: var(--ha-warning); }
.zone-row--5[b-adbtpeq2i5] { border-left-color: var(--ha-danger); }

@media (max-width: 480px) {
    .running-form[b-adbtpeq2i5] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/PlanHistory.razor.rz.scp.css */
/* ── Plan History Page ─────────────────────────── */

.calendar-grid table[b-0a7utiy2td] {
    font-size: 0.85rem;
}

.calendar-grid td div[b-0a7utiy2td] {
    margin-bottom: 0.25rem;
}
/* /Pages/PlateCalculator.razor.rz.scp.css */
.plate-calc-controls[b-26l6905ze1]
{
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem;
    margin-bottom: 1.25rem;
}

.plate-calc-field[b-26l6905ze1]
{
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.plate-calc-label[b-26l6905ze1]
{
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--ha-text);
}

.plate-calc-input-row[b-26l6905ze1]
{
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.plate-calc-input[b-26l6905ze1]
{
    width: 8rem;
    padding: 0.5rem 0.65rem;
    border: 1px solid var(--ha-border);
    border-radius: 0.5rem;
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--ha-text);
    background: var(--ha-panel-alt);
    transition: border-color 0.15s;
    box-sizing: border-box;
}

.plate-calc-input:focus[b-26l6905ze1]
{
    outline: none;
    border-color: var(--ha-accent);
    background: var(--ha-panel);
}

.plate-calc-unit-toggle[b-26l6905ze1]
{
    display: flex;
    border: 1px solid var(--ha-border);
    border-radius: 0.5rem;
    overflow: hidden;
}

.unit-btn[b-26l6905ze1]
{
    padding: 0.4rem 0.7rem;
    border: none;
    background: var(--ha-panel-alt);
    color: var(--ha-text-muted);
    font-size: 0.85rem;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.12s, color 0.12s;
}

.unit-btn:hover[b-26l6905ze1] { background: var(--ha-accent-soft); color: var(--ha-accent); }
.unit-btn--active[b-26l6905ze1] { background: var(--ha-accent); color: var(--ha-panel); font-weight: 600; }

.plate-calc-bar-btns[b-26l6905ze1]
{
    display: flex;
    gap: 0.4rem;
}

.bar-btn[b-26l6905ze1]
{
    padding: 0.4rem 0.75rem;
    border: 1px solid var(--ha-border);
    border-radius: 0.5rem;
    background: var(--ha-panel-alt);
    color: var(--ha-text-muted);
    font-size: 0.85rem;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.12s, border-color 0.12s, color 0.12s;
}

.bar-btn:hover[b-26l6905ze1] { background: var(--ha-accent-soft); border-color: var(--ha-accent); color: var(--ha-accent); }
.bar-btn--active[b-26l6905ze1] { background: var(--ha-accent); border-color: var(--ha-accent); color: var(--ha-panel); font-weight: 600; }

/* ── Plate result ──────────────────────────────────────────────── */
.plate-result[b-26l6905ze1]
{
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: linear-gradient(135deg, var(--ha-success-bg) 0%, var(--ha-success-bg) 100%);
    border: 1px solid var(--ha-success-border);
    border-radius: 0.85rem;
}

.plate-result__summary[b-26l6905ze1]
{
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
}

.plate-result__label[b-26l6905ze1]
{
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--ha-success);
}

.plate-result__empty[b-26l6905ze1]
{
    font-size: 0.9rem;
    color: var(--ha-text-muted);
}

.plate-result__meta[b-26l6905ze1]
{
    font-size: 0.82rem;
    color: var(--ha-text-muted);
    margin: 0;
}

.plate-result__note[b-26l6905ze1]
{
    color: var(--ha-warning);
}

/* ── Plate disc stack ──────────────────────────────────────────── */
.plate-stack[b-26l6905ze1]
{
    display: flex;
    align-items: center;
    gap: 0.3rem;
    flex-wrap: wrap;
}

.plate-disc[b-26l6905ze1]
{
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.72rem;
    font-weight: 700;
    border-radius: 0.3rem;
    min-width: 2.5rem;
    min-height: 3.5rem;
    padding: 0 0.3rem;
    cursor: default;
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.15), 0 1px 3px rgba(0,0,0,0.1);
    border: 2px solid rgba(0,0,0,0.1);
}

.plate-disc--red[b-26l6905ze1]    { background: var(--ha-danger); color: var(--ha-panel); }
.plate-disc--blue[b-26l6905ze1]   { background: var(--ha-accent); color: var(--ha-panel); }
.plate-disc--yellow[b-26l6905ze1] { background: var(--ha-warning); color: var(--ha-text); }
.plate-disc--green[b-26l6905ze1]  { background: var(--ha-success); color: var(--ha-panel); }
.plate-disc--white[b-26l6905ze1]  { background: var(--ha-bg); color: var(--ha-text); border-color: var(--ha-border); }
.plate-disc--gray[b-26l6905ze1]   { background: var(--ha-text-muted); color: var(--ha-panel); }

/* ── Quick picks ───────────────────────────────────────────────── */
.plate-quick-picks[b-26l6905ze1]
{
    margin-top: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.plate-quick-label[b-26l6905ze1]
{
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--ha-text-muted);
    margin: 0;
}

.plate-quick-buttons[b-26l6905ze1]
{
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.quick-btn[b-26l6905ze1]
{
    padding: 0.3rem 0.65rem;
    border: 1px solid var(--ha-border);
    border-radius: 0.4rem;
    background: var(--ha-panel-alt);
    color: var(--ha-text-muted);
    font-size: 0.8rem;
    cursor: pointer;
    transition: background 0.12s, border-color 0.12s, color 0.12s;
}

.quick-btn:hover[b-26l6905ze1]
{
    background: var(--ha-accent-soft);
    border-color: var(--ha-accent);
    color: var(--ha-accent);
}

@media (max-width: 480px)
{
    .plate-calc-controls[b-26l6905ze1]
    {
        flex-direction: column;
        gap: 1rem;
    }

    .plate-calc-input[b-26l6905ze1]
    {
        width: 100%;
        max-width: 10rem;
    }

    .plate-calc-bar-btns[b-26l6905ze1]
    {
        flex-wrap: wrap;
    }

    .bar-btn[b-26l6905ze1],
    .unit-btn[b-26l6905ze1]
    {
        min-height: 2.5rem;
        padding: 0.5rem 0.85rem;
    }

    .quick-btn[b-26l6905ze1]
    {
        min-height: 2.5rem;
        padding: 0.45rem 0.75rem;
    }

    .plate-disc[b-26l6905ze1]
    {
        min-width: 2.2rem;
        min-height: 3rem;
        font-size: 0.65rem;
    }
}
/* /Pages/Pricing.razor.rz.scp.css */
.pricing-toggle[b-aj9ic1u26u] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    margin-bottom: 1.5rem;
    font-size: 0.95rem;
    color: var(--ha-text-muted);
}

.pricing-toggle__active[b-aj9ic1u26u] {
    font-weight: 600;
    color: var(--ha-text);
}

.pricing-toggle__badge[b-aj9ic1u26u] {
    display: inline-block;
    background: var(--ha-success-bg);
    color: var(--ha-success-emphasis);
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.15rem 0.5rem;
    border-radius: 999px;
    margin-left: 0.25rem;
}

.pricing-grid[b-aj9ic1u26u] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 1.25rem;
    margin-bottom: 1.5rem;
}

.pricing-card[b-aj9ic1u26u] {
    display: flex;
    flex-direction: column;
    padding: 1.5rem;
    border-radius: 0.75rem;
    border: 1px solid var(--ha-border);
    background: linear-gradient(135deg, var(--ha-bg) 0%, var(--ha-panel) 100%);
}

.pricing-card h2[b-aj9ic1u26u] {
    margin: 0 0 0.75rem;
    font-size: 1.15rem;
}

.pricing-card--bundle[b-aj9ic1u26u] {
    border-color: var(--ha-accent-emphasis);
    background: linear-gradient(135deg, var(--ha-accent-bg) 0%, var(--ha-panel) 100%);
    position: relative;
}

.pricing-card--subscribed[b-aj9ic1u26u] {
    border-color: var(--ha-success-emphasis);
    background: linear-gradient(135deg, var(--ha-success-bg) 0%, var(--ha-panel) 100%);
}

.pricing-card__badge[b-aj9ic1u26u] {
    position: absolute;
    top: -0.6rem;
    right: 1rem;
    background: var(--ha-accent-emphasis);
    color: var(--ha-panel);
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.2rem 0.65rem;
    border-radius: 999px;
}

.pricing-card__price[b-aj9ic1u26u] {
    margin-bottom: 1rem;
}

.pricing-card__amount[b-aj9ic1u26u] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--ha-text);
}

.pricing-card__interval[b-aj9ic1u26u] {
    font-size: 0.9rem;
    color: var(--ha-text-muted);
}

.pricing-card__features[b-aj9ic1u26u] {
    list-style: none;
    padding: 0;
    margin: 0 0 1.25rem;
    flex: 1;
}

.pricing-card__features li[b-aj9ic1u26u] {
    padding: 0.3rem 0;
    font-size: 0.9rem;
    color: var(--ha-text-muted);
}

@media (max-width: 480px) {
    .pricing-grid[b-aj9ic1u26u] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/Privacy.razor.rz.scp.css */
.privacy-statement[b-9kjz4kaxfd] {
    line-height: 1.7;
}

.privacy-effective[b-9kjz4kaxfd] {
    font-size: 0.85rem;
    color: var(--ha-text-muted);
    margin-bottom: 1.5rem;
}

.privacy-section[b-9kjz4kaxfd] {
    margin-bottom: 1.75rem;
}

.privacy-section:last-child[b-9kjz4kaxfd] {
    margin-bottom: 0;
}

.privacy-section h3[b-9kjz4kaxfd] {
    font-size: 1.05rem;
    margin: 0 0 0.5rem;
    color: var(--ha-text);
}

.privacy-section p[b-9kjz4kaxfd] {
    margin: 0 0 0.5rem;
    font-size: 0.92rem;
    color: var(--ha-text);
}

.privacy-section ul[b-9kjz4kaxfd] {
    margin: 0.25rem 0 0.5rem 1.25rem;
    padding: 0;
    font-size: 0.92rem;
    color: var(--ha-text);
}

.privacy-section ul li[b-9kjz4kaxfd] {
    margin-bottom: 0.3rem;
}

.privacy-section a[b-9kjz4kaxfd] {
    color: var(--ha-accent-emphasis);
    text-decoration: none;
}

.privacy-section a:hover[b-9kjz4kaxfd] {
    text-decoration: underline;
}

.privacy-actions-card[b-9kjz4kaxfd] {
    margin-top: 1.25rem;
}

.delete-confirm[b-9kjz4kaxfd] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: var(--ha-danger-bg);
    border: 1px solid var(--ha-danger-border);
    border-radius: 14px;
}

.delete-confirm__warning[b-9kjz4kaxfd] {
    flex: 1 1 200px;
    font-weight: 600;
    color: var(--ha-danger);
    font-size: 0.9rem;
}
/* /Pages/ProgressDashboard.razor.rz.scp.css */
.progress-dashboard[b-tu42e3pzs6] {
    gap: 1.25rem;
}

.progress-dashboard__grid[b-tu42e3pzs6] {
    align-items: start;
}

.progress-chart[b-tu42e3pzs6] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(72px, 1fr));
    gap: 0.75rem;
    align-items: end;
    margin-top: 1rem;
}

.progress-chart__item[b-tu42e3pzs6] {
    display: grid;
    gap: 0.5rem;
    justify-items: center;
}

.progress-chart__value[b-tu42e3pzs6],
.progress-chart__label[b-tu42e3pzs6] {
    font-size: 0.85rem;
}

.progress-chart__value[b-tu42e3pzs6] {
    font-weight: 700;
}

.progress-chart__label[b-tu42e3pzs6] {
    color: var(--ha-text-muted);
    text-align: center;
}

.progress-chart__track[b-tu42e3pzs6] {
    display: flex;
    align-items: end;
    width: 100%;
    min-height: 140px;
    padding: 0.5rem;
    border-radius: 18px;
    background: linear-gradient(180deg, var(--ha-bg) 0%, var(--ha-panel-alt) 100%);
    border: 1px solid var(--ha-border);
    box-sizing: border-box;
}

.progress-chart__bar[b-tu42e3pzs6] {
    width: 100%;
    border-radius: 14px 14px 10px 10px;
    min-height: 12%;
    background: linear-gradient(180deg, var(--ha-accent-soft) 0%, var(--ha-accent) 100%);
}

.progress-chart__bar--accent[b-tu42e3pzs6] {
    background: linear-gradient(180deg, var(--ha-accent-soft) 0%, var(--ha-accent) 100%);
}

.progress-chart__bar--success[b-tu42e3pzs6] {
    background: linear-gradient(180deg, var(--ha-success-soft) 0%, var(--ha-success) 100%);
}

.progress-chart__bar--neutral[b-tu42e3pzs6] {
    background: linear-gradient(180deg, var(--ha-surface-subtle) 0%, var(--ha-text-muted) 100%);
}

.progress-week-list[b-tu42e3pzs6] {
    display: grid;
    gap: 1rem;
}

.progress-week-card[b-tu42e3pzs6] {
    display: grid;
    gap: 0.875rem;
    padding: 1rem;
    border-radius: 18px;
    background: var(--ha-accent-bg);
    border: 1px solid var(--ha-border);
}

.progress-week-card__header[b-tu42e3pzs6] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: start;
}

.progress-week-card__header h3[b-tu42e3pzs6] {
    margin-bottom: 0.35rem;
}

@media (max-width: 900px) {
    .progress-chart[b-tu42e3pzs6] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .progress-week-card__header[b-tu42e3pzs6] {
        flex-direction: column;
    }
}

@media (max-width: 480px) {
    .progress-chart[b-tu42e3pzs6] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .volume-chart[b-tu42e3pzs6],
    .load-chart[b-tu42e3pzs6] {
        max-width: 100%;
    }

    .progress-week-card[b-tu42e3pzs6] {
        padding: 0.75rem;
    }

    .overreach-alert[b-tu42e3pzs6] {
        flex-direction: column;
        gap: 0.5rem;
    }
}

/* WE15: Volume by muscle stacked bar chart */

.volume-chart-container[b-tu42e3pzs6] {
    margin: 0.75rem 0 0.5rem;
    overflow-x: auto;
}

.volume-chart[b-tu42e3pzs6] {
    width: 100%;
    max-width: 520px;
    height: auto;
    display: block;
}

.volume-legend[b-tu42e3pzs6] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1rem;
    margin-top: 0.5rem;
}

.volume-legend__item[b-tu42e3pzs6] {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.78rem;
    color: var(--ha-text-muted);
}

.volume-legend__dot[b-tu42e3pzs6] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    flex-shrink: 0;
}

/* WE17: Training load chart */

.load-chart-container[b-tu42e3pzs6] {
    margin: 0.75rem 0 0;
    overflow-x: auto;
}

.load-chart[b-tu42e3pzs6] {
    width: 100%;
    max-width: 520px;
    height: auto;
    display: block;
}

.overreach-alert[b-tu42e3pzs6] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.85rem 1rem;
    border: 1px solid var(--ha-danger-border);
    border-radius: 0.75rem;
    background: var(--ha-danger-bg);
}

.overreach-alert__icon[b-tu42e3pzs6] {
    font-size: 1.25rem;
    flex-shrink: 0;
}

.overreach-alert strong[b-tu42e3pzs6] {
    font-size: 0.9rem;
    color: var(--ha-danger);
}

.overreach-alert p[b-tu42e3pzs6] {
    margin: 0.2rem 0 0;
    font-size: 0.82rem;
    color: var(--ha-danger);
}
/* /Pages/ProgressPhotos.razor.rz.scp.css */
.page-hero[b-e2jctcpnrn] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1.5rem;
    gap: 1rem;
    flex-wrap: wrap;
}

.page-title[b-e2jctcpnrn] {
    font-size: 1.75rem;
    font-weight: 700;
    margin: 0 0 0.25rem;
    color: var(--neutral-foreground-rest);
}

.page-subtitle[b-e2jctcpnrn] {
    margin: 0;
    color: var(--neutral-foreground-hint);
    font-size: 0.95rem;
}

/* Upload panel */
.upload-card[b-e2jctcpnrn] {
    margin-bottom: 1.5rem;
    padding: 1.5rem;
}

.upload-card h3[b-e2jctcpnrn] {
    margin: 0 0 0.5rem;
    font-size: 1.1rem;
    font-weight: 600;
}

/* Upload mode tabs */
.upload-mode-tabs[b-e2jctcpnrn] {
    display: flex;
    gap: 0;
    margin-bottom: 1rem;
    border: 1px solid var(--neutral-stroke-rest);
    border-radius: 6px;
    overflow: hidden;
    width: fit-content;
}

.upload-mode-tab[b-e2jctcpnrn] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.5rem 1rem;
    border: none;
    background: var(--neutral-fill-rest);
    color: var(--neutral-foreground-hint);
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
}

.upload-mode-tab:hover[b-e2jctcpnrn] {
    background: var(--neutral-fill-stealth-hover);
}

.upload-mode-tab--active[b-e2jctcpnrn] {
    background: var(--accent-fill-rest, var(--ha-accent));
    color: var(--ha-panel);
}

.upload-mode-tab--active:hover[b-e2jctcpnrn] {
    background: var(--accent-fill-hover, var(--ha-accent));
    color: var(--ha-panel);
}

/* Drop zone */
.drop-zone[b-e2jctcpnrn] {
    position: relative;
    border: 2px dashed var(--neutral-stroke-rest);
    border-radius: 8px;
    background: var(--neutral-fill-secondary-rest);
    transition: border-color 0.2s, background 0.2s;
    cursor: pointer;
    min-height: 160px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.drop-zone:hover[b-e2jctcpnrn] {
    border-color: var(--accent-fill-rest, var(--ha-accent));
    background: var(--neutral-fill-stealth-hover);
}

.drop-zone--active[b-e2jctcpnrn] {
    border-color: var(--accent-fill-rest, var(--ha-accent));
    background: rgba(0, 120, 212, 0.06);
    border-style: solid;
}

.drop-zone--has-file[b-e2jctcpnrn] {
    border-style: solid;
    border-color: var(--accent-fill-rest, var(--ha-accent));
    min-height: auto;
}

.drop-zone__content[b-e2jctcpnrn] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.4rem;
    padding: 2rem 1rem;
    pointer-events: none;
}

.drop-zone__icon[b-e2jctcpnrn] {
    color: var(--neutral-foreground-hint);
    opacity: 0.6;
}

.drop-zone__text[b-e2jctcpnrn] {
    margin: 0;
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--neutral-foreground-rest);
}

.drop-zone__hint[b-e2jctcpnrn] {
    margin: 0;
    font-size: 0.8rem;
    color: var(--neutral-foreground-hint);
}

.drop-zone__input[b-e2jctcpnrn] {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
    width: 100%;
    height: 100%;
}

/* File preview inside drop zone */
.drop-zone__preview[b-e2jctcpnrn] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    width: 100%;
}

.drop-zone__preview-image[b-e2jctcpnrn] {
    width: 64px;
    height: 64px;
    object-fit: cover;
    border-radius: 6px;
    border: 1px solid var(--neutral-stroke-rest);
    flex-shrink: 0;
}

.drop-zone__file-info[b-e2jctcpnrn] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    min-width: 0;
    flex: 1;
}

.drop-zone__filename[b-e2jctcpnrn] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--neutral-foreground-rest);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.drop-zone__filesize[b-e2jctcpnrn] {
    font-size: 0.8rem;
    color: var(--neutral-foreground-hint);
}

.drop-zone__remove[b-e2jctcpnrn] {
    flex-shrink: 0;
    z-index: 1;
}

/* Upload progress */
.upload-progress[b-e2jctcpnrn] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: var(--neutral-foreground-hint);
}

.upload-hint[b-e2jctcpnrn] {
    margin: 0 0 1rem;
    color: var(--neutral-foreground-hint);
    font-size: 0.875rem;
}

.upload-form[b-e2jctcpnrn] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.upload-form__row[b-e2jctcpnrn] {
    display: flex;
    gap: 1rem;
    align-items: flex-end;
    flex-wrap: wrap;
}

.field-label[b-e2jctcpnrn] {
    display: block;
    font-size: 0.875rem;
    font-weight: 600;
    margin-bottom: 0.25rem;
    color: var(--neutral-foreground-rest);
}

.fluent-date-input[b-e2jctcpnrn] {
    height: 32px;
    padding: 0 0.75rem;
    border: 1px solid var(--neutral-stroke-rest);
    border-radius: 4px;
    font-size: 0.875rem;
    background: var(--neutral-fill-input-rest);
    color: var(--neutral-foreground-rest);
    min-width: 160px;
}

.upload-form__actions[b-e2jctcpnrn] {
    display: flex;
    gap: 0.75rem;
    justify-content: flex-end;
}

/* Filter row */
.filter-row[b-e2jctcpnrn] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.25rem;
    flex-wrap: wrap;
}

.photo-count[b-e2jctcpnrn] {
    font-size: 0.875rem;
    color: var(--neutral-foreground-hint);
}

/* Year / month headers */
.year-header[b-e2jctcpnrn] {
    font-size: 1.4rem;
    font-weight: 700;
    margin: 1.5rem 0 0.5rem;
    color: var(--neutral-foreground-rest);
    border-bottom: 2px solid var(--neutral-stroke-rest);
    padding-bottom: 0.25rem;
}

.month-header[b-e2jctcpnrn] {
    font-size: 1rem;
    font-weight: 600;
    margin: 1rem 0 0.75rem;
    color: var(--neutral-foreground-hint);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

/* Photo grid */
.photo-grid[b-e2jctcpnrn] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 1rem;
    margin-bottom: 1rem;
}

.photo-card[b-e2jctcpnrn] {
    border: 1px solid var(--neutral-stroke-rest);
    border-radius: 8px;
    overflow: hidden;
    background: var(--neutral-fill-rest);
    transition: box-shadow 0.15s;
}

.photo-card:hover[b-e2jctcpnrn] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}

.photo-card__image-wrap[b-e2jctcpnrn] {
    position: relative;
    aspect-ratio: 3/4;
    background: var(--neutral-fill-secondary-rest);
    overflow: hidden;
}

.photo-card__image-button[b-e2jctcpnrn] {
    width: 100%;
    height: 100%;
    padding: 0;
    border: none;
    background: none;
    cursor: pointer;
    display: block;
}

.photo-card__image-button:focus-visible[b-e2jctcpnrn] {
    outline: 2px solid var(--accent-fill-rest, var(--ha-accent));
    outline-offset: -2px;
}

.photo-card__image-wrap--broken[b-e2jctcpnrn]::after {
    content: "⚠ Image unavailable";
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    color: var(--neutral-foreground-hint);
    background: var(--neutral-fill-secondary-rest);
}

.photo-card__image[b-e2jctcpnrn] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.photo-card__angle-badge[b-e2jctcpnrn] {
    position: absolute;
    top: 0.5rem;
    right: 0.5rem;
    background: rgba(0, 0, 0, 0.55);
    color: var(--ha-panel);
    font-size: 0.7rem;
    font-weight: 600;
    padding: 0.2rem 0.5rem;
    border-radius: 999px;
    backdrop-filter: blur(4px);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.photo-card__meta[b-e2jctcpnrn] {
    padding: 0.75rem;
}

.photo-card__date[b-e2jctcpnrn] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--neutral-foreground-rest);
    display: block;
    margin-bottom: 0.25rem;
}

.photo-card__notes[b-e2jctcpnrn] {
    font-size: 0.8rem;
    color: var(--neutral-foreground-hint);
    margin: 0.25rem 0;
    line-height: 1.4;
}

.photo-card__delete-btn[b-e2jctcpnrn] {
    margin-top: 0.5rem;
    font-size: 0.8rem;
    color: var(--error-foreground-rest, var(--ha-danger));
    opacity: 0;
    transition: opacity 0.15s;
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.photo-card:hover .photo-card__delete-btn[b-e2jctcpnrn] {
    opacity: 1;
}

.photo-viewer__overlay[b-e2jctcpnrn] {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: rgba(15, 23, 42, 0.82);
    overscroll-behavior: contain;
}

.photo-viewer__dialog[b-e2jctcpnrn] {
    width: min(96vw, 1100px);
    max-height: min(92vh, 92dvh);
    display: flex;
    flex-direction: column;
    border: 1px solid var(--neutral-stroke-rest);
    border-radius: 16px;
    background: var(--ha-panel, var(--neutral-fill-rest));
    box-shadow: 0 24px 48px rgba(15, 23, 42, 0.28);
    overflow: hidden;
}

.photo-viewer__dialog:focus-visible[b-e2jctcpnrn] {
    outline: 2px solid var(--accent-fill-rest, var(--ha-accent));
    outline-offset: 2px;
}

.photo-viewer__header[b-e2jctcpnrn] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--neutral-stroke-rest);
}

.photo-viewer__eyebrow[b-e2jctcpnrn] {
    margin: 0 0 0.25rem;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--neutral-foreground-hint);
}

.photo-viewer__title[b-e2jctcpnrn] {
    margin: 0;
    font-size: 1.15rem;
    color: var(--neutral-foreground-rest);
}

.photo-viewer__close-button[b-e2jctcpnrn] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border: 1px solid var(--neutral-stroke-rest);
    border-radius: 999px;
    background: var(--neutral-fill-secondary-rest);
    color: var(--neutral-foreground-rest);
    cursor: pointer;
    flex-shrink: 0;
}

.photo-viewer__close-button:hover[b-e2jctcpnrn] {
    background: var(--neutral-fill-stealth-hover);
}

.photo-viewer__close-button:focus-visible[b-e2jctcpnrn] {
    outline: 2px solid var(--accent-fill-rest, var(--ha-accent));
    outline-offset: 2px;
}

.photo-viewer__stage[b-e2jctcpnrn] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: var(--neutral-fill-secondary-rest);
    min-height: 0;
    overflow: auto;
}

.photo-viewer__image[b-e2jctcpnrn] {
    display: block;
    max-width: 100%;
    max-height: min(72vh, calc(100dvh - 14rem));
    width: auto;
    height: auto;
    object-fit: contain;
    border-radius: 12px;
}

.photo-viewer__meta[b-e2jctcpnrn] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1rem;
    padding: 1rem 1.25rem 1.25rem;
    color: var(--neutral-foreground-hint);
    font-size: 0.9rem;
}

.photo-viewer__filename[b-e2jctcpnrn] {
    font-weight: 600;
    color: var(--neutral-foreground-rest);
}

.photo-viewer__details[b-e2jctcpnrn] {
    white-space: nowrap;
}

.photo-viewer__notes[b-e2jctcpnrn] {
    width: 100%;
    margin: 0;
    line-height: 1.5;
}

/* Empty state */
.empty-state-card[b-e2jctcpnrn] {
    text-align: center;
    padding: 3rem 2rem;
    border: 2px dashed var(--neutral-stroke-rest);
    border-radius: 12px;
    color: var(--neutral-foreground-hint);
}

.empty-state-card p[b-e2jctcpnrn] {
    margin: 0.75rem 0 0;
    font-size: 0.95rem;
}

/* Mobile responsiveness */
@media (max-width: 480px) {
    .upload-mode-tabs[b-e2jctcpnrn] {
        width: 100%;
    }

    .upload-mode-tab[b-e2jctcpnrn] {
        flex: 1;
        justify-content: center;
    }

    .drop-zone__preview[b-e2jctcpnrn] {
        flex-direction: column;
        text-align: center;
    }

    .drop-zone__preview-image[b-e2jctcpnrn] {
        width: 80px;
        height: 80px;
    }

    .drop-zone__file-info[b-e2jctcpnrn] {
        align-items: center;
    }

    .drop-zone__filename[b-e2jctcpnrn] {
        text-align: center;
    }

    .upload-form__row[b-e2jctcpnrn] {
        flex-direction: column;
    }

    .photo-viewer__overlay[b-e2jctcpnrn] {
        padding: 0.75rem;
    }

    .photo-viewer__header[b-e2jctcpnrn],
    .photo-viewer__meta[b-e2jctcpnrn] {
        padding-inline: 1rem;
    }

    .photo-viewer__image[b-e2jctcpnrn] {
        max-height: min(60vh, calc(100dvh - 12rem));
    }
}

@media (max-width: 768px) and (orientation: landscape) {
    .photo-viewer__overlay[b-e2jctcpnrn] {
        padding: 0.5rem;
    }

    .photo-viewer__dialog[b-e2jctcpnrn] {
        width: min(98vw, 980px);
        max-height: min(96vh, 96dvh);
    }

    .photo-viewer__header[b-e2jctcpnrn],
    .photo-viewer__meta[b-e2jctcpnrn] {
        padding: 0.75rem 1rem;
    }

    .photo-viewer__stage[b-e2jctcpnrn] {
        padding: 0.75rem;
    }

    .photo-viewer__image[b-e2jctcpnrn] {
        max-height: calc(100dvh - 9.5rem);
    }
}
/* /Pages/RaceDayPlan.razor.rz.scp.css */
/* ─── Form (reuses running-form pattern) ─── */

.running-form[b-lvy341gp9n] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1rem;
    margin: 1rem 0;
}

.running-form__field[b-lvy341gp9n] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.running-form__label[b-lvy341gp9n] {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
}

@media (max-width: 480px) {
    .running-form[b-lvy341gp9n] {
        grid-template-columns: 1fr;
    }
}

/* ─── Race plan meta tags ─── */

.race-plan-meta[b-lvy341gp9n] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1.25rem;
}

.race-plan-meta__tag[b-lvy341gp9n] {
    display: inline-block;
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    background: var(--ha-accent-subtle, rgba(9, 105, 218, 0.08));
    color: var(--ha-accent, var(--ha-accent-emphasis));
    font-size: 0.8rem;
    font-weight: 600;
}

/* ─── Strategy sections ─── */

.race-plan-sections[b-lvy341gp9n] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.race-plan-section[b-lvy341gp9n] {
    padding: 1rem 1.25rem;
    border-radius: 12px;
    background: var(--ha-panel-alt, var(--ha-surface-subtle));
    border: 1px solid var(--ha-border, var(--ha-border));
}

.race-plan-section__title[b-lvy341gp9n] {
    font-size: 1rem;
    font-weight: 700;
    margin: 0 0 0.6rem 0;
    color: var(--ha-text, var(--ha-text));
    padding-bottom: 0.35rem;
    border-bottom: 2px solid var(--ha-accent, var(--ha-accent-emphasis));
    display: inline-block;
}

.race-plan-section__body[b-lvy341gp9n] {
    font-size: 0.9rem;
    line-height: 1.6;
    color: var(--ha-text, var(--ha-text));
}

/* ─── Content blocks ─── */

.race-plan-list[b-lvy341gp9n] {
    margin: 0.4rem 0 0.4rem 1.25rem;
    padding: 0;
    list-style-type: disc;
}

.race-plan-list li[b-lvy341gp9n] {
    margin-bottom: 0.25rem;
    line-height: 1.5;
}

.race-plan-para[b-lvy341gp9n] {
    margin: 0.35rem 0;
    line-height: 1.6;
}
/* /Pages/RacePredictor.razor.rz.scp.css */
.predictor-form[b-u85dkmc64f] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    max-width: 480px;
}

.predictor-field[b-u85dkmc64f] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.predictor-label[b-u85dkmc64f] {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
}

.predictor-input[b-u85dkmc64f] {
    padding: 0.5rem 0.75rem;
    border-radius: 0.5rem;
    border: 1px solid var(--ha-border, var(--ha-border));
    font-size: 0.9rem;
    background: var(--ha-panel, var(--ha-panel));
}

.predictor-input:focus[b-u85dkmc64f] {
    outline: none;
    border-color: var(--ha-accent, var(--ha-accent-emphasis));
    box-shadow: 0 0 0 3px rgba(9, 105, 218, 0.15);
}

.predictor-time-row[b-u85dkmc64f] {
    display: flex;
    gap: 0.5rem;
}

.predictor-time-unit[b-u85dkmc64f] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.predictor-time-unit .predictor-input[b-u85dkmc64f] {
    width: 60px;
    text-align: center;
}

.predictor-time-label[b-u85dkmc64f] {
    font-size: 0.8rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.prediction-grid[b-u85dkmc64f] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 0.75rem;
    margin-top: 1rem;
}

.prediction-card[b-u85dkmc64f] {
    padding: 1rem;
    border-radius: 0.75rem;
    background: linear-gradient(135deg, var(--ha-bg) 0%, var(--ha-panel) 100%);
    border: 1px solid var(--ha-border, var(--ha-border));
    text-align: center;
}

.prediction-card--source[b-u85dkmc64f] {
    border-color: var(--ha-accent, var(--ha-accent-emphasis));
    background: linear-gradient(135deg, var(--ha-accent-soft) 0%, var(--ha-accent-bg) 100%);
}

.prediction-card__distance[b-u85dkmc64f] {
    display: block;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--ha-text-muted, var(--ha-text-muted));
    margin-bottom: 0.3rem;
}

.prediction-card__time[b-u85dkmc64f] {
    display: block;
    font-size: 1.4rem;
    font-weight: 700;
    color: var(--ha-text, var(--ha-text));
}

.prediction-card__pace[b-u85dkmc64f] {
    display: block;
    font-size: 0.8rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    margin-top: 0.2rem;
}

@media (max-width: 480px) {
    .prediction-grid[b-u85dkmc64f] {
        grid-template-columns: repeat(2, 1fr);
    }
}
/* /Pages/ResetPassword.razor.rz.scp.css */
/* Password field with visibility toggle */
.password-field-wrapper[b-reluq8n7w1] {
    position: relative;
}

.password-toggle[b-reluq8n7w1] {
    position: absolute;
    right: 4px;
    top: 26px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 4px 6px;
    font-size: 1rem;
    line-height: 1;
    border-radius: 4px;
    color: var(--ha-text-muted, var(--ha-text-muted));
    z-index: 1;
}

.password-toggle:hover[b-reluq8n7w1] {
    background: var(--ha-panel-alt, var(--ha-panel-alt));
}

/* Submit button with loading spinner */
.submit-btn[b-reluq8n7w1] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
}
/* /Pages/RunningAnalytics.razor.rz.scp.css */
.running-stats-grid[b-50w67v20ge] {
    display: grid;
    gap: 0.75rem;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
}

.running-stat-card[b-50w67v20ge] {
    padding: 1rem;
    border-radius: 16px;
    background: var(--ha-panel-alt);
    border: 1px solid var(--ha-border);
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

@media (max-width: 480px) {
    .running-stats-grid[b-50w67v20ge] {
        grid-template-columns: 1fr 1fr;
    }
}
/* /Pages/RunningCalendar.razor.rz.scp.css */
/* ── Training Phase Banner ──────────────────────────────────────── */
.training-phase-banner[b-z0zqe65stn] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.65rem 1rem;
    margin-bottom: 0.75rem;
    background: var(--ha-surface-subtle, var(--ha-surface-subtle));
    border: 1px solid var(--ha-accent-muted, var(--ha-accent-soft));
    border-radius: 0.5rem;
    border-left: 4px solid var(--ha-accent-emphasis, var(--ha-accent-emphasis));
}

.training-phase-banner__icon[b-z0zqe65stn] {
    font-size: 1.1rem;
    flex-shrink: 0;
}

.training-phase-banner__label[b-z0zqe65stn] {
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--ha-text, var(--ha-text));
}

.training-phase-banner__hint[b-z0zqe65stn] {
    font-size: 0.8rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

@media (max-width: 480px) {
    .training-phase-banner[b-z0zqe65stn] {
        flex-wrap: wrap;
    }

    .training-phase-banner__hint[b-z0zqe65stn] {
        flex-basis: 100%;
        padding-left: 1.6rem;
    }
}

/* ── Run Log Form ──────────────────────────────────────────────── */
.run-log-form[b-z0zqe65stn] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-top: 0.75rem;
}

.run-log-row[b-z0zqe65stn] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.run-log-row label[b-z0zqe65stn] {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--ha-text-primary, var(--ha-text));
}

.run-log-pace[b-z0zqe65stn] {
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--ha-accent, var(--ha-accent-muted));
}

.run-log-actions[b-z0zqe65stn] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.25rem;
}

/* ── Session notes (shared with day detail panel) ─────────────── */
.session-notes-group[b-z0zqe65stn] {
    margin-bottom: 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.session-notes-label[b-z0zqe65stn] {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--ha-text-primary, var(--ha-text));
}

.session-notes-input[b-z0zqe65stn] {
    width: 100%;
    padding: 0.5rem 0.65rem;
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 6px;
    background: var(--ha-surface, var(--ha-surface-subtle));
    font-size: 0.9rem;
    line-height: 1.5;
    resize: vertical;
    box-sizing: border-box;
}

.session-notes-input:focus[b-z0zqe65stn] {
    outline: none;
    border-color: var(--ha-accent, var(--ha-accent-muted));
    background: var(--ha-bg, var(--ha-panel));
    box-shadow: 0 0 0 3px rgba(83, 155, 245, 0.15);
}

/* ── Mobile layout fixes ─────────────────────────────────────── */
@media (max-width: 480px) {
    .run-log-actions[b-z0zqe65stn] {
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .session-notes-input[b-z0zqe65stn] {
        font-size: 16px;
    }

    .run-log-row[b-z0zqe65stn] {
        flex-direction: column;
        gap: 0.25rem;
    }
}

/* ── Week view ──────────────────────────────────────────────── */
[b-z0zqe65stn] .week-view__nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem;
}

[b-z0zqe65stn] .week-view__label {
    font-weight: 600;
    font-size: 0.95rem;
}

[b-z0zqe65stn] .week-nav-btn {
    background: none;
    border: 1px solid var(--ha-border);
    border-radius: 6px;
    padding: 0.25rem 0.75rem;
    cursor: pointer;
    font-size: 0.85rem;
    color: var(--ha-text);
}

[b-z0zqe65stn] .week-nav-btn:hover {
    background: var(--ha-surface-subtle);
}

[b-z0zqe65stn] .week-view__cards {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 0.5rem;
}

[b-z0zqe65stn] .week-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
    padding: 0.75rem 0.35rem;
    border: 1px solid var(--ha-border);
    border-radius: 8px;
    background: var(--ha-panel);
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s;
    text-align: center;
    font: inherit;
    color: inherit;
}

[b-z0zqe65stn] .week-card:disabled {
    cursor: default;
}

[b-z0zqe65stn] .week-card:not(:disabled):hover {
    background: var(--ha-surface-subtle);
}

[b-z0zqe65stn] .week-card--selected {
    background: var(--ha-accent-bg);
    border-color: var(--ha-accent-emphasis);
}

[b-z0zqe65stn] .week-card--today {
    border-color: var(--ha-accent-emphasis);
    border-width: 2px;
}

[b-z0zqe65stn] .week-card--rest {
    opacity: 0.6;
}

[b-z0zqe65stn] .week-card__day {
    font-size: 0.75rem;
    color: var(--ha-text-muted);
    text-transform: uppercase;
    font-weight: 600;
}

[b-z0zqe65stn] .week-card__date {
    font-size: 1.25rem;
    font-weight: 700;
}

[b-z0zqe65stn] .week-card__title {
    font-size: 0.75rem;
    color: var(--ha-text-muted);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
}

@media (max-width: 480px) {
    [b-z0zqe65stn] .week-view__cards {
        grid-template-columns: repeat(7, 1fr);
        gap: 0.25rem;
    }

    [b-z0zqe65stn] .week-card {
        padding: 0.5rem 0.15rem;
    }

    [b-z0zqe65stn] .week-card__title {
        display: none;
    }
}

@media (max-width: 480px) {
    [b-z0zqe65stn] .week-view__cards {
        grid-template-columns: repeat(7, minmax(44px, 1fr));
        gap: 0.15rem;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    [b-z0zqe65stn] .week-card {
        min-width: 44px;
        padding: 0.25rem;
        font-size: 0.7rem;
    }
}

/* ── Calendar day (month view) ──────────────────────────────── */
[b-z0zqe65stn] .calendar-day__button {
    width: 100%;
    background: transparent;
    color: inherit;
    border: 0;
    padding: 0;
    text-align: left;
    font: inherit;
    cursor: pointer;
}

[b-z0zqe65stn] .calendar-day__button:disabled {
    cursor: default;
    opacity: 0.75;
}

[b-z0zqe65stn] .calendar-day--selected {
    background: var(--ha-accent-bg);
}

[b-z0zqe65stn] .calendar-day--today {
    border: 2px solid var(--ha-accent-emphasis);
    border-radius: 6px;
}

[b-z0zqe65stn] .calendar-day--today .calendar-day__button {
    font-weight: 600;
}
/* /Pages/RunningCoach.razor.rz.scp.css */
.running-form[b-yg46cwvx4r] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1rem;
    margin: 1rem 0;
}

.running-form__field[b-yg46cwvx4r] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.running-form__label[b-yg46cwvx4r] {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
}

@media (max-width: 480px) {
    .running-form[b-yg46cwvx4r] {
        grid-template-columns: 1fr;
    }
}

/* ─── Running Plan Schedule ─── */

.draft-banner[b-yg46cwvx4r] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    border-radius: 10px;
    background: rgba(210, 153, 34, 0.1);
    border: 1px solid rgba(210, 153, 34, 0.3);
    color: var(--ha-warning, var(--ha-warning));
    font-size: 0.9rem;
    margin-bottom: 1rem;
}

.draft-banner__icon[b-yg46cwvx4r] {
    font-size: 1.1rem;
}

.running-schedule[b-yg46cwvx4r] {
    margin-top: 1rem;
}

.running-week[b-yg46cwvx4r] {
    margin-bottom: 1.5rem;
}

.running-week__title[b-yg46cwvx4r] {
    font-size: 0.95rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
    padding-bottom: 0.25rem;
    border-bottom: 2px solid var(--ha-accent, var(--ha-accent-emphasis));
    display: inline-block;
}

.running-week__days[b-yg46cwvx4r] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 0.5rem;
}

.running-day-card[b-yg46cwvx4r] {
    padding: 0.6rem;
    border-radius: 10px;
    background: var(--ha-panel-alt, var(--ha-surface-subtle));
    border: 1px solid var(--ha-border, var(--ha-border));
    min-height: 80px;
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.running-day-card--rest[b-yg46cwvx4r] {
    opacity: 0.6;
    background: transparent;
}

.running-day-card__header[b-yg46cwvx4r] {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    font-size: 0.7rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.running-day-card__dow[b-yg46cwvx4r] {
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.running-day-card__date[b-yg46cwvx4r] {
    font-size: 0.65rem;
}

.running-day-card__title[b-yg46cwvx4r] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
    line-height: 1.3;
}

.running-day-card__instructions[b-yg46cwvx4r] {
    font-size: 0.7rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
    line-height: 1.35;
    margin-top: 0.15rem;
}

/* ─── Responsive ─── */

@media (max-width: 480px) {
    .running-week__days[b-yg46cwvx4r] {
        grid-template-columns: repeat(2, 1fr);
    }
}
/* /Pages/RunningRecords.razor.rz.scp.css */
.pr-grid[b-f4gt0v64bb] {
    display: grid;
    gap: 0.75rem;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
}

.pr-card[b-f4gt0v64bb] {
    padding: 1rem;
    border-radius: 16px;
    background: var(--ha-panel-alt);
    border: 1px solid var(--ha-border);
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.pr-card__distance[b-f4gt0v64bb] {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--ha-accent);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.pr-card__time[b-f4gt0v64bb] {
    font-size: 1.35rem;
    font-weight: 700;
}

.pr-card__detail[b-f4gt0v64bb] {
    font-size: 0.85rem;
    color: var(--ha-text-muted);
}

@media (max-width: 480px) {
    .pr-grid[b-f4gt0v64bb] {
        grid-template-columns: 1fr 1fr;
    }
}
/* /Pages/RunningShoes.razor.rz.scp.css */
.running-form[b-4i87wpujqc] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1rem;
    margin: 1rem 0;
}

.running-form__field[b-4i87wpujqc] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.running-form__label[b-4i87wpujqc] {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--ha-text, var(--ha-text));
}

.shoe-list[b-4i87wpujqc] {
    display: grid;
    gap: 0.75rem;
}

.shoe-card[b-4i87wpujqc] {
    padding: 1rem;
    border-radius: 16px;
    background: var(--ha-panel-alt);
    border: 1px solid var(--ha-border);
}

.shoe-card__header[b-4i87wpujqc] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
    margin-bottom: 0.5rem;
}

.shoe-card__details[b-4i87wpujqc] {
    display: flex;
    gap: 1rem;
    font-size: 0.85rem;
    color: var(--ha-text-muted);
    flex-wrap: wrap;
}

.shoe-badge[b-4i87wpujqc] {
    font-size: 0.7rem;
    font-weight: 600;
    padding: 0.15rem 0.5rem;
    border-radius: 8px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.shoe-badge--default[b-4i87wpujqc] {
    background: var(--ha-accent-soft);
    color: var(--ha-accent);
}

.shoe-badge--warning[b-4i87wpujqc] {
    background: rgba(210, 153, 34, 0.15);
    color: var(--ha-warning);
}

.shoe-badge--retired[b-4i87wpujqc] {
    background: rgba(248, 81, 73, 0.15);
    color: var(--ha-danger);
}

.shoe-progress[b-4i87wpujqc] {
    height: 6px;
    background: var(--ha-border);
    border-radius: 3px;
    overflow: hidden;
    margin-top: 0.5rem;
}

.shoe-alert[b-4i87wpujqc] {
    display: flex;
    align-items: flex-start;
    gap: 0.4rem;
    margin-top: 0.5rem;
    padding: 0.5rem 0.65rem;
    border-radius: 8px;
    font-size: 0.8rem;
    line-height: 1.4;
}

.shoe-alert--warning[b-4i87wpujqc] {
    background: rgba(210, 153, 34, 0.1);
    color: var(--ha-warning);
}

.shoe-alert--danger[b-4i87wpujqc] {
    background: rgba(180, 35, 24, 0.1);
    color: var(--ha-danger);
}

.shoe-progress__bar[b-4i87wpujqc] {
    height: 100%;
    border-radius: 3px;
    transition: width 0.3s ease;
}

.shoe-form[b-4i87wpujqc] {
    margin-bottom: 1rem;
    padding: 1rem;
    border-radius: 12px;
    background: var(--ha-panel-alt);
    border: 1px solid var(--ha-border);
}

@media (max-width: 480px) {
    .running-form[b-4i87wpujqc] {
        grid-template-columns: 1fr;
    }

    .shoe-card__details[b-4i87wpujqc] {
        flex-direction: column;
        gap: 0.25rem;
    }
}
/* /Pages/RunningTemplateBuilder.razor.rz.scp.css */
/* Styles are provided by TemplateBuilderShell.razor.css */
[b-2sn5zyb8gj] .full-width { width: 100%; }
/* /Pages/RunningTemplates.razor.rz.scp.css */
/* ── Tab switcher ────────────────────────────────────────────── */
.template-tabs[b-ckoz917xut] {
    display: flex;
    gap: 0;
    margin-bottom: 1rem;
    border-bottom: 2px solid var(--ha-border);
}

.template-tab[b-ckoz917xut] {
    padding: 0.6rem 1.25rem;
    background: transparent;
    border: none;
    border-bottom: 2px solid transparent;
    margin-bottom: -2px;
    cursor: pointer;
    font-size: 0.88rem;
    font-weight: 500;
    color: var(--ha-text-muted);
    transition: color 0.15s, border-color 0.15s;
}

.template-tab:hover[b-ckoz917xut] {
    color: var(--ha-text);
}

.template-tab--active[b-ckoz917xut] {
    color: var(--ha-accent);
    border-bottom-color: var(--ha-accent);
}

.template-filter-card[b-ckoz917xut] {
    margin-bottom: 1rem;
}

.template-filters[b-ckoz917xut] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 0.75rem;
}

.template-grid[b-ckoz917xut] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.template-card[b-ckoz917xut] {
    background: var(--ha-surface-subtle);
    border: 1px solid var(--ha-border);
    border-radius: 10px;
    overflow: hidden;
    transition: border-color 0.15s;
}

.template-card--open[b-ckoz917xut] {
    border-color: var(--ha-accent-emphasis);
}

.template-card__header[b-ckoz917xut] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 1rem 1.25rem 0.6rem;
    cursor: pointer;
    gap: 1rem;
}

.template-card__header:hover[b-ckoz917xut] {
    background: var(--ha-surface-hover);
}

.template-card__name[b-ckoz917xut] {
    font-size: 1rem;
    font-weight: 600;
    margin: 0 0 0.2rem;
    color: var(--ha-text);
}

.template-card__desc[b-ckoz917xut] {
    font-size: 0.875rem;
    color: var(--ha-text-muted);
    margin: 0;
}

.template-card__chevron[b-ckoz917xut] {
    font-size: 0.8rem;
    color: var(--ha-text-placeholder);
    flex-shrink: 0;
    margin-top: 0.25rem;
}

.template-card__meta[b-ckoz917xut] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    padding: 0 1.25rem 0.75rem;
}

.template-badge[b-ckoz917xut] {
    display: inline-block;
    padding: 0.15rem 0.55rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 500;
    background: var(--ha-badge-bg);
    color: var(--ha-text-muted);
}

.template-badge--level[b-ckoz917xut] {
    background: var(--ha-accent-bg);
    color: var(--ha-accent-emphasis);
}

.template-badge--goal[b-ckoz917xut] {
    background: var(--ha-success-bg);
    color: var(--ha-success-emphasis);
}

.template-badge--system[b-ckoz917xut] {
    background: var(--ha-badge-system-bg);
    color: var(--ha-badge-system-text);
    font-size: 0.68rem;
    margin-left: 0.4rem;
    vertical-align: middle;
}

.template-badge--user[b-ckoz917xut] {
    background: var(--ha-accent-soft);
    color: var(--ha-accent);
    font-size: 0.68rem;
    margin-left: 0.4rem;
    vertical-align: middle;
}

/* ── Session detail table ────────────────────────────────────── */
.template-structure[b-ckoz917xut] {
    padding: 0.75rem 1.25rem 1rem;
    border-top: 1px solid var(--ha-border);
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.template-day__name[b-ckoz917xut] {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--ha-text);
    margin: 0 0 0.4rem;
}

.template-session-table[b-ckoz917xut] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.82rem;
}

.template-session-table th[b-ckoz917xut] {
    text-align: left;
    padding: 0.3rem 0.5rem;
    background: var(--ha-surface-hover);
    font-weight: 600;
    color: var(--ha-text-muted);
    border-bottom: 1px solid var(--ha-border);
}

.template-session-table td[b-ckoz917xut] {
    padding: 0.3rem 0.5rem;
    border-bottom: 1px solid var(--ha-surface-hover);
    color: var(--ha-text);
}

.template-session-table tr:last-child td[b-ckoz917xut] {
    border-bottom: none;
}

.template-loading[b-ckoz917xut] {
    padding: 0.75rem 1.25rem 1rem;
    border-top: 1px solid var(--ha-border);
}

/* ── Action bar ──────────────────────────────────────────────── */
.template-action-bar[b-ckoz917xut] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: flex-end;
    padding: 0.75rem 1.25rem 1rem;
    border-top: 1px solid var(--ha-border);
}

/* ── Delete dialog ───────────────────────────────────────────── */
.delete-dialog[b-ckoz917xut] {
    padding: 1.25rem;
    max-width: 420px;
}

.delete-dialog h3[b-ckoz917xut] {
    margin: 0 0 0.5rem;
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--ha-text);
}

.delete-dialog p[b-ckoz917xut] {
    font-size: 0.88rem;
    color: var(--ha-text);
    margin: 0 0 0.5rem;
}

.delete-dialog__warning[b-ckoz917xut] {
    font-size: 0.8rem;
    color: var(--ha-text-muted);
    font-style: italic;
}

.delete-dialog__actions[b-ckoz917xut] {
    display: flex;
    gap: 0.5rem;
    justify-content: flex-end;
    margin-top: 1rem;
}

@media (max-width: 480px) {
    .template-card__header[b-ckoz917xut] {
        padding: 0.75rem 0.85rem 0.5rem;
    }

    .template-card__meta[b-ckoz917xut] {
        padding: 0 0.85rem 0.65rem;
    }

    .template-structure[b-ckoz917xut] {
        padding: 0.65rem 0.85rem 0.85rem;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .template-session-table[b-ckoz917xut] {
        min-width: 400px;
    }

    .template-filters[b-ckoz917xut] {
        grid-template-columns: 1fr 1fr;
    }

    .template-action-bar[b-ckoz917xut] {
        flex-direction: column;
        padding: 0.65rem 0.85rem 0.85rem;
    }

    .template-tabs[b-ckoz917xut] {
        overflow-x: auto;
    }

    .template-badge[b-ckoz917xut] {
        padding: 0.25rem 0.6rem;
        min-height: 1.5rem;
    }
}
/* /Pages/SharedWorkout.razor.rz.scp.css */
.shared-workout[b-o0kd1vqxo4] {
    display: grid;
    gap: 1.25rem;
    max-width: 720px;
}

.shared-workout__hero[b-o0kd1vqxo4] {
    display: grid;
    gap: 0.5rem;
}

.shared-workout__meta[b-o0kd1vqxo4] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem;
}

.shared-workout__footer[b-o0kd1vqxo4] {
    margin-top: 1rem;
    text-align: center;
    font-size: 0.8rem;
}
/* /Pages/SiteAchievements.razor.rz.scp.css */
/* ── Site Achievements Admin Page ───────────────── */

[b-r7up3hvgv3] .full-width { width: 100%; }

.site-challenges__summary[b-r7up3hvgv3] {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}

.site-challenges__stat[b-r7up3hvgv3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    background: var(--ha-panel);
    border: 1px solid var(--ha-border);
    border-radius: 0.75rem;
    padding: 1rem 1.5rem;
    min-width: 120px;
    flex: 1;
}

.site-challenges__stat-value[b-r7up3hvgv3] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--ha-text);
    line-height: 1.2;
}

.site-challenges__stat-label[b-r7up3hvgv3] {
    font-size: 0.8125rem;
    color: var(--ha-text-muted);
    margin-top: 0.25rem;
}

.text-center[b-r7up3hvgv3] {
    text-align: center;
}

/* ── Dialog Overlay ────────────────────────────── */

.site-challenges__overlay[b-r7up3hvgv3] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.45);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 1rem;
}

.site-challenges__dialog[b-r7up3hvgv3] {
    background: var(--ha-panel, var(--ha-panel));
    border: 1px solid var(--ha-border);
    border-radius: 1rem;
    max-width: 640px;
    width: 100%;
    max-height: 90vh;
    overflow-y: auto;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.18);
}

.site-challenges__dialog-header[b-r7up3hvgv3] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.25rem 1.5rem 0.75rem;
    border-bottom: 1px solid var(--ha-border);
}

.site-challenges__dialog-header h2[b-r7up3hvgv3] {
    margin: 0;
    font-size: 1.125rem;
}

/* ── Form ───────────────────────────────────────── */

.site-challenges__form[b-r7up3hvgv3] {
    padding: 1.25rem 1.5rem 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.site-challenges__field[b-r7up3hvgv3] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.site-challenges__field label[b-r7up3hvgv3] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--ha-text-muted);
}

.site-challenges__field-row[b-r7up3hvgv3] {
    display: flex;
    gap: 1rem;
}

.site-challenges__field-row > .site-challenges__field[b-r7up3hvgv3] {
    flex: 1;
}

.site-challenges__dialog-actions[b-r7up3hvgv3] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    padding-top: 0.5rem;
    border-top: 1px solid var(--ha-border);
    margin-top: 0.5rem;
}

/* ── Responsive: Tablet ────────────────────────── */

@media (max-width: 768px) {
    .site-challenges__summary[b-r7up3hvgv3] {
        gap: 0.5rem;
    }

    .site-challenges__stat[b-r7up3hvgv3] {
        min-width: 0;
        padding: 0.75rem 1rem;
    }

    .site-challenges__stat-value[b-r7up3hvgv3] {
        font-size: 1.375rem;
    }

    .site-challenges__field-row[b-r7up3hvgv3] {
        flex-direction: column;
        gap: 1rem;
    }

    .site-challenges__dialog[b-r7up3hvgv3] {
        max-width: 100%;
        border-radius: 0.75rem;
    }
}

/* ── Responsive: Phone ─────────────────────────── */

@media (max-width: 480px) {
    .site-challenges__summary[b-r7up3hvgv3] {
        flex-direction: column;
    }

    .site-challenges__stat[b-r7up3hvgv3] {
        flex-direction: row;
        justify-content: space-between;
        padding: 0.75rem 1rem;
    }

    .site-challenges__dialog[b-r7up3hvgv3] {
        margin: 0;
        border-radius: 0.75rem 0.75rem 0 0;
        max-height: 95vh;
        align-self: flex-end;
    }

    .site-challenges__form[b-r7up3hvgv3] {
        padding: 1rem;
    }

    .site-challenges__dialog-header[b-r7up3hvgv3] {
        padding: 1rem;
    }
}
/* /Pages/SiteChallenges.razor.rz.scp.css */
/* ── Site Challenges Admin Page ─────────────────── */

[b-ysfr1f3em3] .full-width { width: 100%; }

.site-challenges__actions[b-ysfr1f3em3] {
    display: flex;
    gap: 0.75rem;
    align-items: center;
}

/* ── Summary Stats ─────────────────────────────── */

.site-challenges__summary[b-ysfr1f3em3] {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}

.site-challenges__stat[b-ysfr1f3em3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    background: var(--ha-panel);
    border: 1px solid var(--ha-border);
    border-radius: 0.75rem;
    padding: 1rem 1.5rem;
    min-width: 120px;
    flex: 1;
}

.site-challenges__stat-value[b-ysfr1f3em3] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--ha-text);
    line-height: 1.2;
}

.site-challenges__stat-label[b-ysfr1f3em3] {
    font-size: 0.8125rem;
    color: var(--ha-text-muted);
    margin-top: 0.25rem;
}

/* ── Table ──────────────────────────────────────── */

.site-challenges__description[b-ysfr1f3em3] {
    font-size: 0.8125rem;
    max-width: 250px;
    display: inline-block;
}

.text-center[b-ysfr1f3em3] {
    text-align: center;
}

/* ── Dialog Overlay ────────────────────────────── */

.site-challenges__overlay[b-ysfr1f3em3] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.45);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 1rem;
}

.site-challenges__dialog[b-ysfr1f3em3] {
    background: var(--ha-panel, var(--ha-panel));
    border: 1px solid var(--ha-border);
    border-radius: 1rem;
    max-width: 640px;
    width: 100%;
    max-height: 90vh;
    overflow-y: auto;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.18);
}

.site-challenges__dialog-header[b-ysfr1f3em3] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.25rem 1.5rem 0.75rem;
    border-bottom: 1px solid var(--ha-border);
}

.site-challenges__dialog-header h2[b-ysfr1f3em3] {
    margin: 0;
    font-size: 1.125rem;
}

/* ── Form ───────────────────────────────────────── */

.site-challenges__form[b-ysfr1f3em3] {
    padding: 1.25rem 1.5rem 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.site-challenges__field[b-ysfr1f3em3] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.site-challenges__field label[b-ysfr1f3em3] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--ha-text-muted);
}

.site-challenges__field-row[b-ysfr1f3em3] {
    display: flex;
    gap: 1rem;
}

.site-challenges__field-row > .site-challenges__field[b-ysfr1f3em3] {
    flex: 1;
}

.site-challenges__dialog-actions[b-ysfr1f3em3] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    padding-top: 0.5rem;
    border-top: 1px solid var(--ha-border);
    margin-top: 0.5rem;
}

/* ── Responsive: Tablet ────────────────────────── */

@media (max-width: 768px) {
    .site-challenges__summary[b-ysfr1f3em3] {
        gap: 0.5rem;
    }

    .site-challenges__stat[b-ysfr1f3em3] {
        min-width: 0;
        padding: 0.75rem 1rem;
    }

    .site-challenges__stat-value[b-ysfr1f3em3] {
        font-size: 1.375rem;
    }

    .site-challenges__field-row[b-ysfr1f3em3] {
        flex-direction: column;
        gap: 1rem;
    }

    .site-challenges__dialog[b-ysfr1f3em3] {
        max-width: 100%;
        border-radius: 0.75rem;
    }

    .site-challenges__description[b-ysfr1f3em3] {
        max-width: 160px;
    }
}

/* ── Responsive: Phone ─────────────────────────── */

@media (max-width: 480px) {
    .site-challenges__summary[b-ysfr1f3em3] {
        flex-direction: column;
    }

    .site-challenges__stat[b-ysfr1f3em3] {
        flex-direction: row;
        justify-content: space-between;
        padding: 0.75rem 1rem;
    }

    .site-challenges__dialog[b-ysfr1f3em3] {
        margin: 0;
        border-radius: 0.75rem 0.75rem 0 0;
        max-height: 95vh;
        align-self: flex-end;
    }

    .site-challenges__form[b-ysfr1f3em3] {
        padding: 1rem;
    }

    .site-challenges__dialog-header[b-ysfr1f3em3] {
        padding: 1rem;
    }
}
/* /Pages/StrengthHistory.razor.rz.scp.css */
.strength-history-card[b-vta53j3ia2]
{
    background: linear-gradient(180deg, var(--ha-bg) 0%, var(--ha-panel) 100%);
}

.strength-history-card__header[b-vta53j3ia2]
{
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
    margin-bottom: 1rem;
}

.strength-history-card__actions[b-vta53j3ia2]
{
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-shrink: 0;
}

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

/* ── WE19: Chart view toggle ──────────────────────────────────── */
.view-toggle-group[b-vta53j3ia2]
{
    display: flex;
    gap: 0.25rem;
}

.view-toggle[b-vta53j3ia2]
{
    padding: 0.3rem 0.7rem;
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 0.4rem;
    background: var(--ha-panel-alt, var(--ha-surface-subtle));
    color: var(--ha-text-muted, var(--ha-text-muted));
    font-size: 0.8rem;
    cursor: pointer;
    transition: background 0.12s, border-color 0.12s, color 0.12s;
    white-space: nowrap;
}

.view-toggle:hover[b-vta53j3ia2],
.view-toggle--active[b-vta53j3ia2]
{
    background: var(--ha-accent-soft, var(--ha-accent-soft));
    border-color: var(--ha-accent, var(--ha-accent-muted));
    color: var(--ha-accent, var(--ha-accent-emphasis));
}

/* ── F05: Volume legend item ─────────────────────────────────── */
.strength-chart-legend__item--volume[b-vta53j3ia2]::before { background: var(--ha-success, var(--ha-success)); }

/* ── WE19: Strength line chart ───────────────────────────────── */
.strength-chart-container[b-vta53j3ia2]
{
    margin-top: 0.5rem;
}

.strength-chart-legend[b-vta53j3ia2]
{
    display: flex;
    gap: 1rem;
    margin-bottom: 0.5rem;
    font-size: 0.78rem;
}

.strength-chart-legend__item[b-vta53j3ia2]
{
    display: flex;
    align-items: center;
    gap: 0.35rem;
    color: var(--ha-text-muted, var(--ha-text-muted));
}

.strength-chart-legend__item[b-vta53j3ia2]::before
{
    content: '';
    display: inline-block;
    width: 1.4rem;
    height: 0.2rem;
    border-radius: 1px;
}

.strength-chart-legend__item--weight[b-vta53j3ia2]::before { background: var(--ha-accent, var(--ha-accent-emphasis)); }
.strength-chart-legend__item--1rm[b-vta53j3ia2]::before { background: var(--ha-success, var(--ha-success)); border-style: dashed; }

.strength-chart[b-vta53j3ia2]
{
    width: 100%;
    height: auto;
    display: block;
    overflow: visible;
}

/* ── WE19: PR row highlight in table ─────────────────────────── */
.pr-row[b-vta53j3ia2]
{
    background: var(--ha-warning-bg);
}

.pr-row td[b-vta53j3ia2]
{
    border-bottom-color: var(--ha-warning-border);
}

@media (max-width: 960px)
{
    .strength-history-card__header[b-vta53j3ia2]
    {
        flex-direction: column;
    }
}

@media (max-width: 480px)
{
    .strength-history-card__actions[b-vta53j3ia2]
    {
        flex-wrap: wrap;
    }

    .view-toggle[b-vta53j3ia2]
    {
        min-height: 2.5rem;
        padding: 0.45rem 0.85rem;
    }

    .strength-chart-legend[b-vta53j3ia2]
    {
        flex-wrap: wrap;
    }
}
/* /Pages/Targets.razor.rz.scp.css */
/* ── Targets Page ──────────────────────────────── */

.section-meta[b-x115gohdrp] {
    font-size: 0.85rem;
    color: var(--ha-text-muted);
    margin-top: 0.75rem;
}
/* /Pages/TemplateBuilder.razor.rz.scp.css */
/* Styles are provided by TemplateBuilderShell.razor.css */
[b-t4gazi7n9g] .full-width { width: 100%; }
/* /Pages/WorkoutCalendar.razor.rz.scp.css */
/* Coach chat styles moved to Components/CoachChat.razor.css */
/* /Pages/WorkoutPlan.razor.rz.scp.css */
/* ── WE16: Mesocycle phase strip ─────────────────────────────── */

/* ── AI / Template source badge ─────────────────────────────── */
.plan-source-badge[b-ih3bhswit6]
{
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.75rem;
    font-weight: 500;
    padding: 0.2rem 0.65rem;
    border-radius: 1rem;
    margin-bottom: 0.5rem;
}

.plan-source-badge--ai[b-ih3bhswit6]
{
    color: var(--ha-success, var(--ha-success));
    background: var(--ha-success-bg);
    border: 1px solid var(--ha-success-border);
}

.plan-source-badge--template[b-ih3bhswit6]
{
    color: var(--ha-text-muted, var(--ha-text-muted));
    background: var(--ha-panel-alt, var(--ha-panel-alt));
    border: 1px solid var(--ha-border, var(--ha-border));
}

.mesocycle-strip[b-ih3bhswit6]
{
    margin: 0.25rem 0 1.25rem;
    padding: 0.75rem 1rem;
    background: var(--ha-surface-subtle, var(--ha-surface-subtle));
    border: 1px solid var(--ha-border, var(--ha-border));
    border-radius: 0.5rem;
}

.mesocycle-strip__phases[b-ih3bhswit6]
{
    display: flex;
    gap: 0.5rem;
    margin-bottom: 0.5rem;
    flex-wrap: wrap;
}

.mesocycle-strip__phase[b-ih3bhswit6]
{
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--ha-text-muted, var(--ha-text-muted));
    padding: 0.2rem 0.6rem;
    border-radius: 1rem;
    background: var(--ha-panel, var(--ha-panel));
    border: 1px solid var(--ha-border, var(--ha-border));
}

.mesocycle-strip__phase--active[b-ih3bhswit6]
{
    color: var(--ha-panel);
    background: var(--ha-success, var(--ha-success));
    border-color: var(--ha-success, var(--ha-success));
}

.mesocycle-strip__phase--accumulation[b-ih3bhswit6]
{
    background: var(--ha-accent-emphasis, var(--ha-accent-emphasis));
    border-color: var(--ha-accent-emphasis, var(--ha-accent-emphasis));
}

.mesocycle-strip__phase--intensification[b-ih3bhswit6]
{
    background: var(--ha-warning-emphasis, var(--ha-warning-emphasis));
    border-color: var(--ha-warning-emphasis, var(--ha-warning-emphasis));
}

.mesocycle-strip__phase--overreach[b-ih3bhswit6]
{
    background: var(--ha-danger-emphasis, var(--ha-danger));
    border-color: var(--ha-danger-emphasis, var(--ha-danger));
}

.mesocycle-strip__bar[b-ih3bhswit6]
{
    height: 8px;
    border-radius: 4px;
    background: var(--ha-border, var(--ha-border));
    overflow: hidden;
    margin-bottom: 0.4rem;
}

.mesocycle-strip__fill[b-ih3bhswit6]
{
    height: 100%;
    border-radius: 4px;
    background: linear-gradient(90deg, var(--ha-accent-emphasis, var(--ha-accent-emphasis)), var(--ha-accent-muted, var(--ha-accent-muted)));
    transition: width 0.4s ease;
}

.mesocycle-strip__fill--intensification[b-ih3bhswit6]
{
    background: linear-gradient(90deg, var(--ha-warning-emphasis, var(--ha-warning-emphasis)), var(--ha-warning, var(--ha-gold)));
}

.mesocycle-strip__fill--overreach[b-ih3bhswit6]
{
    background: linear-gradient(90deg, var(--ha-danger-emphasis, var(--ha-danger)), var(--ha-danger, var(--ha-danger)));
}

.mesocycle-strip__banner[b-ih3bhswit6]
{
    font-size: 0.85rem;
    font-weight: 600;
    margin-bottom: 0.25rem;
    color: var(--ha-text, var(--ha-text));
}

/* ── Responsive: WorkoutPlan mobile ──────────────────────────── */
@media (max-width: 480px) {
    .metric-grid[b-ih3bhswit6] {
        grid-template-columns: repeat(2, 1fr);
        gap: 0.5rem;
    }

    .mesocycle-strip__phases[b-ih3bhswit6] {
        flex-wrap: wrap;
        gap: 0.35rem;
    }

    .calendar-grid[b-ih3bhswit6] {
        grid-template-columns: 1fr;
    }

    .data-table[b-ih3bhswit6] {
        font-size: 0.82rem;
    }

    .data-table th[b-ih3bhswit6],
    .data-table td[b-ih3bhswit6] {
        padding: 0.4rem 0.5rem;
    }

    .button-row[b-ih3bhswit6] {
        flex-direction: column;
        gap: 0.5rem;
    }

    .section-meta[b-ih3bhswit6] {
        font-size: 0.82rem;
    }

    .plan-source-badge[b-ih3bhswit6] {
        font-size: 0.7rem;
    }
}

/* ── Rationale prose ─────────────────────────────────────────── */
[b-ih3bhswit6] .rationale-prose {
    display: grid;
    gap: 0.6rem;
}

[b-ih3bhswit6] .rationale-prose p {
    margin: 0;
    line-height: 1.6;
}

/* ── Chat history ────────────────────────────────────────────── */
[b-ih3bhswit6] .chat-list {
    display: grid;
    gap: 0.75rem;
}
/* /Pages/WorkoutTemplates.razor.rz.scp.css */
/* ── Tab switcher ────────────────────────────────────────────── */
.template-tabs[b-62182h8qkf] {
    display: flex;
    gap: 0;
    margin-bottom: 1rem;
    border-bottom: 2px solid var(--ha-border);
}

.template-tab[b-62182h8qkf] {
    padding: 0.6rem 1.25rem;
    background: transparent;
    border: none;
    border-bottom: 2px solid transparent;
    margin-bottom: -2px;
    cursor: pointer;
    font-size: 0.88rem;
    font-weight: 500;
    color: var(--ha-text-muted);
    transition: color 0.15s, border-color 0.15s;
}

.template-tab:hover[b-62182h8qkf] {
    color: var(--ha-text);
}

.template-tab--active[b-62182h8qkf] {
    color: var(--ha-accent);
    border-bottom-color: var(--ha-accent);
}

.template-filter-card[b-62182h8qkf] {
    margin-bottom: 1rem;
}

.template-filters[b-62182h8qkf] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 0.75rem;
}

.template-grid[b-62182h8qkf] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.template-card[b-62182h8qkf] {
    background: var(--ha-surface-subtle);
    border: 1px solid var(--ha-border);
    border-radius: 10px;
    overflow: hidden;
    transition: border-color 0.15s;
}

.template-card--open[b-62182h8qkf] {
    border-color: var(--ha-accent-emphasis);
}

.template-card__header[b-62182h8qkf] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 1rem 1.25rem 0.6rem;
    cursor: pointer;
    gap: 1rem;
}

.template-card__header:hover[b-62182h8qkf] {
    background: var(--ha-surface-hover);
}

.template-card__name[b-62182h8qkf] {
    font-size: 1rem;
    font-weight: 600;
    margin: 0 0 0.2rem;
    color: var(--ha-text);
}

.template-card__desc[b-62182h8qkf] {
    font-size: 0.875rem;
    color: var(--ha-text-muted);
    margin: 0;
}

.template-card__chevron[b-62182h8qkf] {
    font-size: 0.8rem;
    color: var(--ha-text-placeholder);
    flex-shrink: 0;
    margin-top: 0.25rem;
}

.template-card__meta[b-62182h8qkf] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    padding: 0 1.25rem 0.75rem;
}

.template-badge[b-62182h8qkf] {
    display: inline-block;
    padding: 0.15rem 0.55rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 500;
    background: var(--ha-badge-bg);
    color: var(--ha-text-muted);
}

.template-badge--level[b-62182h8qkf] {
    background: var(--ha-accent-bg);
    color: var(--ha-accent-emphasis);
}

.template-badge--goal[b-62182h8qkf] {
    background: var(--ha-success-bg);
    color: var(--ha-success-emphasis);
}

.template-badge--tag[b-62182h8qkf] {
    background: var(--ha-surface-hover);
    color: var(--ha-text-muted);
}

.template-structure[b-62182h8qkf] {
    padding: 0.75rem 1.25rem 1rem;
    border-top: 1px solid var(--ha-border);
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.template-day__name[b-62182h8qkf] {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--ha-text);
    margin: 0 0 0.4rem;
}

.template-exercise-table[b-62182h8qkf] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.82rem;
}

.template-exercise-table th[b-62182h8qkf] {
    text-align: left;
    padding: 0.3rem 0.5rem;
    background: var(--ha-surface-hover);
    font-weight: 600;
    color: var(--ha-text-muted);
    border-bottom: 1px solid var(--ha-border);
}

.template-exercise-table td[b-62182h8qkf] {
    padding: 0.3rem 0.5rem;
    border-bottom: 1px solid var(--ha-surface-hover);
    color: var(--ha-text);
}

.template-exercise-table tr:last-child td[b-62182h8qkf] {
    border-bottom: none;
}

.template-loading[b-62182h8qkf] {
    padding: 0.75rem 1.25rem 1rem;
    border-top: 1px solid var(--ha-border);
}

/* ── Use This Template action ───────────────────────────────── */
.template-use-action[b-62182h8qkf] {
    display: flex;
    justify-content: flex-end;
    padding: 0.75rem 1.25rem 1rem;
    border-top: 1px solid var(--ha-border);
}

/* ── Action bar (use + clone + edit + delete) ────────────────── */
.template-action-bar[b-62182h8qkf] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: flex-end;
    padding: 0.75rem 1.25rem 1rem;
    border-top: 1px solid var(--ha-border);
}

/* ── Ownership badges ────────────────────────────────────────── */
.template-badge--system[b-62182h8qkf] {
    background: var(--ha-badge-system-bg);
    color: var(--ha-badge-system-text);
    font-size: 0.68rem;
    margin-left: 0.4rem;
    vertical-align: middle;
}

.template-badge--user[b-62182h8qkf] {
    background: var(--ha-accent-soft);
    color: var(--ha-accent);
    font-size: 0.68rem;
    margin-left: 0.4rem;
    vertical-align: middle;
}

/* ── Delete dialog ───────────────────────────────────────────── */
.delete-dialog[b-62182h8qkf] {
    padding: 1.25rem;
    max-width: 420px;
}

.delete-dialog h3[b-62182h8qkf] {
    margin: 0 0 0.5rem;
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--ha-text);
}

.delete-dialog p[b-62182h8qkf] {
    font-size: 0.88rem;
    color: var(--ha-text);
    margin: 0 0 0.5rem;
}

.delete-dialog__warning[b-62182h8qkf] {
    font-size: 0.8rem;
    color: var(--ha-text-muted);
    font-style: italic;
}

.delete-dialog__actions[b-62182h8qkf] {
    display: flex;
    gap: 0.5rem;
    justify-content: flex-end;
    margin-top: 1rem;
}

/* ── Create Plan panel ──────────────────────────────────────── */
.template-create-plan[b-62182h8qkf] {
    padding: 1rem 1.25rem;
    border-top: 1px solid var(--ha-border);
    background: var(--ha-surface-subtle);
    border-radius: 0 0 0.5rem 0.5rem;
}

.template-create-plan h4[b-62182h8qkf] {
    margin: 0 0 0.75rem;
    font-size: 0.95rem;
    font-weight: 600;
}

.template-create-plan__form[b-62182h8qkf] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem;
}

.template-create-plan__form label[b-62182h8qkf] {
    font-size: 0.85rem;
    font-weight: 500;
    color: var(--ha-text-muted);
}

.template-create-plan__form input[type="date"][b-62182h8qkf] {
    padding: 0.4rem 0.6rem;
    border: 1px solid var(--ha-border);
    border-radius: 0.375rem;
    font-size: 0.85rem;
}

.template-create-plan__actions[b-62182h8qkf] {
    display: flex;
    gap: 0.5rem;
}

.template-create-plan__error[b-62182h8qkf] {
    width: 100%;
    color: var(--ha-danger);
    font-size: 0.8rem;
    margin: 0.25rem 0 0;
}

@media (max-width: 480px) {
    .template-card__header[b-62182h8qkf] {
        padding: 0.75rem 0.85rem 0.5rem;
    }

    .template-card__meta[b-62182h8qkf] {
        padding: 0 0.85rem 0.65rem;
    }

    .template-structure[b-62182h8qkf] {
        padding: 0.65rem 0.85rem 0.85rem;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .template-exercise-table[b-62182h8qkf] {
        min-width: 400px;
    }

    .template-filters[b-62182h8qkf] {
        grid-template-columns: 1fr 1fr;
    }

    .template-create-plan__form[b-62182h8qkf] {
        flex-direction: column;
        align-items: stretch;
    }

    .template-create-plan__actions[b-62182h8qkf] {
        flex-direction: column;
    }

    .template-use-action[b-62182h8qkf] {
        padding: 0.65rem 0.85rem 0.85rem;
    }

    .template-badge[b-62182h8qkf] {
        padding: 0.25rem 0.6rem;
        min-height: 1.5rem;
    }

    .template-action-bar[b-62182h8qkf] {
        flex-direction: column;
        padding: 0.65rem 0.85rem 0.85rem;
    }

    .template-tabs[b-62182h8qkf] {
        overflow-x: auto;
    }
}
