/* /Views/AccountManagement/Partials/_AdminsTableHeader.cshtml.rz.scp.css */
.admins-table-controls[b-9pzhpck289] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
}

.admins-search[b-9pzhpck289] {
    position: relative;
}

.admins-search__input[b-9pzhpck289] {
    padding-right: 40px;
    min-width: 280px;
}

.admins-search__icon[b-9pzhpck289] {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--bs-secondary-color);
    pointer-events: none;
}

.admins-add-btn[b-9pzhpck289] {
    display: flex;
    align-items: center;
    gap: 8px;
    white-space: nowrap;
}
/* /Views/AdminDashboard/Index.cshtml.rz.scp.css */
.admin-dashboard[b-8ql46dgcq1] {
    display: flex;
    flex-direction: column;
    gap: 24px;
    overflow-y: auto;
    flex: 1;
}

/* Header */
.admin-header[b-8ql46dgcq1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px;
}

.admin-header-right[b-8ql46dgcq1] {
    display: flex;
    align-items: center;
    gap: 16px;
}

.admin-welcome[b-8ql46dgcq1] {
    font-size: 24px;
    font-weight: 700;
    margin: 0;
}

.admin-export-btn[b-8ql46dgcq1] {
    display: flex;
    align-items: center;
    gap: 8px;
}

/* Quick Actions */
.admin-quick-actions[b-8ql46dgcq1] {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
}

.admin-card[b-8ql46dgcq1] {
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: var(--radius-card-sm);
    padding: 30px;
    display: flex;
    flex-direction: column;
}

.admin-card-header[b-8ql46dgcq1] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 24px;
}

.admin-card-header h3[b-8ql46dgcq1] {
    font-size: 26px;
    font-weight: 400;
    margin: 0;
}

.admin-card-icon[b-8ql46dgcq1] {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.admin-card-icon--sleep[b-8ql46dgcq1] { background: #69329A1A; }
.admin-card-icon--compliance[b-8ql46dgcq1] { background: #29B2231A; }
.admin-card-icon--participant[b-8ql46dgcq1] { background: #324F9A1A; }
.admin-card-icon--participants[b-8ql46dgcq1] { background: #F549AB1A; }
.admin-card-icon--settings[b-8ql46dgcq1] { background: #4876C61A; }
.admin-card-icon--export[b-8ql46dgcq1] { background: #0E7C661A; }

.admin-card-desc[b-8ql46dgcq1] {
    font-size: 20px;
    color: var(--bs-secondary-color);
    margin: 0 0 24px;
    flex: 1;
}

.admin-card hr[b-8ql46dgcq1] {
    margin: 0 0 30px;
    border-color: var(--bs-border-color);
}

.admin-card-btn[b-8ql46dgcq1] {
    width: 100%;
    text-align: center;
}

/* Metrics Row */
.admin-metrics-row[b-8ql46dgcq1] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.admin-sleep-metrics[b-8ql46dgcq1],
.admin-compliance-card[b-8ql46dgcq1] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: var(--radius-card);
    padding: 30px;
}

.admin-sleep-metrics h2[b-8ql46dgcq1],
.admin-compliance-card h2[b-8ql46dgcq1],
.admin-top-participants h2[b-8ql46dgcq1] {
    font-size: 30px;
    font-weight: 700;
    margin: 0 0 35px;
}

.admin-metric-item[b-8ql46dgcq1] {
    display: flex;
    align-items: center;
    gap: 19px;
    padding: 20px;
    background: #F8FAFC;
    border-radius: var(--radius-card-sm);
}

.admin-metric-icon[b-8ql46dgcq1] {
    width: 55px;
    height: 55px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.admin-metric-icon--purple[b-8ql46dgcq1] { background: #69329A1A; }
.admin-metric-icon--red[b-8ql46dgcq1] { background: #F549491A; }
.admin-metric-icon--green[b-8ql46dgcq1] { background: #29B2231A; }

.admin-metric-label[b-8ql46dgcq1] {
    font-size: 26px;
    font-weight: 400;
    line-height: 1.3;
    flex: 1;
}

.admin-metric-value[b-8ql46dgcq1] {
    font-size: 26px;
    font-weight: 400;
}

/* Compliance Gauge */
.admin-compliance-card[b-8ql46dgcq1] {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.admin-compliance-card h2[b-8ql46dgcq1] {
    align-self: flex-start;
}

.admin-gauge-wrapper[b-8ql46dgcq1] {
    width: 100%;
    max-width: 500px;
    align-self: center;
}

.admin-gauge[b-8ql46dgcq1] {
    width: 100%;
    height: 100%;
}

.admin-gauge-tick[b-8ql46dgcq1] {
    fill: var(--bs-border-color);
}

.admin-gauge-bg[b-8ql46dgcq1] {
    fill: none;
    stroke: var(--bs-border-color);
    stroke-width: 40;
    stroke-linecap: round;
}

.admin-gauge-fill[b-8ql46dgcq1] {
    fill: none;
    stroke: url(#gaugeGradient);
    stroke-width: 40;
    stroke-linecap: round;
}

.admin-gauge-text[b-8ql46dgcq1] {
    font-size: 90px;
    font-weight: 400;
    fill: var(--admin-primary);
    text-anchor: middle;
    dominant-baseline: central;
}

.admin-gauge-label[b-8ql46dgcq1] {
    font-size: 24px;
    fill: var(--bs-secondary-color);
    text-anchor: middle;
}

.admin-compliance-message[b-8ql46dgcq1] {
    font-size: 16px;
    padding: 10px 14px;
    border-radius: var(--bs-border-radius);
    margin-top: auto;
    text-align: left;
}

.admin-compliance-message--good[b-8ql46dgcq1] {
    background: #e6f9ee;
    color: #16a34a;
}

.admin-compliance-message--low[b-8ql46dgcq1] {
    background: #fff3cd;
    color: #856404;
}

/* Badge colors */
.admin-top-participants[b-8ql46dgcq1]  .data-table-badge--high {
    background: #29B2231A;
    color: #29B223;
}

.admin-top-participants[b-8ql46dgcq1]  .data-table-badge--mid {
    background: #F5A6231A;
    color: #F5A623;
}

.admin-top-participants[b-8ql46dgcq1]  .data-table-badge--low {
    background: #F549491A;
    color: #F54949;
}

.admin-top-participants[b-8ql46dgcq1]  .data-table-badge--muted {
    background: #6c757d1A;
    color: #6c757d;
}

/* Top Participants Table */
.admin-top-participants[b-8ql46dgcq1] {
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: var(--radius-card);
    padding: 30px;
}

/* Responsive */
@media (min-width: 768px) {
    .admin-welcome[b-8ql46dgcq1] {
        font-size: 30px;
    }

    .admin-quick-actions[b-8ql46dgcq1] {
        grid-template-columns: repeat(3, 1fr);
    }

    .admin-metrics-row[b-8ql46dgcq1] {
        flex-direction: row;
    }

    .admin-sleep-metrics[b-8ql46dgcq1] {
        flex: 2;
    }

    .admin-compliance-card[b-8ql46dgcq1] {
        flex: 1;
    }
}

@media (min-width: 1200px) {
    .admin-quick-actions[b-8ql46dgcq1] {
        grid-template-columns: repeat(5, 1fr);
    }
}
/* /Views/AdminDashboard/Partials/_UserRow.cshtml.rz.scp.css */
/* Badge widths now use shared .data-table-badge--w-sm / --w-md classes */
/* /Views/AdminSettings/Partials/_GeneralSettingsContent.cshtml.rz.scp.css */
.general-settings-page[b-g46qr2dkpn] {
    padding: 0 20px;
    display: flex;
    flex-direction: column;
    gap: 40px;
    overflow-y: auto;
}

/* Sections */
.general-settings-section[b-g46qr2dkpn] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-bottom: 32px;
    border-bottom: 1px solid var(--bs-border-color);
}

.general-settings-section:last-child[b-g46qr2dkpn] {
    border-bottom: none;
}

.general-settings-section-title[b-g46qr2dkpn] {
    font-size: 22px;
    font-weight: 700;
    margin: 0;
}

.general-settings-section-desc[b-g46qr2dkpn] {
    color: var(--bs-secondary-color);
    margin: 0;
}

/* Account form */
.general-settings-account-form[b-g46qr2dkpn] {
    display: flex;
    flex-direction: column;
    gap: 24px;
    margin-top: 8px;
}

.general-settings-account-actions[b-g46qr2dkpn] {
    display: flex;
    gap: 12px;
    margin-top: 8px;
}

/* Password form */
.general-settings-password-form[b-g46qr2dkpn] {
    display: flex;
    flex-direction: column;
    gap: 24px;
    margin-top: 8px;
}

.general-settings-field[b-g46qr2dkpn] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.general-settings-field-label[b-g46qr2dkpn] {
    font-size: 16px;
    font-weight: 600;
    margin: 0;
}

.general-settings-password-actions[b-g46qr2dkpn] {
    margin-top: 8px;
}

/* Responsive */
@media (min-width: 768px) {
    .general-settings-page[b-g46qr2dkpn] {
        padding: 0 18px;
    }

    .general-settings-section-title[b-g46qr2dkpn] {
        font-size: 30px;
    }

    .general-settings-account-form[b-g46qr2dkpn] {
        max-width: 480px;
    }

    .general-settings-account-actions[b-g46qr2dkpn] {
        max-width: 480px;
        justify-content: flex-end;
    }

    .general-settings-field-label[b-g46qr2dkpn] {
        font-size: 18px;
    }

    .general-settings-password-form[b-g46qr2dkpn] {
        max-width: 480px;
    }

    .general-settings-password-actions[b-g46qr2dkpn] {
        display: flex;
        justify-content: flex-end;
        max-width: 480px;
    }
}

@media (min-width: 1024px) {
    .general-settings-page[b-g46qr2dkpn] {
        padding: 0 24px;
    }
}
/* /Views/AdminSettings/Partials/_NotificationSettingsContent.cshtml.rz.scp.css */
.notification-settings-page[b-qapc6q9n5q] {
    padding: 0 20px;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
}

/* Section */
.notification-settings-section[b-qapc6q9n5q] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.notification-settings-section-title[b-qapc6q9n5q] {
    font-size: 22px;
    font-weight: 700;
    margin: 0;
}

.notification-settings-section-desc[b-qapc6q9n5q] {
    color: var(--bs-secondary-color);
    margin: 0;
}

/* Toggle list */
.notification-settings-toggles[b-qapc6q9n5q] {
    display: flex;
    flex-direction: column;
    gap: 28px;
    margin-top: 16px;
}

.notification-settings-item[b-qapc6q9n5q] {
    display: flex;
    align-items: center;
    gap: 16px;
    cursor: pointer;
}

.notification-settings-item-text[b-qapc6q9n5q] {
}

/* Group: toggle + collapsible detail block */
.notification-settings-group[b-qapc6q9n5q] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.notification-settings-detail[b-qapc6q9n5q] {
    display: flex;
    flex-direction: column;
    gap: 24px;
    margin-top: 8px;
    margin-left: 64px;
}

.notification-settings-detail .numeric-input-group[b-qapc6q9n5q] {
    max-width: 200px;
}

.notification-settings-field[b-qapc6q9n5q] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.notification-settings-field-label[b-qapc6q9n5q] {
    font-size: 16px;
    font-weight: 600;
    margin: 0;
}

.notification-settings-field-help[b-qapc6q9n5q] {
    color: var(--bs-secondary-color);
    font-size: 13px;
}

.notification-settings-radio-group[b-qapc6q9n5q] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.notification-settings-radio[b-qapc6q9n5q] {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    cursor: pointer;
    margin: 0;
}

.notification-settings-radio input[type="radio"][b-qapc6q9n5q] {
    appearance: none;
    -webkit-appearance: none;
    width: 20px;
    height: 20px;
    border: 2px solid var(--bs-border-color);
    border-radius: 50%;
    background: transparent;
    cursor: pointer;
    margin: 0;
    flex-shrink: 0;
    position: relative;
    transition: border-color 0.15s;
}

.notification-settings-radio input[type="radio"]:hover[b-qapc6q9n5q] {
    border-color: var(--admin-primary);
}

.notification-settings-radio input[type="radio"]:checked[b-qapc6q9n5q] {
    border-color: var(--admin-primary);
}

.notification-settings-radio input[type="radio"]:checked[b-qapc6q9n5q]::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--admin-primary);
}

.notification-settings-radio input[type="radio"]:focus-visible[b-qapc6q9n5q] {
    outline: 2px solid color-mix(in srgb, var(--admin-primary) 40%, transparent);
    outline-offset: 2px;
}

/* Toggle switch - matches participant-detail pattern */
.notification-settings-toggle[b-qapc6q9n5q] {
    position: relative;
    display: inline-flex;
    width: 48px;
    min-width: 48px;
    height: 26px;
}

.notification-settings-toggle-input[b-qapc6q9n5q] {
    opacity: 0;
    width: 0;
    height: 0;
}

.notification-settings-toggle-slider[b-qapc6q9n5q] {
    position: absolute;
    inset: 0;
    background-color: var(--bs-secondary-bg);
    border-radius: 26px;
    transition: background-color 0.2s;
}

.notification-settings-toggle-slider[b-qapc6q9n5q]::before {
    content: "";
    position: absolute;
    height: 20px;
    width: 20px;
    left: 3px;
    bottom: 3px;
    background-color: #fff;
    border-radius: 50%;
    transition: transform 0.2s;
}

.notification-settings-toggle-input:checked + .notification-settings-toggle-slider[b-qapc6q9n5q] {
    background-color: var(--admin-primary);
}

.notification-settings-toggle-input:checked + .notification-settings-toggle-slider[b-qapc6q9n5q]::before {
    transform: translateX(22px);
}

/* Actions - sticky bottom */
.notification-settings-actions[b-qapc6q9n5q] {
    display: flex;
    gap: 28px;
    position: sticky;
    bottom: 0;
    padding: 20px 0;
    background: linear-gradient(to bottom, transparent, var(--bs-body-bg) 20%);
    margin-top: auto;
}

.notification-settings-actions .btn[b-qapc6q9n5q] {
    flex: 0 0 calc(50% - 14px);
}

/* Responsive */
@media (min-width: 768px) {
    .notification-settings-page[b-qapc6q9n5q] {
        padding: 0 18px;
    }

    .notification-settings-section-title[b-qapc6q9n5q] {
        font-size: 30px;
    }

    .notification-settings-detail[b-qapc6q9n5q] {
        max-width: 480px;
    }

    .notification-settings-field-label[b-qapc6q9n5q] {
        font-size: 18px;
    }

    .notification-settings-actions[b-qapc6q9n5q] {
        gap: 10px;
        justify-content: flex-end;
        padding: 20px 0;
    }

    .notification-settings-actions .btn[b-qapc6q9n5q] {
        flex: 0 0 auto;
        width: auto;
    }
}

@media (min-width: 1024px) {
    .notification-settings-page[b-qapc6q9n5q] {
        padding: 0 24px;
    }
}
/* /Views/AdminSettings/Partials/_ParticipantDetailContent.cshtml.rz.scp.css */
.participant-detail-page[b-zdu3ssyjnr] {
    padding: 0;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
}

/* Breadcrumb - sticky */
.participant-detail-breadcrumb[b-zdu3ssyjnr] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 24px;
    font-weight: 700;
    padding: 0 20px 16px;
    position: sticky;
    top: 0;
    z-index: 10;
    background: var(--bs-body-bg);
}

/* Body - scrollable content between breadcrumb and actions */
.participant-detail-body[b-zdu3ssyjnr] {
    flex: 1;
    padding: 0 20px;
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.participant-detail-back[b-zdu3ssyjnr] {
    color: var(--bs-body-color);
    text-decoration: none;
}

.participant-detail-back:hover[b-zdu3ssyjnr] {
    text-decoration: underline;
}

.participant-detail-separator[b-zdu3ssyjnr] {
    color: var(--bs-secondary-color);
}

.participant-detail-current[b-zdu3ssyjnr] {
    color: var(--bs-body-color);
}

/* Sections */
.participant-detail-section[b-zdu3ssyjnr] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-bottom: 32px;
    border-bottom: 1px solid var(--bs-border-color);
}

.participant-detail-section:last-child[b-zdu3ssyjnr] {
    border-bottom: none;
}

.participant-detail-section-title[b-zdu3ssyjnr] {
    font-size: 22px;
    font-weight: 700;
    margin: 0;
}

.participant-detail-section-desc[b-zdu3ssyjnr] {
    color: var(--bs-secondary-color);
    margin: 0 0 20px;
}

/* Schedule blocks */
.participant-detail-schedule-blocks[b-zdu3ssyjnr] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.participant-detail-add-another[b-zdu3ssyjnr] {
    font-size: 1rem;
    color: var(--bs-primary);
    text-decoration: underline;
    align-self: flex-start;
}

.participant-detail-total-days[b-zdu3ssyjnr] {
    font-size: 20px;
    font-weight: 700;
}

.participant-detail-total-days span[b-zdu3ssyjnr] {
    font-weight: 400;
}

/* Toggle switches */
.participant-detail-toggle[b-zdu3ssyjnr] {
    position: relative;
    display: inline-flex;
    width: 48px;
    height: 26px;
    cursor: pointer;
}

.participant-detail-toggle-input[b-zdu3ssyjnr] {
    opacity: 0;
    width: 0;
    height: 0;
}

.participant-detail-toggle-slider[b-zdu3ssyjnr] {
    position: absolute;
    inset: 0;
    background-color: var(--bs-secondary-bg);
    border-radius: 26px;
    transition: background-color 0.2s;
}

.participant-detail-toggle-slider[b-zdu3ssyjnr]::before {
    content: "";
    position: absolute;
    height: 20px;
    width: 20px;
    left: 3px;
    bottom: 3px;
    background-color: #fff;
    border-radius: 50%;
    transition: transform 0.2s;
}

.participant-detail-toggle-input:checked + .participant-detail-toggle-slider[b-zdu3ssyjnr] {
    background-color: var(--admin-primary);
}

.participant-detail-toggle-input:checked + .participant-detail-toggle-slider[b-zdu3ssyjnr]::before {
    transform: translateX(22px);
}

/* Activities */
.participant-detail-activities[b-zdu3ssyjnr] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    row-gap: 24px;
    justify-items: center;
}

@media (min-width: 768px) {
    .participant-detail-activities[b-zdu3ssyjnr] {
        grid-template-columns: repeat(auto-fill, minmax(310px, 1fr));
    }
}

.participant-detail-activity-item[b-zdu3ssyjnr] {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
}

/* Custom questions */
.participant-detail-questions[b-zdu3ssyjnr] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    max-width: 720px;
    margin-bottom: 16px;
}

.custom-question-row[b-zdu3ssyjnr] {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    transition: opacity 0.15s;
}

.custom-question-row.dragging[b-zdu3ssyjnr] {
    opacity: 0.4;
}

.custom-question-drag-handle[b-zdu3ssyjnr] {
    cursor: grab;
    color: var(--bs-secondary-color);
    font-size: 22px;
    line-height: 1;
    user-select: none;
    flex: 0 0 auto;
}

.custom-question-drag-handle:active[b-zdu3ssyjnr] {
    cursor: grabbing;
}

.custom-question-text[b-zdu3ssyjnr] {
    flex: 1 1 240px;
    min-width: 0;
}

.custom-question-required-label[b-zdu3ssyjnr] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: var(--bs-secondary-color);
    cursor: pointer;
    margin: 0;
    white-space: nowrap;
}

.custom-question-remove[b-zdu3ssyjnr] {
    flex: 0 0 auto;
    font-size: 30px;
    line-height: 1;
}

/* Unified actions - sticky bottom */
.participant-detail-actions[b-zdu3ssyjnr] {
    display: flex;
    gap: 28px;
    position: sticky;
    bottom: 0;
    padding: 20px;
    background: linear-gradient(to bottom, transparent, var(--bs-body-bg) 20%);
    margin-top: auto;
}

.participant-detail-actions .btn[b-zdu3ssyjnr] {
    flex: 0 0 calc(50% - 14px);
}

/* Responsive */
@media (min-width: 768px) {
    .participant-detail-breadcrumb[b-zdu3ssyjnr] {
        padding: 0 18px 16px;
        font-size: 28px;
    }

    .participant-detail-body[b-zdu3ssyjnr] {
        padding: 0 18px;
    }

    .participant-detail-section-title[b-zdu3ssyjnr] {
        font-size: 30px;
    }

    .participant-detail-label[b-zdu3ssyjnr] {
        font-size: 20px;
    }

    .participant-detail-actions[b-zdu3ssyjnr] {
        gap: 10px;
        justify-content: flex-end;
        padding: 20px 18px;
    }

    .participant-detail-actions .btn[b-zdu3ssyjnr] {
        flex: 0 0 auto;
        width: auto;
    }
}

@media (min-width: 1024px) {
    .participant-detail-breadcrumb[b-zdu3ssyjnr] {
        padding: 0 24px 16px;
        font-size: 30px;
    }

    .participant-detail-body[b-zdu3ssyjnr] {
        padding: 0 24px;
    }

    .participant-detail-actions[b-zdu3ssyjnr] {
        padding: 20px 24px;
    }
}
/* /Views/AdminSettings/Partials/_ParticipantSettingsHeader.cshtml.rz.scp.css */
.participant-settings-header-row[b-13j5vcg1ri] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    gap: 16px;
}

.participant-settings-title[b-13j5vcg1ri] {
    font-size: 24px;
    font-weight: 700;
    margin: 0;
    white-space: nowrap;
}

.participant-settings-search[b-13j5vcg1ri] {
    position: relative;
}

.participant-settings-search__input[b-13j5vcg1ri] {
    padding-right: 40px;
    min-width: 280px;
}

.participant-settings-search__icon[b-13j5vcg1ri] {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--bs-secondary-color);
    pointer-events: none;
}

@media (min-width: 768px) {
    .participant-settings-title[b-13j5vcg1ri] {
        font-size: 30px;
    }
}
/* /Views/AdminSettings/Partials/_ParticipantSettingsRow.cshtml.rz.scp.css */
.participant-change-settings[b-f059k2cs97] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 6px 16px;
    color: var(--admin-primary);
    text-decoration: none;
    font-weight: 500;
    white-space: nowrap;
    border: 1px solid var(--admin-primary);
    border-radius: 8px;
    transition: background 0.15s, color 0.15s;
}

.participant-change-settings:hover[b-f059k2cs97] {
    background: var(--admin-primary);
    color: #fff;
    text-decoration: none;
}
/* /Views/AdminSettings/Partials/_ParticipantsSettingsContent.cshtml.rz.scp.css */
.participants-settings-page[b-ve1b7tzvrh] {
    padding: 0 20px 20px;
    overflow-y: auto;
}

@media (min-width: 768px) {
    .participants-settings-page[b-ve1b7tzvrh] {
        padding: 0 18px 18px;
    }
}

@media (min-width: 1024px) {
    .participants-settings-page[b-ve1b7tzvrh] {
        padding: 0 24px 24px;
    }
}
/* /Views/Compliance/Detail.cshtml.rz.scp.css */
.compliance-detail-page[b-3p4wsmezea] {
    display: flex;
    flex-direction: column;
    gap: 24px;
    overflow-y: auto;
    flex: 1;
}

/* Header */
.compliance-detail-header[b-3p4wsmezea] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px;
}

.compliance-detail-header[b-3p4wsmezea]  .admin-export-btn {
    display: flex;
    align-items: center;
    gap: 8px;
}

/* Metric Cards */
.compliance-detail-metrics[b-3p4wsmezea] {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
}

.compliance-detail-metric-card[b-3p4wsmezea] {
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: var(--radius-card-sm);
    padding: 24px 30px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 16px;
}

.compliance-detail-metric-bottom[b-3p4wsmezea] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.compliance-detail-metric-top[b-3p4wsmezea] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

.compliance-detail-metric-info[b-3p4wsmezea] {
    display: flex;
    flex-direction: column;
}

.compliance-detail-metric-label[b-3p4wsmezea] {
    font-size: 26px;
    font-weight: 400;
    line-height: 1.3;
    color: var(--bs-body-color);
}

.compliance-detail-metric-value[b-3p4wsmezea] {
    font-size: 26px;
    font-weight: 400;
}

.compliance-detail-metric-icon[b-3p4wsmezea] {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.compliance-detail-metric-icon--green[b-3p4wsmezea] { background: #29B2231A; }
.compliance-detail-metric-icon--blue[b-3p4wsmezea] { background: #4876C61A; }
.compliance-detail-metric-icon--red[b-3p4wsmezea] { background: #F549491A; }
.compliance-detail-metric-icon--yellow[b-3p4wsmezea] { background: #F5D8491A; }

.compliance-detail-metric-desc[b-3p4wsmezea] {
    font-size: inherit;
    color: var(--bs-secondary-color);
}

.compliance-detail-metric-desc--good[b-3p4wsmezea] {
    color: #29B223;
}

.compliance-detail-metric-desc--mid[b-3p4wsmezea] {
    color: #F5A623;
}

.compliance-detail-metric-desc--low[b-3p4wsmezea] {
    color: #F54949;
}

/* Progress Bar */
.compliance-detail-progress[b-3p4wsmezea] {
    width: 100%;
    height: 13px;
    background: var(--bs-border-color);
    border-radius: var(--bs-border-radius-pill);
    overflow: hidden;
}

.compliance-detail-progress-bar[b-3p4wsmezea] {
    height: 100%;
    background: var(--admin-primary);
    border-radius: var(--bs-border-radius-pill);
    transition: width 0.3s;
}

/* Badge colors */
.compliance-detail-table-card[b-3p4wsmezea]  .data-table-badge--high {
    background: #29B2231A;
    color: #29B223;
}

.compliance-detail-table-card[b-3p4wsmezea]  .data-table-badge--mid {
    background: #F5A6231A;
    color: #F5A623;
}

.compliance-detail-table-card[b-3p4wsmezea]  .data-table-badge--neutral {
    background: var(--bs-secondary-bg);
    color: var(--bs-secondary-color);
}

.compliance-detail-table-card[b-3p4wsmezea]  .data-table-badge--low {
    background: #F549491A;
    color: #F54949;
}

/* Table Card */
.compliance-detail-table-card[b-3p4wsmezea] {
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: var(--radius-card);
    padding: 30px;
}

.compliance-send-alert[b-3p4wsmezea] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    white-space: nowrap;
}

/* Responsive */
@media (min-width: 768px) {
    .compliance-detail-metrics[b-3p4wsmezea] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 1200px) {
    .compliance-detail-metrics[b-3p4wsmezea] {
        grid-template-columns: repeat(4, 1fr);
    }
}
/* /Views/Compliance/Index.cshtml.rz.scp.css */
.compliance-page[b-9if84bjtfd] {
    display: flex;
    flex-direction: column;
    gap: 24px;
    overflow-y: auto;
    flex: 1;
}

/* Header */
.compliance-header[b-9if84bjtfd] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px;
}

.compliance-header-right[b-9if84bjtfd] {
    display: flex;
    align-items: center;
    gap: 16px;
}

.compliance-header[b-9if84bjtfd]  .admin-export-btn {
    display: flex;
    align-items: center;
    gap: 8px;
}

/* Metric Cards */
.compliance-metrics[b-9if84bjtfd] {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
}

.compliance-metric-card[b-9if84bjtfd] {
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: var(--radius-card-sm);
    padding: 24px 30px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 16px;
}

.compliance-metric-top[b-9if84bjtfd] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

.compliance-metric-info[b-9if84bjtfd] {
    display: flex;
    flex-direction: column;
}

.compliance-metric-label[b-9if84bjtfd] {
    font-size: 26px;
    font-weight: 400;
    color: var(--bs-body-color);
}

.compliance-metric-value[b-9if84bjtfd] {
    font-size: 26px;
    font-weight: 400;
}

.compliance-metric-icon[b-9if84bjtfd] {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.compliance-metric-icon--green[b-9if84bjtfd] { background: #29B2231A; }
.compliance-metric-icon--blue[b-9if84bjtfd] { background: #4876C61A; }
.compliance-metric-icon--red[b-9if84bjtfd] { background: #F549491A; }
.compliance-metric-icon--yellow[b-9if84bjtfd] { background: #F5D8491A; }

/* Badge colors */
.compliance-table-card[b-9if84bjtfd]  .data-table-badge--high {
    background: color-mix(in srgb, var(--badge-high) 10%, transparent);
    color: var(--badge-high);
}

.compliance-table-card[b-9if84bjtfd]  .data-table-badge--mid {
    background: color-mix(in srgb, var(--badge-mid) 10%, transparent);
    color: var(--badge-mid);
}

.compliance-table-card[b-9if84bjtfd]  .data-table-badge--low {
    background: color-mix(in srgb, var(--badge-low) 10%, transparent);
    color: var(--badge-low);
}

.compliance-table-card[b-9if84bjtfd]  .data-table-badge--na {
    background: color-mix(in srgb, var(--badge-neutral) 10%, transparent);
    color: var(--badge-neutral);
}

/* Table Card */
.compliance-table-card[b-9if84bjtfd] {
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: var(--radius-card);
    padding: 30px;
}

/* Responsive */
@media (min-width: 768px) {
    .compliance-metrics[b-9if84bjtfd] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 1200px) {
    .compliance-metrics[b-9if84bjtfd] {
        grid-template-columns: repeat(4, 1fr);
    }
}
/* /Views/Compliance/Partials/_ComplianceRow.cshtml.rz.scp.css */
.compliance-view-details[b-p0mah2qak9] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 6px 16px;
    color: var(--admin-primary);
    text-decoration: none;
    font-weight: 500;
    white-space: nowrap;
    border: 1px solid var(--admin-primary);
    border-radius: 8px;
    transition: background 0.15s, color 0.15s;
}

.compliance-view-details:hover[b-p0mah2qak9] {
    background: var(--admin-primary);
    color: #fff;
    text-decoration: none;
}
/* /Views/Compliance/Partials/_ComplianceTableHeader.cshtml.rz.scp.css */
.compliance-table-controls[b-dfvplvptar] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
}

.compliance-table-controls__left[b-dfvplvptar] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.compliance-filter-btn[b-dfvplvptar] {
    display: flex;
    align-items: center;
    gap: 8px;
    white-space: nowrap;
}

.compliance-filter-badge[b-dfvplvptar] {
    background: var(--admin-primary, var(--bs-primary));
    color: #fff;
    font-size: 11px;
    font-weight: 600;
    min-width: 20px;
    height: 20px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 6px;
}

.compliance-search[b-dfvplvptar] {
    position: relative;
}

.compliance-search__input[b-dfvplvptar] {
    padding-right: 40px;
    min-width: 280px;
}

.compliance-search__icon[b-dfvplvptar] {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--bs-secondary-color);
    pointer-events: none;
}

/* Filter radio buttons */
.compliance-filter-radios[b-dfvplvptar] {
    display: flex;
    gap: 20px;
}

.compliance-filter-radio[b-dfvplvptar] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    margin: 0;
    align-self: flex-start;
}

.compliance-filter-radio .form-check-input[b-dfvplvptar] {
    margin: 0;
    flex-shrink: 0;
}

.compliance-filter-chip[b-dfvplvptar] {
    display: inline-block;
    padding: 8px;
    border-radius: 10px;
    font-size: 1rem;
    text-align: center;
    min-width: 80px;
}

.compliance-filter-chip--all[b-dfvplvptar] {
    background: color-mix(in srgb, var(--badge-neutral) 10%, transparent);
    color: var(--badge-neutral);
}

.compliance-filter-chip--in-study[b-dfvplvptar] {
    background: color-mix(in srgb, var(--badge-high) 10%, transparent);
    color: var(--badge-high);
}

.compliance-filter-chip--not-in-study[b-dfvplvptar] {
    background: color-mix(in srgb, var(--badge-low) 10%, transparent);
    color: var(--badge-low);
}

/* Filter modal */
.compliance-filter-modal .modal-body[b-dfvplvptar] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.compliance-filter-field[b-dfvplvptar] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.compliance-filter-field__label[b-dfvplvptar] {
    font-weight: 500;
    color: var(--bs-body-color);
    margin: 0;
}

.compliance-filter-range[b-dfvplvptar] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.compliance-filter-range__sep[b-dfvplvptar] {
    color: var(--bs-secondary-color);
    flex-shrink: 0;
}

.compliance-filter-modal .modal-footer[b-dfvplvptar] {
    display: flex;
    gap: 12px;
}

.compliance-filter-modal .modal-footer .btn[b-dfvplvptar] {
    flex: 1;
}
/* /Views/Compliance/Partials/_ComplianceTimelineHeader.cshtml.rz.scp.css */
.compliance-timeline-controls[b-j3ghbzoabq] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 16px;
    width: 100%;
}
/* /Views/Compliance/Partials/_ComplianceTimelineRow.cshtml.rz.scp.css */
.compliance-timeline-badge[b-i3adi8l678] {
    width: 60px;
}

.compliance-timeline-quality[b-i3adi8l678] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}

.compliance-timeline-tz[b-i3adi8l678] {
    display: block;
    margin-top: 2px;
    color: var(--bs-secondary-color, #6c757d);
    font-size: 0.75rem;
    font-variant-numeric: tabular-nums;
}
/* /Views/Dashboard/Index.cshtml.rz.scp.css */
.dashboard[b-5a4qflwlve] {
    display: flex;
    flex-direction: column;
    flex: 1;
    overflow: hidden;
}

.dashboard-header[b-5a4qflwlve] {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
    flex-shrink: 0;
}

.dashboard-title[b-5a4qflwlve] {
    font-size: 24px;
    font-weight: 500;
    margin: 0;
}

.dashboard-actions[b-5a4qflwlve] {
    display: flex;
    align-items: stretch;
    gap: 12px;
    width: 100%;
}

.dashboard-action-wrapper[b-5a4qflwlve],
.dashboard-actions #submitDiaryWrapper[b-5a4qflwlve] {
    position: relative;
    flex: 1;
}

.dashboard-action-wrapper .btn[b-5a4qflwlve],
.dashboard-actions #submitDiaryWrapper .btn[b-5a4qflwlve] {
    width: 100%;
    height: 100%;
    justify-content: center;
}

#submitDiaryWrapper[data-tooltip][b-5a4qflwlve] {
    z-index: 1001;
}

#submitDiaryWrapper[data-tooltip][b-5a4qflwlve]::after {
    content: attr(data-tooltip);
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    padding: 6px 12px;
    background: var(--bs-gray-800);
    color: white;
    font-size: 13px;
    border-radius: var(--bs-border-radius);
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.15s;
}

#submitDiaryWrapper[data-tooltip]:hover[b-5a4qflwlve]::after {
    opacity: 1;
}

@media (min-width: 768px) {
    .dashboard-actions[b-5a4qflwlve] {
        width: auto;
        margin-left: auto;
    }

    .dashboard-action-wrapper[b-5a4qflwlve],
    .dashboard-actions #submitDiaryWrapper[b-5a4qflwlve] {
        flex: none;
    }

    .dashboard-action-wrapper .btn[b-5a4qflwlve],
    .dashboard-actions #submitDiaryWrapper .btn[b-5a4qflwlve] {
        width: auto;
    }
}

@media (min-width: 768px) {
    .dashboard-title[b-5a4qflwlve] {
        font-size: 30px;
    }
}

/* Timeline Card */
.timeline-card[b-5a4qflwlve] {
    margin-top: 12px;
    background: var(--bs-body-bg);
    border-radius: 20px;
    border: 1px solid var(--bs-border-color);
    padding: 0 0 20px 0;
    display: flex;
    flex-direction: column;
    flex: 1;
    overflow: hidden;
    min-height: 0;
}

.timeline-options[b-5a4qflwlve] {
    flex-shrink: 0;
}

.timeline-container[b-5a4qflwlve] {
    display: flex;
    flex-direction: column-reverse;
    gap: 0;
    flex: 1;
    min-height: 0;
    position: relative;
}

/* Cover the timeline while the client-side loader fetches events and renders
   their partials. Without this the user briefly sees the empty grid before
   blocks pop in one by one. */
.timeline-loading-overlay[b-5a4qflwlve] {
    position: absolute;
    inset: 0;
    z-index: 50;
    display: none;
    align-items: center;
    justify-content: center;
    background: var(--bs-body-bg);
    border-radius: inherit;
}

.timeline-container[data-loading="true"] .timeline-loading-overlay[b-5a4qflwlve] {
    display: flex;
}

.timeline-container[data-loading="true"] .timeline-scroll[b-5a4qflwlve],
.timeline-container[data-loading="true"] .timeline-actions-wrapper[b-5a4qflwlve] {
    visibility: hidden;
}

@media (min-width: 768px) {
    .timeline-card[b-5a4qflwlve] {
        padding: 0 0 40px 0;
    }

    .timeline-container[b-5a4qflwlve] {
        flex-direction: row;
    }
}

.timeline-scroll[b-5a4qflwlve] {
    display: flex;
    flex: 1;
    overflow-y: auto;
    min-width: 0;
    align-items: flex-start;
    padding-left: 10px;
}

@media (min-width: 768px) {
    .timeline-scroll[b-5a4qflwlve] {
        padding-left: 30px;
    }
}

.timeline-hours[b-5a4qflwlve] {
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
    padding-right: 4px;
    position: relative;
}

.timeline-hour[b-5a4qflwlve] {
    height: var(--hour-height);
    color: var(--bs-secondary-color);
    display: flex;
    align-items: flex-start;
    padding-top: 0;
    line-height: 1;
}

.timeline-content[b-5a4qflwlve] {
    flex: 1;
    position: relative;
    border-left: 1px solid var(--bs-border-color);
    border-right: 1px solid var(--bs-border-color);
}

.timeline-grid[b-5a4qflwlve] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.timeline-row[b-5a4qflwlve] {
    height: var(--hour-height);
    border-bottom: 1px solid var(--bs-border-color);
}

.timeline-row:first-child[b-5a4qflwlve] {
    border-top: 1px solid var(--bs-border-color);
}

/* Hours rendered past the original 24-hour window — tint them so it's clear
   the timeline has been extended beyond the diary day. */
.timeline-row[data-extra][b-5a4qflwlve] {
    background: color-mix(in srgb, var(--bs-secondary-color) 6%, transparent);
}

.timeline-hour[data-extra][b-5a4qflwlve] {
    opacity: 0.55;
}

.timeline-events[b-5a4qflwlve] {
    position: relative;
    height: calc(24 * var(--hour-height));
}

/* Day boundary marker at midnight */
.timeline-day-boundary[b-5a4qflwlve] {
    position: absolute;
    left: 0;
    right: 0;
    height: 0;
    border-top: 2px dashed var(--bs-secondary-color);
    opacity: 0.4;
    z-index: 1;
    pointer-events: none;
}

.timeline-day-label[b-5a4qflwlve] {
    position: absolute;
    right: 5px;
    transform: translateY(-50%);
    z-index: 2;
    pointer-events: none;
    padding: 2px 6px;
    background: var(--bs-secondary-color);
    color: var(--bs-body-bg);
    font-size: 10px;
    border-radius: var(--bs-border-radius-sm);
    white-space: nowrap;
    line-height: 1.3;
}

.timeline-hour-midnight[b-5a4qflwlve] {
    padding-top: 10px;
}

.timeline-day-label-dow[b-5a4qflwlve] {
    display: none;
}

@media (min-width: 768px) {
    .timeline-hour-midnight[b-5a4qflwlve] {
        padding-top: 15px;
    }

    .timeline-day-label-dow[b-5a4qflwlve] {
        display: inline;
    }
}

/* Drag over state */
.timeline-events.drag-over[b-5a4qflwlve] {
    background: rgba(var(--bs-primary-rgb), 0.07);
}

/* /Views/Participants/Index.cshtml.rz.scp.css */
.participants-page[b-iw5g710sms] {
    display: flex;
    flex-direction: column;
    gap: 24px;
    overflow-y: auto;
    flex: 1;
}

/* Header */
.participants-header[b-iw5g710sms] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px;
}

.participants-header-right[b-iw5g710sms] {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

.participants-header[b-iw5g710sms]  .admin-export-btn {
    display: flex;
    align-items: center;
    gap: 8px;
}

/* Metric Cards */
.participants-metrics[b-iw5g710sms] {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
}

.participants-metric-card[b-iw5g710sms] {
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: var(--radius-card-sm);
    padding: 24px 30px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 16px;
}

.participants-metric-top[b-iw5g710sms] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

.participants-metric-info[b-iw5g710sms] {
    display: flex;
    flex-direction: column;
}

.participants-metric-label[b-iw5g710sms] {
    font-size: 26px;
    font-weight: 400;
    color: var(--bs-body-color);
}

.participants-metric-value[b-iw5g710sms] {
    font-size: 26px;
    font-weight: 400;
}

.participants-metric-icon[b-iw5g710sms] {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.participants-metric-icon--pink[b-iw5g710sms] { background: #F549AB1A; }
.participants-metric-icon--green[b-iw5g710sms] { background: #29B2231A; }
.participants-metric-icon--purple[b-iw5g710sms] { background: #69329A1A; }
.participants-metric-icon--check[b-iw5g710sms] { background: #4876C61A; }

/* Badge colors */
.participants-table-card[b-iw5g710sms]  .data-table-badge--high {
    background: #29B2231A;
    color: #29B223;
}

.participants-table-card[b-iw5g710sms]  .data-table-badge--mid {
    background: #F5A6231A;
    color: #F5A623;
}

.participants-table-card[b-iw5g710sms]  .data-table-badge--low {
    background: #F549491A;
    color: #F54949;
}

.participants-table-card[b-iw5g710sms]  .data-table-badge--muted {
    background: #6c757d1A;
    color: #6c757d;
}

/* Table Card */
.participants-table-card[b-iw5g710sms] {
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: var(--radius-card);
    padding: 30px;
}

/* Responsive */
@media (min-width: 768px) {
    .participants-metrics[b-iw5g710sms] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 1200px) {
    .participants-metrics[b-iw5g710sms] {
        grid-template-columns: repeat(4, 1fr);
    }
}
/* /Views/Participants/Partials/_ParticipantRow.cshtml.rz.scp.css */
.participant-view-details[b-t7vpztodzy] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 6px 16px;
    color: var(--admin-primary);
    text-decoration: none;
    font-weight: 500;
    white-space: nowrap;
    border: 1px solid var(--admin-primary);
    border-radius: 8px;
    transition: background 0.15s, color 0.15s;
}

.participant-view-details:hover[b-t7vpztodzy] {
    background: var(--admin-primary);
    color: #fff;
    text-decoration: none;
}
/* /Views/Participants/Partials/_ParticipantsTableHeader.cshtml.rz.scp.css */
.participants-table-controls[b-t10xhnihuz] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
}

.participants-search[b-t10xhnihuz] {
    position: relative;
}

.participants-search__input[b-t10xhnihuz] {
    padding-right: 40px;
    min-width: 280px;
}

.participants-search__icon[b-t10xhnihuz] {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--bs-secondary-color);
    pointer-events: none;
}

.participants-add-btn[b-t10xhnihuz] {
    display: flex;
    align-items: center;
    gap: 8px;
    white-space: nowrap;
}
/* /Views/Settings/Index.cshtml.rz.scp.css */
.settings-menu-page[b-osv6vjdhe6] {
  display: flex;
  flex: 1;
  min-height: 0;
}

.settings-menu-page[b-osv6vjdhe6]  aside.side-menu {
  width: 100%;
  min-width: 0;
  max-width: none;
  padding: 20px;
  border-right: none;
}

@media (min-width: 768px) {
  .settings-menu-page[b-osv6vjdhe6] {
    display: none;
  }
}
/* /Views/Settings/Tutorial.cshtml.rz.scp.css */
/* /Views/Settings/_NotificationsContent.cshtml.rz.scp.css */
/* Constrain content width on desktop so the form doesn't stretch edge-to-edge */
.participant-notifications-page .participant-notifications-section[b-gfcx86g5wc] {
    max-width: 480px;
}

.participant-notifications-actions[b-gfcx86g5wc] {
    display: flex;
    justify-content: flex-end;
    margin-top: 4px;
}

.participant-notifications-section[b-gfcx86g5wc] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 32px;
}

.participant-notifications-section-title[b-gfcx86g5wc] {
    font-size: 20px;
    font-weight: 700;
    margin: 0;
}

.participant-notifications-section-desc[b-gfcx86g5wc] {
    color: var(--bs-secondary-color);
    margin: 0 0 4px;
}

.participant-notifications-field[b-gfcx86g5wc] {
    display: flex;
    flex-direction: column;
}

/* Toggle row */
.participant-notifications-toggle-row[b-gfcx86g5wc] {
    display: flex;
    align-items: center;
    gap: 16px;
    cursor: pointer;
    margin: 0;
    padding: 4px 0;
}

.participant-notifications-toggle-text[b-gfcx86g5wc] {
    font-weight: 500;
}

.participant-notifications-toggle[b-gfcx86g5wc] {
    position: relative;
    display: inline-flex;
    width: 48px;
    min-width: 48px;
    height: 26px;
}

.participant-notifications-toggle-input[b-gfcx86g5wc] {
    opacity: 0;
    width: 0;
    height: 0;
}

.participant-notifications-toggle-slider[b-gfcx86g5wc] {
    position: absolute;
    inset: 0;
    background-color: var(--bs-secondary-bg);
    border-radius: 26px;
    transition: background-color 0.2s;
}

.participant-notifications-toggle-slider[b-gfcx86g5wc]::before {
    content: "";
    position: absolute;
    height: 20px;
    width: 20px;
    left: 3px;
    bottom: 3px;
    background-color: #fff;
    border-radius: 50%;
    transition: transform 0.2s;
}

.participant-notifications-toggle-input:checked + .participant-notifications-toggle-slider[b-gfcx86g5wc] {
    background-color: var(--bs-primary);
}

.participant-notifications-toggle-input:checked + .participant-notifications-toggle-slider[b-gfcx86g5wc]::before {
    transform: translateX(22px);
}

.participant-notifications-toggle-input:disabled + .participant-notifications-toggle-slider[b-gfcx86g5wc] {
    opacity: 0.5;
    cursor: not-allowed;
}

.participant-notifications-toggle-input:focus-visible + .participant-notifications-toggle-slider[b-gfcx86g5wc] {
    outline: 2px solid color-mix(in srgb, var(--bs-primary) 40%, transparent);
    outline-offset: 2px;
}

/* Device list */
.participant-notifications-devices[b-gfcx86g5wc] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 8px;
}

.participant-notifications-devices-title[b-gfcx86g5wc] {
    font-size: 14px;
    font-weight: 600;
    color: var(--bs-secondary-color);
    margin: 0 0 4px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.participant-notifications-devices-list[b-gfcx86g5wc] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.participant-notifications-device[b-gfcx86g5wc] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 14px;
    border: 1px solid var(--bs-border-color);
    border-radius: 8px;
    background-color: var(--bs-body-bg);
}

.participant-notifications-device-info[b-gfcx86g5wc] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.participant-notifications-device-label[b-gfcx86g5wc] {
    font-weight: 500;
}

.participant-notifications-device-meta[b-gfcx86g5wc] {
    font-size: 12px;
    color: var(--bs-secondary-color);
}

@media (min-width: 768px) {
    .participant-notifications-section-title[b-gfcx86g5wc] {
        font-size: 22px;
    }
}
/* /Views/Shared/Components/DateNavigationComponent/Default.cshtml.rz.scp.css */
/* Styles moved to wwwroot/css/site.css for global availability */
/* /Views/Shared/Components/SideMenuComponent/Default.cshtml.rz.scp.css */
/* Side Menu Component */
.side-menu[b-pmt37means] {
    display: flex;
    flex-direction: column;
    width: 400px;
    flex-shrink: 0;
    align-self: stretch;
    background-color: var(--bs-body-bg);
    border-right: 1px solid var(--bs-border-color);
    padding: 30px 25px 30px 40px;
}

.side-menu-header[b-pmt37means] {
    margin-bottom: 30px;
}

.side-menu-title[b-pmt37means] {
    font-size: 24px;
    font-weight: 600;
    margin: 0;
}

.side-menu-nav[b-pmt37means] {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.side-menu-item[b-pmt37means] {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 18px;
    border-radius: 20px;
    color: var(--bs-secondary-color);
    text-decoration: none;
    font-size: 16px;
    border: 1px solid transparent;
    transition: background-color 0.15s, color 0.15s, border-color 0.15s;
}

.side-menu-item[b-pmt37means]::after {
    content: "";
    margin-left: auto;
    width: 8px;
    height: 8px;
    border-right: 2px solid var(--bs-secondary-color);
    border-bottom: 2px solid var(--bs-secondary-color);
    transform: rotate(-45deg);
    flex-shrink: 0;
}

.side-menu-item:hover[b-pmt37means] {
    background-color: var(--bs-tertiary-bg);
    color: var(--bs-body-color);
}

.side-menu-item.active[b-pmt37means] {
    background-color: rgba(var(--bs-primary-rgb), 0.1);
    color: var(--bs-primary);
    border-color: var(--bs-primary);
}

.side-menu-icon[b-pmt37means] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
}

.side-menu-icon[b-pmt37means]  span {
    display: inline-block;
    width: 24px;
    height: 24px;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: contain;
    mask-size: contain;
}

.side-menu-label[b-pmt37means] {
    font-weight: 500;
}

.side-menu-footer[b-pmt37means] {
    padding-top: 20px;
    margin-top: auto;
}

.theme-toggle[b-pmt37means] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.theme-label[b-pmt37means] {
    font-size: 16px;
    color: var(--bs-secondary-color);
}

.theme-switch[b-pmt37means] {
    position: relative;
    display: inline-block;
    width: 64px;
    height: 32px;
}

.theme-switch input[b-pmt37means] {
    opacity: 0;
    width: 0;
    height: 0;
}

.theme-slider[b-pmt37means] {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--bs-secondary-bg);
    border-radius: 32px;
    transition: background-color 0.3s;
}

.theme-slider[b-pmt37means]::before {
    position: absolute;
    content: "";
    height: 24px;
    width: 24px;
    left: 4px;
    bottom: 4px;
    background-color: var(--bs-body-bg);
    border-radius: 50%;
    transition: transform 0.3s;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

.theme-switch input:checked + .theme-slider[b-pmt37means] {
    background-color: var(--bs-primary);
}

.theme-switch input:checked + .theme-slider[b-pmt37means]::before {
    transform: translateX(32px);
}

/* Tablet+ */
@media (min-width: 768px) {
    .side-menu[b-pmt37means] {
        width: 298px;
        padding: 20px 25px 30px 20px;
    }

    .side-menu-item[b-pmt37means] {
        font-size: 24px;
        padding: 25px 18px;
        gap: 7px;
    }

    .side-menu-item[b-pmt37means]::after {
        display: none;
    }

    .theme-label[b-pmt37means] {
        font-size: 16px;
    }

    .side-menu-icon[b-pmt37means] {
        width: 26px;
        height: 26px;
    }

    .side-menu-icon[b-pmt37means]  span {
        width: 26px;
        height: 26px;
    }
}

/* Desktop */
@media (min-width: 1280px) {
    .side-menu[b-pmt37means] {
        width: 400px;
        padding: 30px 25px 30px 40px;
    }

    .side-menu-item[b-pmt37means] {
        font-size: 26px;
        padding: 18px 30px;
        gap: 15px;
    }

    .theme-label[b-pmt37means] {
        font-size: 20px;
    }

    .side-menu-icon[b-pmt37means] {
        width: 36px;
        height: 36px;
    }

    .side-menu-icon[b-pmt37means]  span {
        width: 36px;
        height: 36px;
    }
}
/* /Views/Shared/Components/TimelineActionsComponent/Default.cshtml.rz.scp.css */
/* === Timeline Actions === */

.timeline-actions-wrapper[b-zidvojrh50] {
    display: flex;
    flex-shrink: 0;
    position: relative;
    z-index: 1000;
    width: 100%;
}

.timeline-actions-wrapper[b-zidvojrh50]::before,
.timeline-actions-wrapper[b-zidvojrh50]::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 16px;
    width: 40px;
    pointer-events: none;
    z-index: 1;
    opacity: 0;
    transition: opacity 0.2s;
}

.timeline-actions-wrapper[b-zidvojrh50]::before {
    left: 0;
    background: linear-gradient(to left, transparent, var(--bs-body-bg));
}

.timeline-actions-wrapper[b-zidvojrh50]::after {
    right: 0;
    background: linear-gradient(to right, transparent, var(--bs-body-bg));
}

.timeline-actions-wrapper.can-scroll-left[b-zidvojrh50]::before {
    opacity: 1;
}

.timeline-actions-wrapper.can-scroll-right[b-zidvojrh50]::after {
    opacity: 1;
}

.timeline-actions[b-zidvojrh50] {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    padding: 8px var(--timeline-inset) 16px;
    gap: 12px;
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.timeline-actions[b-zidvojrh50]::-webkit-scrollbar {
    display: none;
}

.timeline-action-btn[b-zidvojrh50] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    cursor: pointer;
    flex-shrink: 0;
    transition: transform 0.15s, box-shadow 0.15s, opacity 0.25s ease-out;
}

.timeline-action-btn:hover[b-zidvojrh50] {
    transform: scale(1.05);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.timeline-action-btn.dragging[b-zidvojrh50] {
    opacity: 0.5;
    box-shadow: none !important;
}

.timeline-action-icon[b-zidvojrh50] {
    width: 25px;
    height: 25px;
}

.timeline-action-add[b-zidvojrh50] {
    background: #6262621A !important;
    border: 1px dashed #626262 !important;
    color: #626262;
    text-decoration: none;
}

.timeline-action-add:hover[b-zidvojrh50] {
    border-color: var(--bs-primary) !important;
    background: var(--bs-primary-bg-subtle) !important;
    color: var(--bs-primary);
}

@media (min-width: 768px) {
    .timeline-action-btn[b-zidvojrh50] {
        width: 56px;
        height: 56px;
    }

    .timeline-actions[b-zidvojrh50] {
        gap: 8px;
    }

    .timeline-actions-wrapper[b-zidvojrh50] {
        width: auto;
        overflow: visible;
    }

    .timeline-actions-wrapper[b-zidvojrh50]::before,
    .timeline-actions-wrapper[b-zidvojrh50]::after {
        display: none;
    }

    .timeline-actions[b-zidvojrh50] {
        flex-direction: column;
        flex-wrap: wrap;
        padding: 6px 30px 6px 16px;
        overflow-x: visible;
    }
}
/* /Views/Shared/Components/ToggleScheduleEditorComponent/Default.cshtml.rz.scp.css */
.schedule-type-cards[b-5uq7libkrm] {
    display: flex;
    gap: 16px;
}

.schedule-type-card[b-5uq7libkrm] {
    flex: 1;
    padding: 20px;
    border: 1px solid var(--bs-border-color);
    border-radius: 12px;
    background: rgba(174, 140, 201, 0.16);
    cursor: pointer;
    transition: all 0.2s ease;
}

.schedule-type-card:hover[b-5uq7libkrm] {
    border-color: var(--bs-primary);
}

.schedule-type-card.selected[b-5uq7libkrm] {
    border-color: var(--bs-primary);
    border-width: 2px;
    background: rgba(156, 121, 184, 0.16);
}

.schedule-type-card-title[b-5uq7libkrm] {
    font-size: 26px;
    line-height: 100%;
    margin-bottom: 20px;
    color: var(--bs-body-color);
}

.schedule-type-card-desc[b-5uq7libkrm] {
    font-size: 0.9rem;
    color: var(--bs-secondary-color);
    line-height: 1.4;
}

.schedule-type-toggle[b-5uq7libkrm] {
    display: flex;
    justify-content: center;
    gap: 4px;
    background: var(--bs-tertiary-bg);
    padding: 4px;
    border-radius: 8px;
    width: fit-content;
    margin: 0 auto;
}

.schedule-toggle-btn[b-5uq7libkrm] {
    padding: 6px 16px;
    border: none;
    background: transparent;
    border-radius: 6px;
    font-size: 0.875rem;
    color: var(--bs-secondary-color);
    cursor: pointer;
    transition: all 0.2s ease;
}

.schedule-toggle-btn:hover[b-5uq7libkrm] {
    color: var(--bs-body-color);
}

.schedule-toggle-btn.active[b-5uq7libkrm] {
    background: var(--bs-body-bg);
    color: var(--bs-primary);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}
/* /Views/Shared/Components/TopMenuComponent/Default.cshtml.rz.scp.css */
/* Top Menu Component - Mobile First */
.top-menu[b-z75qmign78] {
    position: relative;
    z-index: 1030;
    height: 68px;
    padding: 10px 20px;
}

[b-z75qmign78] .site-logo {
    height: 40px;
    width: auto;
}

.top-menu-right-group[b-z75qmign78] {
    gap: 12px;
}

.top-menu .btn-link[b-z75qmign78] {
    color: inherit;
    text-decoration: none;
}

.top-menu .btn-link:hover[b-z75qmign78] {
    color: inherit;
}

.top-menu .avatar-placeholder[b-z75qmign78] {
    width: 43px;
    height: 43px;
    background-color: var(--bs-primary);
    color: var(--text-on-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
}

.top-menu .user-info[b-z75qmign78] {
    display: none;
    margin-left: 18px;
}

.top-menu .user-name[b-z75qmign78] {
    font-weight: 500;
    color: var(--bs-body-color);
}

.top-menu .user-name-short[b-z75qmign78] {
    display: none;
}

.top-menu .user-name-full[b-z75qmign78] {
    display: none;
}

.top-menu .user-role[b-z75qmign78] {
    font-size: 14px;
}

.top-menu .dropdown-arrow[b-z75qmign78] {
    display: none;
    align-items: center;
    justify-content: center;
    padding: 6px;
    margin-left: 20px;
    color: var(--bs-secondary-color);
    transition: transform 0.2s;
}

.top-menu [aria-expanded="true"] .dropdown-arrow[b-z75qmign78] {
    transform: rotate(180deg);
}

.top-menu .dropdown-menu[b-z75qmign78] {
    padding: 0;
    font-size: 14px;
    min-width: 190px;
    margin-top: 10px !important;
    overflow: hidden;
}

.top-menu .dropdown-menu[b-z75qmign78]  .dropdown-item {
    padding: 21px 13px;
}

.top-menu .dropdown-menu li:first-child[b-z75qmign78]  .dropdown-item {
    border-radius: 10px 10px 0 0;
}

.top-menu .dropdown-menu li:last-child[b-z75qmign78]  .dropdown-item {
    border-radius: 0 0 10px 10px;
}

.top-menu .dropdown-divider[b-z75qmign78] {
    margin: 0;
}

.notification-bell[b-z75qmign78] {
    color: var(--bs-primary);
}

.notification-badge[b-z75qmign78] {
    position: absolute;
    top: 0;
    right: 0;
    width: 13px;
    height: 13px;
    background-color: var(--bs-danger);
    border-radius: 50%;
    border: 2px solid var(--bs-body-bg);
}

/* Notifications dropdown */
.notifications-dropdown[b-z75qmign78] {
    position: fixed !important;
    top: 68px !important;
    left: 20px !important;
    right: 20px !important;
    width: auto !important;
    padding: 0;
    overflow: hidden;
    transform: none !important;
}

.notifications-header[b-z75qmign78] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    border-bottom: 1px solid var(--bs-border-color);
}

.notifications-title[b-z75qmign78] {
    font-weight: 600;
    font-size: 16px;
}

.mark-all-read[b-z75qmign78],
.view-all[b-z75qmign78] {
    font-size: 14px;
    color: var(--bs-primary);
    text-decoration: none;
}

.mark-all-read:hover[b-z75qmign78],
.view-all:hover[b-z75qmign78] {
    text-decoration: underline;
}

.notifications-list[b-z75qmign78] {
    max-height: 320px;
    overflow-y: auto;
}

.notification-item[b-z75qmign78] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 12px 20px;
    border-bottom: 1px solid var(--bs-border-color);
    transition: background-color 0.15s;
}

.notification-item:last-child[b-z75qmign78] {
    border-bottom: none;
}

.notification-item:hover[b-z75qmign78] {
    background-color: var(--bs-tertiary-bg);
}

.notification-item.unread[b-z75qmign78] {
    background-color: rgba(var(--bs-primary-rgb), 0.04);
}

.notification-indicator[b-z75qmign78] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: transparent;
    margin-top: 6px;
    flex-shrink: 0;
}

.notification-indicator.active[b-z75qmign78] {
    background-color: var(--bs-primary);
}

.notification-content[b-z75qmign78] {
    flex: 1;
    min-width: 0;
    text-decoration: none;
    color: inherit;
}

.notification-content:hover[b-z75qmign78] {
    color: inherit;
}

.notification-actions[b-z75qmign78] {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-shrink: 0;
    margin-top: 2px;
}

.notification-action-btn[b-z75qmign78] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: none;
    background: transparent;
    color: var(--bs-secondary-color);
    border-radius: 50%;
    cursor: pointer;
    transition: background-color 0.15s, color 0.15s;
    padding: 0;
}

.notification-action-btn:hover[b-z75qmign78] {
    background-color: var(--bs-secondary-bg);
    color: var(--bs-body-color);
}

.notification-action-btn[data-action="delete"]:hover[b-z75qmign78] {
    background-color: rgba(var(--bs-danger-rgb), 0.1);
    color: var(--bs-danger);
}

.notification-item .notification-title[b-z75qmign78] {
    font-weight: 500;
    font-size: 14px;
    margin-bottom: 4px;
}

.notification-item .notification-message[b-z75qmign78],
.notification-item .notification-time[b-z75qmign78] {
    color: var(--bs-secondary-color);
}

.notification-item .notification-message[b-z75qmign78] {
    font-size: 13px;
    margin-bottom: 4px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.notification-item .notification-time[b-z75qmign78] {
    font-size: 12px;
}

[b-z75qmign78] .notifications-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
}

.notifications-footer[b-z75qmign78] {
    padding: 12px 20px;
    border-top: 1px solid var(--bs-border-color);
    text-align: center;
}

.view-all[b-z75qmign78] {
    font-weight: 500;
}

/* Tablet styles */
@media (min-width: 768px) {

    .top-menu[b-z75qmign78] {
        height: 98px;
    }

    .top-menu-right-group[b-z75qmign78] {
        gap: 30px;
    }

    .top-menu .user-info[b-z75qmign78] {
        display: block;
    }

    .top-menu .user-name-short[b-z75qmign78] {
        display: block;
    }

    .top-menu .dropdown-arrow[b-z75qmign78] {
        display: flex;
    }

    .top-menu .dropdown-menu[b-z75qmign78] {
        font-size: 16px;
    }

    .notifications-dropdown[b-z75qmign78] {
        position: absolute !important;
        top: 100% !important;
        left: auto !important;
        right: 0 !important;
        width: 360px !important;
        margin-top: 10px !important;
    }
}

/* Desktop styles */
@media (min-width: 1024px) {
    .top-menu[b-z75qmign78] {
        padding: 10px 40px;
    }

    [b-z75qmign78] .site-logo {
        height: 63px;
    }

    .top-menu .user-name-short[b-z75qmign78] {
        display: none;
    }

    .top-menu .user-name-full[b-z75qmign78] {
        display: block;
    }
}
/* /Views/Shared/Partials/DataTable/_DataTable.cshtml.rz.scp.css */
.data-table__header[b-onsopq7jyq] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    margin-bottom: 62px;
}

.data-table__title[b-onsopq7jyq] {
    font-size: 30px;
    font-weight: 700;
    margin: 0;
}

.data-table__header-controls[b-onsopq7jyq] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
    min-width: 0;
}

.data-table__wrapper[b-onsopq7jyq] {
    position: relative;
}

.data-table__loading[b-onsopq7jyq] {
    display: none;
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.7);
    z-index: 2;
    align-items: center;
    justify-content: center;
}

.data-table__loading--active[b-onsopq7jyq] {
    display: flex;
}

.data-table__scroll[b-onsopq7jyq] {
    overflow-x: auto;
}

.data-table__table[b-onsopq7jyq] {
    width: 100%;
    border-collapse: collapse;
}

.data-table__table[b-onsopq7jyq]  th {
    font-size: 26px;
    font-weight: 400;
    padding: 0 16px 42px 0;
    text-align: left;
    vertical-align: top;
    border-bottom: 1px solid var(--bs-border-color);
}

.data-table__table[b-onsopq7jyq]  td {
    font-size: 20px;
    padding: 20px 20px 20px 0;
    height: 86px;
    border-bottom: 1px solid var(--bs-border-color);
}

.data-table__table[b-onsopq7jyq]  tr:last-child td {
    border-bottom: none;
}

.data-table__sortable[b-onsopq7jyq] {
    cursor: pointer;
    user-select: none;
}

.data-table__sortable:hover[b-onsopq7jyq] {
    background: var(--bs-tertiary-bg);
}

.data-table__sort-icon[b-onsopq7jyq] {
    display: inline-block;
    width: 12px;
    height: 12px;
    margin-left: 4px;
    vertical-align: middle;
    opacity: 0.3;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Cpath d='M12 5v14M5 12l7-7 7 7'/%3E%3C/svg%3E") no-repeat center;
    background-size: contain;
}

.data-table__sortable--asc .data-table__sort-icon[b-onsopq7jyq] {
    opacity: 1;
    transform: rotate(0deg);
}

.data-table__sortable--desc .data-table__sort-icon[b-onsopq7jyq] {
    opacity: 1;
    transform: rotate(180deg);
}

.data-table__empty-row[b-onsopq7jyq]  td {
    text-align: center;
    color: var(--bs-secondary-color);
    padding: 32px 16px;
}

.data-table__pagination[b-onsopq7jyq] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 16px 0 0;
    border-top: 1px solid var(--bs-border-color);
    margin-top: 4px;
}

.data-table__page-nav[b-onsopq7jyq] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.data-table__page-nav[b-onsopq7jyq]  .data-table__page-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 50px;
    height: 50px;
    padding: 4px 8px;
    font-size: inherit;
    font-weight: 500;
    color: var(--bs-body-color);
    background: transparent;
    border: 1px solid var(--bs-border-color);
    border-radius: 50%;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
}

.data-table__page-nav[b-onsopq7jyq]  .data-table__page-btn:hover:not(:disabled):not(.data-table__page-btn--active) {
    background: var(--bs-tertiary-bg);
    border-color: var(--bs-secondary-color);
}

.data-table__page-nav[b-onsopq7jyq]  .data-table__page-btn--active {
    background: var(--admin-primary);
    border-color: var(--admin-primary);
    color: #fff;
    cursor: default;
}

.data-table__page-nav[b-onsopq7jyq]  .data-table__page-btn--nav {
    min-width: 50px;
    height: 50px;
    padding: 4px;
}

.data-table__page-nav[b-onsopq7jyq]  .data-table__page-btn:disabled {
    opacity: 0.4;
    cursor: not-allowed;
}

.data-table__page-nav[b-onsopq7jyq]  .data-table__page-ellipsis {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 50px;
    height: 50px;
    color: var(--bs-secondary-color);
    user-select: none;
}

.data-table__page-nav--hidden[b-onsopq7jyq] {
    display: none;
}

.data-table__page-info[b-onsopq7jyq] {
    font-size: 1rem;
    color: var(--bs-secondary-color);
    white-space: nowrap;
}

.data-table__page-size[b-onsopq7jyq] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: inherit;
    color: var(--bs-secondary-color);
}

.data-table__page-size[b-onsopq7jyq]  .custom-select-dropdown {
    min-width: 70px;
}

.data-table__error[b-onsopq7jyq] {
    color: var(--bs-danger, #dc3545);
}

/* Badges (layout only — colors defined per-page) */
.data-table__table[b-onsopq7jyq]  .data-table-badge {
    display: inline-block;
    padding: 8px;
    border-radius: 10px;
    text-align: center;
}

.data-table__table[b-onsopq7jyq]  .data-table-badge--w-sm {
    width: 80px;
}

.data-table__table[b-onsopq7jyq]  .data-table-badge--w-md {
    width: 130px;
}

.data-table__table[b-onsopq7jyq]  .data-table-badge--w-lg {
    width: 200px;
}
/* /Views/Shared/Partials/DatePicker/_DatePicker.cshtml.rz.scp.css */
.date-picker[b-1ksoeo5sa8] {
    position: fixed;
    padding: 20px;
    background: var(--bs-body-bg);
    border-radius: var(--dropdown-radius);
    border: var(--dropdown-border);
    box-shadow: var(--dropdown-shadow);
    z-index: 1035;
    min-width: 300px;
}

.date-picker-header[b-1ksoeo5sa8] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
}

.date-picker-month-year[b-1ksoeo5sa8] {
    font-size: 18px;
    font-weight: 500;
    color: var(--bs-body-color);
}

.date-picker-nav[b-1ksoeo5sa8] {
    display: flex;
    gap: 8px;
}

.date-picker-nav-btn[b-1ksoeo5sa8] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: none;
    background: transparent;
    color: var(--bs-body-color);
    cursor: pointer;
    border-radius: var(--bs-border-radius-pill);
    transition: background-color 0.15s;
}

.date-picker-nav-btn:hover[b-1ksoeo5sa8] {
    background-color: var(--bs-secondary-bg);
}

.date-picker-weekdays[b-1ksoeo5sa8] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 4px;
    margin-bottom: 8px;
}

[b-1ksoeo5sa8] .date-picker-weekday {
    text-align: center;
    font-size: 12px;
    font-weight: 500;
    color: var(--bs-secondary-color);
    padding: 8px 0;
}

[b-1ksoeo5sa8] .date-picker-weekday.weekend {
    color: var(--weekend-color);
}

.date-picker-days[b-1ksoeo5sa8] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    column-gap: 0;
    row-gap: 4px;
}

[b-1ksoeo5sa8] .date-picker-day {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 45px;
    height: 32px;
    margin: 0 auto;
    border: none;
    background: transparent;
    color: var(--bs-body-color);
    font-size: 14px;
    cursor: pointer;
    border-radius: var(--bs-border-radius-pill);
    transition: background-color 0.15s, color 0.15s;
}

[b-1ksoeo5sa8] .date-picker-day:hover {
    background-color: var(--bs-secondary-bg);
}

[b-1ksoeo5sa8] .date-picker-day.other-month {
    opacity: 0.5;
}

[b-1ksoeo5sa8] .date-picker-day.disabled {
    color: var(--bs-secondary-color);
    opacity: 0.4;
    cursor: not-allowed;
    text-decoration: line-through;
}

[b-1ksoeo5sa8] .date-picker-day.disabled:hover {
    background: transparent;
}

[b-1ksoeo5sa8] .date-picker-day.sunday,
[b-1ksoeo5sa8] .date-picker-day.saturday {
    color: var(--weekend-color);
}

[b-1ksoeo5sa8] .date-picker-day.selected {
    background-color: var(--bs-primary);
    color: var(--text-on-primary);
    font-weight: 700;
    border-radius: var(--bs-border-radius-pill);
}

[b-1ksoeo5sa8] .date-picker-day.selected:hover {
    background-color: var(--bs-primary);
}

[b-1ksoeo5sa8] .date-picker-day.today {
    font-weight: 600;
}

/* In week mode, days should not have rounded corners by default */
.date-picker[data-mode="week"][b-1ksoeo5sa8]  .date-picker-day {
    border-radius: 0;
}

.date-picker[data-mode="week"][b-1ksoeo5sa8]  .date-picker-day.row-start {
    border-radius: 100px 0 0 100px;
}

.date-picker[data-mode="week"][b-1ksoeo5sa8]  .date-picker-day.row-end {
    border-radius: 0 100px 100px 0;
}

/* Hover styles for week and range modes */
[b-1ksoeo5sa8] .date-picker-day.week-hover,
[b-1ksoeo5sa8] .date-picker-day.range-hover {
    background-color: var(--bs-secondary-bg);
    border-radius: 0;
}

[b-1ksoeo5sa8] .date-picker-day.week-hover.row-start,
[b-1ksoeo5sa8] .date-picker-day.range-hover.range-hover-start {
    border-radius: 100px 0 0 100px;
}

[b-1ksoeo5sa8] .date-picker-day.week-hover.row-end,
[b-1ksoeo5sa8] .date-picker-day.range-hover.range-hover-end {
    border-radius: 0 100px 100px 0;
}

/* Selected middle days for week and range modes */
[b-1ksoeo5sa8] .date-picker-day.week-selected,
[b-1ksoeo5sa8] .date-picker-day.range-middle {
    background-color: rgba(var(--bs-primary-rgb), 0.16);
    border-radius: 0;
}

/* Selected edge days for week and range modes */
[b-1ksoeo5sa8] .date-picker-day.week-selected.week-start,
[b-1ksoeo5sa8] .date-picker-day.week-selected.week-end,
[b-1ksoeo5sa8] .date-picker-day.range-edge {
    background-color: var(--bs-primary);
    color: var(--text-on-primary);
    font-weight: 700;
}

[b-1ksoeo5sa8] .date-picker-day.week-selected.week-start,
[b-1ksoeo5sa8] .date-picker-day.range-edge.range-start {
    border-radius: 100px 0 0 100px;
}

[b-1ksoeo5sa8] .date-picker-day.week-selected.week-end,
[b-1ksoeo5sa8] .date-picker-day.range-edge.range-end {
    border-radius: 0 100px 100px 0;
}

/* When range start and end are the same day */
[b-1ksoeo5sa8] .date-picker-day.range-edge.range-start.range-end {
    border-radius: var(--bs-border-radius-pill);
}

[b-1ksoeo5sa8] .date-picker-day.week-selected.week-start:hover,
[b-1ksoeo5sa8] .date-picker-day.week-selected.week-end:hover,
[b-1ksoeo5sa8] .date-picker-day.range-edge:hover {
    background-color: var(--bs-primary);
}

@media (max-width: 374px) {
    .date-picker[b-1ksoeo5sa8] {
        min-width: auto;
        left: 8px !important;
        right: 8px !important;
        width: auto !important;
        padding: 12px;
    }

    [b-1ksoeo5sa8] .date-picker-day {
        width: 36px;
        height: 28px;
        font-size: 13px;
    }

    .date-picker-month-year[b-1ksoeo5sa8] {
        font-size: 16px;
    }
}
/* /Views/Shared/Partials/DatePicker/_DatePickerInput.cshtml.rz.scp.css */
.date-picker-input-wrapper[b-o00hsrx2ou] {
    position: relative;
    width: 100%;
}

.date-picker-toggle[b-o00hsrx2ou] {
    padding-right: 40px !important;
    background-image: none;
}

.date-picker-toggle .placeholder-text[b-o00hsrx2ou] {
    color: var(--bs-secondary-color);
}

.date-picker-icon[b-o00hsrx2ou] {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
}
/* /Views/Shared/Partials/Inputs/_WeekPicker.cshtml.rz.scp.css */
.week-picker-menu[b-awqcgv1qli] {
    width: 400px;
}

.week-picker-panels[b-awqcgv1qli] {
    display: flex;
}

.week-picker-months[b-awqcgv1qli] {
    width: 100px;
    border-right: 1px solid var(--bs-border-color);
    max-height: 250px;
    overflow-y: auto;
}

.week-picker-month-item[b-awqcgv1qli] {
    padding: 10px;
    cursor: pointer;
    font-size: 12px;
    transition: background-color 0.15s ease;
    user-select: none;
}

.week-picker-month-item:hover[b-awqcgv1qli] {
    background-color: var(--bs-secondary-bg);
}

.week-picker-month-item.active[b-awqcgv1qli] {
    background-color: var(--bs-primary);
    color: var(--text-on-primary);
}

.week-picker-month-item.disabled[b-awqcgv1qli] {
    color: var(--bs-secondary-color);
    cursor: not-allowed;
}

.week-picker-month-item.disabled:hover[b-awqcgv1qli] {
    background-color: transparent;
}

.week-picker-weeks[b-awqcgv1qli] {
    flex: 1;
    padding: 15px;
}

.week-picker-year-nav[b-awqcgv1qli] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 15px;
}

.week-picker-year-buttons[b-awqcgv1qli] {
    display: flex;
    gap: 8px;
}

.week-picker-year-nav button[b-awqcgv1qli] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: none;
    background: transparent;
    color: var(--bs-body-color);
    cursor: pointer;
    border-radius: var(--bs-border-radius-pill);
    transition: background-color 0.15s;
}

.week-picker-year-nav button:hover[b-awqcgv1qli] {
    background-color: var(--bs-secondary-bg);
}

.week-picker-year-nav button:disabled[b-awqcgv1qli] {
    color: var(--bs-secondary-color);
    cursor: not-allowed;
}

.week-picker-year-nav button:disabled:hover[b-awqcgv1qli] {
    background: transparent;
}

.week-picker-year-display[b-awqcgv1qli] {
    font-size: 18px;
    font-weight: 500;
    color: var(--bs-body-color);
    user-select: none;
}

.week-picker-week-grid[b-awqcgv1qli] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

[b-awqcgv1qli] .week-picker-week-item {
    width: 115px;
    padding: 8px 10px;
    border: 1px solid var(--bs-border-color);
    border-radius: var(--radius-xs);
    cursor: pointer;
    font-size: 12px;
    text-align: center;
    transition: all 0.15s ease;
    user-select: none;
}

[b-awqcgv1qli] .week-picker-week-item:hover {
    border-color: var(--bs-primary);
    color: var(--bs-primary);
}

[b-awqcgv1qli] .week-picker-week-item.active {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
    color: var(--text-on-primary);
}

[b-awqcgv1qli] .week-picker-week-item.disabled {
    color: var(--bs-secondary-color);
    border-color: var(--bs-border-color);
    cursor: not-allowed;
}

[b-awqcgv1qli] .week-picker-week-item.disabled:hover {
    border-color: var(--bs-border-color);
    color: var(--bs-secondary-color);
}
/* /Views/Shared/Partials/Navigation/_BackButton.cshtml.rz.scp.css */
.back-button-header[b-vu8lootga5] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.back-button[b-vu8lootga5] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    min-width: 32px;
    border-radius: 50%;
    border: 1px solid var(--bs-border-color);
    color: var(--bs-body-color);
    text-decoration: none;
    transition: background-color 0.15s, border-color 0.15s;
}

.back-button:hover[b-vu8lootga5] {
    background-color: var(--bs-tertiary-bg);
    border-color: var(--bs-secondary-border-subtle);
    color: var(--bs-body-color);
}

.back-button svg[b-vu8lootga5] {
    width: 16px;
    height: 16px;
}

.back-button-header--title-only[b-vu8lootga5] {
    align-items: center;
}

.back-button-text[b-vu8lootga5] {
    display: flex;
    flex-direction: column;
}

.back-button-title[b-vu8lootga5] {
    font-size: 24px;
    font-weight: 400;
    margin: 0;
    line-height: 1;
}

.back-button-subtitle[b-vu8lootga5] {
    font-size: 12px;
    color: var(--bs-secondary-color);
    margin: 4px 0 0 0;
}

@media (min-width: 768px) {
    .back-button-header[b-vu8lootga5] {
        gap: 20px;
    }

    .back-button[b-vu8lootga5] {
        width: 56px;
        height: 56px;
        min-width: 56px;
    }

    .back-button svg[b-vu8lootga5] {
        width: 20px;
        height: 20px;
    }

    .back-button-title[b-vu8lootga5] {
        font-size: 30px;
    }

    .back-button-subtitle[b-vu8lootga5] {
        font-size: 20px;
        margin: 15px 0 0 0;
    }
}
/* /Views/Shared/Partials/Timeline/_TimelineEvent.cshtml.rz.scp.css */
/* === Timeline Event (Medication / Activity) === */

.timeline-event[b-p1rx6qzwx2] {
    position: absolute;
    left: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 var(--timeline-inset);
    z-index: 20;
    transform: translateY(-50%);
    transition: z-index 0s 0.1s;
}

.timeline-event:hover[b-p1rx6qzwx2] {
    z-index: 200;
    transition: z-index 0s;
}

/* Hidden state for grouped events */
.timeline-event.grouped[b-p1rx6qzwx2] {
    display: none;
}

.timeline-event-line[b-p1rx6qzwx2] {
    position: absolute;
    left: 0;
    right: 0;
    height: 0;
    border-top: 2px dashed;
}

.timeline-event-label[b-p1rx6qzwx2] {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 4px 13px;
    border: 1px solid;
    border-radius: var(--bs-border-radius-pill);
    font-weight: 500;
    white-space: nowrap;
    max-width: 100%;
}

.timeline-event-text[b-p1rx6qzwx2] {
    overflow: hidden;
    text-overflow: ellipsis;
}

@media (min-width: 768px) {
    .timeline-event-label[b-p1rx6qzwx2] {
        padding: 7px 14px;
    }
}

.timeline-event-icon[b-p1rx6qzwx2] {
    flex-shrink: 0;
    width: 20px;
    height: 20px;
}

.timeline-event[b-p1rx6qzwx2]  .timeline-event-menu-wrapper {
    margin-left: 8px;
}
/* /Views/Shared/Partials/Timeline/_TimelineExerciseEvent.cshtml.rz.scp.css */
/* === Timeline Exercise Event === */

.timeline-exercise-event[b-kgezuxwhhb] {
    position: absolute;
    left: var(--timeline-block-inset);
    right: var(--timeline-block-inset);
    height: var(--event-height);
    min-height: var(--hour-height);
    padding: var(--timeline-block-padding);
    border-radius: var(--radius-card);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    z-index: 10;
    transition: z-index 0s 0.3s;
}

.timeline-exercise-event:hover[b-kgezuxwhhb] {
    z-index: 100;
    transition: z-index 0s 0.3s;
}

/* Compact view */
/* Header — always visible (replaces compact + title) */
.timeline-exercise-header[b-kgezuxwhhb] {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 12px;
    height: 20px;
}

.timeline-exercise-name[b-kgezuxwhhb] {
    font-size: 16px;
    font-weight: 600;
    color: var(--bs-body-color);
}

.timeline-exercise-header .timeline-compact-details[b-kgezuxwhhb] {
    margin-left: auto;
}

.timeline-exercise-time[b-kgezuxwhhb] {
    font-size: 14px;
    color: var(--bs-secondary-color);
}

.timeline-exercise-time-range[b-kgezuxwhhb] {
    display: none;
}

@media (max-width: 389px) {
    .timeline-exercise-header[b-kgezuxwhhb] {
        gap: 8px;
    }

    .timeline-exercise-time[b-kgezuxwhhb] {
        display: none;
    }
}

@media (min-width: 1024px) {
    .timeline-exercise-time-range[b-kgezuxwhhb] {
        display: inline;
    }
}

/* Details view - mobile first */
.timeline-exercise-details[b-kgezuxwhhb] {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
    overflow: hidden;
}

.timeline-exercise-content[b-kgezuxwhhb] {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
    overflow: hidden;
}

.timeline-exercise-fields[b-kgezuxwhhb] {
    flex: 1;
    min-height: 0;
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: minmax(0, 1fr);
    column-gap: var(--timeline-details-gap, 50px);
    overflow: hidden;
}

.timeline-exercise-field[b-kgezuxwhhb] {
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-height: 0;
    overflow: hidden;
}

.timeline-exercise-field-label[b-kgezuxwhhb] {
    font-size: 16px;
    font-weight: 400;
    color: var(--bs-body-color);
}

.timeline-exercise-field-value[b-kgezuxwhhb] {
    font-size: 14px;
    color: var(--bs-secondary-color);
}

.timeline-exercise-list[b-kgezuxwhhb] {
    flex: 1;
    min-height: 0;
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: 12px;
    row-gap: 4px;
    font-size: 14px;
    color: var(--bs-secondary-color);
    overflow: hidden;
}

/* Menu positioning */
.timeline-exercise-event[b-kgezuxwhhb] >  .timeline-event-menu-wrapper {
    position: absolute;
    top: 15px;
    right: 20px;
}

/* Progressive disclosure — hidden on mobile by default */
.timeline-exercise-field-duration[b-kgezuxwhhb],
.timeline-exercise-field-basic[b-kgezuxwhhb],
.timeline-exercise-field-extra[b-kgezuxwhhb] {
    display: none;
}

@media (min-width: 400px) {
    .timeline-exercise-event.show-duration .timeline-exercise-field-duration[b-kgezuxwhhb],
    .timeline-exercise-event.show-duration .timeline-exercise-field-extra[b-kgezuxwhhb] {
        display: flex;
    }
}

/* View Details link — hidden in edit mode by default */
.timeline-exercise-view-details[b-kgezuxwhhb] {
    position: absolute;
    bottom: 15px;
    right: 20px;
    font-size: 16px;
    color: var(--bs-body-color);
    text-decoration: underline;
    transition: opacity 0.15s;
    display: none;
}

.timeline-exercise-view-details:hover[b-kgezuxwhhb] {
    opacity: 0.6;
}

.timeline-exercise-event.show-view-details .timeline-exercise-view-details[b-kgezuxwhhb] {
    display: block;
}

/* Tablet+ exercise layout */
@media (min-width: 768px) {
    .timeline-exercise-details[b-kgezuxwhhb] {
        flex-direction: row;
        flex-wrap: wrap;
        align-content: flex-start;
        column-gap: 12px;
        row-gap: 20px;
    }

    .diary-readonly .timeline-exercise-details[b-kgezuxwhhb] {
        padding-right: 0;
    }

    .timeline-exercise-header[b-kgezuxwhhb] {
        font-size: 20px;
        flex-grow: 1;
        height: auto;
    }

    .timeline-exercise-name[b-kgezuxwhhb] {
        font-size: 20px;
    }

    .timeline-exercise-time[b-kgezuxwhhb] {
        display: none;
    }

    .timeline-exercise-content[b-kgezuxwhhb] {
        flex-basis: 100%;
    }

    .timeline-exercise-fields[b-kgezuxwhhb] {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        column-gap: var(--timeline-details-gap);
        row-gap: 20px;
    }

    .timeline-exercise-field[b-kgezuxwhhb] {
        gap: 7px;
    }

    .timeline-exercise-field-label[b-kgezuxwhhb] {
        font-size: 20px;
    }

    .timeline-exercise-field-value[b-kgezuxwhhb] {
        font-size: 16px;
    }

    .timeline-exercise-list[b-kgezuxwhhb] {
        font-size: 16px;
    }

    /* Tablet progressive disclosure (not blanket show) */
    .timeline-exercise-event.show-fields-md .timeline-exercise-field-duration[b-kgezuxwhhb],
    .timeline-exercise-event.show-fields-md .timeline-exercise-field-extra[b-kgezuxwhhb] {
        display: flex;
    }

    .timeline-exercise-event[b-kgezuxwhhb]  .timeline-event-menu {
        width: 40px !important;
        height: 40px !important;
    }

    .timeline-exercise-name[b-kgezuxwhhb] {
        font-size: 20px;
    }

    .timeline-exercise-time[b-kgezuxwhhb] {
        font-size: 16px;
    }

    .timeline-exercise-view-details[b-kgezuxwhhb] {
        font-size: 20px;
    }
}

@media (min-width: 800px) {
    .timeline-exercise-time[b-kgezuxwhhb] {
        display: block;
    }

    .timeline-exercise-event.show-fields-md .timeline-exercise-time[b-kgezuxwhhb] {
        display: none;
    }
}

/* PC exercise layout — grid */
@media (min-width: 1024px) {
    .timeline-exercise-details[b-kgezuxwhhb] {
        display: grid;
        grid-template-columns: minmax(115px, 12%) 1fr auto;
        align-items: start;
        column-gap: var(--timeline-details-gap);
        row-gap: 20px;
    }

    .timeline-exercise-header[b-kgezuxwhhb] {
        grid-column: 1 / -1;
        grid-row: 1;
        margin-right: 0;
        gap: 12px;
    }

    .timeline-exercise-time[b-kgezuxwhhb] {
        display: block;
    }

    .timeline-exercise-time-range[b-kgezuxwhhb] {
        display: inline;
    }

    .timeline-exercise-event.show-fields-lg .timeline-exercise-header[b-kgezuxwhhb] {
        grid-column: 1;
    }

    .timeline-exercise-event.show-fields-lg .timeline-exercise-time[b-kgezuxwhhb] {
        display: none;
    }

    .timeline-exercise-content[b-kgezuxwhhb] {
        display: contents;
    }

    .timeline-exercise-fields[b-kgezuxwhhb] {
        grid-column: 2;
        grid-row: 1;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        column-gap: var(--timeline-details-gap);
        row-gap: 20px;
    }

    /* PC progressive disclosure — Duration + Exercises only */
    .timeline-exercise-event.show-fields-lg .timeline-exercise-field-duration[b-kgezuxwhhb],
    .timeline-exercise-event.show-fields-lg .timeline-exercise-field-extra[b-kgezuxwhhb] {
        display: flex;
    }

    .timeline-exercise-event.show-fields-lg .timeline-compact-details[b-kgezuxwhhb] {
        display: none !important;
    }

    .timeline-exercise-event.show-fields-lg .timeline-exercise-view-details[b-kgezuxwhhb] {
        display: block;
    }
}

/* PC wider (≥1160px): lower thresholds */
@media (min-width: 1160px) {
    .timeline-exercise-event.show-fields-lg2 .timeline-exercise-header[b-kgezuxwhhb] {
        grid-column: 1;
    }

    .timeline-exercise-event.show-fields-lg2 .timeline-exercise-time[b-kgezuxwhhb] {
        display: none;
    }

    .timeline-exercise-event.show-fields-lg2 .timeline-exercise-field-duration[b-kgezuxwhhb],
    .timeline-exercise-event.show-fields-lg2 .timeline-exercise-field-extra[b-kgezuxwhhb] {
        display: flex;
    }

    .timeline-exercise-event.show-fields-lg2 .timeline-compact-details[b-kgezuxwhhb] {
        display: none !important;
    }

    .timeline-exercise-event.show-fields-lg2 .timeline-exercise-view-details[b-kgezuxwhhb] {
        display: block;
    }
}

/* PC wide (≥1280px): + Starting + Ending Time */
@media (min-width: 1280px) {
    .timeline-exercise-event.show-extras-lg .timeline-exercise-field-basic[b-kgezuxwhhb] {
        display: flex;
    }

    .timeline-exercise-event.show-extras-lg2 .timeline-exercise-field-basic[b-kgezuxwhhb] {
        display: flex;
    }
}
/* /Views/Shared/Partials/Timeline/_TimelineSleepEvent.cshtml.rz.scp.css */
/* === Timeline Sleep Event === */

.timeline-sleep-event[b-8gcjxy15mi] {
    position: absolute;
    left: var(--timeline-block-inset);
    right: var(--timeline-block-inset);
    height: var(--event-height);
    min-height: var(--hour-height);
    padding: var(--timeline-block-padding);
    border-radius: var(--radius-card);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    z-index: 10;
    transition: z-index 0s 0.3s;
}

.timeline-sleep-event:hover[b-8gcjxy15mi] {
    z-index: 100;
    transition: z-index 0s 0.3s;
}

/* Header — always visible (replaces compact + title) */
.timeline-sleep-header[b-8gcjxy15mi] {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 12px;
    height: 20px;
}

.timeline-sleep-name[b-8gcjxy15mi] {
    font-size: 16px;
    font-weight: 600;
    color: var(--bs-body-color);
}

.timeline-sleep-time[b-8gcjxy15mi] {
    font-size: 14px;
    color: var(--bs-secondary-color);
}

.timeline-sleep-event.show-fields .timeline-sleep-time[b-8gcjxy15mi] {
    display: none;
}

.timeline-sleep-time-range[b-8gcjxy15mi] {
    display: none;
}

@media (max-width: 389px) {
    .timeline-sleep-header[b-8gcjxy15mi] {
        gap: 8px;
    }

    .timeline-sleep-time[b-8gcjxy15mi] {
        display: none;
    }
}

@media (min-width: 1024px) {
    .timeline-sleep-time-range[b-8gcjxy15mi] {
        display: inline;
    }
}

/* Header compact status — quality + on-track icon (no text) */
.timeline-sleep-header-actions[b-8gcjxy15mi] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-left: auto;
    padding-right: 35px;
    transition: padding-right 0.3s ease;
}

.diary-readonly .timeline-sleep-header-actions[b-8gcjxy15mi] {
    padding-right: 0;
}

.timeline-sleep-header-status[b-8gcjxy15mi] {
    display: none;
    align-items: center;
    gap: 8px;
}

.timeline-sleep-header-status .timeline-sleep-on-track[b-8gcjxy15mi] {
    padding: 6px;
}

@media (min-width: 768px) {
    .timeline-sleep-header-status .timeline-sleep-on-track[b-8gcjxy15mi] {
        padding: 8px 10px;
        order: -1;
    }
}

.timeline-sleep-header-on-track-text[b-8gcjxy15mi] {
    display: none;
}

@media (min-width: 480px) {
    .timeline-sleep-header-status[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-event.show-status .timeline-sleep-header-status[b-8gcjxy15mi] {
        display: none;
    }
}

@media (min-width: 600px) {
    .timeline-sleep-header-on-track-text[b-8gcjxy15mi] {
        display: inline;
    }
}

/* View Details link — always visible (custom questions only show in the modal) */
.timeline-sleep-view-details[b-8gcjxy15mi] {
    position: absolute;
    bottom: 15px;
    right: 20px;
    font-size: 16px;
    color: var(--bs-body-color);
    text-decoration: underline;
    transition: opacity 0.15s;
    display: block !important;
}

.timeline-sleep-view-details:hover[b-8gcjxy15mi] {
    opacity: 0.6;
}

@media (min-width: 768px) {
    .timeline-sleep-header-status[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-event.show-status-md .timeline-sleep-header-status[b-8gcjxy15mi] {
        display: none;
    }

    .timeline-sleep-view-details[b-8gcjxy15mi] {
        font-size: 20px;
    }

    .timeline-sleep-header-actions[b-8gcjxy15mi] {
        padding-right: 45px;
    }

    [b-8gcjxy15mi] .diary-readonly .timeline-sleep-header-actions {
        padding-right: 0;
    }
}

/* Details view - mobile first */
.timeline-sleep-details[b-8gcjxy15mi] {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    gap: var(--timeline-sleep-gap);
}

.timeline-sleep-content[b-8gcjxy15mi] {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    gap: var(--timeline-sleep-gap);
}

.timeline-sleep-fields[b-8gcjxy15mi] {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    gap: var(--timeline-sleep-gap);
    overflow: hidden;
}

.timeline-sleep-row[b-8gcjxy15mi] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--timeline-sleep-gap);
}

.timeline-sleep-notes-row[b-8gcjxy15mi] {
    flex: 1;
    min-height: 0;
    overflow: hidden;
}

.timeline-sleep-field[b-8gcjxy15mi] {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.timeline-sleep-field-label[b-8gcjxy15mi] {
    font-size: 16px;
    font-weight: 400;
    color: var(--bs-body-color);
}

.timeline-sleep-field-value[b-8gcjxy15mi] {
    font-size: 14px;
    color: var(--bs-secondary-color);
}

.timeline-sleep-notes[b-8gcjxy15mi] {
    flex: 1;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
}

.timeline-sleep-notes .timeline-sleep-field-value[b-8gcjxy15mi] {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    line-height: 1.4;
}

.timeline-sleep-quality[b-8gcjxy15mi] {
    display: flex;
    align-items: baseline;
    gap: 4px;
    font-size: 14px;
    font-weight: 400;
    color: var(--bs-body-color);
}

.timeline-sleep-quality svg[b-8gcjxy15mi] {
    align-self: center;
    width: 16px;
    height: 16px;
    color: var(--bs-warning);
}

/* Status row (quality + on-track badge) */
.timeline-sleep-status[b-8gcjxy15mi] {
    width: 100%;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.timeline-sleep-on-track-icon[b-8gcjxy15mi] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background-color: color-mix(in srgb, #FF8400 10%, transparent);
    border: 1px solid #FF8400;
}

.timeline-sleep-on-track[b-8gcjxy15mi] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 6px 6px;
    border-radius: 10px;
    background-color: var(--bs-body-bg);
    color: #FF8400;
    font-size: 14px;
    font-weight: 500;
}

/* Progressive disclosure tiers — hidden on mobile by default */
.timeline-sleep-status[b-8gcjxy15mi],
.timeline-sleep-field-basic[b-8gcjxy15mi],
.timeline-sleep-field-extra[b-8gcjxy15mi],
.timeline-sleep-field-notes[b-8gcjxy15mi] {
    display: none;
}

.timeline-sleep-event.show-status .timeline-sleep-status[b-8gcjxy15mi] {
    display: flex;
}

/* Tier 1: ≥4h — Sleep Time + Duration (≥400px shows both together) */
@media (min-width: 400px) {
    .timeline-sleep-event.show-fields .timeline-sleep-field-basic[b-8gcjxy15mi] {
        display: flex;
    }
}

/* Tier 2a: Awakenings */
.timeline-sleep-event.show-awakenings .timeline-sleep-field-awakenings[b-8gcjxy15mi] {
    display: flex;
}

/* Tier 2b: Time To Fall Asleep */
.timeline-sleep-event.show-ttfa .timeline-sleep-field-ttfa[b-8gcjxy15mi] {
    display: flex;
}

/* Tier 3: ≥9h — Notes */
.timeline-sleep-event.show-notes .timeline-sleep-field-notes[b-8gcjxy15mi] {
    display: flex;
}

/* Small screens (<405px) — only Sleep Time + Duration from fields */
@media (max-width: 400px) {
    .timeline-sleep-event .timeline-sleep-field-extra[b-8gcjxy15mi],
    .timeline-sleep-event .timeline-sleep-field-notes[b-8gcjxy15mi] {
        display: none !important;
    }
}

/* Small screens (<400px) — split Sleep Time / Duration, hide on-track text */
@media (max-width: 399px) {
    .timeline-sleep-event .timeline-sleep-field-basic[b-8gcjxy15mi] {
        display: none;
    }

    .timeline-sleep-event.show-time .timeline-sleep-field-time[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-event.show-duration .timeline-sleep-field-duration[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-status .timeline-sleep-on-track-text[b-8gcjxy15mi] {
        display: none;
    }
}

/* Mobile wide (≥450px): Awakenings joins TTFA, Notes shifts */
@media (min-width: 450px) {
    .timeline-sleep-event.show-awakenings-sm .timeline-sleep-field-awakenings[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-event.show-notes-sm .timeline-sleep-field-notes[b-8gcjxy15mi] {
        display: flex;
    }
}

/* Mobile wider (≥580px): TTFA joins show-fields tier */
@media (min-width: 580px) and (max-width: 767px) {
    .timeline-sleep-event.show-fields .timeline-sleep-field-ttfa[b-8gcjxy15mi] {
        display: flex;
    }
}

/* Mobile wide (≥705px): Awakenings joins show-fields, Notes shifts */
@media (min-width: 705px) and (max-width: 767px) {
    .timeline-sleep-event.show-fields .timeline-sleep-field-awakenings[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-event.show-notes-sm2 .timeline-sleep-field-notes[b-8gcjxy15mi] {
        display: flex;
    }
}

/* Hide View Details when all data is fully visible (notes unclamped) */
@media (min-width: 768px) {
    .timeline-sleep-event.all-visible-md .timeline-sleep-view-details[b-8gcjxy15mi] {
        display: none;
    }
}

@media (min-width: 1024px) {
    .timeline-sleep-event.all-visible-md .timeline-sleep-view-details[b-8gcjxy15mi],
    .timeline-sleep-event.all-visible-md2 .timeline-sleep-view-details[b-8gcjxy15mi] {
        display: block;
    }

    .timeline-sleep-event.all-visible-lg .timeline-sleep-view-details[b-8gcjxy15mi] {
        display: none;
    }
}

.timeline-sleep-event[b-8gcjxy15mi] >  .timeline-event-menu-wrapper,
.timeline-update-details-btn[b-8gcjxy15mi] {
    position: absolute;
    top: 15px;
    right: 20px;
}

/* Preliminary events - generated from schedule */
.timeline-sleep-event.preliminary[b-8gcjxy15mi] {
    border: 2px dashed;
}

.timeline-update-details-btn[b-8gcjxy15mi] {
    align-self: flex-start;
    white-space: nowrap;
    display: flex;
    align-items: center;
    gap: 6px;
    border: 1px solid var(--bs-border-color);
    border-radius: var(--bs-border-radius);
    background: var(--bs-body-bg);
    color: var(--bs-body-color);
    cursor: pointer;
    padding: 7px 10px;
    font-size: 12px;
    transition: background-color 0.15s;
}

.timeline-update-details-btn:hover[b-8gcjxy15mi],
.timeline-update-details-btn:active[b-8gcjxy15mi] {
    background-color: var(--bs-secondary-bg);
}

@media (max-width: 399px) {
    .timeline-update-details-text[b-8gcjxy15mi] {
        display: none;
    }

    .timeline-update-details-btn[b-8gcjxy15mi] {
        padding: 7px;
    }
}

/* Tablet+ sleep layout & sizes */
@media (min-width: 768px) {
    /* Row layout with wrap: title+status in first row, content wraps */
    .timeline-sleep-details[b-8gcjxy15mi] {
        flex-direction: row;
        flex-wrap: wrap;
        align-content: flex-start;
        column-gap: 12px;
        row-gap: var(--timeline-sleep-gap);
    }

    .timeline-sleep-header[b-8gcjxy15mi] {
        font-size: 20px;
        flex-grow: 1;
        height: auto;
    }

    .timeline-sleep-name[b-8gcjxy15mi] {
        font-size: 20px;
    }

    .timeline-sleep-time[b-8gcjxy15mi] {
        display: none;
    }

    .timeline-sleep-status[b-8gcjxy15mi] {
        display: none;
        width: auto;
        order: 1;
        padding-right: 60px;
        flex-direction: row-reverse;
        gap: 20px;
        transition: padding-right 0.3s ease;
    }

    .timeline-sleep-event.show-status-md .timeline-sleep-status[b-8gcjxy15mi] {
        display: flex;
    }

    .diary-readonly .timeline-sleep-status[b-8gcjxy15mi] {
        padding-right: 0;
    }

    .timeline-sleep-event[b-8gcjxy15mi]  .timeline-event-menu {
        width: 40px !important;
        height: 40px !important;
    }

    .timeline-sleep-content[b-8gcjxy15mi] {
        order: 3;
        flex-basis: 100%;
    }

    /* Font sizes */
    .timeline-sleep-field[b-8gcjxy15mi] {
        gap: 7px;
    }

    .timeline-sleep-field-label[b-8gcjxy15mi] {
        font-size: 20px;
    }

    .timeline-sleep-field-value[b-8gcjxy15mi] {
        font-size: 16px;
    }

    .timeline-sleep-quality[b-8gcjxy15mi] {
        font-size: 20px;
    }

    .timeline-sleep-quality svg[b-8gcjxy15mi] {
        width: 26px;
        height: 26px;
    }

    .timeline-sleep-on-track[b-8gcjxy15mi] {
        font-size: 16px;
        padding: 8px;
    }

    .timeline-sleep-on-track-text[b-8gcjxy15mi] {
        display: none;
    }

    .timeline-sleep-on-track-icon[b-8gcjxy15mi] {
        width: 24px;
        height: 24px;
    }

    .timeline-sleep-on-track-icon[b-8gcjxy15mi]  img {
        width: 14px;
        height: auto;
    }
}

@media (min-width: 880px) {
    .timeline-sleep-on-track-text[b-8gcjxy15mi] {
        display: inline;
    }

    .timeline-sleep-on-track[b-8gcjxy15mi] {
        padding: 8px 10px;
    }
}

/* Tablet progressive disclosure (not blanket show) */
@media (min-width: 768px) and (max-width: 1023px) {
    .timeline-sleep-event.show-fields-md .timeline-sleep-field-basic[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-event.show-ttfa-md .timeline-sleep-field-ttfa[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-event.show-awakenings-md .timeline-sleep-field-awakenings[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-event.show-notes-md .timeline-sleep-field-notes[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-notes .timeline-sleep-field-value[b-8gcjxy15mi] {
        -webkit-line-clamp: var(--notes-line-clamp, 3);
    }

    .timeline-sleep-name[b-8gcjxy15mi] {
        font-size: 20px;
    }

    .timeline-sleep-time[b-8gcjxy15mi] {
        font-size: 16px;
    }

    .timeline-update-details-btn[b-8gcjxy15mi] {
        padding: 6px 14px;
        font-size: 0.875rem;
    }
}

@media (min-width: 800px) {
    .timeline-sleep-time[b-8gcjxy15mi] {
        display: block;
    }

    .timeline-sleep-event.show-fields-md .timeline-sleep-time[b-8gcjxy15mi] {
        display: none;
    }

    .timeline-sleep-event.all-visible-md .timeline-sleep-view-details[b-8gcjxy15mi] {
        display: block;
    }

    .timeline-sleep-event.all-visible-md2 .timeline-sleep-view-details[b-8gcjxy15mi] {
        display: none;
    }
}

/* Tablet wider (≥800px): Awakenings joins TTFA, Notes shifts */
@media (min-width: 800px) and (max-width: 1023px) {
    .timeline-sleep-event.show-ttfa-md .timeline-sleep-field-awakenings[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-event.show-notes-md2 .timeline-sleep-field-notes[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-notes .timeline-sleep-field-value[b-8gcjxy15mi] {
        -webkit-line-clamp: var(--notes-line-clamp-md2, 3);
    }
}

/* Tablet wider (≥860px): TTFA joins show-fields-md, all visible from 6h10m */
@media (min-width: 860px) and (max-width: 1023px) {
    .timeline-sleep-event.show-fields-md .timeline-sleep-field-ttfa[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-event.show-ttfa .timeline-sleep-notes .timeline-sleep-field-value[b-8gcjxy15mi] {
        -webkit-line-clamp: 9999;
    }

    .timeline-sleep-event.show-ttfa .timeline-sleep-view-details[b-8gcjxy15mi] {
        display: none;
    }
}

/* PC sleep layout — grid for single-row fields with full-width notes */
@media (min-width: 1024px) {
    .timeline-sleep-details[b-8gcjxy15mi] {
        display: grid;
        grid-template-columns: minmax(115px, 12%) 1fr auto;
        align-items: start;
        column-gap: var(--timeline-details-gap);
        row-gap: var(--timeline-sleep-gap);
    }

    .timeline-sleep-header[b-8gcjxy15mi] {
        grid-column: 1 / -1;
        grid-row: 1;
        margin-right: 0;
        gap: 12px;
    }

    .timeline-sleep-time[b-8gcjxy15mi] {
        display: block;
    }

    .timeline-sleep-time-range[b-8gcjxy15mi] {
        display: inline;
    }

    .timeline-sleep-status[b-8gcjxy15mi] {
        grid-column: 3;
        grid-row: 1;
    }

    .timeline-sleep-content[b-8gcjxy15mi] {
        display: contents;
    }

    .timeline-sleep-fields[b-8gcjxy15mi] {
        display: contents;
    }

    .timeline-sleep-row[b-8gcjxy15mi] {
        grid-column: 2;
        grid-row: 1;
        column-gap: var(--timeline-details-gap);
        row-gap: 30px;
    }

    .timeline-sleep-notes-row[b-8gcjxy15mi] {
        grid-column: 2 / -1;
        grid-row: 2;
    }

    .timeline-sleep-event.preliminary .timeline-sleep-row:not(.timeline-sleep-notes-row)[b-8gcjxy15mi] {
        padding-right: 180px;
    }

    /* PC progressive disclosure */
    .timeline-sleep-event.show-time-lg .timeline-sleep-time[b-8gcjxy15mi] {
        display: none;
    }

    .timeline-sleep-event.show-time-lg .timeline-sleep-field-time[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-event.show-duration-lg .timeline-sleep-field-duration[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-event.show-ttfa-lg .timeline-sleep-field-ttfa[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-event.show-awakenings-lg .timeline-sleep-field-awakenings[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-event.show-notes-md .timeline-sleep-field-notes[b-8gcjxy15mi] {
        display: none;
    }

    .timeline-sleep-event.show-notes-lg .timeline-sleep-field-notes[b-8gcjxy15mi] {
        display: flex;
    }

    /* PC notes line clamp */
    .timeline-sleep-notes .timeline-sleep-field-value[b-8gcjxy15mi] {
        -webkit-line-clamp: var(--notes-line-clamp-lg, 3);
    }
}

/* PC wider (≥1070px): -20min shift */
@media (min-width: 1070px) {
    .timeline-sleep-event.show-ttfa-lg2 .timeline-sleep-field-ttfa[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-event.show-awakenings-lg2 .timeline-sleep-field-awakenings[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-event.show-notes-lg2 .timeline-sleep-field-notes[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-notes .timeline-sleep-field-value[b-8gcjxy15mi] {
        -webkit-line-clamp: var(--notes-line-clamp-lg2, 3);
    }

    .timeline-sleep-event.all-visible-lg .timeline-sleep-view-details[b-8gcjxy15mi] {
        display: block;
    }

    .timeline-sleep-event.all-visible-lg2 .timeline-sleep-view-details[b-8gcjxy15mi] {
        display: none;
    }
}

/* PC wider (≥1100px): Awakenings -20min shift */
@media (min-width: 1100px) {
    .timeline-sleep-event.show-awakenings-lg3 .timeline-sleep-field-awakenings[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-event.show-notes-lg3 .timeline-sleep-field-notes[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-notes .timeline-sleep-field-value[b-8gcjxy15mi] {
        -webkit-line-clamp: var(--notes-line-clamp-lg3, 3);
    }

    .timeline-sleep-event.all-visible-lg2 .timeline-sleep-view-details[b-8gcjxy15mi] {
        display: block;
    }

    .timeline-sleep-event.all-visible-lg3 .timeline-sleep-view-details[b-8gcjxy15mi] {
        display: none;
    }
}

/* PC wider (≥1160px): Duration joins Sleep Time, -30min shift */
@media (min-width: 1160px) {
    .timeline-sleep-event.show-time-lg .timeline-sleep-field-duration[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-event.show-ttfa-lg4 .timeline-sleep-field-ttfa[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-event.show-awakenings-lg4 .timeline-sleep-field-awakenings[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-event.show-notes-lg4 .timeline-sleep-field-notes[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-notes .timeline-sleep-field-value[b-8gcjxy15mi] {
        -webkit-line-clamp: var(--notes-line-clamp-lg4, 3);
    }

    .timeline-sleep-event.all-visible-lg3 .timeline-sleep-view-details[b-8gcjxy15mi] {
        display: block;
    }

    .timeline-sleep-event.all-visible-lg4 .timeline-sleep-view-details[b-8gcjxy15mi] {
        display: none;
    }
}

/* PC wider (≥1200px): notes unclamped from 6h */
@media (min-width: 1200px) {
    .timeline-sleep-notes .timeline-sleep-field-value[b-8gcjxy15mi] {
        -webkit-line-clamp: var(--notes-line-clamp-lg5, 3);
    }

    .timeline-sleep-event.all-visible-lg4 .timeline-sleep-view-details[b-8gcjxy15mi] {
        display: block;
    }

    .timeline-sleep-event.all-visible-lg5 .timeline-sleep-view-details[b-8gcjxy15mi] {
        display: none;
    }
}

/* PC wider (≥1345px): Awakenings joins TTFA, Notes shifts -50min */
@media (min-width: 1345px) {
    .timeline-sleep-event.show-ttfa-lg4 .timeline-sleep-field-awakenings[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-event.show-notes-lg5 .timeline-sleep-field-notes[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-notes .timeline-sleep-field-value[b-8gcjxy15mi] {
        -webkit-line-clamp: var(--notes-line-clamp-lg6, 3);
    }

    .timeline-sleep-event.all-visible-lg5 .timeline-sleep-view-details[b-8gcjxy15mi] {
        display: block;
    }

    .timeline-sleep-event.all-visible-lg6 .timeline-sleep-view-details[b-8gcjxy15mi] {
        display: none;
    }
}

/* PC wider (≥1405px): TTFA joins first row */
@media (min-width: 1405px) {
    .timeline-sleep-event.show-time-lg .timeline-sleep-field-ttfa[b-8gcjxy15mi] {
        display: flex;
    }
}

/* PC wider (≥1710px): Awakenings joins first row, Notes shifts -70min */
@media (min-width: 1710px) {
    .timeline-sleep-event.show-time-lg .timeline-sleep-field-awakenings[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-event.show-notes-lg6 .timeline-sleep-field-notes[b-8gcjxy15mi] {
        display: flex;
    }

    .timeline-sleep-notes .timeline-sleep-field-value[b-8gcjxy15mi] {
        -webkit-line-clamp: var(--notes-line-clamp-lg7, 3);
    }

    .timeline-sleep-event.all-visible-lg6 .timeline-sleep-view-details[b-8gcjxy15mi] {
        display: block;
    }

    .timeline-sleep-event.all-visible-lg7 .timeline-sleep-view-details[b-8gcjxy15mi] {
        display: none;
    }
}
/* /Views/Shared/_AuthLayout.cshtml.rz.scp.css */
.auth-card[b-7lgpguhb9m] {
  width: calc(100% - 40px);
  max-width: 654px;
  border: none;
  border-radius: 10px;
  padding: 50px 60px;
}

.auth-card.wide-card[b-7lgpguhb9m] {
  max-width: 920px;
  padding: 30px 20px;
}

@media (min-width: 768px) {
  .auth-card[b-7lgpguhb9m] {
    border-radius: 20px;
  }

  .auth-card.wide-card[b-7lgpguhb9m] {
    padding: 50px 30px;
  }
}

.auth-card.card-header-no-margin > .card-header[b-7lgpguhb9m] {
  margin-bottom: 0;
}

.auth-card .card-header[b-7lgpguhb9m],
.auth-card .card-body[b-7lgpguhb9m],
.auth-card .card-footer[b-7lgpguhb9m] {
  background: none;
  border-width: 0;
  padding: 0;
}

.auth-card .card-header[b-7lgpguhb9m] {
  margin-bottom: 45px;
}

.card-logo[b-7lgpguhb9m] {
  height: 63px;
  width: auto;
  margin-bottom: 47px;
  user-select: none;
}

[b-7lgpguhb9m] .card-title {
  font-size: 24px;
  margin-bottom: 12px;
}

[b-7lgpguhb9m] .card-subtitle {
  font-size: 20px;
}

@media (min-width: 768px) {
  [b-7lgpguhb9m] .card-title {
    font-size: 30px;
  }
}
/* /Views/Shared/_Layout.cshtml.rz.scp.css */
/* /Views/Shared/_SettingsLayout.cshtml.rz.scp.css */
/* Settings layout */
.settings-layout[b-th4enmk2v4] {
  display: flex;
  flex: 1;
  min-height: 0;
}

.settings-layout[b-th4enmk2v4]  aside.side-menu {
  display: none;
}

.settings-content[b-th4enmk2v4] {
  flex: 1;
  background-color: var(--bs-body-bg);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.settings-content-body[b-th4enmk2v4] {
  flex: 1;
  min-height: 0;
  padding: 12px 0 0;
  display: flex;
  flex-direction: column;
}

/* Mobile back header for content pages */
.settings-mobile-header[b-th4enmk2v4] {
  display: block;
  padding: 20px 20px 0;
}

/* Settings page content (::deep for child views via @RenderBody) */
.settings-content-body[b-th4enmk2v4]  .settings-page-title {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 10px;
  padding: 0 20px;
}

.settings-content-body[b-th4enmk2v4]  .settings-page-description {
  color: var(--bs-secondary-color);
  margin-bottom: 24px;
  padding: 0 20px;
}

.settings-content-body[b-th4enmk2v4]  .settings-editor-wrapper {
  margin-bottom: 30px;
}

.settings-content-body[b-th4enmk2v4]  .settings-page {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
}

.settings-content-body[b-th4enmk2v4]  .settings-page form {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  padding: 0 20px;
}

.settings-content-body[b-th4enmk2v4]  .settings-actions {
  display: flex;
  gap: 28px;
  position: sticky;
  bottom: 0;
  margin-top: auto;
  padding: 20px 0;
  background: linear-gradient(to bottom, transparent, var(--bs-body-bg) 20%);
}

.settings-content-body[b-th4enmk2v4]  .settings-actions .btn {
  flex: 0 0 calc(50% - 14px);
}

@media (max-width: 767px) {
  .settings-content-body[b-th4enmk2v4]  .settings-actions .btn {
    padding-left: 10px;
    padding-right: 10px;
  }
}

.settings-content-body[b-th4enmk2v4]  .settings-actions .btn-cancel {
  visibility: hidden;
}

.settings-content-body[b-th4enmk2v4]  .settings-actions.has-changes .btn-cancel {
  visibility: visible;
}

/* Tablet+ */
@media (min-width: 768px) {
  .settings-layout[b-th4enmk2v4]  aside.side-menu {
    display: flex;
  }

  .settings-content-body[b-th4enmk2v4] {
    padding: 16px 0 0;
  }

  .settings-content-body[b-th4enmk2v4]  .settings-page-title,
  .settings-content-body[b-th4enmk2v4]  .settings-page-description,
  .settings-content-body[b-th4enmk2v4]  .settings-page form {
    padding-left: 18px;
    padding-right: 18px;
  }

  .settings-mobile-header[b-th4enmk2v4] {
    display: none;
  }

  .settings-content-body[b-th4enmk2v4]  .settings-page-title {
    font-size: 30px;
    margin-bottom: 17px;
  }

  .settings-content-body[b-th4enmk2v4]  .settings-page-description {
    margin-bottom: 50px;
  }

  .settings-content-body[b-th4enmk2v4]  .settings-actions {
    gap: 10px;
    justify-content: flex-end;
  }

  .settings-content-body[b-th4enmk2v4]  .settings-actions .btn {
    flex: 0 0 auto;
    width: auto;
  }
}

/* Desktop */
@media (min-width: 1024px) {
  .settings-content-body[b-th4enmk2v4] {
    padding: 40px 0 0;
  }

  .settings-content-body[b-th4enmk2v4]  .settings-page-title,
  .settings-content-body[b-th4enmk2v4]  .settings-page-description,
  .settings-content-body[b-th4enmk2v4]  .settings-page form {
    padding-left: 24px;
    padding-right: 24px;
  }
}

/* Desktop: schedule time columns should stretch in settings (side menu takes space) */
@media (min-width: 1024px) {
  .settings-content-body[b-th4enmk2v4]  :is(.schedule-editor, .inconsistent-schedule-editor) .editor-time-group {
    flex: 1;
  }

  .settings-content-body[b-th4enmk2v4]  :is(.schedule-editor, .inconsistent-schedule-editor) .editor-col-start,
  .settings-content-body[b-th4enmk2v4]  :is(.schedule-editor, .inconsistent-schedule-editor) .editor-col-end {
    flex: 1;
    width: auto;
  }
}

/* Tablet: keep schedule/medication editors in mobile (stacked) layout — not enough space with side menu */
@media (min-width: 768px) and (max-width: 1023px) {
  .settings-content-body[b-th4enmk2v4]  :is(.schedule-editor, .inconsistent-schedule-editor, .medication-editor, .custom-medication-editor) .editor-title-row {
    display: none;
  }

  .settings-content-body[b-th4enmk2v4]  :is(.schedule-editor, .inconsistent-schedule-editor, .medication-editor, .custom-medication-editor) .editor-row {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    padding-right: 0;
    position: static;
  }

  .settings-content-body[b-th4enmk2v4]  :is(.schedule-editor, .inconsistent-schedule-editor, .medication-editor, .custom-medication-editor) .editor-mobile-header {
    display: flex;
    margin-bottom: 5px;
  }

  .settings-content-body[b-th4enmk2v4]  :is(.schedule-editor, .inconsistent-schedule-editor, .medication-editor, .custom-medication-editor) .editor-mobile-label {
    display: block;
  }

  .settings-content-body[b-th4enmk2v4]  :is(.schedule-editor, .inconsistent-schedule-editor, .medication-editor, .custom-medication-editor) .remove-row-btn {
    position: static;
    transform: none;
  }

  /* Revert custom section visibility (medication) */
  .settings-content-body[b-th4enmk2v4]  .custom-medication-editor .custom-section-divider,
  .settings-content-body[b-th4enmk2v4]  .custom-medication-editor .custom-section-mobile-title {
    display: block;
  }
}

/* Settings content loading state */
.settings-content.loading[b-th4enmk2v4] {
  opacity: 0.6;
  pointer-events: none;
}
/* /Views/SleepRecord/Index.cshtml.rz.scp.css */
.sleep-record-page[b-6mpoz53dhq] {
    display: flex;
    flex-direction: column;
    gap: 24px;
    overflow-y: auto;
    flex: 1;
}

/* Header */
.sleep-record-header[b-6mpoz53dhq] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px;
}

.sleep-record-header-right[b-6mpoz53dhq] {
    display: flex;
    align-items: center;
    gap: 16px;
}

/* Metric Cards */
.sleep-record-metrics-container[b-6mpoz53dhq] {
    position: relative;
}

[b-6mpoz53dhq] .metrics-toggle {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: 50%;
    cursor: pointer;
    color: var(--bs-secondary-color);
    transition: transform 0.35s ease;
}

[b-6mpoz53dhq] .metrics-toggle:hover {
    color: var(--bs-body-color);
}

.sleep-record-page.metrics-collapsed[b-6mpoz53dhq]  .metrics-toggle {
    transform: rotate(180deg);
}

.sleep-record-metrics[b-6mpoz53dhq] {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    max-height: 600px;
    overflow: hidden;
    opacity: 1;
    transition: max-height 0.35s ease, opacity 0.25s ease, margin 0.35s ease;
}

.sleep-record-page.metrics-collapsed .sleep-record-metrics[b-6mpoz53dhq] {
    max-height: 0;
    opacity: 0;
    margin: 0;
}

/* Compact metrics bar */
.sleep-record-metrics-compact[b-6mpoz53dhq] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 12px 20px;
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: var(--radius-card-sm);
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-height 0.35s ease, opacity 0.25s ease 0.1s, padding 0.35s ease;
    padding-top: 0;
    padding-bottom: 0;
}

.sleep-record-page.metrics-collapsed .sleep-record-metrics-compact[b-6mpoz53dhq] {
    max-height: 60px;
    opacity: 1;
    padding-top: 12px;
    padding-bottom: 12px;
}

.metrics-compact-item[b-6mpoz53dhq] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.metrics-compact-label[b-6mpoz53dhq] {
    font-size: 13px;
    color: var(--bs-secondary-color);
}

.metrics-compact-value[b-6mpoz53dhq] {
    font-size: 15px;
    font-weight: 600;
    color: var(--bs-body-color);
}

.metrics-compact-separator[b-6mpoz53dhq] {
    width: 1px;
    height: 20px;
    background: var(--bs-border-color);
}

.sleep-record-metric-card[b-6mpoz53dhq] {
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: var(--radius-card-sm);
    padding: 24px 30px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 16px;
}

.sleep-record-metric-top[b-6mpoz53dhq] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

.sleep-record-metric-info[b-6mpoz53dhq] {
    display: flex;
    flex-direction: column;
}

.sleep-record-metric-label[b-6mpoz53dhq] {
    font-size: 26px;
    font-weight: 400;
    line-height: 1.3;
    color: var(--bs-body-color);
}

.sleep-record-metric-bottom[b-6mpoz53dhq] {
    display: flex;
    flex-direction: row;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
}

.sleep-record-metric-value[b-6mpoz53dhq] {
    font-size: 26px;
    font-weight: 400;
}

.sleep-record-metric-icon[b-6mpoz53dhq] {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.sleep-record-metric-icon--purple[b-6mpoz53dhq] { background: #69329A1A; }
.sleep-record-metric-icon--blue[b-6mpoz53dhq] { background: #4876C61A; }
.sleep-record-metric-icon--pink[b-6mpoz53dhq] { background: #F549AB1A; }
.sleep-record-metric-icon--green[b-6mpoz53dhq] { background: #29B2231A; }

.sleep-record-compliance-link[b-6mpoz53dhq] {
    color: var(--admin-primary);
    font-size: 20px;
    text-decoration: none;
    font-weight: 500;
}

.sleep-record-compliance-link:hover[b-6mpoz53dhq] {
    text-decoration: underline;
}

/* Grid Card */
.sleep-record-grid-card[b-6mpoz53dhq] {
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: var(--radius-card);
    padding: 0;
    overflow: hidden;
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

.sleep-record-grid-wrapper[b-6mpoz53dhq] {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

/* Calendar Grid */
[b-6mpoz53dhq] .src-calendar {
    display: flex;
    flex: 1;
    min-height: 0;
}

[b-6mpoz53dhq] .src-hours {
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
    width: 80px;
    background: var(--bs-body-bg);
    z-index: 4;
}

[b-6mpoz53dhq] .src-days-scroll {
    flex: 1;
    min-width: 0;
    overflow: auto;
}

[b-6mpoz53dhq] .src-days-grid {
    display: grid;
    grid-template-columns: repeat(var(--src-day-count, 7), minmax(220px, 1fr));
}

[b-6mpoz53dhq] .src-hours-header {
    height: var(--hour-height);
    flex-shrink: 0;
    position: sticky;
    top: 0;
    z-index: 4;
    background: var(--bs-body-bg);
    display: flex;
    align-items: center;
    justify-content: center;
}

[b-6mpoz53dhq] .src-hour-label {
    height: var(--hour-height);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: var(--bs-secondary-color);
}

[b-6mpoz53dhq] .src-day-col {
    display: flex;
    flex-direction: column;
    border-left: 1px solid var(--bs-border-color);
    min-width: 0;
    overflow: hidden;
}

[b-6mpoz53dhq] .src-day-header {
    height: var(--hour-height);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: sticky;
    top: 0;
    z-index: 3;
    background: var(--bs-body-bg);
    border-bottom: 1px solid var(--bs-border-color);
    gap: 2px;
}

[b-6mpoz53dhq] .src-day-name {
    font-size: 26px;
    font-weight: 400;
    color: var(--bs-body-color);
}

[b-6mpoz53dhq] .src-day-date {
    font-size: 20px;
    color: var(--bs-secondary-color);
}

[b-6mpoz53dhq] .src-day-tz {
    display: inline-block;
    margin-top: 2px;
    color: var(--bs-secondary-color);
    font-size: 12px;
    font-variant-numeric: tabular-nums;
}

[b-6mpoz53dhq] .src-day-body {
    position: relative;
}

[b-6mpoz53dhq] .src-grid-row {
    height: var(--hour-height);
    border-bottom: 1px solid var(--bs-border-color-translucent);
}

/* Events */
[b-6mpoz53dhq] .src-event {
    position: absolute;
    left: 5px;
    right: 5px;
    z-index: 1;
    border-radius: 6px;
    padding: 6px 4px;
    font-size: 11px;
    overflow: hidden;
}

[b-6mpoz53dhq] .src-event--recommended {
    --recommended-color: #093D96;
    left: 0;
    right: 0;
    background: color-mix(in srgb, var(--recommended-color) 6%, transparent);
    border: 2px dashed color-mix(in srgb, var(--recommended-color) 35%, transparent);
    border-radius: 0;
    pointer-events: none;
    z-index: 0;
}

[b-6mpoz53dhq] .src-event--recommended .src-event__label {
    position: absolute;
    top: 9px;
    left: 9px;
    font-size: 14px;
    font-weight: 500;
    color: var(--bs-secondary-color);
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    padding: 7px 14px;
    border-radius: 10px;
    line-height: 1.4;
}

[b-6mpoz53dhq] .src-event--work {
    left: 5px;
    right: 5px;
    background: linear-gradient(color-mix(in srgb, var(--bs-secondary) 15%, transparent), color-mix(in srgb, var(--bs-secondary) 15%, transparent)), var(--bs-body-bg);
    border-radius: 6px;
    padding: 8px 10px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    z-index: 1;
}

[b-6mpoz53dhq] .src-event--work .src-event__label {
    font-size: 20px;
    font-weight: 700;
    color: var(--bs-body-color);
}

[b-6mpoz53dhq] .src-event--work .src-event__time {
    font-size: 14px;
    color: var(--bs-secondary-color);
}

/* Events split across the diary boundary: flatten corners on the cut side. */
[b-6mpoz53dhq] .src-event--continued-down {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}
[b-6mpoz53dhq] .src-event--continued-up {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

[b-6mpoz53dhq] .src-event--point {
    display: flex;
    align-items: center;
    gap: 6px;
    background: linear-gradient(color-mix(in srgb, var(--event-color, var(--bs-border-color)) 10%, transparent), color-mix(in srgb, var(--event-color, var(--bs-border-color)) 10%, transparent)), var(--bs-body-bg);
    border: 1px solid var(--event-color, var(--bs-border-color));
    min-height: 28px;
    z-index: 2;
    transform: translateY(-50%);
}

[b-6mpoz53dhq] .src-event__icon-wrapper {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    align-self: baseline;
    width: 29px;
    height: 29px;
    border: 1px solid var(--event-color, var(--bs-border-color));
    border-radius: 50%;
}

[b-6mpoz53dhq] .src-event__icon {
    flex-shrink: 0;
}

[b-6mpoz53dhq] .src-event__body {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
    flex: 1;
}

[b-6mpoz53dhq] .src-event__info {
    display: flex;
    gap: 6px;
    justify-content: space-between;
    min-width: 0;
    flex: 1;
}

[b-6mpoz53dhq] .src-event__label {
    font-size: 16px;
    font-weight: 700;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

[b-6mpoz53dhq] .src-event__detail {
    font-size: 14px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

[b-6mpoz53dhq] .src-event__time {
    font-size: 14px;
    color: var(--bs-secondary-color);
}

[b-6mpoz53dhq] .src-event__dosage {
    font-size: 14px;
    color: var(--bs-secondary-color);
    white-space: nowrap;
}

/* Day boundary at midnight */
[b-6mpoz53dhq] .src-day-boundary {
    position: absolute;
    left: 0;
    right: 0;
    height: 0;
    border-top: 2px dashed rgba(var(--bs-secondary-color-rgb, 108, 117, 125), 0.4);
    z-index: 1;
    pointer-events: none;
}

[b-6mpoz53dhq] .src-hours-body {
    position: relative;
}

[b-6mpoz53dhq] .src-next-day-badge {
    position: absolute;
    left: 50%;
    transform: translate(-32%, -50%);
    padding: 2px 8px;
    background: var(--bs-secondary-color);
    color: var(--bs-body-bg);
    font-size: 10px;
    border-radius: var(--bs-border-radius-sm);
    white-space: nowrap;
    line-height: 1.3;
    z-index: 2;
}

[b-6mpoz53dhq] .src-hour-label--midnight {
    padding-top: 10px;
}

[b-6mpoz53dhq] .src-day-col--future {
    opacity: 0.4;
    pointer-events: none;
}

[b-6mpoz53dhq] .src-day-col--future .src-day-body {
    background: repeating-linear-gradient(
        -45deg,
        transparent,
        transparent 8px,
        var(--bs-border-color-translucent) 8px,
        var(--bs-border-color-translucent) 9px
    );
}

[b-6mpoz53dhq] .src-empty {
    text-align: center;
    color: var(--bs-secondary-color);
    padding: 40px;
}

/* Responsive */
@media (min-width: 768px) {
    .sleep-record-metrics[b-6mpoz53dhq] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 1200px) {
    .sleep-record-metrics[b-6mpoz53dhq] {
        grid-template-columns: repeat(4, 1fr);
    }
}
/* /Views/SleepRecord/Partials/_SleepRecordExerciseEvent.cshtml.rz.scp.css */
.src-exercise-event[b-mg3vt6bo3u] {
    position: absolute;
    left: 5px;
    right: 5px;
    z-index: 1;
    border-radius: 6px;
    padding: 8px 10px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    overflow: hidden;
    background: linear-gradient(color-mix(in srgb, var(--event-color) 15%, transparent), color-mix(in srgb, var(--event-color) 15%, transparent)), var(--bs-body-bg);
}

.src-exercise-name[b-mg3vt6bo3u] {
    font-size: 20px;
    font-weight: 700;
    color: var(--bs-body-color);
}

.src-exercise-time[b-mg3vt6bo3u] {
    font-size: 14px;
    color: var(--bs-secondary-color);
}

.src-exercise-view-details[b-mg3vt6bo3u] {
    position: absolute;
    bottom: 8px;
    right: 10px;
    font-size: 14px;
    color: var(--bs-body-color);
    text-decoration: underline;
    z-index: 2;
}

.src-exercise-view-details:hover[b-mg3vt6bo3u] {
    opacity: 0.6;
}

/* See _SleepRecordSleepEvent.cshtml.css for the rationale. */
.src-exercise-event.src-exercise-event--continued-down[b-mg3vt6bo3u] {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}
.src-exercise-event.src-exercise-event--continued-up[b-mg3vt6bo3u] {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}
/* /Views/SleepRecord/Partials/_SleepRecordSleepEvent.cshtml.rz.scp.css */
.src-sleep-event[b-4zeq9pddsi] {
    position: absolute;
    left: 5px;
    right: 5px;
    z-index: 1;
    border-radius: 6px;
    padding: 8px 10px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    overflow: hidden;
}

.src-sleep-header[b-4zeq9pddsi] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.src-sleep-name[b-4zeq9pddsi] {
    font-size: 20px;
    font-weight: 700;
    color: var(--bs-body-color);
}

.src-sleep-quality[b-4zeq9pddsi] {
    display: flex;
    align-items: center;
    gap: 3px;
    font-size: 11px;
    color: var(--bs-warning);
}

.src-sleep-time[b-4zeq9pddsi] {
    font-size: 14px;
    color: var(--bs-secondary-color);
}

.src-sleep-on-track[b-4zeq9pddsi] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 6px;
    border-radius: 8px;
    background: var(--bs-body-bg);
    color: #FF8400;
    font-size: 10px;
    font-weight: 500;
    width: fit-content;
}

.src-sleep-on-track-icon[b-4zeq9pddsi] {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: color-mix(in srgb, #FF8400 10%, transparent);
    border: 1px solid #FF8400;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.src-sleep-view-details[b-4zeq9pddsi] {
    position: absolute;
    bottom: 8px;
    right: 10px;
    font-size: 14px;
    color: var(--bs-body-color);
    text-decoration: underline;
    z-index: 2;
}

.src-sleep-view-details:hover[b-4zeq9pddsi] {
    opacity: 0.6;
}

/* Events split across a diary boundary: flatten the corners on the cut edge.
   --continued-down is the start block in the original column (extends past
   bottom into the next diary); --continued-up is the carryover tail in the
   next column (continues from above). */
.src-sleep-event.src-sleep-event--continued-down[b-4zeq9pddsi] {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}
.src-sleep-event.src-sleep-event--continued-up[b-4zeq9pddsi] {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}
