/* _content/BusinessPortal/Components/EmbedTemplates/EventGroupLandingPage.razor.rz.scp.css */
.eglp-container[b-nuu7uqkkgw] {
    max-width: 900px;
    margin: 0 auto;
    font-family: var(--embed-font, inherit);
    color: var(--embed-text, var(--text-primary, #1a1a2e));
}

.eglp-banner[b-nuu7uqkkgw] {
    width: 100%;
    max-height: 350px;
    overflow: hidden;
    border-radius: 0 0 1rem 1rem;
}

.eglp-banner img[b-nuu7uqkkgw] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.eglp-content[b-nuu7uqkkgw] {
    padding: 1.5rem 1.25rem 2rem;
}

/* Header */
.eglp-header[b-nuu7uqkkgw] {
    text-align: center;
    margin-bottom: 1.5rem;
}

.eglp-venue-name[b-nuu7uqkkgw] {
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text-secondary, #64748b);
    margin: 0 0 0.25rem;
}

.eglp-title[b-nuu7uqkkgw] {
    font-size: 2rem;
    font-weight: 800;
    margin: 0 0 0.5rem;
    font-family: var(--embed-heading-font, inherit);
    color: var(--embed-text, var(--text-primary, #1a1a2e));
}

.eglp-badge[b-nuu7uqkkgw] {
    display: inline-block;
    padding: 0.25rem 0.75rem;
    border-radius: 2rem;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.eglp-badge-upcoming[b-nuu7uqkkgw] {
    background: #fef3c7;
    color: #92400e;
}

.eglp-badge-ended[b-nuu7uqkkgw] {
    background: #fee2e2;
    color: #991b1b;
}

/* Info */
.eglp-info[b-nuu7uqkkgw] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1.25rem;
    margin-bottom: 1.25rem;
}

.eglp-info-item[b-nuu7uqkkgw] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.9rem;
    color: var(--text-secondary, #64748b);
}

.eglp-info-item i[b-nuu7uqkkgw] {
    color: var(--embed-primary, #3B82F6);
    font-size: 1rem;
}

/* Description */
.eglp-description[b-nuu7uqkkgw] {
    max-width: 700px;
    margin: 0 auto 2rem;
    text-align: center;
}

.eglp-description p[b-nuu7uqkkgw] {
    font-size: 0.95rem;
    line-height: 1.6;
    color: var(--text-secondary, #64748b);
    margin: 0;
}

/* Section titles */
.eglp-section-title[b-nuu7uqkkgw] {
    font-size: 1.25rem;
    font-weight: 700;
    margin: 0 0 1rem;
    font-family: var(--embed-heading-font, inherit);
    color: var(--embed-text, var(--text-primary, #1a1a2e));
}

/* Ticket list */
.eglp-tickets[b-nuu7uqkkgw] {
    margin-bottom: 2rem;
}

.eglp-ticket-list[b-nuu7uqkkgw] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.eglp-ticket-card[b-nuu7uqkkgw] {
    display: flex;
    background: var(--embed-card-bg, var(--card-bg, #fff));
    border-radius: 0.75rem;
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
    border: 1px solid var(--border-color, rgba(0, 0, 0, 0.08));
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.eglp-ticket-card:hover[b-nuu7uqkkgw] {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}

.eglp-ticket-image[b-nuu7uqkkgw] {
    width: 140px;
    min-height: 120px;
    object-fit: cover;
    flex-shrink: 0;
}

.eglp-ticket-body[b-nuu7uqkkgw] {
    padding: 1rem 1.25rem;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.eglp-ticket-header[b-nuu7uqkkgw] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 0.75rem;
}

.eglp-ticket-name[b-nuu7uqkkgw] {
    font-size: 1.05rem;
    font-weight: 700;
    margin: 0;
    font-family: var(--embed-heading-font, inherit);
    color: var(--embed-text, var(--text-primary, #1a1a2e));
}

.eglp-ticket-meta[b-nuu7uqkkgw] {
    font-size: 0.8rem;
    color: var(--text-secondary, #64748b);
}

.eglp-ticket-price[b-nuu7uqkkgw] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--embed-primary, #3B82F6);
    white-space: nowrap;
}

.eglp-ticket-subtitle[b-nuu7uqkkgw] {
    font-size: 0.85rem;
    color: var(--text-secondary, #64748b);
    font-style: italic;
    margin: 0;
}

.eglp-ticket-desc[b-nuu7uqkkgw] {
    font-size: 0.85rem;
    color: var(--text-secondary, #64748b);
    line-height: 1.4;
    margin: 0;
}

/* Actions */
.eglp-ticket-actions[b-nuu7uqkkgw] {
    margin-top: auto;
}

.eglp-slot-buttons[b-nuu7uqkkgw] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.eglp-date-group[b-nuu7uqkkgw] {
    margin-bottom: 0.65rem;
}

.eglp-date-group:last-child[b-nuu7uqkkgw] {
    margin-bottom: 0;
}

.eglp-date-label[b-nuu7uqkkgw] {
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text-secondary, #64748b);
    margin-bottom: 0.25rem;
}

.eglp-slot-btn[b-nuu7uqkkgw] {
    border-radius: 2rem;
    font-size: 0.78rem;
    padding: 0.35rem 0.9rem;
    font-weight: 600;
    border: none;
    cursor: pointer;
    background: var(--embed-primary, #3B82F6);
    color: white;
    transition: all 0.15s;
}

.eglp-slot-btn:hover[b-nuu7uqkkgw] {
    filter: brightness(1.1);
    transform: translateY(-1px);
}

.eglp-more-slots[b-nuu7uqkkgw] {
    font-size: 0.75rem;
    color: var(--text-secondary, #64748b);
    align-self: center;
    padding-left: 0.25rem;
}

.eglp-pick-date-btn[b-nuu7uqkkgw] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1.25rem;
    border-radius: 0.5rem;
    font-size: 0.85rem;
    font-weight: 600;
    border: 2px solid var(--embed-primary, #3B82F6);
    background: transparent;
    color: var(--embed-primary, #3B82F6);
    cursor: pointer;
    transition: all 0.2s;
}

.eglp-pick-date-btn:hover[b-nuu7uqkkgw] {
    background: var(--embed-primary, #3B82F6);
    color: white;
}

.eglp-next-date[b-nuu7uqkkgw] {
    font-size: 0.75rem;
    font-weight: 400;
    opacity: 0.8;
}

.eglp-unavailable-btn[b-nuu7uqkkgw] {
    padding: 0.5rem 1.25rem;
    border-radius: 0.5rem;
    font-size: 0.85rem;
    font-weight: 600;
    border: 2px solid var(--border-color, rgba(0, 0, 0, 0.15));
    background: transparent;
    color: var(--text-secondary, #64748b);
    cursor: not-allowed;
    opacity: 0.6;
}

/* Empty state */
.eglp-empty[b-nuu7uqkkgw] {
    text-align: center;
    padding: 2rem;
    color: var(--text-secondary, #64748b);
}

/* Gallery */
.eglp-gallery[b-nuu7uqkkgw] {
    margin-top: 2rem;
}

.eglp-gallery-grid[b-nuu7uqkkgw] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 0.75rem;
}

.eglp-gallery-item[b-nuu7uqkkgw] {
    border-radius: 0.5rem;
    overflow: hidden;
    aspect-ratio: 4/3;
}

.eglp-gallery-item img[b-nuu7uqkkgw] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.eglp-gallery-item img:hover[b-nuu7uqkkgw] {
    transform: scale(1.05);
}

/* Mobile */
@media (max-width: 576px) {
    .eglp-content[b-nuu7uqkkgw] {
        padding: 1rem 0.75rem 1.5rem;
    }

    .eglp-title[b-nuu7uqkkgw] {
        font-size: 1.5rem;
    }

    .eglp-ticket-card[b-nuu7uqkkgw] {
        flex-direction: column;
    }

    .eglp-ticket-image[b-nuu7uqkkgw] {
        width: 100%;
        height: 160px;
    }

    .eglp-gallery-grid[b-nuu7uqkkgw] {
        grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    }
}
/* _content/BusinessPortal/Components/EmployeeScheduling/TimeCardEditorModal.razor.rz.scp.css */
/* ============================================================
   TimeCardEditorModal — rich edit/create UI for TimeClockEntry.
   Visual structure intentionally mirrors the Homebase editor.
   ============================================================ */

.tce-backdrop[b-cxx0wjjgzx] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(2px);
    z-index: 10010;
    animation: tce-fade-in-b-cxx0wjjgzx 120ms ease-out;
}

.tce-backdrop-top[b-cxx0wjjgzx] {
    z-index: 10020;
}

.tce-shell[b-cxx0wjjgzx] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: min(560px, calc(100vw - 32px));
    max-height: calc(100vh - 48px);
    background: var(--sh-bg, #fff);
    border-radius: 16px;
    box-shadow: 0 24px 48px -12px rgba(15, 23, 42, 0.35), 0 0 0 1px rgba(15, 23, 42, 0.05);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    z-index: 10011;
    animation: tce-pop-b-cxx0wjjgzx 160ms cubic-bezier(0.2, 0.9, 0.4, 1.1);
}

.tce-shell-confirm[b-cxx0wjjgzx] {
    width: min(420px, calc(100vw - 32px));
    z-index: 10021;
}

@keyframes tce-fade-in-b-cxx0wjjgzx {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes tce-pop-b-cxx0wjjgzx {
    from { opacity: 0; transform: translate(-50%, -50%) scale(0.96); }
    to { opacity: 1; transform: translate(-50%, -50%) scale(1); }
}

/* ── Status bar ───────────────────────────── */

.tce-status-bar[b-cxx0wjjgzx] {
    padding: 10px 20px;
    font-size: 13px;
    font-weight: 500;
    text-align: center;
    background: #e0f2fe;
    color: #075985;
    border-bottom: 1px solid rgba(15, 23, 42, 0.06);
}

.tce-status-progress[b-cxx0wjjgzx] { background: #d1fae5; color: #065f46; }
.tce-status-success[b-cxx0wjjgzx]  { background: #f3f4f6; color: #374151; }
.tce-status-warning[b-cxx0wjjgzx]  { background: #fef3c7; color: #92400e; }
.tce-status-info[b-cxx0wjjgzx]     { background: #e0f2fe; color: #075985; }
.tce-status-danger[b-cxx0wjjgzx]   { background: #fee2e2; color: #991b1b; }

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

.tce-header[b-cxx0wjjgzx] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 18px 24px 8px 24px;
    gap: 12px;
}

.tce-date-label[b-cxx0wjjgzx] {
    font-size: 11px;
    letter-spacing: 0.08em;
    color: #6b7280;
    font-weight: 600;
    margin-bottom: 2px;
}

.tce-emp-name[b-cxx0wjjgzx] {
    font-size: 22px;
    font-weight: 700;
    color: #0f172a;
    line-height: 1.15;
}

.tce-emp-picker[b-cxx0wjjgzx] {
    font-size: 18px;
    font-weight: 600;
    color: #0f172a;
    line-height: 1.15;
    background-color: #f8fafc;
    border: 1px solid #cbd5e1;
    border-radius: 6px;
    padding: 6px 30px 6px 10px;
    max-width: 320px;
}

    .tce-emp-picker:focus[b-cxx0wjjgzx] {
        border-color: #3b82f6;
        outline: 2px solid rgba(59, 130, 246, 0.25);
        outline-offset: 0;
    }

.tce-header-actions[b-cxx0wjjgzx] {
    display: flex;
    gap: 6px;
    align-items: center;
}

.tce-icon-btn[b-cxx0wjjgzx] {
    background: transparent;
    border: 1px solid transparent;
    border-radius: 8px;
    padding: 6px 10px;
    font-size: 13px;
    color: #475569;
    cursor: pointer;
    transition: background 80ms;
}

.tce-icon-btn:hover[b-cxx0wjjgzx] {
    background: rgba(15, 23, 42, 0.05);
}

.tce-icon-btn.tce-danger[b-cxx0wjjgzx] {
    color: #b91c1c;
    border-color: rgba(185, 28, 28, 0.2);
}

.tce-icon-btn.tce-danger:hover[b-cxx0wjjgzx] {
    background: rgba(185, 28, 28, 0.08);
}

/* ── Employee row (subtitle + venue) ──────── */

.tce-emp-row[b-cxx0wjjgzx] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 24px 16px 24px;
    border-bottom: 1px solid rgba(15, 23, 42, 0.06);
    flex-wrap: wrap;
    font-size: 13px;
    color: #6b7280;
}

.tce-edit-icon[b-cxx0wjjgzx] {
    color: #d97706;
    font-size: 12px;
}

.tce-emp-subtitle[b-cxx0wjjgzx] {
    font-style: italic;
    color: #6b7280;
}

.tce-emp-suffix[b-cxx0wjjgzx] {
    color: #94a3b8;
    margin-left: auto;
}

.tce-locked-badge[b-cxx0wjjgzx] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 8px;
    border-radius: 4px;
    background: #fef3c7;
    color: #92400e;
    font-size: 11px;
    font-weight: 600;
    border: 1px solid #fcd34d;
    cursor: help;
}

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

.tce-body[b-cxx0wjjgzx] {
    overflow-y: auto;
    padding: 4px 24px 16px 24px;
    flex: 1;
}

.tce-section[b-cxx0wjjgzx] {
    padding: 16px 0;
    border-bottom: 1px solid rgba(15, 23, 42, 0.06);
}

.tce-section:last-child[b-cxx0wjjgzx] {
    border-bottom: none;
}

.tce-section-head[b-cxx0wjjgzx] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 600;
    color: #0f172a;
    margin-bottom: 10px;
}

.tce-section-head i[b-cxx0wjjgzx] {
    color: #6b7280;
    font-size: 16px;
}

.tce-section-toggle[b-cxx0wjjgzx] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: none;
    border: none;
    font-size: 14px;
    font-weight: 600;
    color: #0f172a;
    cursor: pointer;
    padding: 0;
}

.tce-collapsible[b-cxx0wjjgzx] {
    padding-bottom: 0;
}

/* ── Worked / time row ──────────────────── */

.tce-time-row[b-cxx0wjjgzx] {
    display: flex;
    align-items: flex-end;
    gap: 12px;
}

.tce-time-field[b-cxx0wjjgzx] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
    align-items: flex-start;
}

.tce-time-label[b-cxx0wjjgzx] {
    font-size: 12px;
    color: #6b7280;
    font-weight: 500;
    margin-bottom: 2px;
}

.tce-time-input[b-cxx0wjjgzx] {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 600;
    color: #0f172a;
    background: #fff;
    transition: border-color 80ms;
}

.tce-time-input:focus[b-cxx0wjjgzx] {
    outline: none;
    border-color: #3b82f6;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15);
}

/* Live validation: invalid clock-out turns red until the manager fixes
   the order. Avoids the "save → toast → fix → re-save" loop. */
.tce-input-invalid[b-cxx0wjjgzx],
.tce-input-invalid:focus[b-cxx0wjjgzx] {
    border-color: #dc2626 !important;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.15) !important;
}

.tce-validation-error[b-cxx0wjjgzx] {
    margin-top: 8px;
    color: #b91c1c;
    font-size: 12px;
    display: flex;
    align-items: center;
    gap: 6px;
}

/* ── Inline compliance warnings ─────────── */

.tce-warnings[b-cxx0wjjgzx] {
    background: #fffbeb;
    margin: 12px -24px 0 -24px;
    padding: 12px 24px !important;
    border-bottom: 1px solid #fde68a;
}

.tce-warning-row[b-cxx0wjjgzx] {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    padding: 8px 0;
    border-top: 1px dashed rgba(217, 119, 6, 0.2);
}

.tce-warning-row:first-of-type[b-cxx0wjjgzx] {
    border-top: none;
}

.tce-warning-text[b-cxx0wjjgzx] {
    flex: 1;
}

.tce-warning-badge[b-cxx0wjjgzx] {
    display: inline-block;
    background: #fef3c7;
    color: #78350f;
    font-size: 11px;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 4px;
}

.tce-warning-msg[b-cxx0wjjgzx] {
    color: #78350f;
    font-size: 12px;
    margin-top: 4px;
    line-height: 1.4;
}

.tce-ack-btn[b-cxx0wjjgzx] {
    background: #fff;
    border: 1px solid #d97706;
    color: #92400e;
    font-size: 12px;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 6px;
    cursor: pointer;
    flex-shrink: 0;
    transition: background 80ms;
}

.tce-ack-btn:hover[b-cxx0wjjgzx] {
    background: #fef3c7;
}

.tce-ack-all-btn[b-cxx0wjjgzx] {
    background: #f59e0b;
    border: 1px solid #d97706;
    color: #fff;
    font-size: 11px;
    font-weight: 600;
    padding: 3px 10px;
    border-radius: 6px;
    cursor: pointer;
    margin-left: auto;
    transition: background 80ms;
}

.tce-ack-all-btn:hover[b-cxx0wjjgzx] {
    background: #d97706;
}

/* In-modal Discard banner — sticky at the top of the body so the
   manager sees it without losing the surrounding context. */
.tce-discard-banner[b-cxx0wjjgzx] {
    background: #fef3c7;
    border-bottom: 1px solid #fcd34d;
    padding: 12px 24px;
    margin: 0 -24px 12px -24px;
    display: flex;
    align-items: center;
    gap: 12px;
    animation: tce-banner-slide-b-cxx0wjjgzx 160ms ease-out;
}

@keyframes tce-banner-slide-b-cxx0wjjgzx {
    from { opacity: 0; transform: translateY(-6px); }
    to { opacity: 1; transform: translateY(0); }
}

.tce-discard-text[b-cxx0wjjgzx] {
    flex: 1;
    color: #78350f;
    font-size: 13px;
}

.tce-discard-sub[b-cxx0wjjgzx] {
    font-size: 12px;
    color: #92400e;
    margin-top: 2px;
}

.tce-discard-actions[b-cxx0wjjgzx] {
    display: flex;
    gap: 6px;
    flex-shrink: 0;
}

.tce-date-input[b-cxx0wjjgzx] {
    width: 100%;
    padding: 6px 10px;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    font-size: 12px;
    color: #475569;
    background: #fff;
}

.tce-time-sep[b-cxx0wjjgzx] {
    font-size: 18px;
    color: #9ca3af;
    padding-bottom: 12px;
}

.tce-link-btn[b-cxx0wjjgzx] {
    background: none;
    border: none;
    color: #3b82f6;
    font-size: 12px;
    cursor: pointer;
    padding: 0;
    text-decoration: underline;
}

.tce-link-btn:hover[b-cxx0wjjgzx] {
    color: #1d4ed8;
}

.tce-scheduled-hint[b-cxx0wjjgzx] {
    margin-top: 10px;
    font-size: 12px;
    color: #6b7280;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
}

.tce-week-hours[b-cxx0wjjgzx] {
    color: #475569;
    font-weight: 600;
    background: #f1f5f9;
    padding: 2px 8px;
    border-radius: 4px;
}

.tce-diff-changed[b-cxx0wjjgzx] {
    /* Highlights the changed field in the history strip — bold value lives
       inside the span, this just adds a faint background tag. */
    background: rgba(59, 130, 246, 0.08);
    padding: 1px 6px;
    border-radius: 4px;
    font-variant-numeric: tabular-nums;
}

/* ── Break ──────────────────────────────── */

.tce-break-row[b-cxx0wjjgzx] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.tce-break-input[b-cxx0wjjgzx] {
    width: 100px;
    padding: 8px 10px;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    font-size: 14px;
}

.tce-break-suffix[b-cxx0wjjgzx] {
    color: #6b7280;
    font-size: 13px;
}

/* ── Reason chips (recent / quick-pick) ── */

.tce-reason-chips[b-cxx0wjjgzx] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 8px;
}

.tce-reason-chip[b-cxx0wjjgzx] {
    background: #eff6ff;
    color: #1e40af;
    border: 1px solid #bfdbfe;
    border-radius: 12px;
    padding: 3px 10px;
    font-size: 11px;
    cursor: pointer;
    transition: background 80ms;
    max-width: 240px;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

.tce-reason-chip:hover[b-cxx0wjjgzx] {
    background: #dbeafe;
    border-color: #93c5fd;
}

/* ── Note ──────────────────────────────── */

.tce-note-input[b-cxx0wjjgzx] {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    font-size: 14px;
    resize: vertical;
    font-family: inherit;
    color: #0f172a;
}

.tce-note-input:focus[b-cxx0wjjgzx] {
    outline: none;
    border-color: #3b82f6;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15);
}

.tce-req[b-cxx0wjjgzx] {
    color: #dc2626;
    font-weight: 700;
}

/* ── History ──────────────────────────── */

.tce-history[b-cxx0wjjgzx] {
    margin-top: 8px;
    padding: 0 0 8px 24px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.tce-history-empty[b-cxx0wjjgzx] {
    color: #9ca3af;
    font-size: 13px;
    font-style: italic;
}

.tce-history-row[b-cxx0wjjgzx] {
    border-left: 2px solid #e5e7eb;
    padding-left: 10px;
}

.tce-history-head[b-cxx0wjjgzx] {
    display: flex;
    gap: 8px;
    align-items: center;
    font-size: 13px;
    color: #0f172a;
}

.tce-hist-badge[b-cxx0wjjgzx] {
    display: inline-block;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    padding: 2px 6px;
    border-radius: 4px;
    background: #f3f4f6;
    color: #374151;
}

.tce-badge-blue[b-cxx0wjjgzx]   { background: #dbeafe; color: #1e40af; }
.tce-badge-green[b-cxx0wjjgzx]  { background: #d1fae5; color: #065f46; }
.tce-badge-red[b-cxx0wjjgzx]    { background: #fee2e2; color: #991b1b; }
.tce-badge-gray[b-cxx0wjjgzx]   { background: #e5e7eb; color: #374151; }
.tce-badge-purple[b-cxx0wjjgzx] { background: #ede9fe; color: #5b21b6; }

.tce-history-actor[b-cxx0wjjgzx] {
    color: #6b7280;
    font-size: 12px;
    font-style: italic;
}

.tce-history-when[b-cxx0wjjgzx] {
    color: #9ca3af;
    font-size: 11px;
    margin-left: auto;
}

.tce-history-reason[b-cxx0wjjgzx] {
    color: #475569;
    font-size: 12px;
    font-style: italic;
    margin-top: 2px;
}

.tce-history-diff[b-cxx0wjjgzx] {
    color: #6b7280;
    font-size: 11px;
    margin-top: 4px;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

/* ── Footer (action bar) ────────────────── */

.tce-footer[b-cxx0wjjgzx] {
    padding: 14px 24px;
    background: #f9fafb;
    border-top: 1px solid rgba(15, 23, 42, 0.06);
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
}

.tce-cancel[b-cxx0wjjgzx] {
    color: #6b7280;
    text-decoration: none;
    font-weight: 500;
}

.tce-cancel:hover[b-cxx0wjjgzx] {
    color: #0f172a;
}

.tce-save[b-cxx0wjjgzx] {
    padding: 10px 24px;
    font-weight: 600;
}

/* ── Confirm body padding ──────────────── */

.tce-confirm-desc[b-cxx0wjjgzx] {
    color: #475569;
    font-size: 13px;
    margin: 12px 0 16px 0;
}
/* _content/BusinessPortal/Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-q5uan3en4e],
html[b-q5uan3en4e],
body[b-q5uan3en4e] {
    height: 100%;
}

.page[b-q5uan3en4e] {
    min-height: 100svh;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background: var(--surface-0);
}

.sidebar[b-q5uan3en4e] {
    background: linear-gradient(180deg, var(--royal-base) 0%, #0a0a0a 100%);
    border-right: 1px solid var(--border-subtle);
    box-shadow: var(--shadow-2);
    overflow-x: hidden;
    z-index: 10;
    position: relative;
}

main[b-q5uan3en4e] {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.content[b-q5uan3en4e] {
    flex: 1;
    padding: var(--space-6);
    max-width: 1600px;
    margin: 0 auto;
    width: 100%;
}

@media (max-width: 768px) {
    .sidebar[b-q5uan3en4e] {
        position: sticky;
        top: 0;
        z-index: 200;
        height: auto;
    }

    .content[b-q5uan3en4e] {
        padding: var(--space-4);
    }
}

@media (min-width: 641px) {
    .page[b-q5uan3en4e] {
        flex-direction: row;
    }

    .sidebar[b-q5uan3en4e] {
        flex: 0 0 240px;
        min-width: 0;
        height: 100vh;
        position: sticky;
        top: 0;
        overflow-y: hidden;
        transition: flex-basis .3s ease;
    }

    .sidebar.collapsed[b-q5uan3en4e] {
        flex-basis: 72px;
        min-width: 72px;
        max-width: 72px;
        overflow-x: hidden;
        overflow-y: hidden;
    }
}

.layout-error[b-q5uan3en4e] {
    margin: var(--space-6);
    padding: var(--space-5);
    border-radius: var(--radius-lg);
    border: 1px solid var(--border-subtle);
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(246, 240, 232, 0.9));
    box-shadow: var(--shadow-2);
}

[data-theme="dark"] .layout-error[b-q5uan3en4e] {
    background: linear-gradient(135deg, rgba(16, 20, 26, 0.98), rgba(24, 20, 16, 0.9));
    border-color: rgba(232, 134, 52, 0.2);
}

#blazor-error-ui[b-q5uan3en4e] {
    background: linear-gradient(135deg, rgba(255, 245, 230, 0.98) 0%, rgba(255, 237, 213, 0.95) 100%);
    backdrop-filter: blur(12px);
    bottom: 0;
    box-shadow: 0 -8px 24px rgba(232, 134, 52, 0.15), 0 -2px 8px rgba(15, 23, 42, 0.1);
    border-top: 3px solid var(--accent);
    left: 0;
    padding: 1rem 1.5rem;
    position: fixed;
    width: 100%;
    z-index: var(--z-error-toast);
    display: none;
    align-items: center;
    gap: 1rem;
}

#blazor-error-ui.show[b-q5uan3en4e] {
    display: flex;
}

#blazor-error-ui[b-q5uan3en4e]::before {
    content: '⚠';
    font-size: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--accent) 0%, var(--accent-strong) 100%);
    color: white;
    box-shadow: 0 4px 12px rgba(232, 134, 52, 0.3);
}

#blazor-error-ui .reload[b-q5uan3en4e] {
    padding: 0.5rem 1.2rem;
    background: linear-gradient(135deg, var(--accent) 0%, var(--accent-strong) 100%);
    color: white;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 600;
    transition: all var(--transition-base);
    box-shadow: 0 2px 8px rgba(232, 134, 52, 0.3);
    margin-left: auto;
}

#blazor-error-ui .reload:hover[b-q5uan3en4e] {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(232, 134, 52, 0.4);
}

#blazor-error-ui .dismiss[b-q5uan3en4e] {
    cursor: pointer;
    position: relative;
    padding: 0.5rem 1rem;
    background: rgba(232, 134, 52, 0.1);
    border: 1px solid rgba(232, 134, 52, 0.3);
    border-radius: 8px;
    font-weight: 600;
    color: var(--accent-strong);
    transition: all var(--transition-base);
}

#blazor-error-ui .dismiss:hover[b-q5uan3en4e] {
    background: rgba(232, 134, 52, 0.2);
    transform: translateY(-2px);
}

[data-theme="dark"] #blazor-error-ui[b-q5uan3en4e] {
    background: linear-gradient(135deg, rgba(29, 36, 48, 0.98) 0%, rgba(21, 27, 35, 0.95) 100%);
}

[data-theme="dark"] #blazor-error-ui .dismiss[b-q5uan3en4e] {
    background: rgba(232, 134, 52, 0.15);
    border-color: rgba(232, 134, 52, 0.4);
}
/* _content/BusinessPortal/Components/Layout/NavMenu.razor.rz.scp.css */
.nav-container[b-e9nztxjiwf] {
    position: relative;
    height: 100%;
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
    width: 100%;
    box-sizing: border-box;
}

/* Custom scrollbar styling - minimal grey bar without background or arrows */
.nav-scrollable[b-e9nztxjiwf]::-webkit-scrollbar {
    width: 6px;
}

.nav-scrollable[b-e9nztxjiwf]::-webkit-scrollbar-track {
    background: transparent;
}

.nav-scrollable[b-e9nztxjiwf]::-webkit-scrollbar-thumb {
    background: rgba(155, 155, 155, 0.5);
    border-radius: 3px;
}

.nav-scrollable[b-e9nztxjiwf]::-webkit-scrollbar-thumb:hover {
    background: rgba(155, 155, 155, 0.7);
}

.nav-scrollable[b-e9nztxjiwf]::-webkit-scrollbar-button {
    display: none;
    height: 0;
    width: 0;
}

/* Firefox scrollbar styling */
.nav-scrollable[b-e9nztxjiwf] {
    scrollbar-width: thin;
    scrollbar-color: rgba(155, 155, 155, 0.5) transparent;
}

.nav-top[b-e9nztxjiwf] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--space-4);
    min-height: 3rem;
    position: relative;
}

.navbar-brand[b-e9nztxjiwf] {
    font-size: 1rem;
    font-weight: var(--font-bold);
    letter-spacing: 0.15em;
    text-transform: uppercase;
    line-height: 1;
    transition: all var(--transition-base);
}

.nav-container.collapsed .navbar-brand[b-e9nztxjiwf] {
    display: none;
}

.navbar-brand.collapsed[b-e9nztxjiwf] {
    font-size: 0.75rem;
}

.navbar-brand .text-primary[b-e9nztxjiwf] {
    color: var(--accent) !important;
}

/* Invisible checkbox for mobile hamburger toggle */
.navbar-toggler[b-e9nztxjiwf],
.desktop-toggler[b-e9nztxjiwf] {
    appearance: none;
    width: 0;
    height: 0;
    opacity: 0;
    position: absolute;
    z-index: -1;
}

.nav-toggle-label[b-e9nztxjiwf],
.desktop-toggle-label[b-e9nztxjiwf] {
    position: absolute;
    top: 50%;
    right: var(--space-3);
    transform: translateY(-50%);
    width: 1.5rem;
    height: 1rem;
    padding: 0.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 4001;
}

.nav-toggle-label span[b-e9nztxjiwf],
.nav-toggle-label span[b-e9nztxjiwf]::before,
.nav-toggle-label span[b-e9nztxjiwf]::after {
    display: block;
    background: #d7d7d7;
    height: 3px;
    width: 1.5rem;
    border-radius: 2px;
    position: absolute;
    transition: all 0.4s ease;
}

.nav-toggle-label span[b-e9nztxjiwf]::before {
    content: '';
    top: -8px;
}

.nav-toggle-label span[b-e9nztxjiwf]::after {
    content: '';
    top: 8px;
}

.nav-container:has(#nav-toggle:checked) .nav-toggle-label span[b-e9nztxjiwf] {
    background: transparent;
}

.nav-container:has(#nav-toggle:checked) .nav-toggle-label span[b-e9nztxjiwf]::before {
    transform: rotate(45deg);
    top: 0;
}

.nav-container:has(#nav-toggle:checked) .nav-toggle-label span[b-e9nztxjiwf]::after {
    transform: rotate(-45deg);
    top: 0;
}

.desktop-toggle-label .desktop-collapse-chevron[b-e9nztxjiwf] {
    font-size: 0.75rem;
    color: #d7d7d7;
    transition: transform 0.3s ease;
}

.nav-scrollable[b-e9nztxjiwf] {
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.4s ease-out, width 0.3s ease;
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    overflow-x: hidden;
    width: 100%;
}

.navbar-toggler:checked ~ .nav-scrollable[b-e9nztxjiwf] {
    max-height: 500px;
}

.nav-group[b-e9nztxjiwf] {
    padding: var(--space-2) 0;
}

.nav-group-label[b-e9nztxjiwf] {
    font-size: var(--text-xs);
    font-weight: var(--font-medium);
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: var(--space-3) var(--space-4);
    opacity: 1;
    transition: opacity var(--transition-base);
    background: none;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

.nav-group-label:hover[b-e9nztxjiwf] {
    color: #d7d7d7;
}

.nav-group-chevron[b-e9nztxjiwf] {
    font-size: 0.6rem;
    transition: transform 0.2s ease;
}

.nav-item[b-e9nztxjiwf] {
    padding: 0;
}

.nav-item[b-e9nztxjiwf]  .nav-link {
    color: #d7d7d7;
    background: none;
    border: none;
    border-radius: var(--radius-full);
    height: 3.25rem;
    display: flex;
    align-items: center;
    line-height: 3rem;
    width: 100%;
    padding: 0 var(--space-4);
    gap: 0.75rem;
    transition: all var(--transition-fast);
    box-sizing: border-box;
}

.nav-item[b-e9nztxjiwf]  .nav-link:focus-visible {
    outline: 2px solid var(--accent);
    outline-offset: 2px;
}

.nav-item[b-e9nztxjiwf]  a.active {
    background: var(--accent-soft);
    color: #ffffff;
    box-shadow: 0 0 0 3px var(--accent-soft);
}

.nav-item[b-e9nztxjiwf]  .nav-link:hover {
    background: rgba(255, 255, 255, 0.1);
    color: white;
}

.nav-icon-link[b-e9nztxjiwf] {
    display: flex;
    align-items: center;
    font-size: 0.95rem;
}

.nav-icon-link i[b-e9nztxjiwf] {
    font-size: 1.2rem;
    width: 1.25rem;
    min-width: 1.25rem;
    text-align: center;
}

.nav-icon-link span[b-e9nztxjiwf] {
    margin-left: 0.25rem;
}

/* ── Section header rows (shared by all sections including Configuration) ── */

/* Header row: styled like .nav-group-label but split into NavLink + chevron button */
.nav-section-header-row[b-e9nztxjiwf] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: var(--space-3) var(--space-4);
}

/* Make the NavLink look like a group label, not a nav link */
.nav-section-header-row[b-e9nztxjiwf]  .nav-section-link {
    flex: 1 1 auto;
    min-width: 0;
    font-size: var(--text-xs) !important;
    font-weight: var(--font-medium) !important;
    color: var(--text-muted) !important;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    background: none !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    height: auto !important;
    line-height: normal !important;
    gap: 0 !important;
    transition: color 0.2s ease;
}

.nav-section-header-row[b-e9nztxjiwf]  .nav-section-link:hover {
    color: #d7d7d7 !important;
    background: none !important;
}

.nav-section-header-row[b-e9nztxjiwf]  .nav-section-link.active {
    color: #d7d7d7 !important;
    background: none !important;
    box-shadow: none !important;
}

/* Show the section icon alongside the label */
.nav-section-header-row[b-e9nztxjiwf]  .nav-section-link .nav-section-icon {
    display: inline-block;
    font-size: 0.85rem;
    margin-right: 0.35rem;
    vertical-align: middle;
}

.nav-section-header-row[b-e9nztxjiwf]  .nav-section-link span {
    margin-left: 0;
    opacity: 1 !important;
    position: static !important;
    pointer-events: auto !important;
}

/* Fallback label text for sections without a group header NavLink */
.nav-section-label-text[b-e9nztxjiwf] {
    font-size: var(--text-xs);
    font-weight: var(--font-medium);
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.nav-section-chevron-btn[b-e9nztxjiwf] {
    flex: 0 0 auto;
    background: none;
    border: none;
    color: var(--text-muted);
    padding: 0;
    cursor: pointer;
    font-size: 0.6rem;
    display: flex;
    align-items: center;
    transition: color 0.2s ease;
}

.nav-section-chevron-btn:hover[b-e9nztxjiwf] {
    color: #d7d7d7;
}

/* ── Configuration two-level tree (subsections) ── */

/* Subgroup header row (e.g. "Bookings", "Sales") — dual-action: link + chevron */
.nav-subgroup-header-row[b-e9nztxjiwf] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: var(--space-2) var(--space-4) var(--space-2) calc(var(--space-4) + 1.5rem);
    transition: opacity 0.3s ease, font-size 0.3s ease, padding 0.3s ease;
}

.nav-subgroup-link[b-e9nztxjiwf] {
    font-size: var(--text-xs);
    font-weight: var(--font-medium);
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    text-decoration: none;
    cursor: pointer;
    transition: color 0.2s ease;
    flex: 1;
}

.nav-subgroup-link:hover[b-e9nztxjiwf] {
    color: #d7d7d7;
    text-decoration: none;
}

/* TF-14: subgroup label stays highlighted when the current page lives under it,
   so switching tabs under Bookings (e.g., ?tab=tickets vs ?tab=resources) keeps
   the visual breadcrumb back to the parent label. Use a fixed light color rather
   than --text-strong, which resolves to #1A1A1A in light mode and reads as black
   on the always-dark sidebar background. */
.nav-subgroup-link.active[b-e9nztxjiwf] {
    color: #ffffff;
    font-weight: var(--font-semibold, 600);
}

.nav-subgroup-chevron-btn[b-e9nztxjiwf] {
    flex: 0 0 auto;
    background: none;
    border: none;
    color: var(--text-muted);
    padding: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    transition: color 0.2s ease;
}

.nav-subgroup-chevron-btn:hover[b-e9nztxjiwf] {
    color: #d7d7d7;
}

.nav-subgroup-chevron[b-e9nztxjiwf] {
    font-size: 0.55rem;
    transition: transform 0.2s ease;
}

/* Child link indented under a subgroup */
.nav-subitem[b-e9nztxjiwf]  .nav-link {
    padding-left: calc(var(--space-4) + 1.75rem);
    height: 2.75rem;
}

/* Pinned bottom section (Settings) -- always visible at bottom of sidebar */
.nav-pinned-bottom[b-e9nztxjiwf] {
    flex-shrink: 0;
    padding: 0;
    border-top: none;
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.4s ease-out, padding 0.4s ease-out;
}

.navbar-toggler:checked ~ .nav-pinned-bottom[b-e9nztxjiwf] {
    max-height: 100px;
    padding: var(--space-2) 0;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}

@media (min-width: 641px) {
    .navbar-toggler[b-e9nztxjiwf],
    .nav-toggle-label[b-e9nztxjiwf] {
        display: none;
    }

    .nav-container:has(#desktop-nav-toggle:checked) .desktop-toggle-label .desktop-collapse-chevron[b-e9nztxjiwf],
    .nav-container.collapsed .desktop-toggle-label .desktop-collapse-chevron[b-e9nztxjiwf] {
        transform: rotate(180deg);
    }

    .nav-container nav .nav-link span[b-e9nztxjiwf] {
        transition: opacity 0.3s ease;
    }

    .nav-container:has(#desktop-nav-toggle:checked) nav .nav-link span[b-e9nztxjiwf],
    .nav-container.collapsed nav .nav-link span[b-e9nztxjiwf] {
        opacity: 0;
        pointer-events: none;
        position: absolute;
        white-space: nowrap;
    }

    .nav-container:has(#desktop-nav-toggle:checked) nav .nav-icon-link[b-e9nztxjiwf],
    .nav-container.collapsed nav .nav-icon-link[b-e9nztxjiwf] {
        justify-content: center;
        width: 100%;
    }

    .nav-container:has(#desktop-nav-toggle:checked) .nav-item[b-e9nztxjiwf]  .nav-link,
    .nav-container.collapsed .nav-item[b-e9nztxjiwf]  .nav-link {
        justify-content: center;
        padding: 0;
        gap: 0;
        width: 100%;
    }

    .nav-container:has(#desktop-nav-toggle:checked) .navbar-brand[b-e9nztxjiwf],
    .nav-container.collapsed .navbar-brand[b-e9nztxjiwf] {
        display: none;
    }

    .nav-container .nav-group-label[b-e9nztxjiwf] {
        transition: opacity 0.3s ease, font-size 0.3s ease, padding 0.3s ease;
    }

    .nav-container:has(#desktop-nav-toggle:checked) .nav-group-label[b-e9nztxjiwf],
    .nav-container.collapsed .nav-group-label[b-e9nztxjiwf] {
        opacity: 0;
        font-size: 0;
        padding: 0;
        width: 0;
        overflow: hidden;
        white-space: nowrap;
        pointer-events: none;
    }

    /* Collapse subgroup header rows in icon-only mode */
    .nav-container:has(#desktop-nav-toggle:checked) .nav-subgroup-header-row[b-e9nztxjiwf],
    .nav-container.collapsed .nav-subgroup-header-row[b-e9nztxjiwf] {
        opacity: 0;
        font-size: 0;
        padding: 0;
        height: 0;
        overflow: hidden;
        pointer-events: none;
    }

    /* In collapsed mode, show section header rows as icon-only nav items */
    .nav-container:has(#desktop-nav-toggle:checked) .nav-section-header-row[b-e9nztxjiwf],
    .nav-container.collapsed .nav-section-header-row[b-e9nztxjiwf] {
        padding: 0;
        justify-content: center;
    }

    /* Remove nav-group padding so icons align with standalone items above */
    .nav-container:has(#desktop-nav-toggle:checked) .nav-group[b-e9nztxjiwf],
    .nav-container.collapsed .nav-group[b-e9nztxjiwf] {
        padding: 0;
    }

    /* Horizontal divider around expanded sections in collapsed sidebar */
    .nav-container:has(#desktop-nav-toggle:checked) .nav-group.expanded[b-e9nztxjiwf],
    .nav-container.collapsed .nav-group.expanded[b-e9nztxjiwf] {
        border-top: 1px solid rgba(255, 255, 255, 0.08);
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
        padding: var(--space-1) 0;
        margin: var(--space-1) 0;
    }

    /* Show the section link as a centered icon button — use flex like .nav-item .nav-link */
    .nav-container:has(#desktop-nav-toggle:checked) .nav-section-header-row[b-e9nztxjiwf]  .nav-section-link,
    .nav-container.collapsed .nav-section-header-row[b-e9nztxjiwf]  .nav-section-link {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        height: 3.25rem !important;
        width: 100% !important;
        padding: 0 !important;
        font-size: 0 !important;
        text-transform: none !important;
        letter-spacing: 0 !important;
        flex: 0 0 auto !important;
    }

    /* Make the section icon visible, properly sized, and flex-centered */
    .nav-container:has(#desktop-nav-toggle:checked) .nav-section-header-row[b-e9nztxjiwf]  .nav-section-link .nav-section-icon,
    .nav-container.collapsed .nav-section-header-row[b-e9nztxjiwf]  .nav-section-link .nav-section-icon {
        display: flex !important;
        font-size: 1.2rem !important;
        margin-right: 0 !important;
        width: 1.25rem !important;
        min-width: 1.25rem !important;
        text-align: center !important;
        justify-content: center !important;
    }

    /* Hide the text span in section headers */
    .nav-container:has(#desktop-nav-toggle:checked) .nav-section-header-row[b-e9nztxjiwf]  .nav-section-link span,
    .nav-container.collapsed .nav-section-header-row[b-e9nztxjiwf]  .nav-section-link span {
        display: none !important;
    }

    /* Hide the chevron toggle button */
    .nav-container:has(#desktop-nav-toggle:checked) .nav-section-chevron-btn[b-e9nztxjiwf],
    .nav-container.collapsed .nav-section-chevron-btn[b-e9nztxjiwf] {
        display: none;
    }

    /* Hide fallback label text (sections without a group header NavLink) */
    .nav-container:has(#desktop-nav-toggle:checked) .nav-section-label-text[b-e9nztxjiwf],
    .nav-container.collapsed .nav-section-label-text[b-e9nztxjiwf] {
        display: none;
    }

    /* Apply hover styles to section header links in collapsed mode */
    .nav-container:has(#desktop-nav-toggle:checked) .nav-section-header-row[b-e9nztxjiwf]  .nav-section-link:hover,
    .nav-container.collapsed .nav-section-header-row[b-e9nztxjiwf]  .nav-section-link:hover {
        background: rgba(255, 255, 255, 0.1) !important;
        color: white !important;
        border-radius: var(--radius-full) !important;
    }

    /* Subitem padding resets to centered in collapsed mode */
    .nav-container:has(#desktop-nav-toggle:checked) .nav-subitem[b-e9nztxjiwf]  .nav-link,
    .nav-container.collapsed .nav-subitem[b-e9nztxjiwf]  .nav-link {
        justify-content: center;
        padding: 0;
        gap: 0;
        height: 3.25rem;
        width: 100%;
    }

    .nav-container.collapsed .desktop-toggle-label[b-e9nztxjiwf] {
        left: 50%;
        right: auto;
        transform: translateX(-50%);
    }

    .nav-container[b-e9nztxjiwf] {
        max-height: none !important;
        overflow-x: hidden;
        overflow-y: hidden;
        display: flex !important;
        flex-direction: column;
        height: 100vh;
        transition: width 0.3s ease, flex-basis 0.3s ease;
    }

    .nav-scrollable[b-e9nztxjiwf] {
        width: 100%;
        max-height: none;
        overflow-y: auto;
        overflow-x: hidden;
        flex: 1 1 auto;
    }

    .nav-container.collapsed .nav-scrollable[b-e9nztxjiwf] {
        overflow-x: hidden;
    }

    .nav-scrollable nav[b-e9nztxjiwf] {
        display: flex;
        flex-direction: column;
        min-width: 0;
    }

    .nav-pinned-bottom[b-e9nztxjiwf] {
        max-height: none;
        overflow: visible;
        padding: var(--space-2) 0;
        border-top: 1px solid rgba(255, 255, 255, 0.08);
    }

    .nav-container:has(#desktop-nav-toggle:checked) .nav-pinned-bottom .nav-link span[b-e9nztxjiwf],
    .nav-container.collapsed .nav-pinned-bottom .nav-link span[b-e9nztxjiwf] {
        opacity: 0;
        pointer-events: none;
        position: absolute;
        white-space: nowrap;
    }

    .nav-container:has(#desktop-nav-toggle:checked) .nav-pinned-bottom .nav-icon-link[b-e9nztxjiwf],
    .nav-container.collapsed .nav-pinned-bottom .nav-icon-link[b-e9nztxjiwf] {
        justify-content: center;
        width: 100%;
    }

    .nav-container:has(#desktop-nav-toggle:checked) .nav-pinned-bottom .nav-item[b-e9nztxjiwf]  .nav-link,
    .nav-container.collapsed .nav-pinned-bottom .nav-item[b-e9nztxjiwf]  .nav-link {
        justify-content: center;
        padding: 0;
        gap: 0;
        width: 100%;
    }
}

@media (max-width: 640px) {
    .desktop-toggler[b-e9nztxjiwf],
    .desktop-toggle-label[b-e9nztxjiwf] {
        display: none;
    }
}

@media (max-width: 768px) {
    .navbar-toggler:checked ~ .nav-scrollable[b-e9nztxjiwf] {
        max-height: calc(100vh - 80px);
        height: auto;
        overflow-y: auto;
    }

    .nav-profile-dropdown[b-e9nztxjiwf]  .dropdown-menu a.dropdown-item,
    .nav-profile-dropdown[b-e9nztxjiwf]  .dropdown-menu button.dropdown-item {
        justify-content: flex-start !important;
        text-align: left !important;
        height: auto !important;
    }

    .nav-profile-dropdown[b-e9nztxjiwf]  .dropdown-menu .dropdown-header,
    .nav-profile-dropdown[b-e9nztxjiwf]  .dropdown-menu .dropdown-item.text-center {
        justify-content: center !important;
        text-align: center !important;
    }

    .nav-profile-dropdown[b-e9nztxjiwf]  .dropdown-menu .dropdown-item {
        padding: 0.35rem 0.75rem !important;
    }
}

.nav-profile-dropdown[b-e9nztxjiwf] {
    display: none;
}

@media (max-width: 768px) {
    .nav-container[b-e9nztxjiwf] {
        position: relative;
        z-index: 3001;
        overflow: visible;
    }

    .nav-top[b-e9nztxjiwf] {
        justify-content: center;
        position: relative;
        z-index: 3002;
        overflow: visible;
        padding: var(--space-3) var(--space-6);
    }

    .nav-profile-dropdown[b-e9nztxjiwf] {
        display: block !important;
        position: absolute;
        left: var(--space-4);
        top: 50%;
        transform: translateY(-50%);
        overflow: visible;
    }

    .nav-profile-dropdown[b-e9nztxjiwf]  .dropdown-toggle {
        padding: 0.25rem 0.5rem !important;
        font-size: 0.85rem !important;
    }

    .nav-profile-dropdown[b-e9nztxjiwf]  .dropdown-menu {
        position: absolute;
        left: 0;
        top: calc(100% + 0.25rem);
        z-index: 4000;
    }
}

/* ── Settings search (BD-18) ── */
.nav-search[b-e9nztxjiwf] {
    position: relative;
    display: flex;
    align-items: center;
    margin: 0 var(--space-3) var(--space-2);
}

.nav-container.collapsed .nav-search[b-e9nztxjiwf] {
    display: none;
}

.nav-search-icon[b-e9nztxjiwf] {
    position: absolute;
    left: 0.6rem;
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.45);
    pointer-events: none;
}

.nav-search-input[b-e9nztxjiwf] {
    width: 100%;
    padding: 0.35rem 1.75rem 0.35rem 1.9rem;
    font-size: 0.825rem;
    color: rgba(255, 255, 255, 0.9);
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: var(--radius-md, 0.375rem);
    outline: none;
    transition: border-color var(--transition-base, 0.15s), background var(--transition-base, 0.15s);
}

.nav-search-input[b-e9nztxjiwf]::placeholder {
    color: rgba(255, 255, 255, 0.4);
}

.nav-search-input:focus[b-e9nztxjiwf] {
    background: rgba(255, 255, 255, 0.12);
    border-color: var(--accent, #7b6cff);
}

.nav-search-clear[b-e9nztxjiwf] {
    position: absolute;
    right: 0.35rem;
    display: flex;
    align-items: center;
    padding: 0.15rem 0.3rem;
    font-size: 0.7rem;
    color: rgba(255, 255, 255, 0.55);
    background: transparent;
    border: none;
    cursor: pointer;
}

.nav-search-clear:hover[b-e9nztxjiwf] {
    color: rgba(255, 255, 255, 0.9);
}

.nav-search-group-label[b-e9nztxjiwf] {
    padding: var(--space-2) var(--space-3) 0.15rem;
    font-size: 0.68rem;
    font-weight: var(--font-semibold, 600);
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.45);
}

.nav-search-result-text[b-e9nztxjiwf] {
    display: flex;
    flex-direction: column;
    min-width: 0;
    line-height: 1.25;
}

.nav-search-result-label[b-e9nztxjiwf] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.nav-search-result-desc[b-e9nztxjiwf] {
    font-size: 0.7rem;
    color: rgba(255, 255, 255, 0.5);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.nav-search-empty[b-e9nztxjiwf] {
    padding: var(--space-3);
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.65);
}

.nav-search-empty-msg[b-e9nztxjiwf] {
    margin-bottom: var(--space-2);
    overflow-wrap: anywhere;
}

.nav-search-empty-hint[b-e9nztxjiwf] {
    margin: var(--space-2) 0 0.25rem;
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: rgba(255, 255, 255, 0.45);
}

.nav-search-suggestions[b-e9nztxjiwf] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.3rem;
}

.nav-search-suggestion[b-e9nztxjiwf] {
    padding: 0.15rem 0.55rem;
    font-size: 0.75rem;
    color: rgba(255, 255, 255, 0.85);
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 999px;
    cursor: pointer;
    transition: background var(--transition-base, 0.15s);
}

.nav-search-suggestion:hover[b-e9nztxjiwf] {
    background: rgba(255, 255, 255, 0.16);
}
/* _content/BusinessPortal/Components/Modals/AgendaEntryModal.razor.rz.scp.css */
.modal-backdrop[b-6d5oplkhbp] {
    z-index: 6000;
}

.agenda-entry-modal[b-6d5oplkhbp] {
    position: fixed;
    inset: 0;
    z-index: 6010;
}

.agenda-modal[b-6d5oplkhbp] {
    border-radius: 16px;
    padding: 1.5rem 1.75rem;
    background: color-mix(in srgb, var(--surface-0) 86%, var(--surface-1) 14%);
    box-shadow: 0 22px 55px rgba(15, 23, 42, 0.18);
    border: 1px solid var(--border-subtle);
    position: relative;
    overflow: hidden;
}

.agenda-modal[b-6d5oplkhbp]::before {
    content: none;
}

.modal-body h5[b-6d5oplkhbp] {
    font-weight: 600;
    font-size: 1.25rem;
    margin-bottom: 0.25rem;
}

.modal-body .text-muted[b-6d5oplkhbp] {
    font-size: 0.95rem;
    margin-bottom: 1rem;
}

.agenda-modal-header[b-6d5oplkhbp] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.25rem;
    padding-top: 0.25rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--border-subtle);
    background: transparent;
}

.agenda-modal-hero[b-6d5oplkhbp] {
    display: grid;
    gap: 0.5rem;
}

.agenda-modal-title[b-6d5oplkhbp] {
    display: flex;
    align-items: flex-start;
    gap: 0.85rem;
}

.agenda-color-dot[b-6d5oplkhbp] {
    width: 10px;
    height: 10px;
    border-radius: 999px;
    box-shadow: none;
    margin-top: 0.35rem;
}

.agenda-modal-title-row[b-6d5oplkhbp] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    flex-wrap: wrap;
}

.agenda-modal-subtitle[b-6d5oplkhbp] {
    color: var(--text-muted);
    font-size: 0.85rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.agenda-modal-divider[b-6d5oplkhbp] {
    width: 20px;
    height: 1px;
    border-radius: 999px;
    background: var(--border-subtle);
}

.agenda-modal-stats[b-6d5oplkhbp] {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.agenda-stat[b-6d5oplkhbp] {
    display: grid;
    gap: 0.2rem;
    padding: 0.5rem 0.8rem;
    background: color-mix(in srgb, var(--surface-1) 85%, transparent);
    border-radius: 10px;
    border: 1px solid var(--border-subtle);
    box-shadow: none;
    transition: all var(--transition-base);
}

.agenda-stat:hover[b-6d5oplkhbp] {
    transform: none;
    box-shadow: none;
}

.agenda-stat-label[b-6d5oplkhbp] {
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-size: 0.6rem;
    color: var(--text-muted);
}

.agenda-stat-value[b-6d5oplkhbp] {
    font-size: 1rem;
    font-weight: var(--font-semibold);
    color: var(--text-strong);
}

.agenda-modal-actions[b-6d5oplkhbp] {
    justify-self: end;
}

.agenda-right-lg-border[b-6d5oplkhbp] {
    border-left: 1px solid var(--border-subtle);
    padding-left: 1.25rem;
}

.agenda-action-card[b-6d5oplkhbp] {
    background: var(--surface-0);
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    padding: 1rem 1.1rem;
    box-shadow: none;
}

.action-grid[b-6d5oplkhbp] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 0.5rem;
}

.action-grid .btn-group[b-6d5oplkhbp] {
    grid-column: 1 / -1;
}

.booking-summary[b-6d5oplkhbp] {
    background: var(--surface-0);
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    padding: 0.85rem 1rem;
    box-shadow: none;
    transition: all var(--transition-base);
    position: relative;
}

.booking-summary[b-6d5oplkhbp]::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: var(--accent);
    border-radius: 12px 0 0 12px;
    opacity: 0;
    transition: opacity var(--transition-base);
}

.booking-summary:hover[b-6d5oplkhbp] {
    background: color-mix(in srgb, var(--surface-0) 80%, var(--accent-soft) 20%);
    transform: none;
    box-shadow: none;
}

.booking-summary:hover[b-6d5oplkhbp]::before {
    opacity: 1;
}

.booking-summary:last-child[b-6d5oplkhbp] {
    margin-bottom: 0 !important;
}

.accordion-button[b-6d5oplkhbp] {
    background: transparent;
    border-bottom: 1px solid var(--border-subtle);
    color: inherit;
    font-weight: 600;
    transition: all var(--transition-base);
}

.accordion-button:not(.collapsed)[b-6d5oplkhbp] {
    color: var(--accent-strong);
}

.accordion-button:hover[b-6d5oplkhbp] {
    background: color-mix(in srgb, var(--accent-soft) 40%, transparent);
}

.comments-section[b-6d5oplkhbp] {
    width: 100%;
    max-width: none;
}

.comment-feed[b-6d5oplkhbp] {
    max-height: 250px;
    overflow-y: auto;
}

.comment-item[b-6d5oplkhbp] {
    display: flex;
    gap: 1rem;
    padding: 0.75rem 0;
    border-bottom: 1px solid var(--border-subtle, #e0e0e0);
}

.comment-item:last-child[b-6d5oplkhbp] {
    border-bottom: none;
}

.comment-meta[b-6d5oplkhbp] {
    flex: 0 0 140px;
    font-size: 0.875rem;
    line-height: 1.3;
    color: var(--text-muted);
}

.comment-text[b-6d5oplkhbp] {
    flex: 1;
    white-space: pre-wrap;
    color: var(--text-strong);
}

.agenda-modal-lower[b-6d5oplkhbp] {
    margin-top: 1.5rem;
}

.agenda-panel[b-6d5oplkhbp] {
    background: var(--surface-0);
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    padding: 1.1rem;
    box-shadow: none;
}

.detail-kv-grid[b-6d5oplkhbp] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 0.75rem;
}

.detail-kv[b-6d5oplkhbp] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.detail-label[b-6d5oplkhbp] {
    font-size: 0.65rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.detail-value[b-6d5oplkhbp] {
    font-size: 0.95rem;
    font-weight: var(--font-semibold);
    color: var(--text-strong);
}

.agenda-actions-accordion .accordion-item[b-6d5oplkhbp] {
    border: none;
    background: transparent;
}

.agenda-actions-accordion .accordion-button[b-6d5oplkhbp] {
    background: var(--surface-0);
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    box-shadow: none;
    font-weight: 600;
}

.agenda-actions-accordion .accordion-button:not(.collapsed)[b-6d5oplkhbp] {
    color: var(--text-strong);
    background: color-mix(in srgb, var(--surface-0) 85%, var(--surface-1) 15%);
}

.agenda-actions-accordion .accordion-body[b-6d5oplkhbp] {
    padding: 1rem 0 0;
}

.activity-feed[b-6d5oplkhbp] {
    display: flex;
    flex-direction: column;
}

.activity-item[b-6d5oplkhbp] {
    padding: 0.6rem 0;
    border-bottom: 1px solid var(--border-subtle);
}

.activity-item:last-child[b-6d5oplkhbp] {
    border-bottom: none;
}

.activity-row-top[b-6d5oplkhbp] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
}

.activity-row-left[b-6d5oplkhbp] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-width: 0;
}

.activity-kind[b-6d5oplkhbp] {
    flex-shrink: 0;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: 0.625rem;
    font-weight: 600;
    color: var(--text-muted);
    border: 1px solid var(--border-subtle);
    border-radius: 999px;
    padding: 0.15rem 0.5rem;
    line-height: 1;
}

.activity-title-text[b-6d5oplkhbp] {
    font-weight: 600;
    font-size: 0.8125rem;
    color: var(--text-strong);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.activity-timestamp[b-6d5oplkhbp] {
    flex-shrink: 0;
    font-size: 0.6875rem;
    color: var(--text-muted);
}

.activity-subtitle[b-6d5oplkhbp] {
    font-size: 0.75rem;
    color: var(--text-muted);
    margin-top: 0.15rem;
}

.activity-body[b-6d5oplkhbp] {
    margin-top: 0.35rem;
    font-size: 0.8125rem;
    color: var(--text-normal);
    white-space: pre-wrap;
    line-height: 1.45;
}

.activity-body-note[b-6d5oplkhbp] {
    background: color-mix(in srgb, var(--accent-soft) 35%, transparent);
    border: 1px solid var(--border-subtle);
    border-radius: 10px;
    padding: 0.5rem 0.75rem;
}

@media (max-width: 900px) {
    .agenda-modal-header[b-6d5oplkhbp] {
        grid-template-columns: 1fr;
    }

    .agenda-modal-actions[b-6d5oplkhbp] {
        justify-self: start;
    }

    .agenda-right-lg-border[b-6d5oplkhbp] {
        border-left: none;
        padding-left: 0;
    }
}

[data-theme="dark"] .agenda-modal[b-6d5oplkhbp] {
    background: #0f1218;
    border-color: #2a3342;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.55);
}

[data-theme="dark"] .agenda-stat[b-6d5oplkhbp] {
    background: #141a24;
    border-color: #2a3342;
}

[data-theme="dark"] .agenda-action-card[b-6d5oplkhbp],
[data-theme="dark"] .agenda-panel[b-6d5oplkhbp] {
    background: #111722;
    border-color: #2a3342;
}

[data-theme="dark"] .agenda-actions-accordion .accordion-button[b-6d5oplkhbp] {
    background: #111722;
    border-color: #2a3342;
}

[data-theme="dark"] .activity-kind[b-6d5oplkhbp] {
    border-color: #2a3342;
    color: #c8d0dc;
}

[data-theme="dark"] .booking-summary[b-6d5oplkhbp] {
    background: #111722;
    border-color: #2a3342;
}

[data-theme="dark"] .booking-summary:hover[b-6d5oplkhbp] {
    background: color-mix(in srgb, #111722 75%, var(--accent-soft) 25%);
}

[data-theme="dark"] .comment-item[b-6d5oplkhbp] {
    border-bottom-color: rgba(148, 163, 184, 0.25);
}
/* _content/BusinessPortal/Components/Modals/BookingDetailsModal.razor.rz.scp.css */
.modal-backdrop[b-e9tcfwy0gx] {
    z-index: 6000;
}

.booking-details-modal[b-e9tcfwy0gx] {
    position: fixed;
    inset: 0;
    z-index: 6010;
}

.booking-modal[b-e9tcfwy0gx] {
    border-radius: 16px;
    padding: 1.5rem 1.75rem;
    background: color-mix(in srgb, var(--surface-0) 86%, var(--surface-1) 14%);
    box-shadow: 0 22px 55px rgba(15, 23, 42, 0.18);
    border: 1px solid var(--border-subtle);
    position: relative;
    overflow: hidden;
}

.booking-modal[b-e9tcfwy0gx]::before {
    content: none;
}

.booking-modal-header[b-e9tcfwy0gx] {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 1.25rem;
    align-items: start;
    border-bottom: 1px solid var(--border-subtle);
    padding-top: 0.25rem;
    padding-bottom: 1rem;
    background: transparent;
}

.booking-header-main[b-e9tcfwy0gx] {
    display: flex;
    gap: 0.9rem;
    align-items: start;
}

.booking-header-title[b-e9tcfwy0gx] {
    font-size: 1.2rem;
    font-weight: var(--font-bold);
    color: var(--text-strong);
}

.booking-header-contact[b-e9tcfwy0gx] {
    color: var(--text-muted);
    font-size: 0.85rem;
    margin-top: 0.15rem;
}

.booking-header-subtitle[b-e9tcfwy0gx] {
    color: var(--text-muted);
    font-size: 0.78rem;
    margin-top: 0.3rem;
}

.booking-header-meta[b-e9tcfwy0gx] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-top: 0.6rem;
}

.booking-meta-pill[b-e9tcfwy0gx] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.18rem 0.55rem;
    border-radius: 8px;
    border: 1px solid var(--border-subtle);
    background: var(--surface-1);
    font-size: 0.68rem;
    font-weight: var(--font-semibold);
    color: var(--text-strong);
    box-shadow: none;
    transition: all var(--transition-fast);
}

.booking-meta-pill:hover[b-e9tcfwy0gx] {
    transform: none;
    box-shadow: none;
}

.booking-section-grid[b-e9tcfwy0gx] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    align-items: stretch;
}

.booking-section-card[b-e9tcfwy0gx] {
    background: transparent;
    border: none;
    border-bottom: 1px solid var(--border-subtle);
    border-radius: 0;
    padding: 0.75rem 0;
    box-shadow: none;
    min-width: 0;
    overflow: hidden;
}

.booking-section-card:last-child[b-e9tcfwy0gx] {
    border-bottom: none;
}

.booking-section-card p[b-e9tcfwy0gx] {
    word-break: break-word;
}

.booking-span-2[b-e9tcfwy0gx] {
    grid-column: span 2;
}

.booking-section-heading[b-e9tcfwy0gx] {
    font-size: 0.7rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--text-muted);
    font-weight: var(--font-semibold);
    margin-bottom: 0.85rem;
}

.booking-overview-grid[b-e9tcfwy0gx] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 0.75rem;
}

.booking-overview-card[b-e9tcfwy0gx] {
    padding: 0.7rem 0.85rem;
    border-radius: 10px;
    border: 1px solid var(--border-subtle);
    background: var(--surface-0);
    box-shadow: none;
    transition: all var(--transition-base);
}

.booking-overview-card:hover[b-e9tcfwy0gx] {
    transform: none;
    box-shadow: none;
}

.booking-overview-label[b-e9tcfwy0gx] {
    text-transform: uppercase;
    font-size: 0.6rem;
    letter-spacing: 0.06em;
    color: var(--text-muted);
    margin-bottom: 0.35rem;
}

.booking-overview-value[b-e9tcfwy0gx] {
    font-size: 0.95rem;
    font-weight: var(--font-semibold);
    color: var(--text-strong);
}

.booking-overview-card-warn[b-e9tcfwy0gx] {
    border-color: #f59e0b;
    background: color-mix(in srgb, var(--surface-0) 88%, #f59e0b 12%);
}

.EventSlot-preview[b-e9tcfwy0gx] {
    border-radius: 12px;
    border: 1px solid var(--border-subtle);
    box-shadow: none;
    transition: all var(--transition-base);
    position: relative;
}

.EventSlot-preview[b-e9tcfwy0gx]::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: var(--accent);
    border-radius: 12px 0 0 12px;
    opacity: 0;
    transition: opacity var(--transition-base);
}

.EventSlot-preview:hover[b-e9tcfwy0gx] {
    background: color-mix(in srgb, var(--surface-0) 80%, var(--accent-soft) 20%) !important;
    transform: none;
    box-shadow: none;
}

.EventSlot-preview:hover[b-e9tcfwy0gx]::before {
    opacity: 1;
}

.booking-action-card[b-e9tcfwy0gx] {
    background: var(--surface-0);
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    padding: 1rem 1.1rem;
    box-shadow: none;
}

.action-grid[b-e9tcfwy0gx] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 0.5rem;
}

.action-grid .btn-group[b-e9tcfwy0gx] {
    grid-column: 1 / -1;
}

.booking-action-card .btn[b-e9tcfwy0gx] {
    border-radius: var(--radius-full);
    font-weight: var(--font-semibold);
}

.booking-action-card .btn-outline-primary[b-e9tcfwy0gx] {
    background: var(--surface-1);
    border-color: var(--border-subtle);
    color: var(--text-strong);
}

.booking-action-card .btn-outline-primary:hover[b-e9tcfwy0gx] {
    background: var(--accent-soft);
    border-color: var(--accent);
    color: var(--accent-strong);
}

.booking-action-card .btn-outline-secondary[b-e9tcfwy0gx] {
    background: var(--surface-1);
    border-color: var(--border-subtle);
    color: var(--text-strong);
}

.booking-action-card .btn-outline-secondary:hover[b-e9tcfwy0gx] {
    background: var(--surface-2);
    border-color: var(--border-normal);
}

.booking-action-card .btn-outline-success[b-e9tcfwy0gx] {
    background: var(--success-soft);
    border-color: rgba(16, 185, 129, 0.4);
    color: #0f766e;
}

.booking-action-card .btn-outline-success:hover[b-e9tcfwy0gx] {
    background: rgba(16, 185, 129, 0.2);
    border-color: rgba(16, 185, 129, 0.6);
    color: #0f766e;
}

[data-theme="dark"] .booking-action-card .btn-outline-primary[b-e9tcfwy0gx] {
    background: var(--surface-2);
    border-color: var(--border-normal);
    color: var(--text-strong);
}

[data-theme="dark"] .booking-action-card .btn-outline-primary:hover[b-e9tcfwy0gx] {
    background: rgba(232, 134, 52, 0.2);
    border-color: var(--accent);
    color: var(--accent-strong);
}

[data-theme="dark"] .booking-action-card .btn-outline-secondary[b-e9tcfwy0gx] {
    background: var(--surface-2);
    border-color: var(--border-normal);
    color: var(--text-strong);
}

.booking-modal-lower[b-e9tcfwy0gx] {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}

.booking-waivers-surveys[b-e9tcfwy0gx] {
    display: flex;
    gap: 1.25rem;
    margin-top: 0.75rem;
}

.booking-waivers-section[b-e9tcfwy0gx] {
    flex: 2 1 0;
    min-width: 0;
    overflow-x: auto;
}

.booking-surveys-section[b-e9tcfwy0gx] {
    flex: 1 1 0;
    min-width: 220px;
}

.booking-waivers-table[b-e9tcfwy0gx] {
    white-space: nowrap;
}

.booking-waivers-table th[b-e9tcfwy0gx],
.booking-waivers-table td[b-e9tcfwy0gx] {
    font-size: 0.85rem;
}

@media (max-width: 768px) {
    .booking-waivers-surveys[b-e9tcfwy0gx] {
        flex-direction: column;
    }
}

.booking-panel[b-e9tcfwy0gx] {
    background: var(--surface-0);
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    padding: 1.1rem;
    box-shadow: none;
    overflow: hidden;
}

.booking-actions-accordion .accordion-item[b-e9tcfwy0gx] {
    border: none;
    background: transparent;
}

.booking-actions-accordion .accordion-button[b-e9tcfwy0gx] {
    background: var(--surface-0);
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    box-shadow: none;
    font-weight: 600;
}

.booking-actions-accordion .accordion-button:not(.collapsed)[b-e9tcfwy0gx] {
    color: var(--text-strong);
    background: color-mix(in srgb, var(--surface-0) 85%, var(--surface-1) 15%);
}

.booking-actions-accordion .accordion-body[b-e9tcfwy0gx] {
    padding: 1rem 0 0;
}

.activity-feed[b-e9tcfwy0gx] {
    display: flex;
    flex-direction: column;
}

.activity-item[b-e9tcfwy0gx] {
    padding: 0.6rem 0;
    border-bottom: 1px solid var(--border-subtle);
}

.activity-item:last-child[b-e9tcfwy0gx] {
    border-bottom: none;
}

.activity-row-top[b-e9tcfwy0gx] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
}

.activity-row-left[b-e9tcfwy0gx] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-width: 0;
}

.activity-kind[b-e9tcfwy0gx] {
    flex-shrink: 0;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: 0.625rem;
    font-weight: 600;
    color: var(--text-muted);
    border: 1px solid var(--border-subtle);
    border-radius: 999px;
    padding: 0.15rem 0.5rem;
    line-height: 1;
}

.activity-kind-customer[b-e9tcfwy0gx] {
    border-color: var(--accent);
    color: var(--accent-strong);
    background: color-mix(in srgb, var(--accent-soft) 35%, transparent);
}

.activity-title-text[b-e9tcfwy0gx] {
    font-weight: 600;
    font-size: 0.8125rem;
    color: var(--text-strong);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.activity-timestamp[b-e9tcfwy0gx] {
    flex-shrink: 0;
    font-size: 0.6875rem;
    color: var(--text-muted);
}

.activity-subtitle[b-e9tcfwy0gx] {
    font-size: 0.75rem;
    color: var(--text-muted);
    margin-top: 0.15rem;
}

.activity-body[b-e9tcfwy0gx] {
    margin-top: 0.35rem;
    font-size: 0.8125rem;
    color: var(--text-normal);
    white-space: pre-wrap;
    line-height: 1.45;
}

.activity-body-note[b-e9tcfwy0gx] {
    background: color-mix(in srgb, var(--accent-soft) 35%, transparent);
    border: 1px solid var(--border-subtle);
    border-radius: 10px;
    padding: 0.5rem 0.75rem;
}

.comments-section[b-e9tcfwy0gx] {
    width: 100%;
    max-width: none;
}

.comment-feed[b-e9tcfwy0gx] {
    max-height: 250px;
    overflow-y: auto;
}

.comment-item[b-e9tcfwy0gx] {
    display: flex;
    gap: 1rem;
    padding: 0.75rem 0;
    border-bottom: 1px solid var(--border-subtle, #e0e0e0);
}

.comment-item:last-child[b-e9tcfwy0gx] {
    border-bottom: none;
}

.comment-meta[b-e9tcfwy0gx] {
    flex: 0 0 140px;
    font-size: 0.875rem;
    line-height: 1.3;
    color: var(--text-muted);
}

.comment-text[b-e9tcfwy0gx] {
    flex: 1;
    white-space: pre-wrap;
    color: var(--text-strong);
}

.agenda-right-lg-border[b-e9tcfwy0gx] {
    border-left: 1px solid var(--border-subtle);
    padding-left: 1.5rem;
}

@media (min-width: 1200px) {
    .booking-section-grid[b-e9tcfwy0gx] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .booking-modal-header[b-e9tcfwy0gx] {
        grid-template-columns: 1fr;
    }

    .agenda-right-lg-border[b-e9tcfwy0gx] {
        border-left: none;
        padding-left: 0;
    }
}

[data-theme="dark"] .booking-modal[b-e9tcfwy0gx] {
    background: #0f1218;
    border-color: #2a3342;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.55);
}

[data-theme="dark"] .booking-section-card[b-e9tcfwy0gx],
[data-theme="dark"] .booking-action-card[b-e9tcfwy0gx],
[data-theme="dark"] .booking-panel[b-e9tcfwy0gx] {
    background: #111722;
    border-color: #2a3342;
}

[data-theme="dark"] .booking-actions-accordion .accordion-button[b-e9tcfwy0gx] {
    background: #111722;
    border-color: #2a3342;
}

[data-theme="dark"] .activity-kind[b-e9tcfwy0gx] {
    border-color: #2a3342;
    color: #c8d0dc;
}

[data-theme="dark"] .booking-overview-card[b-e9tcfwy0gx] {
    background: #141a24;
    border-color: #2a3342;
}

[data-theme="dark"] .booking-overview-card-warn[b-e9tcfwy0gx] {
    border-color: #b45309;
    background: color-mix(in srgb, #141a24 85%, #f59e0b 15%);
}

[data-theme="dark"] .booking-meta-pill[b-e9tcfwy0gx] {
    background: #141a24;
    border-color: #2a3342;
    color: var(--text-strong);
}

[data-theme="dark"] .EventSlot-preview[b-e9tcfwy0gx] {
    background: #111722;
    border-color: #2a3342;
}

[data-theme="dark"] .EventSlot-preview:hover[b-e9tcfwy0gx] {
    background: color-mix(in srgb, #111722 75%, var(--accent-soft) 25%) !important;
}

[data-theme="dark"] .comment-item[b-e9tcfwy0gx] {
    border-bottom-color: rgba(148, 163, 184, 0.25);
}

.staff-viewing-banner[b-e9tcfwy0gx] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.35rem 0.65rem;
    border-radius: 8px;
    font-size: 0.72rem;
    font-weight: 500;
    color: #7c3aed;
    background: color-mix(in srgb, #8b5cf6 10%, var(--surface-0) 90%);
    border: 1px solid color-mix(in srgb, #8b5cf6 25%, transparent 75%);
    animation: staff-pulse-b-e9tcfwy0gx 2.5s ease-in-out infinite;
}

.staff-viewing-banner i[b-e9tcfwy0gx] {
    font-size: 0.8rem;
}

@keyframes staff-pulse-b-e9tcfwy0gx {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.7; }
}

[data-theme="dark"] .staff-viewing-banner[b-e9tcfwy0gx] {
    color: #c4b5fd;
    background: color-mix(in srgb, #8b5cf6 15%, #111722 85%);
    border-color: color-mix(in srgb, #8b5cf6 30%, transparent 70%);
}

/* ── Action panel minimize / expand ──────────────────────────── */

.action-panel-minimized[b-e9tcfwy0gx] {
    background: var(--surface-1, #f8f9fa);
    border: 1px solid var(--border-subtle, #dee2e6);
    border-radius: 10px;
    padding: 0.5rem 1rem;
    cursor: pointer;
    transition: background var(--transition-fast, 0.15s ease);
}

.action-panel-minimized:hover[b-e9tcfwy0gx] {
    background: var(--accent-soft, #e8f0fe);
}

.action-panel-toolbar[b-e9tcfwy0gx] {
    padding: 0.25rem 0;
    border-bottom: 1px solid var(--border-subtle, #dee2e6);
}

[data-theme="dark"] .action-panel-minimized[b-e9tcfwy0gx] {
    background: #141a24;
    border-color: #2a3342;
}

[data-theme="dark"] .action-panel-minimized:hover[b-e9tcfwy0gx] {
    background: #1a2232;
}
/* _content/BusinessPortal/Components/Modals/ComboDetailsModal.razor.rz.scp.css */
.modal-backdrop[b-4hi7mf16q1] {
    z-index: 6000;
}

.combo-entry-modal[b-4hi7mf16q1] {
    position: fixed;
    inset: 0;
    z-index: 6010;
}

.combo-modal[b-4hi7mf16q1] {
    border-radius: 16px;
    padding: 1.5rem 1.75rem;
    background: color-mix(in srgb, var(--surface-0) 86%, var(--surface-1) 14%);
    box-shadow: 0 22px 55px rgba(15, 23, 42, 0.18);
    border: 1px solid var(--border-subtle);
    position: relative;
    overflow: hidden;
}

/* ── Header ── */
.agenda-modal-header[b-4hi7mf16q1] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.25rem;
    padding-top: 0.25rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--border-subtle);
    background: transparent;
}

.agenda-modal-hero[b-4hi7mf16q1] {
    display: grid;
    gap: 0.5rem;
}

.agenda-modal-title[b-4hi7mf16q1] {
    display: flex;
    align-items: flex-start;
    gap: 0.85rem;
}

.agenda-modal-title-row[b-4hi7mf16q1] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    flex-wrap: wrap;
}

/* ── Right column border ── */
.agenda-right-lg-border[b-4hi7mf16q1] {
    border-left: 1px solid var(--border-subtle);
    padding-left: 1.25rem;
}

/* ── Panel ── */
.agenda-panel[b-4hi7mf16q1] {
    background: var(--surface-0);
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    padding: 1.1rem;
    box-shadow: none;
}

/* ── Detail key-value grid ── */
.detail-kv-grid[b-4hi7mf16q1] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 0.75rem;
}

.detail-kv[b-4hi7mf16q1] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.detail-label[b-4hi7mf16q1] {
    font-size: 0.65rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.detail-value[b-4hi7mf16q1] {
    font-size: 0.95rem;
    font-weight: var(--font-semibold);
    color: var(--text-strong);
}

/* ── Combo leg panel accents ── */
.combo-leg-panel[b-4hi7mf16q1] {
    border-left-width: 3px;
    border-left-style: solid;
}

.combo-leg-1[b-4hi7mf16q1] {
    border-left-color: #6366f1;
}

.combo-leg-2[b-4hi7mf16q1] {
    border-left-color: #0ea5e9;
}

/* ── Leg badges ── */
.combo-leg-badge[b-4hi7mf16q1] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2rem;
    padding: 0.15rem 0.55rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    flex-shrink: 0;
}

.leg-1-badge[b-4hi7mf16q1] {
    background: color-mix(in srgb, #6366f1 18%, var(--surface-0) 82%);
    color: #6366f1;
    border: 1px solid color-mix(in srgb, #6366f1 30%, transparent);
}

.leg-2-badge[b-4hi7mf16q1] {
    background: color-mix(in srgb, #0ea5e9 18%, var(--surface-0) 82%);
    color: #0ea5e9;
    border: 1px solid color-mix(in srgb, #0ea5e9 30%, transparent);
}

/* ── Booking summary rows ── */
.booking-summary[b-4hi7mf16q1] {
    background: var(--surface-0);
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    padding: 0.85rem 1rem;
    box-shadow: none;
    transition: all var(--transition-base);
    position: relative;
}

.booking-summary[b-4hi7mf16q1]::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: var(--accent);
    border-radius: 12px 0 0 12px;
    opacity: 0;
    transition: opacity var(--transition-base);
}

.booking-summary:hover[b-4hi7mf16q1] {
    background: color-mix(in srgb, var(--surface-0) 80%, var(--accent-soft) 20%);
}

.booking-summary:hover[b-4hi7mf16q1]::before {
    opacity: 1;
}

.booking-summary:last-child[b-4hi7mf16q1] {
    margin-bottom: 0 !important;
}

/* ── Actions accordion ── */
.agenda-actions-accordion .accordion-item[b-4hi7mf16q1] {
    border: none;
    background: transparent;
}

.agenda-actions-accordion .accordion-button[b-4hi7mf16q1] {
    background: var(--surface-0);
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    box-shadow: none;
    font-weight: 600;
}

.agenda-actions-accordion .accordion-button:not(.collapsed)[b-4hi7mf16q1] {
    color: var(--text-strong);
    background: color-mix(in srgb, var(--surface-0) 85%, var(--surface-1) 15%);
}

.agenda-actions-accordion .accordion-body[b-4hi7mf16q1] {
    padding: 1rem 0 0;
}

/* ── Action card ── */
.agenda-action-card[b-4hi7mf16q1] {
    background: var(--surface-0);
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    padding: 1rem 1.1rem;
    box-shadow: none;
}

/* ── Timeline summary ── */
.combo-timeline-card[b-4hi7mf16q1] {
    background: var(--surface-0);
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    padding: 1rem 1.1rem;
}

.combo-timeline-item[b-4hi7mf16q1] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.combo-timeline-connector[b-4hi7mf16q1] {
    width: 2px;
    height: 1.5rem;
    background: var(--border-subtle);
    margin-left: 0.95rem;
    margin-block: 0.25rem;
}

/* ── Dark mode ── */
[data-theme="dark"] .combo-modal[b-4hi7mf16q1] {
    background: color-mix(in srgb, #0d1117 90%, #1c2433 10%);
    border-color: #2a3342;
}

[data-theme="dark"] .agenda-panel[b-4hi7mf16q1],
[data-theme="dark"] .agenda-action-card[b-4hi7mf16q1],
[data-theme="dark"] .booking-summary[b-4hi7mf16q1],
[data-theme="dark"] .combo-timeline-card[b-4hi7mf16q1] {
    background: #111722;
    border-color: #2a3342;
}

[data-theme="dark"] .leg-1-badge[b-4hi7mf16q1] {
    background: color-mix(in srgb, #6366f1 22%, #111722 78%);
    color: #a5b4fc;
}

[data-theme="dark"] .leg-2-badge[b-4hi7mf16q1] {
    background: color-mix(in srgb, #0ea5e9 22%, #111722 78%);
    color: #7dd3fc;
}
/* _content/BusinessPortal/Components/Modals/CreateBookingModal.razor.rz.scp.css */
.modal-backdrop[b-9sxa2374ob] {
    z-index: 6000;
}

.modal[b-9sxa2374ob] {
    z-index: 6010;
}

.modal-body[b-9sxa2374ob] {
    background: var(--surface-0);
}
/* _content/BusinessPortal/Components/Modals/ResourceGroupModal.razor.rz.scp.css */
/* PL-37: multi-resource group overview modal */

.resource-group-summary[b-qc9x2gugyt] {
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
    padding: 0.75rem 1rem;
    border: 1px solid var(--border-subtle, #dee2e6);
    border-radius: 0.5rem;
    background: var(--surface-1, #f8f9fa);
}

.summary-stat[b-qc9x2gugyt] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
}

.stat-label[b-qc9x2gugyt] {
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-secondary, #6c757d);
}

.stat-value[b-qc9x2gugyt] {
    font-weight: 600;
    color: var(--text-primary, #212529);
}

.resource-row-list[b-qc9x2gugyt] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

.resource-row[b-qc9x2gugyt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    width: 100%;
    padding: 0.55rem 0.75rem;
    border: 1px solid var(--border-subtle, #dee2e6);
    border-radius: 0.5rem;
    background: var(--surface-1, #fff);
    text-align: left;
    cursor: pointer;
    transition: background 0.1s ease, border-color 0.1s ease;
}

.resource-row:hover[b-qc9x2gugyt] {
    background: var(--surface-2, #f1f3f5);
    border-color: var(--accent-primary, #0d6efd);
}

.resource-row-name[b-qc9x2gugyt] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-weight: 600;
    color: var(--text-primary, #212529);
    min-width: 0;
}

.resource-row-dot[b-qc9x2gugyt] {
    font-size: 0.45rem;
    opacity: 0.6;
}

.resource-row-meta[b-qc9x2gugyt] {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    flex: 0 0 auto;
    font-size: 0.82rem;
    color: var(--text-secondary, #6c757d);
}

.resource-row-status[b-qc9x2gugyt] {
    font-weight: 600;
}

.resource-row-checkin[b-qc9x2gugyt] {
    white-space: nowrap;
}

.resource-row-open[b-qc9x2gugyt] {
    opacity: 0.6;
}
/* _content/BusinessPortal/Components/Onboarding/OnboardingWizard.razor.rz.scp.css */
/* ─── Full-screen overlay ─── */
.onboarding-overlay[b-m82sue02re] {
    position: fixed;
    inset: 0;
    z-index: 1060;
    background: rgba(0, 0, 0, 0.55);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    backdrop-filter: blur(4px);
}

/* ─── Wizard card ─── */
.onboarding-wizard[b-m82sue02re] {
    background: var(--bs-body-bg, #fff);
    border-radius: 1rem;
    box-shadow: 0 24px 48px rgba(0, 0, 0, 0.2);
    width: 100%;
    max-width: 640px;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

/* ─── Header ─── */
.wizard-header[b-m82sue02re] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.5rem;
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
}

.wizard-brand[b-m82sue02re] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 600;
    font-size: 1rem;
    color: var(--bs-primary, #0d6efd);
}

.wizard-brand i[b-m82sue02re] {
    font-size: 1.25rem;
}

.btn-ghost[b-m82sue02re] {
    background: none;
    border: none;
    color: var(--bs-secondary-color, #6c757d);
    padding: 0.25rem 0.5rem;
    border-radius: 0.375rem;
    transition: background 0.15s;
}

.btn-ghost:hover[b-m82sue02re] {
    background: var(--bs-tertiary-bg, #f0f0f0);
}

/* ─── Step indicator bar ─── */
.wizard-steps-bar[b-m82sue02re] {
    display: flex;
    align-items: center;
    padding: 1rem 1.5rem;
    gap: 0;
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
    background: var(--bs-tertiary-bg, #f8f9fa);
}

.step-dot[b-m82sue02re] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 2px solid var(--bs-border-color, #dee2e6);
    background: var(--bs-body-bg, #fff);
    color: var(--bs-secondary-color, #999);
    font-size: 0.75rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    flex-shrink: 0;
    padding: 0;
}

.step-dot:hover[b-m82sue02re] {
    border-color: var(--bs-primary, #0d6efd);
    color: var(--bs-primary, #0d6efd);
}

.step-dot.active[b-m82sue02re] {
    border-color: var(--bs-primary, #0d6efd);
    background: var(--bs-primary, #0d6efd);
    color: #fff;
}

.step-dot.done[b-m82sue02re] {
    border-color: var(--bs-success, #198754);
    background: var(--bs-success, #198754);
    color: #fff;
}

.step-line[b-m82sue02re] {
    flex: 1;
    height: 2px;
    background: var(--bs-border-color, #dee2e6);
    min-width: 8px;
    transition: background 0.2s ease;
}

.step-line.done[b-m82sue02re] {
    background: var(--bs-success, #198754);
}

/* ─── Body ─── */
.wizard-body[b-m82sue02re] {
    flex: 1;
    overflow-y: auto;
    padding: 1.5rem;
}

.wizard-step-content[b-m82sue02re] {
    min-height: 200px;
}

.step-header[b-m82sue02re] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.step-icon[b-m82sue02re] {
    font-size: 2rem;
    color: var(--bs-primary, #0d6efd);
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.step-header h4[b-m82sue02re] {
    margin-bottom: 0.25rem;
}

/* ─── Hero icon for welcome/finish ─── */
.wizard-hero-icon[b-m82sue02re] {
    font-size: 4rem;
    margin-bottom: 1rem;
    color: var(--bs-primary, #0d6efd);
}

/* ─── Checklist preview ─── */
.wizard-checklist-preview[b-m82sue02re] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    text-align: left;
    max-width: 320px;
    margin: 0 auto;
}

.preview-item[b-m82sue02re] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.375rem 0;
    font-size: 0.9375rem;
}

.preview-item.done[b-m82sue02re] {
    color: var(--bs-success, #198754);
}

.preview-item.pending[b-m82sue02re] {
    color: var(--bs-secondary-color, #6c757d);
}

/* ─── Footer ─── */
.wizard-footer[b-m82sue02re] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.5rem;
    border-top: 1px solid var(--bs-border-color, #dee2e6);
    background: var(--bs-tertiary-bg, #f8f9fa);
}

/* ─── Responsive ─── */
@media (max-width: 576px) {
    .onboarding-wizard[b-m82sue02re] {
        max-height: 95vh;
        border-radius: 0.75rem;
    }

    .wizard-steps-bar[b-m82sue02re] {
        padding: 0.75rem 1rem;
    }

    .step-dot[b-m82sue02re] {
        width: 24px;
        height: 24px;
        font-size: 0.65rem;
    }

    .wizard-body[b-m82sue02re] {
        padding: 1rem;
    }

    .wizard-footer[b-m82sue02re] {
        flex-direction: column-reverse;
        gap: 0.5rem;
    }
}
/* _content/BusinessPortal/Components/Pipeline/PipelineVisualizer.razor.rz.scp.css */
.pipeline-visualizer[b-643dzavua2] {
    padding: 1rem 0;
}

/* ─── Day selector ─── */
.day-selector[b-643dzavua2] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.25rem;
}

.day-btn[b-643dzavua2] {
    min-width: 40px;
    font-size: 0.8125rem;
    padding: 0.2rem 0.5rem;
}

/* ─── Flowchart ─── */
.flowchart-container[b-643dzavua2] {
    display: flex;
    align-items: center;
    gap: 0;
    overflow-x: auto;
    padding: 1rem 0.5rem;
    -webkit-overflow-scrolling: touch;
}

.flow-node[b-643dzavua2] {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 80px;
    text-align: center;
    flex-shrink: 0;
}

.node-icon[b-643dzavua2] {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.125rem;
    border: 2px solid;
    transition: all 0.2s ease;
    margin-bottom: 0.375rem;
}

/* Enabled states */
.flow-node.enabled.lifecycle .node-icon[b-643dzavua2] {
    background: rgba(25, 135, 84, 0.1);
    border-color: var(--bs-success, #198754);
    color: var(--bs-success, #198754);
}

.flow-node.enabled.email .node-icon[b-643dzavua2] {
    background: rgba(13, 110, 253, 0.1);
    border-color: var(--bs-primary, #0d6efd);
    color: var(--bs-primary, #0d6efd);
}

/* Disabled states */
.flow-node.disabled .node-icon[b-643dzavua2] {
    background: var(--bs-tertiary-bg, #f0f0f0);
    border-color: var(--bs-border-color, #dee2e6);
    color: var(--bs-secondary-color, #adb5bd);
    opacity: 0.6;
}

.flow-node.disabled .node-label[b-643dzavua2],
.flow-node.disabled .node-timing[b-643dzavua2] {
    opacity: 0.5;
    text-decoration: line-through;
}

.node-label[b-643dzavua2] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--bs-body-color, #212529);
    line-height: 1.2;
}

.node-timing[b-643dzavua2] {
    font-size: 0.6875rem;
    color: var(--bs-secondary-color, #6c757d);
    margin-top: 0.125rem;
}

/* ─── Arrows ─── */
.flow-arrow[b-643dzavua2] {
    display: flex;
    align-items: center;
    color: var(--bs-success, #198754);
    font-size: 0.875rem;
    padding: 0 0.125rem;
    flex-shrink: 0;
    margin-bottom: 1.25rem; /* align with node center, above labels */
}

.flow-arrow.disabled[b-643dzavua2] {
    color: var(--bs-border-color, #dee2e6);
}

/* ─── Legend ─── */
.flow-legend[b-643dzavua2] {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}

.legend-item[b-643dzavua2] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.legend-dot[b-643dzavua2] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: 2px solid;
}

.legend-dot.enabled[b-643dzavua2] {
    background: rgba(25, 135, 84, 0.15);
    border-color: var(--bs-success, #198754);
}

.legend-dot.disabled[b-643dzavua2] {
    background: var(--bs-tertiary-bg, #f0f0f0);
    border-color: var(--bs-border-color, #dee2e6);
}

.legend-dot.lifecycle[b-643dzavua2] {
    background: rgba(25, 135, 84, 0.15);
    border-color: var(--bs-success, #198754);
}

.legend-dot.email[b-643dzavua2] {
    background: rgba(13, 110, 253, 0.15);
    border-color: var(--bs-primary, #0d6efd);
}

/* ─── Responsive ─── */
@media (max-width: 768px) {
    .flow-node[b-643dzavua2] {
        min-width: 64px;
    }

    .node-icon[b-643dzavua2] {
        width: 36px;
        height: 36px;
        font-size: 0.9375rem;
    }

    .node-label[b-643dzavua2] {
        font-size: 0.6875rem;
    }
}
/* _content/BusinessPortal/Components/Shared/AddPaymentPanel.razor.rz.scp.css */
.payment-actions[b-l0jr34u9c5] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    margin-top: 1rem;
    flex-wrap: wrap;
}

.payment-status[b-l0jr34u9c5] {
    flex: 1 1 200px;
    max-width: 100%;
    min-width: 0;
    font-size: 0.85rem;
    color: var(--text-muted);
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    word-break: break-word;
}

.payment-actions-buttons[b-l0jr34u9c5] {
    flex: 0 0 auto;
    min-width: fit-content;
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    justify-content: flex-end;
}

@media (max-width: 900px) {
    .payment-actions[b-l0jr34u9c5] {
        flex-direction: column;
        align-items: stretch;
    }

    .payment-actions-buttons[b-l0jr34u9c5] {
        justify-content: flex-start;
    }
}
/* _content/BusinessPortal/Components/Shared/AnalogTimePicker.razor.rz.scp.css */
/* ============================================================
   AnalogTimePicker — compact disclosure that pops a clock face
   for click-to-set hour and minute selection.
   ============================================================ */

.atp-root[b-i3g83ctjcx] {
    position: relative;
    display: inline-block;
}

.atp-trigger[b-i3g83ctjcx] {
    background: #f3f4f6;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #475569;
    cursor: pointer;
    margin-top: 4px;
    transition: background 80ms;
}

.atp-trigger:hover[b-i3g83ctjcx] {
    background: #e5e7eb;
    color: #0f172a;
}

.atp-open .atp-trigger[b-i3g83ctjcx] {
    background: #3b82f6;
    color: #fff;
    border-color: #3b82f6;
}

.atp-pop[b-i3g83ctjcx] {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    z-index: 10030;
    background: #fff;
    border-radius: 12px;
    padding: 12px;
    box-shadow: 0 12px 24px -8px rgba(15, 23, 42, 0.25), 0 0 0 1px rgba(15, 23, 42, 0.06);
    width: 240px;
    animation: atp-pop-in-b-i3g83ctjcx 120ms ease-out;
}

@keyframes atp-pop-in-b-i3g83ctjcx {
    from { opacity: 0; transform: translateY(-4px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ── Mode row (hour : minute + AM/PM) ─────── */

.atp-mode-row[b-i3g83ctjcx] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    margin-bottom: 8px;
}

.atp-mode-btn[b-i3g83ctjcx] {
    background: transparent;
    border: 1px solid transparent;
    border-radius: 6px;
    padding: 4px 10px;
    font-size: 22px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    color: #94a3b8;
    cursor: pointer;
    min-width: 50px;
    text-align: center;
}

.atp-mode-btn:hover[b-i3g83ctjcx] {
    background: #f3f4f6;
}

.atp-mode-btn.active[b-i3g83ctjcx] {
    color: #0f172a;
    background: #dbeafe;
    border-color: #93c5fd;
}

.atp-sep[b-i3g83ctjcx] {
    font-size: 22px;
    font-weight: 700;
    color: #94a3b8;
}

.atp-ampm[b-i3g83ctjcx] {
    margin-left: 12px;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.atp-ampm-btn[b-i3g83ctjcx] {
    background: transparent;
    border: 1px solid #e5e7eb;
    border-radius: 4px;
    padding: 2px 8px;
    font-size: 11px;
    font-weight: 600;
    color: #6b7280;
    cursor: pointer;
}

.atp-ampm-btn.active[b-i3g83ctjcx] {
    background: #3b82f6;
    color: #fff;
    border-color: #3b82f6;
}

/* ── Clock face ────────────────────────────── */

.atp-face[b-i3g83ctjcx] {
    width: 200px;
    height: 200px;
    display: block;
    margin: 0 auto;
    cursor: pointer;
    user-select: none;
}

.atp-rim[b-i3g83ctjcx] {
    fill: #f9fafb;
    stroke: #e5e7eb;
    stroke-width: 1.5;
}

.atp-tick[b-i3g83ctjcx] {
    font-size: 14px;
    font-weight: 600;
    fill: #475569;
    pointer-events: none;
}

.atp-tick.active[b-i3g83ctjcx] {
    fill: #fff;
    font-weight: 700;
}

.atp-hand[b-i3g83ctjcx] {
    stroke: #3b82f6;
    stroke-width: 2;
    stroke-linecap: round;
}

.atp-hub[b-i3g83ctjcx] {
    fill: #3b82f6;
}

.atp-hand-cap[b-i3g83ctjcx] {
    fill: #3b82f6;
    opacity: 0.92;
}

/* ── Action row ──────────────────────────── */

.atp-actions[b-i3g83ctjcx] {
    display: flex;
    justify-content: flex-end;
    gap: 6px;
    margin-top: 8px;
}

.atp-clear[b-i3g83ctjcx], .atp-done[b-i3g83ctjcx] {
    background: transparent;
    border: none;
    padding: 6px 12px;
    font-size: 13px;
    font-weight: 500;
    border-radius: 6px;
    cursor: pointer;
}

.atp-clear[b-i3g83ctjcx] {
    color: #6b7280;
}

.atp-clear:hover[b-i3g83ctjcx] {
    background: #f3f4f6;
    color: #0f172a;
}

.atp-done[b-i3g83ctjcx] {
    color: #fff;
    background: #3b82f6;
}

.atp-done:hover[b-i3g83ctjcx] {
    background: #2563eb;
}
/* _content/BusinessPortal/Components/Shared/BugReportModal.razor.rz.scp.css */
.bug-modal-backdrop[b-brq85we6xk] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 1050;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: calc(1rem + env(safe-area-inset-top)) 1rem calc(1rem + env(safe-area-inset-bottom));
}

.bug-modal[b-brq85we6xk] {
    position: relative;
    background: var(--bg-primary, #fff);
    border: 1px solid var(--border-color, #dee2e6);
    border-radius: 0.5rem;
    width: min(520px, 100%);
    max-height: calc(100vh - 2rem);
    max-height: calc(100dvh - 2rem - env(safe-area-inset-top) - env(safe-area-inset-bottom));
    display: flex;
    flex-direction: column;
    z-index: 1051;
    box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.3);
}

.bug-modal-header[b-brq85we6xk] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--border-color, #dee2e6);
}

.bug-modal-header h5[b-brq85we6xk] {
    margin: 0;
    font-size: 1rem;
}

.bug-modal-body[b-brq85we6xk] {
    padding: 1rem;
    overflow-y: auto;
    flex: 1;
}

.bug-modal-footer[b-brq85we6xk] {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    border-top: 1px solid var(--border-color, #dee2e6);
}

.screenshot-preview[b-brq85we6xk] {
    border: 1px solid var(--border-color, #dee2e6);
    border-radius: 0.375rem;
    padding: 0.5rem;
    text-align: center;
}

.screenshot-preview img[b-brq85we6xk] {
    max-width: 100%;
    max-height: 150px;
    border-radius: 0.25rem;
}

.captured-info[b-brq85we6xk] {
    font-size: 0.8rem;
    background: var(--bg-hover, #f8f9fa);
    padding: 0.5rem 0.75rem;
    border-radius: 0.375rem;
    line-height: 1.6;
}

.captured-info div[b-brq85we6xk] {
    word-break: break-all;
}

.alert-sm[b-brq85we6xk] {
    padding: 0.375rem 0.75rem;
    font-size: 0.85rem;
}
/* _content/BusinessPortal/Components/Shared/DateJumpPicker.razor.rz.scp.css */
.date-jump[b-v5ls2scg9q] {
    position: relative;
    display: inline-block;
}

.date-jump-trigger[b-v5ls2scg9q] {
    display: inline-flex;
    align-items: center;
    font-weight: 600;
    white-space: nowrap;
}

/* The point of PL-172. The label is the only element on the agenda toolbar whose width changes
   as you page days, and that row wraps — so its width is reserved by the caller rather than
   measured from the text, and the row's geometry is identical on every day of the year. */
.date-jump-label[b-v5ls2scg9q] {
    display: inline-block;
    text-align: left;
}

.date-jump-caret[b-v5ls2scg9q] {
    opacity: 0.6;
    font-size: 0.75em;
}

/* Compact mode: looks like the small flat date input the agenda used before PL-172,
   while keeping the owned popover underneath. */
.date-jump-trigger-compact[b-v5ls2scg9q] {
    font-size: 0.8rem;
    font-weight: 400;
    padding: 0.15rem 0.45rem;
    border: 1px solid var(--bs-border-color);
    border-radius: 0.375rem;
    background: var(--bs-body-bg);
    color: var(--bs-body-color);
    font-variant-numeric: tabular-nums;
}

.date-jump-trigger-compact:hover[b-v5ls2scg9q] {
    background: var(--bs-secondary-bg);
}

/* Sits under the popover and over everything else, so the first click elsewhere closes the
   calendar instead of doing whatever it landed on. */
.date-jump-backdrop[b-v5ls2scg9q] {
    position: fixed;
    inset: 0;
    z-index: 1050;
    background: transparent;
}

.date-jump-pop[b-v5ls2scg9q] {
    position: absolute;
    top: calc(100% + 0.25rem);
    left: 0;
    z-index: 1051;
    width: 18rem;
    padding: 0.5rem;
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: 0.5rem;
}

.date-jump-pop-head[b-v5ls2scg9q] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin-bottom: 0.35rem;
}

.date-jump-pop-foot[b-v5ls2scg9q] {
    display: flex;
    justify-content: flex-end;
    margin-top: 0.35rem;
}

.date-jump-grid[b-v5ls2scg9q] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
}

.date-jump-head[b-v5ls2scg9q] {
    text-align: center;
    font-weight: 600;
    padding-bottom: 0.15rem;
}

.date-jump-day[b-v5ls2scg9q] {
    border: 1px solid transparent;
    background: transparent;
    border-radius: 0.25rem;
    padding: 0.3rem 0;
    font-size: 0.8125rem;
    line-height: 1.2;
    color: var(--bs-body-color);
    cursor: pointer;
}

.date-jump-day:hover[b-v5ls2scg9q] {
    background: var(--bs-secondary-bg);
}

/* Adjacent-month filler stays clickable — jumping to the 1st of next month is a normal thing
   to want from this grid — but must not read as part of the month on screen. */
.date-jump-other[b-v5ls2scg9q] {
    opacity: 0.4;
}

/* Today's cell. Marked the way native pickers do it — the number itself, not a drawn
   ring: the bordered-box treatment read as "click me" and was disliked. The class name
   is pinned by DateJumpPickerTests; only the presentation is subtle. */
.date-jump-today-ring[b-v5ls2scg9q] {
    font-weight: 700;
    color: var(--bs-primary);
}

.date-jump-sel[b-v5ls2scg9q] {
    background: var(--bs-primary);
    color: #fff;
    font-weight: 600;
}

.date-jump-sel:hover[b-v5ls2scg9q] {
    background: var(--bs-primary);
}
/* _content/BusinessPortal/Components/Shared/DateOfBirthPicker.razor.rz.scp.css */
/* PL-201: Bootstrap's .form-select.is-invalid paints an exclamation-mark
   background-image over the right edge of the select, colliding with the
   dropdown caret. Keep the red border and validation message but restore the
   base caret-only background (Bootstrap 5.1 stacks caret + icon as two
   background images, so `none` would erase the caret too).
   Note: no leading ::deep — .dob-picker is this component's root element, and
   `::deep .x` compiles to `[b-X] .x`, which requires a scoped ANCESTOR and
   would never match the root. A plain descendant selector gets the scope
   attribute appended to the rightmost selector and matches correctly. */
.dob-picker .form-select.is-invalid[b-dikk17b8r2] {
    padding-right: 2.25rem; /* base .form-select caret space */
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    background-position: right 0.75rem center;
    background-size: 16px 12px;
}
/* _content/BusinessPortal/Components/Shared/EmailPipelineVisual.razor.rz.scp.css */
.email-pipeline-visual[b-axeu545662] {
    padding: 0.75rem 0;
}

.pipeline-loading[b-axeu545662],
.pipeline-error[b-axeu545662] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
}

.pipeline-container[b-axeu545662] {
    position: relative;
    padding: 0.5rem 1rem;
}

/* The connecting track line - positioned relative to the stage nodes, not the full container */
.pipeline-track[b-axeu545662] {
    position: absolute;
    /* Center on the circles (36px height / 2 = 18px from top of stages area + padding) */
    top: calc(0.5rem + 18px);
    left: 2rem;
    right: 2rem;
    height: 2px;
    background: var(--bs-border-color);
    z-index: 0;
}

.pipeline-stages[b-axeu545662] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    position: relative;
    z-index: 1;
}

.pipeline-stage[b-axeu545662] {
    display: flex;
    flex-direction: column;
    align-items: center;
    cursor: pointer;
    transition: transform 0.15s ease;
}

.pipeline-stage:hover[b-axeu545662] {
    transform: translateY(-2px);
}

.stage-node[b-axeu545662] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    background: var(--bs-body-bg);
    border: 2px solid var(--bs-border-color);
    transition: all 0.2s ease;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.stage-label[b-axeu545662] {
    font-size: 0.7rem;
    font-weight: 500;
    margin-top: 0.35rem;
    color: var(--bs-secondary);
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

/* Sent - Success state with gold/amber accent */
.stage-sent .stage-node[b-axeu545662] {
    background: linear-gradient(135deg, #c9a227 0%, #d4af37 50%, #c9a227 100%);
    border-color: #c9a227;
    color: #fff;
    box-shadow: 0 2px 12px rgba(201, 162, 39, 0.35);
}

.stage-sent .stage-label[b-axeu545662] {
    color: #b8941f;
    font-weight: 600;
}

/* Pending - Subtle animation */
.stage-pending .stage-node[b-axeu545662] {
    background: var(--bs-body-bg);
    border-color: var(--bs-secondary);
    color: var(--bs-secondary);
    animation: pulse-soft-b-axeu545662 2s ease-in-out infinite;
}

@keyframes pulse-soft-b-axeu545662 {
    0%, 100% {
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    }
    50% {
        box-shadow: 0 2px 16px rgba(108, 117, 125, 0.2);
    }
}

.stage-pending .stage-label[b-axeu545662] {
    color: var(--bs-secondary);
}

/* Disabled - Muted with strikethrough feel */
.stage-disabled .stage-node[b-axeu545662] {
    background: var(--bs-body-bg);
    border-color: var(--bs-secondary);
    border-style: dashed;
    color: var(--bs-secondary);
    opacity: 0.6;
}

.stage-disabled .stage-label[b-axeu545662] {
    color: var(--bs-secondary);
    opacity: 0.6;
    text-decoration: line-through;
}

/* Skipped - Similar to disabled but different */
.stage-skipped .stage-node[b-axeu545662] {
    background: var(--bs-body-bg);
    border-color: var(--bs-secondary);
    color: var(--bs-secondary);
    opacity: 0.5;
}

.stage-skipped .stage-label[b-axeu545662] {
    color: var(--bs-secondary);
    opacity: 0.5;
}

/* Failed - Red warning */
.stage-failed .stage-node[b-axeu545662] {
    background: var(--bs-body-bg);
    border-color: var(--bs-danger);
    color: var(--bs-danger);
}

.stage-failed .stage-label[b-axeu545662] {
    color: var(--bs-danger);
}

/* Not Sent - Neutral empty state */
.stage-not-sent .stage-node[b-axeu545662] {
    background: var(--bs-body-bg);
    border-color: var(--bs-border-color);
    color: var(--bs-secondary);
}

.stage-not-sent .stage-label[b-axeu545662] {
    color: var(--bs-secondary);
}

/* Unknown fallback */
.stage-unknown .stage-node[b-axeu545662] {
    background: var(--bs-body-bg);
    border-color: var(--bs-border-color);
    color: var(--bs-secondary);
}

/* Active stage - glowing pulse indicator (matches Agenda timeline dot) */
.pipeline-stage.stage-active .stage-node[b-axeu545662] {
    position: relative;
}

.pipeline-stage.stage-active .stage-node[b-axeu545662]::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 10px;
    height: 10px;
    background: var(--accent, #e88634);
    border-radius: 50%;
    box-shadow: 0 0 0 4px var(--accent-soft, rgba(232, 134, 52, 0.2));
    animation: pipeline-pulse-b-axeu545662 2s ease-in-out infinite;
    z-index: -1;
}

@keyframes pipeline-pulse-b-axeu545662 {
    0%, 100% { transform: translate(-50%, -50%) scale(1); }
    50% { transform: translate(-50%, -50%) scale(1.4); }
}

/* Active + Sent: gold glow */
.pipeline-stage.stage-sent.stage-active .stage-node[b-axeu545662]::after {
    background: #c9a227;
    box-shadow: 0 0 0 4px rgba(201, 162, 39, 0.2);
}

/* Active + Failed: red glow */
.pipeline-stage.stage-failed.stage-active .stage-node[b-axeu545662]::after {
    background: var(--bs-danger);
    box-shadow: 0 0 0 4px rgba(220, 53, 69, 0.2);
}

/* Event state indicator */
.event-state-indicator[b-axeu545662] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    margin-bottom: 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 500;
}

.event-state-upcoming[b-axeu545662] {
    background: linear-gradient(135deg, rgba(13, 110, 253, 0.1) 0%, rgba(13, 110, 253, 0.05) 100%);
    color: var(--bs-primary);
    border: 1px solid rgba(13, 110, 253, 0.2);
}

.event-state-in-progress[b-axeu545662] {
    background: linear-gradient(135deg, rgba(25, 135, 84, 0.1) 0%, rgba(25, 135, 84, 0.05) 100%);
    color: var(--bs-success);
    border: 1px solid rgba(25, 135, 84, 0.2);
    animation: pulse-progress-b-axeu545662 2s ease-in-out infinite;
}

@keyframes pulse-progress-b-axeu545662 {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.7; }
}

.event-state-passed[b-axeu545662] {
    background: linear-gradient(135deg, rgba(108, 117, 125, 0.1) 0%, rgba(108, 117, 125, 0.05) 100%);
    color: var(--bs-secondary);
    border: 1px solid rgba(108, 117, 125, 0.2);
}

.event-state-dot[b-axeu545662] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
}

.event-state-upcoming .event-state-dot[b-axeu545662] {
    background: var(--bs-primary);
}

.event-state-in-progress .event-state-dot[b-axeu545662] {
    background: var(--bs-success);
    animation: blink-b-axeu545662 1.5s ease-in-out infinite;
}

@keyframes blink-b-axeu545662 {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.3; }
}

.event-state-passed .event-state-dot[b-axeu545662] {
    background: var(--bs-secondary);
}

/* Manual send section */
.manual-sends-section[b-axeu545662] {
    border-top: 1px dashed var(--bs-border-color);
    margin-top: 0.75rem;
    padding-top: 0.5rem;
}

.manual-sends-header[b-axeu545662] {
    font-size: 0.65rem;
    text-transform: uppercase;
    color: var(--bs-secondary);
    margin-bottom: 0.35rem;
    letter-spacing: 0.03em;
}

.manual-sends-list[b-axeu545662] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.manual-send-badge[b-axeu545662] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.2rem 0.5rem;
    font-size: 0.65rem;
    border-radius: 4px;
    background: var(--bs-light);
    border: 1px solid var(--bs-border-color);
    color: var(--bs-body-color);
}

.manual-send-badge i[b-axeu545662] {
    font-size: 0.6rem;
}

.manual-send-badge.email-badge[b-axeu545662] {
    background: rgba(13, 110, 253, 0.08);
    border-color: rgba(13, 110, 253, 0.2);
}

.manual-send-badge.sms-badge[b-axeu545662] {
    background: rgba(25, 135, 84, 0.08);
    border-color: rgba(25, 135, 84, 0.2);
}

/* Delivery status badges */
.delivery-badge[b-axeu545662] {
    font-size: 0.55rem;
    padding: 1px 4px;
    border-radius: 3px;
    margin-top: 2px;
    display: inline-flex;
    align-items: center;
}

.delivery-badge i[b-axeu545662] {
    font-size: 0.55rem;
}

.delivery-success[b-axeu545662] {
    color: var(--bs-success);
}

.delivery-bounce[b-axeu545662] {
    color: var(--bs-danger);
}

.delivery-dropped[b-axeu545662] {
    color: var(--bs-danger);
}

.delivery-deferred[b-axeu545662] {
    color: var(--bs-warning);
}

.delivery-unknown[b-axeu545662] {
    color: var(--bs-secondary);
}

/* Responsive adjustments */
@media (max-width: 400px) {
    .pipeline-container[b-axeu545662] {
        padding: 0.5rem;
    }

    .stage-node[b-axeu545662] {
        width: 30px;
        height: 30px;
        font-size: 0.85rem;
    }

    .stage-label[b-axeu545662] {
        font-size: 0.6rem;
    }

    .pipeline-track[b-axeu545662] {
        left: 1.25rem;
        right: 1.25rem;
        /* Adjust for smaller nodes: 30px / 2 = 15px */
        top: calc(0.5rem + 15px);
    }

    .event-state-indicator[b-axeu545662] {
        font-size: 0.7rem;
        padding: 0.4rem 0.5rem;
    }
}
/* _content/BusinessPortal/Components/Shared/EmployeeOnboardingBanner.razor.rz.scp.css */
/* Pins the onboarding nag to the bottom of the viewport instead of letting it scroll
   away at the end of the agenda. Mirrors WhatsNewBanner so the two stack predictably
   when both are showing. */
.employee-onboarding-banner[b-lv9d00d0iv] {
    margin: 0;
    padding: 1rem;
    border: none;
    border-left: 5px solid var(--bs-info, #0dcaf0);
    border-radius: 0;
    position: sticky;
    bottom: 0;
    z-index: 1029; /* just under WhatsNewBanner (1030) so it sits above it in the flow */
    animation: slideUp-b-lv9d00d0iv 0.5s ease-out;
}

@keyframes slideUp-b-lv9d00d0iv {
    from {
        transform: translateY(100%);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

@media (prefers-reduced-motion: reduce) {
    .employee-onboarding-banner[b-lv9d00d0iv] {
        animation: none;
    }
}

@media (max-width: 768px) {
    .employee-onboarding-banner[b-lv9d00d0iv] {
        padding: 0.75rem;
    }

    .employee-onboarding-banner .btn-sm[b-lv9d00d0iv] {
        font-size: 0.75rem;
        padding: 0.25rem 0.5rem;
    }
}

@media (max-width: 576px) {
    .employee-onboarding-banner .row[b-lv9d00d0iv] {
        flex-wrap: wrap;
        row-gap: 0.5rem;
    }
}
/* _content/BusinessPortal/Components/Shared/ErrorToastHost.razor.rz.scp.css */
.error-toast-host[b-depjcgzldj] {
    position: fixed;
    top: 1.25rem;
    right: 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    z-index: 7200;
    max-width: min(360px, 90vw);
}

.error-toast[b-depjcgzldj] {
    border-radius: 18px;
    border: 1px solid rgba(232, 134, 52, 0.35);
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(245, 235, 215, 0.85) 60%, rgba(255, 255, 255, 0.98) 100%);
    box-shadow: 0 18px 32px rgba(15, 23, 42, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.7);
    padding: 0.85rem 1rem;
    cursor: pointer;
    transition: transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast);
}

.error-toast:hover[b-depjcgzldj] {
    transform: translateY(-2px);
    border-color: rgba(232, 134, 52, 0.6);
    box-shadow: 0 22px 40px rgba(15, 23, 42, 0.24);
}

.error-toast-header[b-depjcgzldj] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.4rem;
}

.error-toast-title[b-depjcgzldj] {
    font-weight: var(--font-semibold);
    color: var(--text-strong);
    font-size: 0.95rem;
}

.error-toast-message[b-depjcgzldj] {
    color: var(--text-normal);
    font-size: 0.85rem;
    line-height: 1.35;
}

.error-toast-meta[b-depjcgzldj] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 0.5rem;
    font-size: 0.7rem;
    color: var(--text-muted);
}

.error-toast-reported[b-depjcgzldj] {
    font-weight: var(--font-semibold);
    color: var(--accent-strong);
}

.error-toast-close[b-depjcgzldj] {
    border: none;
    background: rgba(15, 23, 42, 0.08);
    color: var(--text-muted);
    border-radius: 999px;
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.error-toast-close:hover[b-depjcgzldj] {
    background: rgba(15, 23, 42, 0.12);
    color: var(--text-strong);
}

.error-detail-modal[b-depjcgzldj] {
    z-index: 7300;
}

.error-detail-section[b-depjcgzldj] {
    margin-bottom: 1rem;
}

.error-detail-label[b-depjcgzldj] {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--text-muted);
    margin-bottom: 0.35rem;
    font-weight: var(--font-semibold);
}

.error-detail-value[b-depjcgzldj] {
    color: var(--text-strong);
    font-size: 0.95rem;
}

.error-detail-pre[b-depjcgzldj] {
    background: var(--surface-1);
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    padding: 0.75rem;
    white-space: pre-wrap;
    font-size: 0.8rem;
    color: var(--text-normal);
    max-height: 280px;
    overflow-y: auto;
}

.error-detail-status[b-depjcgzldj] {
    font-size: 0.8rem;
    color: var(--text-muted);
    margin-right: auto;
}

[data-theme="dark"] .error-toast[b-depjcgzldj] {
    background: linear-gradient(135deg, rgba(20, 24, 30, 0.96) 0%, rgba(32, 27, 18, 0.92) 60%, rgba(20, 24, 30, 0.96) 100%);
    border-color: rgba(232, 134, 52, 0.35);
    box-shadow: 0 18px 32px rgba(0, 0, 0, 0.45);
}
/* _content/BusinessPortal/Components/Shared/InfoTooltip.razor.rz.scp.css */
.info-tooltip-wrapper[b-tivn2tfyie] {
    position: relative;
    display: inline-flex;
    align-items: center;
    cursor: help;
    margin-left: 0.35rem;
    vertical-align: middle;
}

.info-tooltip-icon[b-tivn2tfyie] {
    font-size: 0.85rem;
    opacity: 0.55;
    transition: opacity 0.15s ease;
}

.info-tooltip-wrapper:hover .info-tooltip-icon[b-tivn2tfyie],
.info-tooltip-wrapper:focus-within .info-tooltip-icon[b-tivn2tfyie] {
    opacity: 0.9;
}

.info-tooltip-popup[b-tivn2tfyie] {
    position: absolute;
    z-index: 1070;
    padding: 0.5rem 0.75rem;
    font-size: 0.8125rem;
    font-weight: 400;
    line-height: 1.4;
    color: #fff;
    background: rgba(15, 23, 42, 0.92);
    border-radius: 0.375rem;
    white-space: normal;
    width: max-content;
    max-width: 280px;
    pointer-events: none;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.info-tooltip-arrow[b-tivn2tfyie] {
    position: absolute;
    width: 8px;
    height: 8px;
    background: rgba(15, 23, 42, 0.92);
    transform: rotate(45deg);
}

/* Top position (default) */
.info-tooltip-top[b-tivn2tfyie] {
    bottom: calc(100% + 8px);
    left: 50%;
    transform: translateX(-50%);
}

.info-tooltip-top .info-tooltip-arrow[b-tivn2tfyie] {
    bottom: -4px;
    left: 50%;
    margin-left: -4px;
}

/* Bottom position */
.info-tooltip-bottom[b-tivn2tfyie] {
    top: calc(100% + 8px);
    left: 50%;
    transform: translateX(-50%);
}

.info-tooltip-bottom .info-tooltip-arrow[b-tivn2tfyie] {
    top: -4px;
    left: 50%;
    margin-left: -4px;
}

/* Right position */
.info-tooltip-right[b-tivn2tfyie] {
    left: calc(100% + 8px);
    top: 50%;
    transform: translateY(-50%);
}

.info-tooltip-right .info-tooltip-arrow[b-tivn2tfyie] {
    left: -4px;
    top: 50%;
    margin-top: -4px;
}
/* _content/BusinessPortal/Components/Shared/MobileTabSelector.razor.rz.scp.css */
/* === MOBILE TAB SELECTOR — PREMIUM STYLING === */

.mobile-tab-selector[b-bd7dvnr349] {
    padding: var(--space-3) var(--space-4);
    background: linear-gradient(180deg, var(--surface-0) 0%, var(--surface-1) 100%);
    border-bottom: 1px solid var(--border-subtle);
}

.mobile-tab-select-wrapper[b-bd7dvnr349] {
    position: relative;
    display: flex;
    align-items: center;
}

.mobile-tab-select[b-bd7dvnr349] {
    width: 100%;
    padding: var(--space-3) var(--space-4);
    padding-right: 2.5rem;
    font-size: var(--text-base);
    font-weight: var(--font-semibold, 600);
    color: var(--text-strong);
    background: var(--surface-0);
    border: 1px solid var(--border-normal);
    border-radius: var(--radius-md);
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}

.mobile-tab-select:focus[b-bd7dvnr349] {
    border-color: var(--brand-gold-primary, #E88634);
    box-shadow: 0 0 0 3px rgba(232, 134, 52, 0.15);
    outline: none;
}

.mobile-tab-select:active[b-bd7dvnr349] {
    background: var(--surface-1);
}

.mobile-tab-chevron[b-bd7dvnr349] {
    position: absolute;
    right: var(--space-3);
    top: 50%;
    transform: translateY(-50%);
    color: var(--brand-gold-primary, #E88634);
    pointer-events: none;
    font-size: 0.875rem;
}

/* Dark mode */
[b-bd7dvnr349] [data-theme="dark"] .mobile-tab-select {
    background: var(--surface-1);
    border-color: var(--border-subtle);
    color: var(--text-strong);
}

[b-bd7dvnr349] [data-theme="dark"] .mobile-tab-select:focus {
    border-color: var(--brand-gold-primary, #E88634);
    box-shadow: 0 0 0 3px rgba(232, 134, 52, 0.2);
}

[b-bd7dvnr349] [data-theme="dark"] .mobile-tab-selector {
    background: linear-gradient(180deg, var(--surface-0) 0%, var(--surface-1) 100%);
}
/* _content/BusinessPortal/Components/Shared/NotificationToastHost.razor.rz.scp.css */
.notification-toast-stack[b-hufa8kz9gm] {
    position: fixed;
    bottom: 1.5rem;
    right: 1.5rem;
    z-index: var(--z-toast, 7100);
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
    max-width: min(380px, 90vw);
}

.notification-toast[b-hufa8kz9gm] {
    background: var(--surface-1, #ffffff);
    border: 1px solid var(--border-color, #dee2e6);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-3);
    overflow: hidden;
    animation: notification-toast-slide-in-b-hufa8kz9gm var(--transition-base) ease-out;
}

@keyframes notification-toast-slide-in-b-hufa8kz9gm {
    from {
        opacity: 0;
        transform: translateX(1.5rem);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@media (prefers-reduced-motion: reduce) {
    .notification-toast[b-hufa8kz9gm] {
        animation: none;
    }
}

.notification-toast-main[b-hufa8kz9gm] {
    display: flex;
    align-items: flex-start;
    gap: 0.625rem;
    padding: 0.75rem 1rem 0.5rem;
}

.notification-toast-main.clickable[b-hufa8kz9gm] {
    cursor: pointer;
}

.notification-toast-main.clickable:hover[b-hufa8kz9gm] {
    background: rgba(0, 0, 0, 0.03);
}

.notification-toast-icon[b-hufa8kz9gm] {
    flex-shrink: 0;
    font-size: 1.15rem;
    margin-top: 0.1rem;
}

.notification-toast-text[b-hufa8kz9gm] {
    flex: 1;
    min-width: 0;
}

.notification-toast-title[b-hufa8kz9gm] {
    font-weight: 600;
    font-size: 0.9rem;
    line-height: 1.3;
    color: var(--text-strong);
}

.notification-toast-body[b-hufa8kz9gm] {
    font-size: 0.85rem;
    line-height: 1.35;
    color: var(--text-muted, #6c757d);
    margin-top: 0.15rem;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.notification-toast-time[b-hufa8kz9gm] {
    font-size: 0.75rem;
    color: var(--text-muted, #6c757d);
    margin-top: 0.25rem;
}

.notification-toast-actions[b-hufa8kz9gm] {
    display: flex;
    justify-content: flex-end;
    gap: 0.25rem;
    padding: 0.25rem 0.625rem 0.5rem;
}

.notification-toast-btn[b-hufa8kz9gm] {
    border: none;
    background: transparent;
    color: var(--text-muted, #6c757d);
    font-size: 0.75rem;
    padding: 0.25rem 0.5rem;
    border-radius: var(--radius-sm, 4px);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    transition: color var(--transition-fast), background var(--transition-fast);
}

.notification-toast-btn:hover[b-hufa8kz9gm] {
    color: var(--text-strong);
    background: rgba(0, 0, 0, 0.06);
}

[data-theme="dark"] .notification-toast[b-hufa8kz9gm] {
    background: var(--surface-1, #1a1a2e);
}

[data-theme="dark"] .notification-toast-main.clickable:hover[b-hufa8kz9gm] {
    background: rgba(255, 255, 255, 0.04);
}

[data-theme="dark"] .notification-toast-btn:hover[b-hufa8kz9gm] {
    background: rgba(255, 255, 255, 0.1);
}
/* _content/BusinessPortal/Components/Shared/ProfileDropdown.razor.rz.scp.css */
/* Mobile responsive dropdown button */
@media (max-width: 640px) {
    .dropdown-toggle[b-7s0ftux3tt] {
        font-size: 0.85rem !important;
        padding: 0.25rem 0.5rem !important;
    }

    .dropdown-toggle span[b-7s0ftux3tt] {
        display: none !important;
    }

    .dropdown-toggle i[b-7s0ftux3tt] {
        margin-right: 0 !important;
        font-size: 1.2rem !important;
    }
}

.dropdown-menu[b-7s0ftux3tt] {
    text-align: left;
}

.dropdown-item[b-7s0ftux3tt] {
    text-align: left;
}

.dropdown-item.text-center[b-7s0ftux3tt] {
    text-align: center;
}
/* _content/BusinessPortal/Components/Shared/QuickSearch.razor.rz.scp.css */
.quick-search[b-vl5joqd2e4] {
    position: relative;
    width: 100%;
    max-width: 420px;
}

.search-box[b-vl5joqd2e4] {
    display: flex;
    align-items: center;
    gap: var(--space-2);
    background: var(--surface-1);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-full);
    padding: var(--space-2) var(--space-4);
    min-width: 280px;
    max-width: 420px;
    width: 100%;
    transition: all var(--transition-fast);
}

.search-box:focus-within[b-vl5joqd2e4] {
    border-color: var(--accent);
    box-shadow: 0 0 0 3px var(--accent-soft);
}

.search-box i[b-vl5joqd2e4] {
    color: var(--text-muted);
}

.search-box input[b-vl5joqd2e4] {
    border: none;
    background: transparent;
    outline: none;
    flex: 1;
    color: var(--text-normal);
}

.search-box input[b-vl5joqd2e4]::placeholder {
    color: var(--text-muted);
}

.quick-search-clear[b-vl5joqd2e4] {
    border: none;
    background: transparent;
    color: var(--text-muted);
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 999px;
}

.quick-search-clear:hover[b-vl5joqd2e4] {
    background: var(--surface-2);
    color: var(--text-strong);
}

.quick-search-dropdown[b-vl5joqd2e4] {
    position: absolute;
    top: calc(100% + 0.5rem);
    left: 0;
    right: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(246, 240, 232, 0.94) 100%);
    border: 2px solid rgba(232, 134, 52, 0.3);
    border-radius: 20px;
    box-shadow: 0 8px 24px rgba(232, 134, 52, 0.15), 0 24px 48px rgba(15, 23, 42, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.9);
    padding: 0.75rem;
    z-index: 200;
    backdrop-filter: blur(12px);
}

[data-theme="dark"] .quick-search-dropdown[b-vl5joqd2e4] {
    background: linear-gradient(180deg, rgba(15, 19, 26, 0.98) 0%, rgba(24, 20, 16, 0.94) 100%);
    border-color: rgba(232, 134, 52, 0.2);
}

.quick-search-state[b-vl5joqd2e4] {
    padding: 0.75rem;
    display: flex;
    align-items: center;
    gap: var(--space-2);
    font-size: var(--text-sm);
    color: var(--text-muted);
}

.quick-search-results[b-vl5joqd2e4] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    max-height: 320px;
    overflow-y: auto;
}

.quick-search-item[b-vl5joqd2e4] {
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    background: var(--surface-0);
    text-align: left;
    padding: 0.7rem 0.85rem;
    transition: all var(--transition-base);
    cursor: pointer;
    position: relative;
}

.quick-search-item[b-vl5joqd2e4]::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: linear-gradient(180deg, var(--accent) 0%, var(--accent-strong) 100%);
    border-radius: 12px 0 0 12px;
    opacity: 0;
    transition: opacity var(--transition-base);
}

.quick-search-item:hover[b-vl5joqd2e4] {
    border-color: var(--accent);
    background: linear-gradient(135deg, rgba(232, 134, 52, 0.12) 0%, rgba(255, 255, 255, 0.98) 60%);
    box-shadow: 0 4px 12px rgba(232, 134, 52, 0.15), 0 2px 6px rgba(15, 23, 42, 0.08);
    transform: translateX(2px);
}

.quick-search-item:hover[b-vl5joqd2e4]::before {
    opacity: 1;
}

.quick-search-item:active[b-vl5joqd2e4] {
    transform: translateX(1px) scale(0.99);
}

.quick-search-title[b-vl5joqd2e4] {
    font-size: var(--text-sm);
    font-weight: var(--font-semibold);
    color: var(--text-strong);
}

.quick-search-meta[b-vl5joqd2e4] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

@media (max-width: 768px) {
    .quick-search[b-vl5joqd2e4] {
        max-width: 100%;
    }

    .search-box[b-vl5joqd2e4] {
        min-width: 0;
        max-width: 100%;
    }
}
/* _content/BusinessPortal/Components/Shared/RuleDateCalendar.razor.rz.scp.css */
.rule-date-calendar[b-yjbr0lz7dt] {
    max-width: 22rem;
}

.cal-grid[b-yjbr0lz7dt] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
}

.cal-head[b-yjbr0lz7dt] {
    text-align: center;
    font-weight: 600;
    padding-bottom: 0.15rem;
}

.cal-day[b-yjbr0lz7dt] {
    border: 1px solid transparent;
    background: transparent;
    border-radius: 0.25rem;
    padding: 0.25rem 0;
    font-size: 0.8125rem;
    line-height: 1.2;
    color: var(--bs-body-color);
    cursor: pointer;
}

.cal-day:hover[b-yjbr0lz7dt] {
    background: var(--bs-secondary-bg);
}

/* Adjacent-month filler days stay clickable — a range often starts a few days back —
   but must not read as part of the month on screen. */
.cal-other[b-yjbr0lz7dt] {
    opacity: 0.4;
}

.cal-today[b-yjbr0lz7dt] {
    border-color: var(--bs-primary);
}

.cal-in-range[b-yjbr0lz7dt] {
    background: var(--bs-primary-bg-subtle);
}

.cal-sel[b-yjbr0lz7dt] {
    background: var(--bs-primary);
    color: #fff;
    font-weight: 600;
}

.cal-sel:hover[b-yjbr0lz7dt] {
    background: var(--bs-primary);
}

.cal-anchor[b-yjbr0lz7dt] {
    outline: 2px dashed var(--bs-primary);
    outline-offset: 1px;
}

/* Inside the range but filtered out by the weekday picker: no slots land here. */
.cal-skipped:not(.cal-sel)[b-yjbr0lz7dt] {
    background: transparent;
    color: var(--bs-secondary-color);
    text-decoration: line-through;
}
/* _content/BusinessPortal/Components/Shared/SmsPipelineVisual.razor.rz.scp.css */
.sms-pipeline-visual[b-ce7tk6h8e4] {
    padding: 0.5rem 0;
}

.pipeline-loading[b-ce7tk6h8e4],
.pipeline-error[b-ce7tk6h8e4] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
}

.sms-entry[b-ce7tk6h8e4] {
    background: var(--bs-body-bg);
    transition: background 0.15s ease;
}

.sms-entry:hover[b-ce7tk6h8e4] {
    background: rgba(0, 0, 0, 0.02);
}

.sms-status-icon[b-ce7tk6h8e4] {
    font-size: 1.1rem;
    flex-shrink: 0;
}
/* _content/BusinessPortal/Components/Shared/TenantContextBanner.razor.rz.scp.css */
.tenant-context-banner[b-wttgjegq53] {
    background: linear-gradient(135deg, #6366f1, #8b5cf6);
    color: white;
    padding: 0.5rem 0;
    font-size: 0.85rem;
    position: sticky;
    top: 0;
    z-index: 1100;
}

.tenant-context-banner .btn-outline-light[b-wttgjegq53] {
    border-color: rgba(255, 255, 255, 0.6);
    color: white;
    font-size: 0.8rem;
    padding: 0.2rem 0.75rem;
}

.tenant-context-banner .btn-outline-light:hover[b-wttgjegq53] {
    background: rgba(255, 255, 255, 0.15);
    border-color: white;
}
/* _content/BusinessPortal/Components/Shared/TicketItemsAccordion.razor.rz.scp.css */
.ticket-items .transition-chevron[b-jnlian2u9d] {
    transition: transform .2s ease;
}

.ticket-toggle-btn[b-jnlian2u9d] {
    background: var(--surface-0);
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    padding: 0.6rem 1rem;
    cursor: pointer;
    transition: all 0.15s ease;
    color: var(--text-strong);
}

.ticket-toggle-btn:hover[b-jnlian2u9d] {
    background: color-mix(in srgb, var(--surface-0) 85%, var(--surface-1) 15%);
}

.ticket-toggle-label[b-jnlian2u9d] {
    font-weight: 600;
    font-size: 0.85rem;
    letter-spacing: 0.04em;
}

.ticket-toggle-badge[b-jnlian2u9d] {
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--text-muted);
    background: var(--surface-1);
    border: 1px solid var(--border-subtle);
    border-radius: 999px;
    padding: 0.15rem 0.55rem;
    letter-spacing: 0.02em;
}

.ticket-items-body[b-jnlian2u9d] {
    border: 1px solid var(--border-subtle);
    border-radius: 14px;
    background: var(--surface-1);
    overflow: hidden;
    padding: 0.25rem;
}

.ticket-items .list-group[b-jnlian2u9d] {
    max-height: 320px;
    overflow-y: auto;
}

.ticket-items .list-group-item[b-jnlian2u9d] {
    padding: .65rem .75rem;
    border-color: var(--border-subtle);
    background: transparent;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.ticket-items .list-group-item > div[b-jnlian2u9d] {
    min-width: 0;
}

.ticket-items .badge[b-jnlian2u9d] {
    min-width: 88px;
    justify-content: center;
}

.ticket-items .btn-group[b-jnlian2u9d] {
    flex-wrap: wrap;
    gap: 0.35rem;
}

.ticket-items .btn[b-jnlian2u9d] {
    border-radius: var(--radius-full);
}

.mono[b-jnlian2u9d] {
    font-variant-numeric: tabular-nums;
}

[data-theme="dark"] .ticket-toggle-btn[b-jnlian2u9d] {
    background: #111722;
    border-color: #2a3342;
}

[data-theme="dark"] .ticket-toggle-btn:hover[b-jnlian2u9d] {
    background: color-mix(in srgb, #111722 85%, #1e293b 15%);
}

[data-theme="dark"] .ticket-toggle-badge[b-jnlian2u9d] {
    background: #141a24;
    border-color: #2a3342;
}

[data-theme="dark"] .ticket-items-body[b-jnlian2u9d] {
    background: #141a24;
    border-color: #2a3342;
}
/* _content/BusinessPortal/Components/Shared/ToastHost.razor.rz.scp.css */
.toast-host[b-rpdkop87ix] {
    position: fixed;
    bottom: 1.5rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: var(--z-toast, 7100);
    max-width: min(420px, 90vw);
    animation: toast-slide-up-b-rpdkop87ix var(--transition-base) ease-out;
}

@keyframes toast-slide-up-b-rpdkop87ix {
    from {
        opacity: 0;
        transform: translateX(-50%) translateY(1rem);
    }
    to {
        opacity: 1;
        transform: translateX(-50%) translateY(0);
    }
}

@media (prefers-reduced-motion: reduce) {
    .toast-host[b-rpdkop87ix] {
        animation: none;
    }
}

.toast-body[b-rpdkop87ix] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.75rem 1rem;
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-3);
    font-size: 0.9rem;
    line-height: 1.35;
    color: var(--text-strong);
}

.toast-icon[b-rpdkop87ix] {
    flex-shrink: 0;
    font-size: 1.15rem;
}

.toast-message[b-rpdkop87ix] {
    flex: 1;
    min-width: 0;
}

.toast-close[b-rpdkop87ix] {
    flex-shrink: 0;
    border: none;
    background: transparent;
    color: inherit;
    opacity: 0.6;
    border-radius: var(--radius-full);
    width: 26px;
    height: 26px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: opacity var(--transition-fast), background var(--transition-fast);
    font-size: 0.7rem;
}

.toast-close:hover[b-rpdkop87ix] {
    opacity: 1;
    background: rgba(0, 0, 0, 0.08);
}

/* Success */
.toast-success .toast-body[b-rpdkop87ix] {
    background: color-mix(in srgb, var(--success) 12%, #ffffff 88%);
    border: 1px solid var(--success);
}

.toast-success .toast-icon[b-rpdkop87ix] {
    color: var(--success);
}

/* Warning */
.toast-warning .toast-body[b-rpdkop87ix] {
    background: color-mix(in srgb, var(--warning) 12%, #ffffff 88%);
    border: 1px solid var(--warning);
}

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

/* Info */
.toast-info .toast-body[b-rpdkop87ix] {
    background: color-mix(in srgb, var(--info) 12%, #ffffff 88%);
    border: 1px solid var(--info);
}

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

[data-theme="dark"] .toast-success .toast-body[b-rpdkop87ix] {
    background: color-mix(in srgb, var(--success) 15%, #1a1a2e 85%);
}

[data-theme="dark"] .toast-warning .toast-body[b-rpdkop87ix] {
    background: color-mix(in srgb, var(--warning) 15%, #1a1a2e 85%);
}

[data-theme="dark"] .toast-info .toast-body[b-rpdkop87ix] {
    background: color-mix(in srgb, var(--info) 15%, #1a1a2e 85%);
}

[data-theme="dark"] .toast-close:hover[b-rpdkop87ix] {
    background: rgba(255, 255, 255, 0.1);
}
/* _content/BusinessPortal/Components/Shared/TopRow.razor.rz.scp.css */
.command-bar[b-ud2uhut5qz] {
    position: sticky;
    top: 0;
    z-index: 100;
    display: flex;
    align-items: center;
    gap: var(--space-4);
    padding: var(--space-4) var(--space-5);
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.92) 0%, rgba(245, 235, 215, 0.88) 55%, rgba(255, 255, 255, 0.92) 100%);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid var(--border-subtle);
    box-shadow: var(--shadow-1);
    overflow: visible;
}

[data-theme="dark"] .command-bar[b-ud2uhut5qz],
[data-theme="dark"] .command-bar-mobile-search[b-ud2uhut5qz] {
    background: linear-gradient(135deg, rgba(12, 16, 22, 0.92) 0%, rgba(28, 24, 18, 0.88) 55%, rgba(12, 16, 22, 0.92) 100%);
}

.command-bar-left[b-ud2uhut5qz] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
    min-width: 0;
    flex: 0 1 auto;
}

.page-context-title[b-ud2uhut5qz] {
    font-size: var(--text-2xl);
    font-weight: var(--font-bold);
    color: var(--text-strong);
    margin: 0;
}

.page-context-description[b-ud2uhut5qz] {
    font-size: var(--text-sm);
    color: var(--text-muted);
    margin: 0;
}

.command-bar-center[b-ud2uhut5qz] {
    flex: 1 1 0;
    display: flex;
    justify-content: center;
}

.quick-search[b-ud2uhut5qz] {
    position: relative;
    width: 100%;
    max-width: 420px;
}

.search-box[b-ud2uhut5qz] {
    display: flex;
    align-items: center;
    gap: var(--space-2);
    background: var(--surface-1);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-full);
    padding: var(--space-2) var(--space-4);
    min-width: 280px;
    max-width: 420px;
    width: 100%;
    transition: all var(--transition-fast);
}

.search-box:focus-within[b-ud2uhut5qz] {
    border-color: var(--accent);
    box-shadow: 0 0 0 3px var(--accent-soft);
}

.search-box input[b-ud2uhut5qz] {
    border: none;
    background: transparent;
    outline: none;
    flex: 1;
    color: var(--text-normal);
}

.search-box input[b-ud2uhut5qz]::placeholder {
    color: var(--text-muted);
}

[data-theme="dark"] .quick-search-dropdown[b-ud2uhut5qz] {
    background: linear-gradient(180deg, rgba(15, 19, 26, 0.98) 0%, rgba(24, 20, 16, 0.94) 100%);
    border-color: rgba(232, 134, 52, 0.2);
}

.quick-search-clear[b-ud2uhut5qz] {
    border: none;
    background: transparent;
    color: var(--text-muted);
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 999px;
}

.quick-search-clear:hover[b-ud2uhut5qz] {
    background: rgba(232, 134, 52, 0.15);
    color: var(--text-strong);
}

.quick-search-dropdown[b-ud2uhut5qz] {
    position: absolute;
    top: calc(100% + 0.5rem);
    left: 0;
    right: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(246, 240, 232, 0.94) 100%);
    border: 2px solid rgba(232, 134, 52, 0.3);
    border-radius: 20px;
    box-shadow: 0 8px 24px rgba(232, 134, 52, 0.15), 0 24px 48px rgba(15, 23, 42, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.9);
    padding: 0.75rem;
    z-index: 200;
    backdrop-filter: blur(12px);
}

.quick-search-state[b-ud2uhut5qz] {
    padding: 0.75rem;
    display: flex;
    align-items: center;
    gap: var(--space-2);
    font-size: var(--text-sm);
    color: var(--text-muted);
}

.quick-search-results[b-ud2uhut5qz] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    max-height: 320px;
    overflow-y: auto;
}

.quick-search-item[b-ud2uhut5qz] {
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    background: var(--surface-0);
    text-align: left;
    padding: 0.7rem 0.85rem;
    transition: all var(--transition-base);
    cursor: pointer;
    position: relative;
}

.quick-search-item[b-ud2uhut5qz]::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: linear-gradient(180deg, var(--accent) 0%, var(--accent-strong) 100%);
    border-radius: 12px 0 0 12px;
    opacity: 0;
    transition: opacity var(--transition-base);
}

.quick-search-item:hover[b-ud2uhut5qz] {
    border-color: var(--accent);
    background: linear-gradient(135deg, rgba(232, 134, 52, 0.12) 0%, rgba(255, 255, 255, 0.98) 60%);
    box-shadow: 0 4px 12px rgba(232, 134, 52, 0.15), 0 2px 6px rgba(15, 23, 42, 0.08);
    transform: translateX(2px);
}

.quick-search-item:hover[b-ud2uhut5qz]::before {
    opacity: 1;
}

.quick-search-item:active[b-ud2uhut5qz] {
    transform: translateX(1px) scale(0.99);
}

.quick-search-title[b-ud2uhut5qz] {
    font-size: var(--text-sm);
    font-weight: var(--font-semibold);
    color: var(--text-strong);
}

.quick-search-meta[b-ud2uhut5qz] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

.command-bar-right[b-ud2uhut5qz] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
}

.command-bar-right .btn-group[b-ud2uhut5qz] {
    width: auto !important;
}

.command-bar .dropdown-menu[b-ud2uhut5qz] {
    z-index: var(--z-nav-dropdown, 5000);
}

.command-bar-right .dropdown[b-ud2uhut5qz] {
    position: relative;
    z-index: var(--z-nav-dropdown, 4000);
}

.quick-action-btn[b-ud2uhut5qz] {
    width: 40px;
    height: 40px;
    border-radius: var(--radius-md);
    background: var(--accent);
    color: var(--text-on-accent);
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all var(--transition-base);
    box-shadow: var(--shadow-1);
}

.quick-action-btn:hover[b-ud2uhut5qz] {
    transform: translateY(-2px);
    box-shadow: var(--shadow-2);
}

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

/* Mobile search toggle – hidden on desktop */
.mobile-search-toggle[b-ud2uhut5qz] {
    display: none;
}

/* Mobile search bar below command bar */
.command-bar-mobile-search[b-ud2uhut5qz] {
    display: none;
}

@media (max-width: 900px) {
    .command-bar[b-ud2uhut5qz] {
        flex-wrap: wrap;
        gap: var(--space-3);
    }

    .command-bar-center[b-ud2uhut5qz] {
        order: 3;
        width: 100%;
        justify-content: flex-start;
    }

    .command-bar-right[b-ud2uhut5qz] {
        order: 2;
    }

    .command-bar-left[b-ud2uhut5qz] {
        order: 1;
    }
}

@media (max-width: 768px) {
    .command-bar[b-ud2uhut5qz] {
        position: relative;
        padding: var(--space-2) var(--space-3);
        align-items: center;
        flex-wrap: nowrap;
        overflow: visible;
        gap: var(--space-2);
        /* Remove backdrop-filter on mobile — it creates a containing block
           that traps position:fixed children (notification bottom sheet) */
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
        background: var(--surface-0);
    }

    .command-bar-left[b-ud2uhut5qz] {
        order: 1;
        width: auto;
        flex: 1 1 0;
        text-align: left;
        min-width: 0;
    }

    .command-bar-center[b-ud2uhut5qz] {
        display: none;
    }

    .command-bar-right[b-ud2uhut5qz] {
        order: 2;
        width: auto;
        flex: 0 0 auto;
        gap: var(--space-2);
    }

    .command-bar-theme-toggle[b-ud2uhut5qz] {
        display: none;
    }

    .page-context-title[b-ud2uhut5qz] {
        font-size: var(--text-base);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .page-context-description[b-ud2uhut5qz] {
        display: none;
    }

    .quick-action-btn[b-ud2uhut5qz],
    .command-bar-right .btn[b-ud2uhut5qz],
    .command-bar-right .dropdown-toggle[b-ud2uhut5qz] {
        width: 32px;
        height: 32px;
    }

    .quick-action-btn:hover[b-ud2uhut5qz] {
        transform: none;
        box-shadow: var(--shadow-1);
    }

    .mobile-search-toggle[b-ud2uhut5qz] {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 32px;
        height: 32px;
        border-radius: var(--radius-md);
        background: var(--surface-1);
        color: var(--text-muted);
        border: 1px solid var(--border-subtle);
        transition: all var(--transition-fast);
    }

    .mobile-search-toggle:hover[b-ud2uhut5qz],
    .mobile-search-toggle:focus-visible[b-ud2uhut5qz] {
        color: var(--accent);
        border-color: var(--accent);
    }

    .command-bar-mobile-search[b-ud2uhut5qz] {
        display: block;
        position: sticky;
        top: 48px;
        z-index: 99;
        padding: var(--space-2) var(--space-3);
        background: linear-gradient(135deg, rgba(255, 255, 255, 0.92) 0%, rgba(245, 235, 215, 0.88) 55%, rgba(255, 255, 255, 0.92) 100%);
        backdrop-filter: blur(12px);
        border-bottom: 1px solid var(--border-subtle);
        box-shadow: var(--shadow-1);
    }
}
/* _content/BusinessPortal/Components/Shared/WaiverSignaturePad.razor.rz.scp.css */
.waiver-signature-component[b-vfb2hmh30u] {
    width: 100%;
}

.signature-pad-container[b-vfb2hmh30u] {
    position: relative;
    width: 100%;
    min-height: 200px;
    background-color: var(--surface-0, #ffffff);
    border: 2px dashed var(--border-normal, #ccc);
    border-radius: var(--radius-lg, 0.5rem);
    cursor: crosshair;
    box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.04);
}

.signature-canvas[b-vfb2hmh30u] {
    display: block;
    width: 100%;
    height: 100%;
    touch-action: none;
}

.form-check-label[b-vfb2hmh30u] {
    font-weight: 500;
    cursor: pointer;
}
/* _content/BusinessPortal/Components/Shared/WhatsNewBanner.razor.rz.scp.css */
.whats-new-banner[b-fx34mflvl4] {
    background: linear-gradient(135deg, var(--bg-secondary) 0%, var(--card-bg) 100%);
    border: none;
    border-left: 5px solid #ffc107;
    margin: 0;
    padding: 1rem;
    position: sticky;
    bottom: 0;
    z-index: 1030;
    animation: slideUp-b-fx34mflvl4 0.5s ease-out;
}

@keyframes slideUp-b-fx34mflvl4 {
    from {
        transform: translateY(100%);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

.banner-icon[b-fx34mflvl4] {
    font-size: 2rem;
    line-height: 1;
}

.banner-content[b-fx34mflvl4] {
    line-height: 1.4;
}

.banner-title[b-fx34mflvl4] {
    margin: 0;
    color: var(--text-primary);
    font-size: 1rem;
}

.banner-text[b-fx34mflvl4] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.whats-new-banner .btn-close[b-fx34mflvl4] {
    opacity: 0.5;
    transition: opacity 0.2s;
}

.whats-new-banner .btn-close:hover[b-fx34mflvl4] {
    opacity: 1;
}

.whats-new-banner .btn-outline-primary[b-fx34mflvl4] {
    border-width: 2px;
    font-weight: 500;
    transition: all 0.2s;
}

.whats-new-banner .btn-outline-primary:hover[b-fx34mflvl4] {
    transform: translateX(5px);
}

/* Responsive */
@media (max-width: 768px) {
    .whats-new-banner[b-fx34mflvl4] {
        padding: 0.75rem;
    }

    .banner-icon[b-fx34mflvl4] {
        font-size: 1.5rem;
    }

    .banner-title[b-fx34mflvl4] {
        font-size: 0.875rem;
    }

    .banner-text[b-fx34mflvl4] {
        font-size: 0.75rem;
    }

    .whats-new-banner .btn-sm[b-fx34mflvl4] {
        font-size: 0.75rem;
        padding: 0.25rem 0.5rem;
    }

    .col-auto[b-fx34mflvl4] {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%;
    }
}

@media (max-width: 576px) {
    .whats-new-banner .row[b-fx34mflvl4] {
        flex-wrap: wrap;
    }

    .whats-new-banner .col[b-fx34mflvl4] {
        flex-basis: 100%;
        margin-bottom: 0.5rem;
    }

    .whats-new-banner .col-auto[b-fx34mflvl4] {
        flex-basis: auto;
    }
}
/* _content/BusinessPortal/Pages/Admin/AdminDashboard.razor.rz.scp.css */
.admin-dashboard-new[b-7q129af9p5] {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: var(--space-6);
}

.kpi-row[b-7q129af9p5] {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: var(--space-4);
}

.kpi-card[b-7q129af9p5] {
    background: var(--surface-0);
    border-radius: var(--radius-lg);
    padding: var(--space-5);
    box-shadow: var(--shadow-2), var(--highlight);
    transition: all var(--transition-base);
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
}

.kpi-card:hover[b-7q129af9p5] {
    transform: translateY(-2px);
    box-shadow: var(--shadow-3);
}

.kpi-header[b-7q129af9p5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: var(--text-sm);
    color: var(--text-muted);
}

.kpi-title[b-7q129af9p5] {
    font-weight: var(--font-medium);
}

.kpi-trend[b-7q129af9p5] {
    font-weight: var(--font-semibold);
}

.kpi-trend.positive[b-7q129af9p5] {
    color: var(--success);
}

.kpi-trend.negative[b-7q129af9p5] {
    color: var(--danger);
}

.kpi-trend.neutral[b-7q129af9p5] {
    color: var(--info);
}

.kpi-body[b-7q129af9p5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-3);
}

.kpi-value[b-7q129af9p5] {
    font-size: var(--text-4xl);
    font-weight: var(--font-bold);
    color: var(--text-strong);
}

.sparkline[b-7q129af9p5] {
    width: 120px;
    height: 40px;
}

.dashboard-main[b-7q129af9p5] {
    display: grid;
    gap: var(--space-4);
}

.dashboard-section[b-7q129af9p5] {
    background: var(--surface-0);
    border-radius: var(--radius-lg);
    padding: var(--space-5);
    box-shadow: var(--shadow-1), var(--highlight);
}

.section-header[b-7q129af9p5] {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
    margin-bottom: var(--space-4);
}

.section-title[b-7q129af9p5] {
    margin: 0;
    font-size: var(--text-xl);
    color: var(--text-strong);
}

.section-subtitle[b-7q129af9p5] {
    font-size: var(--text-sm);
    color: var(--text-muted);
}

.section-list[b-7q129af9p5] {
    display: grid;
    gap: var(--space-3);
}

.section-item[b-7q129af9p5] {
    padding: var(--space-3);
    border-radius: var(--radius-md);
    background: var(--surface-1);
    border: 1px solid var(--border-subtle);
    transition: all var(--transition-fast);
}

.section-item:hover[b-7q129af9p5] {
    border-color: var(--accent);
    background: var(--accent-soft);
}

.item-title[b-7q129af9p5] {
    font-weight: var(--font-semibold);
    color: var(--text-strong);
}

.item-meta[b-7q129af9p5] {
    font-size: var(--text-sm);
    color: var(--text-muted);
}

.quick-actions-panel[b-7q129af9p5] {
    position: sticky;
    top: 100px;
    height: fit-content;
}

.quick-actions-card[b-7q129af9p5] {
    background: var(--surface-0);
    border-radius: var(--radius-lg);
    padding: var(--space-5);
    box-shadow: var(--shadow-2), var(--highlight);
    display: grid;
    gap: var(--space-3);
}

.action-btn[b-7q129af9p5] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    width: 100%;
    padding: var(--space-3);
    background: var(--accent-soft);
    color: var(--accent-strong);
    border: none;
    border-radius: var(--radius-md);
    transition: all var(--transition-base);
    font-weight: var(--font-medium);
}

.action-btn:hover[b-7q129af9p5] {
    background: var(--accent);
    color: var(--text-on-accent);
    transform: translateY(-2px);
}

@media (max-width: 1024px) {
    .admin-dashboard-new[b-7q129af9p5] {
        grid-template-columns: 1fr;
    }

    .quick-actions-panel[b-7q129af9p5] {
        position: static;
    }
}
/* _content/BusinessPortal/Pages/Admin/Configure.razor.rz.scp.css */
/* Hub styles are now in wwwroot/css/components.css (global) */
/* _content/BusinessPortal/Pages/Admin/Recruitment/Applications.razor.rz.scp.css */
/* ── Mobile-responsive recruitment applications page ──────────── */
/* Mirrors responsive patterns from BookingDetailsModal.razor.css:
   media queries at 768px, word-break, grid auto-fit. */

/* ── Detail panel: single-column <dl> on narrow screens ──────── */
@media (max-width: 575.98px) {
    [b-ys3rkk4cj3] .card-body dl.row > dt,
    [b-ys3rkk4cj3] .card-body dl.row > dd {
        width: 100%;
        max-width: 100%;
        flex: none;
        padding-left: 0;
    }

    [b-ys3rkk4cj3] .card-body dl.row > dt {
        margin-bottom: 0.1rem;
        font-size: 0.78rem;
        color: #6c757d;
    }

    [b-ys3rkk4cj3] .card-body dl.row > dd {
        margin-bottom: 0.6rem;
    }
}

/* ── Mobile card list items ──────────────────────────────────── */
[b-ys3rkk4cj3] .app-mobile-card {
    cursor: pointer;
    transition: background 0.12s ease;
}

[b-ys3rkk4cj3] .app-mobile-card:hover {
    background: rgba(0, 0, 0, 0.03);
}

[b-ys3rkk4cj3] .app-mobile-card:active {
    background: rgba(0, 0, 0, 0.06);
}

/* ── Interview callout ───────────────────────────────────────── */
[b-ys3rkk4cj3] .interview-callout {
    word-break: break-word;
}

/* ── Card header controls: better wrapping on phones ─────────── */
@media (max-width: 767.98px) {
    [b-ys3rkk4cj3] .card-header {
        font-size: 0.88rem;
    }

    [b-ys3rkk4cj3] .card-header .form-check-label,
    [b-ys3rkk4cj3] .card-header .form-select {
        font-size: 0.8rem;
    }

    /* Summary badge pills: smaller on phones */
    [b-ys3rkk4cj3] .card-body .badge {
        font-size: 0.7rem;
    }
}

/* ── PL-197: applicant headshot thumbnails ─────────────────────── */

/* Desktop table thumbnail (32x32 circle) */
[b-ys3rkk4cj3] .applicant-thumb {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
}

[b-ys3rkk4cj3] .applicant-thumb-placeholder {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #e9ecef;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #6c757d;
    font-size: 1rem;
}

/* Mobile card thumbnail (28x28 circle) */
[b-ys3rkk4cj3] .applicant-thumb-sm {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
}

[b-ys3rkk4cj3] .applicant-thumb-placeholder-sm {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #e9ecef;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #6c757d;
    font-size: 0.85rem;
}

/* Detail panel photo (64x64 circle) */
[b-ys3rkk4cj3] .applicant-photo-detail {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
    border: 2px solid #e9ecef;
}

[b-ys3rkk4cj3] .applicant-photo-placeholder {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: #e9ecef;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #6c757d;
    font-size: 1.6rem;
    border: 2px solid #dee2e6;
}

/* ── PL-224: detail card-header avatar (32x32 circle) ─────────────
   These two classes had no rule at all, so the raw uploaded photo
   rendered at its natural size — a giant image dominating the page. */
[b-ys3rkk4cj3] .applicant-avatar-lg {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
}

[b-ys3rkk4cj3] .applicant-avatar-placeholder-lg {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #e9ecef;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #6c757d;
    font-size: 1rem;
}

/* ── Hire modal: ensure rows stack on narrow viewports ────────── */
@media (max-width: 575.98px) {
    [b-ys3rkk4cj3] .modal-body .row > [class*="col-md-"] {
        width: 100%;
        max-width: 100%;
        flex: none;
    }
}
/* _content/BusinessPortal/Pages/Admin/Recruitment/AvailabilitySlots.razor.rz.scp.css */
/* ── Mobile-responsive availability slots page ───────────────── */

/* On phones, stack the bulk-add form inputs vertically */
@media (max-width: 767.98px) {
    [b-uvjxzf8q60] .card-body .row > [class*="col-md-"] {
        width: 100%;
        max-width: 100%;
        flex: none;
    }

    /* Tighter table for narrow screens */
    [b-uvjxzf8q60] table.table {
        font-size: 0.82rem;
    }

    [b-uvjxzf8q60] table.table th,
    [b-uvjxzf8q60] table.table td {
        padding: 0.35rem 0.4rem;
    }
}
/* _content/BusinessPortal/Pages/Admin/Recruitment/InterviewSlots.razor.rz.scp.css */
/* Whole "Claimed" cell click target — reset button chrome, add hover so
   admins actually notice they can click through to the applicants list. */
[b-548x05omkn] .claimed-clickable {
    border: 0;
    background: transparent;
    cursor: pointer;
    padding: 2px 4px;
    border-radius: 4px;
    transition: background 0.15s;
}
[b-548x05omkn] .claimed-clickable:hover {
    background: rgba(13, 110, 253, 0.08);
}
[b-548x05omkn] .claimed-clickable:focus-visible {
    outline: 2px solid rgba(13, 110, 253, 0.5);
    outline-offset: 1px;
}

/* ── Mobile-responsive interview slots page ──────────────────── */

/* On phones, stack the "Add an interview time" form inputs vertically */
@media (max-width: 767.98px) {
    [b-548x05omkn] .card-body .row > [class*="col-md-"] {
        width: 100%;
        max-width: 100%;
        flex: none;
    }

    /* Make the table usable: smaller font */
    [b-548x05omkn] table.table {
        font-size: 0.82rem;
    }

    [b-548x05omkn] table.table th,
    [b-548x05omkn] table.table td {
        padding: 0.35rem 0.4rem;
    }
}
/* _content/BusinessPortal/Pages/Agenda.razor.rz.scp.css */
.agenda-wrapper[b-a0zb75lha6] {
    display: flex;
    flex-direction: column;
    gap: var(--space-5);
    position: relative;
    --minute-height: 1px;
    --week-column-gutter: 0.8rem;
    --agenda-header-offset: 88px;
    --agenda-header-height: 120px;
    --timeline-day-height: 0px;
    --timeline-sticky-gap: 0px;
    --timeline-sticky-top: calc(var(--agenda-header-offset) + var(--agenda-header-height));
}

.agenda-wrapper.agenda-density-comfortable[b-a0zb75lha6] {
    --minute-height: 1.35px;
}

.agenda-wrapper.agenda-density-compact[b-a0zb75lha6] {
    --minute-height: 0.75px;
    --week-column-gutter: 0.6rem;
}

.agenda-wrapper.agenda-view-week[b-a0zb75lha6] {
    --timeline-day-height: 36px;
}

.agenda-content[b-a0zb75lha6] {
    position: relative;
    min-height: 200px;
    padding-top: var(--space-3);
    margin-top: var(--space-2);
    z-index: 0;
}

.agenda-bg[b-a0zb75lha6] {
    position: fixed;
    inset: 0;
    background: radial-gradient(circle at top left, rgba(232, 134, 52, 0.08), transparent 45%);
    z-index: -1;
    pointer-events: none;
}

.agenda-header[b-a0zb75lha6] {
    background-color: var(--surface-0);
    border-bottom: 1px solid var(--border-subtle);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-1), var(--highlight);
    overflow: visible !important;
    z-index: 10;
}

.agenda-header-sticky[b-a0zb75lha6] {
    position: sticky;
    top: var(--agenda-header-offset);
}

.agenda-loading[b-a0zb75lha6] {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-3);
    background: color-mix(in srgb, var(--surface-0) 85%, transparent);
    backdrop-filter: blur(6px);
    color: var(--text-strong);
    font-weight: var(--font-medium);
    border-radius: var(--radius-lg);
    z-index: 40;
}

.agenda-header-top[b-a0zb75lha6],
.agenda-header-bottom[b-a0zb75lha6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-3);
    flex-wrap: wrap;
    background-color: var(--surface-0);
}

.agenda-date-group[b-a0zb75lha6] {
    flex: 1 1 auto;
}

.agenda-controls-row[b-a0zb75lha6] {
    justify-content: flex-end;
    align-items: center;
    flex-wrap: wrap;
    gap: var(--space-2);
}

.agenda-toolbar-left[b-a0zb75lha6] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    flex: 1 1 auto;
    flex-wrap: wrap;
}

.select-all-control[b-a0zb75lha6] {
    display: inline-flex;
    align-items: center;
    gap: var(--space-2);
    font-size: var(--text-sm);
    color: var(--text-muted);
}

.select-all-control input[b-a0zb75lha6] {
    width: 16px;
    height: 16px;
}

.agenda-toolbar-right[b-a0zb75lha6] {
    display: flex;
    align-items: center;
    gap: var(--space-2);
}

.agenda-view-toggle .btn[b-a0zb75lha6] {
    min-width: 72px;
    font-weight: var(--font-medium);
}

.toggle-pill[b-a0zb75lha6] {
    display: inline-flex;
    align-items: center;
    gap: var(--space-2);
    padding: 0.35rem 0.75rem;
    border-radius: var(--radius-full);
    border: 1px solid var(--border-subtle);
    background: var(--surface-1);
    font-size: var(--text-sm);
    color: var(--text-muted);
}

.toggle-pill input[b-a0zb75lha6] {
    width: 16px;
    height: 16px;
}

.filter-agenda-btn[b-a0zb75lha6] {
    font-weight: 600;
    border-width: 1px;
    border-color: var(--border-normal);
    color: var(--text-normal);
    background-color: var(--surface-1);
    transition: background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);
    box-shadow: none;
}

.filter-agenda-btn:hover[b-a0zb75lha6] {
    background-color: var(--surface-2);
    border-color: var(--border-strong);
    color: var(--text-strong);
}

.filter-agenda-btn:focus[b-a0zb75lha6],
.filter-agenda-btn:focus-visible[b-a0zb75lha6],
.filter-agenda-btn.show[b-a0zb75lha6],
.filter-agenda-btn[aria-expanded="true"][b-a0zb75lha6] {
    background-color: var(--surface-0);
    border-color: var(--accent);
    box-shadow: 0 0 0 0.2rem var(--accent-soft);
    color: var(--text-strong);
    opacity: 1;
}

.skip-to-next-btn[b-a0zb75lha6] {
    font-weight: 600;
    white-space: nowrap;
    border-color: var(--border-normal);
    color: var(--text-normal);
    background-color: var(--surface-1);
}

.skip-to-next-btn:hover:not(:disabled)[b-a0zb75lha6] {
    background-color: var(--surface-2);
    border-color: var(--border-strong);
    color: var(--text-strong);
}

.filter-agenda-menu[b-a0zb75lha6] {
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    padding: 0.75rem;
    max-height: 500px;
    overflow-y: auto;
    background: var(--surface-0);
}

.filter-section[b-a0zb75lha6] {
    padding: 0 0.25rem;
}

.filter-section-title[b-a0zb75lha6] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-muted);
    margin-bottom: 0.75rem;
    display: flex;
    align-items: center;
}

.filter-section-title i[b-a0zb75lha6] {
    color: var(--accent);
    font-size: 1rem;
}

.filter-option[b-a0zb75lha6] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.15s ease;
    margin: 0;
    background: var(--surface-1);
}

.filter-options[b-a0zb75lha6] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.filter-events-list[b-a0zb75lha6] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.filter-option:hover[b-a0zb75lha6] {
    background: var(--surface-2);
    transform: translateX(2px);
}

.bulk-actions-inline[b-a0zb75lha6] {
    display: flex;
    align-items: center;
    gap: var(--space-2);
    padding: 0.35rem 0.6rem;
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-full);
    background: var(--surface-1);
    flex-wrap: wrap;
}

.bulk-message-inline[b-a0zb75lha6] {
    padding: 0.5rem 0.75rem;
    background-color: var(--info-soft);
    border: 1px solid rgba(59, 130, 246, 0.2);
    border-radius: 0.375rem;
    color: var(--text-normal);
    font-size: 0.875rem;
}

.recent-bookings-btn[b-a0zb75lha6] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    padding: 0;
    font-weight: 500;
    transition: all 0.2s ease;
    box-shadow: var(--shadow-1);
}

/* PL-175 follow-up: the staffing button carries the on-shift count badge next to the
   bi-people icon, and the fixed 38px square clipped it. Let this one grow with its
   content while staying the same height/shape family as its neighbour. */
.staffing-btn[b-a0zb75lha6] {
    width: auto;
    min-width: 38px;
    padding: 0 0.55rem;
}

/* PL-172 kept while restoring the pre-PL-172 heading + date-box presentation: the
   heading reserves the width of its longest string ("Wednesday, September 30, 2026")
   so paging days never reflows the wrapping toolbar row around it. */
.agenda-date-heading[b-a0zb75lha6] {
    min-width: 16rem;
}

.agenda-timeline[b-a0zb75lha6] {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
}

.timeline-slot[b-a0zb75lha6] {
    position: relative;
    padding-left: var(--space-5);
    border-left: 2px solid var(--border-subtle);
}

.timeline-slot.current[b-a0zb75lha6] {
    border-left-color: var(--accent);
}

.timeline-slot.current[b-a0zb75lha6]::before {
    content: '';
    position: absolute;
    left: -6px;
    top: 50%;
    width: 10px;
    height: 10px;
    background: var(--accent);
    border-radius: 50%;
    box-shadow: 0 0 0 4px var(--accent-soft);
    animation: pulse-b-a0zb75lha6 2s ease-in-out infinite;
}

@keyframes pulse-b-a0zb75lha6 {
    0%, 100% { transform: translateY(-50%) scale(1); }
    50% { transform: translateY(-50%) scale(1.2); }
}

.timeline-time[b-a0zb75lha6] {
    margin-bottom: var(--space-2);
    font-weight: var(--font-semibold);
    color: var(--text-strong);
    position: sticky;
    top: calc(var(--timeline-sticky-top) + var(--timeline-day-height) + var(--timeline-sticky-gap));
    z-index: 9;
    background: var(--surface-0);
    padding-top: 0.35rem;
    padding-bottom: 0.35rem;
    border-bottom: 1px solid var(--border-subtle);
}

.timeline-events[b-a0zb75lha6] {
    display: grid;
    gap: var(--space-3);
}

.timeline-day-header[b-a0zb75lha6] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    margin: var(--space-4) 0 var(--space-2);
    padding-bottom: var(--space-2);
    border-bottom: 1px solid var(--border-subtle);
    color: var(--text-strong);
    font-weight: var(--font-semibold);
    position: sticky;
    top: calc(var(--timeline-sticky-top) + var(--timeline-sticky-gap));
    z-index: 9;
    background: var(--surface-0);
}

.timeline-day-header .day-label[b-a0zb75lha6] {
    font-size: 0.95rem;
    letter-spacing: 0.02em;
}

/* After-midnight overflow divider — visually distinct from the week-view day headers
   so staff immediately see that these slots belong to the next calendar day but are
   shown here as a continuation of the current evening. */
.timeline-day-header.after-midnight-header[b-a0zb75lha6] {
    margin-top: var(--space-5, 1.5rem);
    border-top: 2px dashed var(--border-subtle);
    border-bottom: 1px solid var(--border-subtle);
    padding-top: var(--space-3, 0.75rem);
    color: var(--text-muted);
    font-style: italic;
}

.timeline-day-header.after-midnight-header .day-label[b-a0zb75lha6] {
    opacity: 0.85;
}

.timeline-day-empty[b-a0zb75lha6] {
    padding: 0.5rem 0 0.75rem;
    color: var(--text-muted);
    font-size: var(--text-sm);
}

.event-card-timeline[b-a0zb75lha6] {
    background: var(--surface-0);
    border-radius: var(--radius-lg);
    border: 1px solid var(--border-subtle);
    border-left: 6px solid var(--event-color, var(--accent));
    background: linear-gradient(135deg, var(--event-color, var(--accent)) 0%, var(--event-color-soft, var(--accent-soft)) 35%, rgba(255, 255, 255, 0.85) 100%);
    padding: var(--space-4);
    box-shadow: var(--shadow-1), var(--highlight);
    transition: all var(--transition-base);
    cursor: pointer;
    position: relative;
}

.event-card-timeline:hover[b-a0zb75lha6] {
    transform: translateY(-2px);
    box-shadow: var(--shadow-2);
}

.event-card-timeline.selected[b-a0zb75lha6] {
    border-color: var(--accent);
    box-shadow: 0 0 0 2px var(--accent-soft);
}

.event-card-timeline.next-event[b-a0zb75lha6] {
    border-left: 6px solid var(--event-color, var(--accent));
    background: linear-gradient(135deg, var(--event-color, var(--accent)) 0%, var(--event-color-soft, var(--accent-soft)) 40%, rgba(255, 255, 255, 0.9) 100%);
    box-shadow: var(--shadow-2), 0 0 24px var(--event-color-soft, var(--accent-soft));
}

.event-card-timeline.recently-booked[b-a0zb75lha6] {
    position: relative;
    overflow: hidden;
    border: 2px solid #d4a017;
    box-shadow: 0 0 12px rgba(212, 160, 23, 0.45), 0 0 4px rgba(255, 215, 0, 0.3);
    animation: golden-pulse-b-a0zb75lha6 2s ease-in-out infinite;
}

.event-card-timeline.recently-booked[b-a0zb75lha6]::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(255, 215, 0, 0.18) 25%,
        rgba(255, 215, 0, 0.35) 50%,
        rgba(255, 215, 0, 0.18) 75%,
        transparent 100%
    );
    animation: heat-slide-b-a0zb75lha6 2s ease-in-out infinite;
    z-index: 1;
    pointer-events: none;
}

@keyframes golden-pulse-b-a0zb75lha6 {
    0%, 100% {
        box-shadow: 0 0 10px rgba(212, 160, 23, 0.45), 0 0 4px rgba(255, 215, 0, 0.3);
    }
    50% {
        box-shadow: 0 0 20px rgba(255, 215, 0, 0.6), 0 0 30px rgba(212, 160, 23, 0.35);
    }
}

@keyframes heat-slide-b-a0zb75lha6 {
    0% {
        left: -100%;
    }
    100% {
        left: 100%;
    }
}

[data-theme="dark"] .event-card-timeline.recently-booked[b-a0zb75lha6] {
    border-color: #c49215;
    box-shadow: 0 0 10px rgba(196, 146, 21, 0.35), 0 0 3px rgba(255, 215, 0, 0.2);
}

.event-card-timeline.combo[b-a0zb75lha6] {
    background: var(--surface-1);
    border-style: dashed;
    border-left-color: var(--accent);
}

.event-style-high-contrast .event-card-timeline[b-a0zb75lha6],
.event-style-high-contrast .week-event-block[b-a0zb75lha6] {
    background: var(--event-color, var(--accent));
    color: #fff;
    border-left-color: var(--event-color, var(--accent));
}

.event-style-high-contrast .event-card-timeline:hover[b-a0zb75lha6] {
    background: var(--event-color, var(--accent));
}

.event-style-high-contrast .event-card-timeline.combo[b-a0zb75lha6] {
    background: var(--surface-1);
    color: var(--text-strong);
}

.event-style-high-contrast .event-card-timeline .event-time[b-a0zb75lha6],
.event-style-high-contrast .week-event-time[b-a0zb75lha6] {
    color: rgba(255, 255, 255, 0.9);
}

.event-style-minimal .event-card-timeline[b-a0zb75lha6],
.event-style-minimal .week-event-block[b-a0zb75lha6] {
    background: var(--surface-0);
    border: 1px solid rgba(232, 134, 52, 0.2);
    border-left: 6px solid var(--event-color, var(--accent));
    box-shadow: 0 10px 26px rgba(15, 23, 42, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.7);
    padding-left: calc(var(--space-4) + 0.5rem);
}

.event-style-minimal .event-card-timeline[b-a0zb75lha6]::before,
.event-style-minimal .week-event-block[b-a0zb75lha6]::before {
    content: none;
}

.event-style-minimal .event-card-timeline .event-title[b-a0zb75lha6],
.event-style-minimal .week-event-title[b-a0zb75lha6] {
    padding-left: 0;
}

.event-style-minimal .event-card-timeline .combo-tag[b-a0zb75lha6] {
    background: rgba(15, 23, 42, 0.88);
    border-color: rgba(232, 134, 52, 0.45);
    color: #fff;
}

.event-style-minimal .event-card-timeline .recurring-tag[b-a0zb75lha6] {
    background: rgba(14, 165, 233, 0.2);
    border-color: rgba(14, 165, 233, 0.5);
    color: #38bdf8;
}

[data-theme="dark"] .event-style-minimal .event-card-timeline[b-a0zb75lha6],
[data-theme="dark"] .event-style-minimal .week-event-block[b-a0zb75lha6] {
    background: rgba(18, 23, 31, 0.95);
    border-color: rgba(232, 134, 52, 0.25);
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.event-style-high-contrast .event-card-timeline .combo-tag[b-a0zb75lha6] {
    background: rgba(255, 255, 255, 0.2);
    border-color: rgba(255, 255, 255, 0.4);
}

.event-style-high-contrast .event-card-timeline .recurring-tag[b-a0zb75lha6] {
    background: rgba(255, 255, 255, 0.15);
    border-color: rgba(255, 255, 255, 0.3);
    color: #7dd3fc;
}

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

.event-title[b-a0zb75lha6] {
    display: flex;
    align-items: center;
    gap: var(--space-2);
    font-weight: var(--font-semibold);
    color: var(--text-strong);
}

.status-icon-wrapper[b-a0zb75lha6] {
    display: inline-flex;
    align-items: center;
}

.event-card-body[b-a0zb75lha6] {
    margin-top: var(--space-2);
    display: grid;
    gap: var(--space-2);
    color: var(--text-normal);
}

.event-meta[b-a0zb75lha6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-3);
    font-size: var(--text-sm);
    color: var(--text-normal);
}

.event-customer[b-a0zb75lha6] {
    white-space: normal;
    word-wrap: break-word;
    overflow-wrap: break-word;
    min-width: 0;
}

/* MC-25: condensed notes preview on agenda booking cards */
.event-notes-preview[b-a0zb75lha6] {
    font-size: 0.72rem;
    color: var(--text-muted, #6c757d);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
    line-height: 1.3;
    padding-top: 1px;
}

.event-notes-preview i[b-a0zb75lha6] {
    font-size: 0.65rem;
    opacity: 0.7;
}

.notes-preview-text[b-a0zb75lha6] {
    font-style: italic;
}

/* PL-65: latest staff comment preview on comfortable agenda cards */
.event-comment-preview[b-a0zb75lha6] {
    font-size: 0.72rem;
    color: var(--text-muted, #6c757d);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
    line-height: 1.3;
    padding-top: 1px;
}

.event-comment-preview i[b-a0zb75lha6] {
    font-size: 0.65rem;
    opacity: 0.7;
}

.comment-preview-text[b-a0zb75lha6] {
    font-style: italic;
}

.booking-day-number[b-a0zb75lha6] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.25rem;
    height: 1.25rem;
    border-radius: 50%;
    background: var(--accent, #0d6efd);
    color: #fff;
    font-size: 0.65rem;
    font-weight: 700;
    flex-shrink: 0;
    line-height: 1;
}

.event-status[b-a0zb75lha6] {
    color: var(--text-normal);
    font-weight: var(--font-medium);
}

.event-capacity[b-a0zb75lha6] {
    color: var(--text-strong);
}

.event-card-timeline .event-time[b-a0zb75lha6] {
    color: var(--text-strong);
}

.combo-tag[b-a0zb75lha6] {
    padding: 0.1rem 0.55rem;
    border-radius: var(--radius-full);
    background: rgba(15, 23, 42, 0.82);
    color: #fff;
    font-size: 0.72rem;
    font-weight: var(--font-semibold);
    letter-spacing: 0.02em;
    border: 1px solid rgba(255, 255, 255, 0.35);
}

.resource-tag[b-a0zb75lha6] {
    padding: 0.1rem 0.55rem;
    border-radius: var(--radius-full);
    background: color-mix(in srgb, #6366f1 18%, var(--surface-0) 82%);
    color: #6366f1;
    font-size: 0.72rem;
    font-weight: var(--font-semibold);
    letter-spacing: 0.02em;
    border: 1px solid color-mix(in srgb, #6366f1 35%, transparent 65%);
}

/* Resource-mode expandable group header */
.slot-group-header[b-a0zb75lha6] {
    border-left: 3px solid #6366f1 !important;
    cursor: default;
}

.slot-group-header .event-card-header[b-a0zb75lha6] {
    user-select: none;
}

/* The grouped-card controls ("N Bookings" + capacity) must match the sibling
   cards' meta typography — without a font-size they inherit the card base size
   and look massive next to the compact/comfortable cards around them. */
.slot-group-header .event-controls[b-a0zb75lha6] {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    flex: 0 0 auto;
    font-size: var(--text-sm);
}

.slot-group-header .event-controls .event-customer[b-a0zb75lha6] {
    white-space: nowrap;
}

/* PL-37: the chevron is now the sole expand/collapse control — give it a
   comfortable hit target distinct from the card's open-modal click. */
.group-toggle-icon[b-a0zb75lha6] {
    font-size: 0.75rem;
    opacity: 0.7;
    transition: transform 0.15s ease;
    cursor: pointer;
    padding: 0.25rem 0.35rem;
    margin: -0.25rem 0;
    border-radius: var(--radius-sm);
}

.group-toggle-icon:hover[b-a0zb75lha6] {
    opacity: 1;
    background: color-mix(in srgb, var(--text-primary) 10%, transparent 90%);
}

.resource-count-tag[b-a0zb75lha6] {
    padding: 0.1rem 0.55rem;
    border-radius: var(--radius-full);
    background: color-mix(in srgb, #6366f1 18%, var(--surface-0) 82%);
    color: #6366f1;
    font-size: 0.7rem;
    font-weight: var(--font-semibold);
    border: 1px solid color-mix(in srgb, #6366f1 35%, transparent 65%);
}

.slot-group-children[b-a0zb75lha6] {
    border-top: 1px solid var(--border-subtle);
    padding: 0.35rem 0.5rem 0.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.slot-group-child[b-a0zb75lha6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.3rem 0.5rem;
    border-radius: var(--radius-sm);
    background: var(--surface-1);
    cursor: pointer;
    transition: background 0.1s ease;
    font-size: 0.82rem;
}

.slot-group-child:hover[b-a0zb75lha6] {
    background: var(--surface-2);
}

.slot-group-child.selected[b-a0zb75lha6] {
    background: color-mix(in srgb, var(--accent-primary) 12%, var(--surface-1) 88%);
}

.child-resource-name[b-a0zb75lha6] {
    display: flex;
    align-items: center;
    gap: 0.15rem;
    min-width: 0;
    font-weight: var(--font-semibold);
    color: var(--text-primary);
}

/* PL-37: passed (already-ended) indicator on resource cards */
.past-tag[b-a0zb75lha6] {
    padding: 0.1rem 0.55rem;
    border-radius: var(--radius-full);
    background: color-mix(in srgb, var(--text-muted) 22%, var(--surface-0) 78%);
    color: var(--text-muted);
    font-size: 0.72rem;
    font-weight: var(--font-semibold);
    letter-spacing: 0.02em;
}

.slot-group-header.passed[b-a0zb75lha6],
.slot-group-child.passed[b-a0zb75lha6] {
    opacity: 0.6;
}

.slot-group-child.passed .child-resource-name[b-a0zb75lha6] {
    color: var(--text-muted);
}

.child-details[b-a0zb75lha6] {
    display: flex;
    gap: 0.6rem;
    align-items: center;
    color: var(--text-secondary);
    font-size: 0.78rem;
}

.recurring-tag[b-a0zb75lha6] {
    display: inline-flex;
    align-items: center;
    padding: 0.1rem 0.4rem;
    border-radius: var(--radius-full);
    background: color-mix(in srgb, #0ea5e9 15%, var(--surface-0) 85%);
    color: #0ea5e9;
    font-size: 0.72rem;
    border: 1px solid color-mix(in srgb, #0ea5e9 30%, transparent 70%);
}

[data-theme="dark"] .recurring-tag[b-a0zb75lha6] {
    background: color-mix(in srgb, #0ea5e9 20%, #111722 80%);
    color: #38bdf8;
    border-color: color-mix(in srgb, #0ea5e9 35%, transparent 65%);
}

.status-icon-wrapper[b-a0zb75lha6]  .status-icon {
    font-size: 1rem;
    vertical-align: middle;
}

.status-icon-wrapper[b-a0zb75lha6]  .status-crossfade {
    display: inline-grid;
    place-items: center;
}

.status-icon-wrapper[b-a0zb75lha6]  .status-crossfade > * {
    grid-area: 1 / 1;
}

.status-icon-wrapper[b-a0zb75lha6]  .status-crossfade-a {
    animation: crossfade-a-b-a0zb75lha6 3s ease-in-out infinite;
}

.status-icon-wrapper[b-a0zb75lha6]  .status-crossfade-b {
    animation: crossfade-b-b-a0zb75lha6 3s ease-in-out infinite;
}

@keyframes crossfade-a-b-a0zb75lha6 {
    0%, 40%  { opacity: 1; }
    50%, 90% { opacity: 0; }
    100%     { opacity: 1; }
}

@keyframes crossfade-b-b-a0zb75lha6 {
    0%, 40%  { opacity: 0; }
    50%, 90% { opacity: 1; }
    100%     { opacity: 0; }
}

.flag-icons[b-a0zb75lha6] {
    display: inline-flex;
    gap: 0.25rem;
    color: black;
}

.flag-icons[b-a0zb75lha6]  .flag-customer-view {
    color: black;
}

.flag-icons[b-a0zb75lha6]  .flag-staff-view {
    color: black;
}

.flag-icons[b-a0zb75lha6]  .flag-payment-pending {
    color: #e67e22;
}

.flag-icons[b-a0zb75lha6]  .flag-balance-due {
    color: #e74c3c;
}

.flag-icons[b-a0zb75lha6]  .flag-risk-elevated {
    color: #e67e22;
}

.flag-icons[b-a0zb75lha6]  .flag-risk-highest {
    color: #e74c3c;
}

.flag-icons[b-a0zb75lha6]  .flag-waiver-warn {
    color: black;
}

.flag-icons[b-a0zb75lha6]  .flag-note {
    color: black;
}

.flag-icons[b-a0zb75lha6]  .flag-staff-note {
    color: black;
}

.checkin-icon-wrapper[b-a0zb75lha6] {
    display: inline-flex;
    align-items: center;
}

.checkin-icon-wrapper[b-a0zb75lha6]  .checkin-icon {
    font-size: 0.85rem;
}

.checkin-icon-wrapper[b-a0zb75lha6]  .checkin-none {
    color: #9ca3af; /* muted gray — no one checked in yet */
}

.checkin-icon-wrapper[b-a0zb75lha6]  .checkin-partial {
    color: #e67e22; /* amber — some checked in */
}

.checkin-icon-wrapper[b-a0zb75lha6]  .checkin-all {
    color: #2e7d32; /* green — everyone checked in */
}

/* PL-75: subtle "x/y" check-in count badge next to the check-in icon */
.checkin-count-badge[b-a0zb75lha6] {
    font-size: 0.65rem;
    color: var(--text-muted, #6b7280);
    font-weight: 500;
    white-space: nowrap;
}

.agenda-density-compact .checkin-count-badge[b-a0zb75lha6] {
    font-size: 0.6rem;
}

/* Add-on sold count badge + configured indicator next to the check-in badges */
.addon-count-badge[b-a0zb75lha6] {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    font-size: 0.65rem;
    color: var(--text-muted, #6b7280);
    font-weight: 500;
    white-space: nowrap;
}

.agenda-density-compact .addon-count-badge[b-a0zb75lha6] {
    font-size: 0.6rem;
}

.addon-indicator-icon[b-a0zb75lha6] {
    font-size: 0.75rem;
    color: var(--text-muted, #6b7280);
}

/* Expanded card: per-add-on "Name ×N" chips */
.event-addon-chips[b-a0zb75lha6] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
    margin-top: 2px;
    font-size: 0.7rem;
    color: var(--text-muted, #6b7280);
}

.event-addon-chips .addon-chip[b-a0zb75lha6] {
    background: var(--surface-2, rgba(0, 0, 0, 0.06));
    border-radius: 999px;
    padding: 1px 8px;
    white-space: nowrap;
}

.timeline-checkbox[b-a0zb75lha6] {
    width: 18px;
    height: 18px;
}

.recent-bookings-panel[b-a0zb75lha6] {
    position: fixed;
    top: 0;
    right: -420px;
    width: 400px;
    height: 100dvh;
    background: var(--surface-0);
    box-shadow: var(--shadow-4);
    transition: right 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: var(--z-panels);
    display: flex;
    flex-direction: column;
    backdrop-filter: blur(10px);
    overscroll-behavior: contain;
}

.agenda-wrapper.agenda-density-compact .agenda-timeline[b-a0zb75lha6] {
    gap: var(--space-2);
}

.agenda-wrapper.agenda-density-compact .timeline-slot[b-a0zb75lha6] {
    padding-left: var(--space-4);
}

.agenda-wrapper.agenda-density-compact .timeline-events[b-a0zb75lha6] {
    gap: var(--space-2);
}

.agenda-wrapper.agenda-density-compact .timeline-time[b-a0zb75lha6] {
    margin-bottom: var(--space-1);
}

.agenda-wrapper.agenda-density-compact .event-card-timeline[b-a0zb75lha6] {
    padding: 0.35rem 0.6rem;
    border-left-width: 6px;
}

.agenda-wrapper.agenda-density-compact .event-title[b-a0zb75lha6] {
    font-size: 0.78rem;
}

.agenda-wrapper.agenda-density-compact .event-meta[b-a0zb75lha6] {
    font-size: 0.72rem;
}

.agenda-wrapper.agenda-density-compact .event-card-body[b-a0zb75lha6] {
    display: none;
}

.event-compact-line[b-a0zb75lha6] {
    display: flex;
    align-items: center;
    gap: var(--space-2);
    justify-content: space-between;
}

.event-compact-left[b-a0zb75lha6],
.event-compact-right[b-a0zb75lha6] {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    flex-wrap: wrap;
    min-width: 0;
}

.event-compact-left[b-a0zb75lha6] {
    flex: 1 1 auto;
}

.event-compact-right[b-a0zb75lha6] {
    flex: 0 0 auto;
    color: var(--text-normal);
    font-size: 0.72rem;
}

.event-compact-left .event-time[b-a0zb75lha6] {
    color: var(--text-normal);
    font-size: 0.7rem;
}

/* In compact density the grouped-card controls shrink to the same size as the
   compact cards' right cluster so "N Bookings" reads identically everywhere. */
.agenda-wrapper.agenda-density-compact .slot-group-header .event-controls[b-a0zb75lha6] {
    font-size: 0.72rem;
}

.event-compact-right .event-status[b-a0zb75lha6] {
    font-weight: var(--font-semibold);
    color: var(--text-normal);
}

.agenda-wrapper.agenda-density-compact .event-card-timeline[b-a0zb75lha6] {
    padding: 0.4rem 0.7rem;
}

.agenda-wrapper.agenda-density-compact .event-card-body[b-a0zb75lha6] {
    gap: var(--space-1);
}

.agenda-wrapper.agenda-density-compact .event-meta[b-a0zb75lha6] {
    font-size: 0.75rem;
}

.agenda-wrapper.agenda-density-compact .timeline-time[b-a0zb75lha6] {
    font-size: 0.75rem;
}

.agenda-wrapper.agenda-density-compact .timeline-day-header[b-a0zb75lha6] {
    margin: var(--space-3) 0 var(--space-2);
}

.agenda-wrapper.agenda-density-compact .event-title[b-a0zb75lha6] {
    font-size: 0.8rem;
}

.agenda-week[b-a0zb75lha6] {
    border-radius: var(--radius-lg);
    border: 1px solid var(--border-subtle);
    background: var(--surface-0);
    box-shadow: var(--shadow-1);
    overflow-x: auto;
    max-width: 100%;
    width: 100%;
    margin-top: var(--space-4);
    position: relative;
    z-index: 0;
}

.agenda-wrapper.agenda-display-timeline .agenda-week[b-a0zb75lha6] {
    height: calc(100vh - var(--agenda-header-offset) - var(--agenda-header-height) - var(--space-6));
    max-height: calc(100vh - var(--agenda-header-offset) - var(--agenda-header-height) - var(--space-6));
    overflow: auto;
}

.week-header[b-a0zb75lha6] {
    display: grid;
    grid-template-columns: 70px repeat(7, minmax(140px, 1fr));
    gap: 0;
    border-bottom: 1px solid var(--border-subtle);
    background: var(--surface-1);
}

.agenda-wrapper.agenda-display-timeline .week-header[b-a0zb75lha6] {
    position: sticky;
    top: 0;
    z-index: 5;
}

.week-time-spacer[b-a0zb75lha6] {
    border-right: 1px solid var(--border-subtle);
}

.week-day-label[b-a0zb75lha6] {
    padding: 0.55rem 0.65rem;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-size: 0.7rem;
    color: var(--text-muted);
}

.week-day-name[b-a0zb75lha6] {
    font-weight: var(--font-semibold);
    color: var(--text-strong);
    font-size: 0.75rem;
}

.week-body[b-a0zb75lha6] {
    display: grid;
    grid-template-columns: 70px minmax(0, 1fr);
}

.week-time-column[b-a0zb75lha6] {
    border-right: 1px solid var(--border-subtle);
}

.week-time-slot[b-a0zb75lha6] {
    height: calc(30 * var(--minute-height));
    padding: 0.3rem 0.35rem;
    font-size: 0.7rem;
    color: var(--text-muted);
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
}

.week-grid[b-a0zb75lha6] {
    display: grid;
    grid-template-columns: repeat(7, minmax(140px, 1fr));
}

.week-day-column[b-a0zb75lha6] {
    border-right: 1px solid var(--border-subtle);
}

.week-day-column:last-child[b-a0zb75lha6] {
    border-right: none;
}

.week-day-grid[b-a0zb75lha6] {
    position: relative;
    height: calc(var(--week-minutes) * var(--minute-height));
    background: repeating-linear-gradient(
        to bottom,
        transparent 0,
        transparent calc(60 * var(--minute-height) - 1px),
        rgba(0, 0, 0, 0.08) calc(60 * var(--minute-height) - 1px),
        rgba(0, 0, 0, 0.08) calc(60 * var(--minute-height))
    );
}

.week-event-block[b-a0zb75lha6] {
    position: absolute;
    left: calc(0.35rem + (100% - var(--week-column-gutter)) * var(--column-index, 0) / var(--column-count, 1));
    width: calc((100% - var(--week-column-gutter)) / var(--column-count, 1));
    top: calc(var(--start-minutes) * var(--minute-height));
    height: calc(var(--duration-minutes) * var(--minute-height));
    min-height: 24px;
    padding: 0.35rem 0.45rem;
    border-radius: var(--radius-md);
    border-left: 6px solid var(--event-color, var(--accent));
    background: linear-gradient(135deg, var(--event-color, var(--accent)) 0%, var(--event-color-soft, var(--accent-soft)) 35%, rgba(255, 255, 255, 0.88) 100%);
    box-shadow: var(--shadow-1);
    color: var(--text-strong);
    overflow: hidden;
    cursor: pointer;
}

.agenda-wrapper.agenda-density-compact .agenda-week[b-a0zb75lha6] {
    margin-top: var(--space-3);
}

.agenda-wrapper.agenda-density-compact .week-header[b-a0zb75lha6] {
    grid-template-columns: 58px repeat(7, minmax(120px, 1fr));
}

.agenda-wrapper.agenda-density-compact .week-body[b-a0zb75lha6] {
    grid-template-columns: 58px minmax(0, 1fr);
}

.agenda-wrapper.agenda-density-compact .week-day-label[b-a0zb75lha6] {
    padding: 0.45rem 0.5rem;
    font-size: 0.65rem;
    letter-spacing: 0.06em;
}

.agenda-wrapper.agenda-density-compact .week-time-slot[b-a0zb75lha6] {
    font-size: 0.65rem;
    padding: 0.25rem 0.3rem;
}

.agenda-wrapper.agenda-density-compact .week-event-block[b-a0zb75lha6] {
    min-height: 22px;
    padding: 0.3rem 0.4rem;
    border-left-width: 6px;
}

.agenda-wrapper.agenda-density-compact .week-event-title[b-a0zb75lha6] {
    font-size: 0.7rem;
}

.agenda-wrapper.agenda-density-compact .week-event-time[b-a0zb75lha6] {
    font-size: 0.65rem;
}

@media (max-width: 768px) {
    .agenda-wrapper[b-a0zb75lha6] {
        --agenda-header-offset: 48px;
        --agenda-header-height: 52px;
    }

    .agenda-header-sticky[b-a0zb75lha6] {
        top: 48px;
    }

    /* Prevent header overflow from widening the page */
    .agenda-header[b-a0zb75lha6] {
        overflow: hidden;
        max-width: 100vw;
    }

    .agenda-header-top[b-a0zb75lha6] {
        padding: 0.35rem 0.5rem !important;
    }

    .agenda-header-bottom[b-a0zb75lha6] {
        padding: 0.25rem 0.35rem !important;
        gap: 0.25rem;
        align-items: center;
        flex-wrap: nowrap;
    }

    .agenda-date-group[b-a0zb75lha6] {
        flex: 0 0 auto;
        gap: 0 !important;
    }

    /* PL-172: reserving 16rem for the label is what stops the desktop toolbar reflowing as you
       page days. On a phone the toolbar is nowrap already, so the reservation buys nothing and
       costs most of the screen — the label shrinks to whatever the date needs. */
    .agenda-date-group[b-a0zb75lha6]  .date-jump-label {
        min-width: 0 !important;
        font-size: 0.7rem;
    }

    .agenda-date-group[b-a0zb75lha6]  .date-jump-trigger {
        padding: 0.15rem 0.3rem;
    }

    .agenda-date-group[b-a0zb75lha6]  .date-jump-caret {
        display: none;
    }

    .agenda-controls-row[b-a0zb75lha6] {
        display: flex !important;
        flex: 1 1 auto;
        flex-wrap: nowrap;
        justify-content: center;
        gap: 0.2rem;
        min-width: 0;
    }

    .agenda-controls-row .btn-group[b-a0zb75lha6] {
        flex-wrap: nowrap;
    }

    .agenda-controls-row .btn[b-a0zb75lha6] {
        padding: 0.1rem 0.3rem;
        font-size: 0.65rem;
        min-width: 0;
        white-space: nowrap;
    }

    .agenda-view-toggle .btn[b-a0zb75lha6] {
        min-width: 0;
    }

    .timeline-density-toggle[b-a0zb75lha6] {
        display: none;
    }

    .agenda-date-nav[b-a0zb75lha6] {
        flex: 0 0 auto;
    }

    .agenda-date-nav .btn[b-a0zb75lha6] {
        padding: 0.1rem 0.25rem;
        font-size: 0.65rem;
    }

    .agenda-content[b-a0zb75lha6] {
        padding-top: var(--space-2);
        margin-top: var(--space-1);
    }

    /* Multi-resource group headers: on phones the single-row header (chevron +
       name + "X of Y resources" tag + booking count + capacity) can't shrink
       (flex min-width:auto) so the card grows wider than the viewport, and the
       "N Bookings" label wraps mid-phrase, making these cards taller and
       visibly different from the compact single-slot cards around them.
       Let the header wrap compactly and size its text like the other cards. */
    .slot-group-header .event-card-header[b-a0zb75lha6] {
        flex-wrap: wrap;
        row-gap: 0.15rem;
    }

    .slot-group-header .event-title[b-a0zb75lha6] {
        flex: 1 1 auto;
        flex-wrap: wrap;
        min-width: 0;
        row-gap: 0.15rem;
        font-size: 0.8rem;
    }

    .slot-group-header .event-title .event-name[b-a0zb75lha6] {
        flex: 0 1 auto;
        min-width: 0;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .slot-group-header .resource-count-tag[b-a0zb75lha6] {
        font-size: 0.62rem;
        padding: 0.05rem 0.4rem;
        white-space: nowrap;
    }

    .slot-group-header .event-controls[b-a0zb75lha6] {
        display: flex;
        align-items: center;
        gap: 0.45rem;
        flex: 0 0 auto;
        margin-left: auto;
        font-size: 0.75rem;
    }

    .slot-group-header .event-controls .event-customer[b-a0zb75lha6] {
        /* "2 Bookings" must stay on one line — the global .event-customer rule
           allows wrapping, which stretched these cards vertically. */
        white-space: nowrap;
    }
}

/* Extra-small screens (iPhone SE, small Android) */
@media (max-width: 400px) {
    .agenda-header-bottom[b-a0zb75lha6] {
        padding: 0.2rem 0.25rem !important;
        gap: 0.15rem;
    }

    .agenda-controls-row .btn[b-a0zb75lha6] {
        padding: 0.1rem 0.2rem;
        font-size: 0.6rem;
    }

    .agenda-date-nav .btn[b-a0zb75lha6] {
        padding: 0.1rem 0.2rem;
        font-size: 0.6rem;
    }

    .agenda-date-group[b-a0zb75lha6]  .date-jump-label {
        font-size: 0.65rem;
    }

    .agenda-date-group[b-a0zb75lha6]  .date-jump-trigger {
        padding: 0.1rem 0.25rem;
    }
}

.week-event-title[b-a0zb75lha6] {
    font-size: 0.75rem;
    font-weight: var(--font-semibold);
    line-height: 1.1;
}

.week-event-time[b-a0zb75lha6] {
    font-size: 0.65rem;
    color: var(--text-normal);
    margin-top: 0.2rem;
}

.agenda-wrapper.agenda-display-timeline.timeline-density-expanded[b-a0zb75lha6] {
    --week-column-gutter: 1.4rem;
    --week-card-width: 220px;
    --week-column-gap: 10px;
}

.agenda-wrapper.agenda-display-timeline.timeline-density-expanded .week-header[b-a0zb75lha6] {
    display: flex;
    width: max-content;
}

.agenda-wrapper.agenda-display-timeline.timeline-density-expanded .week-time-spacer[b-a0zb75lha6] {
    flex: 0 0 70px;
}

.agenda-wrapper.agenda-display-timeline.timeline-density-expanded .week-day-label[b-a0zb75lha6] {
    padding: 0.75rem 0.85rem;
    flex: 0 0 var(--day-column-width, 320px);
    min-width: var(--day-column-width, 320px);
}

.agenda-wrapper.agenda-display-timeline.timeline-density-expanded .week-event-block[b-a0zb75lha6] {
    padding: 0.55rem 0.7rem;
    width: var(--week-card-width);
    max-width: var(--week-card-width);
    left: calc(var(--column-index, 0) * (var(--week-card-width) + var(--week-column-gap)));
}

.agenda-wrapper.agenda-display-timeline.timeline-density-expanded .week-event-title[b-a0zb75lha6] {
    font-size: 0.8rem;
}

.agenda-wrapper.agenda-display-timeline.timeline-density-expanded .week-event-time[b-a0zb75lha6] {
    font-size: 0.7rem;
}

.agenda-wrapper.agenda-display-timeline.timeline-density-expanded .agenda-week[b-a0zb75lha6] {
    width: max-content;
    min-width: 100%;
}

.agenda-wrapper.agenda-display-timeline.timeline-density-expanded .week-header[b-a0zb75lha6],
.agenda-wrapper.agenda-display-timeline.timeline-density-expanded .week-body[b-a0zb75lha6] {
    width: max-content;
}

.agenda-wrapper.agenda-display-timeline.timeline-density-expanded .week-grid[b-a0zb75lha6] {
    display: flex;
    width: max-content;
}

.agenda-wrapper.agenda-display-timeline.timeline-density-expanded .week-day-column[b-a0zb75lha6] {
    flex: 0 0 var(--day-column-width, 320px);
    min-width: var(--day-column-width, 320px);
}

.agenda-wrapper.agenda-display-timeline.timeline-density-expanded .week-day-grid[b-a0zb75lha6] {
    padding: 0 var(--week-column-gap);
}

.agenda-wrapper.agenda-view-day .week-header[b-a0zb75lha6] {
    grid-template-columns: 70px minmax(420px, max-content);
}

.agenda-wrapper.agenda-view-day .week-day-column[b-a0zb75lha6] {
    min-width: 420px;
}

.agenda-wrapper.agenda-display-timeline.agenda-view-day.timeline-density-expanded .week-grid[b-a0zb75lha6] {
    min-width: 420px;
}

.agenda-wrapper.agenda-display-timeline.agenda-density-compact.timeline-density-expanded .week-event-block[b-a0zb75lha6] {
    min-height: 26px;
    padding: 0.45rem 0.55rem;
}

.agenda-wrapper.agenda-display-timeline.agenda-density-compact.timeline-density-expanded .week-event-title[b-a0zb75lha6] {
    font-size: 0.78rem;
}

.recent-bookings-panel.open[b-a0zb75lha6] {
    right: 0;
}

.recent-bookings-panel .panel-header[b-a0zb75lha6] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.5rem;
    border-bottom: 1px solid var(--border-subtle);
    background: linear-gradient(135deg, var(--accent) 0%, var(--accent-strong) 100%);
    color: var(--text-on-accent);
}

.recent-bookings-panel .panel-body[b-a0zb75lha6] {
    flex: 1;
    overflow-y: auto;
    padding: 1rem;
}

.recent-booking-card[b-a0zb75lha6] {
    background: linear-gradient(135deg, var(--event-color, var(--accent)) 0%, var(--event-color-soft, var(--accent-soft)) 35%, rgba(255, 255, 255, 0.9) 100%);
    border-radius: 14px;
    padding: 1rem 1.05rem;
    margin-bottom: 0.85rem;
    box-shadow: 0 10px 22px rgba(15, 23, 42, 0.08);
    transition: all 0.2s ease;
    cursor: pointer;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-left: 5px solid var(--event-color, var(--accent));
    color: var(--text-strong);
}

.recent-booking-card:hover[b-a0zb75lha6] {
    transform: translateY(-2px);
    box-shadow: 0 16px 32px rgba(15, 23, 42, 0.12);
    border-left-color: var(--event-color, var(--accent));
}

.loading-state[b-a0zb75lha6],
.empty-state[b-a0zb75lha6] {
    display: grid;
    place-items: center;
    text-align: center;
    gap: 0.5rem;
    padding: 1.5rem 0.5rem;
    color: var(--text-muted);
}

.loading-state p[b-a0zb75lha6],
.empty-state p[b-a0zb75lha6] {
    margin: 0;
    font-size: 0.9rem;
}

.card-header-row[b-a0zb75lha6] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
}

.customer-info[b-a0zb75lha6] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--text-strong);
}

.customer-icon[b-a0zb75lha6] {
    color: var(--accent);
}

.customer-name-link[b-a0zb75lha6] {
    border: none;
    background: transparent;
    padding: 0;
    color: var(--text-strong);
    font-weight: var(--font-semibold);
    text-decoration: underline;
    text-decoration-color: rgba(15, 23, 42, 0.15);
    text-underline-offset: 3px;
    transition: color var(--transition-fast), text-decoration-color var(--transition-fast);
}

.customer-name-link:hover[b-a0zb75lha6] {
    color: var(--accent-strong);
    text-decoration-color: var(--accent);
}

.booking-pills[b-a0zb75lha6] {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    justify-content: flex-end;
}

.booking-pill[b-a0zb75lha6] {
    padding: 0.15rem 0.6rem;
    border-radius: var(--radius-full);
    font-size: 0.7rem;
    font-weight: var(--font-semibold);
    letter-spacing: 0.02em;
    text-transform: uppercase;
    border: 1px solid transparent;
}

.booking-pill-primary[b-a0zb75lha6] {
    background: var(--accent-soft);
    color: var(--accent-strong);
    border-color: rgba(232, 134, 52, 0.25);
}

.booking-pill-neutral[b-a0zb75lha6] {
    background: rgba(15, 23, 42, 0.06);
    color: var(--text-muted);
}

.booking-pill-warning[b-a0zb75lha6] {
    background: rgba(234, 179, 8, 0.15);
    color: #b45309;
    border-color: rgba(234, 179, 8, 0.3);
}

.event-details[b-a0zb75lha6] {
    margin-top: 0.65rem;
    display: grid;
    gap: 0.35rem;
    color: var(--text-normal);
}

.event-details i[b-a0zb75lha6] {
    color: var(--accent);
}

/* Clickable card styling */
.recent-booking-card.clickable-card[b-a0zb75lha6] {
    cursor: pointer;
}

/* Event name link styling */
.event-name-link[b-a0zb75lha6] {
    border: none;
    background: transparent;
    padding: 0;
    font-size: inherit;
    color: inherit;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    text-decoration: none;
    transition: color var(--transition-fast);
}

.event-name-link:hover[b-a0zb75lha6] {
    color: var(--accent-strong);
}

.event-name-link:hover strong[b-a0zb75lha6] {
    text-decoration: underline;
    text-underline-offset: 2px;
}

.card-actions-row[b-a0zb75lha6] {
    margin-top: 0.7rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}

.card-action-link[b-a0zb75lha6] {
    border: none;
    background: transparent;
    padding: 0;
    font-size: 0.75rem;
    font-weight: var(--font-semibold);
    color: var(--accent-strong);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    text-decoration: underline;
    text-decoration-color: transparent;
    text-underline-offset: 3px;
    transition: color var(--transition-fast), text-decoration-color var(--transition-fast);
}

.card-action-link:hover[b-a0zb75lha6] {
    color: var(--accent);
    text-decoration-color: var(--accent);
}

.clickable-section[b-a0zb75lha6] {
    cursor: pointer;
    border-radius: 8px;
    padding: 0.4rem 0.5rem;
    margin: 0.4rem -0.5rem 0;
    transition: background var(--transition-fast);
}

.clickable-section:hover[b-a0zb75lha6] {
    background: rgba(15, 23, 42, 0.04);
}

.booking-created[b-a0zb75lha6] {
    font-size: 0.72rem;
    color: var(--text-normal);
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
}

[data-theme="dark"] .recent-booking-card[b-a0zb75lha6] {
    background: linear-gradient(135deg, var(--event-color, var(--accent)) 0%, var(--event-color-soft, var(--accent-soft)) 35%, rgba(14, 18, 24, 0.92) 100%);
    border-color: rgba(148, 163, 184, 0.22);
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.45);
    color: var(--text-strong);
}

[data-theme="dark"] .recent-booking-card .customer-name-link[b-a0zb75lha6] {
    color: var(--text-strong);
    text-decoration-color: rgba(226, 237, 245, 0.3);
}

[data-theme="dark"] .recent-booking-card .booking-pill-neutral[b-a0zb75lha6] {
    background: rgba(226, 237, 245, 0.1);
    color: var(--text-normal);
}

[data-theme="dark"] .booking-pill-warning[b-a0zb75lha6] {
    background: rgba(234, 179, 8, 0.2);
    color: #fbbf24;
}

[data-theme="dark"] .clickable-section:hover[b-a0zb75lha6] {
    background: rgba(226, 237, 245, 0.06);
}

[data-theme="dark"] .card-action-link[b-a0zb75lha6] {
    color: var(--accent);
}

[data-theme="dark"] .event-name-link[b-a0zb75lha6] {
    color: var(--text-strong);
}

[data-theme="dark"] .event-name-link:hover[b-a0zb75lha6] {
    color: var(--accent);
}

/* Balanced style dark mode: gradient fades to dark bg, light text for readability */
[data-theme="dark"] .event-style-balanced .event-card-timeline[b-a0zb75lha6] {
    background: linear-gradient(135deg, var(--event-color, var(--accent)) 0%, var(--event-color-soft, var(--accent-soft)) 30%, var(--card-bg, #121821) 100%);
    border-color: rgba(148, 163, 184, 0.15);
}

[data-theme="dark"] .event-style-balanced .event-card-timeline .event-title[b-a0zb75lha6] {
    color: var(--text-strong);
}

[data-theme="dark"] .event-style-balanced .event-card-timeline .event-card-body[b-a0zb75lha6],
[data-theme="dark"] .event-style-balanced .event-card-timeline .event-meta[b-a0zb75lha6],
[data-theme="dark"] .event-style-balanced .event-card-timeline .event-time[b-a0zb75lha6],
[data-theme="dark"] .event-style-balanced .event-card-timeline .event-status[b-a0zb75lha6],
[data-theme="dark"] .event-style-balanced .event-card-timeline .event-capacity[b-a0zb75lha6] {
    color: var(--text-normal);
}

[data-theme="dark"] .event-style-balanced .event-card-timeline.next-event[b-a0zb75lha6] {
    background: linear-gradient(135deg, var(--event-color, var(--accent)) 0%, var(--event-color-soft, var(--accent-soft)) 35%, var(--card-bg, #121821) 100%);
    box-shadow: var(--shadow-2), 0 0 20px var(--event-color-soft, var(--accent-soft));
}

/* Combo cards keep dark bg + light text */
[data-theme="dark"] .event-style-balanced .event-card-timeline.combo[b-a0zb75lha6] {
    background: linear-gradient(135deg, rgba(21, 27, 35, 0.95), rgba(12, 16, 22, 0.92));
    border-color: rgba(148, 163, 184, 0.25);
}

[data-theme="dark"] .event-style-balanced .event-card-timeline.combo .event-title[b-a0zb75lha6],
[data-theme="dark"] .event-style-balanced .event-card-timeline.combo .event-card-body[b-a0zb75lha6],
[data-theme="dark"] .event-style-balanced .event-card-timeline.combo .event-meta[b-a0zb75lha6],
[data-theme="dark"] .event-style-balanced .event-card-timeline.combo .event-time[b-a0zb75lha6],
[data-theme="dark"] .event-style-balanced .event-card-timeline.combo .event-status[b-a0zb75lha6],
[data-theme="dark"] .event-style-balanced .event-card-timeline.combo .event-capacity[b-a0zb75lha6] {
    color: var(--text-strong);
}

/* Week view blocks */
[data-theme="dark"] .event-style-balanced .week-event-block[b-a0zb75lha6] {
    background: linear-gradient(135deg, var(--event-color, var(--accent)) 0%, var(--event-color-soft, var(--accent-soft)) 30%, var(--card-bg, #121821) 100%);
    border-left-color: var(--event-color, var(--accent));
}

[data-theme="dark"] .event-style-balanced .week-event-title[b-a0zb75lha6],
[data-theme="dark"] .event-style-balanced .week-event-time[b-a0zb75lha6] {
    color: var(--text-strong);
}

/* High-contrast dark mode: solid color + white text works as-is */
[data-theme="dark"] .event-style-high-contrast .event-card-timeline[b-a0zb75lha6] {
    border-color: rgba(148, 163, 184, 0.15);
}

/* High-contrast combo keeps its existing dark treatment */
[data-theme="dark"] .event-style-high-contrast .event-card-timeline.combo[b-a0zb75lha6] {
    color: var(--text-strong);
}

@media (max-width: 768px) {
    .recent-bookings-panel[b-a0zb75lha6] {
        width: 100vw;
        right: -100vw;
    }

    .recent-bookings-panel.open[b-a0zb75lha6] {
        right: 0;
    }
}
/* _content/BusinessPortal/Pages/Login.razor.rz.scp.css */
.login-container[b-8kize1blm7] {
    position: relative;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
    background: url('/images/wolf_bg.webp') no-repeat center center;
    background-size: cover;
}
video[b-8kize1blm7] {
    filter: brightness(60%);
}

.login-bg-video[b-8kize1blm7] {
    position: fixed;
    top: 0;
    left: 0;
    min-width: 100vw;
    min-height: 100vh;
    object-fit: cover;
    z-index: -2;
}

.login-bg-overlay[b-8kize1blm7] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.5);
    z-index: -1;
}

.login-wrapper[b-8kize1blm7] {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100vh;
    padding: 1rem;
}

.login-card[b-8kize1blm7] {
    max-width: 400px;
    width: 100%;
    border-radius: 1rem;
    background-color: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(6px);
}

.back-home-link[b-8kize1blm7] {
    font-size: 0.9rem;
    color: #aaa;
    text-decoration: none;
    transition: color 0.2s ease;
}

    .back-home-link:hover[b-8kize1blm7] {
        color: white;
        text-decoration: underline;
    }

/* === MOBILE FALLBACK === */
@media (max-width: 768px) {
    .login-bg-video[b-8kize1blm7] {
        display: none;
    }

    .login-container[b-8kize1blm7] {
        background: url('/images/pine_bg.webp') no-repeat center center;
        background-size: cover;
    }
}
/* _content/BusinessPortal/Pages/NotFound.razor.rz.scp.css */
.ht-404-root[b-z21exsom2z] {
    min-height: 100vh;
    background: #0b0f14;
    color: #e9edf9;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1.5rem;
    padding: 2rem 1rem;
}

.ht-404-hero[b-z21exsom2z] {
    position: relative;
    width: min(900px, 96%);
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 26px 76px rgba(0, 0, 0, 0.55);
}

.hero-img[b-z21exsom2z] {
    width: 100%;
    height: auto;
    display: block;
}

.hero-overlay[b-z21exsom2z] {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    padding: 2rem 1.5rem;
    background: linear-gradient(to top, rgba(11, 15, 20, 0.85) 0%, rgba(11, 15, 20, 0.3) 40%, transparent 70%);
    text-align: center;
}

.hero-title[b-z21exsom2z] {
    font-size: clamp(1.4rem, 1rem + 2.5vw, 2.2rem);
    font-weight: 800;
    margin: 0 0 0.25rem;
    color: #fff;
    text-shadow: 0 2px 16px rgba(0, 0, 0, 0.6);
}

.hero-subtitle[b-z21exsom2z] {
    font-size: clamp(0.9rem, 0.75rem + 0.8vw, 1.1rem);
    color: rgba(255, 255, 255, 0.7);
    margin: 0;
    text-shadow: 0 1px 8px rgba(0, 0, 0, 0.5);
}

.ht-404-card[b-z21exsom2z] {
    width: min(900px, 96%);
    background: #171c25;
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 16px;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.3);
    padding: 1.25rem 1.5rem;
}

.ht-404-actions[b-z21exsom2z] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 0.75rem;
    margin-bottom: 0.75rem;
}

.ht-404-actions .btn[b-z21exsom2z] {
    border-radius: 999px;
    padding: 0.55rem 1.1rem;
    font-weight: 600;
    border: 1px solid transparent;
    cursor: pointer;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    font-size: 0.9rem;
}

.ht-404-actions .btn-primary[b-z21exsom2z] {
    background: #7aa2ff;
    color: #0a0c12;
}

.ht-404-actions .btn-outline-light[b-z21exsom2z] {
    background: transparent;
    color: #e9edf9;
    border-color: rgba(255, 255, 255, 0.25);
}

.ht-404-actions .btn-link[b-z21exsom2z] {
    background: transparent;
    color: #98a1b6;
}

.ht-404-actions .btn:hover[b-z21exsom2z] {
    filter: brightness(1.1);
}

.ht-404-details[b-z21exsom2z] {
    color: #98a1b6;
    font-size: 0.85rem;
}

.ht-404-details code[b-z21exsom2z] {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 6px;
    padding: 0.2rem 0.45rem;
    color: #e9edf9;
    margin-left: 0.35rem;
}
/* _content/BusinessPortal/Pages/Pos.razor.rz.scp.css */
/* POS Grid */
.pos-grid[b-0b48mj32rw] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 16px;
}

/* Card image (top of each catalog card) */
.pos-card-img[b-0b48mj32rw] {
    width: 100%;
    height: 120px;
    object-fit: cover;
    border-radius: 0;
}

/* Pricing summary in cart */
.pos-pricing[b-0b48mj32rw] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.pos-pricing-row[b-0b48mj32rw] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.pos-pricing-total[b-0b48mj32rw] {
    font-size: 1.15rem;
    font-weight: 600;
    margin-top: 4px;
}
/* _content/BusinessPortal/Pages/Profile.razor.rz.scp.css */
/* Profile page styles */

.avatar-upload-container[b-xhwkafepg9] {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.avatar-placeholder[b-xhwkafepg9] {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--bg-secondary) 0%, var(--bg-tertiary) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
    border: 3px solid var(--border-color);
    overflow: hidden;
}

.avatar-placeholder i[b-xhwkafepg9] {
    color: var(--text-secondary);
}

.avatar-initials[b-xhwkafepg9] {
    font-size: 3rem;
    font-weight: 600;
    color: var(--text-primary);
    user-select: none;
}

/* Accordion styling */
.accordion-button[b-xhwkafepg9] {
    font-weight: 500;
}

.accordion-button:not(.collapsed)[b-xhwkafepg9] {
    box-shadow: none;
}

.accordion-body[b-xhwkafepg9] {
    padding: 1.5rem;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .avatar-placeholder[b-xhwkafepg9] {
        width: 120px;
        height: 120px;
    }

    .avatar-initials[b-xhwkafepg9] {
        font-size: 2.5rem;
    }
}
/* _content/BusinessPortal/Pages/Public_Facing/Embed/Embed.razor.rz.scp.css */

.widget-header[b-vr6l3rty17] {

}

.unavailable-banner[b-vr6l3rty17] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 50vh;
    text-align: center;
    padding: 2rem;
    color: var(--text-primary, #333);
}

.unavailable-banner h2[b-vr6l3rty17] {
    font-size: 1.5rem;
    margin-bottom: 0.5rem;
    font-weight: 600;
}

.unavailable-banner p[b-vr6l3rty17] {
    font-size: 1rem;
    opacity: 0.7;
}

.cookie-consent-backdrop[b-vr6l3rty17] {
    position: fixed;
    inset: 0;
    z-index: 9999;
    background: rgba(0,0,0,0.45);
    display: flex;
    align-items: center;
    justify-content: center;
}

.cookie-consent-modal[b-vr6l3rty17] {
    width: min(420px, calc(100vw - 2rem));
    background: var(--embed-card-bg, #fff);
    color: var(--embed-text, #333);
    border-radius: 0.75rem;
    padding: 1.75rem;
    box-shadow: 0 8px 32px rgba(0,0,0,0.24);
    text-align: center;
}

.cookie-consent-heading[b-vr6l3rty17] {
    margin: 0 0 0.5rem;
    font-size: 1.15rem;
    font-weight: 600;
}

.cookie-consent-message[b-vr6l3rty17] {
    margin: 0 0 1.25rem;
    font-size: 0.9rem;
    line-height: 1.45;
    opacity: 0.85;
}

.cookie-consent-actions[b-vr6l3rty17] {
    display: flex;
    gap: 0.75rem;
    justify-content: center;
}

.cookie-consent-actions button[b-vr6l3rty17] {
    flex: 1;
    min-width: 0;
}
/* _content/BusinessPortal/Pages/Public_Facing/Landing/LandingPage.razor.rz.scp.css */
.cookie-consent-backdrop[b-9f74si6oab] {
    position: fixed;
    inset: 0;
    z-index: 9999;
    background: rgba(0,0,0,0.45);
    display: flex;
    align-items: center;
    justify-content: center;
}

.cookie-consent-modal[b-9f74si6oab] {
    width: min(420px, calc(100vw - 2rem));
    background: var(--embed-card-bg, #fff);
    color: var(--embed-text, #333);
    border-radius: 0.75rem;
    padding: 1.75rem;
    box-shadow: 0 8px 32px rgba(0,0,0,0.24);
    text-align: center;
}

.cookie-consent-heading[b-9f74si6oab] {
    margin: 0 0 0.5rem;
    font-size: 1.15rem;
    font-weight: 600;
}

.cookie-consent-message[b-9f74si6oab] {
    margin: 0 0 1.25rem;
    font-size: 0.9rem;
    line-height: 1.45;
    opacity: 0.85;
}

.cookie-consent-actions[b-9f74si6oab] {
    display: flex;
    gap: 0.75rem;
    justify-content: center;
}

.cookie-consent-actions button[b-9f74si6oab] {
    flex: 1;
    min-width: 0;
}
/* _content/BusinessPortal/Pages/ScanPage.razor.rz.scp.css */
/* ═══════════════════════════════════════════
   ScanPage — App-like mobile-first design
   Mirrors the MAUI app's layered camera UX
   ═══════════════════════════════════════════ */

/* ── Shell: fills the content area edge-to-edge ── */
.scan-shell[b-iu34r73n74] {
    position: relative;
    /* Negative margins cancel out article.content padding so we fill edge-to-edge */
    margin: calc(-1 * var(--space-6, 1.5rem));
    width: calc(100% + 2 * var(--space-6, 1.5rem));
    /* Fill the remaining viewport below the TopRow + sidebar.
       flex: 1 stretches within the .content flex container;
       min-height is a fallback for non-flex contexts. */
    flex: 1;
    min-height: 0;
    height: calc(100vh - 3.5rem);
    background: #000;
    overflow: hidden;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    -webkit-font-smoothing: antialiased;
    border-radius: 0;
}

.scan-shell.camera-off[b-iu34r73n74] {
    background: #111;
}

@media (max-width: 640px) {
    .scan-shell[b-iu34r73n74] {
        /* On mobile the content padding is --space-4 */
        margin: calc(-1 * var(--space-4, 1rem));
        width: calc(100% + 2 * var(--space-4, 1rem));
        /* On mobile: sidebar nav-top + TopRow both sit above content.
           Use 100svh minus approximate combined header height. */
        height: calc(100svh - 7rem);
        height: calc(100vh - 7rem);
    }
}

/* ── Layer 0: Camera feed ── */
.scan-camera-layer[b-iu34r73n74] {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.scan-camera-layer video[b-iu34r73n74],
.scan-camera-layer canvas[b-iu34r73n74] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.scan-camera-layer canvas[b-iu34r73n74] {
    position: absolute;
    inset: 0;
}

/* ── Layer 1: Scan frame with animated corners ── */
.scan-frame-layer[b-iu34r73n74] {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
}

.scan-frame[b-iu34r73n74] {
    width: 260px;
    height: 260px;
    position: relative;
}

.corner[b-iu34r73n74] {
    position: absolute;
    width: 40px;
    height: 40px;
}

.corner[b-iu34r73n74]::before,
.corner[b-iu34r73n74]::after {
    content: '';
    position: absolute;
    background: var(--accent, #e88634);
}

.corner.tl[b-iu34r73n74] { top: 0; left: 0; }
.corner.tl[b-iu34r73n74]::before { top: 0; left: 0; width: 40px; height: 4px; }
.corner.tl[b-iu34r73n74]::after { top: 0; left: 0; width: 4px; height: 40px; }

.corner.tr[b-iu34r73n74] { top: 0; right: 0; }
.corner.tr[b-iu34r73n74]::before { top: 0; right: 0; width: 40px; height: 4px; }
.corner.tr[b-iu34r73n74]::after { top: 0; right: 0; width: 4px; height: 40px; }

.corner.bl[b-iu34r73n74] { bottom: 0; left: 0; }
.corner.bl[b-iu34r73n74]::before { bottom: 0; left: 0; width: 40px; height: 4px; }
.corner.bl[b-iu34r73n74]::after { bottom: 0; left: 0; width: 4px; height: 40px; }

.corner.br[b-iu34r73n74] { bottom: 0; right: 0; }
.corner.br[b-iu34r73n74]::before { bottom: 0; right: 0; width: 40px; height: 4px; }
.corner.br[b-iu34r73n74]::after { bottom: 0; right: 0; width: 4px; height: 40px; }

.scan-line[b-iu34r73n74] {
    position: absolute;
    top: 10px;
    left: 10px;
    right: 10px;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--accent, #e88634), transparent);
    opacity: 0;
    border-radius: 2px;
}

.scan-line.scanning[b-iu34r73n74] {
    opacity: 0.8;
    animation: scanLineMove-b-iu34r73n74 2s ease-in-out infinite;
}

@keyframes scanLineMove-b-iu34r73n74 {
    0% { transform: translateY(0); }
    50% { transform: translateY(236px); }
    100% { transform: translateY(0); }
}

/* ── Layer 2: Top floating controls ── */
.scan-top-bar[b-iu34r73n74] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10;
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 12px;
    flex-wrap: wrap;
}

.top-bar-spacer[b-iu34r73n74] { flex: 1; }

.floating-pill[b-iu34r73n74] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(0, 0, 0, 0.55);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 20px;
    padding: 6px 12px;
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s;
    white-space: nowrap;
}

.floating-pill:hover[b-iu34r73n74] {
    background: rgba(0, 0, 0, 0.7);
}

.icon-pill[b-iu34r73n74] {
    padding: 6px 10px;
}

.icon-pill i[b-iu34r73n74] {
    font-size: 16px;
}

.icon-pill.has-dot[b-iu34r73n74]::after {
    content: '';
    width: 8px;
    height: 8px;
    background: var(--success, #198754);
    border-radius: 50%;
    position: absolute;
    top: 2px;
    right: 2px;
}

.icon-pill.has-dot[b-iu34r73n74] {
    position: relative;
}

/* Custom toggle switch (app-style) */
.switch-label[b-iu34r73n74] {
    display: flex;
    align-items: center;
    cursor: pointer;
    margin: 0;
}

.switch-label input[b-iu34r73n74] { display: none; }

.switch-track[b-iu34r73n74] {
    width: 36px;
    height: 20px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 10px;
    position: relative;
    transition: background 0.2s;
}

.switch-label input:checked + .switch-track[b-iu34r73n74] {
    background: var(--success, #198754);
}

.switch-thumb[b-iu34r73n74] {
    position: absolute;
    top: 2px;
    left: 2px;
    width: 16px;
    height: 16px;
    background: #fff;
    border-radius: 50%;
    transition: transform 0.2s;
}

.switch-label input:checked + .switch-track .switch-thumb[b-iu34r73n74] {
    transform: translateX(16px);
}

.pill-text[b-iu34r73n74] {
    font-weight: 700;
}

/* Scan badges */
.scan-badge[b-iu34r73n74] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    border-radius: 12px;
    font-size: 13px;
    font-weight: 700;
    color: #fff;
    backdrop-filter: blur(8px);
}

.success-badge[b-iu34r73n74] { background: rgba(25, 135, 84, 0.7); }
.error-badge[b-iu34r73n74] { background: rgba(220, 53, 69, 0.7); }

.scan-badge i[b-iu34r73n74] { font-size: 12px; }

/* ── Layer 2b: Status pill ── */
.scan-status-pill[b-iu34r73n74] {
    position: absolute;
    bottom: 140px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 5;
    background: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(8px);
    color: #fff;
    padding: 6px 16px;
    border-radius: 16px;
    font-size: 13px;
    pointer-events: none;
}

/* ── Layer 2c: Start Camera CTA ── */
.scan-start-cta[b-iu34r73n74] {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.btn-start-camera[b-iu34r73n74] {
    display: flex;
    align-items: center;
    gap: 10px;
    background: var(--accent, #e88634);
    color: #fff;
    border: none;
    border-radius: 16px;
    padding: 16px 32px;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
    transition: transform 0.1s, background 0.15s;
}

.btn-start-camera:hover[b-iu34r73n74] { transform: scale(1.03); }
.btn-start-camera:active[b-iu34r73n74] { transform: scale(0.98); }
.btn-start-camera i[b-iu34r73n74] { font-size: 24px; }

.cta-sub[b-iu34r73n74] {
    color: rgba(255, 255, 255, 0.5);
    font-size: 14px;
    margin: 0;
}

/* ── Layer 3: Toast result cards ── */
.scan-toast-area[b-iu34r73n74] {
    position: absolute;
    bottom: 100px;
    left: 16px;
    right: 16px;
    z-index: 15;
    display: flex;
    flex-direction: column;
    gap: 8px;
    pointer-events: none;
}

.scan-toast[b-iu34r73n74] {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #fff;
    border-radius: 14px;
    padding: 12px 14px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
    pointer-events: auto;
    cursor: pointer;
    animation: toastSlideIn-b-iu34r73n74 0.3s ease-out;
    overflow: hidden;
}

@keyframes toastSlideIn-b-iu34r73n74 {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

.toast-accent[b-iu34r73n74] {
    width: 6px;
    min-height: 36px;
    border-radius: 3px;
    flex-shrink: 0;
}

.toast-success .toast-accent[b-iu34r73n74] { background: var(--success, #198754); }
.toast-error .toast-accent[b-iu34r73n74] { background: var(--danger, #dc3545); }
.toast-warning .toast-accent[b-iu34r73n74] { background: #ff6b35; }

.toast-body[b-iu34r73n74] {
    flex: 1;
    min-width: 0;
}

.toast-name[b-iu34r73n74] {
    display: block;
    font-size: 15px;
    font-weight: 700;
    color: #1a1a2e;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.toast-msg[b-iu34r73n74] {
    display: block;
    font-size: 12px;
    color: #6c757d;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.toast-badge[b-iu34r73n74] {
    padding: 4px 10px;
    border-radius: 10px;
    font-size: 11px;
    font-weight: 700;
    color: #fff;
    white-space: nowrap;
    flex-shrink: 0;
}

.toast-success .toast-badge[b-iu34r73n74] { background: var(--success, #198754); }
.toast-error .toast-badge[b-iu34r73n74] { background: var(--danger, #dc3545); }
.toast-warning .toast-badge[b-iu34r73n74] { background: #ff6b35; }

/* ── Layer 4: Bottom sheet ── */
.scan-bottom-sheet[b-iu34r73n74] {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 20;
    background: #fff;
    border-radius: 20px 20px 0 0;
    box-shadow: 0 -4px 24px rgba(0, 0, 0, 0.2);
    transform: translateY(calc(100% - 60px));
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    max-height: 60vh;
    display: flex;
    flex-direction: column;
}

.scan-bottom-sheet.open[b-iu34r73n74] {
    transform: translateY(0);
}

.sheet-handle[b-iu34r73n74] {
    padding: 8px 16px 4px;
    cursor: pointer;
    flex-shrink: 0;
}

.handle-bar[b-iu34r73n74] {
    width: 40px;
    height: 4px;
    background: #ddd;
    border-radius: 2px;
    margin: 0 auto 8px;
}

.sheet-hint[b-iu34r73n74] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 15px;
    font-weight: 700;
    color: #1a1a2e;
    padding-bottom: 8px;
    border-bottom: 1px solid #eee;
}

.btn-clear-history[b-iu34r73n74] {
    background: none;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 2px 10px;
    font-size: 12px;
    color: #6c757d;
    cursor: pointer;
}

.sheet-body[b-iu34r73n74] {
    flex: 1;
    overflow-y: auto;
    padding: 8px 12px 16px;
    -webkit-overflow-scrolling: touch;
}

.sheet-empty[b-iu34r73n74] {
    text-align: center;
    padding: 40px 20px;
    color: #aaa;
}

.sheet-empty i[b-iu34r73n74] { font-size: 40px; display: block; margin-bottom: 8px; }
.sheet-empty p[b-iu34r73n74] { font-size: 16px; margin: 0 0 4px; }
.sheet-empty span[b-iu34r73n74] { font-size: 12px; }

/* History cards */
.history-card[b-iu34r73n74] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    border: 1px solid #eee;
    border-radius: 12px;
    margin-bottom: 6px;
    background: #fff;
    transition: opacity 0.15s;
}

.history-card.tappable[b-iu34r73n74] { cursor: pointer; }
.history-card.tappable:hover[b-iu34r73n74] { background: #f8f9fa; }
.history-card.dimmed[b-iu34r73n74] { opacity: 0.5; }

.history-time[b-iu34r73n74] {
    font-size: 12px;
    color: #999;
    width: 56px;
    flex-shrink: 0;
}

.history-info[b-iu34r73n74] {
    flex: 1;
    min-width: 0;
}

.history-info strong[b-iu34r73n74] {
    display: block;
    font-size: 14px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.history-msg[b-iu34r73n74] {
    display: block;
    font-size: 12px;
    color: #999;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.history-badge[b-iu34r73n74] {
    padding: 4px 8px;
    border-radius: 10px;
    font-size: 11px;
    font-weight: 700;
    color: #fff;
    white-space: nowrap;
    flex-shrink: 0;
}

.badge-success[b-iu34r73n74] { background: var(--success, #198754); }
.badge-error[b-iu34r73n74] { background: var(--danger, #dc3545); }
.badge-warning[b-iu34r73n74] { background: #ff6b35; }

/* ── Layer 5: Manual lookup FAB ── */
.fab-manual[b-iu34r73n74] {
    position: absolute;
    right: 16px;
    bottom: 80px;
    z-index: 25;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: var(--accent, #e88634);
    color: #fff;
    border: none;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 22px;
    transition: transform 0.1s;
}

.fab-manual:hover[b-iu34r73n74] { transform: scale(1.08); }
.fab-manual:active[b-iu34r73n74] { transform: scale(0.95); }

/* Backdrop to dismiss manual lookup by tapping outside */
.manual-backdrop[b-iu34r73n74] {
    position: absolute;
    inset: 0;
    z-index: 24;
    background: rgba(0, 0, 0, 0.3);
}

.manual-overlay[b-iu34r73n74] {
    position: absolute;
    bottom: 80px;
    left: 16px;
    right: 16px;
    z-index: 25;
}

.manual-card[b-iu34r73n74] {
    background: #fff;
    border-radius: 16px;
    padding: 12px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
    display: flex;
    align-items: center;
    gap: 8px;
}

.manual-input[b-iu34r73n74] {
    flex: 1;
    border: 1px solid #ddd;
    border-radius: 10px;
    padding: 8px 12px;
    font-size: 14px;
    outline: none;
}

.manual-input:focus[b-iu34r73n74] {
    border-color: var(--accent, #e88634);
    box-shadow: 0 0 0 2px rgba(232, 134, 52, 0.2);
}

.btn-manual-go[b-iu34r73n74] {
    background: var(--accent, #e88634);
    color: #fff;
    border: none;
    border-radius: 10px;
    padding: 8px 16px;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    white-space: nowrap;
}

.btn-manual-go:disabled[b-iu34r73n74] {
    opacity: 0.4;
    cursor: not-allowed;
}

.btn-manual-close[b-iu34r73n74] {
    background: #f0f0f0;
    border: none;
    color: #666;
    font-size: 18px;
    cursor: pointer;
    padding: 0;
    width: 40px;
    height: 40px;
    min-width: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: background 0.15s;
}

.btn-manual-close:hover[b-iu34r73n74] {
    background: #ddd;
}

/* ── Layer 6: Full-screen overlay (big checkmark / X) ── */
.scan-overlay[b-iu34r73n74] {
    position: absolute;
    inset: 0;
    z-index: 50;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 20px;
    animation: overlayFadeIn-b-iu34r73n74 0.25s ease-out;
}

.scan-overlay.overlay-success[b-iu34r73n74] {
    background: rgba(25, 135, 84, 0.6);
}

.scan-overlay.overlay-error[b-iu34r73n74] {
    background: rgba(220, 53, 69, 0.6);
}

@keyframes overlayFadeIn-b-iu34r73n74 {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes overlayIconPop-b-iu34r73n74 {
    0% { transform: scale(0.3); opacity: 0; }
    60% { transform: scale(1.1); opacity: 1; }
    100% { transform: scale(1); opacity: 1; }
}

.overlay-icon[b-iu34r73n74] {
    width: 140px;
    height: 140px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
    animation: overlayIconPop-b-iu34r73n74 0.4s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

.overlay-success .overlay-icon[b-iu34r73n74] {
    background: var(--success, #198754);
}

.overlay-error .overlay-icon[b-iu34r73n74] {
    background: var(--danger, #dc3545);
}

.overlay-icon i[b-iu34r73n74] {
    font-size: 72px;
    color: #fff;
}

.overlay-title[b-iu34r73n74] {
    font-size: 26px;
    font-weight: 800;
    color: #fff;
    text-align: center;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.overlay-subtitle[b-iu34r73n74] {
    font-size: 16px;
    color: rgba(255, 255, 255, 0.95);
    text-align: center;
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
    max-width: 300px;
}

/* ── Layer 7: Filter panel (slide-in from right) ── */
.filter-backdrop[b-iu34r73n74] {
    position: absolute;
    inset: 0;
    z-index: 30;
    background: rgba(0, 0, 0, 0.5);
}

.filter-panel[b-iu34r73n74] {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 31;
    width: min(360px, 85vw);
    background: #fff;
    display: flex;
    flex-direction: column;
    animation: filterSlideIn-b-iu34r73n74 0.25s ease-out;
}

@keyframes filterSlideIn-b-iu34r73n74 {
    from { transform: translateX(100%); }
    to { transform: translateX(0); }
}

.filter-header[b-iu34r73n74] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px;
    border-bottom: 1px solid #eee;
}

.filter-header h6[b-iu34r73n74] {
    margin: 0;
    font-size: 17px;
    font-weight: 700;
}

.filter-body[b-iu34r73n74] {
    flex: 1;
    overflow-y: auto;
    padding: 12px 16px;
    -webkit-overflow-scrolling: touch;
}

.filter-section[b-iu34r73n74] {
    margin-bottom: 20px;
}

.filter-label[b-iu34r73n74] {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: #666;
    margin-bottom: 8px;
}

.scope-toggle[b-iu34r73n74] {
    display: flex;
    background: #f0f0f0;
    border-radius: 10px;
    padding: 2px;
}

.scope-btn[b-iu34r73n74] {
    flex: 1;
    padding: 8px;
    border: none;
    background: transparent;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    color: #666;
    cursor: pointer;
    transition: all 0.15s;
}

.scope-btn.active[b-iu34r73n74] {
    background: #fff;
    color: #1a1a2e;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
}

.filter-search-row[b-iu34r73n74] {
    display: flex;
    gap: 8px;
    margin-bottom: 8px;
}

.filter-search[b-iu34r73n74] {
    flex: 1;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 6px 10px;
    font-size: 13px;
    outline: none;
}

.filter-search:focus[b-iu34r73n74] {
    border-color: var(--accent, #e88634);
}

.btn-toggle-all[b-iu34r73n74] {
    background: none;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 6px 10px;
    font-size: 12px;
    color: #666;
    cursor: pointer;
    white-space: nowrap;
}

.filter-list[b-iu34r73n74] {
    max-height: 200px;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.filter-item[b-iu34r73n74] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    border: 1px solid #eee;
    border-radius: 8px;
    cursor: pointer;
    transition: background 0.1s;
}

.filter-item:hover[b-iu34r73n74] { background: #f8f9fa; }

.filter-item input[type="checkbox"][b-iu34r73n74] {
    width: 18px;
    height: 18px;
    accent-color: var(--accent, #e88634);
    flex-shrink: 0;
}

.fi-name[b-iu34r73n74] {
    font-weight: 600;
    font-size: 13px;
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.fi-cat[b-iu34r73n74] {
    font-size: 12px;
    color: #999;
    margin-left: auto;
    flex-shrink: 0;
}

.filter-slider[b-iu34r73n74] {
    width: 100%;
    accent-color: var(--accent, #e88634);
}

.gate-times[b-iu34r73n74] {
    display: flex;
    gap: 12px;
    margin-top: 8px;
}

.gate-field[b-iu34r73n74] {
    flex: 1;
}

.gate-field label[b-iu34r73n74] {
    display: block;
    font-size: 12px;
    color: #999;
    margin-bottom: 4px;
}

.gate-field input[type="time"][b-iu34r73n74] {
    width: 100%;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 6px 8px;
    font-size: 13px;
}

.filter-footer[b-iu34r73n74] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 16px;
    border-top: 1px solid #eee;
}

.filter-count[b-iu34r73n74] {
    font-size: 13px;
    color: #999;
}

.btn-filter-done[b-iu34r73n74] {
    background: var(--accent, #e88634);
    color: #fff;
    border: none;
    border-radius: 10px;
    padding: 8px 24px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
}

/* ── Details modal (shared) ── */
.modal-backdrop.show[b-iu34r73n74] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 1040;
}

.ht-modal[b-iu34r73n74] {
    position: fixed;
    z-index: 1050;
    background: var(--surface-0, #fff);
    color: var(--text-normal, #1a1a2e);
    border-radius: 12px;
    box-shadow: 0 16px 48px rgba(0, 0, 0, 0.25);
    display: flex;
    flex-direction: column;
    max-height: 80vh;
    /* Desktop: centered */
    inset: 10% 50% auto 50%;
    transform: translate(-50%, 0);
    width: min(1100px, 92vw);
}

.ht-modal-header[b-iu34r73n74], .ht-modal-footer[b-iu34r73n74] {
    padding: .75rem 1rem;
    border-bottom: 1px solid var(--border-subtle, #eee);
}

.ht-modal-footer[b-iu34r73n74] {
    border-top: 1px solid var(--border-subtle, #eee);
    border-bottom: none;
    margin-top: auto;
}

.ht-modal-header[b-iu34r73n74] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.ht-modal-header .title .sub[b-iu34r73n74] {
    color: var(--text-muted, #999);
    font-size: .9rem;
    margin-top: .1rem;
}

.ht-modal-body[b-iu34r73n74] {
    padding: .75rem 1rem;
    overflow: auto;
}

.ticket-card[b-iu34r73n74] {
    border: 1px solid var(--border-subtle, #eee);
    border-radius: .75rem;
    margin-bottom: .75rem;
}

.ticket-head[b-iu34r73n74] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .6rem .75rem;
    border-bottom: 1px solid var(--border-subtle, #eee);
}

.ticket-head .muted[b-iu34r73n74],
.muted[b-iu34r73n74] {
    color: var(--text-muted, #999);
    font-size: .9rem;
}

.table td[b-iu34r73n74], .table th[b-iu34r73n74] {
    vertical-align: middle;
}

/* ── Mobile-specific: make modal full-screen ── */
@media (max-width: 768px) {
    .ht-modal[b-iu34r73n74] {
        inset: 0;
        transform: none;
        width: 100%;
        max-height: 100vh;
        border-radius: 0;
    }

    /* Toast area above sheet */
    .scan-toast-area[b-iu34r73n74] {
        bottom: 80px;
    }

    /* Slightly larger scan frame on mobile */
    .scan-frame[b-iu34r73n74] {
        width: 240px;
        height: 240px;
    }

    /* Status pill position */
    .scan-status-pill[b-iu34r73n74] {
        bottom: 120px;
    }
}

/* ── Desktop: larger viewport enhancements ── */
@media (min-width: 769px) {
    .scan-frame[b-iu34r73n74] {
        width: 300px;
        height: 300px;
    }

    .scan-toast-area[b-iu34r73n74] {
        left: auto;
        right: 16px;
        width: 380px;
        bottom: 120px;
    }

    .scan-bottom-sheet[b-iu34r73n74] {
        max-width: 500px;
        left: auto;
        right: 0;
        border-radius: 20px 0 0 0;
        max-height: 50vh;
    }

    .fab-manual[b-iu34r73n74] {
        right: 24px;
        bottom: 100px;
    }

    .manual-overlay[b-iu34r73n74] {
        left: auto;
        right: 24px;
        width: 400px;
        bottom: 100px;
    }
}
/* _content/BusinessPortal/Pages/Updates.razor.rz.scp.css */
.updates-page[b-hzu60y1a80] {
    min-height: 100vh;
    padding-bottom: 2rem;
}

/* Header */
.updates-header[b-hzu60y1a80] {
    padding: 1rem 0;
}

.header-icon-wrap[b-hzu60y1a80] {
    width: 3rem;
    height: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0.75rem;
    background: linear-gradient(135deg, rgba(13, 110, 253, 0.1) 0%, rgba(13, 110, 253, 0.05) 100%);
    font-size: 1.5rem;
    color: var(--bs-primary);
    flex-shrink: 0;
}

/* Subscribe for Updates (PL-96) */
.subscribe-box[b-hzu60y1a80] {
    text-align: right;
}

.subscribe-hint[b-hzu60y1a80] {
    max-width: 240px;
    line-height: 1.3;
}

/* Latest Version Card */
.latest-version-card[b-hzu60y1a80] {
    background: var(--card-bg);
    border: 1px solid var(--border-color);
    border-left: 4px solid #198754;
    border-radius: 0.75rem;
    padding: 1.75rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}

.latest-version-header[b-hzu60y1a80] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
}

.version-number-badge[b-hzu60y1a80] {
    background: linear-gradient(135deg, rgba(13, 110, 253, 0.08) 0%, rgba(13, 110, 253, 0.03) 100%);
    border: 1px solid rgba(13, 110, 253, 0.15);
    padding: 0.5rem 1rem;
    border-radius: 0.5rem;
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--bs-primary);
    white-space: nowrap;
}

/* Category Grid */
.category-grid[b-hzu60y1a80] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1rem;
}

.category-card[b-hzu60y1a80] {
    background: var(--bg-secondary, #f8f9fa);
    border-radius: 0.5rem;
    padding: 1.25rem;
    border-left: 3px solid var(--border-color);
}

.category-card.border-success[b-hzu60y1a80] { border-left-color: #198754; }
.category-card.border-primary[b-hzu60y1a80] { border-left-color: #0d6efd; }
.category-card.border-info[b-hzu60y1a80] { border-left-color: #0dcaf0; }
.category-card.border-warning[b-hzu60y1a80] { border-left-color: #ffc107; }
.category-card.border-secondary[b-hzu60y1a80] { border-left-color: #6c757d; }

.category-title[b-hzu60y1a80] {
    font-size: 0.9rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
}

/* Changes Lists */
.changes-list[b-hzu60y1a80] {
    list-style: none;
    padding: 0;
    margin: 0;
}

.changes-list li[b-hzu60y1a80] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    padding: 0.3rem 0;
    font-size: 0.875rem;
    line-height: 1.5;
}

.changes-list li i[b-hzu60y1a80] {
    flex-shrink: 0;
    margin-top: 0.2rem;
}

.changes-list.compact li[b-hzu60y1a80] {
    font-size: 0.8125rem;
    padding: 0.2rem 0;
}

/* History grid uses smaller min-width for denser layout */
.history-grid[b-hzu60y1a80] {
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 0.75rem;
}

.history-grid .category-card[b-hzu60y1a80] {
    padding: 1rem;
}

/* Timeline */
.timeline[b-hzu60y1a80] {
    position: relative;
    padding-left: 2rem;
}

.timeline[b-hzu60y1a80]::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 2px;
    background: var(--border-color, #dee2e6);
}

.timeline-item[b-hzu60y1a80] {
    position: relative;
    margin-bottom: 1.5rem;
}

.timeline-marker[b-hzu60y1a80] {
    position: absolute;
    left: -2.4rem;
    top: 1.25rem;
    width: 0.75rem;
    height: 0.75rem;
    background: var(--bs-primary, #0d6efd);
    border: 2px solid var(--card-bg, #fff);
    border-radius: 50%;
    box-shadow: 0 0 0 2px rgba(13, 110, 253, 0.2);
    z-index: 1;
}

.timeline-content[b-hzu60y1a80] {
    padding-left: 0.75rem;
}

/* Version Cards (history) */
.version-card[b-hzu60y1a80] {
    background: var(--card-bg);
    border: 1px solid var(--border-color);
    border-radius: 0.5rem;
    padding: 1.25rem;
    transition: box-shadow 0.2s ease;
}

.version-card:hover[b-hzu60y1a80] {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.version-card-header[b-hzu60y1a80] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

/* Footer Card */
.footer-card[b-hzu60y1a80] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    background: var(--bg-secondary, #f8f9fa);
    border: 1px solid var(--border-color);
    border-radius: 0.5rem;
    padding: 1rem 1.25rem;
}

/* Responsive */
@media (max-width: 768px) {
    .category-grid[b-hzu60y1a80] {
        grid-template-columns: 1fr;
    }

    .latest-version-header[b-hzu60y1a80] {
        flex-direction: column;
    }

    .version-number-badge[b-hzu60y1a80] {
        align-self: flex-start;
    }

    .footer-card[b-hzu60y1a80] {
        flex-wrap: wrap;
    }

    .footer-card .btn[b-hzu60y1a80] {
        width: 100%;
        margin-top: 0.5rem;
    }

    .subscribe-box[b-hzu60y1a80] {
        text-align: left;
        width: 100%;
    }

    .subscribe-box .btn[b-hzu60y1a80] {
        width: 100%;
    }

    .subscribe-hint[b-hzu60y1a80] {
        max-width: none;
    }

    .timeline[b-hzu60y1a80] {
        padding-left: 1.5rem;
    }

    .timeline-marker[b-hzu60y1a80] {
        left: -1.9rem;
        width: 0.6rem;
        height: 0.6rem;
    }
}
