/* /Components/AdminUsersPanel.razor.rz.scp.css */
.admin-stats-row[b-6ohq72indp] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.metric-card[b-6ohq72indp] {
    background-color: var(--mainBg);
    border-radius: var(--radiusXl);
    box-shadow: var(--shadow);
    padding: 24px;
}

@media (max-width: 960px) {
    .admin-stats-row[b-6ohq72indp] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .admin-stats-row[b-6ohq72indp] {
        grid-template-columns: 1fr;
    }

    .metric-card[b-6ohq72indp] {
        padding: 16px;
    }
}
/* /Components/Button.razor.rz.scp.css */
/* =========================================================
   BASE BUTTON
========================================================= */

.btn[b-p8gg4917ta] {
    /* ----- Core Variables ----- */
    --btn-color: #3b82f6;
    --btn-text-color: #ffffff;
    --btn-border-radius: 10px;
    --btn-transition: 0.15s ease-in-out;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;

    border-radius: var(--btn-border-radius);
    border: 1px solid transparent;

    font-weight: 400;
    line-height: 1;
    cursor: pointer;
    user-select: none;

    transition:
            background-color var(--btn-transition),
            color var(--btn-transition),
            border-color var(--btn-transition),
            transform 0.05s ease,
            opacity var(--btn-transition);

    width: auto;
}

.btn:active[b-p8gg4917ta] {
    transform: translateY(1px);
}

/* =========================================================
   SIZES
========================================================= */

.btn--small[b-p8gg4917ta] {
    padding: .45rem .75rem;
    font-size: .85rem;
}

.btn--medium[b-p8gg4917ta] {
    padding: .6rem 1rem;
    font-size: .95rem;
}

.btn--large[b-p8gg4917ta] {
    padding: .8rem 1.25rem;
    font-size: 1.05rem;
}

/* =========================================================
   COLOR DEFINITIONS
========================================================= */

/* PRIMARY */
.btn--primary[b-p8gg4917ta] {
    --btn-color: var(--primary);
    --btn-text-color: var(--surface);
}

/* SECONDARY */
.btn--secondary[b-p8gg4917ta] {
    --btn-color: var(--textSecondary);
    --btn-text-color: var(--surface);
}

/* SUCCESS */
.btn--success[b-p8gg4917ta] {
    --btn-color: var(--success);
    --btn-text-color: var(--surface);
}

/* WARNING */
.btn--warning[b-p8gg4917ta] {
    --btn-color: var(--warning);
    --btn-text-color: var(--surface);
}

/* DANGER */
.btn--danger[b-p8gg4917ta] {
    --btn-color: var(--danger);
    --btn-text-color: var(--surface);
}

/* INFO */
.btn--info[b-p8gg4917ta] {
    --btn-color: var(--info);
    --btn-text-color: var(--surface);
}

/* LIGHT */
.btn--light[b-p8gg4917ta] {
    --btn-color: var(--surfaceAlt);
    --btn-text-color: var(--textPrimary);
}

/* DARK */
.btn--dark[b-p8gg4917ta] {
    --btn-color: #181b32;
    --btn-text-color: #ffffff;
}

/* =========================================================
   SOLID STYLE
========================================================= */

.btn--solid[b-p8gg4917ta] {
    background-color: var(--btn-color);
    border-color: var(--btn-color);
    color: var(--btn-text-color);
}

/* =========================================================
   OUTLINE STYLE
========================================================= */

.btn--outline[b-p8gg4917ta] {
    background-color: transparent;
    border-color: var(--btn-color);
    color: var(--btn-color);
}

/* =========================================================
   HOVER BEHAVIOR
========================================================= */

/* Hover fills with button color */
.btn--hoverfill:not(:disabled):hover[b-p8gg4917ta] {
    background-color: var(--btn-color);
    border-color: var(--btn-color);
    color: var(--btn-text-color);
}

/* Hover disabled */
.btn--hovernone:not(:disabled):hover[b-p8gg4917ta] {
    background-color: inherit;
    border-color: inherit;
    color: inherit;
}

/* =========================================================
   DISABLED
========================================================= */

.btn--disabled[b-p8gg4917ta],
.btn:disabled[b-p8gg4917ta] {
    opacity: .55;
    cursor: not-allowed;
    pointer-events: none;
}

/* =========================================================
   ICON STYLING (Google Material Symbols)
========================================================= */

.btn__icon[b-p8gg4917ta] {
    font-size: 1.2em;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.btn__icon--left[b-p8gg4917ta] {
    margin-right: .25rem;
}

.btn__icon--right[b-p8gg4917ta] {
    margin-left: .25rem;
}

/* =========================================================
   TEXT
========================================================= */

.btn__text[b-p8gg4917ta] {
    display: inline-flex;
    align-items: center;
}
/* /Components/ChangePasswordDialog.razor.rz.scp.css */
/* ── Backdrop ─────────────────────────────────────────────────────────────── */

.pwd-backdrop[b-l61ere0w9e] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.55);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 16px;
}

/* ── Dialog card ──────────────────────────────────────────────────────────── */

.pwd-dialog[b-l61ere0w9e] {
    width: 100%;
    max-width: 440px;
    max-height: 90dvh;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 0;
}

/* ── Header ───────────────────────────────────────────────────────────────── */

.pwd-header[b-l61ere0w9e] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 24px;
}

.pwd-title[b-l61ere0w9e] {
    font-size: 22px;
    font-weight: 800;
    color: var(--textPrimary);
    margin: 0;
}

.pwd-close-btn[b-l61ere0w9e] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    flex-shrink: 0;
    border: none;
    border-radius: var(--radiusSm);
    background: var(--surfaceAlt);
    color: var(--textMuted);
    cursor: pointer;
    transition: background 150ms ease, color 150ms ease;
}

.pwd-close-btn:hover[b-l61ere0w9e] {
    background: var(--border);
    color: var(--textPrimary);
}

.pwd-close-btn .material-symbols-outlined[b-l61ere0w9e] {
    font-size: 20px;
}

/* ── Body ─────────────────────────────────────────────────────────────────── */

.pwd-body[b-l61ere0w9e] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* ── Field ────────────────────────────────────────────────────────────────── */

.pwd-field[b-l61ere0w9e] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.pwd-label[b-l61ere0w9e] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    font-weight: 600;
    color: var(--textSecondary);
    margin: 0;
}

.pwd-valid-icon[b-l61ere0w9e] {
    font-size: 18px;
    color: var(--success);
    font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

/* ── Input wrapper (handles border + focus ring) ──────────────────────────── */

.pwd-input-wrap[b-l61ere0w9e] {
    position: relative;
    display: flex;
    align-items: center;
    border-radius: var(--radiusMd);
    border: 1px solid var(--border);
    background: var(--surfaceRaised);
    transition: border-color 150ms ease, box-shadow 150ms ease;
}

.pwd-input-wrap:focus-within[b-l61ere0w9e] {
    border-color: var(--primary);
    box-shadow: 0 0 0 3px var(--primarySubtle);
}

.pwd-input-wrap.wrap-valid[b-l61ere0w9e] {
    border-color: var(--success);
}

.pwd-input-wrap.wrap-valid:focus-within[b-l61ere0w9e] {
    box-shadow: 0 0 0 3px rgba(5, 150, 105, 0.12);
}

.pwd-input-wrap.wrap-invalid[b-l61ere0w9e] {
    border-color: var(--danger);
}

.pwd-input-wrap.wrap-invalid:focus-within[b-l61ere0w9e] {
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.12);
}

/* ── Input (strip border/bg - wrapper owns those) ─────────────────────────── */

.pwd-input[b-l61ere0w9e] {
    flex: 1;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    outline: none !important;
    padding-right: 48px;
}

/* ── Show/hide eye button ─────────────────────────────────────────────────── */

.pwd-eye-btn[b-l61ere0w9e] {
    position: absolute;
    right: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: none;
    background: transparent;
    color: var(--textMuted);
    cursor: pointer;
    padding: 0;
    transition: color 150ms ease;
}

.pwd-eye-btn:hover[b-l61ere0w9e] {
    color: var(--textPrimary);
}

.pwd-eye-btn .material-symbols-outlined[b-l61ere0w9e] {
    font-size: 20px;
}

/* ── Validation ───────────────────────────────────────────────────────────── */

.pwd-error-text[b-l61ere0w9e] {
    color: var(--danger);
    font-size: 13px;
    font-weight: 500;
    margin: 0;
}

.pwd-rules[b-l61ere0w9e] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.pwd-rules li[b-l61ere0w9e] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: var(--textMuted);
}

.pwd-rules li[b-l61ere0w9e]::before {
    content: '';
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--textMuted);
    flex-shrink: 0;
}

.pwd-rule--fail[b-l61ere0w9e] {
    color: var(--danger);
}

.pwd-rule--fail[b-l61ere0w9e]::before {
    background: var(--danger);
}

.pwd-rule--pass[b-l61ere0w9e] {
    color: var(--textMuted);
}

/* ── Mobile ───────────────────────────────────────────────────────────────── */

@media (max-width: 480px) {
    .pwd-dialog[b-l61ere0w9e] {
        max-height: 100dvh;
        border-radius: var(--radiusLg);
    }

    .pwd-title[b-l61ere0w9e] {
        font-size: 20px;
    }
}

/* Submit button — normal weight, not bold */
.pwd-body[b-l61ere0w9e]  .btn {
    font-weight: 400;
}
/* /Components/Input.razor.rz.scp.css */
/* ================================
   Root Variables
================================ */

.in-field[b-dkzjaswx1x]{
    --in-width: 100%;
    --in-height: 44px;

    --in-bg: #ffffff;
    --in-text: #111827;
    --in-muted: #6b7280;

    --in-outline: #e5e7eb;
    --in-accent: #2563eb;
    --in-error: #ef4444;

    --in-radius: 5px;
    --in-pad-x: 14px;
    --in-icon-gap: 10px;
    --in-border: var(--in-outline);

    --in-shadow-rest: 0 1px 2px rgba(0,0,0,0.04);
    --in-shadow-hover: 0 2px 6px rgba(0,0,0,0.06);
    --in-shadow-focus: 0 4px 12px rgba(0,0,0,0.08);

    width: var(--in-width);
    color: var(--in-text);
    font-family: inherit;
}

/* ================================
   Label
================================ */

.in-label[b-dkzjaswx1x]{
    display: block;
    margin-bottom: 6px;
    font-size: 0.8rem;
    font-weight: 300;
    color: var(--textMuted);
    cursor: pointer;
}

/* ================================
   Control (Surface)
================================ */

.in-control[b-dkzjaswx1x]{
    display: flex;
    align-items: center;
    height: var(--in-height);
    background-color: var(--primarySubtle);

    border: 1px solid var(--primary);
    border-radius: var(--in-radius);
    box-shadow: var(--in-shadow-rest);
    
    transition:
            border-color 160ms ease,
            box-shadow 160ms ease,
            transform 120ms ease,
            background 160ms ease;
}

/* Hover Elevation */
.in-control:hover[b-dkzjaswx1x]{
    border-color: var(--in-accent);
    box-shadow:
            0 0 0 3px color-mix(in srgb, var(--in-accent) 18%, transparent),
            var(--in-shadow-focus);
}

/* Focus Elevation */
.in-control:focus-within[b-dkzjaswx1x]{
    border-color: var(--in-accent);
    box-shadow:
            0 0 0 3px color-mix(in srgb, var(--in-accent) 18%, transparent),
            var(--in-shadow-focus);
}

.in-control.invalid[b-dkzjaswx1x]{
    border-color: var(--in-error);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--in-error) 18%, transparent);
}

.in-control.invalid:focus-within[b-dkzjaswx1x]{
    border-color: var(--in-error);
    box-shadow:
            0 0 0 3px color-mix(in srgb, var(--in-error) 22%, transparent),
            var(--in-shadow-focus);
}

.in-input[b-dkzjaswx1x]::placeholder{
    color: color-mix(in srgb, var(--in-muted) 75%, transparent);
}

/* ================================
   Icons
================================ */

.in-icon[b-dkzjaswx1x]{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    user-select: none;
    background: none;

    font-size: 22px;
    color: var(--in-muted);
    transition: color 120ms ease;
}

.in-control:focus-within .in-icon[b-dkzjaswx1x]{
    color: var(--in-accent);
}

.in-icon-left[b-dkzjaswx1x]{
    padding-left: var(--in-pad-x);
    padding-right: var(--in-icon-gap);
}

.in-icon-right[b-dkzjaswx1x]{
    padding-right: var(--in-pad-x);
    padding-left: var(--in-icon-gap);
}

.in-input.in-has-left[b-dkzjaswx1x]{
    padding-left: 0;
}

.in-input.in-has-right[b-dkzjaswx1x]{
    padding-right: 0;
}

.in-icon.invalid[b-dkzjaswx1x]{
    color: var(--in-error);
    font-variation-settings: 'FILL' 1;
}

/*!* ================================*/
/*   Disabled*/
/*================================ *!*/

.in-disabled .in-control[b-dkzjaswx1x]{
    background: #f3f4f6;
    border-color: #e5e7eb;
    box-shadow: none;
    cursor: not-allowed;
}

.in-disabled .in-input[b-dkzjaswx1x]{
    cursor: not-allowed;
}

/*!* ================================*/
/*   ReadOnly*/
/*================================ *!*/

.in-readonly .in-control[b-dkzjaswx1x]{
    background: #fafafa;
}

/* ✅ Blazor validation class */
.in-input.input-validation-error[b-dkzjaswx1x]{
    border-color: var(--in-error);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--in-error) 18%, transparent);
}

/* ================================
   Validation Text
================================ */

.in-helper[b-dkzjaswx1x]{
    margin-top: 6px;
    font-size: 0.85rem;
    color: var(--in-error);
}

/* ================================
   Native datetime polish
================================ */

.in-input[b-dkzjaswx1x]::-webkit-calendar-picker-indicator{
    opacity: 0.75;
    cursor: pointer;
}

/* Outline mode */
.in-input.is-outline[b-dkzjaswx1x]{
    border-color: var(--in-accent);
}

/*!* Disabled *!*/
.in-input.is-disabled[b-dkzjaswx1x]{
    opacity: .65;
    cursor: not-allowed;
}

/* Checkbox */
.in-checkbox[b-dkzjaswx1x] {
    display: flex;
    gap: 4px;
    cursor: pointer;
}

/* Password show/hide toggle */
.in-eye-btn[b-dkzjaswx1x] {
    border: none;
    background: transparent;
    cursor: pointer;
    padding: 0;
    padding-right: var(--in-pad-x);
    padding-left: var(--in-icon-gap);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--in-muted);
    flex-shrink: 0;
    min-width: 44px;
    min-height: 44px;
    border-radius: 0 var(--in-radius) var(--in-radius) 0;
    transition: color 120ms ease;
}

.in-eye-btn .material-symbols-outlined[b-dkzjaswx1x] {
    font-size: 22px;
}

.in-eye-btn:hover[b-dkzjaswx1x] {
    color: var(--in-accent);
}

.in-control:focus-within .in-eye-btn[b-dkzjaswx1x] {
    color: var(--in-accent);
}
/* /Components/NavMenu.razor.rz.scp.css */
.nav-menu[b-nabyfrwoch] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.nav-menu a[b-nabyfrwoch] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 9px 10px;
    border-radius: 10px;
    color: var(--textSecondary);
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    min-height: 44px;
    transition: background 150ms ease, color 150ms ease;
}

.nav-menu a:hover[b-nabyfrwoch] {
    background: var(--surfaceAlt);
    color: var(--textPrimary);
}

.nav-menu a.active[b-nabyfrwoch] {
    background: var(--primarySubtle);
    color: var(--primary);
    font-weight: 600;
}

.nav-icon[b-nabyfrwoch] {
    font-size: 20px;
    flex-shrink: 0;
    font-variation-settings: 'FILL' 0, 'wght' 300, 'GRAD' 0, 'opsz' 24;
    transition: font-variation-settings 150ms ease;
}

.nav-menu a.active .nav-icon[b-nabyfrwoch] {
    font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

.nav-label[b-nabyfrwoch] {
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.nav-section-label[b-nabyfrwoch] {
    margin-top: 20px;
    margin-bottom: 4px;
    padding: 0 10px;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .12em;
    color: var(--textMuted);
}
/* /Components/Shared/AddExerciseDialog.razor.rz.scp.css */
/* Backdrop */
.ae-backdrop[b-wl6tvj0s87] {
    position: fixed;
    inset: 0;
    z-index: 500;
    background: rgba(0, 0, 0, 0.45);
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 48px 16px 24px;
    overflow-y: auto;
}

/* Dialog card */
.ae-dialog[b-wl6tvj0s87] {
    width: 100%;
    max-width: 480px;
    padding: 0;
    display: flex;
    flex-direction: column;
    max-height: calc(100dvh - 72px);
    overflow-y: auto;
}

/* Header */
.ae-header[b-wl6tvj0s87] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 24px 16px;
    border-bottom: 1px solid var(--border);
    flex-shrink: 0;
}

.ae-title[b-wl6tvj0s87] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--textPrimary);
}

.ae-close-btn[b-wl6tvj0s87] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: none;
    background: transparent;
    color: var(--textMuted);
    cursor: pointer;
    border-radius: var(--radiusSm);
    transition: background 150ms ease, color 150ms ease;
}

.ae-close-btn:hover[b-wl6tvj0s87] {
    background: var(--surfaceAlt);
    color: var(--textPrimary);
}

/* Body */
.ae-body[b-wl6tvj0s87] {
    padding: 20px 24px 24px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

/* Field wrapper */
.ae-field[b-wl6tvj0s87] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.ae-row[b-wl6tvj0s87] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.ae-field-half[b-wl6tvj0s87] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

/* Labels */
.ae-label[b-wl6tvj0s87] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--textPrimary);
    margin: 0;
}

.ae-label-optional[b-wl6tvj0s87] {
    font-weight: 400;
    color: var(--textMuted);
    font-size: 0.8rem;
}

/* Chips */
.ae-context-box[b-wl6tvj0s87] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 14px;
    background: var(--primarySubtle);
    border-radius: var(--radiusSm);
}

.ae-chip[b-wl6tvj0s87] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 12px;
    border-radius: var(--radiusSm);
    border: none;
    background: var(--mainBg);
    color: var(--textSecondary);
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    user-select: none;
    min-height: 32px;
    transition: background 150ms ease, color 150ms ease;
}

.ae-chip:hover[b-wl6tvj0s87] {
    color: var(--textPrimary);
}

.ae-chip-active[b-wl6tvj0s87] {
    background: var(--primary);
    color: var(--textPrimary);
    font-weight: 600;
}

.ae-chip-check[b-wl6tvj0s87] {
    font-size: 15px;
}

.ae-chip-sm[b-wl6tvj0s87] {
    padding: 4px 10px;
    font-size: 12px;
}

.ae-intensity-chips[b-wl6tvj0s87] {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

/* Number input with unit */
.ae-number-wrap[b-wl6tvj0s87] {
    position: relative;
    display: flex;
    align-items: center;
}

.ae-number-input[b-wl6tvj0s87] {
    padding-right: 46px !important;
}

.ae-number-unit[b-wl6tvj0s87] {
    position: absolute;
    right: 12px;
    font-size: 13px;
    color: var(--textMuted);
    pointer-events: none;
    font-weight: 500;
}

/* Error */
.ae-error-text[b-wl6tvj0s87] {
    font-size: 0.8rem;
    color: var(--danger);
    margin: 0;
}

/* Quick-pick pills */
.ae-quickpick-wrap[b-wl6tvj0s87] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.ae-quickpick-pill[b-wl6tvj0s87] {
    display: inline-flex;
    align-items: center;
    padding: 5px 12px;
    border-radius: 999px;
    border: 1px solid var(--border);
    background: var(--surface);
    color: var(--textSecondary);
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: background 150ms ease, border-color 150ms ease, color 150ms ease;
    min-height: 32px;
}

.ae-quickpick-pill:hover[b-wl6tvj0s87] {
    background: var(--primarySubtle);
    border-color: var(--primary);
    color: var(--textPrimary);
}

/* Tags */
.ae-tags-list[b-wl6tvj0s87] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 6px;
}

.ae-tag-pill[b-wl6tvj0s87] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 8px 3px 10px;
    border-radius: 999px;
    background: var(--primarySubtle);
    color: var(--textPrimary);
    font-size: 12px;
    font-weight: 500;
}

.ae-tag-remove[b-wl6tvj0s87] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border: none;
    background: transparent;
    color: var(--textMuted);
    cursor: pointer;
    padding: 0;
    border-radius: 50%;
    transition: background 150ms ease, color 150ms ease;
}

.ae-tag-remove .material-symbols-outlined[b-wl6tvj0s87] {
    font-size: 14px;
}

.ae-tag-remove:hover[b-wl6tvj0s87] {
    background: var(--border);
    color: var(--textPrimary);
}

.ae-tag-input-wrap[b-wl6tvj0s87] {
    position: relative;
}

.ae-tag-suggestions[b-wl6tvj0s87] {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--radiusSm);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    z-index: 10;
    overflow: hidden;
}

.ae-tag-suggestion[b-wl6tvj0s87] {
    display: block;
    width: 100%;
    padding: 8px 12px;
    text-align: left;
    background: transparent;
    border: none;
    font-size: 13px;
    color: var(--textPrimary);
    cursor: pointer;
    transition: background 100ms ease;
}

.ae-tag-suggestion:hover[b-wl6tvj0s87] {
    background: var(--primarySubtle);
}

/* Responsive */
@media (max-width: 480px) {
    .ae-backdrop[b-wl6tvj0s87] {
        padding: 0;
        align-items: flex-end;
    }

    .ae-dialog[b-wl6tvj0s87] {
        max-width: 100%;
        border-radius: var(--radiusXl) var(--radiusXl) 0 0;
        max-height: 92dvh;
    }

    .ae-row[b-wl6tvj0s87] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Shared/AddMealDialog.razor.rz.scp.css */
/* -- Backdrop ------------------------------------------------------------ */

.am-backdrop[b-ws7lwltd0z] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.55);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 16px;
}

/* -- Dialog card --------------------------------------------------------- */

.am-dialog[b-ws7lwltd0z] {
    width: 100%;
    max-width: 480px;
    max-height: 90dvh;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
}

/* -- Header -------------------------------------------------------------- */

.am-header[b-ws7lwltd0z] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 24px;
}

.am-title[b-ws7lwltd0z] {
    font-size: 22px;
    font-weight: 800;
    color: var(--textPrimary);
    margin: 0;
}

.am-close-btn[b-ws7lwltd0z] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    flex-shrink: 0;
    border: none;
    border-radius: var(--radiusSm);
    background: var(--surfaceAlt);
    color: var(--textMuted);
    cursor: pointer;
    transition: background 150ms ease, color 150ms ease;
}

.am-close-btn:hover[b-ws7lwltd0z] {
    background: var(--border);
    color: var(--textPrimary);
}

.am-close-btn .material-symbols-outlined[b-ws7lwltd0z] {
    font-size: 20px;
}

/* -- Body ---------------------------------------------------------------- */

.am-body[b-ws7lwltd0z] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* -- Field --------------------------------------------------------------- */

.am-field[b-ws7lwltd0z] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.am-label[b-ws7lwltd0z] {
    font-size: 14px;
    font-weight: 600;
    color: var(--textSecondary);
    margin: 0;
}

.am-label-optional[b-ws7lwltd0z] {
    font-size: 12px;
    font-weight: 400;
    color: var(--textMuted);
}

/* -- Quick pick pills ---------------------------------------------------- */

.am-quickpick-wrap[b-ws7lwltd0z] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.am-quickpick-pill[b-ws7lwltd0z] {
    display: inline-flex;
    align-items: center;
    padding: 5px 12px;
    border-radius: 999px;
    border: 1px solid var(--border);
    background: var(--surface);
    color: var(--textSecondary);
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: background 150ms ease, color 150ms ease, border-color 150ms ease;
    max-width: 200px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.am-quickpick-pill:hover[b-ws7lwltd0z] {
    background: var(--primarySubtle);
    color: var(--primary);
    border-color: var(--primary);
}

/* -- Meal type chip box -------------------------------------------------- */

.am-context-box[b-ws7lwltd0z] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 14px;
    background: var(--primarySubtle);
    border-radius: var(--radiusSm);
}

.am-chip[b-ws7lwltd0z] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 12px;
    border-radius: var(--radiusSm);
    border: none;
    background: var(--mainBg);
    color: var(--textSecondary);
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    user-select: none;
    min-height: 32px;
    transition: background 150ms ease, color 150ms ease;
}

.am-chip:hover[b-ws7lwltd0z] {
    color: var(--textPrimary);
}

.am-chip-active[b-ws7lwltd0z] {
    background: var(--primary);
    color: #ffffff;
    font-weight: 600;
}

.am-chip-check[b-ws7lwltd0z] {
    font-size: 15px;
    line-height: 1;
}

/* -- Macros grid --------------------------------------------------------- */

.am-macros-grid[b-ws7lwltd0z] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.am-macro-cell[b-ws7lwltd0z] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.am-macro-label[b-ws7lwltd0z] {
    font-size: 12px;
    color: var(--textMuted);
    margin: 0;
}

.am-macro-input-wrap[b-ws7lwltd0z] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.am-macro-input[b-ws7lwltd0z] {
    flex: 1;
    min-width: 0;
}

.am-macro-unit[b-ws7lwltd0z] {
    font-size: 13px;
    color: var(--textMuted);
    white-space: nowrap;
    flex-shrink: 0;
}

/* -- Tags ---------------------------------------------------------------- */

.am-tags-list[b-ws7lwltd0z] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.am-tag-pill[b-ws7lwltd0z] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 8px 3px 10px;
    border-radius: 999px;
    background: var(--primarySubtle);
    color: var(--primary);
    font-size: 13px;
    font-weight: 600;
}

.am-tag-remove[b-ws7lwltd0z] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border: none;
    border-radius: 50%;
    background: transparent;
    color: var(--primary);
    cursor: pointer;
    padding: 0;
    transition: background 150ms ease;
}

.am-tag-remove:hover[b-ws7lwltd0z] {
    background: var(--primary);
    color: #ffffff;
}

.am-tag-remove .material-symbols-outlined[b-ws7lwltd0z] {
    font-size: 14px;
}

.am-tag-input-wrap[b-ws7lwltd0z] {
    position: relative;
}

.am-tag-suggestions[b-ws7lwltd0z] {
    position: absolute;
    top: 100%;
    inset-inline: 0;
    z-index: 10;
    margin-top: 4px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--radiusSm);
    box-shadow: var(--shadow);
    overflow: hidden;
}

.am-tag-suggestion[b-ws7lwltd0z] {
    display: block;
    width: 100%;
    padding: 8px 12px;
    border: none;
    background: transparent;
    color: var(--textPrimary);
    font-size: 13px;
    text-align: start;
    cursor: pointer;
    transition: background 150ms ease;
}

.am-tag-suggestion:hover[b-ws7lwltd0z] {
    background: var(--primarySubtle);
}

/* -- Food items ---------------------------------------------------------- */

.am-items-list[b-ws7lwltd0z] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.am-item-row[b-ws7lwltd0z] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    border-radius: var(--radiusSm);
    background: var(--surfaceAlt);
}

.am-item-info[b-ws7lwltd0z] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.am-item-name[b-ws7lwltd0z] {
    font-size: 14px;
    font-weight: 600;
    color: var(--textPrimary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.am-item-serving[b-ws7lwltd0z] {
    font-size: 12px;
    color: var(--textMuted);
}

.am-item-macros[b-ws7lwltd0z] {
    font-size: 12px;
    color: var(--textMuted);
}

.am-item-remove[b-ws7lwltd0z] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    flex-shrink: 0;
    border: none;
    border-radius: var(--radiusSm);
    background: transparent;
    color: var(--textMuted);
    cursor: pointer;
    transition: background 150ms ease, color 150ms ease;
}

.am-item-remove:hover[b-ws7lwltd0z] {
    background: var(--alertRoseBg);
    color: var(--alertRoseText);
}

.am-item-remove .material-symbols-outlined[b-ws7lwltd0z] {
    font-size: 18px;
}

/* -- Add item form ------------------------------------------------------- */

.am-item-form[b-ws7lwltd0z] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 12px;
    border-radius: var(--radiusSm);
    background: var(--surfaceAlt);
    border: 1px solid var(--border);
}

.am-item-form-row[b-ws7lwltd0z] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.am-item-form-input[b-ws7lwltd0z] {
    min-width: 0;
}

.am-item-form-actions[b-ws7lwltd0z] {
    display: flex;
    gap: 8px;
    justify-content: flex-end;
    margin-top: 4px;
}

.am-item-form-btn[b-ws7lwltd0z] {
    padding: 6px 14px;
    border-radius: var(--radiusSm);
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    border: 1px solid transparent;
    transition: background 150ms ease, color 150ms ease;
}

.am-item-form-cancel[b-ws7lwltd0z] {
    background: var(--surface);
    border-color: var(--border);
    color: var(--textSecondary);
}

.am-item-form-cancel:hover[b-ws7lwltd0z] {
    background: var(--surfaceAlt);
    color: var(--textPrimary);
}

.am-item-form-add[b-ws7lwltd0z] {
    background: var(--primary);
    color: #ffffff;
}

.am-item-form-add:hover:not(:disabled)[b-ws7lwltd0z] {
    opacity: 0.88;
}

.am-item-form-add:disabled[b-ws7lwltd0z] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* -- Add item button ----------------------------------------------------- */

.am-add-item-btn[b-ws7lwltd0z] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 8px 14px;
    border-radius: var(--radiusSm);
    border: 1px dashed var(--border);
    background: transparent;
    color: var(--textMuted);
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: background 150ms ease, color 150ms ease, border-color 150ms ease;
    width: fit-content;
}

.am-add-item-btn:hover[b-ws7lwltd0z] {
    background: var(--primarySubtle);
    color: var(--primary);
    border-color: var(--primary);
}

.am-add-item-btn .material-symbols-outlined[b-ws7lwltd0z] {
    font-size: 18px;
}

/* -- Error text ---------------------------------------------------------- */

.am-error-text[b-ws7lwltd0z] {
    color: var(--danger);
    font-size: 13px;
    font-weight: 500;
    margin: 0;
}

/* -- Submit button ------------------------------------------------------- */

.am-body[b-ws7lwltd0z]  .btn {
    font-weight: 400;
}

/* -- Mobile -------------------------------------------------------------- */

@media (max-width: 480px) {
    .am-dialog[b-ws7lwltd0z] {
        max-height: 100dvh;
    }

    .am-title[b-ws7lwltd0z] {
        font-size: 20px;
    }
}
/* /Components/Shared/AddMedicationDialog.razor.rz.scp.css */
/* Backdrop */
.ld-backdrop[b-yi4yfg0427] {
    position: fixed;
    inset: 0;
    z-index: 500;
    background: rgba(0, 0, 0, 0.45);
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 48px 16px 24px;
    overflow-y: auto;
}

/* Dialog card */
.ld-dialog[b-yi4yfg0427] {
    width: 100%;
    max-width: 480px;
    padding: 0;
    display: flex;
    flex-direction: column;
    max-height: calc(100dvh - 72px);
    overflow-y: auto;
}

/* Header */
.ld-header[b-yi4yfg0427] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 24px 16px;
    border-bottom: 1px solid var(--border);
    flex-shrink: 0;
}

.ld-title[b-yi4yfg0427] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--textPrimary);
}

.ld-close-btn[b-yi4yfg0427] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: none;
    background: transparent;
    color: var(--textMuted);
    cursor: pointer;
    border-radius: var(--radiusSm);
    transition: background 150ms ease, color 150ms ease;
}

.ld-close-btn:hover[b-yi4yfg0427] {
    background: var(--surfaceAlt);
    color: var(--textPrimary);
}

/* Body */
.ld-body[b-yi4yfg0427] {
    padding: 20px 24px 24px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

/* Fields */
.ld-field[b-yi4yfg0427] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.ld-row[b-yi4yfg0427] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.ld-field-half[b-yi4yfg0427] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.ld-label[b-yi4yfg0427] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--textPrimary);
    margin: 0;
}

.ld-optional[b-yi4yfg0427] {
    font-weight: 400;
    color: var(--textMuted);
    font-size: 0.8rem;
}

/* Number input with inline unit */
.ld-num-wrap[b-yi4yfg0427] {
    position: relative;
    display: flex;
    align-items: center;
}

.ld-num-input[b-yi4yfg0427] {
    padding-right: 46px !important;
}

.ld-num-unit[b-yi4yfg0427] {
    position: absolute;
    right: 12px;
    font-size: 13px;
    color: var(--textMuted);
    pointer-events: none;
    font-weight: 500;
}

/* Quick-dose chips */
.ld-chips[b-yi4yfg0427] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.ld-chip[b-yi4yfg0427] {
    padding: 4px 14px;
    border-radius: var(--radiusSm);
    border: 1px solid var(--border);
    background: var(--secondaryBg);
    color: var(--textSecondary);
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    min-height: 32px;
    transition: background 150ms ease, color 150ms ease, border-color 150ms ease;
}

.ld-chip:hover[b-yi4yfg0427] {
    color: var(--textPrimary);
    border-color: var(--primary);
}

.ld-chip-active[b-yi4yfg0427] {
    background: var(--alertAmberBg);
    border-color: var(--alertAmberBorder);
    color: var(--alertAmberText);
    font-weight: 700;
}

/* Error */
.ld-error[b-yi4yfg0427] {
    font-size: 0.8rem;
    color: var(--danger);
    margin: 0;
}

/* Mobile: bottom-sheet */
@media (max-width: 480px) {
    .ld-backdrop[b-yi4yfg0427] {
        padding: 0;
        align-items: flex-end;
    }

    .ld-dialog[b-yi4yfg0427] {
        max-width: 100%;
        border-radius: var(--radiusXl) var(--radiusXl) 0 0;
        max-height: 92dvh;
    }

    .ld-row[b-yi4yfg0427] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Shared/AlertPopup.razor.rz.scp.css */
.alert-popup-container[b-idfg5ao28n] {
    position: fixed;
    top: 16px;
    right: 16px;
    z-index: 9999;
    display: flex;
    flex-direction: column;
    gap: 10px;
    max-width: 400px;
    width: calc(100% - 32px);
    pointer-events: none;
}

.alert-toast[b-idfg5ao28n] {
    display: flex;
    border-radius: var(--radiusMd);
    background: var(--secondaryBg);
    box-shadow: var(--shadowLg);
    overflow: hidden;
    pointer-events: auto;
    border: 1px solid var(--border);
}

.alert-toast-enter[b-idfg5ao28n] {
    animation: alert-slide-in-b-idfg5ao28n 300ms ease-out forwards;
}

.alert-toast-exit[b-idfg5ao28n] {
    animation: alert-slide-out-b-idfg5ao28n 200ms ease-in forwards;
}

.alert-toast-strip[b-idfg5ao28n] {
    width: 4px;
    flex-shrink: 0;
}

.alert-toast-critical .alert-toast-strip[b-idfg5ao28n] {
    background: var(--alertRoseBorder);
}

.alert-toast-warning .alert-toast-strip[b-idfg5ao28n] {
    background: var(--alertAmberBorder);
}

.alert-toast-info .alert-toast-strip[b-idfg5ao28n] {
    background: var(--alertGreenBorder);
}

.alert-toast-body[b-idfg5ao28n] {
    flex: 1;
    padding: 12px 14px;
    min-width: 0;
}

.alert-toast-header[b-idfg5ao28n] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.alert-toast-icon[b-idfg5ao28n] {
    font-size: 18px;
    flex-shrink: 0;
}

.alert-toast-critical .alert-toast-icon[b-idfg5ao28n] {
    color: var(--alertRoseText);
}

.alert-toast-warning .alert-toast-icon[b-idfg5ao28n] {
    color: var(--alertAmberText);
}

.alert-toast-info .alert-toast-icon[b-idfg5ao28n] {
    color: var(--alertGreenText);
}

.alert-toast-title[b-idfg5ao28n] {
    flex: 1;
    font-size: 13px;
    font-weight: 600;
    color: var(--textPrimary);
    line-height: 1.3;
    min-width: 0;
}

.alert-toast-close[b-idfg5ao28n] {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: none;
    background: transparent;
    color: var(--textMuted);
    cursor: pointer;
    border-radius: var(--radiusSm);
    padding: 0;
    transition: background 150ms ease, color 150ms ease;
}

.alert-toast-close:hover[b-idfg5ao28n] {
    background: var(--surfaceAlt);
    color: var(--textPrimary);
}

.alert-toast-close .material-symbols-outlined[b-idfg5ao28n] {
    font-size: 16px;
}

.alert-toast-message[b-idfg5ao28n] {
    font-size: 12px;
    color: var(--textSecondary);
    line-height: 1.5;
    margin: 6px 0 0;
}

.alert-toast-category[b-idfg5ao28n] {
    display: inline-block;
    font-size: 11px;
    font-weight: 500;
    color: var(--textMuted);
    margin-top: 6px;
}

@keyframes alert-slide-in-b-idfg5ao28n {
    from {
        opacity: 0;
        transform: translateX(100%);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes alert-slide-out-b-idfg5ao28n {
    from {
        opacity: 1;
        transform: translateX(0);
    }
    to {
        opacity: 0;
        transform: translateX(100%);
    }
}

@media (max-width: 480px) {
    .alert-popup-container[b-idfg5ao28n] {
        right: 8px;
        top: 8px;
        max-width: none;
        width: calc(100% - 16px);
    }
}
/* /Components/Shared/AppSelect.razor.rz.scp.css */
.asel-wrap[b-08i8e9zhhq] {
    position: relative;
    width: 100%;
}

/* Trigger button */
.asel-trigger[b-08i8e9zhhq] {
    width: 100%;
    min-height: 40px;
    padding: 8px 36px 8px 12px;
    border: 1px solid var(--border);
    border-radius: var(--radiusSm);
    background: var(--secondaryBg);
    color: var(--textPrimary);
    font-size: 0.875rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-align: left;
    transition: border-color 150ms ease;
    gap: 8px;
}

.asel-trigger:focus[b-08i8e9zhhq] {
    outline: 2px solid var(--primary);
    outline-offset: 2px;
    border-color: var(--primary);
}

.asel-trigger-open[b-08i8e9zhhq] {
    border-color: var(--primary);
    outline: 2px solid var(--primary);
    outline-offset: 2px;
}

.asel-value[b-08i8e9zhhq] {
    flex: 1;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    line-height: 1.4;
}

.asel-placeholder[b-08i8e9zhhq] {
    color: var(--textMuted);
}

.asel-chevron[b-08i8e9zhhq] {
    flex-shrink: 0;
    color: var(--textMuted);
    display: flex;
    align-items: center;
    pointer-events: none;
}

.asel-chevron svg[b-08i8e9zhhq] {
    width: 10px;
    height: 6px;
    transition: transform 150ms ease;
}

.asel-trigger-open .asel-chevron svg[b-08i8e9zhhq] {
    transform: rotate(180deg);
}

/* Transparent backdrop to close on outside click */
.asel-backdrop[b-08i8e9zhhq] {
    position: fixed;
    inset: 0;
    z-index: 49;
}

/* Dropdown list */
.asel-dropdown[b-08i8e9zhhq] {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    z-index: 50;
    background: var(--secondaryBg);
    border: 1px solid var(--border);
    border-radius: var(--radiusSm);
    box-shadow: var(--shadowLg);
    padding: 4px;
    max-height: 220px;
    overflow-y: auto;
}

/* Option buttons */
.asel-option[b-08i8e9zhhq] {
    width: 100%;
    padding: 8px 10px;
    border: none;
    background: transparent;
    color: var(--textPrimary);
    font-size: 0.875rem;
    text-align: left;
    cursor: pointer;
    border-radius: 6px;
    transition: background 120ms ease;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.asel-option:hover[b-08i8e9zhhq] {
    background: var(--surfaceAlt);
}

.asel-option-active[b-08i8e9zhhq] {
    background: var(--primarySubtle);
    color: var(--primary);
    font-weight: 400;
}
/* /Components/Shared/DateRangePicker.razor.rz.scp.css */
/* Wrapper - relative so the dropdown anchors correctly */
.drp-wrap[b-vfah10moys] {
    position: relative;
    display: inline-block;
}

/* Pill button */
.drp-pill[b-vfah10moys] {
    display: flex;
    align-items: center;
    gap: 6px;
    border: 1px solid var(--border);
    border-radius: var(--radiusSm);
    background: var(--mainBg);
    padding: 6px 12px;
    font-size: 0.85rem;
    color: var(--textPrimary);
    cursor: pointer;
    transition: background 150ms ease;
    min-height: 44px;
    white-space: nowrap;
}

.drp-pill:hover[b-vfah10moys] {
    background: var(--primarySubtle);
}

.drp-cal-icon[b-vfah10moys] {
    font-size: 18px;
    color: var(--primary);
}

.drp-caret[b-vfah10moys] {
    font-size: 18px;
    color: var(--textMuted);
}

/* Dropdown panel */
.drp-dropdown[b-vfah10moys] {
    position: absolute;
    z-index: 1000;
    top: calc(100% + 6px);
    right: 0;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--radiusMd);
    box-shadow: var(--shadowLg);
    padding: 16px;
    min-width: 280px;
}

/* Month navigation */
.drp-month-nav[b-vfah10moys] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.drp-month-label[b-vfah10moys] {
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--textPrimary);
}

.drp-nav-btn[b-vfah10moys] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: none;
    background: transparent;
    border-radius: var(--radiusSm);
    cursor: pointer;
    color: var(--textMuted);
    transition: background 150ms ease, color 150ms ease;
}

.drp-nav-btn:hover[b-vfah10moys] {
    background: var(--primarySubtle);
    color: var(--primary);
}

.drp-nav-btn .material-symbols-outlined[b-vfah10moys] {
    font-size: 18px;
}

/* Calendar grid */
.drp-grid[b-vfah10moys] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
    margin-bottom: 10px;
}

.drp-dow[b-vfah10moys] {
    text-align: center;
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--textMuted);
    padding: 4px 0 6px;
}

/* Day cells */
.drp-day[b-vfah10moys] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: none;
    background: transparent;
    border-radius: 50%;
    font-size: 0.8rem;
    color: var(--textPrimary);
    cursor: pointer;
    transition: background 100ms ease, color 100ms ease;
    justify-self: center;
}

.drp-day:hover[b-vfah10moys] {
    background: var(--primarySubtle);
    color: var(--primary);
}

/* Range fill - flush background, no circle */
.drp-day-in-range[b-vfah10moys] {
    background: var(--primarySubtle);
    border-radius: 0;
    color: var(--textPrimary);
    width: 100%;
}

/* Endpoint days - full circle, primary color */
.drp-day-endpoint[b-vfah10moys] {
    background: var(--primary);
    border-radius: 50%;
    color: #ffffff;
    width: 32px;
}

.drp-day-endpoint:hover[b-vfah10moys] {
    background: var(--primaryDark);
    color: #ffffff;
}

/* Disabled (future) day cells */
.drp-day:disabled[b-vfah10moys] {
    opacity: 0.28;
    cursor: not-allowed;
    pointer-events: none;
}

/* Disabled next-month nav button */
.drp-nav-btn:disabled[b-vfah10moys] {
    opacity: 0.28;
    cursor: not-allowed;
    pointer-events: none;
}

/* Hint text */
.drp-hint[b-vfah10moys] {
    font-size: 0.78rem;
    color: var(--textMuted);
    text-align: center;
    margin: 0 0 8px;
}

/* Action buttons row */
.drp-actions[b-vfah10moys] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 8px;
    padding-top: 10px;
    border-top: 1px solid var(--border);
}

.drp-btn[b-vfah10moys] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 0 14px;
    border-radius: var(--radiusSm);
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 150ms ease, color 150ms ease;
    border: 1px solid transparent;
}

.drp-btn-cancel[b-vfah10moys] {
    background: transparent;
    border-color: var(--border);
    color: var(--textMuted);
}

.drp-btn-cancel:hover[b-vfah10moys] {
    background: var(--surfaceAlt);
    color: var(--textPrimary);
}

.drp-btn-apply[b-vfah10moys] {
    background: var(--primary);
    color: #ffffff;
    border-color: var(--primary);
}

.drp-btn-apply:hover:not(:disabled)[b-vfah10moys] {
    background: var(--primaryDark);
    border-color: var(--primaryDark);
}

.drp-btn-apply:disabled[b-vfah10moys] {
    opacity: 0.45;
    cursor: not-allowed;
}
/* /Components/Shared/DateTimePicker.razor.rz.scp.css */
/* Wrapper - relative so the dropdown anchors correctly */
.dtp-wrap[b-ojfrqgibua] {
    position: relative;
    display: inline-block;
}

/* Pill button */
.dtp-pill[b-ojfrqgibua] {
    display: flex;
    align-items: center;
    gap: 6px;
    border: 1px solid var(--border);
    border-radius: var(--radiusSm);
    background: var(--mainBg);
    padding: 6px 12px;
    font-size: 0.85rem;
    color: var(--textPrimary);
    cursor: pointer;
    transition: background 150ms ease;
    min-height: 44px;
    white-space: nowrap;
}

.dtp-pill:hover[b-ojfrqgibua] {
    background: var(--primarySubtle);
}

.dtp-cal-icon[b-ojfrqgibua] {
    font-size: 18px;
    color: var(--primary);
}

.dtp-caret[b-ojfrqgibua] {
    font-size: 18px;
    color: var(--textMuted);
}

/* Dropdown panel */
.dtp-dropdown[b-ojfrqgibua] {
    position: absolute;
    z-index: 1000;
    top: calc(100% + 6px);
    right: 0;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--radiusMd);
    box-shadow: var(--shadowLg);
    padding: 16px;
    min-width: 280px;
}

/* Month navigation */
.dtp-month-nav[b-ojfrqgibua] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.dtp-month-label[b-ojfrqgibua] {
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--textPrimary);
}

.dtp-nav-btn[b-ojfrqgibua] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: none;
    background: transparent;
    border-radius: var(--radiusSm);
    cursor: pointer;
    color: var(--textMuted);
    transition: background 150ms ease, color 150ms ease;
}

.dtp-nav-btn:hover[b-ojfrqgibua] {
    background: var(--primarySubtle);
    color: var(--primary);
}

.dtp-nav-btn .material-symbols-outlined[b-ojfrqgibua] {
    font-size: 18px;
}

/* Calendar grid */
.dtp-grid[b-ojfrqgibua] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
    margin-bottom: 10px;
}

.dtp-dow[b-ojfrqgibua] {
    text-align: center;
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--textMuted);
    padding: 4px 0 6px;
}

/* Day cells */
.dtp-day[b-ojfrqgibua] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: none;
    background: transparent;
    border-radius: 50%;
    font-size: 0.8rem;
    color: var(--textPrimary);
    cursor: pointer;
    transition: background 100ms ease, color 100ms ease;
    justify-self: center;
}

.dtp-day:hover[b-ojfrqgibua] {
    background: var(--primarySubtle);
    color: var(--primary);
}

/* Selected day - single selection, primary bg */
.dtp-day-selected[b-ojfrqgibua] {
    background: var(--primary);
    border-radius: 50%;
    color: #ffffff;
}

.dtp-day-selected:hover[b-ojfrqgibua] {
    background: var(--primaryDark);
    color: #ffffff;
}

/* Time section */
.dtp-time-section[b-ojfrqgibua] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 12px 0;
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
    margin: 8px 0;
}

.dtp-time-label[b-ojfrqgibua] {
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--textMuted);
    margin-right: 4px;
}

.dtp-time-input[b-ojfrqgibua] {
    width: 52px;
    text-align: center;
    padding: 6px 8px;
    border: 1px solid var(--border);
    border-radius: var(--radiusSm);
    background: var(--surfaceRaised);
    font-size: 0.9rem;
    color: var(--textPrimary);
}

.dtp-time-sep[b-ojfrqgibua] {
    font-weight: 700;
    color: var(--textMuted);
}

/* AM / PM toggle */
.dtp-ampm[b-ojfrqgibua] {
    display: flex;
    gap: 2px;
    margin-left: 6px;
}

.dtp-ampm-btn[b-ojfrqgibua] {
    padding: 4px 10px;
    min-height: 32px;
    border: 1px solid var(--border);
    border-radius: var(--radiusSm);
    background: var(--mainBg);
    color: var(--textMuted);
    font-size: 0.78rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 120ms ease, color 120ms ease, border-color 120ms ease;
}

.dtp-ampm-btn:hover[b-ojfrqgibua] {
    background: var(--primarySubtle);
    color: var(--primary);
    border-color: var(--primary);
}

.dtp-ampm-active[b-ojfrqgibua] {
    background: var(--primary);
    color: #ffffff;
    border-color: var(--primary);
}

/* Action buttons row */
.dtp-actions[b-ojfrqgibua] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 8px;
    padding-top: 10px;
}

.dtp-btn[b-ojfrqgibua] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 0 14px;
    border-radius: var(--radiusSm);
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 150ms ease, color 150ms ease;
    border: 1px solid transparent;
}

.dtp-btn-apply[b-ojfrqgibua] {
    background: var(--primary);
    color: #ffffff;
    border-color: var(--primary);
}

.dtp-btn-apply:hover[b-ojfrqgibua] {
    background: var(--primaryDark);
    border-color: var(--primaryDark);
}
/* /Components/Shared/GlucoseTrendChart.razor.rz.scp.css */
/* -- Container ------------------------------------------------ */
.gtc[b-nmwva7ymqz] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* -- Loading overlay (inside gtc-chart-wrap which is position:relative) -- */
.gtc-loading-overlay[b-nmwva7ymqz] {
    position: absolute;
    inset: 0;
    z-index: 5;
    display: flex;
    align-items: center;
    justify-content: center;
    background: color-mix(in srgb, var(--pageBg) 75%, transparent);
    border-radius: 8px;
    pointer-events: none;
}

.gtc-spinner[b-nmwva7ymqz] {
    width: 28px;
    height: 28px;
    border: 2.5px solid var(--border);
    border-top-color: var(--primary);
    border-radius: 50%;
    animation: gtc-spin-b-nmwva7ymqz 0.7s linear infinite;
    display: block;
}

@keyframes gtc-spin-b-nmwva7ymqz {
    to { transform: rotate(360deg); }
}

/* -- Time range picker ---------------------------------------- */
.gtc-picker[b-nmwva7ymqz] {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

.gtc-pill[b-nmwva7ymqz] {
    padding: 6px 16px;
    border: 1px solid var(--border);
    border-radius: 999px;
    background: transparent;
    color: var(--textSecondary);
    font-size: 0.8rem;
    font-weight: 400;
    cursor: pointer;
    transition: background 150ms ease, color 150ms ease, border-color 150ms ease;
    white-space: nowrap;
}

.gtc-pill:hover[b-nmwva7ymqz] {
    border-color: var(--borderStrong);
    color: var(--textPrimary);
}

.gtc-pill-active[b-nmwva7ymqz] {
    background: var(--primary);
    border-color: var(--primary);
    color: #fff;
}

.gtc-pill-active:hover[b-nmwva7ymqz] {
    background: var(--primaryDark);
    border-color: var(--primaryDark);
    color: #fff;
}

/* -- Chart wrapper -------------------------------------------- */
.gtc-chart-wrap[b-nmwva7ymqz] {
    position: relative;
    width: 100%;
}

.gtc-svg[b-nmwva7ymqz] {
    width: 100%;
    height: auto;
    display: block;
}

/* -- Marker interactivity ------------------------------------- */
.gtc-marker-group[b-nmwva7ymqz] {
    cursor: pointer;
}

.gtc-marker-group:hover[b-nmwva7ymqz] {
    filter: brightness(1.1);
}

/* -- Tooltip -------------------------------------------------- */
.gtc-tooltip[b-nmwva7ymqz] {
    position: absolute;
    z-index: 10;
    background: var(--secondaryBg);
    border: 0.5px solid var(--border);
    border-radius: 8px;
    overflow: hidden;
    box-shadow: var(--shadowLg);
    min-width: 180px;
    max-width: 260px;
    pointer-events: none;
}

.gtc-tooltip-strip[b-nmwva7ymqz] {
    height: 4px;
    width: 100%;
}

.gtc-tooltip-body[b-nmwva7ymqz] {
    padding: 10px 12px;
}

.gtc-tooltip-name[b-nmwva7ymqz] {
    font-size: 14px;
    font-weight: 500;
    color: var(--textPrimary);
    margin-bottom: 2px;
}

.gtc-tooltip-meta[b-nmwva7ymqz] {
    font-size: 12px;
    color: var(--textMuted);
}

.gtc-tooltip-divider[b-nmwva7ymqz] {
    height: 1px;
    background: var(--border);
    margin: 8px 0;
}

.gtc-tooltip-note[b-nmwva7ymqz] {
    font-size: 12px;
    color: var(--textSecondary);
    display: flex;
    align-items: center;
    gap: 4px;
}

/* -- Legend ---------------------------------------------------- */
.gtc-legend[b-nmwva7ymqz] {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
    padding: 4px 0;
}

.gtc-legend-item[b-nmwva7ymqz] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: var(--textSecondary);
}

.gtc-legend-dot[b-nmwva7ymqz] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    flex-shrink: 0;
}

.gtc-legend-diamond[b-nmwva7ymqz] {
    width: 9px;
    height: 9px;
    transform: rotate(45deg);
    flex-shrink: 0;
}

.gtc-legend-range[b-nmwva7ymqz] {
    width: 16px;
    height: 10px;
    border-radius: 2px;
    background: #63992233;
    border: 1px dashed #639922;
    flex-shrink: 0;
}

/* -- Responsive ----------------------------------------------- */
@media (max-width: 600px) {
    .gtc-picker[b-nmwva7ymqz] {
        gap: 4px;
    }

    .gtc-pill[b-nmwva7ymqz] {
        padding: 5px 12px;
        font-size: 0.75rem;
    }

    .gtc-legend[b-nmwva7ymqz] {
        gap: 12px;
    }

    .gtc-tooltip[b-nmwva7ymqz] {
        min-width: 150px;
    }
}
/* /Components/Shared/HealthSettingsDialog.razor.rz.scp.css */
/* Backdrop */
.hs-backdrop[b-xeuzrhuko9] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.55);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 16px;
}

/* Dialog card */
.hs-dialog[b-xeuzrhuko9] {
    width: 100%;
    max-width: 440px;
    max-height: 90dvh;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 0;
}

/* Header */
.hs-header[b-xeuzrhuko9] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 24px;
}

.hs-title[b-xeuzrhuko9] {
    font-size: 22px;
    font-weight: 800;
    color: var(--textPrimary);
    margin: 0;
}

.hs-close-btn[b-xeuzrhuko9] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    flex-shrink: 0;
    border: none;
    border-radius: var(--radiusSm);
    background: var(--surfaceAlt);
    color: var(--textMuted);
    cursor: pointer;
    transition: background 150ms ease, color 150ms ease;
}

.hs-close-btn:hover[b-xeuzrhuko9] {
    background: var(--border);
    color: var(--textPrimary);
}

.hs-close-btn .material-symbols-outlined[b-xeuzrhuko9] {
    font-size: 20px;
}

/* Body */
.hs-body[b-xeuzrhuko9] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* Field */
.hs-field[b-xeuzrhuko9] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.hs-label[b-xeuzrhuko9] {
    font-size: 14px;
    font-weight: 600;
    color: var(--textSecondary);
    margin: 0;
}

/* Target range row */
.hs-range-row[b-xeuzrhuko9] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.hs-range-hint[b-xeuzrhuko9] {
    font-size: 13px;
    color: var(--textMuted);
    white-space: nowrap;
}

.hs-range-input[b-xeuzrhuko9] {
    width: 90px !important;
    min-width: 0;
}

.hs-unit-btn[b-xeuzrhuko9] {
    padding: 0 14px;
    border: 1px solid var(--border);
    border-radius: var(--radiusSm);
    background: var(--mainBg);
    color: var(--textSecondary);
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    white-space: nowrap;
    height: 44px;
    transition: background 150ms ease, color 150ms ease;
}

.hs-unit-btn:hover[b-xeuzrhuko9] {
    background: var(--surfaceAlt);
    color: var(--textPrimary);
}

/* Error */
.hs-error-text[b-xeuzrhuko9] {
    color: var(--danger);
    font-size: 13px;
    font-weight: 500;
    margin: 0;
}

/* Save button */
.hs-save-btn[b-xeuzrhuko9] {
    width: 100%;
    min-height: 48px;
    font-size: 15px;
}

/* Spinner */
.spin[b-xeuzrhuko9] {
    animation: hs-spin-b-xeuzrhuko9 1s linear infinite;
    display: inline-block;
}

@keyframes hs-spin-b-xeuzrhuko9 {
    to { transform: rotate(360deg); }
}

/* Mobile */
@media (max-width: 480px) {
    .hs-dialog[b-xeuzrhuko9] {
        max-height: 100dvh;
        border-radius: var(--radiusLg);
    }

    .hs-title[b-xeuzrhuko9] {
        font-size: 20px;
    }
}
/* /Components/Shared/LogMedicationDialog.razor.rz.scp.css */
/* Backdrop */
.ld-backdrop[b-1mmxq70rrr] {
    position: fixed;
    inset: 0;
    z-index: 500;
    background: rgba(0, 0, 0, 0.45);
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 48px 16px 24px;
    overflow-y: auto;
}

/* Dialog card */
.ld-dialog[b-1mmxq70rrr] {
    width: 100%;
    max-width: 480px;
    padding: 0;
    display: flex;
    flex-direction: column;
    max-height: calc(100dvh - 72px);
    overflow-y: auto;
}

/* Header */
.ld-header[b-1mmxq70rrr] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 24px 16px;
    border-bottom: 1px solid var(--border);
    flex-shrink: 0;
}

.ld-title[b-1mmxq70rrr] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--textPrimary);
}

.ld-close-btn[b-1mmxq70rrr] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: none;
    background: transparent;
    color: var(--textMuted);
    cursor: pointer;
    border-radius: var(--radiusSm);
    transition: background 150ms ease, color 150ms ease;
}

.ld-close-btn:hover[b-1mmxq70rrr] {
    background: var(--surfaceAlt);
    color: var(--textPrimary);
}

/* Body */
.ld-body[b-1mmxq70rrr] {
    padding: 20px 24px 24px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

/* Fields */
.ld-field[b-1mmxq70rrr] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.ld-row[b-1mmxq70rrr] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.ld-field-half[b-1mmxq70rrr] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.ld-label[b-1mmxq70rrr] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--textPrimary);
    margin: 0;
}

.ld-optional[b-1mmxq70rrr] {
    font-weight: 400;
    color: var(--textMuted);
    font-size: 0.8rem;
}

/* Number input with inline unit */
.ld-num-wrap[b-1mmxq70rrr] {
    position: relative;
    display: flex;
    align-items: center;
}

.ld-num-input[b-1mmxq70rrr] {
    padding-right: 46px !important;
}

.ld-num-unit[b-1mmxq70rrr] {
    position: absolute;
    right: 12px;
    font-size: 13px;
    color: var(--textMuted);
    pointer-events: none;
    font-weight: 500;
}

/* Quick-dose chips */
.ld-chips[b-1mmxq70rrr] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.ld-chip[b-1mmxq70rrr] {
    padding: 4px 14px;
    border-radius: var(--radiusSm);
    border: 1px solid var(--border);
    background: var(--secondaryBg);
    color: var(--textSecondary);
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    min-height: 32px;
    transition: background 150ms ease, color 150ms ease, border-color 150ms ease;
}

.ld-chip:hover[b-1mmxq70rrr] {
    color: var(--textPrimary);
    border-color: var(--primary);
}

.ld-chip-active[b-1mmxq70rrr] {
    background: var(--alertAmberBg);
    border-color: var(--alertAmberBorder);
    color: var(--alertAmberText);
    font-weight: 700;
}

/* Error */
.ld-error[b-1mmxq70rrr] {
    font-size: 0.8rem;
    color: var(--danger);
    margin: 0;
}

/* Mobile: bottom-sheet */
@media (max-width: 480px) {
    .ld-backdrop[b-1mmxq70rrr] {
        padding: 0;
        align-items: flex-end;
    }

    .ld-dialog[b-1mmxq70rrr] {
        max-width: 100%;
        border-radius: var(--radiusXl) var(--radiusXl) 0 0;
        max-height: 92dvh;
    }

    .ld-row[b-1mmxq70rrr] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Shared/PushNotificationManager.razor.rz.scp.css */
.push-banner[b-f1eim1uh9k] {
    position: fixed;
    top: 16px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 9998;
    display: flex;
    align-items: center;
    gap: 10px;
    background: var(--secondaryBg);
    border: 1px solid var(--border);
    border-radius: var(--radiusMd);
    padding: 12px 16px;
    box-shadow: var(--shadowLg);
    max-width: 560px;
    width: calc(100% - 32px);
    animation: push-slide-down-b-f1eim1uh9k 300ms ease-out;
}

.push-banner-icon[b-f1eim1uh9k] {
    font-size: 20px;
    color: var(--primary);
    flex-shrink: 0;
}

.push-banner-text[b-f1eim1uh9k] {
    flex: 1;
    font-size: 13px;
    color: var(--textPrimary);
    line-height: 1.4;
}

.push-banner-btn[b-f1eim1uh9k] {
    flex-shrink: 0;
    padding: 6px 14px;
    border-radius: var(--radiusSm);
    font-size: 13px;
    cursor: pointer;
    border: none;
    transition: background 150ms ease, color 150ms ease;
}

.push-banner-enable[b-f1eim1uh9k] {
    background: var(--primary);
    color: #fff;
}

.push-banner-enable:hover[b-f1eim1uh9k] {
    opacity: 0.9;
}

.push-banner-dismiss[b-f1eim1uh9k] {
    background: transparent;
    color: var(--textMuted);
}

.push-banner-dismiss:hover[b-f1eim1uh9k] {
    background: var(--surfaceAlt);
    color: var(--textPrimary);
}

@keyframes push-slide-down-b-f1eim1uh9k {
    from {
        opacity: 0;
        transform: translateX(-50%) translateY(-20px);
    }
    to {
        opacity: 1;
        transform: translateX(-50%) translateY(0);
    }
}

@media (max-width: 480px) {
    .push-banner[b-f1eim1uh9k] {
        flex-wrap: wrap;
        top: 8px;
    }

    .push-banner-text[b-f1eim1uh9k] {
        flex-basis: calc(100% - 36px);
    }

    .push-banner-btn[b-f1eim1uh9k] {
        flex: 1;
    }
}
/* /Components/Shared/TimePicker.razor.rz.scp.css */
.tp-wrap[b-ts2mj2w9vs] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.tp-num[b-ts2mj2w9vs] {
    width: 60px !important;
    text-align: center;
    padding-left: 6px !important;
    padding-right: 6px !important;
}

.tp-sep[b-ts2mj2w9vs] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--textSecondary);
    user-select: none;
}

.tp-ampm[b-ts2mj2w9vs] {
    display: flex;
    border: 1px solid var(--border);
    border-radius: var(--radiusSm);
    overflow: hidden;
    margin-left: 4px;
}

.tp-ampm-btn[b-ts2mj2w9vs] {
    padding: 0 12px;
    min-height: 40px;
    border: none;
    background: var(--secondaryBg);
    color: var(--textMuted);
    font-size: 12px;
    font-weight: 400;
    cursor: pointer;
    transition: background 150ms ease, color 150ms ease;
}

.tp-ampm-btn + .tp-ampm-btn[b-ts2mj2w9vs] {
    border-left: 1px solid var(--border);
}

.tp-ampm-active[b-ts2mj2w9vs] {
    background: var(--primary);
    color: #fff;
}
/* /Components/SideBar.razor.rz.scp.css */
a[b-g9cke8562z] {
    text-decoration: none;
}

/* Root */
.sb[b-g9cke8562z] {
    --sb-bg: #ffffff;
    --sb-border: #e5e7eb;
    --sb-text: #192740;
    --sb-muted: #6b7280;
    --sb-accent: #53cc9e;

    --sb-width: 280px;

    height: 100%;
    color: var(--textPrimary);
}

/* Desktop sidebar */
.sb-desktop[b-g9cke8562z] {
    display: flex;
    flex-direction: column;
    height: 100%; 
    overflow: hidden;
    border-right: 1px solid var(--border);
}

.sb-desktop-inner[b-g9cke8562z] {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
    overflow: hidden;
}

.sb-top[b-g9cke8562z] {
    padding: 20px 18px;
    border-bottom: 1px solid var(--border);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.sb-brand[b-g9cke8562z] {
    display: grid;
    align-items: center;
    gap: 10px;
    color: inherit;
    min-width: 0;
}

.sb-logo[b-g9cke8562z] {
    height: 48px;
    max-width: 100%;
    object-fit: contain;
}

.sb-company[b-g9cke8562z] {
    font-family: 'Poppins', sans-serif;
    color: var(--primaryDark);
    font-size: 1rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.2rem;
}

.sb-links[b-g9cke8562z] {
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
    padding: 18px 12px;
    min-width: 0;
    flex: 1;
    min-height: 0;
    overflow-y: auto;
}

hr[b-g9cke8562z] {
    border: none;
    color: var(--textMuted);
    overflow: visible;
    text-align: left;
    width: 100%;
    height: 5px;
}

hr[b-g9cke8562z]::after {
    background: var(--secondaryBg);
    content: "Admin";
    padding: 0 4px;
    position: relative;
    top: -13px;
}

.logout[b-g9cke8562z] {
    flex-shrink: 0;
    padding: 18px 12px;
    margin-bottom: 3rem;
}

/* Mobile top bar */
.sb-mobile-bar[b-g9cke8562z] {
    display: none;
    position: fixed;
    top: 0;
    width: 100%;
    padding: 0 16px;
    align-items: center;
    justify-content: space-between;
    z-index: 300;
    background-color: var(--secondaryBg);
}

.sb-mobile-actions[b-g9cke8562z] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.sb-menu-btn[b-g9cke8562z] {
    display: grid;
    place-items: center;
    background: inherit;
    height: 44px;
    width: 44px;
    border: none;
    cursor: pointer;
    transition: transform 120ms ease, box-shadow 120ms ease;
    color: var(--textPrimary);
}

.sb-menu-btn:active[b-g9cke8562z] {
    transform: scale(.98);
}

/* Mobile overlay + drawer */
.sb-overlay[b-g9cke8562z] {
    position: fixed;
    inset: 0;
    background: rgba(17, 24, 39, .45);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.35s ease;
    z-index: 500;
}

.sb-overlay.open[b-g9cke8562z] {
    opacity: 1;
    pointer-events: auto;
}

.sb-drawer[b-g9cke8562z] {
    height: 100vh;
    width: 100%;
    border-right: 1px solid var(--border);
    transform: translateX(-100%);
    transition: transform 0.35s ease;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background-color: var(--secondaryBg);
}

.sb-drawer.open[b-g9cke8562z] {
    transform: translateX(0);
}

.sb-drawer-header[b-g9cke8562z] {
    min-height: 64px;
    padding: 0 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid var(--border);
}

.sb-close-btn[b-g9cke8562z] {
    border: none;
    background: inherit;
    height: 44px;
    width: 44px;
    display: grid;
    place-items: center;
    cursor: pointer;
    color: var(--textPrimary);
}

.sb-drawer-inner[b-g9cke8562z] {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
    overflow: hidden;
}

.sb-drawer-links[b-g9cke8562z] {
    padding: 18px 12px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 1;
    min-height: 0;
    overflow-y: auto;
}

.logout-mobile[b-g9cke8562z] {
    flex-shrink: 0;
    padding: 18px 12px;
}

.sb-drawer-link[b-g9cke8562z] {
    display: flex;
    gap: 0.8rem;
    align-items: center;
    
    color: var(--textPrimary);
    font-size: 1rem;
    padding: 0.85rem 1rem;
    border-radius: 10px;
}

.sb-drawer-link:hover[b-g9cke8562z] {
    background: #f3f4f6;
}

.sb-drawer-link.active[b-g9cke8562z] {
    background: var(--primary);
    color: var(--surface);
    font-weight: 500;
}

.sb-link-icon[b-g9cke8562z] {
    font-size: 1.2rem;
    flex-shrink: 0;
    font-variation-settings: 'FILL' 0, 'wght' 300, 'GRAD' 0, 'opsz' 24;
    transition: font-variation-settings 150ms ease;
}

.sb-drawer-link.active .sb-link-icon[b-g9cke8562z] {
    font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

/* Responsive */
@media screen and (max-width: 540px) {
    .sb-desktop[b-g9cke8562z] {
        display: none;
    }

    .sb-mobile-bar[b-g9cke8562z] {
        display: flex;
    }
}
/* /Components/ThemeToggle.razor.rz.scp.css */
.theme-toggle-btn[b-gcvakx6bcc] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 8px;
    border-radius: 10px;
    border: none;
    background: var(--mainBgAlt);
    color: var(--textSecondary);
    cursor: pointer;
    transition: background 150ms ease, border-color 150ms ease, color 150ms ease;
    flex-shrink: 0;
}

.theme-toggle-btn:hover[b-gcvakx6bcc] {
    background: var(--surfaceAlt);
    border-color: var(--borderStrong);
    color: var(--primary);
}

.theme-mode-icon[b-gcvakx6bcc] {
    font-size: 18px;
}

.theme-switch-icon[b-gcvakx6bcc] {
    font-size: 24px;
}
/* /Layout/GlowcyteLayout.razor.rz.scp.css */
.layout[b-26flkxak29] {
    --4-points: 4px;
    --8-points: 8px;
    --14-points: 14px;
    --16-points: 16px;
    --24-points: 24px;
    --32-points: 32px;
    --40-points: 40px;
    --48-points: 48px;
    --56-points: 56px;
    --64-points: 64px;
    
    display: grid;
    gap: 16px;
    margin: 0 auto;

    @media screen and (max-width: 780px ){
    }

    @media screen and (max-width: 540px ){
    }
}

.layout-2-col[b-26flkxak29] {
    grid-template-columns: 280px 1fr;

    @media screen and (max-width: 540px ){
        grid-template-columns: 1fr;[b-26flkxak29]
    }
}

aside[b-26flkxak29] {
    position: fixed;
    top: 0;
    left: 0;
    width: 280px;
    height: 100dvh;
    overflow: hidden;
    background-color: var(--secondaryBg);
    z-index: 50;

    @media screen and (max-width: 540px) {
        position: static;
        width: auto;
        height: auto;
        overflow: visible;[b-26flkxak29]
    }
}

.main-in-col-2[b-26flkxak29] {
    grid-column: 2;

    @media screen and (max-width: 540px ){
        grid-column: 1;[b-26flkxak29]
    }
}

main[b-26flkxak29] {
    min-width: 0;
    padding: var(--32-points);

    @media screen and (max-width: 780px ){
        padding: var(--16-points);[b-26flkxak29]
    }

    @media screen and (max-width: 540px ){
        margin-top: 60px;
        padding: var(--14-points);[b-26flkxak29]
    }
}
/* /Layout/MainLayout.razor.rz.scp.css */
.main-shell[b-o6ozuxr8qg] {
    min-height: 100vh;
    display: grid;
    grid-template-columns: 260px 1fr;
    background: var(--bg);
}

/* Sidebar */
.sidebar[b-o6ozuxr8qg] {
    position: sticky;
    top: 0;
    height: 100vh;
    overflow-y: auto;
    padding: 20px 12px;
    background: var(--surface);
    border-right: 1px solid var(--border);
    display: flex;
    flex-direction: column;
    scrollbar-width: thin;
    scrollbar-color: var(--border) transparent;
}

.brand-block[b-o6ozuxr8qg] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 4px 4px 18px;
    border-bottom: 1px solid var(--border);
    margin-bottom: 12px;
    flex-shrink: 0;
}

.brand-logo[b-o6ozuxr8qg] {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: linear-gradient(135deg, var(--primary), var(--primaryDark));
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    flex-shrink: 0;
}

.brand-logo .material-symbols-outlined[b-o6ozuxr8qg] {
    font-size: 20px;
    font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

.brand-text[b-o6ozuxr8qg] { min-width: 0; }

.brand-kicker[b-o6ozuxr8qg] {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--primary);
    line-height: 1;
}

.brand-title[b-o6ozuxr8qg] {
    font-size: 15px;
    font-weight: 700;
    color: var(--textPrimary);
    margin-top: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Main content */
.main-content[b-o6ozuxr8qg] {
    min-width: 0;
    padding: 24px;
    display: flex;
    flex-direction: column;
}

/* Topbar */
.topbar[b-o6ozuxr8qg] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--border);
    margin-bottom: 24px;
    flex-shrink: 0;
}

.topbar-left[b-o6ozuxr8qg] {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.hamburger-btn[b-o6ozuxr8qg] {
    display: none;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    border: 1px solid var(--border);
    background: var(--surface);
    color: var(--textSecondary);
    cursor: pointer;
    flex-shrink: 0;
    transition: background 150ms ease, border-color 150ms ease, color 150ms ease;
}

.hamburger-btn:hover[b-o6ozuxr8qg] {
    background: var(--surfaceAlt);
    border-color: var(--borderStrong);
    color: var(--primary);
}

.hamburger-btn .material-symbols-outlined[b-o6ozuxr8qg] { font-size: 22px; }

.topbar-brand[b-o6ozuxr8qg] {
    display: none;
    align-items: center;
    gap: 8px;
}

.brand-logo-sm[b-o6ozuxr8qg] {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    background: linear-gradient(135deg, var(--primary), var(--primaryDark));
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    flex-shrink: 0;
}

.brand-logo-sm .material-symbols-outlined[b-o6ozuxr8qg] {
    font-size: 16px;
    font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

.brand-kicker-sm[b-o6ozuxr8qg] {
    font-size: 14px;
    font-weight: 800;
    color: var(--primary);
    letter-spacing: .04em;
}

.topbar-actions[b-o6ozuxr8qg] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

.avatar[b-o6ozuxr8qg] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--accentGlow), var(--primary));
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    cursor: pointer;
    box-shadow: 0 0 0 2px var(--surface), 0 0 0 3px var(--border);
    transition: box-shadow 150ms ease;
    flex-shrink: 0;
}

.avatar:hover[b-o6ozuxr8qg] {
    box-shadow: 0 0 0 2px var(--surface), 0 0 0 3px var(--primary);
}

.avatar .material-symbols-outlined[b-o6ozuxr8qg] { font-size: 20px; }

/* Content body */
.content-body[b-o6ozuxr8qg] {
    flex: 1;
    display: grid;
    gap: 20px;
    align-content: start;
}

/* Mobile drawer backdrop */
.drawer-backdrop[b-o6ozuxr8qg] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.40);
    backdrop-filter: blur(2px);
    z-index: 99;
    opacity: 0;
    pointer-events: none;
    transition: opacity 200ms ease;
}

.drawer-backdrop.open[b-o6ozuxr8qg] {
    opacity: 1;
    pointer-events: auto;
}

/* Mobile nav drawer */
.mobile-drawer[b-o6ozuxr8qg] {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    width: 280px;
    background: var(--surface);
    border-right: 1px solid var(--border);
    z-index: 100;
    padding: 16px 12px;
    transform: translateX(-100%);
    transition: transform 220ms cubic-bezier(0.4, 0, 0.2, 1);
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    scrollbar-width: thin;
    scrollbar-color: var(--border) transparent;
}

.mobile-drawer.open[b-o6ozuxr8qg] {
    transform: translateX(0);
}

.drawer-header[b-o6ozuxr8qg] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--border);
    margin-bottom: 12px;
    flex-shrink: 0;
}

.drawer-close[b-o6ozuxr8qg] {
    margin-left: auto;
    width: 34px;
    height: 34px;
    border-radius: 8px;
    border: 1px solid var(--border);
    background: transparent;
    color: var(--textMuted);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: background 150ms ease, color 150ms ease;
}

.drawer-close:hover[b-o6ozuxr8qg] {
    background: var(--surfaceAlt);
    color: var(--textPrimary);
}

.drawer-close .material-symbols-outlined[b-o6ozuxr8qg] { font-size: 18px; }

@media (max-width: 960px) {
    .main-shell[b-o6ozuxr8qg] {
        grid-template-columns: 1fr;
    }

    .sidebar[b-o6ozuxr8qg] { display: none; }
    .hamburger-btn[b-o6ozuxr8qg] { display: inline-flex; }
    .topbar-brand[b-o6ozuxr8qg] { display: flex; }
    .main-content[b-o6ozuxr8qg] { padding: 16px; }
    .topbar[b-o6ozuxr8qg] { margin-bottom: 20px; }
}
/* /Pages/Exercise.razor.rz.scp.css */
/* Page layout */
.page-wrap[b-bl91pfd4ih] {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 20px;
}

/* Page header */
.page-header[b-bl91pfd4ih] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
}

.page-header h1[b-bl91pfd4ih] {
    font-size: 1.75rem;
    font-weight: 700;
    margin: 0;
    color: var(--textPrimary);
}

.page-header p[b-bl91pfd4ih] {
    color: var(--textPrimary);
    margin: 4px 0 0;
    font-size: 0.9rem;
}

/* Intensity badge */
.intensity-tag[b-bl91pfd4ih] {
    display: inline-flex;
    align-items: center;
    padding: 3px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
}

.intensity-light[b-bl91pfd4ih] {
    background: var(--alertGreenBg);
    color: var(--alertGreenText);
}

.intensity-moderate[b-bl91pfd4ih] {
    background: var(--alertAmberBg);
    color: var(--alertAmberText);
}

.intensity-vigorous[b-bl91pfd4ih] {
    background: var(--alertRoseBg);
    color: var(--alertRoseText);
}

/* Breakdown card */
.breakdown-header[b-bl91pfd4ih] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    gap: 12px;
    flex-wrap: wrap;
}

.breakdown-header h2[b-bl91pfd4ih] {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--textPrimary);
}

.bar-row[b-bl91pfd4ih] {
    margin-bottom: 14px;
}

.bar-label-row[b-bl91pfd4ih] {
    display: flex;
    justify-content: space-between;
    margin-bottom: 4px;
    font-size: 0.875rem;
    color: var(--textMuted);
}

.bar-track[b-bl91pfd4ih] {
    height: 8px;
    border-radius: 4px;
    background: var(--border);
    overflow: hidden;
}

.bar-fill[b-bl91pfd4ih] {
    height: 100%;
    border-radius: 4px;
    background: var(--primary);
    transition: width 0.3s ease;
}

/* Inline empty state */
.empty-state-inline[b-bl91pfd4ih] {
    color: var(--textMuted);
    font-size: 0.875rem;
    padding: 16px 0;
    text-align: center;
}

/* Skeleton animations */
.skeleton[b-bl91pfd4ih] {
    border-radius: 4px;
    background: var(--border);
    animation: ex-skeleton-pulse-b-bl91pfd4ih 1.4s ease-in-out infinite;
}

.skeleton-sm[b-bl91pfd4ih] { width: 60px;  height: 14px; }
.skeleton-md[b-bl91pfd4ih] { width: 100px; height: 14px; }

/* Table viewport cap */
.ex-table-wrap[b-bl91pfd4ih] {
    max-height: 340px;
    overflow-y: auto;
}

@keyframes ex-skeleton-pulse-b-bl91pfd4ih {
    0%, 100% { opacity: 1; }
    50%       { opacity: 0.4; }
}

/* Error banner */
.error-banner[b-bl91pfd4ih] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 14px 16px;
    border-radius: var(--radiusMd);
    background: var(--alertRoseBg);
    border: 1px solid var(--alertRoseBorder);
    color: var(--alertRoseText);
    font-size: 14px;
    margin-top: 8px;
}

/* Empty state */
.empty-state[b-bl91pfd4ih] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 48px 24px;
    color: var(--textMuted);
    font-size: 14px;
    text-align: center;
}

.empty-state .material-symbols-outlined[b-bl91pfd4ih] {
    font-size: 40px;
    opacity: 0.5;
}

/* Tag pills in table */
.ex-tags-wrap[b-bl91pfd4ih] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    max-width: 180px;
}

.ex-tag[b-bl91pfd4ih] {
    display: inline-flex;
    align-items: center;
    padding: 2px 8px;
    border-radius: 999px;
    background: var(--primarySubtle);
    color: var(--textPrimary);
    font-size: 11px;
    font-weight: 500;
    white-space: nowrap;
}

.ex-tag-more[b-bl91pfd4ih] {
    background: var(--border);
    color: var(--textMuted);
}

.ex-tags-empty[b-bl91pfd4ih] {
    color: var(--textMuted);
    font-size: 0.875rem;
}

/* Action buttons column */
.ex-actions-cell[b-bl91pfd4ih] {
    white-space: nowrap;
    text-align: right;
}

.ex-action-btn[b-bl91pfd4ih] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: none;
    border-radius: var(--radiusSm);
    background: transparent;
    color: var(--textPrimary);
    cursor: pointer;
    transition: background 150ms ease, color 150ms ease;
}

.ex-action-btn:hover[b-bl91pfd4ih] {
    background: var(--surfaceAlt);
    color: var(--textPrimary);
}

.ex-action-delete:hover[b-bl91pfd4ih] {
    background: var(--alertRoseBg);
    color: var(--alertRoseText);
}

/* Delete confirmation dialog */
.del-backdrop[b-bl91pfd4ih] {
    position: fixed;
    inset: 0;
    z-index: 600;
    background: rgba(0, 0, 0, 0.45);
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding-top: 72px;
}

.del-dialog[b-bl91pfd4ih] {
    width: 100%;
    max-width: 400px;
    padding: 28px 24px 24px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.del-icon[b-bl91pfd4ih] {
    font-size: 36px;
    color: var(--danger);
    opacity: 0.85;
}

.del-title[b-bl91pfd4ih] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--textPrimary);
}

.del-body[b-bl91pfd4ih] {
    margin: 0;
    font-size: 0.875rem;
    color: var(--textSecondary);
    line-height: 1.5;
}

.del-actions[b-bl91pfd4ih] {
    display: flex;
    gap: 10px;
    margin-top: 6px;
    width: 100%;
    justify-content: center;
}

.del-btn[b-bl91pfd4ih] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 40px;
    padding: 0 20px;
    border-radius: var(--radiusSm);
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    border: 1px solid transparent;
    transition: background 150ms ease, border-color 150ms ease, color 150ms ease;
    flex: 1;
    max-width: 160px;
}

.del-btn:disabled[b-bl91pfd4ih] {
    opacity: 0.6;
    cursor: not-allowed;
}

.del-btn-cancel[b-bl91pfd4ih] {
    background: var(--surface);
    border-color: var(--border);
    color: var(--textSecondary);
}

.del-btn-cancel:hover:not(:disabled)[b-bl91pfd4ih] {
    background: var(--surfaceAlt);
    color: var(--textPrimary);
}

.del-btn-delete[b-bl91pfd4ih] {
    background: var(--danger);
    border-color: var(--danger);
    color: #fff;
}

.del-btn-delete:hover:not(:disabled)[b-bl91pfd4ih] {
    opacity: 0.88;
}

@keyframes del-spin-b-bl91pfd4ih {
    to { transform: rotate(360deg); }
}

.del-spin[b-bl91pfd4ih] {
    font-size: 18px;
    animation: del-spin-b-bl91pfd4ih 0.9s linear infinite;
    display: inline-block;
}

/* Responsive */
@media (max-width: 600px) {
    .page-wrap[b-bl91pfd4ih] {
        padding: 12px;
    }

    .page-header[b-bl91pfd4ih] {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }
}
/* /Pages/Insights.razor.rz.scp.css */
.insight[b-1xm1vj9vry] {
    display: grid;
    gap: 1rem;
}

.insight-alert[b-1xm1vj9vry] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px 18px;
    border-radius: var(--radiusLg);
    background: var(--alertAmberBg);
    border: 1px solid var(--alertAmberBorder);
    color: var(--alertAmberText);
    font-size: 14px;
    line-height: 1.5;
}

.insight-alert .material-symbols-outlined[b-1xm1vj9vry] {
    font-size: 22px;
    flex-shrink: 0;
    margin-top: 1px;
}

.insight-alert strong[b-1xm1vj9vry] {
    display: block;
    font-weight: 700;
    margin-bottom: 2px;
}

.insights-grid[b-1xm1vj9vry] {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 20px;
}

.insights-side[b-1xm1vj9vry] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.pattern-mini-grid[b-1xm1vj9vry] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-bottom: 20px;
}

.pattern-mini[b-1xm1vj9vry] {
    background: var(--surfaceAlt);
    border: 1px solid var(--border);
    border-radius: var(--radiusMd);
    padding: 14px;
}

.pattern-label[b-1xm1vj9vry] {
    font-size: 12px;
    color: var(--textMuted);
    font-weight: 500;
}

.pattern-value[b-1xm1vj9vry] {
    font-size: 22px;
    font-weight: 800;
    color: var(--textPrimary);
    margin-top: 4px;
}

.pattern-note[b-1xm1vj9vry] {
    font-size: 12px;
    font-weight: 600;
    margin-top: 4px;
}

.note-success[b-1xm1vj9vry] {
    color: var(--success);
}

.note-warning[b-1xm1vj9vry] {
    color: var(--warning);
}

.week-chart[b-1xm1vj9vry] {
    display: flex;
    align-items: flex-end;
    gap: 10px;
    height: 180px;
    padding: 12px;
    background: var(--surfaceAlt);
    border-radius: var(--radiusLg);
}

.week-bar-col[b-1xm1vj9vry] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    height: 100%;
    justify-content: flex-end;
}

.week-bar[b-1xm1vj9vry] {
    width: 100%;
    border-radius: 6px 6px 0 0;
    background: linear-gradient(180deg, var(--primary) 0%, var(--primaryDark) 100%);
    min-height: 4px;
}

.week-label[b-1xm1vj9vry] {
    font-size: 10px;
    font-weight: 700;
    color: var(--textMuted);
    text-transform: uppercase;
    letter-spacing: .04em;
}

.tir-row[b-1xm1vj9vry] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin-top: 10px;
    margin-bottom: 12px;
}

.tir-pct[b-1xm1vj9vry] {
    font-size: 36px;
    font-weight: 800;
    color: var(--primary);
    line-height: 1;
}

.tir-goal[b-1xm1vj9vry] {
    font-size: 13px;
    color: var(--textMuted);
}

.tir-track[b-1xm1vj9vry] {
    height: 10px;
    border-radius: 999px;
    background: var(--surfaceAlt);
    overflow: hidden;
    border: 1px solid var(--border);
}

.tir-fill[b-1xm1vj9vry] {
    height: 100%;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--primary), var(--primaryLight));
}

.care-list[b-1xm1vj9vry] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 12px;
}

.care-item[b-1xm1vj9vry] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    border-radius: var(--radiusMd);
    background: var(--alertGreenBg);
    border: 1px solid var(--alertGreenBorder);
    color: var(--alertGreenText);
    font-size: 13px;
    font-weight: 500;
    line-height: 1.4;
}

.care-item[b-1xm1vj9vry]::before {
    content: '';
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--success);
    flex-shrink: 0;
}

.export-list[b-1xm1vj9vry] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 12px;
}

.export-btn[b-1xm1vj9vry] {
    width: 100%;
    justify-content: flex-start;
    gap: 10px;
    font-size: 14px;
}

.export-btn .material-symbols-outlined[b-1xm1vj9vry] {
    font-size: 18px;
}

@media (max-width: 960px) {
    .insights-grid[b-1xm1vj9vry] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px) {
    .pattern-mini-grid[b-1xm1vj9vry] {
        grid-template-columns: 1fr;
    }

    .tir-pct[b-1xm1vj9vry] {
        font-size: 28px;
    }

    .week-chart[b-1xm1vj9vry] {
        height: 140px;
        gap: 6px;
        padding: 8px;
    }

    .pattern-value[b-1xm1vj9vry] {
        font-size: 18px;
    }
}
/* /Pages/Logbook.razor.rz.scp.css */
.log-book-title[b-opjrwx9lxk] {
    font-size: 22px;
    font-weight: 800;
    color: var(--textPrimary);
    margin: 0 0 4px;
}

.log-book-sub[b-opjrwx9lxk] {
    color: var(--textSecondary);
    font-size: 14px;
    margin: 0 0 20px;
}

.reading-chip[b-opjrwx9lxk] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 52px;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
}

.reading-chip.in-range[b-opjrwx9lxk] {
    background: var(--alertGreenBg);
    border: 1px solid var(--alertGreenBorder);
    color: var(--alertGreenText);
}

.reading-chip.low[b-opjrwx9lxk] {
    background: var(--alertAmberBg);
    border: 1px solid var(--alertAmberBorder);
    color: var(--alertAmberText);
}

.reading-chip.high[b-opjrwx9lxk] {
    background: var(--alertRoseBg);
    border: 1px solid var(--alertRoseBorder);
    color: var(--alertRoseText);
}

.notes-cell[b-opjrwx9lxk] {
    color: var(--textPrimary);
    font-size: 13px;
}

.muted-dash[b-opjrwx9lxk] {
    color: var(--textMuted);
    font-size: 16px;
}

.error-banner[b-opjrwx9lxk] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 14px 16px;
    border-radius: var(--radiusMd);
    background: var(--alertRoseBg);
    border: 1px solid var(--alertRoseBorder);
    color: var(--alertRoseText);
    font-size: 14px;
    margin-top: 8px;
}

.empty-state[b-opjrwx9lxk] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 48px 24px;
    color: var(--textMuted);
    font-size: 14px;
    text-align: center;
}

.empty-state .material-symbols-outlined[b-opjrwx9lxk] {
    font-size: 40px;
    opacity: 0.5;
}

.skeleton[b-opjrwx9lxk] {
    border-radius: 4px;
    background: var(--border);
    animation: skeleton-pulse-b-opjrwx9lxk 1.4s ease-in-out infinite;
}

.skeleton-sm[b-opjrwx9lxk] { width: 60px; height: 14px; }
.skeleton-md[b-opjrwx9lxk] { width: 90px; height: 14px; }
.skeleton-lg[b-opjrwx9lxk] { width: 130px; height: 14px; }
.skeleton-chip[b-opjrwx9lxk] { width: 52px; height: 24px; border-radius: 999px; }

@keyframes skeleton-pulse-b-opjrwx9lxk {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.4; }
}

.spin[b-opjrwx9lxk] {
    animation: spin-b-opjrwx9lxk 1s linear infinite;
    display: inline-block;
}

@keyframes spin-b-opjrwx9lxk {
    to { transform: rotate(360deg); }
}

.actions-cell[b-opjrwx9lxk] {
    white-space: nowrap;
    text-align: right;
}

.action-btn[b-opjrwx9lxk] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: var(--radiusSm);
    color: var(--textPrimary);
    text-decoration: none;
    background: transparent;
    border: none;
    cursor: pointer;
    transition: background 150ms ease, color 150ms ease;
}

.action-btn:hover[b-opjrwx9lxk] {
    background: var(--surfaceAlt);
    color: var(--textPrimary);
}

.action-btn.action-btn-delete:hover[b-opjrwx9lxk] {
    background: var(--alertRoseBg);
    color: var(--alertRoseText);
}

.action-btn .material-symbols-outlined[b-opjrwx9lxk] {
    font-size: 18px;
}

/* Delete confirmation dialog */
.del-backdrop[b-opjrwx9lxk] {
    position: fixed;
    inset: 0;
    z-index: 600;
    background: rgba(0, 0, 0, 0.45);
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding-top: 72px;
}

.del-dialog[b-opjrwx9lxk] {
    width: 100%;
    max-width: 400px;
    padding: 28px 24px 24px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.del-icon[b-opjrwx9lxk] {
    font-size: 36px;
    color: var(--danger);
    opacity: 0.85;
}

.del-title[b-opjrwx9lxk] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--textPrimary);
}

.del-body[b-opjrwx9lxk] {
    margin: 0;
    font-size: 0.875rem;
    color: var(--textSecondary);
    line-height: 1.5;
}

.del-actions[b-opjrwx9lxk] {
    display: flex;
    gap: 10px;
    margin-top: 6px;
    width: 100%;
    justify-content: center;
}

.del-btn[b-opjrwx9lxk] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 40px;
    padding: 0 20px;
    border-radius: var(--radiusSm);
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    border: 1px solid transparent;
    transition: background 150ms ease, border-color 150ms ease, color 150ms ease;
    flex: 1;
    max-width: 160px;
}

.del-btn:disabled[b-opjrwx9lxk] {
    opacity: 0.6;
    cursor: not-allowed;
}

.del-btn-cancel[b-opjrwx9lxk] {
    background: var(--surface);
    border-color: var(--border);
    color: var(--textSecondary);
}

.del-btn-cancel:hover:not(:disabled)[b-opjrwx9lxk] {
    background: var(--surfaceAlt);
    color: var(--textPrimary);
}

.del-btn-delete[b-opjrwx9lxk] {
    background: var(--danger);
    border-color: var(--danger);
    color: #fff;
}

.del-btn-delete:hover:not(:disabled)[b-opjrwx9lxk] {
    opacity: 0.88;
}

@keyframes del-spin-b-opjrwx9lxk {
    to { transform: rotate(360deg); }
}

.del-spin[b-opjrwx9lxk] {
    font-size: 18px;
    animation: del-spin-b-opjrwx9lxk 0.9s linear infinite;
    display: inline-block;
}

.idx-th[b-opjrwx9lxk],
.idx-cell[b-opjrwx9lxk] {
    width: 36px;
    min-width: 36px;
    color: var(--textMuted);
    font-variant-numeric: tabular-nums;
}

.dt-cell[b-opjrwx9lxk] {
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

/* Search bar */
.lb-search[b-opjrwx9lxk] {
    position: relative;
    margin-top: 8px;
    margin-bottom: 16px;
    flex-shrink: 0;
}

.lb-search-icon[b-opjrwx9lxk] {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--textMuted);
    font-size: 20px;
    pointer-events: none;
    user-select: none;
}

.lb-search-input[b-opjrwx9lxk] {
    padding-left: 42px;
    padding-right: 40px;
}

.lb-search-clear[b-opjrwx9lxk] {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    cursor: pointer;
    color: var(--textMuted);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: var(--radiusSm);
    transition: background 150ms ease, color 150ms ease;
    padding: 0;
}

.lb-search-clear:hover[b-opjrwx9lxk] {
    background: var(--surfaceAlt);
    color: var(--textPrimary);
}

.lb-search-clear .material-symbols-outlined[b-opjrwx9lxk] {
    font-size: 18px;
}

/* Card viewport fit
   svh = small viewport height: never includes browser chrome (iOS Safari safe).
   Offsets per layout breakpoint:
     > 780px  — main padding 32px * 2 = 64px (2-col, aside is fixed/out of flow)
    <= 780px  — main padding 16px * 2 = 32px
    <= 540px  — single-col grid: aside row 0px + row-gap 16px + margin-top 60px + padding 14px*2 = 104px
*/
.lb-card[b-opjrwx9lxk] {
    display: flex;
    flex-direction: column;
    max-height: calc(100svh - 64px);
    overflow: hidden;
}

/* Flex region below the card header - grows to fill the remaining card height */
.lb-content[b-opjrwx9lxk] {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

/* Table scrolls within its flex slot */
.table-wrap[b-opjrwx9lxk] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
}

/* Inline spinner shown while auto-loading the next page */
.load-more-indicator[b-opjrwx9lxk] {
    display: flex;
    justify-content: center;
    padding: 16px 0;
    color: var(--textMuted);
}

/* Tablet: main padding drops to 16px each side */
@media (max-width: 780px) {
    .lb-card[b-opjrwx9lxk] {
        max-height: calc(100svh - 32px);
    }
}

/* Mobile: single-column layout - aside row (0) + row-gap (16px) + margin-top (60px) + padding (14px*2) = 104px */
@media (max-width: 540px) {
    .lb-card[b-opjrwx9lxk] {
        max-height: calc(100svh - 104px);
    }
}

/* Logbook-specific font scale */
@media (max-width: 600px) {
    .log-book-title[b-opjrwx9lxk] {
        font-size: 18px;
    }
}
/* /Pages/LogEntry.razor.rz.scp.css */
/* Two-column layout: form left, readings panel right */
.log-layout[b-4yz0zrwzhd] {
    display: grid;
    grid-template-columns: 3fr 2fr;
    gap: 20px;
    align-items: start;
}

/* Readings panel - viewport-constrained so it doesn't grow past the screen */
.readings-card[b-4yz0zrwzhd] {
    position: sticky;
    top: 20px;
    display: flex;
    flex-direction: column;
    max-height: calc(100svh - 40px); /* 20px top sticky offset + 20px bottom clearance */
    overflow: hidden;
}

.readings-table-wrap[b-4yz0zrwzhd] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
}

.readings-title[b-4yz0zrwzhd] {
    font-size: 16px;
    font-weight: 700;
    color: var(--textPrimary);
    margin: 0 0 4px;
}

.readings-sub[b-4yz0zrwzhd] {
    color: var(--textSecondary);
    font-size: 13px;
    margin: 0 0 12px;
}

.readings-table[b-4yz0zrwzhd] {
    width: 100%;
    border-collapse: collapse;
    font-size: 13px;
}

.readings-table th[b-4yz0zrwzhd] {
    text-align: left;
    font-weight: 600;
    color: var(--textSecondary);
    padding: 0 8px 8px 0;
    border-bottom: 1px solid var(--border);
    font-size: 12px;
    white-space: nowrap;
}

.readings-table td[b-4yz0zrwzhd] {
    padding: 10px 8px 10px 0;
    border-bottom: 1px solid var(--border);
    vertical-align: middle;
}

.readings-table tr:last-child td[b-4yz0zrwzhd] {
    border-bottom: none;
}

.reading-chip[b-4yz0zrwzhd] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 3px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;
}

.reading-chip.in-range[b-4yz0zrwzhd] {
    background: var(--alertGreenBg);
    border: 1px solid var(--alertGreenBorder);
    color: var(--alertGreenText);
}

.reading-chip.low[b-4yz0zrwzhd] {
    background: var(--alertAmberBg);
    border: 1px solid var(--alertAmberBorder);
    color: var(--alertAmberText);
}

.reading-chip.high[b-4yz0zrwzhd] {
    background: var(--alertRoseBg);
    border: 1px solid var(--alertRoseBorder);
    color: var(--alertRoseText);
}

.readings-empty[b-4yz0zrwzhd] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 32px 16px;
    color: var(--textMuted);
    font-size: 13px;
    text-align: center;
}

.readings-empty .material-symbols-outlined[b-4yz0zrwzhd] {
    font-size: 32px;
    opacity: 0.5;
}

.log-title[b-4yz0zrwzhd] {
    font-size: 22px;
    font-weight: 800;
    color: var(--textPrimary);
    margin: 0 0 4px;
}

.log-sub[b-4yz0zrwzhd] {
    color: var(--textSecondary);
    font-size: 14px;
    margin: 0 0 4px;
}

/* Section labels */
.section-label[b-4yz0zrwzhd] {
    font-size: 15px;
    font-weight: 700;
    color: var(--textPrimary);
    margin: 20px 0 8px;
}

/* Chip container (contexts, meals, medications) */
.context-box[b-4yz0zrwzhd] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 14px;
    background: var(--primarySubtle);
    border-radius: var(--radiusSm);
}

/* Shared chip style */
.chip[b-4yz0zrwzhd] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 12px;
    border-radius: var(--radiusSm);
    border: none;
    background: var(--mainBg);
    color: var(--textSecondary);
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    user-select: none;
    min-height: 22px;
    transition: background 150ms ease, color 150ms ease;
}

.chip:hover[b-4yz0zrwzhd] {
    color: var(--textPrimary);
}

.chip-active[b-4yz0zrwzhd] {
    background: var(--primarySubtle);
    color: var(--primary);
    font-weight: 600;
}

.chip-check[b-4yz0zrwzhd] {
    font-size: 15px;
    line-height: 1;
}

/* Glucose input with inline unit toggle */
.glucose-input-wrap[b-4yz0zrwzhd] {
    display: flex;
    align-items: center;
    padding-right: 14px;
    border: 1px solid var(--border);
    border-radius: var(--radiusSm);
    background: var(--primarySubtle);
    transition: border-color 150ms ease;
}

.glucose-input-wrap:focus-within[b-4yz0zrwzhd] {
    border-color: var(--primary);
}

.glucose-input-wrap--error[b-4yz0zrwzhd] {
    border-color: var(--danger) !important;
}

.glucose-num-input[b-4yz0zrwzhd] {
    flex: 1;
    padding: 12px 14px;
    border: none;
    background: transparent;
    font-size: 15px;
    color: var(--textPrimary);
    outline: none;
    min-width: 0;
}

.glucose-num-input[b-4yz0zrwzhd]::placeholder {
    color: var(--textMuted);
}

/* Hide browser number input spinners */
.glucose-num-input[b-4yz0zrwzhd]::-webkit-outer-spin-button,
.glucose-num-input[b-4yz0zrwzhd]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.glucose-num-input[type=number][b-4yz0zrwzhd] {
    -moz-appearance: textfield;
}

.unit-btn[b-4yz0zrwzhd] {
    padding: 0 18px;
    border: none;
    border-radius: var(--radiusSm);
    background: var(--mainBg);
    color: var(--textSecondary);
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    white-space: nowrap;
    min-height: 22px;
    min-width: 72px;
    transition: background 150ms ease, color 150ms ease;
}

.unit-btn:hover[b-4yz0zrwzhd] {
    background: var(--surfaceAlt);
    color: var(--textPrimary);
}

.field-error[b-4yz0zrwzhd] {
    display: block;
    color: var(--danger);
    font-size: 12px;
    margin-top: 4px;
}

/* Meal search */
.search-wrap[b-4yz0zrwzhd] {
    position: relative;
}

.search-input[b-4yz0zrwzhd] {
    padding-right: 40px;
    width: 100%;
    box-sizing: border-box;
}

.search-icon[b-4yz0zrwzhd] {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--textMuted);
    font-size: 20px;
    pointer-events: none;
}

/* Empty state messages (no meals / no meds) */
.empty-field-msg[b-4yz0zrwzhd] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
    border-radius: var(--radiusSm);
    background: var(--primarySubtle);
    color: var(--textMuted);
    font-size: 13px;
}

.empty-field-msg .material-symbols-outlined[b-4yz0zrwzhd] {
    font-size: 20px;
    flex-shrink: 0;
}

/* Medication dose rows */
.dose-list[b-4yz0zrwzhd] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 10px;
}

.dose-row[b-4yz0zrwzhd] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    border-radius: var(--radiusMd);
    background: var(--surfaceAlt);
    border: 1px solid var(--border);
}

.dose-name[b-4yz0zrwzhd] {
    flex: 1;
    font-size: 13px;
    font-weight: 600;
    color: var(--textPrimary);
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dose-input-wrap[b-4yz0zrwzhd] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
}

.dose-input[b-4yz0zrwzhd] {
    width: 72px !important;
    padding: 6px 8px !important;
    font-size: 13px !important;
    text-align: right;
}

.dose-unit[b-4yz0zrwzhd] {
    font-size: 12px;
    color: var(--textMuted);
    white-space: nowrap;
}

/* Reading row action buttons (delete) */
.r-actions-cell[b-4yz0zrwzhd] {
    text-align: right;
    padding-right: 0;
}

.r-action-btn[b-4yz0zrwzhd] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: none;
    border-radius: var(--radiusSm);
    background: transparent;
    color: var(--textMuted);
    cursor: pointer;
    transition: background 150ms ease, color 150ms ease;
}

.r-action-btn .material-symbols-outlined[b-4yz0zrwzhd] {
    font-size: 16px;
}

.r-action-delete:hover[b-4yz0zrwzhd] {
    background: var(--alertRoseBg);
    color: var(--alertRoseText);
}

/* Delete confirmation dialog */
.del-backdrop[b-4yz0zrwzhd] {
    position: fixed;
    inset: 0;
    z-index: 600;
    background: rgba(0, 0, 0, 0.45);
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding-top: 72px;
}

.del-dialog[b-4yz0zrwzhd] {
    width: 100%;
    max-width: 400px;
    padding: 28px 24px 24px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.del-icon[b-4yz0zrwzhd] {
    font-size: 36px;
    color: var(--danger);
    opacity: 0.85;
}

.del-title[b-4yz0zrwzhd] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--textPrimary);
}

.del-body[b-4yz0zrwzhd] {
    margin: 0;
    font-size: 0.875rem;
    color: var(--textSecondary);
    line-height: 1.5;
}

.del-actions[b-4yz0zrwzhd] {
    display: flex;
    gap: 10px;
    margin-top: 6px;
    width: 100%;
    justify-content: center;
}

.del-btn[b-4yz0zrwzhd] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 40px;
    padding: 0 20px;
    border-radius: var(--radiusSm);
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    border: 1px solid transparent;
    transition: background 150ms ease, border-color 150ms ease, color 150ms ease;
    flex: 1;
    max-width: 160px;
}

.del-btn:disabled[b-4yz0zrwzhd] {
    opacity: 0.6;
    cursor: not-allowed;
}

.del-btn-cancel[b-4yz0zrwzhd] {
    background: var(--surface);
    border-color: var(--border);
    color: var(--textSecondary);
}

.del-btn-cancel:hover:not(:disabled)[b-4yz0zrwzhd] {
    background: var(--surfaceAlt);
    color: var(--textPrimary);
}

.del-btn-delete[b-4yz0zrwzhd] {
    background: var(--danger);
    border-color: var(--danger);
    color: #fff;
}

.del-btn-delete:hover:not(:disabled)[b-4yz0zrwzhd] {
    opacity: 0.88;
}

@keyframes del-spin-b-4yz0zrwzhd {
    to { transform: rotate(360deg); }
}

.del-spin[b-4yz0zrwzhd] {
    font-size: 18px;
    animation: del-spin-b-4yz0zrwzhd 0.9s linear infinite;
    display: inline-block;
}

/* Save button */
.save-btn[b-4yz0zrwzhd] {
    width: 100%;
    margin-top: 24px;
    min-height: 48px;
    font-size: 15px;
    border-radius: var(--radiusLg);
}

/* Save error banner */
.save-error[b-4yz0zrwzhd] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 14px;
    border-radius: var(--radiusMd);
    background: var(--alertRoseBg);
    border: 1px solid var(--alertRoseBorder);
    color: var(--alertRoseText);
    font-size: 14px;
    margin-top: 12px;
}

.spin[b-4yz0zrwzhd] {
    animation: spin-b-4yz0zrwzhd 1s linear infinite;
    display: inline-block;
}

@keyframes spin-b-4yz0zrwzhd {
    to { transform: rotate(360deg); }
}

/* Sticky header so it stays visible when the wrap scrolls */
.readings-table th[b-4yz0zrwzhd] {
    position: sticky;
    top: 0;
    z-index: 1;
    background: var(--mainBg);
}

@media (max-width: 960px) {
    .log-layout[b-4yz0zrwzhd] {
        grid-template-columns: 1fr;
    }

    .readings-card[b-4yz0zrwzhd] {
        position: static;
        max-height: none;
        overflow: visible;
    }

    /* Cap to ~15 rows (~37px each) and scroll the rest */
    .readings-table-wrap[b-4yz0zrwzhd] {
        max-height: 560px;
        overflow-y: auto;
    }
}

@media (max-width: 600px) {
    .log-title[b-4yz0zrwzhd] {
        font-size: 18px;
    }

    .unit-btn[b-4yz0zrwzhd] {
        padding: 0 12px;
        min-width: 60px;
    }
}
/* /Pages/Login.razor.rz.scp.css */
.login-page[b-6vw66s0y2h] {
    --4-points: 4px;
    --8-points: 8px;
    --16-points: 16px;
    --24-points: 24px;
    --32-points: 32px;
    --40-points: 40px;
    --48-points: 48px;
    --56-points: 56px;
    --64-points: 64px;

    --in-muted: #6b7280;

    display: grid;
    align-items: center;
    justify-content: center;
    min-height: calc(100vh - 60px);
    width: 100%;
    margin: auto;
    /*background-color: var(--mainBg);*/
}

.form-login_register h1[b-6vw66s0y2h] {
    text-align: center;
}

.login_register[b-6vw66s0y2h] {
    display: flex;
    flex-direction: column;
}

.no-error[b-6vw66s0y2h] {
    display: none;
}

.text-danger[b-6vw66s0y2h] {
    width: 100%;
    color: var(--alertRoseText);
    padding: 15px;
    border-radius: 5px;
    border: 1px solid var(--alertRoseBorder);
    background-color: var(--alertRoseBg);
    font-size: 0.8rem;
    font-weight: 300;
}

.form-group[b-6vw66s0y2h] {
    display: grid;
    width: 300px;
    row-gap: var(--32-points);
    background: var(--secondaryBg);
    padding: var(--16-points);
    border: 1px solid var(--border);
    border-radius: var(--16-points);

    @media screen and (max-width: 520px) {
        width: 80vw;[b-6vw66s0y2h]
    }
}

.login-header[b-6vw66s0y2h] {
    display: grid;
    row-gap: var(--4-points);
    font-size: var(--56-points);
}

.login-text[b-6vw66s0y2h] {
    font-size: 1.8rem;
    font-weight: 400;
    margin: 0;
}

.welcome[b-6vw66s0y2h] {
    margin: 0;
    font-size: 0.9rem;
    font-weight: 300;
    color: var(--textMuted);
}

.login-body[b-6vw66s0y2h] {
    display: grid;
    row-gap: var(--16-points);
}

.login-body-footer[b-6vw66s0y2h] {
    display: flex;
    justify-content: space-between;
}

.forgot-password[b-6vw66s0y2h] {
    color: var(--primary);
    font-size: 0.8rem;
    font-weight: 300;
}

.login-action[b-6vw66s0y2h] {
    display: grid;
    row-gap: var(--16-points);

    .signup {
        font-size: 0.85rem;
        font-weight: 300;
        color: var(--in-muted);
        justify-self: center;
    }
    
    .signup a[b-6vw66s0y2h] {
        color: var(--primary);
    }
}

/* /Pages/Meals.razor.rz.scp.css */
/* Page layout */
.page-wrap[b-jbnh3y1gyd] {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 20px;
}

/* Page header */
.page-header[b-jbnh3y1gyd] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
}

.page-header h1[b-jbnh3y1gyd] {
    font-size: 1.75rem;
    font-weight: 700;
    margin: 0;
    color: var(--textPrimary);
}

.page-header p[b-jbnh3y1gyd] {
    color: var(--textPrimary);
    margin: 4px 0 0;
    font-size: 0.9rem;
}

/* Meal tags */
.meal-tags-wrap[b-jbnh3y1gyd] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.meal-tag[b-jbnh3y1gyd] {
    display: inline-flex;
    align-items: center;
    padding: 3px 10px;
    border-radius: 999px;
    background: var(--primarySubtle);
    color: var(--primary);
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
}

/* Breakdown card */
.breakdown-header[b-jbnh3y1gyd] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    gap: 12px;
    flex-wrap: wrap;
}

.breakdown-header h2[b-jbnh3y1gyd] {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--textPrimary);
}

.bar-row[b-jbnh3y1gyd] {
    margin-bottom: 14px;
}

.bar-label-row[b-jbnh3y1gyd] {
    display: flex;
    justify-content: space-between;
    margin-bottom: 4px;
    font-size: 0.875rem;
    color: var(--textMuted);
}

.bar-track[b-jbnh3y1gyd] {
    height: 8px;
    border-radius: 4px;
    background: var(--border);
    overflow: hidden;
}

.bar-fill[b-jbnh3y1gyd] {
    height: 100%;
    border-radius: 4px;
    background: var(--primary);
    transition: width 0.3s ease;
}

/* Meal notes card */
.notes-heading[b-jbnh3y1gyd] {
    margin: 0 0 16px;
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--textPrimary);
}

.note-item[b-jbnh3y1gyd] {
    padding: 12px 16px;
    border-radius: var(--radiusSm);
    margin-bottom: 8px;
    font-size: 0.9rem;
    line-height: 1.5;
}

.note-item:last-child[b-jbnh3y1gyd] {
    margin-bottom: 0;
}

.note-green[b-jbnh3y1gyd] {
    background: var(--alertGreenBg);
    color: var(--alertGreenText);
}

.note-amber[b-jbnh3y1gyd] {
    background: var(--alertAmberBg);
    color: var(--alertAmberText);
}

/* Inline empty state */
.empty-state-inline[b-jbnh3y1gyd] {
    color: var(--textMuted);
    font-size: 0.875rem;
    padding: 16px 0;
    text-align: center;
}

/* Skeleton animations (reuse same keyframes as Logbook) */
.skeleton[b-jbnh3y1gyd] {
    border-radius: 4px;
    background: var(--border);
    animation: meals-skeleton-pulse-b-jbnh3y1gyd 1.4s ease-in-out infinite;
}

.skeleton-sm[b-jbnh3y1gyd] { width: 60px; height: 14px; }
.skeleton-md[b-jbnh3y1gyd] { width: 100px; height: 14px; }
.skeleton-lg[b-jbnh3y1gyd] { width: 160px; height: 14px; }

.note-cell[b-jbnh3y1gyd] {
    max-width: 200px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: var(--textPrimary);
    font-size: 0.875rem;
}

/* Cap meals table at 6 visible rows — use a dedicated class to avoid
   affecting the breakdown / notes cards which share .table-wrap */
.meals-table-wrap[b-jbnh3y1gyd] {
    max-height: 340px;
    overflow-y: auto;
}

@keyframes meals-skeleton-pulse-b-jbnh3y1gyd {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.4; }
}

/* Error banner */
.error-banner[b-jbnh3y1gyd] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 14px 16px;
    border-radius: var(--radiusMd);
    background: var(--alertRoseBg);
    border: 1px solid var(--alertRoseBorder);
    color: var(--alertRoseText);
    font-size: 14px;
    margin-top: 8px;
}

/* Empty state */
.empty-state[b-jbnh3y1gyd] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 48px 24px;
    color: var(--textMuted);
    font-size: 14px;
    text-align: center;
}

.empty-state .material-symbols-outlined[b-jbnh3y1gyd] {
    font-size: 40px;
    opacity: 0.5;
}

/* Coming soon state */
.coming-soon[b-jbnh3y1gyd] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 32px 24px;
    color: var(--textMuted);
    text-align: center;
}

.coming-soon .material-symbols-outlined[b-jbnh3y1gyd] {
    font-size: 36px;
    color: var(--primary);
    opacity: 0.7;
}

.coming-soon p[b-jbnh3y1gyd] {
    margin: 0;
    font-size: 0.9rem;
    line-height: 1.5;
    max-width: 380px;
}

/* Action buttons column */
.meal-actions-cell[b-jbnh3y1gyd] {
    white-space: nowrap;
    text-align: right;
}

.meal-action-btn[b-jbnh3y1gyd] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: none;
    border-radius: var(--radiusSm);
    background: transparent;
    color: var(--textPrimary);
    cursor: pointer;
    transition: background 150ms ease, color 150ms ease;
}

.meal-action-btn:hover[b-jbnh3y1gyd] {
    background: var(--surfaceAlt);
    color: var(--textPrimary);
}

.meal-action-delete:hover[b-jbnh3y1gyd] {
    background: var(--alertRoseBg);
    color: var(--alertRoseText);
}

/* Delete confirmation dialog */
.del-backdrop[b-jbnh3y1gyd] {
    position: fixed;
    inset: 0;
    z-index: 600;
    background: rgba(0, 0, 0, 0.45);
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding-top: 72px;
}

.del-dialog[b-jbnh3y1gyd] {
    width: 100%;
    max-width: 400px;
    padding: 28px 24px 24px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.del-icon[b-jbnh3y1gyd] {
    font-size: 36px;
    color: var(--danger);
    opacity: 0.85;
}

.del-title[b-jbnh3y1gyd] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--textPrimary);
}

.del-body[b-jbnh3y1gyd] {
    margin: 0;
    font-size: 0.875rem;
    color: var(--textSecondary);
    line-height: 1.5;
}

.del-actions[b-jbnh3y1gyd] {
    display: flex;
    gap: 10px;
    margin-top: 6px;
    width: 100%;
    justify-content: center;
}

.del-btn[b-jbnh3y1gyd] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 40px;
    padding: 0 20px;
    border-radius: var(--radiusSm);
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    border: 1px solid transparent;
    transition: background 150ms ease, border-color 150ms ease, color 150ms ease;
    flex: 1;
    max-width: 160px;
}

.del-btn:disabled[b-jbnh3y1gyd] {
    opacity: 0.6;
    cursor: not-allowed;
}

.del-btn-cancel[b-jbnh3y1gyd] {
    background: var(--surface);
    border-color: var(--border);
    color: var(--textSecondary);
}

.del-btn-cancel:hover:not(:disabled)[b-jbnh3y1gyd] {
    background: var(--surfaceAlt);
    color: var(--textPrimary);
}

.del-btn-delete[b-jbnh3y1gyd] {
    background: var(--danger);
    border-color: var(--danger);
    color: #fff;
}

.del-btn-delete:hover:not(:disabled)[b-jbnh3y1gyd] {
    opacity: 0.88;
}

@keyframes del-spin-b-jbnh3y1gyd {
    to { transform: rotate(360deg); }
}

.del-spin[b-jbnh3y1gyd] {
    font-size: 18px;
    animation: del-spin-b-jbnh3y1gyd 0.9s linear infinite;
    display: inline-block;
}

/* Responsive */
@media (max-width: 600px) {
    .page-wrap[b-jbnh3y1gyd] {
        padding: 12px;
    }

    .page-header[b-jbnh3y1gyd] {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }
}
/* /Pages/Medications.razor.rz.scp.css */
/* ── Page layout ─────────────────────────────────────────────── */
.medication-page[b-1wufk1qo7a] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.page-header[b-1wufk1qo7a] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
}

.page-header h1[b-1wufk1qo7a] {
    font-size: 1.75rem;
    font-weight: 700;
    margin: 0;
    color: var(--textPrimary);
}

.page-header p[b-1wufk1qo7a] {
    color: var(--textMuted);
    margin: 4px 0 0;
    font-size: 0.9rem;
}

/* ── Stats bar ───────────────────────────────────────────────── */
.stats-bar[b-1wufk1qo7a] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
}

.stat-card[b-1wufk1qo7a] {
    background: var(--secondaryBg);
    border-radius: var(--radiusMd);
    box-shadow: var(--shadow);
    padding: 16px 20px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.stat-label[b-1wufk1qo7a] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--textMuted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.stat-value[b-1wufk1qo7a] {
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--textPrimary);
    line-height: 1.2;
}

.stat-value-success[b-1wufk1qo7a] { color: var(--success); }
.stat-value-warning[b-1wufk1qo7a] { color: var(--warning); }
.stat-value-muted[b-1wufk1qo7a]   { color: var(--textMuted); }

.stat-sub[b-1wufk1qo7a] {
    font-size: 0.78rem;
    color: var(--textMuted);
}

.trend-up[b-1wufk1qo7a]   { color: var(--success); }
.trend-down[b-1wufk1qo7a] { color: var(--danger); }

/* ── Skeleton placeholders ────────────────────────────────────── */
.skeleton[b-1wufk1qo7a] {
    border-radius: 4px;
    background: var(--border);
    animation: med-skeleton-pulse-b-1wufk1qo7a 1.4s ease-in-out infinite;
}

.skeleton-val[b-1wufk1qo7a] { width: 60px; height: 28px; }
.skeleton-sub[b-1wufk1qo7a] { width: 100px; height: 12px; }

@keyframes med-skeleton-pulse-b-1wufk1qo7a {
    0%, 100% { opacity: 1; }
    50%       { opacity: 0.4; }
}

/* ── Tab bar ─────────────────────────────────────────────────── */
.tab-bar[b-1wufk1qo7a] {
    display: flex;
    gap: 4px;
    background: var(--secondaryBg);
    border-radius: var(--radiusMd);
    padding: 4px;
    box-shadow: var(--shadow);
    width: fit-content;
}

.tab-btn[b-1wufk1qo7a] {
    padding: 8px 20px;
    border: none;
    background: transparent;
    color: var(--textMuted);
    font-size: 0.875rem;
    font-weight: 400;
    border-radius: var(--radiusSm);
    cursor: pointer;
    transition: background 150ms ease, color 150ms ease;
    white-space: nowrap;
}

.tab-btn:hover[b-1wufk1qo7a] {
    color: var(--textPrimary);
    background: var(--surfaceAlt);
}

.tab-active[b-1wufk1qo7a] {
    background: var(--primary);
    color: #fff;
}

.tab-active:hover[b-1wufk1qo7a] {
    background: var(--primaryDark);
    color: #fff;
}

/* ── Section labels ───────────────────────────────────────────── */
.section-label[b-1wufk1qo7a] {
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    color: var(--textMuted);
    margin-bottom: -8px;
}

/* ── Medication card grid ─────────────────────────────────────── */
.med-grid[b-1wufk1qo7a] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 12px;
    margin-bottom: 1.5rem;
}

.med-card[b-1wufk1qo7a] {
    background: var(--secondaryBg);
    border: 0.5px solid var(--border);
    border-radius: 12px;
    padding: 16px;
    cursor: pointer;
    transition: border-color 0.15s;
    position: relative;
}

.med-card:hover[b-1wufk1qo7a] { border-color: var(--borderStrong); }

.med-card.inactive[b-1wufk1qo7a] {
    cursor: default;
}

/* Dim content only - never the whole card (opacity on card creates a stacking context
   that puts the backdrop above the dropdown, making menu buttons unclickable) */
.med-card.inactive .med-card-left[b-1wufk1qo7a],
.med-card.inactive .med-dose-row[b-1wufk1qo7a] {
    opacity: 0.5;
}

.med-card-top[b-1wufk1qo7a] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 14px;
}

.med-card-left[b-1wufk1qo7a] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.med-icon[b-1wufk1qo7a] {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.med-name[b-1wufk1qo7a] {
    font-size: 14px;
    font-weight: 500;
    color: var(--textPrimary);
}

.med-type[b-1wufk1qo7a] {
    font-size: 11px;
    color: var(--textSecondary);
    margin-top: 2px;
}

.med-card-right[b-1wufk1qo7a] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.med-badge[b-1wufk1qo7a] {
    font-size: 10px;
    font-weight: 500;
    padding: 3px 8px;
    border-radius: 99px;
}

.med-badge.active[b-1wufk1qo7a]   { background: #CCFBF1; color: #0F6E56; }
.med-badge.inactive[b-1wufk1qo7a] { background: var(--surfaceAlt); color: var(--textSecondary); }

/* ⋯ menu button */
.menu-btn[b-1wufk1qo7a] {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    border: none;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--textSecondary);
    position: relative;
    z-index: 2;
}

.menu-btn:hover[b-1wufk1qo7a] {
    background: var(--surfaceAlt);
    color: var(--textPrimary);
}

.menu-btn .material-symbols-outlined[b-1wufk1qo7a] {
    font-size: 18px;
}

/* Card dropdown menu */
.med-dropdown[b-1wufk1qo7a] {
    position: absolute;
    top: 44px;
    right: 16px;
    background: var(--secondaryBg);
    border: 0.5px solid var(--borderStrong);
    border-radius: 8px;
    padding: 4px;
    z-index: 10;
    min-width: 160px;
    display: none;
    box-shadow: var(--shadowLg);
}

.med-dropdown.open[b-1wufk1qo7a] { display: block; }

.med-dropdown-item[b-1wufk1qo7a] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    border-radius: 6px;
    font-size: 13px;
    color: var(--textPrimary);
    cursor: pointer;
    border: none;
    background: transparent;
    width: 100%;
    text-align: left;
    transition: background 120ms ease;
}

.med-dropdown-item:hover:not(:disabled)[b-1wufk1qo7a] { background: var(--surfaceAlt); }

.med-dropdown-item:disabled[b-1wufk1qo7a] {
    opacity: 0.5;
    cursor: not-allowed;
}

.med-dropdown-item .material-symbols-outlined[b-1wufk1qo7a] {
    font-size: 15px;
    flex-shrink: 0;
}

.med-dropdown-item.danger[b-1wufk1qo7a] { color: #DC2626; }

/* Dose row */
.med-dose-row[b-1wufk1qo7a] {
    display: flex;
    align-items: baseline;
    gap: 4px;
    margin-bottom: 6px;
}

.med-dose-value[b-1wufk1qo7a] { font-size: 22px; font-weight: 500; color: var(--textPrimary); }
.med-dose-unit[b-1wufk1qo7a]  { font-size: 12px; color: var(--textSecondary); }
.med-dose-note[b-1wufk1qo7a]  { font-size: 11px; color: var(--textSecondary); margin-left: 4px; }

/* Card footer adherence bar */
.med-card-footer[b-1wufk1qo7a] {
    border-top: 0.5px solid var(--border);
    padding-top: 12px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.adherence-label[b-1wufk1qo7a] { font-size: 11px; color: var(--textSecondary); min-width: 30px; }

.adherence-bar-bg[b-1wufk1qo7a] {
    flex: 1;
    height: 4px;
    background: var(--surfaceAlt);
    border-radius: 2px;
    overflow: hidden;
}

.adherence-bar-fill[b-1wufk1qo7a] {
    height: 100%;
    border-radius: 2px;
    background: #0D9488;
    transition: width 0.3s ease;
}

.adherence-pct[b-1wufk1qo7a]         { font-size: 11px; color: var(--textSecondary); min-width: 40px; text-align: right; }
.adherence-pct.pending[b-1wufk1qo7a] { color: #EA580C; }

/* Card skeleton */
.med-card-skeleton[b-1wufk1qo7a] {
    background: var(--secondaryBg);
    border: 0.5px solid var(--border);
    border-radius: 12px;
    padding: 16px;
    display: flex;
    align-items: center;
    gap: 12px;
}

/* ── Log history tab ──────────────────────────────────────────── */
.log-section-header[b-1wufk1qo7a] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
}

.section-title[b-1wufk1qo7a] {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
    color: var(--textPrimary);
}

.export-btn[b-1wufk1qo7a] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 12px;
    border: 1px solid var(--border);
    background: var(--secondaryBg);
    color: var(--textMuted);
    font-size: 0.8rem;
    font-weight: 400;
    border-radius: var(--radiusSm);
    cursor: not-allowed;
    opacity: 0.6;
}

.export-btn .material-symbols-outlined[b-1wufk1qo7a] { font-size: 16px; }

.log-row[b-1wufk1qo7a] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid var(--border);
}

.log-row:last-child[b-1wufk1qo7a] { border-bottom: none; }

.log-icon[b-1wufk1qo7a] {
    width: 36px;
    height: 36px;
    border-radius: var(--radiusSm);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.log-info[b-1wufk1qo7a] { flex: 1; min-width: 0; }

.log-name[b-1wufk1qo7a] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--textPrimary);
}

.log-meta[b-1wufk1qo7a] {
    font-size: 0.75rem;
    color: var(--textMuted);
    margin-top: 2px;
}

.log-right[b-1wufk1qo7a] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px;
    flex-shrink: 0;
}

.log-dose[b-1wufk1qo7a] {
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--textSecondary);
}

.log-badge[b-1wufk1qo7a] {
    padding: 2px 8px;
    border-radius: var(--radiusSm);
    font-size: 11px;
    font-weight: 700;
}

.log-badge-taken[b-1wufk1qo7a]   { background: var(--alertGreenBg);  color: var(--alertGreenText); }
.log-badge-missed[b-1wufk1qo7a]  { background: var(--alertRoseBg);   color: var(--alertRoseText); }
.log-badge-pending[b-1wufk1qo7a] { background: var(--alertAmberBg);  color: var(--alertAmberText); }

.log-row-skeleton[b-1wufk1qo7a] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid var(--border);
}

/* ── Error / empty states ─────────────────────────────────────── */
.error-banner[b-1wufk1qo7a] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 14px 16px;
    border-radius: var(--radiusMd);
    background: var(--alertRoseBg);
    border: 1px solid var(--alertRoseBorder);
    color: var(--alertRoseText);
    font-size: 14px;
}

.empty-state[b-1wufk1qo7a] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 48px 24px;
    color: var(--textMuted);
    font-size: 14px;
    text-align: center;
}

.empty-state .material-symbols-outlined[b-1wufk1qo7a] {
    font-size: 40px;
    opacity: 0.5;
}

/* ── Responsive ──────────────────────────────────────────────── */
@media (max-width: 900px) {
    .stats-bar[b-1wufk1qo7a] { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 600px) {

    .page-header[b-1wufk1qo7a] {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }

    .stats-bar[b-1wufk1qo7a] {
        grid-template-columns: repeat(2, 1fr);
        gap: 8px;
    }

    .stat-value[b-1wufk1qo7a] { font-size: 1.25rem; }
}

@media (max-width: 480px) {
    .stats-bar[b-1wufk1qo7a] { grid-template-columns: 1fr 1fr; }

    .tab-btn[b-1wufk1qo7a] {
        padding: 8px 14px;
        font-size: 0.8rem;
    }
}
/* /Pages/Overview.razor.rz.scp.css */
.overview[b-3y36i2hh1a] {
    display: grid;
    gap: 2rem;
}

.dash-stats[b-3y36i2hh1a] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

.stat-card[b-3y36i2hh1a] {
    background: var(--secondaryBg);
    /*border: 1px solid var(--border);*/
    border-radius: var(--radiusXl);
    padding: 20px 22px;
    box-shadow: var(--shadow);
}

.stat-hero[b-3y36i2hh1a] {
    background: linear-gradient(135deg, var(--primary) 0%, var(--primaryDark) 100%);
    border: none;
    box-shadow: var(--shadowLg);
}

.stat-hero-label[b-3y36i2hh1a] {
    font-size: 13px;
    font-weight: 500;
    color: rgba(255, 255, 255, .80);
}

.stat-hero-reading[b-3y36i2hh1a] {
    display: flex;
    align-items: baseline;
    gap: 6px;
    margin-top: 6px;
}

.stat-hero-value[b-3y36i2hh1a] {
    font-size: 48px;
    font-weight: 800;
    line-height: 1;
    color: white;
}

.stat-hero-unit[b-3y36i2hh1a] {
    font-size: 16px;
    font-weight: 500;
    color: rgba(255, 255, 255, .85);
    padding-bottom: 4px;
}

.stat-label[b-3y36i2hh1a] {
    font-size: 13px;
    font-weight: 500;
    color: var(--textMuted);
}

.stat-value[b-3y36i2hh1a] {
    font-size: 32px;
    font-weight: 800;
    color: var(--textPrimary);
    margin-top: 6px;
    line-height: 1.1;
}

.stat-unit[b-3y36i2hh1a] {
    font-size: 15px;
    font-weight: 500;
    color: var(--textSecondary);
}

.stat-sub[b-3y36i2hh1a] {
    font-size: 12px;
    color: var(--textMuted);
    margin-top: 6px;
}

/* Desktop: explanation text visible inline below the sub-label */
.stat-hint[b-3y36i2hh1a] {
    font-size: 11px;
    line-height: 1.5;
    color: var(--textMuted);
    margin: 10px 0 0;
    padding-top: 10px;
    border-top: 1px solid var(--border);
}

.dash-main[b-3y36i2hh1a] {
    display: grid;
    grid-template-columns: 1.6fr 1fr;
    gap: 20px;
}

.dash-side[b-3y36i2hh1a] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.alert-stack[b-3y36i2hh1a] {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 14px;
}

.alert-item[b-3y36i2hh1a] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    border-radius: var(--radiusMd);
    font-size: 13px;
    font-weight: 500;
    line-height: 1.4;
}

.alert-rose[b-3y36i2hh1a] {
    background: var(--alertRoseBg);
    border: 1px solid var(--alertRoseBorder);
    color: var(--alertRoseText);
}

.alert-amber[b-3y36i2hh1a] {
    background: var(--alertAmberBg);
    border: 1px solid var(--alertAmberBorder);
    color: var(--alertAmberText);
}

.alert-teal[b-3y36i2hh1a] {
    background: var(--alertGreenBg);
    border: 1px solid var(--alertGreenBorder);
    color: var(--alertGreenText);
}

.alert-item .material-symbols-outlined[b-3y36i2hh1a] {
    font-size: 18px;
    flex-shrink: 0;
}

.badge-pill[b-3y36i2hh1a] {
    display: inline-flex;
    align-items: center;
    padding: 4px 12px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
}

.badge-green[b-3y36i2hh1a] {
    background: var(--alertGreenBg);
    border: 1px solid var(--alertGreenBorder);
    color: var(--alertGreenText);
}

/* Hero card overrides for out-of-range glucose */
.stat-hero.stat-hero-high[b-3y36i2hh1a] {
    background: var(--alertRoseBg);
    border: 1px solid var(--alertRoseBorder);
    color: var(--alertRoseText);
    box-shadow: var(--shadow);
}

.stat-hero.stat-hero-high .stat-hero-label[b-3y36i2hh1a] {
    color: var(--alertRoseText);
    opacity: 0.8;
}

.stat-hero.stat-hero-high .stat-hero-value[b-3y36i2hh1a],
.stat-hero.stat-hero-high .stat-hero-unit[b-3y36i2hh1a] {
    color: var(--alertRoseText);
}

.stat-hero.stat-hero-low[b-3y36i2hh1a] {
    background: var(--alertAmberBg);
    border: 1px solid var(--alertAmberBorder);
    color: var(--alertAmberText);
    box-shadow: var(--shadow);
}

.stat-hero.stat-hero-low .stat-hero-label[b-3y36i2hh1a] {
    color: var(--alertAmberText);
    opacity: 0.8;
}

.stat-hero.stat-hero-low .stat-hero-value[b-3y36i2hh1a],
.stat-hero.stat-hero-low .stat-hero-unit[b-3y36i2hh1a] {
    color: var(--alertAmberText);
}

/* Hero badge (in-range: white pill on green) */
.hero-badge[b-3y36i2hh1a] {
    display: inline-flex;
    margin-top: 12px;
    padding: 4px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .20);
    font-size: 12px;
    font-weight: 600;
    color: white;
}

.hero-badge.hero-badge-high[b-3y36i2hh1a] {
    background: var(--alertRoseBorder);
    color: var(--alertRoseText);
}

.hero-badge.hero-badge-low[b-3y36i2hh1a] {
    background: var(--alertAmberBorder);
    color: var(--alertAmberText);
}

/* Skeleton loading states for stats */
.skeleton[b-3y36i2hh1a] {
    border-radius: 4px;
    background: rgba(255, 255, 255, 0.25);
    animation: overview-skeleton-pulse-b-3y36i2hh1a 1.4s ease-in-out infinite;
}

.stat-card:not(.stat-hero) .skeleton[b-3y36i2hh1a] {
    background: var(--border);
}

.skeleton-label[b-3y36i2hh1a]  { width: 80px;  height: 13px; display: block; }
.skeleton-value[b-3y36i2hh1a]  { width: 100px; height: 32px; display: block; margin-top: 8px; border-radius: 6px; }
.skeleton-value-lg[b-3y36i2hh1a] { width: 130px; height: 48px; display: block; margin-top: 8px; border-radius: 8px; }
.skeleton-badge[b-3y36i2hh1a]  { width: 70px;  height: 22px; display: block; margin-top: 14px; border-radius: 999px; }
.skeleton-sub[b-3y36i2hh1a]    { width: 60px;  height: 12px; display: block; margin-top: 8px; }

@keyframes overview-skeleton-pulse-b-3y36i2hh1a {
    0%, 100% { opacity: 1; }
    50%       { opacity: 0.4; }
}

/* No-data placeholder */
.stat-no-data[b-3y36i2hh1a] {
    color: var(--textMuted);
    font-size: 28px !important;
}

/* Quick action buttons - pill style, 2x2 grid, no icons */
.quick-grid[b-3y36i2hh1a] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 14px;
}

.quick-btn[b-3y36i2hh1a] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 12px 16px;
    border-radius: var(--radiusMd);
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    transition: opacity 150ms ease, background 150ms ease;
    border: 1px solid transparent;
    white-space: nowrap;
}

.quick-btn-outline[b-3y36i2hh1a] {
    background: var(--secondaryBg);
    color: var(--textPrimary);
    border-color: var(--border);
}

.quick-btn-outline:hover:not(:disabled)[b-3y36i2hh1a] {
    background: var(--surfaceAlt);
}

.quick-btn:disabled[b-3y36i2hh1a] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Bar skeleton for chart loading state */
.bar.bar-skeleton[b-3y36i2hh1a] {
    background: var(--border);
    animation: overview-skeleton-pulse-b-3y36i2hh1a 1.4s ease-in-out infinite;
    cursor: default;
    pointer-events: none;
}

.bar.bar-skeleton[b-3y36i2hh1a]::after {
    display: none;
}

/* Bar chart: position + cursor for tooltip */
.bar[b-3y36i2hh1a] {
    position: relative;
    cursor: pointer;
    overflow: visible;
}

/* CSS-only tooltip via data-value attribute */
.bar[b-3y36i2hh1a]::after {
    content: attr(data-value);
    position: absolute;
    bottom: calc(100% + 6px);
    left: 50%;
    transform: translateX(-50%);
    background: var(--textPrimary);
    color: var(--bg);
    font-size: 11px;
    font-weight: 600;
    padding: 3px 8px;
    border-radius: var(--radiusSm);
    white-space: nowrap;
    pointer-events: none;
    z-index: 10;
    opacity: 0;
    transition: opacity 120ms ease;
}

/* Show tooltip: hover (desktop), focus (keyboard), active (mobile tap) */
/* Only show when bar has actual data (non-empty data-value) */
.bar:not([data-value=""]):hover[b-3y36i2hh1a]::after,
.bar:not([data-value=""]):focus[b-3y36i2hh1a]::after,
.bar:not([data-value=""]):active[b-3y36i2hh1a]::after {
    opacity: 1;
}

/* Bar color overrides for out-of-range readings — uses saturated chart tokens */
.bar.bar-high[b-3y36i2hh1a] {
    background: var(--chartBarHigh);
    opacity: 0.85;
}

.bar.bar-low[b-3y36i2hh1a] {
    background: var(--chartBarLow);
    opacity: 0.85;
}

.bar.bar-high:hover[b-3y36i2hh1a],
.bar.bar-low:hover[b-3y36i2hh1a],
.bar.bar-high:focus[b-3y36i2hh1a],
.bar.bar-low:focus[b-3y36i2hh1a] {
    opacity: 1;
}

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

    .dash-main[b-3y36i2hh1a] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px) {
    /* Hero spans full width; the 3 stat cards line up in a row below */
    .dash-stats[b-3y36i2hh1a] {
        grid-template-columns: repeat(3, 1fr);
    }

    .stat-hero[b-3y36i2hh1a] {
        grid-column: 1 / -1;
    }

    .stat-hero-value[b-3y36i2hh1a] {
        font-size: 40px;
    }

    /* Compact the smaller cards so they fit side-by-side */
    .stat-card:not(.stat-hero)[b-3y36i2hh1a] {
        padding: 14px 10px;
    }

    .stat-value[b-3y36i2hh1a] {
        font-size: 22px;
    }

    .stat-sub[b-3y36i2hh1a] {
        display: none;
    }

    /* Mobile: stat cards are tap targets for the hint tooltip */
    .stat-card:not(.stat-hero)[b-3y36i2hh1a] {
        position: relative;
        cursor: pointer;
        outline: none;
    }

    /* Mobile: hide hint inline, convert to floating tooltip on focus (tap) */
    .stat-hint[b-3y36i2hh1a] {
        position: absolute;
        bottom: calc(100% + 8px);
        left: 0;
        right: 0;
        background: var(--textPrimary);
        color: var(--bg);
        font-size: 11px;
        font-weight: 500;
        line-height: 1.5;
        padding: 10px 12px;
        border-radius: var(--radiusMd);
        border-top: none;
        padding-top: 10px;
        margin-top: 0;
        opacity: 0;
        pointer-events: none;
        z-index: 20;
        transition: opacity 150ms ease;
        white-space: normal;
    }

    /* Show on tap (focus) or press (active) */
    .stat-card:not(.stat-hero):focus .stat-hint[b-3y36i2hh1a],
    .stat-card:not(.stat-hero):active .stat-hint[b-3y36i2hh1a] {
        opacity: 1;
    }
}
/* /Pages/Profile.razor.rz.scp.css */
.profile[b-kcisbprv4r] {
    display: grid;
    gap: 1rem;
}

.profile-header-card[b-kcisbprv4r] {
    display: flex;
    align-items: center;
    gap: 18px;
}

.profile-avatar[b-kcisbprv4r] {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--accentGlow), var(--primary));
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    flex-shrink: 0;
    box-shadow: 0 0 0 3px var(--surface), 0 0 0 5px var(--border);
}

.profile-avatar .material-symbols-outlined[b-kcisbprv4r] {
    font-size: 32px;
    font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

.profile-name[b-kcisbprv4r] {
    font-size: 22px;
    font-weight: 800;
    color: var(--textPrimary);
}

.profile-plan[b-kcisbprv4r] {
    font-size: 14px;
    color: var(--textMuted);
    margin-top: 3px;
}

.settings-key[b-kcisbprv4r] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: var(--textSecondary);
}

.settings-row-icon[b-kcisbprv4r] {
    font-size: 18px;
    color: var(--textMuted);
}

.settings-val[b-kcisbprv4r] {
    font-size: 14px;
    font-weight: 600;
    color: var(--textPrimary);
}

.settings-val.val-enabled[b-kcisbprv4r] {
    color: var(--success);
}

.settings-val.val-disabled[b-kcisbprv4r] {
    color: var(--textMuted);
}

/* Dark-mode toggle - bare icon, no border or padding */
.toggle-btn[b-kcisbprv4r] {
    border: none;
    background: transparent;
    cursor: pointer;
    padding: 0;
    color: inherit;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    min-height: 44px;
    border-radius: var(--radiusSm);
    transition: opacity 150ms ease;
}

.toggle-btn:hover[b-kcisbprv4r] { opacity: 0.75; }

.toggle-icon[b-kcisbprv4r] {
    font-size: 42px;
    font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 48;
    line-height: 1;
}

/* Value toggle button */
.settings-val-btn[b-kcisbprv4r] {
    border: 1px solid var(--textSecondary);
    border-radius: var(--radiusMd);
    background: transparent;
    cursor: pointer;
    font: inherit;
    padding: 6px 14px;
    min-width: 80px;
    min-height: 36px;
    text-align: center;
    transition: background 150ms ease, border-color 150ms ease;
    flex-shrink: 0;
}

.settings-val-btn:hover[b-kcisbprv4r] {
    background: var(--surfaceAlt);
    border-color: var(--borderStrong);
}

.settings-val-btn:active[b-kcisbprv4r] {
    filter: brightness(0.94);
}

.device-info[b-kcisbprv4r] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
}

.device-icon[b-kcisbprv4r] {
    font-size: 20px;
    color: var(--textMuted);
}

.device-status[b-kcisbprv4r] {
    font-size: 13px;
    font-weight: 500;
    color: var(--textMuted);
}

.device-status.connected[b-kcisbprv4r] {
    color: var(--success);
    font-weight: 600;
}

.section-sub[b-kcisbprv4r] {
    font-size: 13px;
    color: var(--textMuted);
    margin: -4px 0 16px;
}

.account-actions[b-kcisbprv4r] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

/* Override global align-items: start so the h3 and Edit button sit on the same baseline */
.card-title-row[b-kcisbprv4r] {
    align-items: center;
    margin-bottom: 16px;
}

/* Health settings edit button - compact */
.hs-edit-btn[b-kcisbprv4r] {
    padding: 6px 14px;
    font-size: 13px;
    height: 36px;
    min-height: 36px;
    flex-shrink: 0;
}

.hs-edit-btn .material-symbols-outlined[b-kcisbprv4r] {
    font-size: 16px;
}

/* "Not set yet" muted value */
.val-not-set[b-kcisbprv4r] {
    color: var(--textMuted);
    font-weight: 400;
    font-style: italic;
}

/* Skeleton for health settings rows */
.skeleton[b-kcisbprv4r] {
    border-radius: 4px;
    background: var(--border);
    animation: profile-skeleton-pulse-b-kcisbprv4r 1.4s ease-in-out infinite;
    display: inline-block;
}

.skeleton-hs[b-kcisbprv4r] {
    width: 120px;
    height: 14px;
}

@keyframes profile-skeleton-pulse-b-kcisbprv4r {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.4; }
}

@media (max-width: 600px) {
    .profile-avatar[b-kcisbprv4r] {
        width: 48px;
        height: 48px;
    }

    .profile-avatar .material-symbols-outlined[b-kcisbprv4r] {
        font-size: 24px;
    }

    .profile-name[b-kcisbprv4r] {
        font-size: 18px;
    }

    .profile-header-card[b-kcisbprv4r] {
        gap: 14px;
    }

    .account-actions[b-kcisbprv4r] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/Register.razor.rz.scp.css */
.register-page[b-fu4va5u5zr] {
    --4-points: 4px;
    --8-points: 8px;
    --16-points: 16px;
    --24-points: 24px;
    --32-points: 32px;
    --40-points: 40px;
    --48-points: 48px;
    --56-points: 56px;
    --64-points: 64px;

    --in-muted: #6b7280;

    display: grid;
    align-items: center;
    justify-content: center;
    min-height: calc(100vh - 60px);
    width: 100%;
    margin: auto;
}

.no-error[b-fu4va5u5zr] {
    display: none;
}

.text-danger[b-fu4va5u5zr] {
    width: 100%;
    color: var(--alertRoseText);
    padding: 15px;
    border-radius: 5px;
    border: 1px solid var(--alertRoseBorder);
    background-color: var(--alertRoseBg);
    font-size: 0.8rem;
    font-weight: 300;
}

.form-group[b-fu4va5u5zr] {
    display: grid;
    width: 340px;
    row-gap: var(--32-points);
    background: var(--secondaryBg);
    padding: var(--16-points);
    border: 1px solid var(--border);
    border-radius: var(--16-points);

    @media screen and (max-width: 520px) {
        width: 90vw;[b-fu4va5u5zr]
    }
}

.register-header[b-fu4va5u5zr] {
    display: grid;
    row-gap: var(--4-points);
}

.register-title[b-fu4va5u5zr] {
    font-size: 1.8rem;
    font-weight: 400;
    margin: 0;
}

.register-subtitle[b-fu4va5u5zr] {
    margin: 0;
    font-size: 0.9rem;
    font-weight: 300;
    color: var(--textMuted);
}

.register-body[b-fu4va5u5zr] {
    display: grid;
    row-gap: var(--16-points);
}

.register-action[b-fu4va5u5zr] {
    display: grid;
    row-gap: var(--16-points);

    .register-login-link {
        font-size: 0.85rem;
        font-weight: 300;
        color: var(--in-muted);
        justify-self: center;
    }

    .register-login-link a[b-fu4va5u5zr] {
        color: var(--primary);
    }
}

/* Success state */
.register-success[b-fu4va5u5zr] {
    display: grid;
    row-gap: var(--8-points);
    justify-items: center;
    text-align: center;
    padding: var(--16-points) 0;
}

.register-success-icon[b-fu4va5u5zr] {
    font-size: 3rem;
    color: var(--primary);
}

.register-success-title[b-fu4va5u5zr] {
    margin: 0;
    font-size: 1.2rem;
    font-weight: 500;
}

.register-success-body[b-fu4va5u5zr] {
    margin: 0;
    font-size: 0.9rem;
    font-weight: 300;
    color: var(--textMuted);
    line-height: 1.5;

    a {
        color: var(--primary);
    }
}

.turnstile-box[b-fu4va5u5zr] {
    width: 100%;
    border-radius: var(--in-radius)
}
