/* /Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-7mia1lzmfs] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-7mia1lzmfs] {
    flex: 1;
}

[b-7mia1lzmfs] .safegrid-topbar {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 6px 18px;
    position: sticky;
    top: 0;
    z-index: 100;
    pointer-events: auto;
}

.sidebar[b-7mia1lzmfs] {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}

.top-row[b-7mia1lzmfs] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row[b-7mia1lzmfs]  a, .top-row[b-7mia1lzmfs]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-7mia1lzmfs]  a:hover, .top-row[b-7mia1lzmfs]  .btn-link:hover {
        text-decoration: underline;
    }

    .top-row[b-7mia1lzmfs]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row[b-7mia1lzmfs] {
        justify-content: space-between;
    }

    .top-row[b-7mia1lzmfs]  a, .top-row[b-7mia1lzmfs]  .btn-link {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page[b-7mia1lzmfs] {
        flex-direction: row;
    }

    .sidebar[b-7mia1lzmfs] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-7mia1lzmfs] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth[b-7mia1lzmfs]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-7mia1lzmfs], article[b-7mia1lzmfs] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

#blazor-error-ui[b-7mia1lzmfs] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-7mia1lzmfs] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-ywivdzcyzm] {
    appearance: none;
    cursor: pointer;
    width: 3.5rem;
    height: 2.5rem;
    color: white;
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    border: 1px solid var(--sg-border);
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem var(--sg-input-bg);
}

.navbar-toggler:checked[b-ywivdzcyzm] {
    background-color: rgba(255, 255, 255, 0.5);
}

.top-row[b-ywivdzcyzm] {
    min-height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-brand[b-ywivdzcyzm] {
    font-size: 1.1rem;
}

.bi[b-ywivdzcyzm] {
    display: inline-block;
    position: relative;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.75rem;
    top: -1px;
    background-size: cover;
}

.bi-house-door-fill-nav-menu[b-ywivdzcyzm] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E");
}

.bi-plus-square-fill-nav-menu[b-ywivdzcyzm] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-plus-square-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E");
}

.bi-list-nested-nav-menu[b-ywivdzcyzm] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E");
}

.nav-item[b-ywivdzcyzm] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-ywivdzcyzm] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-ywivdzcyzm] {
        padding-bottom: 1rem;
    }

    .nav-item[b-ywivdzcyzm]  .nav-link {
        color: #d7d7d7;
        background: none;
        border: none;
        border-radius: 4px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
        width: 100%;
    }

.nav-item[b-ywivdzcyzm]  a.active {
    background-color: rgba(255,255,255,0.37);
    color: white;
}

.nav-item[b-ywivdzcyzm]  .nav-link:hover {
    background-color: var(--sg-input-bg);
    color: white;
}

.sg-nav-group[b-ywivdzcyzm] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 10px;
}

.sg-nav-group-label[b-ywivdzcyzm] {
    padding: 10px 16px 4px;
    /* themeable: brands override --sg-sidebar-heading; default = the stock SafeGrid blue */
    color: var(--sg-sidebar-heading, rgba(191,219,254,0.72));
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-size: 11px;
    font-weight: 700;
}

.sg-nav-item--disabled[b-ywivdzcyzm] {
    opacity: 0.58;
    cursor: not-allowed;
}

/* Divider between Operations / Setup / Account sections */
.sg-nav-setup-divider[b-ywivdzcyzm] {
    height: 1px;
    background: var(--sg-card);
    margin: 14px 16px 4px;
}

/* The "Setup" section header — visually distinct from ops group labels */
.sg-nav-group-label--setup[b-ywivdzcyzm] {
    display: flex;
    align-items: center;
    gap: 7px;
    color: var(--sg-sidebar-heading-accent, rgba(165,180,252,0.95));
    font-size: 12px;
}

.sg-nav-group-label--setup i[b-ywivdzcyzm] {
    font-size: 13px;
}

.nav-scrollable[b-ywivdzcyzm] {
    display: none;
}

.navbar-toggler:checked ~ .nav-scrollable[b-ywivdzcyzm] {
    display: block;
}

@media (min-width: 641px) {
    .navbar-toggler[b-ywivdzcyzm] {
        display: none;
    }

    .nav-scrollable[b-ywivdzcyzm] {
        /* Never collapse the sidebar for wide screens */
        display: block;

        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}

/* "Powered by SafeGrid" — always present, even under white-label branding */
.sg-powered-by[b-ywivdzcyzm] {
    text-align: center;
    font-size: 10.5px;
    letter-spacing: 0.04em;
    color: rgba(148,163,184,0.6);
    padding: 2px 0 8px;
}
.sg-powered-by a[b-ywivdzcyzm] {
    color: rgba(148,163,184,0.85);
    text-decoration: none;
    font-weight: 600;
}
.sg-powered-by a:hover[b-ywivdzcyzm] { text-decoration: underline; }

/* Notification badge on nav items (e.g. Pending Requests count) */
.sg-nav-badge[b-ywivdzcyzm] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 9px;
    background: #ef4444;
    color: #fff;
    font-size: 0.65rem;
    font-weight: 700;
    margin-left: auto;
    line-height: 1;
}
/* /Components/Pages/Admin.razor.rz.scp.css */
.admin-dashboard[b-3cnt7q4oyh] {
    min-height: 100%;
    height: 100%;
    width: 100%;
    padding: 6px;
    display: flex;
    flex-direction: column;
    gap: var(--sg-card-gap);
    box-sizing: border-box;
    border-radius: 0;
    background: transparent;
    border: none;
    box-shadow: none;
}

.admin-dashboard__topbar[b-3cnt7q4oyh] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 0;
}

.admin-dashboard__eyebrow[b-3cnt7q4oyh] {
    color: var(--sg-muted-soft);
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 11px;
    margin-bottom: 8px;
}

.admin-dashboard__title[b-3cnt7q4oyh] {
    margin: 0;
    font-size: clamp(28px, 3vw, 38px);
    font-weight: 700;
    color: var(--sg-heading);
}

.admin-dashboard__topbar-actions[b-3cnt7q4oyh] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.admin-dashboard__filter[b-3cnt7q4oyh] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px 10px;
    border-radius: 14px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.admin-dashboard__filter-label[b-3cnt7q4oyh] {
    color: var(--sg-subtext);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.admin-dashboard__filter-select[b-3cnt7q4oyh] {
    min-width: 160px;
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    background: var(--sg-card);
    color: var(--sg-heading);
    padding: 8px 12px;
}

.admin-notification-wrap[b-3cnt7q4oyh] {
    position: relative;
}

.admin-icon-button[b-3cnt7q4oyh] {
    width: 38px;
    height: 38px;
    border-radius: 12px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    color: var(--sg-text);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.06);
    position: relative;
}

.admin-icon-button--alert[b-3cnt7q4oyh] {
    color: var(--sg-danger);
    border-color: rgba(248,113,113,0.55);
    background: rgba(127,29,29,0.5);
}

.admin-icon-button__badge[b-3cnt7q4oyh] {
    position: absolute;
    top: -6px;
    right: -6px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 999px;
    background: #ef4444;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.admin-notification-popover[b-3cnt7q4oyh] {
    position: absolute;
    top: calc(100% + 12px);
    right: 0;
    width: 290px;
    border-radius: 16px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    box-shadow: 0 24px 50px rgba(0,0,0,0.38);
    padding: 12px;
    z-index: 20;
}

.admin-notification-popover__header[b-3cnt7q4oyh] {
    color: var(--sg-heading);
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 8px;
}

.admin-notification-item[b-3cnt7q4oyh] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 10px 12px;
    border-radius: 12px;
    color: var(--sg-text);
    text-decoration: none;
}

.admin-notification-item:hover[b-3cnt7q4oyh] {
    background: rgba(59,130,246,0.14);
    color: #fff;
}

.admin-notification-item span[b-3cnt7q4oyh],
.admin-notification-empty[b-3cnt7q4oyh] {
    color: var(--sg-muted-soft);
    font-size: 12px;
}

.admin-pending-list[b-3cnt7q4oyh] {
    list-style: none;
    margin: 0 0 14px;
    padding: 0;
}

/* Legacy li-based items */
.admin-pending-list li[b-3cnt7q4oyh] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid var(--sg-border);
    color: var(--sg-text);
}

.admin-pending-list li:last-child[b-3cnt7q4oyh] {
    border-bottom: none;
}

/* Clickable link items (admin dashboard pending requests) */
.admin-pending-item[b-3cnt7q4oyh] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 14px;
    border-bottom: 1px solid var(--sg-border);
    text-decoration: none;
    border-radius: 6px;
    transition: background 0.15s;
}

.admin-pending-item:hover[b-3cnt7q4oyh] {
    background: var(--sg-card);
}

.admin-pending-item:last-child[b-3cnt7q4oyh] {
    border-bottom: none;
}

.admin-pending-item__info[b-3cnt7q4oyh] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.admin-pending-item__name[b-3cnt7q4oyh] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--sg-text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.admin-pending-item__date[b-3cnt7q4oyh] {
    font-size: 0.75rem;
    color: var(--sg-muted-soft);
}

.admin-pending-item__action[b-3cnt7q4oyh] {
    color: var(--sg-muted-soft);
    flex-shrink: 0;
}

.admin-stats-grid[b-3cnt7q4oyh] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--sg-card-gap);
    margin: 0;
}

.admin-stat-card[b-3cnt7q4oyh] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 20px 22px;
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background:
        linear-gradient(var(--sg-card), var(--sg-card)),
        url('/images/bg-city.jpg') center/cover no-repeat;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 18px 48px rgba(0,0,0,0.32);
}

.admin-stat-card--blue[b-3cnt7q4oyh] {
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 0 0 1px rgba(96,165,250,0.18), 0 18px 48px rgba(0,0,0,0.32);
}

.admin-stat-card--orange[b-3cnt7q4oyh] {
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 0 0 1px rgba(251,146,60,0.18), 0 18px 48px rgba(0,0,0,0.32);
}

.admin-stat-card--green[b-3cnt7q4oyh] {
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 0 0 1px rgba(74,222,128,0.18), 0 18px 48px rgba(0,0,0,0.32);
}

.admin-stat-card--red[b-3cnt7q4oyh] {
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 0 0 1px rgba(251,113,133,0.18), 0 18px 48px rgba(0,0,0,0.32);
}

.admin-stat-card--purple[b-3cnt7q4oyh] {
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 0 0 1px rgba(168,85,247,0.22), 0 18px 48px rgba(0,0,0,0.32);
}

.admin-stat-card--link[b-3cnt7q4oyh] {
    text-decoration: none;
}

.admin-stat-card--link:hover[b-3cnt7q4oyh] {
    transform: translateY(-1px);
    box-shadow: 0 14px 26px rgba(15,23,42,0.24);
}

.admin-stat-card__icon[b-3cnt7q4oyh] {
    width: 46px;
    height: 46px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: var(--sg-heading);
    background: linear-gradient(135deg, rgba(59,130,246,0.95), rgba(96,165,250,0.35));
    box-shadow: 0 10px 24px rgba(59,130,246,0.28);
}

.admin-stat-card--orange .admin-stat-card__icon[b-3cnt7q4oyh] {
    background: linear-gradient(135deg, rgba(249,115,22,0.95), rgba(251,146,60,0.35));
    box-shadow: 0 10px 24px rgba(249,115,22,0.28);
}

.admin-stat-card--green .admin-stat-card__icon[b-3cnt7q4oyh] {
    background: linear-gradient(135deg, rgba(34,197,94,0.95), rgba(74,222,128,0.35));
    box-shadow: 0 10px 24px rgba(34,197,94,0.28);
}

.admin-stat-card--red .admin-stat-card__icon[b-3cnt7q4oyh] {
    background: linear-gradient(135deg, rgba(249,115,22,0.95), rgba(244,63,94,0.35));
    box-shadow: 0 10px 24px rgba(249,115,22,0.3);
}

.admin-stat-card--purple .admin-stat-card__icon[b-3cnt7q4oyh] {
    background: linear-gradient(135deg, rgba(168,85,247,0.95), rgba(192,132,252,0.35));
    box-shadow: 0 10px 24px rgba(168,85,247,0.28);
}

.admin-stat-card__value[b-3cnt7q4oyh] {
    font-size: clamp(28px, 2.8vw, 42px);
    line-height: 1;
    font-weight: 700;
    color: var(--sg-heading);
    margin-bottom: 6px;
}

.admin-stat-card__label[b-3cnt7q4oyh] {
    color: var(--sg-subtext);
    font-size: 15px;
}

.admin-dashboard__content-grid[b-3cnt7q4oyh] {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(280px, 1fr) minmax(280px, 1fr);
    grid-template-rows: repeat(2, minmax(0, 1fr));
    grid-template-areas:
        "map subscription revenue"
        "map pending health";
    gap: var(--sg-card-gap);
    flex: 1 1 auto;
    height: 100%;
    min-height: 0;
    align-items: stretch;
    align-content: stretch;
}

.admin-dashboard__content-grid > .admin-panel[b-3cnt7q4oyh] {
    height: 100%;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

.admin-panel--map-span[b-3cnt7q4oyh] {
    grid-area: map;
}

.admin-panel--subscription-mix[b-3cnt7q4oyh] {
    grid-area: subscription;
}

.admin-panel--revenue-snapshot[b-3cnt7q4oyh] {
    grid-area: revenue;
}

.admin-panel--pending-requests[b-3cnt7q4oyh] {
    grid-area: pending;
}

.admin-panel--system-health[b-3cnt7q4oyh] {
    grid-area: health;
}

.admin-panel[b-3cnt7q4oyh] {
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background:
        linear-gradient(var(--sg-card), var(--sg-card)),
        url('/images/bg-city.jpg') center/cover no-repeat;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 20px 48px rgba(0,0,0,0.28);
    backdrop-filter: blur(8px);
}

.admin-panel__empty-copy[b-3cnt7q4oyh] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px;
    color: var(--sg-muted-soft);
}

.admin-panel--map[b-3cnt7q4oyh] {
    display: flex;
    flex-direction: column;
}

.admin-map[b-3cnt7q4oyh] {
    flex: 1;
    padding: 18px 18px 14px;
    display: flex;
    flex-direction: column;
}

.admin-map__surface[b-3cnt7q4oyh] {
    position: relative;
    min-height: 240px;
    flex: 1;
    overflow: hidden;
    border-radius: 16px;
    border: 1px solid var(--sg-border);
    background:
        radial-gradient(circle at 65% 20%, rgba(255,255,255,0.3), transparent 24%),
        linear-gradient(110deg, rgba(235,245,255,0.95) 0%, rgba(216,235,248,0.82) 34%, rgba(91,135,187,0.58) 35%, rgba(16,46,92,0.92) 100%);
}

.admin-map__canvas[b-3cnt7q4oyh] {
    width: 100%;
    min-height: 240px;
    height: 100%;
}

.admin-map__hint[b-3cnt7q4oyh] {
    position: absolute;
    left: 18px;
    bottom: 18px;
    z-index: 1;
    max-width: 340px;
    padding: 14px 16px;
    border-radius: 14px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    color: rgba(241,245,249,0.92);
    display: grid;
    gap: 6px;
}

.admin-map__footer[b-3cnt7q4oyh] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 4px 0;
    color: var(--sg-subtext);
    font-size: 14px;
}

.admin-mix-layout[b-3cnt7q4oyh] {
    padding: 18px 20px 20px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
    align-items: start;
    justify-items: center;
    flex: 1;
}

.admin-mix-chart-link[b-3cnt7q4oyh] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

.admin-mix-chart[b-3cnt7q4oyh] {
    width: 124px;
    height: 124px;
    transform: rotate(-90deg);
}

.admin-mix-chart__track[b-3cnt7q4oyh],
.admin-mix-chart__segment[b-3cnt7q4oyh] {
    fill: none;
    stroke-width: 16;
}

.admin-mix-chart__track[b-3cnt7q4oyh] {
    stroke: rgba(148,163,184,0.18);
}

.admin-mix-chart__segment[b-3cnt7q4oyh] {
    stroke-linecap: round;
}

.admin-mix-chart__segment.admin-status-pill--green[b-3cnt7q4oyh] {
    stroke: #22c55e;
}

.admin-mix-chart__segment.admin-status-pill--blue[b-3cnt7q4oyh] {
    stroke: #3b82f6;
}

.admin-mix-chart__segment.admin-status-pill--amber[b-3cnt7q4oyh] {
    stroke: #f59e0b;
}

.admin-mix-chart__segment.admin-status-pill--danger[b-3cnt7q4oyh] {
    stroke: #ef4444;
}

.admin-mix-chart__segment.admin-status-pill--gold[b-3cnt7q4oyh] {
    stroke: #facc15;
}

.admin-mix-chart__center[b-3cnt7q4oyh] {
    position: absolute;
    display: grid;
    gap: 2px;
    text-align: center;
    color: var(--sg-heading);
}

.admin-mix-chart__center strong[b-3cnt7q4oyh] {
    font-size: 26px;
    line-height: 1;
}

.admin-mix-chart__center span[b-3cnt7q4oyh] {
    color: var(--sg-muted-soft);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.admin-mix-list[b-3cnt7q4oyh] {
    display: grid;
    gap: 12px;
    width: 100%;
}

.admin-mix-item[b-3cnt7q4oyh] {
    display: grid;
    gap: 8px;
    text-decoration: none;
}

.admin-mix-item__top[b-3cnt7q4oyh] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    color: var(--sg-text);
    font-size: 14px;
}

.admin-mix-item__top strong[b-3cnt7q4oyh] {
    color: var(--sg-heading);
}

.admin-mix-item__label[b-3cnt7q4oyh] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.admin-mix-item__dot[b-3cnt7q4oyh] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    display: inline-block;
    background: #f59e0b;
}

.admin-mix-item__dot.admin-status-pill--green[b-3cnt7q4oyh] {
    background: #22c55e;
}

.admin-mix-item__dot.admin-status-pill--blue[b-3cnt7q4oyh] {
    background: #3b82f6;
}

.admin-mix-item__dot.admin-status-pill--amber[b-3cnt7q4oyh] {
    background: #f59e0b;
}

.admin-mix-item__dot.admin-status-pill--danger[b-3cnt7q4oyh] {
    background: #ef4444;
}

.admin-mix-item__dot.admin-status-pill--gold[b-3cnt7q4oyh] {
    background: #facc15;
}

.admin-mix-bar[b-3cnt7q4oyh] {
    height: 9px;
    border-radius: 999px;
    overflow: hidden;
    background: rgba(148,163,184,0.2);
}

.admin-mix-bar span[b-3cnt7q4oyh] {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #f59e0b, #fbbf24);
}

.admin-mix-bar .admin-status-pill--green[b-3cnt7q4oyh] {
    background: linear-gradient(90deg, #10b981, #34d399);
}

.admin-mix-bar .admin-status-pill--blue[b-3cnt7q4oyh] {
    background: linear-gradient(90deg, #3b82f6, #60a5fa);
}

.admin-mix-bar .admin-status-pill--amber[b-3cnt7q4oyh] {
    background: linear-gradient(90deg, #f59e0b, #fbbf24);
}

.admin-mix-bar .admin-status-pill--danger[b-3cnt7q4oyh] {
    background: linear-gradient(90deg, #ef4444, #fb7185);
}

.admin-revenue-panel[b-3cnt7q4oyh] {
    padding: 18px 20px 20px;
    flex: 1;
}

.admin-revenue-panel__amount[b-3cnt7q4oyh] {
    font-size: clamp(28px, 2.5vw, 40px);
    line-height: 1;
    font-weight: 700;
    color: var(--sg-heading);
}

.admin-revenue-panel__label[b-3cnt7q4oyh] {
    margin: 8px 0 14px;
    color: var(--sg-subtext);
    font-size: 14px;
}

.admin-revenue-panel__stats[b-3cnt7q4oyh] {
    margin: 0 0 16px;
    display: grid;
    gap: 10px;
}

.admin-revenue-panel__stats div[b-3cnt7q4oyh] {
    display: flex;
    justify-content: space-between;
    gap: 16px;
}

.admin-revenue-panel__stats dt[b-3cnt7q4oyh] {
    color: var(--sg-muted-soft);
    font-size: 14px;
}

.admin-revenue-panel__stats dd[b-3cnt7q4oyh] {
    margin: 0;
    color: var(--sg-heading);
    font-size: 14px;
}

.admin-panel--empty[b-3cnt7q4oyh] {
    padding: 32px;
    text-align: center;
    color: var(--sg-muted-soft);
}

.admin-panel__header[b-3cnt7q4oyh] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 22px 14px;
    border-bottom: 1px solid var(--sg-border);
}

.admin-panel__header h2[b-3cnt7q4oyh] {
    margin: 0;
    font-size: 20px;
    font-weight: 700;
    color: var(--sg-heading);
}

.admin-table-wrap[b-3cnt7q4oyh] {
    overflow-x: auto;
}

.admin-dashboard__main-column .admin-panel:last-child .admin-table-wrap[b-3cnt7q4oyh] {
    flex: 1;
}

.admin-table[b-3cnt7q4oyh] {
    width: 100%;
    border-collapse: collapse;
}

.admin-table th[b-3cnt7q4oyh],
.admin-table td[b-3cnt7q4oyh] {
    padding: 16px 22px;
    border-bottom: 1px solid var(--sg-border);
    text-align: left;
}

.admin-table th[b-3cnt7q4oyh] {
    color: rgba(226,232,240,0.68);
    font-size: 13px;
    font-weight: 500;
}

.admin-table td[b-3cnt7q4oyh] {
    color: var(--sg-text);
    font-size: 16px;
}

.admin-table tbody tr:last-child td[b-3cnt7q4oyh] {
    border-bottom: none;
}

.admin-table__name[b-3cnt7q4oyh] {
    font-weight: 600;
    color: var(--sg-heading);
}

.admin-table__subtext[b-3cnt7q4oyh] {
    margin-top: 4px;
    color: var(--sg-muted-soft);
    font-size: 13px;
}

.admin-table__action[b-3cnt7q4oyh] {
    text-align: right;
}

.admin-status-pill[b-3cnt7q4oyh] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 88px;
    padding: 6px 12px;
    border-radius: 10px;
    font-size: 14px;
    line-height: 1;
    border: 1px solid transparent;
}

.admin-status-pill--green[b-3cnt7q4oyh] {
    color: #D1FAE5;
    background: rgba(34,197,94,0.28);
    border-color: rgba(74,222,128,0.38);
}

.admin-status-pill--amber[b-3cnt7q4oyh] {
    color: var(--sg-warning);
    background: rgba(245,158,11,0.22);
    border-color: rgba(251,191,36,0.34);
}

.admin-status-pill--gold[b-3cnt7q4oyh] {
    color: var(--sg-warning);
    background: rgba(217,119,6,0.24);
    border-color: rgba(245,158,11,0.32);
}

.admin-status-pill--blue[b-3cnt7q4oyh] {
    color: var(--sg-accent);
    background: rgba(59,130,246,0.22);
    border-color: rgba(96,165,250,0.34);
}

.admin-status-pill--danger[b-3cnt7q4oyh] {
    color: var(--sg-danger);
    background: rgba(239,68,68,0.2);
    border-color: rgba(248,113,113,0.32);
}

.admin-link-button[b-3cnt7q4oyh],
.admin-review-button[b-3cnt7q4oyh] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 98px;
    padding: 9px 16px;
    border-radius: 10px;
    border: 1px solid rgba(96,165,250,0.45);
    color: #fff;
    background: linear-gradient(180deg, color-mix(in srgb, var(--sg-accent) 78%, transparent), color-mix(in srgb, var(--sg-accent) 72%, transparent));
    text-decoration: none;
    font-size: 14px;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.admin-link-button:hover[b-3cnt7q4oyh],
.admin-review-button:hover[b-3cnt7q4oyh] {
    transform: translateY(-1px);
    box-shadow: 0 10px 20px rgba(37,99,235,0.24);
    color: var(--sg-heading);
}

.admin-health-list[b-3cnt7q4oyh] {
    display: grid;
    gap: 16px;
    padding: 20px 22px 24px;
    flex: 1;
    align-content: center;
}

.admin-health-row[b-3cnt7q4oyh] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    color: var(--sg-text);
    font-size: 15px;
}

.admin-health-row__ok[b-3cnt7q4oyh] {
    color: #5EEAD4;
}

.admin-health-row__warn[b-3cnt7q4oyh] {
    color: var(--sg-warn-text);
}

.admin-activity-list[b-3cnt7q4oyh] {
    margin: 0;
    padding: 18px 22px 22px;
    list-style: none;
    display: grid;
    gap: 14px;
    color: var(--sg-subtext);
    font-size: 15px;
    flex: 1;
    align-content: start;
}

.admin-panel__copy[b-3cnt7q4oyh] {
    margin: 0;
    padding: 18px 22px 16px;
    color: var(--sg-subtext);
    font-size: 15px;
    line-height: 1.6;
}

#pending-requests .admin-panel__copy[b-3cnt7q4oyh] {
    flex: 1;
}

.admin-review-button[b-3cnt7q4oyh] {
    margin: 0 22px 22px;
}

@media (max-width: 1200px) {
    .admin-dashboard[b-3cnt7q4oyh] {
        height: auto;
    }

    .admin-stats-grid[b-3cnt7q4oyh] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-dashboard__content-grid[b-3cnt7q4oyh] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: auto;
        grid-template-areas:
            "map map"
            "subscription revenue"
            "pending health";
    }

    .admin-panel--map-span[b-3cnt7q4oyh] {
        grid-column: 1 / -1;
    }
}

@media (max-width: 840px) {
    .admin-dashboard[b-3cnt7q4oyh] {
        padding: 18px;
    }

    .admin-dashboard__topbar[b-3cnt7q4oyh] {
        flex-direction: column;
        align-items: stretch;
    }

    .admin-dashboard__topbar-actions[b-3cnt7q4oyh] {
        justify-content: flex-end;
    }

    .admin-stats-grid[b-3cnt7q4oyh],
    .admin-dashboard__content-grid[b-3cnt7q4oyh] {
        grid-template-columns: 1fr;
        grid-template-areas:
            "map"
            "subscription"
            "revenue"
            "pending"
            "health";
    }

    .admin-panel__header[b-3cnt7q4oyh],
    .admin-revenue-panel__stats div[b-3cnt7q4oyh] {
        flex-direction: column;
        align-items: stretch;
    }

    .admin-table th[b-3cnt7q4oyh],
    .admin-table td[b-3cnt7q4oyh] {
        padding: 14px 16px;
    }
}
/* /Components/Pages/AdminFinancials.razor.rz.scp.css */
.admin-financials[b-5oipt7q4jh] {
    min-height: calc(100vh - 60px);
    padding: 10px;
    display: flex;
    flex-direction: column;
    gap: 18px;
    border-radius: 0;
    background: transparent;
    border: none;
    box-shadow: none;
}

.admin-financials--loading[b-5oipt7q4jh] {
    justify-content: center;
}

.admin-financials__topbar[b-5oipt7q4jh] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
}

.admin-financials__topbar-actions[b-5oipt7q4jh] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.admin-financials__filter[b-5oipt7q4jh] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px 10px;
    border-radius: 14px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.admin-financials__filter-label[b-5oipt7q4jh] {
    color: var(--sg-subtext);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.admin-financials__filter-select[b-5oipt7q4jh] {
    min-width: 160px;
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    background: var(--sg-card);
    color: var(--sg-heading);
    padding: 8px 12px;
}

.admin-financials__eyebrow[b-5oipt7q4jh] {
    color: var(--sg-muted-soft);
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 11px;
    margin-bottom: 8px;
}

.admin-financials__title[b-5oipt7q4jh] {
    margin: 0 0 8px;
    font-size: clamp(28px, 3vw, 38px);
    font-weight: 700;
    color: var(--sg-heading);
}

.admin-financials__subtitle[b-5oipt7q4jh] {
    margin: 0;
    color: var(--sg-subtext);
    font-size: 15px;
    max-width: 760px;
}

.admin-financials__action[b-5oipt7q4jh],
.admin-financials-link[b-5oipt7q4jh] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0 14px;
    border-radius: 12px;
    border: 1px solid rgba(96,165,250,0.45);
    color: #fff;
    background: linear-gradient(180deg, color-mix(in srgb, var(--sg-accent) 78%, transparent), color-mix(in srgb, var(--sg-accent) 72%, transparent));
    text-decoration: none;
}

.admin-financials__stats-grid[b-5oipt7q4jh] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.admin-financials-stat-card[b-5oipt7q4jh],
.admin-financials-panel[b-5oipt7q4jh] {
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background:
        linear-gradient(var(--sg-card), var(--sg-card)),
        url('/images/bg-city.jpg') center/cover no-repeat;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 20px 48px rgba(0,0,0,0.28);
    backdrop-filter: blur(8px);
}

.admin-financials-stat-card[b-5oipt7q4jh] {
    padding: 20px 22px;
}

.admin-financials-stat-card__value[b-5oipt7q4jh] {
    font-size: clamp(28px, 2.8vw, 42px);
    line-height: 1;
    font-weight: 700;
    color: var(--sg-heading);
    margin-bottom: 8px;
}

.admin-financials-stat-card__label[b-5oipt7q4jh] {
    color: var(--sg-subtext);
    font-size: 15px;
}

.admin-financials__content-grid[b-5oipt7q4jh] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.admin-financials-timeline[b-5oipt7q4jh] {
    padding: 18px 22px 22px;
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 14px;
}

.admin-financials-timeline__item[b-5oipt7q4jh] {
    padding: 16px;
    border-radius: 16px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    display: grid;
    gap: 6px;
}

.admin-financials-timeline__item--current[b-5oipt7q4jh] {
    border-color: color-mix(in srgb, var(--sg-accent) 42%, transparent);
    box-shadow: 0 0 0 1px rgba(96,165,250,0.2);
}

.admin-financials-timeline__item span[b-5oipt7q4jh],
.admin-financials-timeline__item em[b-5oipt7q4jh],
.admin-financials-timeline__item small[b-5oipt7q4jh] {
    color: var(--sg-subtext);
    font-size: 13px;
    font-style: normal;
}

.admin-financials-timeline__item strong[b-5oipt7q4jh] {
    color: var(--sg-heading);
    font-size: 20px;
}

.admin-financials-panel--empty[b-5oipt7q4jh] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px;
    color: var(--sg-muted-soft);
}

.admin-financials-panel__header[b-5oipt7q4jh] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 22px 14px;
    border-bottom: 1px solid var(--sg-border);
}

.admin-financials-panel__header h2[b-5oipt7q4jh] {
    margin: 0;
    font-size: 20px;
    font-weight: 700;
    color: var(--sg-heading);
}

.admin-financials-table-wrap[b-5oipt7q4jh] {
    overflow-x: auto;
}

.admin-financials-table[b-5oipt7q4jh] {
    width: 100%;
    border-collapse: collapse;
}

.admin-financials-table th[b-5oipt7q4jh],
.admin-financials-table td[b-5oipt7q4jh] {
    padding: 16px 22px;
    border-bottom: 1px solid var(--sg-border);
    text-align: left;
}

.admin-financials-table th[b-5oipt7q4jh] {
    color: rgba(226,232,240,0.68);
    font-size: 13px;
    font-weight: 500;
}

.admin-financials-table td[b-5oipt7q4jh] {
    color: var(--sg-text);
    font-size: 15px;
}

.admin-financials-history[b-5oipt7q4jh] {
    padding: 18px 22px 22px;
    display: grid;
    gap: 14px;
}

.admin-financials-history__top[b-5oipt7q4jh] {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    color: var(--sg-text);
    margin-bottom: 8px;
}

.admin-financials-history__top strong[b-5oipt7q4jh] {
    color: var(--sg-heading);
}

.admin-financials-history__bar[b-5oipt7q4jh] {
    height: 9px;
    border-radius: 999px;
    overflow: hidden;
    background: rgba(148,163,184,0.2);
}

.admin-financials-history__bar span[b-5oipt7q4jh] {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #22d3ee, #38bdf8);
}

@media (max-width: 1200px) {
    .admin-financials__stats-grid[b-5oipt7q4jh],
    .admin-financials__content-grid[b-5oipt7q4jh] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-financials-timeline[b-5oipt7q4jh] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 840px) {
    .admin-financials[b-5oipt7q4jh] {
        padding: 18px;
    }

    .admin-financials__topbar[b-5oipt7q4jh] {
        flex-direction: column;
        align-items: stretch;
    }

    .admin-financials__stats-grid[b-5oipt7q4jh],
    .admin-financials__content-grid[b-5oipt7q4jh] {
        grid-template-columns: 1fr;
    }

    .admin-financials-timeline[b-5oipt7q4jh] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/AdminPendingRequests.razor.rz.scp.css */
/* ── Pending Applications page ───────────────────────────────────────── */
.pending-requests-empty[b-gopni92oiu] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 64px 24px;
    color: var(--sg-muted);
    text-align: center;
}

.pending-requests-empty__icon[b-gopni92oiu] {
    font-size: 2.5rem;
    opacity: 0.4;
    margin-bottom: 8px;
}

/* Table cell content */
.pending-row__name[b-gopni92oiu] {
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--sg-text);
}

.pending-row__desc[b-gopni92oiu] {
    font-size: 0.75rem;
    color: var(--sg-muted);
    margin-top: 2px;
    max-width: 220px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.pending-row__contact[b-gopni92oiu] {
    font-size: 0.875rem;
    color: var(--sg-text);
}

.pending-row__email[b-gopni92oiu] {
    font-size: 0.75rem;
    color: var(--sg-muted);
    margin-top: 1px;
}

.pending-row__location[b-gopni92oiu] {
    font-size: 0.8rem;
    color: var(--sg-muted);
}

.pending-row__date[b-gopni92oiu] {
    font-size: 0.8rem;
    color: var(--sg-muted);
    white-space: nowrap;
}

.pending-row__actions[b-gopni92oiu] {
    text-align: right;
    white-space: nowrap;
}

/* Org type chip */
.pending-org-type-chip[b-gopni92oiu] {
    display: inline-block;
    padding: 2px 9px;
    border-radius: 20px;
    font-size: 0.72rem;
    font-weight: 600;
    background: rgba(99,102,241,0.15);
    color: #a5b4fc;
    border: 1px solid rgba(99,102,241,0.25);
    white-space: nowrap;
}
/* /Components/Pages/Cameras.razor.rz.scp.css */
/* Camera live grid — obeys the no-page-scroll layout chain: wrapper fills the main area,
   only the grid card's inner area scrolls. */
.cam-page[b-0z4fkdefzr] {
    flex: 1 1 auto;
    height: 100%;
    max-height: 100%;
    min-height: 0;
    overflow: hidden;
    padding: var(--sg-card-gap, 18px);
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.cam-page__topbar[b-0z4fkdefzr] {
    flex: 0 0 auto;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}

.cam-page__title h1[b-0z4fkdefzr] {
    margin: 0;
    font-size: 1.35rem;
    color: var(--sg-text, #e9eef7);
}

.cam-page__hint[b-0z4fkdefzr] {
    display: block;
    margin-top: 2px;
    font-size: 0.78rem;
    color: var(--sg-muted, #8da1bf);
    max-width: 640px;
}

.cam-page__actions[b-0z4fkdefzr] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.cam-page__count[b-0z4fkdefzr] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--sg-accent-light2, #9dc8ff);
}

.cam-grid-card[b-0z4fkdefzr] {
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
    border: 1px solid var(--sg-card-border, #1d3a5f);
    border-radius: 14px;
    background: var(--sg-card, #0a1929);
    padding: 14px;
    display: flex;
}

.cam-grid[b-0z4fkdefzr] {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    /* min-content rows: each row is sized to the tile's own (padding-ratio) height instead of being
       stretched/distributed to fill the card — without this, the rows were squashed to fit the card and
       the 16:9 tiles overflowed their tracks and OVERLAPPED the row below in the fixed mosaic layouts. */
    grid-auto-rows: min-content;
    gap: 14px;
    align-content: start;
}

/* Mosaic layouts — fixed column counts override the auto-fit default. */
.cam-grid--1[b-0z4fkdefzr] { grid-template-columns: 1fr; }
.cam-grid--2[b-0z4fkdefzr] { grid-template-columns: repeat(2, 1fr); }
.cam-grid--3[b-0z4fkdefzr] { grid-template-columns: repeat(3, 1fr); }
.cam-grid--4[b-0z4fkdefzr] { grid-template-columns: repeat(4, 1fr); }
@media (max-width: 900px) {
    .cam-grid--3[b-0z4fkdefzr], .cam-grid--4[b-0z4fkdefzr] { grid-template-columns: repeat(2, 1fr); }
}

/* Mosaic layout switcher (segmented control in the topbar). */
.cam-layout-switch[b-0z4fkdefzr] {
    display: inline-flex;
    border: 1px solid var(--sg-card-border, #1d3a5f);
    border-radius: 8px;
    overflow: hidden;
}
.cam-layout-btn[b-0z4fkdefzr] {
    border: none;
    background: transparent;
    color: var(--sg-muted, #8da1bf);
    padding: 5px 11px;
    font-size: 0.82rem;
    font-weight: 600;
    line-height: 1;
    cursor: pointer;
    border-right: 1px solid var(--sg-card-border, #1d3a5f);
}
.cam-layout-btn:last-child[b-0z4fkdefzr] { border-right: none; }
.cam-layout-btn:hover[b-0z4fkdefzr] { background: var(--sg-card); color: #cfe0f5; }
.cam-layout-btn--on[b-0z4fkdefzr] { background: var(--sg-accent, #2563eb); color: #fff; }

.cam-tile[b-0z4fkdefzr] {
    position: relative;
    min-width: 0;
    border-radius: 10px;
    overflow: hidden;
    background: #05101f;
    border: 1px solid #16314f;
    cursor: pointer;
}

/* 16:9 box via a padding-ratio spacer. This is a REAL in-flow height the grid row honours, unlike
   `aspect-ratio`, which a CSS-grid auto row does not reliably size to (the cause of the overlap). */
.cam-tile[b-0z4fkdefzr]::before {
    content: "";
    display: block;
    padding-top: 56.25%;
}

/* Video is taken OUT of flow (absolute, fills the tile) so the tile's height is governed solely by its
   16:9 aspect-ratio. Leaving it in-flow let a tall camera stream push the tile past its grid row → tiles
   overlapped the row below in the fixed 1-/2-across mosaic layouts. */
.cam-tile__video[b-0z4fkdefzr] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    background: #05101f;
    z-index: 1;
}

.cam-tile__placeholder[b-0z4fkdefzr] {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: #4a6080;
    font-size: 0.8rem;
    z-index: 0;
}

.cam-tile__placeholder i[b-0z4fkdefzr] { font-size: 1.8rem; }

.cam-tile__bar[b-0z4fkdefzr] {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 10px;
    background: linear-gradient(to top, rgba(2, 9, 20, 0.92), rgba(2, 9, 20, 0));
}

.cam-tile__name[b-0z4fkdefzr] {
    font-weight: 600;
    font-size: 0.85rem;
    color: #eef4ff;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cam-tile__type[b-0z4fkdefzr] {
    margin-left: auto;
    font-size: 0.72rem;
    color: #8da1bf;
}

.cam-tile--offline[b-0z4fkdefzr] { border-color: #5a2330; }

.cam-dot[b-0z4fkdefzr] {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    flex: 0 0 auto;
}

.cam-dot--on[b-0z4fkdefzr] { background: #2ec27e; box-shadow: 0 0 6px #2ec27e; }
.cam-dot--off[b-0z4fkdefzr] { background: #6b7280; }

.cam-empty[b-0z4fkdefzr] {
    margin: auto;
    text-align: center;
    color: var(--sg-muted, #8da1bf);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}

.cam-empty i[b-0z4fkdefzr] { font-size: 2.2rem; color: #4a6080; }
.cam-empty p[b-0z4fkdefzr] { margin: 0; font-size: 1rem; color: var(--sg-text, #e9eef7); }
.cam-empty span[b-0z4fkdefzr] { font-size: 0.82rem; }

.cam-expand[b-0z4fkdefzr] { display: flex; flex-direction: column; gap: 10px; }

.cam-expand__video[b-0z4fkdefzr] {
    width: 100%;
    aspect-ratio: 16 / 9;
    border-radius: 10px;
    background: #05101f;
    object-fit: contain;
}

.cam-expand__meta[b-0z4fkdefzr] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.82rem;
    color: var(--sg-muted, #8da1bf);
}

/* ── Camera analytics triggers (agent → control-room heads-up) ── */
.cam-triggers[b-0z4fkdefzr] {
    background: rgba(239,68,68,0.06);
    border: 1px solid rgba(239,68,68,0.35);
    border-radius: 14px;
    padding: 12px 14px;
    margin-bottom: 14px;
}
.cam-triggers__head[b-0z4fkdefzr] { display: flex; align-items: center; gap: 8px; margin-bottom: 10px; }
.cam-triggers__title[b-0z4fkdefzr] { font-weight: 700; color: var(--sg-danger); font-size: 14px; }
.cam-triggers__count[b-0z4fkdefzr] {
    background: #ef4444; color: #fff; font-size: 12px; font-weight: 700;
    border-radius: 999px; padding: 1px 8px;
}
.cam-triggers__list[b-0z4fkdefzr] { display: flex; flex-direction: column; gap: 8px; }
.cam-trigger[b-0z4fkdefzr] {
    display: flex; align-items: center; gap: 12px;
    background: var(--sg-card); border: 1px solid var(--sg-border);
    border-radius: 10px; padding: 8px 10px;
}
.cam-trigger__thumb[b-0z4fkdefzr] {
    width: 84px; height: 56px; object-fit: cover; border-radius: 7px; flex: 0 0 auto;
    background: #0a1b34; cursor: zoom-in;
}
.cam-trigger__thumb--none[b-0z4fkdefzr] { display: flex; align-items: center; justify-content: center; color: #475569; cursor: default; }
.cam-trigger__body[b-0z4fkdefzr] { flex: 1 1 auto; min-width: 0; }
.cam-trigger__label[b-0z4fkdefzr] { font-weight: 700; color: var(--sg-heading); font-size: 14px; }
.cam-trigger__meta[b-0z4fkdefzr] { font-size: 12px; color: var(--sg-muted); margin-top: 2px; }
.cam-trigger__actions[b-0z4fkdefzr] { display: flex; gap: 8px; flex: 0 0 auto; }

/* Camera ALARM card — stronger red than a plain detection (fired in the alarm window). */
.cam-trigger--alarm[b-0z4fkdefzr] {
    border-color: #ef4444 !important;
    background: rgba(239,68,68,0.16) !important;
    animation: sgCamAlarmPulse 1.4s ease-in-out infinite;
}
.cam-trigger--alarm .cam-trigger__label[b-0z4fkdefzr] { color: #fff; }

/* Snapshot lightbox — full-size trigger frame on click. */
.cam-trigger__thumb[b-0z4fkdefzr] { cursor: zoom-in; }
.cam-lightbox[b-0z4fkdefzr] {
    position: fixed; inset: 0; z-index: 3000;
    background: rgba(0,0,0,0.9);
    display: flex; align-items: center; justify-content: center;
    cursor: zoom-out;
}
.cam-lightbox__img[b-0z4fkdefzr] { max-width: 95vw; max-height: 90vh; border-radius: 8px; box-shadow: 0 20px 60px rgba(0,0,0,0.6); }
.cam-lightbox__hint[b-0z4fkdefzr] { position: fixed; bottom: 18px; left: 0; right: 0; text-align: center; color: var(--sg-subtext); font-size: 13px; }
/* /Components/Pages/CamerasSetup.razor.rz.scp.css */
.cam-status[b-d8edhn7hf7] {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 600;
    margin-right: 6px;
}

.cam-status--on[b-d8edhn7hf7] { background: rgba(46, 194, 126, 0.15); color: #2ec27e; }
.cam-status--off[b-d8edhn7hf7] { background: rgba(107, 114, 128, 0.18); color: #9aa6b8; }
.cam-status--disabled[b-d8edhn7hf7] { background: rgba(180, 83, 9, 0.18); color: #f59e0b; }

.cam-form-note[b-d8edhn7hf7] {
    margin: 14px 0 0;
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 0.78rem;
    color: var(--sg-muted, #8da1bf);
}

.cam-form-note i[b-d8edhn7hf7] { color: #2ec27e; margin-top: 1px; }

.cam-help[b-d8edhn7hf7] { font-size: 0.74rem; color: var(--sg-muted, #8da1bf); }
.cam-help code[b-d8edhn7hf7] { color: #9dc8ff; }

.cam-agent-box[b-d8edhn7hf7] {
    margin-top: 16px;
    padding: 14px;
    border: 1px solid var(--sg-card-border, #1d3a5f);
    border-radius: 10px;
    background: rgba(8, 24, 42, 0.5);
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.cam-agent-box__head[b-d8edhn7hf7] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.cam-agent-key[b-d8edhn7hf7] {
    background: #05101f;
    border: 1px solid #16314f;
    border-radius: 8px;
    padding: 10px 12px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.cam-agent-key code[b-d8edhn7hf7] {
    color: #2ec27e;
    font-size: 0.9rem;
    word-break: break-all;
}

.cam-agent-key small[b-d8edhn7hf7] { color: var(--sg-muted, #8da1bf); font-size: 0.72rem; }
.cam-agent-key--masked code[b-d8edhn7hf7] { color: #6b7280; }
/* /Components/Pages/CrimeStatsDetail.razor.rz.scp.css */
.crime-stats-detail-page[b-r4bwbfwjko] {
    min-height: 0;
    height: 100%;
    overflow: hidden;
}

.crime-stats-detail-grid[b-r4bwbfwjko] {
    flex: 1 1 auto;
    min-height: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.crime-detail-panel[b-r4bwbfwjko] {
    min-height: 0;
    display: flex;
    flex-direction: column;
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background: linear-gradient(var(--sg-card), var(--sg-card));
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 18px 40px rgba(0,0,0,0.2);
    overflow: hidden;
}

.crime-detail-panel__header[b-r4bwbfwjko] {
    padding: 16px 18px;
    border-bottom: 1px solid var(--sg-border);
}

.crime-detail-panel__header h2[b-r4bwbfwjko] {
    margin: 0;
    color: var(--sg-heading);
    font-size: 20px;
    font-weight: 700;
}

.crime-detail-panel__header p[b-r4bwbfwjko] {
    margin: 6px 0 0;
    color: var(--sg-muted-soft);
    font-size: 13px;
}

.crime-detail-panel__content[b-r4bwbfwjko] {
    flex: 1 1 auto;
    min-height: 0;
    padding: 18px;
    overflow: auto;
}

.crime-detail-panel__content--tiles[b-r4bwbfwjko] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.crime-detail-panel__content--stacked[b-r4bwbfwjko] {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.crime-detail-tile[b-r4bwbfwjko],
.crime-detail-list-card[b-r4bwbfwjko] {
    padding: 16px;
    border-radius: 16px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.crime-detail-tile strong[b-r4bwbfwjko],
.crime-detail-list-card strong[b-r4bwbfwjko] {
    display: block;
    color: var(--sg-heading);
    margin-bottom: 8px;
    font-size: 15px;
}

.crime-detail-tile span[b-r4bwbfwjko],
.crime-detail-list-card li[b-r4bwbfwjko] {
    color: var(--sg-muted-soft);
    font-size: 13px;
    line-height: 1.5;
}

.crime-detail-list-card ul[b-r4bwbfwjko] {
    margin: 0;
    padding-left: 18px;
    display: grid;
    gap: 8px;
}

@media (max-width: 1280px) {
    .crime-stats-detail-grid[b-r4bwbfwjko],
    .crime-detail-panel__content--tiles[b-r4bwbfwjko] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/DronePatrols.razor.rz.scp.css */
/* Highlight the patrol row currently shown on the map */
tr.is-selected[b-w3ax8uj9nv] {
    background: color-mix(in srgb, var(--sg-primary, #38bdf8) 16%, transparent);
    box-shadow: inset 3px 0 0 var(--sg-primary, #38bdf8);
}

tr.is-selected td:first-child strong[b-w3ax8uj9nv] {
    color: var(--sg-primary, #38bdf8);
}
/* /Components/Pages/Equipment.razor.rz.scp.css */
.equipment-management-page[b-69tjdc9lir] {
    min-height: 0;
    height: 100%;
    overflow: hidden;
}

.equipment-summary-panel[b-69tjdc9lir] {
    flex: 0 0 auto;
}

.equipment-summary-grid[b-69tjdc9lir] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    padding: 6px;
}

.equipment-summary-card[b-69tjdc9lir] {
    display: flex;
    align-items: center;
    gap: 16px;
    min-width: 0;
    padding: 18px 20px;
    border-right: 1px solid var(--sg-border);
}

.equipment-summary-card:last-child[b-69tjdc9lir] {
    border-right: none;
}

.equipment-summary-card__icon[b-69tjdc9lir] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 700;
    color: var(--sg-heading);
    flex: 0 0 auto;
}

.equipment-summary-card__icon--items[b-69tjdc9lir] {
    background: rgba(59,130,246,0.24);
}

.equipment-summary-card__icon--issued[b-69tjdc9lir] {
    background: rgba(37,99,235,0.28);
}

.equipment-summary-card__icon--available[b-69tjdc9lir] {
    background: rgba(22,163,74,0.24);
}

.equipment-summary-card__icon--attention[b-69tjdc9lir] {
    background: rgba(217,119,6,0.26);
}

.equipment-summary-card__content[b-69tjdc9lir] {
    min-width: 0;
}

.equipment-summary-card__label[b-69tjdc9lir] {
    color: var(--sg-muted-soft);
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-size: 11px;
    margin-bottom: 6px;
}

.equipment-summary-card__value[b-69tjdc9lir] {
    color: var(--sg-heading);
    font-size: 36px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 6px;
}

.equipment-summary-card__meta[b-69tjdc9lir] {
    color: var(--sg-muted-soft);
    font-size: 13px;
}

.equipment-register-panel[b-69tjdc9lir] {
    min-height: 0;
}

.equipment-register-toolbar[b-69tjdc9lir] {
    flex: 0 0 auto;
    display: grid;
    grid-template-columns: minmax(240px, 1.4fr) minmax(180px, 1fr) minmax(180px, 1fr) auto;
    gap: 16px;
    padding: 18px 22px 20px;
    border-bottom: 1px solid var(--sg-border);
}

.equipment-register-toolbar__search[b-69tjdc9lir] {
    min-width: 0;
}

.equipment-table-scroll[b-69tjdc9lir] {
    min-height: 0;
}

.equipment-table th[b-69tjdc9lir],
.equipment-table td[b-69tjdc9lir] {
    padding: 14px 18px;
    vertical-align: middle;
}

.equipment-item-cell[b-69tjdc9lir] {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.equipment-item-cell__icon[b-69tjdc9lir] {
    width: 38px;
    height: 38px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--sg-card);
    border: 1px solid var(--sg-border);
    color: var(--sg-heading);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    flex: 0 0 auto;
}

.equipment-item-cell__title[b-69tjdc9lir] {
    color: var(--sg-heading);
    font-size: 15px;
    font-weight: 600;
}

.equipment-item-cell__meta[b-69tjdc9lir] {
    color: var(--sg-muted-soft);
    font-size: 12px;
    margin-top: 2px;
}

.equipment-status-badge[b-69tjdc9lir] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 96px;
    padding: 6px 12px;
    border-radius: 999px;
    border: 1px solid transparent;
    font-size: 12px;
    font-weight: 600;
}

.equipment-status-badge--available[b-69tjdc9lir] {
    background: rgba(22,163,74,0.18);
    border-color: rgba(74,222,128,0.32);
    color: var(--sg-success);
}

.equipment-status-badge--issued[b-69tjdc9lir] {
    background: rgba(37,99,235,0.18);
    border-color: rgba(96,165,250,0.3);
    color: var(--sg-accent);
}

.equipment-status-badge--repair[b-69tjdc9lir] {
    background: rgba(217,119,6,0.18);
    border-color: rgba(251,191,36,0.28);
    color: var(--sg-warning);
}

.equipment-status-badge--lost[b-69tjdc9lir] {
    background: rgba(220,38,38,0.18);
    border-color: rgba(248,113,113,0.32);
    color: var(--sg-danger);
}

.equipment-action-group[b-69tjdc9lir] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.equipment-table-footer[b-69tjdc9lir] {
    flex: 0 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 16px 22px 18px;
    border-top: 1px solid var(--sg-border);
}

.equipment-table-footer__summary[b-69tjdc9lir] {
    color: var(--sg-muted-soft);
    font-size: 13px;
}

.equipment-table-footer__controls[b-69tjdc9lir] {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-left: auto;
}

.equipment-table-footer__page-size[b-69tjdc9lir] {
    width: 170px;
}

.equipment-pagination[b-69tjdc9lir] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.equipment-pagination__nav[b-69tjdc9lir],
.equipment-pagination__page[b-69tjdc9lir] {
    min-width: 36px;
    height: 36px;
    border-radius: 10px;
    border: 1px solid rgba(148,163,184,0.26);
    background: var(--sg-card);
    color: var(--sg-text);
    font-size: 13px;
    font-weight: 600;
}

.equipment-pagination__page--active[b-69tjdc9lir] {
    background: rgba(59,130,246,0.92);
    border-color: rgba(96,165,250,0.82);
    color: var(--sg-heading);
}

.equipment-pagination__nav:disabled[b-69tjdc9lir] {
    opacity: 0.45;
}

.equipment-pagination__ellipsis[b-69tjdc9lir] {
    color: var(--sg-muted-soft);
    min-width: 24px;
    text-align: center;
}

.equipment-modal__content[b-69tjdc9lir] {
    border-radius: 20px;
    border: 1px solid var(--sg-border);
    background: linear-gradient(var(--sg-card), var(--sg-card));
    color: var(--sg-heading);
    box-shadow: 0 22px 60px rgba(0,0,0,0.38);
}

.equipment-modal__header[b-69tjdc9lir],
.equipment-modal__footer[b-69tjdc9lir] {
    border-color: var(--sg-border);
    padding: 20px 24px;
}

.equipment-modal__header[b-69tjdc9lir] {
    align-items: flex-start;
}

.equipment-modal__header h5[b-69tjdc9lir] {
    margin: 0;
    font-size: 22px;
    font-weight: 700;
}

.equipment-modal__header p[b-69tjdc9lir] {
    margin: 6px 0 0;
    color: var(--sg-muted-soft);
}

.equipment-modal__body[b-69tjdc9lir] {
    padding: 24px;
}

.equipment-modal__footer--wrap[b-69tjdc9lir] {
    justify-content: flex-start;
    gap: 12px;
    flex-wrap: wrap;
}

.equipment-editor-grid[b-69tjdc9lir] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 18px;
}

.equipment-editor-grid__wide[b-69tjdc9lir] {
    grid-column: 1 / -1;
}

.equipment-detail-grid[b-69tjdc9lir] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.equipment-detail-item[b-69tjdc9lir] {
    display: grid;
    gap: 8px;
    padding: 14px 16px;
    border-radius: 16px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.equipment-detail-item span[b-69tjdc9lir] {
    color: var(--sg-muted-soft);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-size: 11px;
}

.equipment-detail-item strong[b-69tjdc9lir] {
    color: var(--sg-heading);
    font-size: 15px;
    font-weight: 600;
}

.equipment-detail-item--wide[b-69tjdc9lir] {
    grid-column: 1 / -1;
}

@media (max-width: 1280px) {
    .equipment-summary-grid[b-69tjdc9lir],
    .equipment-register-toolbar[b-69tjdc9lir],
    .equipment-editor-grid[b-69tjdc9lir],
    .equipment-detail-grid[b-69tjdc9lir] {
        grid-template-columns: 1fr;
    }

    .equipment-summary-card[b-69tjdc9lir] {
        border-right: none;
        border-bottom: 1px solid var(--sg-border);
    }

    .equipment-summary-card:last-child[b-69tjdc9lir] {
        border-bottom: none;
    }
}

@media (max-width: 960px) {
    .equipment-table-footer[b-69tjdc9lir],
    .equipment-table-footer__controls[b-69tjdc9lir] {
        flex-direction: column;
        align-items: stretch;
    }

    .equipment-table-footer__page-size[b-69tjdc9lir] {
        width: 100%;
    }
}
/* /Components/Pages/IncidentDetail.razor.rz.scp.css */
/* ── Incident Detail Page ───────────────────────────────────────────────── */

.inc-detail-page[b-0ns7l09mu0] {
    gap: 16px;
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
}

.inc-detail-loading[b-0ns7l09mu0],
.inc-detail-not-found[b-0ns7l09mu0] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 14px;
    flex: 1 1 auto;
    color: var(--sg-muted-soft);
    font-size: 15px;
}

.inc-detail-not-found i[b-0ns7l09mu0] {
    font-size: 40px;
    color: var(--sg-muted-soft);
}

/* Topbar */
.inc-detail-topbar[b-0ns7l09mu0] {
    align-items: center;
    flex-wrap: nowrap;
    gap: 12px;
    min-height: 0;
}

.inc-detail-topbar__left[b-0ns7l09mu0] {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.inc-detail-title[b-0ns7l09mu0] {
    font-size: 15px;
    font-weight: 700;
    color: var(--sg-text);
    margin: 0;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.inc-detail-subtitle[b-0ns7l09mu0] {
    font-size: 12px;
    color: var(--sg-muted);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 4px;
    flex-wrap: wrap;
    line-height: 1.6;
}

.inc-pill--type[b-0ns7l09mu0] {
    background: rgba(168,85,247,.2);
    color: #d8b4fe;
    border-color: rgba(168,85,247,.4);
}

.inc-detail-subtitle__sep[b-0ns7l09mu0] {
    opacity: 0.4;
}

.inc-detail-ref[b-0ns7l09mu0] {
    font-family: ui-monospace, monospace;
    font-size: 20px;
    color: var(--sg-accent);
    background: rgba(59,130,246,0.12);
    border: 1px solid rgba(59,130,246,0.25);
    border-radius: 6px;
    padding: 2px 10px;
    margin-right: 10px;
}

/* Status / severity badges */
.inc-detail-badge[b-0ns7l09mu0] {
    display: inline-flex;
    align-items: center;
    padding: 6px 14px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.inc-detail-badge--status[b-0ns7l09mu0] {
    background: rgba(59,130,246,0.15);
    color: var(--sg-accent);
    border: 1px solid rgba(59,130,246,0.3);
}

.inc-detail-badge--severity.inc-detail-badge--low[b-0ns7l09mu0] {
    background: rgba(34,197,94,0.15);
    color: var(--sg-success);
    border: 1px solid rgba(34,197,94,0.3);
}

.inc-detail-badge--severity.inc-detail-badge--medium[b-0ns7l09mu0] {
    background: rgba(249,115,22,0.15);
    color: var(--sg-warning);
    border: 1px solid rgba(249,115,22,0.3);
}

.inc-detail-badge--severity.inc-detail-badge--high[b-0ns7l09mu0] {
    background: rgba(239,68,68,0.15);
    color: var(--sg-danger);
    border: 1px solid rgba(239,68,68,0.3);
}

.inc-detail-badge--severity.inc-detail-badge--critical[b-0ns7l09mu0] {
    background: rgba(220,38,38,0.25);
    color: var(--sg-danger);
    border: 1px solid rgba(220,38,38,0.5);
    animation: pulse-critical-b-0ns7l09mu0 1.5s infinite;
}

.inc-detail-badge--panic[b-0ns7l09mu0] {
    background: rgba(239,68,68,0.25);
    color: var(--sg-danger);
    border: 1px solid rgba(239,68,68,0.5);
}

@keyframes pulse-critical-b-0ns7l09mu0 {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.6; }
}

/* Body layout */
.inc-detail-grid[b-0ns7l09mu0] {
    display: grid;
    grid-template-columns: 1fr 380px;
    gap: 16px;
    flex: 1 1 auto;
    min-height: 0;
    align-items: start;
}

.inc-detail-left[b-0ns7l09mu0],
.inc-detail-right[b-0ns7l09mu0] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-height: 0;
}

/* Cards */
.inc-detail-card[b-0ns7l09mu0] {
    padding: 18px 22px;
    margin-bottom: 0 !important;
}

.inc-detail-card__title[b-0ns7l09mu0] {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--sg-muted-soft);
    font-weight: 700;
    margin-bottom: 14px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

/* Details DL */
.inc-detail-dl[b-0ns7l09mu0] {
    display: grid;
    grid-template-columns: max-content 1fr;
    column-gap: 24px;
    row-gap: 10px;
    margin: 0;
    font-size: 13px;
}

.inc-detail-dl dt[b-0ns7l09mu0] {
    color: var(--sg-muted-soft);
    font-weight: 600;
}

.inc-detail-dl dd[b-0ns7l09mu0] {
    margin: 0;
    color: var(--sg-heading);
}

/* Description */
.inc-detail-description[b-0ns7l09mu0] {
    font-size: 14px;
    color: var(--sg-subtext);
    line-height: 1.7;
    margin: 0;
    white-space: pre-wrap;
}

/* Notes */
.inc-detail-notes-add[b-0ns7l09mu0] {
    display: flex;
    gap: 10px;
    align-items: flex-end;
    margin-bottom: 14px;
}

.inc-detail-notes-textarea[b-0ns7l09mu0] {
    flex: 1;
    background: var(--sg-card);
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    padding: 9px 12px;
    color: var(--sg-heading);
    font-size: 13px;
    resize: vertical;
    min-height: 56px;
    outline: none;
}

.inc-detail-notes-textarea:focus[b-0ns7l09mu0] {
    border-color: #3b82f6;
}

.inc-detail-notes-list[b-0ns7l09mu0] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.inc-detail-note[b-0ns7l09mu0] {
    background: var(--sg-card);
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    padding: 12px 16px;
}

.inc-detail-note__meta[b-0ns7l09mu0] {
    font-size: 11px;
    color: var(--sg-muted-soft);
    margin-bottom: 6px;
}

.inc-detail-note__body[b-0ns7l09mu0] {
    font-size: 13px;
    color: var(--sg-subtext);
    line-height: 1.6;
}

.inc-detail-empty[b-0ns7l09mu0] {
    font-size: 13px;
    color: var(--sg-muted-soft);
    margin: 0;
}

/* POI count badge */
.inc-detail-poi-count[b-0ns7l09mu0] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: rgba(168,85,247,0.25);
    color: var(--sg-purple-text);
    font-size: 11px;
    font-weight: 700;
    margin-left: 4px;
}

/* POI list */
.inc-detail-poi-list[b-0ns7l09mu0] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.inc-detail-poi-item[b-0ns7l09mu0] {
    display: grid;
    grid-template-columns: 56px 1fr 18px;
    gap: 12px;
    align-items: center;
    padding: 12px 14px;
    background: var(--sg-card);
    border: 1px solid var(--sg-border);
    border-radius: 12px;
    text-decoration: none;
    color: inherit;
    transition: border-color 0.15s, transform 0.12s;
}

.inc-detail-poi-item:hover[b-0ns7l09mu0] {
    border-color: rgba(168,85,247,0.45);
    transform: translateY(-1px);
    text-decoration: none;
    color: inherit;
}

.inc-detail-poi-item__photo[b-0ns7l09mu0] {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    object-fit: cover;
}

.inc-detail-poi-item__body[b-0ns7l09mu0] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

/* ── Tabs ───────────────────────────────────────────────────────── */
.inc-detail-tabs[b-0ns7l09mu0] {
    display: flex;
    gap: 4px;
    flex-wrap: wrap;
    border-bottom: 1px solid var(--sg-border);
    padding-bottom: 0;
}

.inc-detail-tab[b-0ns7l09mu0] {
    background: none;
    border: none;
    padding: 9px 16px;
    font-size: 13px;
    color: var(--sg-muted-soft);
    cursor: pointer;
    border-bottom: 2px solid transparent;
    transition: color 0.15s, border-color 0.15s;
    display: flex;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
}

.inc-detail-tab:hover[b-0ns7l09mu0] { color: var(--sg-text); }

.inc-detail-tab--active[b-0ns7l09mu0] {
    color: var(--sg-accent);
    border-bottom-color: #60a5fa;
    font-weight: 600;
}

.inc-detail-tab-badge[b-0ns7l09mu0] {
    background: #2563eb;
    color: #fff;
    border-radius: 10px;
    font-size: 11px;
    padding: 1px 6px;
    font-weight: 600;
}

.inc-detail-tab-badge--green[b-0ns7l09mu0] { background: #16a34a; }
.inc-detail-tab-badge--red[b-0ns7l09mu0]   { background: #dc2626; }

/* ── Tab content ────────────────────────────────────────────────── */
.inc-detail-tab-content[b-0ns7l09mu0] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
}

/* Overview two-column */
.inc-detail-overview[b-0ns7l09mu0] {
    display: grid;
    grid-template-columns: 1fr 340px;
    gap: 14px;
    align-items: start;
}

@media (max-width: 900px) {
    .inc-detail-overview[b-0ns7l09mu0] { grid-template-columns: 1fr; }
}

.inc-detail-overview__left[b-0ns7l09mu0],
.inc-detail-overview__right[b-0ns7l09mu0] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* Stats mini-grid */
.inc-detail-stats[b-0ns7l09mu0] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
}

.inc-detail-stat[b-0ns7l09mu0] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 10px 6px;
    background: var(--sg-card);
    border-radius: 10px;
}

.inc-detail-stat__val[b-0ns7l09mu0] {
    font-size: 22px;
    font-weight: 700;
    color: var(--sg-accent);
    line-height: 1;
}

.inc-detail-stat__lbl[b-0ns7l09mu0] {
    font-size: 11px;
    color: var(--sg-muted-soft);
    margin-top: 4px;
}

/* Edit card */
.inc-detail-edit-card[b-0ns7l09mu0] {
    border-color: #2563eb !important;
}

/* Actions bar — never wraps, stays single row */
.inc-detail-actions-bar[b-0ns7l09mu0] {
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;
    align-items: center;
    flex-shrink: 0;
}

.inc-detail-back[b-0ns7l09mu0] {
    color: var(--sg-muted-soft);
    text-decoration: none;
    font-size: 12px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    transition: color 0.15s;
    margin-bottom: 2px;
}
.inc-detail-back:hover[b-0ns7l09mu0] { color: var(--sg-accent); }

.inc-dl[b-0ns7l09mu0]    { display: grid; grid-template-columns: 72px 1fr; gap: 5px 10px; margin: 0; font-size: 12px; }
.inc-dl dt[b-0ns7l09mu0] { color: var(--sg-muted); font-weight: 500; font-size: 10px; text-transform: uppercase; letter-spacing: .04em; align-self: center; }
.inc-dl dd[b-0ns7l09mu0] { color: var(--sg-text); margin: 0; }
.inc-description[b-0ns7l09mu0] { font-size: 12px; line-height: 1.55; color: var(--sg-text); margin: 0; white-space: pre-wrap; }

/* Note internal */
.inc-detail-note--internal[b-0ns7l09mu0] {
    border-left: 3px solid #f59e0b !important;
}

.inc-detail-note__internal-badge[b-0ns7l09mu0] {
    background: #78350f;
    color: var(--sg-warning);
    font-size: 10px;
    padding: 2px 7px;
    border-radius: 6px;
    margin-left: 8px;
}

/* Gallery */
.inc-detail-gallery[b-0ns7l09mu0] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.inc-detail-gallery-item[b-0ns7l09mu0] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.inc-detail-gallery-img[b-0ns7l09mu0] {
    width: 140px;
    height: 100px;
    object-fit: cover;
    border-radius: 10px;
    border: 1px solid var(--sg-border);
    cursor: pointer;
    transition: transform 0.15s;
}

.inc-detail-gallery-img:hover[b-0ns7l09mu0] { transform: scale(1.04); }

.inc-detail-gallery-file[b-0ns7l09mu0] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 140px;
    height: 100px;
    border-radius: 10px;
    background: var(--sg-card);
    border: 1px solid var(--sg-border);
    text-decoration: none;
    color: var(--sg-muted);
    gap: 6px;
    font-size: 12px;
    padding: 8px;
    text-align: center;
}

.inc-detail-gallery-file__icon[b-0ns7l09mu0] { font-size: 28px; color: var(--sg-accent); }
.inc-detail-gallery-meta[b-0ns7l09mu0] { font-size: 11px; color: var(--sg-muted-soft); }

/* Responders */
.inc-detail-responders-list[b-0ns7l09mu0] { display: flex; flex-direction: column; gap: 8px; }

.inc-detail-responder[b-0ns7l09mu0] {
    display: flex !important;
    align-items: center;
    gap: 14px;
}

.inc-detail-responder__icon[b-0ns7l09mu0] {
    font-size: 24px;
    color: var(--sg-accent);
}

/* AI pill in subtitle */
.inc-pill--ai[b-0ns7l09mu0] {
    background: rgba(99,102,241,0.2);
    color: #a5b4fc;
    border-color: rgba(99,102,241,0.4);
    font-size: 10px;
}

/* Escalation badge in topbar */
.inc-detail-badge--escalated[b-0ns7l09mu0] {
    background: rgba(245,158,11,0.2);
    color: var(--sg-warn-text);
    border: 1px solid rgba(245,158,11,0.4);
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
    padding: 4px 10px;
}

/* Empty state */
.inc-detail-empty[b-0ns7l09mu0] {
    text-align: center;
    color: var(--sg-muted-soft);
    font-size: 14px;
    padding: 32px;
}


.inc-detail-poi-item__title-row[b-0ns7l09mu0] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.inc-detail-poi-item__title-row strong[b-0ns7l09mu0] {
    font-size: 15px;
    color: var(--sg-heading);
}

.inc-detail-poi-item__sub[b-0ns7l09mu0] {
    font-size: 12px;
    color: var(--sg-muted-soft);
}

.inc-detail-poi-item__arrow[b-0ns7l09mu0] {
    color: var(--sg-muted-soft);
    font-size: 16px;
    justify-self: end;
}

/* Location */
.inc-detail-coords[b-0ns7l09mu0] {
    font-family: ui-monospace, monospace;
    font-size: 13px;
    color: var(--sg-online-text);
    margin-bottom: 6px;
}

.inc-detail-address[b-0ns7l09mu0] {
    font-size: 13px;
    color: var(--sg-subtext);
}

/* Responsive */
@media (max-width: 1100px) {
    .inc-detail-grid[b-0ns7l09mu0] {
        grid-template-columns: 1fr;
    }
}

/* ════════════════════════════════════════════════════════════════════════ */
/* AT-A-GLANCE INCIDENT DASHBOARD                                            */
/* ════════════════════════════════════════════════════════════════════════ */

.inc-dash[b-0ns7l09mu0] { display: flex; flex-direction: column; gap: 0; flex: 1; min-height: 0; }

.inc-type-strip[b-0ns7l09mu0] {
    display: flex; align-items: center; gap: 16px;
    padding: 14px 18px; border-radius: 14px;
    border: 1px solid var(--sg-border);
    background: linear-gradient(135deg, rgba(59,130,246,.08), rgba(15,23,42,0));
    flex-shrink: 0;
}
.inc-type-strip--red[b-0ns7l09mu0]    { background: linear-gradient(135deg, rgba(239,68,68,.18),  rgba(15,23,42,0)); border-color: rgba(239,68,68,.35); }
.inc-type-strip--orange[b-0ns7l09mu0] { background: linear-gradient(135deg, rgba(234,88,12,.18),  rgba(15,23,42,0)); border-color: rgba(234,88,12,.35); }
.inc-type-strip--yellow[b-0ns7l09mu0] { background: linear-gradient(135deg, rgba(202,138,4,.18),  rgba(15,23,42,0)); border-color: rgba(202,138,4,.35); }
.inc-type-strip--purple[b-0ns7l09mu0] { background: linear-gradient(135deg, rgba(167,139,250,.18),rgba(15,23,42,0)); border-color: rgba(167,139,250,.35); }
.inc-type-strip--blue[b-0ns7l09mu0]   { background: linear-gradient(135deg, rgba(59,130,246,.18), rgba(15,23,42,0)); border-color: rgba(59,130,246,.35); }
.inc-type-strip__icon[b-0ns7l09mu0] { font-size: 32px; opacity: .85; }
.inc-type-strip__body[b-0ns7l09mu0] { flex: 1; }
.inc-type-strip__type[b-0ns7l09mu0] { font-size: 18px; font-weight: 700; color: var(--sg-text); }
.inc-type-strip__cat[b-0ns7l09mu0]  { font-size: 12px; color: var(--sg-muted); margin-top: 2px; }
.inc-type-strip__pills[b-0ns7l09mu0] { display: flex; gap: 8px; flex-wrap: wrap; }

.inc-pill[b-0ns7l09mu0] {
    display: inline-flex; align-items: center; gap: 5px;
    padding: 4px 10px; border-radius: 999px;
    font-size: 11px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase;
    border: 1px solid transparent;
}
.inc-pill--severity-low[b-0ns7l09mu0]      { background: rgba(34,197,94,.18);  color: var(--sg-success); border-color: rgba(34,197,94,.4); }
.inc-pill--severity-medium[b-0ns7l09mu0]   { background: rgba(202,138,4,.18);  color: #fde047; border-color: rgba(202,138,4,.4); }
.inc-pill--severity-high[b-0ns7l09mu0]     { background: rgba(234,88,12,.18);  color: var(--sg-warning); border-color: rgba(234,88,12,.4); }
.inc-pill--severity-critical[b-0ns7l09mu0] { background: rgba(239,68,68,.22);  color: var(--sg-danger); border-color: rgba(239,68,68,.5); animation: inc-pulse-b-0ns7l09mu0 1.6s infinite; }
.inc-pill--status[b-0ns7l09mu0]            { background: rgba(59,130,246,.18); color: var(--sg-accent); border-color: rgba(59,130,246,.4); }
.inc-pill--panic[b-0ns7l09mu0]             { background: rgba(239,68,68,.3);   color: #fff;    border-color: rgba(239,68,68,.7); animation: inc-pulse-b-0ns7l09mu0 1.2s infinite; }
.inc-pill--escalated[b-0ns7l09mu0]         { background: rgba(245,158,11,.18); color: var(--sg-warning); border-color: rgba(245,158,11,.4); }
.inc-pill--risk-high[b-0ns7l09mu0]         { background: rgba(239,68,68,.18);  color: var(--sg-danger); border-color: rgba(239,68,68,.4); }
.inc-pill--risk-medium[b-0ns7l09mu0]       { background: rgba(202,138,4,.18);  color: #fde047; border-color: rgba(202,138,4,.4); }
.inc-pill--risk-low[b-0ns7l09mu0]          { background: rgba(34,197,94,.18);  color: var(--sg-success); border-color: rgba(34,197,94,.4); }
.inc-pill--risk-unknown[b-0ns7l09mu0]      { background: rgba(148,163,184,.18); color: var(--sg-subtext); border-color: rgba(148,163,184,.4); }
@keyframes inc-pulse-b-0ns7l09mu0 { 0%,100% { opacity: 1; } 50% { opacity: .55; } }

.inc-dash[b-0ns7l09mu0] { display: flex; flex-direction: column; gap: 0; flex: 1; min-height: 0; }

.inc-dash-grid[b-0ns7l09mu0] { display: grid; grid-template-columns: repeat(3, 1fr) 1fr; gap: 10px; flex: 1; min-height: 0; }
.inc-dash-col[b-0ns7l09mu0]  { display: flex; flex-direction: column; min-height: 0; overflow: hidden; }

/* Column 4: stacks Suspect + Photos vertically */
.inc-dash-col--stacked[b-0ns7l09mu0] { display: flex; flex-direction: column; gap: 10px; min-height: 0; }

/* Fill-height card: fills column and scrolls inside */
.inc-card--fill[b-0ns7l09mu0] { flex: 1; display: flex; flex-direction: column; overflow-y: auto; min-height: 0; }

/* Half-height card: each takes 50% of stacked column */
.inc-card--half[b-0ns7l09mu0] { flex: 1; display: flex; flex-direction: column; overflow-y: auto; min-height: 0; }

.inc-card[b-0ns7l09mu0] { padding: 12px 14px; flex-shrink: 0; }
.inc-card--full-height[b-0ns7l09mu0] { flex: 1; display: flex; flex-direction: column; min-height: 0; }
.inc-card__title[b-0ns7l09mu0] {
    display: flex; align-items: center; gap: 6px;
    font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .1em;
    color: var(--sg-muted); margin-bottom: 10px; flex-shrink: 0;
}
.inc-card__count[b-0ns7l09mu0] { margin-left: 6px; background: rgba(59,130,246,.2); color: var(--sg-accent); padding: 1px 7px; border-radius: 999px; font-size: 10px; font-weight: 700; }
.inc-card__count--green[b-0ns7l09mu0] { background: rgba(34,197,94,.22); color: var(--sg-success); }
.inc-card__count--red[b-0ns7l09mu0]   { background: rgba(239,68,68,.22); color: var(--sg-danger); }
.inc-card__action[b-0ns7l09mu0] {
    margin-left: auto; background: transparent; border: 1px solid var(--sg-border); border-radius: 6px;
    padding: 3px 8px; color: var(--sg-muted); cursor: pointer; font-size: 12px;
}
.inc-card__action:hover[b-0ns7l09mu0] { background: var(--sg-card); color: var(--sg-text); }
.inc-card__link[b-0ns7l09mu0] { color: var(--sg-accent); font-size: 12px; text-decoration: none; background: none; border: none; padding: 0; cursor: pointer; margin-top: 6px; display: inline-flex; align-items: center; gap: 4px; }
.inc-card__link:hover[b-0ns7l09mu0] { text-decoration: underline; }

.inc-address[b-0ns7l09mu0]  { font-size: 12px; color: var(--sg-text); margin-bottom: 6px; line-height: 1.4; flex-shrink: 0; }
.inc-map[b-0ns7l09mu0]      { flex: 1; width: 100%; min-height: 120px; border-radius: 8px; border: 1px solid var(--sg-border); overflow: hidden; margin-bottom: 6px; }
.inc-empty-mini[b-0ns7l09mu0] { font-size: 12px; color: var(--sg-muted); padding: 6px 0; }

/* AI inline (in Details card) */
.inc-ai-inline[b-0ns7l09mu0] {
    display: flex; gap: 8px; align-items: flex-start;
    margin-top: 12px; padding: 8px 10px;
    background: rgba(99,102,241,.1); border: 1px solid rgba(99,102,241,.25);
    border-radius: 8px; font-size: 11px; color: #c7d2fe;
}
.inc-ai-inline i[b-0ns7l09mu0] { font-size: 14px; color: #818cf8; flex-shrink: 0; margin-top: 1px; }
.inc-ai-inline__text[b-0ns7l09mu0] { color: rgba(199,210,254,.75); margin-top: 2px; }

/* WhatsApp media strip in Photos card */
.inc-wa-strip[b-0ns7l09mu0] { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 8px; }
.inc-wa-img[b-0ns7l09mu0]   { height: 70px; width: auto; max-width: 120px; object-fit: cover; border-radius: 6px; border: 1px solid var(--sg-border); }
.inc-wa-audio[b-0ns7l09mu0] { display: flex; align-items: center; gap: 6px; margin-top: 6px; }
.inc-wa-audio i[b-0ns7l09mu0] { color: var(--sg-muted); font-size: 13px; }

/* Responsive */
@media (max-width: 1200px) { .inc-dash-grid[b-0ns7l09mu0] { grid-template-columns: 1fr 1fr; } }
@media (max-width: 700px)  { .inc-dash-grid[b-0ns7l09mu0] { grid-template-columns: 1fr; } }

.inc-suspect-row[b-0ns7l09mu0] { display: flex; align-items: center; gap: 12px; padding: 10px; margin: -4px -4px 8px; border-radius: 10px; text-decoration: none; color: inherit; transition: background .15s; }
.inc-suspect-row:hover[b-0ns7l09mu0] { background: var(--sg-card); }
.inc-suspect-row__face[b-0ns7l09mu0] { width: 56px; height: 56px; border-radius: 50%; object-fit: cover; flex-shrink: 0; border: 2px solid rgba(248,113,113,.4); background: var(--sg-card); }
.inc-suspect-row__body[b-0ns7l09mu0] { flex: 1; min-width: 0; }
.inc-suspect-row__name[b-0ns7l09mu0] { font-weight: 600; font-size: 14px; color: var(--sg-text); }
.inc-suspect-row__meta[b-0ns7l09mu0] { font-size: 11px; color: var(--sg-muted); margin: 2px 0 4px; }
.inc-suspect-more[b-0ns7l09mu0] { font-size: 11px; color: var(--sg-muted); padding-left: 4px; }
.inc-suspect-desc[b-0ns7l09mu0] { padding-top: 8px; margin-top: 8px; border-top: 1px dashed var(--sg-border); }
.inc-suspect-desc p[b-0ns7l09mu0] { font-size: 12px; line-height: 1.4; color: var(--sg-text); margin: 0; }

.inc-gallery[b-0ns7l09mu0] { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; }
.inc-gallery-item[b-0ns7l09mu0] { aspect-ratio: 1; border-radius: 8px; overflow: hidden; background: var(--sg-card); display: block; }
.inc-gallery-item img[b-0ns7l09mu0] { width: 100%; height: 100%; object-fit: cover; }
.inc-gallery-video[b-0ns7l09mu0] { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; color: var(--sg-accent); font-size: 28px; }
.inc-uploading[b-0ns7l09mu0] { font-size: 12px; color: var(--sg-muted); margin: 6px 0; }

.inc-note-add[b-0ns7l09mu0] { padding-bottom: 10px; border-bottom: 1px solid var(--sg-border); margin-bottom: 10px; flex-shrink: 0; }
.inc-internal-label[b-0ns7l09mu0] { font-size: 11px; color: var(--sg-muted); display: flex; align-items: center; gap: 4px; }
.inc-feed[b-0ns7l09mu0] { flex: 1; overflow-y: auto; display: flex; flex-direction: column; gap: 8px; padding-right: 4px; }
.inc-feed-item[b-0ns7l09mu0] { padding: 8px 10px; border-radius: 8px; background: var(--sg-card); border-left: 3px solid #34d399; }
.inc-feed-item--internal[b-0ns7l09mu0] { border-left-color: var(--sg-warn-text); background: rgba(251,191,36,.06); }
.inc-feed-item__head[b-0ns7l09mu0] { display: flex; gap: 8px; font-size: 10px; color: var(--sg-muted); margin-bottom: 4px; }
.inc-feed-item__time[b-0ns7l09mu0] { font-weight: 500; }
.inc-feed-item__internal[b-0ns7l09mu0] { background: rgba(251,191,36,.2); color: var(--sg-warning); padding: 1px 6px; border-radius: 4px; font-weight: 600; }
.inc-feed-item__body[b-0ns7l09mu0] { font-size: 13px; line-height: 1.45; color: var(--sg-text); white-space: pre-wrap; }

.inc-dash-bottom[b-0ns7l09mu0] { flex: 0 0 30%; display: flex; flex-direction: column; min-height: 0; margin-top: 10px; }
.inc-dash-bottom-body[b-0ns7l09mu0] { flex: 1; overflow-y: auto; border-top-left-radius: 0 !important; }
.inc-dash-tabs[b-0ns7l09mu0] { display: flex; gap: 4px; margin-bottom: -1px; padding: 0 6px; }
.inc-dash-tab[b-0ns7l09mu0] { display: flex; align-items: center; gap: 6px; padding: 8px 14px; font-size: 12px; font-weight: 600; background: transparent; border: 1px solid var(--sg-border); border-bottom: none; border-top-left-radius: 8px; border-top-right-radius: 8px; color: var(--sg-muted); cursor: pointer; }
.inc-dash-tab--active[b-0ns7l09mu0] { background: var(--sg-panel); color: var(--sg-text); }
.inc-dash-bottom-body[b-0ns7l09mu0] { padding: 14px 16px; border-top-left-radius: 0; }
.inc-bottom-row[b-0ns7l09mu0] { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
.inc-doc-grid[b-0ns7l09mu0] { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px,1fr)); gap: 8px; }
.inc-doc-tile[b-0ns7l09mu0] { display: flex; gap: 10px; align-items: center; padding: 10px; border-radius: 8px; border: 1px solid var(--sg-border); text-decoration: none; color: inherit; }
.inc-doc-tile:hover[b-0ns7l09mu0] { background: var(--sg-card); }
.inc-doc-tile i[b-0ns7l09mu0] { font-size: 22px; color: var(--sg-accent); }
.inc-doc-tile__name[b-0ns7l09mu0] { font-size: 13px; font-weight: 500; color: var(--sg-text); }
.inc-doc-tile__date[b-0ns7l09mu0] { font-size: 10px; color: var(--sg-muted); }
.inc-responder-grid[b-0ns7l09mu0] { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px,1fr)); gap: 8px; }
.inc-responder-tile[b-0ns7l09mu0] { display: flex; gap: 10px; align-items: center; padding: 10px; border-radius: 8px; border: 1px solid var(--sg-border); }
.inc-responder-tile i[b-0ns7l09mu0] { font-size: 22px; color: var(--sg-ok-text); }

/* (responsive grid rules moved to inc-dash-grid section above) */
/* /Components/Pages/Incidents.razor.rz.scp.css */
/* ── Create Incident Modal ─────────────────────────────────────────────── */

.inc-create-modal[b-1ld2iphylh] {
    width: clamp(520px, 95vw, 860px);
    max-height: 92vh;
}

.inc-create-body[b-1ld2iphylh] {
    display: flex;
    flex-direction: column;
    gap: 0;
    overflow-y: auto;
    max-height: calc(92vh - 130px);
}

.inc-create-section[b-1ld2iphylh] {
    padding: 18px 0;
    border-bottom: 1px solid var(--sg-border);
}
.inc-create-section:last-child[b-1ld2iphylh] { border-bottom: none; }

.inc-create-section__title[b-1ld2iphylh] {
    font-size: 12px;
    font-weight: 700;
    color: var(--sg-muted);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-bottom: 14px;
}

.inc-required[b-1ld2iphylh] { color: var(--sg-danger); }

/* ── Incident type grid ─────────────────────────────────────────────────── */
.inc-type-grid[b-1ld2iphylh] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
    gap: 8px;
}

.inc-type-tile[b-1ld2iphylh] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 10px 6px;
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    background: var(--sg-panel);
    color: var(--sg-muted);
    font-size: 11px;
    font-weight: 500;
    cursor: pointer;
    transition: border-color 0.15s, background 0.15s, color 0.15s;
    text-align: center;
    line-height: 1.3;
}
.inc-type-tile:hover[b-1ld2iphylh] {
    border-color: rgba(59,130,246,.45);
    background: rgba(59,130,246,.07);
    color: var(--sg-text);
}
.inc-type-tile--selected[b-1ld2iphylh] {
    border-color: var(--sg-accent);
    background: rgba(59,130,246,.15);
    color: var(--sg-accent);
}
.inc-type-tile__icon[b-1ld2iphylh] { font-size: 20px; }

/* ── Document list in incident detail ───────────────────────────────────── */
.inc-detail-doc-list[b-1ld2iphylh] { display: flex; flex-direction: column; gap: 8px; }
.inc-detail-doc-row[b-1ld2iphylh] {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 16px;
    text-decoration: none;
    color: var(--sg-text);
    transition: background 0.15s;
}
.inc-detail-doc-row:hover[b-1ld2iphylh] { background: var(--sg-card); }
.inc-detail-doc-icon[b-1ld2iphylh] { font-size: 22px; color: var(--sg-accent); flex-shrink: 0; }

/* ── AI suspect parse button ────────────────────────────────────────────── */
.inc-ai-parse-btn[b-1ld2iphylh] {
    border-color: rgba(167,139,250,.45) !important;
    color: var(--sg-purple-text) !important;
}
.inc-ai-parse-btn:hover:not(:disabled)[b-1ld2iphylh] {
    background: rgba(167,139,250,.1) !important;
    border-color: var(--sg-purple-text) !important;
}

/* ── AI suspect preview card ────────────────────────────────────────────── */
.inc-ai-suspect-card[b-1ld2iphylh] {
    margin: 12px 0 0 162px;
    background: rgba(88,28,135,.12);
    border: 1px solid rgba(167,139,250,.3);
    border-radius: 12px;
    padding: 14px 16px;
}
.inc-ai-suspect-card__title[b-1ld2iphylh] {
    font-size: 12px;
    font-weight: 700;
    color: #c4b5fd;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
}
.inc-ai-suspect-grid[b-1ld2iphylh] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 8px;
}
.inc-ai-field[b-1ld2iphylh] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.inc-ai-field--wide[b-1ld2iphylh] { grid-column: 1 / -1; }
.inc-ai-field span[b-1ld2iphylh]  { font-size: 10px; color: rgba(196,181,253,.65); text-transform: uppercase; letter-spacing: .06em; }
.inc-ai-field strong[b-1ld2iphylh] { font-size: 13px; color: #ede9fe; font-weight: 500; }
/* /Components/Pages/LogBook.razor.rz.scp.css */
/* ── Log Book: Map + Analytics tabs ───────────────────────────────────────── */

/* The whole insights layout sits DIRECTLY inside .members-card, which carries no
   padding of its own — so give it real breathing room here (golden rule: nothing
   touches the card edge). The stat cards, date range and patroller list all inset
   from the frame instead of hugging it. */
.lb-insights[b-io40avieqd] {
    display: flex;
    gap: 14px;
    height: 100%;
    min-height: 0;
    padding: 16px 18px;
}

/* Left rail: date range + patroller picker */
.lb-insights-side[b-io40avieqd] {
    flex: 0 0 230px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-height: 0;
}

.lb-ins-dates[b-io40avieqd] {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 6px 8px;
}
.lb-ins-lbl[b-io40avieqd] { font-size: 12px; color: var(--sg-muted, var(--sg-muted)); }
.sg-input--sm[b-io40avieqd] { padding: 4px 8px; font-size: 13px; }

.lb-ins-head[b-io40avieqd] {
    display: flex; align-items: center; justify-content: space-between;
    font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase;
    color: var(--sg-muted, var(--sg-muted));
    border-bottom: 1px solid var(--sg-border, var(--sg-border));
    padding-bottom: 6px;
}
.lb-ins-all[b-io40avieqd] {
    background: none; border: none; cursor: pointer;
    color: var(--sg-accent); font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em;
}
.lb-ins-all:hover[b-io40avieqd] { color: var(--sg-accent); }

.lb-ins-list[b-io40avieqd] {
    flex: 1 1 auto;
    overflow-y: auto;
    display: flex; flex-direction: column; gap: 2px;
    min-height: 0;
}
.lb-ins-pat[b-io40avieqd] {
    display: flex; align-items: center; gap: 8px;
    padding: 5px 6px; border-radius: 7px; cursor: pointer; font-size: 13px;
    color: var(--sg-text, var(--sg-text));
}
.lb-ins-pat:hover[b-io40avieqd] { background: var(--sg-card); }
.lb-ins-dot[b-io40avieqd] { width: 10px; height: 10px; border-radius: 3px; flex: 0 0 auto; }
.lb-ins-name[b-io40avieqd] { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* Right side: summary + visualisation */
.lb-insights-main[b-io40avieqd] {
    flex: 1 1 auto;
    min-width: 0; min-height: 0;
    display: flex; flex-direction: column; gap: 12px;
    overflow-y: auto;
    /* Small right gutter so the scrollbar doesn't sit on the content; outer spacing
       is now owned by .lb-insights padding. */
    padding-right: 4px;
}

/* Map/Analytics summary: all five stat cards on ONE compact row so the map gets the height. */
.logbook-report-stats--inline[b-io40avieqd] {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    margin-bottom: 10px;
}
.logbook-report-stats--inline .logbook-report-stat[b-io40avieqd] { padding: 8px 10px; }
.logbook-report-stats--inline .logbook-report-stat__val[b-io40avieqd] { font-size: 21px; }

.lb-insights-map[b-io40avieqd] {
    flex: 1 1 auto;
    min-height: 560px;
    border: 1px solid var(--sg-border, #2a3a4f);
    border-radius: 12px;
    overflow: hidden;
    background: #0a1322;
}

/* Charts */
.lb-charts[b-io40avieqd] { display: flex; flex-direction: column; gap: 16px; }
.lb-chart[b-io40avieqd] {
    border: 1px solid var(--sg-border, var(--sg-border));
    border-radius: 12px;
    padding: 12px 14px;
    background: var(--sg-card, var(--sg-card));
}
.lb-chart__h[b-io40avieqd] {
    font-size: 13px; font-weight: 700; color: var(--sg-heading, var(--sg-text)); margin-bottom: 10px;
}
.lb-chart__sub[b-io40avieqd] { color: var(--sg-muted, var(--sg-muted)); font-weight: 600; margin-left: 4px; font-size: 12px; }

/* Heatmap (day × 2-hour block) */
.lb-heat[b-io40avieqd] {
    display: grid;
    grid-template-columns: 32px repeat(12, 1fr);
    grid-template-rows: repeat(7, 1fr);
    gap: 3px;
}
.lb-heat__day[b-io40avieqd] { font-size: 10px; color: var(--sg-muted, var(--sg-muted)); align-self: center; }
.lb-heat__cell[b-io40avieqd] { border-radius: 3px; background: #38bdf8; min-height: 16px; }
.lb-heat__axis[b-io40avieqd] {
    display: flex; justify-content: space-between;
    font-size: 9px; color: var(--sg-muted, var(--sg-muted)); margin: 5px 0 0 32px;
}

/* Bar charts */
.lb-bars[b-io40avieqd] {
    display: grid;
    grid-template-columns: repeat(31, 1fr);
    align-items: end;
    gap: 3px;
    height: 130px;
}
.lb-bars--month[b-io40avieqd] { grid-template-columns: repeat(12, 1fr); }
.lb-bar[b-io40avieqd] {
    display: flex; flex-direction: column; align-items: center; justify-content: flex-end;
    height: 100%; gap: 3px;
}
.lb-bar__fill[b-io40avieqd] {
    width: 100%;
    min-height: 2px;
    background: linear-gradient(180deg, #60a5fa, #2563eb);
    border-radius: 3px 3px 0 0;
}
.lb-bar__lbl[b-io40avieqd] { font-size: 9px; color: var(--sg-muted, var(--sg-muted)); }

@media (max-width: 820px) {
    .lb-insights[b-io40avieqd] { flex-direction: column; }
    .lb-insights-side[b-io40avieqd] { flex: 0 0 auto; }
    .lb-ins-list[b-io40avieqd] { max-height: 160px; }
}

/* ── Patrol Optimisation tab ───────────────────────────────────────────────── */
.lb-opt[b-io40avieqd] { display: flex; flex-direction: column; gap: 14px; height: 100%; min-height: 0; overflow-y: auto; padding: 16px 18px; }
.lb-opt-bar[b-io40avieqd] { display: flex; align-items: center; gap: 14px; }
.lb-opt-range[b-io40avieqd] { display: flex; align-items: center; gap: 6px; }
.lb-opt-bar .sg-btn[b-io40avieqd] { margin-left: auto; }
.lb-opt-loading[b-io40avieqd] { display: flex; align-items: center; gap: 10px; padding: 40px 8px; color: var(--sg-muted); font-size: 14px; }

.lb-opt-stats[b-io40avieqd] { margin-bottom: 2px; }
.lb-opt-waste .logbook-report-stat__val[b-io40avieqd] { color: #b45309; }
.lb-opt-gap .logbook-report-stat__val[b-io40avieqd] { color: #dc2626; }

/* Top row: map (left half) + coverage matrix (right half) */
.lb-opt-top[b-io40avieqd] { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; align-items: start; }
@media (max-width: 1000px) { .lb-opt-top[b-io40avieqd] { grid-template-columns: 1fr; } }
/* Map and matrix are BOTH .lb-chart cards now, with equal body heights so they line up
   top and bottom. Map body 240px === matrix heat grid 222px + axis ~18px. */
.lb-opt-geo[b-io40avieqd] { display: flex; flex-direction: column; min-width: 0; }
.lb-opt-geomap[b-io40avieqd] { height: 240px; border: 1px solid var(--sg-card-border); border-radius: 10px; overflow: hidden; background: #0a1322; }
.lb-opt-legdot[b-io40avieqd] { display: inline-block; width: 9px; height: 9px; border-radius: 50%; margin: 0 4px -1px 10px; border: 1px solid #fff; }
.lb-opt-legdot--gap[b-io40avieqd] { background: #dc2626; }
.lb-opt-legdot--waste[b-io40avieqd] { background: #2563eb; }

/* Second row: hotspots bucketed into three action columns (Hold · Reduce · Increase) */
.lb-opt-hotwrap[b-io40avieqd] { display: flex; flex-direction: column; gap: 8px; }
.lb-opt-hotcols[b-io40avieqd] { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; align-items: start; }
@media (max-width: 900px) { .lb-opt-hotcols[b-io40avieqd] { grid-template-columns: 1fr; } }
.lb-opt-hotcol[b-io40avieqd] { display: flex; flex-direction: column; gap: 6px; }
.lb-opt-hotcol .lb-opt-hot[b-io40avieqd] { margin-bottom: 0; }
.lb-opt-hotcol__h[b-io40avieqd] {
    display: flex; align-items: center; gap: 8px;
    font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
    color: var(--sg-muted); padding-bottom: 5px;
    border-bottom: 2px solid var(--sg-card-border);
}
.lb-opt-hotcol__n[b-io40avieqd] {
    font-size: 10px; font-weight: 800; min-width: 18px; height: 18px; padding: 0 5px;
    display: inline-flex; align-items: center; justify-content: center; border-radius: 9px;
    background: color-mix(in srgb, var(--sg-text) 10%, transparent); color: var(--sg-text);
}
.lb-opt-hotcol__empty[b-io40avieqd] { font-size: 12px; color: var(--sg-muted); padding: 2px 2px 6px; }
.lb-opt-hotcol--more .lb-opt-hotcol__h[b-io40avieqd] { color: #dc2626; border-bottom-color: color-mix(in srgb, #dc2626 45%, transparent); }
.lb-opt-hotcol--less .lb-opt-hotcol__h[b-io40avieqd] { color: #2563eb; border-bottom-color: color-mix(in srgb, #2563eb 45%, transparent); }
.lb-opt-hotcol--more .lb-opt-hotcol__n[b-io40avieqd] { background: color-mix(in srgb, #dc2626 18%, transparent); color: #dc2626; }
.lb-opt-hotcol--less .lb-opt-hotcol__n[b-io40avieqd] { background: color-mix(in srgb, #2563eb 18%, transparent); color: #2563eb; }
.lb-opt-hot--hold[b-io40avieqd] { border-color: var(--sg-card-border); }

.lb-opt-grid[b-io40avieqd] { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: 14px; align-items: start; }
@media (max-width: 1000px) { .lb-opt-grid[b-io40avieqd] { grid-template-columns: 1fr; } }

/* Diverging coverage-vs-crime heat grid (7 rows × 8 buckets). Fixed height with 1fr rows so the
   grid body matches the map's height (240px card body = 222px grid + ~18px axis row). */
.lb-optheat[b-io40avieqd] { display: grid; grid-template-columns: 34px repeat(8, 1fr); grid-template-rows: repeat(7, 1fr); gap: 3px; height: 222px; }
.lb-optheat__day[b-io40avieqd] { font-size: 11px; color: var(--sg-muted); align-self: center; }
.lb-optheat__cell[b-io40avieqd] {
    min-height: 0; border-radius: 5px;
    display: flex; align-items: center; justify-content: center;
    font-size: 11px; font-weight: 800; color: #fff;
    border: 1px solid color-mix(in srgb, var(--sg-text) 6%, transparent);
}

.lb-opt-hotspots[b-io40avieqd] { max-height: 340px; overflow-y: auto; }
.lb-opt-hot[b-io40avieqd] {
    display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 9px; margin-bottom: 6px;
    border: 1px solid var(--sg-card-border); background: color-mix(in srgb, var(--sg-text) 3%, transparent);
}
.lb-opt-hot--more[b-io40avieqd] { border-color: color-mix(in srgb, #dc2626 45%, transparent); }
.lb-opt-hot--less[b-io40avieqd] { border-color: color-mix(in srgb, #2563eb 40%, transparent); }
.lb-opt-hot__rank[b-io40avieqd] {
    flex: 0 0 auto; width: 24px; height: 24px; border-radius: 6px; font-size: 12px; font-weight: 800;
    display: flex; align-items: center; justify-content: center; color: #fff; background: var(--sg-accent);
}
.lb-opt-hot__body[b-io40avieqd] { flex: 1 1 auto; min-width: 0; }
.lb-opt-hot__t[b-io40avieqd] { font-size: 13px; font-weight: 700; color: var(--sg-text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lb-opt-hot__m[b-io40avieqd] { font-size: 11px; color: var(--sg-muted); }
.lb-opt-hot__need[b-io40avieqd] { flex: 0 0 auto; font-size: 10.5px; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; }
.lb-opt-hot--more .lb-opt-hot__need[b-io40avieqd] { color: #dc2626; }
.lb-opt-hot--less .lb-opt-hot__need[b-io40avieqd] { color: #2563eb; }
.lb-opt-hot--balanced .lb-opt-hot__need[b-io40avieqd] { color: var(--sg-muted); }

.lb-opt-advice[b-io40avieqd] {
    border: 1px solid color-mix(in srgb, var(--sg-accent) 30%, var(--sg-card-border));
    border-radius: 12px; padding: 4px 18px 14px; background: color-mix(in srgb, var(--sg-accent) 4%, transparent);
}
.lb-opt-advice__h[b-io40avieqd] { display: flex; align-items: center; gap: 8px; font-weight: 800; font-size: 14px; color: var(--sg-accent); padding: 12px 0 2px; }
.lb-opt-advice__body[b-io40avieqd] { font-size: 13.5px; line-height: 1.55; color: var(--sg-text); }
.lb-opt-advice__body h4[b-io40avieqd] { font-size: 12px; text-transform: uppercase; letter-spacing: .05em; color: var(--sg-muted); margin: 14px 0 4px; }
.lb-opt-advice__body p[b-io40avieqd] { margin: 4px 0; }
.lb-opt-advice__body ul[b-io40avieqd] { margin: 4px 0 8px; padding-left: 18px; }
.lb-opt-advice__body li[b-io40avieqd] { margin: 2px 0; }

.sg-chip--ai.sg-chip--active[b-io40avieqd], .sg-chip--ai:hover[b-io40avieqd] { color: var(--sg-accent); }
/* /Components/Pages/ManageTenant.razor.rz.scp.css */
.manage-tenant-page[b-bxqpxrmvjy] {
    padding: var(--sg-card-gap);
    display: flex;
    flex-direction: column;
    border-radius: 0;
    background: transparent;
    border: none;
    box-shadow: none;
}

.manage-tenant-page--loading[b-bxqpxrmvjy] {
    justify-content: center;
}

.manage-tenant-page__topbar[b-bxqpxrmvjy] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    margin-bottom: 24px;
}

.manage-tenant-page__eyebrow[b-bxqpxrmvjy] {
    color: var(--sg-muted-soft);
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 11px;
    margin-bottom: 8px;
}

.manage-tenant-page__title-row[b-bxqpxrmvjy] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 8px;
}

.manage-tenant-page__title[b-bxqpxrmvjy] {
    margin: 0;
    font-size: clamp(28px, 3vw, 38px);
    font-weight: 700;
    color: var(--sg-heading);
}

.manage-tenant-page__subtitle[b-bxqpxrmvjy] {
    margin: 0;
    color: var(--sg-subtext);
    font-size: 15px;
    max-width: 720px;
}

.manage-tenant-page__actions[b-bxqpxrmvjy] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 12px;
}

.manage-tenant-button[b-bxqpxrmvjy],
.manage-tenant-link-button[b-bxqpxrmvjy] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    padding: 0 16px;
    border-radius: 12px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    color: var(--sg-text);
    text-decoration: none;
    transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

.manage-tenant-button:hover[b-bxqpxrmvjy],
.manage-tenant-link-button:hover[b-bxqpxrmvjy] {
    transform: translateY(-1px);
    box-shadow: 0 12px 28px rgba(15,23,42,0.28);
    color: var(--sg-heading);
}

.manage-tenant-button:disabled[b-bxqpxrmvjy] {
    opacity: 0.72;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}

.manage-tenant-button--ghost[b-bxqpxrmvjy] {
    background: linear-gradient(180deg, var(--sg-card), var(--sg-card));
}

.manage-tenant-button--primary[b-bxqpxrmvjy],
.manage-tenant-link-button[b-bxqpxrmvjy] {
    border-color: color-mix(in srgb, var(--sg-accent) 42%, transparent);
    background: linear-gradient(180deg, color-mix(in srgb, var(--sg-accent) 78%, transparent), color-mix(in srgb, var(--sg-accent) 72%, transparent));
    color: #fff;
}

.manage-tenant-button--success[b-bxqpxrmvjy] {
    border-color: rgba(74,222,128,0.34);
    background: linear-gradient(180deg, rgba(34,197,94,0.78), rgba(22,163,74,0.72));
}

.manage-tenant-button--danger[b-bxqpxrmvjy] {
    border-color: rgba(248,113,113,0.34);
    background: linear-gradient(180deg, rgba(127,29,29,0.76), rgba(153,27,27,0.72));
}

.manage-tenant-status-pill[b-bxqpxrmvjy],
.manage-tenant-inline-pill[b-bxqpxrmvjy] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    padding: 0 12px;
    border-radius: 999px;
    border: 1px solid transparent;
    font-size: 13px;
    font-weight: 600;
}

.manage-tenant-status-pill--green[b-bxqpxrmvjy],
.manage-tenant-inline-pill--green[b-bxqpxrmvjy] {
    color: #D1FAE5;
    background: rgba(34,197,94,0.24);
    border-color: rgba(74,222,128,0.34);
}

.manage-tenant-status-pill--amber[b-bxqpxrmvjy],
.manage-tenant-inline-pill--amber[b-bxqpxrmvjy] {
    color: var(--sg-warning);
    background: rgba(245,158,11,0.2);
    border-color: rgba(251,191,36,0.3);
}

.manage-tenant-inline-pill--blue[b-bxqpxrmvjy] {
    color: var(--sg-accent);
    background: rgba(59,130,246,0.22);
    border-color: rgba(96,165,250,0.34);
}

.manage-tenant-inline-pill--danger[b-bxqpxrmvjy] {
    color: var(--sg-danger);
    background: rgba(239,68,68,0.2);
    border-color: rgba(248,113,113,0.32);
}

.manage-tenant-inline-pill--muted[b-bxqpxrmvjy] {
    color: rgba(226,232,240,0.85);
    background: rgba(71,85,105,0.28);
    border-color: rgba(148,163,184,0.18);
}

.manage-tenant-page__content-grid[b-bxqpxrmvjy] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 290px;
    gap: 18px;
    flex: 1;
}

.manage-tenant-page__content-grid--account[b-bxqpxrmvjy] {
    grid-template-columns: 1fr;
}

.manage-tenant-account-grid[b-bxqpxrmvjy] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    align-items: stretch;
}

.manage-tenant-secondary-grid[b-bxqpxrmvjy] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.manage-tenant-page__main-column[b-bxqpxrmvjy],
.manage-tenant-page__side-column[b-bxqpxrmvjy] {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.manage-tenant-panel[b-bxqpxrmvjy] {
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background:
        linear-gradient(var(--sg-card), var(--sg-card)),
        url('/images/bg-city.jpg') center/cover no-repeat;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 20px 48px rgba(0,0,0,0.28);
    backdrop-filter: blur(8px);
}

.manage-tenant-panel--equal[b-bxqpxrmvjy] {
    display: flex;
    flex-direction: column;
    min-height: 100%;
}

.manage-tenant-panel--empty[b-bxqpxrmvjy],
.manage-tenant-panel__empty-copy[b-bxqpxrmvjy] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px;
    color: var(--sg-muted-soft);
}

.manage-tenant-panel__header[b-bxqpxrmvjy] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 18px 22px 14px;
    border-bottom: 1px solid var(--sg-border);
}

.manage-tenant-panel__header h2[b-bxqpxrmvjy] {
    margin: 0;
    font-size: 20px;
    font-weight: 700;
    color: var(--sg-heading);
}

.manage-tenant-panel__header p[b-bxqpxrmvjy] {
    margin: 6px 0 0;
    color: var(--sg-muted-soft);
    font-size: 14px;
}

.manage-tenant-map[b-bxqpxrmvjy] {
    flex: 1;
    padding: 18px 18px 14px;
    display: flex;
    flex-direction: column;
}

.manage-tenant-map__toolbar[b-bxqpxrmvjy] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding-bottom: 10px;
}

.manage-tenant-map__toolbar-dot[b-bxqpxrmvjy] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(226,232,240,0.28);
}

.manage-tenant-map__surface[b-bxqpxrmvjy] {
    position: relative;
    min-height: 340px;
    flex: 1;
    overflow: hidden;
    border-radius: 16px;
    border: 1px solid var(--sg-border);
    background:
        radial-gradient(circle at 65% 20%, rgba(255,255,255,0.3), transparent 24%),
        linear-gradient(110deg, rgba(235,245,255,0.95) 0%, rgba(216,235,248,0.82) 34%, rgba(91,135,187,0.58) 35%, rgba(16,46,92,0.92) 100%);
}

.manage-tenant-map__canvas[b-bxqpxrmvjy] {
    width: 100%;
    min-height: 340px;
    height: 100%;
}

.manage-tenant-map__hint[b-bxqpxrmvjy] {
    position: absolute;
    left: 18px;
    bottom: 18px;
    z-index: 1;
    max-width: 320px;
    padding: 14px 16px;
    border-radius: 14px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    color: rgba(241,245,249,0.92);
    display: grid;
    gap: 6px;
}

.manage-tenant-map__hint strong[b-bxqpxrmvjy] {
    font-size: 14px;
}

.manage-tenant-map__hint span[b-bxqpxrmvjy] {
    font-size: 13px;
    line-height: 1.5;
}

.manage-tenant-map__live-badge[b-bxqpxrmvjy] {
    position: absolute;
    right: 18px;
    top: 18px;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border-radius: 10px;
    border: 1px solid var(--sg-border);
    padding: 8px 12px;
    background: var(--sg-card);
    color: var(--sg-text);
    font-size: 13px;
}

.manage-tenant-map__footer[b-bxqpxrmvjy] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 4px 0;
    color: var(--sg-subtext);
    font-size: 14px;
}

@media (max-width: 1280px) {
    .manage-tenant-account-grid[b-bxqpxrmvjy] {
        grid-template-columns: 1fr;
    }

    .manage-tenant-secondary-grid[b-bxqpxrmvjy] {
        grid-template-columns: 1fr;
    }
}

.manage-tenant-stats-grid[b-bxqpxrmvjy] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.manage-tenant-stat-card[b-bxqpxrmvjy] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 20px 22px;
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background:
        linear-gradient(var(--sg-card), var(--sg-card)),
        url('/images/bg-city.jpg') center/cover no-repeat;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 18px 48px rgba(0,0,0,0.32);
}

.manage-tenant-stat-card--blue[b-bxqpxrmvjy] {
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 0 0 1px rgba(96,165,250,0.18), 0 18px 48px rgba(0,0,0,0.32);
}

.manage-tenant-stat-card--orange[b-bxqpxrmvjy] {
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 0 0 1px rgba(251,146,60,0.18), 0 18px 48px rgba(0,0,0,0.32);
}

.manage-tenant-stat-card--green[b-bxqpxrmvjy] {
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 0 0 1px rgba(74,222,128,0.18), 0 18px 48px rgba(0,0,0,0.32);
}

.manage-tenant-stat-card--red[b-bxqpxrmvjy] {
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 0 0 1px rgba(251,113,133,0.18), 0 18px 48px rgba(0,0,0,0.32);
}

.manage-tenant-stat-card__icon[b-bxqpxrmvjy] {
    width: 46px;
    height: 46px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: var(--sg-heading);
    background: linear-gradient(135deg, rgba(59,130,246,0.95), rgba(96,165,250,0.35));
    box-shadow: 0 10px 24px rgba(59,130,246,0.28);
}

.manage-tenant-stat-card--orange .manage-tenant-stat-card__icon[b-bxqpxrmvjy] {
    background: linear-gradient(135deg, rgba(249,115,22,0.95), rgba(251,146,60,0.35));
    box-shadow: 0 10px 24px rgba(249,115,22,0.28);
}

.manage-tenant-stat-card--green .manage-tenant-stat-card__icon[b-bxqpxrmvjy] {
    background: linear-gradient(135deg, rgba(34,197,94,0.95), rgba(74,222,128,0.35));
    box-shadow: 0 10px 24px rgba(34,197,94,0.28);
}

.manage-tenant-stat-card--red .manage-tenant-stat-card__icon[b-bxqpxrmvjy] {
    background: linear-gradient(135deg, rgba(249,115,22,0.95), rgba(244,63,94,0.35));
    box-shadow: 0 10px 24px rgba(249,115,22,0.3);
}

.manage-tenant-stat-card__value[b-bxqpxrmvjy] {
    font-size: clamp(28px, 2.8vw, 42px);
    line-height: 1;
    font-weight: 700;
    color: var(--sg-heading);
    margin-bottom: 6px;
}

.manage-tenant-stat-card__label[b-bxqpxrmvjy] {
    color: var(--sg-subtext);
    font-size: 15px;
}

.manage-tenant-select-pill[b-bxqpxrmvjy] {
    min-height: 34px;
    padding: 0 12px;
    border-radius: 10px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    display: inline-flex;
    align-items: center;
    color: var(--sg-text);
    font-size: 14px;
}

.manage-tenant-chart[b-bxqpxrmvjy] {
    padding: 16px 18px 20px;
}

.manage-tenant-chart svg[b-bxqpxrmvjy] {
    width: 100%;
    height: auto;
    display: block;
}

.manage-tenant-chart__grid[b-bxqpxrmvjy] {
    stroke: rgba(226,232,240,0.14);
    stroke-width: 1;
}

.manage-tenant-chart__fill[b-bxqpxrmvjy] {
    fill: url(#incidentFill);
}

.manage-tenant-chart__line[b-bxqpxrmvjy] {
    fill: none;
    stroke: #38BDF8;
    stroke-width: 3;
    stroke-linecap: round;
    stroke-linejoin: round;
    filter: drop-shadow(0 0 10px rgba(56,189,248,0.45));
}

.manage-tenant-chart__point[b-bxqpxrmvjy] {
    fill: #7DD3FC;
    stroke: rgba(255,255,255,0.85);
    stroke-width: 2;
}

.manage-tenant-chart__labels[b-bxqpxrmvjy] {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 8px;
    margin-top: 8px;
    color: rgba(226,232,240,0.68);
    font-size: 13px;
}

.manage-tenant-chart__labels span:last-child[b-bxqpxrmvjy] {
    text-align: right;
}

/* manage-tenant-definition-list rules moved to app.css (shared with ReviewOrgModal) */

.manage-tenant-text-status--green[b-bxqpxrmvjy] {
    color: #5EEAD4 !important;
}

.manage-tenant-text-status--amber[b-bxqpxrmvjy] {
    color: var(--sg-warn-text) !important;
}

.manage-tenant-subscription[b-bxqpxrmvjy] {
    padding: 18px 22px 22px;
    display: grid;
    gap: 18px;
}

.manage-tenant-subscription__top-row[b-bxqpxrmvjy] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.manage-tenant-subscription__label[b-bxqpxrmvjy] {
    margin-bottom: 4px;
    color: var(--sg-muted-soft);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.manage-tenant-subscription strong[b-bxqpxrmvjy] {
    color: var(--sg-heading);
    font-size: 20px;
}

.manage-tenant-usage-bar[b-bxqpxrmvjy] {
    height: 8px;
    border-radius: 999px;
    overflow: hidden;
    background: rgba(148,163,184,0.2);
}

.manage-tenant-usage-bar span[b-bxqpxrmvjy] {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #22D3EE, #38BDF8);
}

.manage-tenant-user-list[b-bxqpxrmvjy] {
    padding: 18px 22px 22px;
    display: grid;
    gap: 12px;
}

.manage-tenant-user-card[b-bxqpxrmvjy] {
    padding: 14px 16px;
    border-radius: 14px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    display: grid;
    gap: 8px;
}

.manage-tenant-user-card strong[b-bxqpxrmvjy] {
    color: var(--sg-heading);
    font-size: 15px;
}

.manage-tenant-user-card p[b-bxqpxrmvjy] {
    margin: 4px 0 0;
    color: var(--sg-muted-soft);
    font-size: 13px;
}

.manage-tenant-user-card a[b-bxqpxrmvjy] {
    color: var(--sg-accent);
    font-size: 14px;
    text-decoration: none;
    word-break: break-word;
}

.manage-tenant-table-wrap[b-bxqpxrmvjy] {
    overflow: auto;
}

.manage-tenant-table[b-bxqpxrmvjy] {
    width: 100%;
    border-collapse: collapse;
}

.manage-tenant-table th[b-bxqpxrmvjy],
.manage-tenant-table td[b-bxqpxrmvjy] {
    padding: 16px 22px;
    border-bottom: 1px solid var(--sg-border);
    text-align: left;
}

.manage-tenant-table th[b-bxqpxrmvjy] {
    color: rgba(226,232,240,0.68);
    font-size: 13px;
    font-weight: 500;
}

.manage-tenant-table td[b-bxqpxrmvjy] {
    color: var(--sg-text);
    font-size: 15px;
}

.manage-tenant-table tbody tr:last-child td[b-bxqpxrmvjy] {
    border-bottom: none;
}

.manage-tenant-table__name[b-bxqpxrmvjy] {
    font-weight: 600;
    color: var(--sg-heading);
}

.manage-tenant-modal .modal-content[b-bxqpxrmvjy] {
    border-radius: 20px;
    border: 1px solid var(--sg-border);
    background: linear-gradient(180deg, var(--sg-card), var(--sg-card));
    color: var(--sg-heading);
}

.manage-tenant-modal .modal-header[b-bxqpxrmvjy],
.manage-tenant-modal .modal-footer[b-bxqpxrmvjy] {
    border-color: var(--sg-border);
}

.manage-tenant-modal .form-label[b-bxqpxrmvjy] {
    color: var(--sg-subtext);
}

.manage-tenant-modal .form-control[b-bxqpxrmvjy],
.manage-tenant-modal .form-select[b-bxqpxrmvjy] {
    border-radius: 12px;
    border-color: rgba(148,163,184,0.24);
    background: var(--sg-card);
    color: var(--sg-heading);
}

.manage-tenant-modal .btn-close[b-bxqpxrmvjy] {
    filter: invert(1);
}

@media (max-width: 1200px) {
    .manage-tenant-page__content-grid[b-bxqpxrmvjy] {
        grid-template-columns: 1fr;
    }

    .manage-tenant-page__side-column[b-bxqpxrmvjy] {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .manage-tenant-stats-grid[b-bxqpxrmvjy] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 840px) {
    .manage-tenant-page[b-bxqpxrmvjy] {
        padding: 18px;
    }

    .manage-tenant-page__topbar[b-bxqpxrmvjy],
    .manage-tenant-panel__header[b-bxqpxrmvjy],
    .manage-tenant-subscription__top-row[b-bxqpxrmvjy] {
        flex-direction: column;
        align-items: stretch;
    }

    .manage-tenant-page__actions[b-bxqpxrmvjy] {
        justify-content: stretch;
    }

    .manage-tenant-button[b-bxqpxrmvjy],
    .manage-tenant-link-button[b-bxqpxrmvjy] {
        width: 100%;
    }

    .manage-tenant-page__side-column[b-bxqpxrmvjy],
    .manage-tenant-stats-grid[b-bxqpxrmvjy],
    .manage-tenant-chart__labels[b-bxqpxrmvjy] {
        grid-template-columns: 1fr;
    }

    .manage-tenant-definition-list div[b-bxqpxrmvjy] {
        flex-direction: column;
        gap: 4px;
    }

    .manage-tenant-definition-list dd[b-bxqpxrmvjy] {
        text-align: left;
    }

    .manage-tenant-map__hint[b-bxqpxrmvjy] {
        right: 18px;
        max-width: none;
    }

    .manage-tenant-table th[b-bxqpxrmvjy],
    .manage-tenant-table td[b-bxqpxrmvjy] {
        padding: 14px 16px;
    }
}

/* ── Tabbed, height-locked layout (no page scroll; the body scrolls) ───────── */
.manage-tenant-page[b-bxqpxrmvjy] {
    /* Beat the global ".safegrid-main > *" rule that forces display:block + grow.
       PAGE LAYOUT RULE: fill the PARENT (which already excludes the topbar) —
       never 100vh, that overflows past the viewport and clips the bottom. */
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    height: 100% !important;
    max-height: 100% !important;
    min-height: 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

.mt-tabs[b-bxqpxrmvjy] {
    display: flex;
    gap: 4px;
    border-bottom: 1px solid var(--sg-border);
    margin-bottom: 16px;
    flex: 0 0 auto;
}

.mt-tab[b-bxqpxrmvjy] {
    padding: 9px 18px;
    background: transparent;
    border: none;
    border-bottom: 2px solid transparent;
    color: var(--sg-muted-soft);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 7px;
}

.mt-tab:hover[b-bxqpxrmvjy] { color: #fff; }
.mt-tab--active[b-bxqpxrmvjy] { color: #fff; border-bottom-color: #2563EB; }

/* Content area — does NOT scroll; each card scrolls internally. */
.mt-tabbody[b-bxqpxrmvjy] {
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

/* 2×2 grid that fills all remaining vertical space */
.mt-settings-grid[b-bxqpxrmvjy] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    gap: 16px;
    flex: 1 1 auto;
    min-height: 0;
}

/* Panel with flex-column so header stays fixed and body scrolls */
.mt-panel-flex[b-bxqpxrmvjy] { display: flex; flex-direction: column; min-height: 0; }

/* Scrollable body inside each panel with inner padding */
.mt-panel-body[b-bxqpxrmvjy] {
    flex: 1 1 auto;
    overflow-y: auto;
    padding: 14px 18px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
/* Variant: body contains its own sub-layout (no overflow-y) */
.mt-panel-body--fill[b-bxqpxrmvjy] { overflow: hidden; gap: 0; }

/* Horizontal form row — label left, editor right */
.mt-form-row[b-bxqpxrmvjy] {
    display: grid;
    grid-template-columns: 120px 1fr;
    gap: 6px 12px;
    align-items: center;
}
.mt-form-row > label[b-bxqpxrmvjy] {
    font-size: 13px;
    color: var(--sg-subtext);
    text-align: right;
    margin: 0;
    line-height: 1.4;
}
.mt-form-row > textarea[b-bxqpxrmvjy] { align-self: start; }
.mt-static[b-bxqpxrmvjy] { color: var(--sg-heading); font-size: 14px; padding: 4px 0; }

/* ── Where we are card — left fields / right map ─────────────────────────── */
.mt-where-layout[b-bxqpxrmvjy] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    flex: 1 1 auto;
    min-height: 0;
}
.mt-where-left[b-bxqpxrmvjy] { display: flex; flex-direction: column; gap: 10px; padding-top: 2px; }
.mt-where-right[b-bxqpxrmvjy] { display: flex; flex-direction: column; min-height: 0; }
.mt-map-canvas[b-bxqpxrmvjy] { width: 100%; height: 100%; min-height: 180px; border-radius: 12px; overflow: hidden; }

/* ── Branding card — left fields / right portrait preview ────────────────── */
.mt-brand-layout[b-bxqpxrmvjy] {
    display: grid;
    grid-template-columns: 1fr 172px;
    gap: 20px;
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
}
.mt-brand-left[b-bxqpxrmvjy] { display: flex; flex-direction: column; gap: 10px; overflow-y: auto; }
.mt-brand-right[b-bxqpxrmvjy] { display: flex; flex-direction: column; align-items: center; gap: 8px; flex-shrink: 0; }

/* Portrait mobile ID card preview — matches the actual MAUI ID card layout */
.mt-brand-preview[b-bxqpxrmvjy] {
    width: 160px;
    border-radius: 18px;
    overflow: hidden;
    border: 1px solid var(--sg-border);
    display: flex;
    flex-direction: column;
    box-shadow: 0 16px 36px rgba(0,0,0,0.55);
    background: #12172e;
    flex-shrink: 0;
}
/* Coloured header band — uses primary colour */
.mt-brand-preview__header[b-bxqpxrmvjy] {
    padding: 7px 10px;
    font-size: 7.5px;
    font-weight: 700;
    color: #fff;
    text-align: center;
    letter-spacing: 0.6px;
    text-transform: uppercase;
}
/* Dark card body */
.mt-brand-preview__body[b-bxqpxrmvjy] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 12px 10px 10px;
    gap: 4px;
    background: #12172e;
}
/* Avatar — rounded square matching app style */
.mt-brand-preview__avatar[b-bxqpxrmvjy] {
    width: 52px; height: 52px;
    border-radius: 13px;
    background: var(--sg-input-bg);
    display: flex; align-items: center; justify-content: center;
    font-size: 20px; font-weight: 700;
    color: var(--sg-subtext);
    overflow: hidden;
    margin-bottom: 6px;
    flex-shrink: 0;
}
.mt-brand-preview__avatar img[b-bxqpxrmvjy] { width: 100%; height: 100%; object-fit: contain; }
.mt-brand-preview__member-name[b-bxqpxrmvjy] {
    font-size: 9.5px; font-weight: 700; color: #fff;
    text-align: center; line-height: 1.2;
}
.mt-brand-preview__role[b-bxqpxrmvjy] {
    font-size: 8px; color: var(--sg-subtext);
    text-align: center;
}
.mt-brand-preview__ref[b-bxqpxrmvjy] {
    font-size: 7px; color: var(--sg-muted-soft);
    text-align: center; margin-top: 2px;
}
.mt-brand-preview__qr-hint[b-bxqpxrmvjy] {
    font-size: 6.5px; color: var(--sg-muted-soft);
    text-align: center; margin-top: 6px;
}
/* QR code placeholder — white box with a grid pattern */
.mt-brand-preview__qr-box[b-bxqpxrmvjy] {
    width: 56px; height: 56px;
    background: #fff;
    border-radius: 5px;
    margin-top: 4px;
    position: relative;
    overflow: hidden;
    /* rough QR visual using repeating gradient */
    background-image:
        repeating-linear-gradient(0deg,   rgba(0,0,0,0.18) 0, rgba(0,0,0,0.18) 4px, transparent 4px, transparent 8px),
        repeating-linear-gradient(90deg,  rgba(0,0,0,0.18) 0, rgba(0,0,0,0.18) 4px, transparent 4px, transparent 8px);
    background-size: 8px 8px;
}
/* Coloured footer band */
.mt-brand-preview__footer[b-bxqpxrmvjy] {
    padding: 6px 8px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 6px; font-weight: 600;
    color: var(--sg-heading);
    letter-spacing: 0.3px;
    gap: 4px;
}

/* ── What We Do capability toggles ─────────────────────────────── */
.mt-cap-grid[b-bxqpxrmvjy] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2px 12px;
    padding: 6px 0;
}
.mt-cap-row[b-bxqpxrmvjy] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 6px;
    border-radius: 7px;
    cursor: pointer;
    user-select: none;
    transition: background 0.15s;
}
.mt-cap-row:hover[b-bxqpxrmvjy] {
    background: var(--sg-card);
}
.mt-cap-icon[b-bxqpxrmvjy] {
    width: 22px;
    text-align: center;
    color: var(--sg-muted-soft);
    font-size: 14px;
    flex-shrink: 0;
}
.mt-cap-label[b-bxqpxrmvjy] {
    flex: 1;
    font-size: 13px;
    color: var(--sg-subtext);
    font-weight: 500;
    line-height: 1.2;
}
.mt-cap-toggle[b-bxqpxrmvjy] {
    appearance: none;
    -webkit-appearance: none;
    width: 34px;
    height: 18px;
    border-radius: 9px;
    background: var(--sg-input-bg);
    border: 1px solid var(--sg-border);
    cursor: pointer;
    flex-shrink: 0;
    position: relative;
    transition: background 0.2s, border-color 0.2s;
}
.mt-cap-toggle[b-bxqpxrmvjy]::after {
    content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: rgba(255,255,255,0.5);
    transition: transform 0.2s, background 0.2s;
}
.mt-cap-toggle:checked[b-bxqpxrmvjy] {
    background: #38bdf8;
    border-color: #38bdf8;
}
.mt-cap-toggle:checked[b-bxqpxrmvjy]::after {
    transform: translateX(16px);
    background: #fff;
}

@media (max-width: 900px) {
    .mt-settings-grid[b-bxqpxrmvjy] { grid-template-columns: 1fr; grid-template-rows: none; }
    .mt-where-layout[b-bxqpxrmvjy], .mt-brand-layout[b-bxqpxrmvjy] { grid-template-columns: 1fr; }
    .mt-brand-right[b-bxqpxrmvjy] { display: none; }
}

/* ── Review-request modal: location map ──────────────────────────────── */
.review-org-map[b-bxqpxrmvjy] {
    width: 100%;
    height: 220px;
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid var(--sg-border);
}

/* /Components/Pages/Meetings.razor.rz.scp.css */
/* Meetings Page */
.meetings-page[b-k4jylhczmi] { gap: 12px; }

.meetings-layout[b-k4jylhczmi] {
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: 14px;
    flex: 1 1 auto;
    min-height: 0;
}

@media (max-width: 860px) {
    .meetings-layout[b-k4jylhczmi] { grid-template-columns: 1fr; }
}

/* List card */
.meetings-list-card[b-k4jylhczmi] {
    display: flex !important;
    flex-direction: column;
    overflow: hidden;
    padding: 14px !important;
}

.meetings-list-scroll[b-k4jylhczmi] {
    flex: 1 1 auto;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.meetings-list-item[b-k4jylhczmi] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 10px;
    cursor: pointer;
    border: 1px solid var(--sg-border);
    transition: background 0.12s;
}

.meetings-list-item:hover[b-k4jylhczmi] { background: var(--sg-card); }

.meetings-list-item--active[b-k4jylhczmi] {
    background: rgba(37,99,235,0.15) !important;
    border-color: rgba(37,99,235,0.4) !important;
}

.meetings-list-item__body[b-k4jylhczmi] { flex: 1; min-width: 0; }
.meetings-list-item__title[b-k4jylhczmi] { font-size: 13px; font-weight: 600; color: var(--sg-heading); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.meetings-list-item__meta[b-k4jylhczmi]  { font-size: 11px; color: var(--sg-muted-soft); }

.meetings-dot--blue[b-k4jylhczmi]  { width: 8px; height: 8px; border-radius: 50%; background: #3b82f6; flex-shrink: 0; }
.meetings-dot--green[b-k4jylhczmi] { width: 8px; height: 8px; border-radius: 50%; background: #22c55e; flex-shrink: 0; }
.meetings-dot--red[b-k4jylhczmi]   { width: 8px; height: 8px; border-radius: 50%; background: #ef4444; flex-shrink: 0; }

/* Detail card */
.meetings-detail-card[b-k4jylhczmi] {
    background: var(--sg-card);
    border: 1px solid var(--sg-border);
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    flex: 1 1 auto;
    min-height: 0;
}

.meetings-detail-header[b-k4jylhczmi] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 16px 20px 10px;
    border-bottom: 1px solid var(--sg-border);
}

.meetings-detail-header h2[b-k4jylhczmi] {
    font-size: 17px;
    font-weight: 700;
    color: var(--sg-heading);
    margin: 0 0 4px;
}

/* No selection */
.meetings-no-selection[b-k4jylhczmi] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: var(--sg-muted-soft);
    font-size: 14px;
    border: 1px dashed var(--sg-border);
    border-radius: 16px;
}

.meetings-no-selection i[b-k4jylhczmi] { font-size: 48px; }

/* Attendee list */
.meetings-attendee-list[b-k4jylhczmi] { display: flex; flex-direction: column; gap: 6px; }

.meetings-attendee[b-k4jylhczmi] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    background: var(--sg-card);
    border-radius: 10px;
}

.meetings-attendee__name[b-k4jylhczmi] { font-size: 13px; font-weight: 500; flex: 1; }

/* Agenda */
.meetings-agenda-list[b-k4jylhczmi] { display: flex; flex-direction: column; gap: 6px; }

.meetings-agenda-item[b-k4jylhczmi] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 10px 12px;
    background: var(--sg-card);
    border-radius: 10px;
}

.meetings-agenda-item__num[b-k4jylhczmi] {
    font-size: 13px;
    font-weight: 700;
    color: var(--sg-accent);
    min-width: 24px;
}

.meetings-agenda-item__body[b-k4jylhczmi] { flex: 1; min-width: 0; }

/* Stats grid */
.meetings-stats[b-k4jylhczmi] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
}

/* btn-xs */
.btn-xs[b-k4jylhczmi] {
    padding: 2px 8px;
    font-size: 11px;
    border-radius: 6px;
}

/* Tabs (scoped — inc-detail-tab classes not inherited from IncidentDetail) */
.inc-detail-tabs[b-k4jylhczmi] {
    display: flex;
    border-bottom: 1px solid var(--sg-border);
    padding: 0 16px;
    flex-shrink: 0;
}

.inc-detail-tab[b-k4jylhczmi] {
    background: none;
    border: none;
    padding: 9px 16px;
    font-size: 13px;
    color: var(--sg-muted-soft);
    cursor: pointer;
    border-bottom: 2px solid transparent;
    transition: color 0.15s, border-color 0.15s;
    display: flex;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
}

.inc-detail-tab:hover[b-k4jylhczmi] { color: var(--sg-text); }

.inc-detail-tab--active[b-k4jylhczmi] {
    color: var(--sg-accent);
    border-bottom-color: #60a5fa;
    font-weight: 600;
}

.inc-detail-tab-badge[b-k4jylhczmi] {
    background: #2563eb;
    color: #fff;
    border-radius: 10px;
    font-size: 11px;
    padding: 1px 6px;
    font-weight: 600;
}

.inc-detail-tab-content[b-k4jylhczmi] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
}

/* These live scoped to IncidentDetail, so on the Meetings page the detail cards were unstyled —
   no inner padding, which made every tab's content touch the card edge. Re-declare them here.
   .members-card gives them flex:1 + overflow:hidden, so under space pressure (e.g. a long attendee
   list) they'd shrink and clip their own header + buttons. Force natural height + no clipping and
   let the tab-content scroll instead. */
.inc-detail-card[b-k4jylhczmi] {
    padding: 18px 22px;
    margin-bottom: 0 !important;
    flex: 0 0 auto;
    overflow: visible;
    max-height: none;
}
.inc-detail-card__title[b-k4jylhczmi] {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--sg-muted-soft);
    font-weight: 700;
    margin-bottom: 14px;
}

/* Minutes editor: fill the card's height instead of a fixed 14 rows that stopped a third of the way
   down and left the rest of the card empty. (Overrides the natural-height rule above for this card.) */
.meetings-minutes-card[b-k4jylhczmi] {
    flex: 1 1 auto;
    min-height: 0;
}
.meetings-minutes-card textarea[b-k4jylhczmi] {
    flex: 1 1 auto;
    min-height: 240px;
    resize: none;
}

/* Bulk invite checkboxes */
.meetings-invite-row[b-k4jylhczmi] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    background: var(--sg-card);
    border-radius: 10px;
    cursor: pointer;
}

.meetings-invite-row:hover[b-k4jylhczmi] { background: var(--sg-card); }
.meetings-invite-row input[type=checkbox][b-k4jylhczmi] { accent-color: #60a5fa; width: 16px; height: 16px; cursor: pointer; }
.meetings-invite-row__name[b-k4jylhczmi] { flex: 1; font-size: 13px; font-weight: 500; }
.meetings-invite-row__role[b-k4jylhczmi] { font-size: 11px; color: var(--sg-muted-soft); }
/* /Components/Pages/Members.razor.rz.scp.css */
/* Styles moved to app.css so Community and other list pages can share them */
/* /Components/Pages/PatrollerDashboard.razor.rz.scp.css */
.patroller-dashboard[b-lorzx6z3xc] {
    min-height: 100%;
    height: 100%;
    padding: 18px;
    display: flex;
    flex-direction: column;
    gap: 18px;
    box-sizing: border-box;
    border-radius: 0;
    background: transparent;
    border: none;
    box-shadow: none;
}

.patroller-dashboard--loading[b-lorzx6z3xc] {
    justify-content: center;
}

.patroller-dashboard__topbar[b-lorzx6z3xc] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin: 0;
}

.patroller-dashboard__eyebrow[b-lorzx6z3xc] {
    color: var(--sg-muted-soft);
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 11px;
    margin-bottom: 8px;
}

.patroller-dashboard__title[b-lorzx6z3xc] {
    margin: 0 0 10px;
    font-size: clamp(28px, 3vw, 36px);
    font-weight: 700;
    color: var(--sg-heading);
}

.patroller-dashboard__subtitle[b-lorzx6z3xc] {
    margin: 0;
    color: var(--sg-subtext);
    font-size: 15px;
    max-width: 640px;
}

.patroller-status-bar[b-lorzx6z3xc] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin: 0;
    padding: 14px 18px;
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background: linear-gradient(var(--sg-card), var(--sg-card));
}

.patroller-status-bar__label[b-lorzx6z3xc] {
    color: var(--sg-eyebrow, rgba(191,219,254,0.72));
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-size: 11px;
    margin-bottom: 6px;
}

.patroller-status-bar__value[b-lorzx6z3xc] {
    color: var(--sg-heading);
    font-weight: 700;
}

.patroller-status-pill[b-lorzx6z3xc] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    padding: 0 12px;
    border-radius: 999px;
    border: 1px solid transparent;
    font-size: 13px;
    font-weight: 700;
}

.patroller-status-pill--green[b-lorzx6z3xc] {
    color: #d1fae5;
    background: rgba(34,197,94,0.24);
    border-color: rgba(74,222,128,0.34);
}

.patroller-status-pill--orange[b-lorzx6z3xc] {
    color: var(--sg-warning);
    background: rgba(245,158,11,0.2);
    border-color: rgba(251,191,36,0.3);
}

.patroller-status-pill--grey[b-lorzx6z3xc] {
    color: var(--sg-text);
    background: rgba(100,116,139,0.24);
    border-color: rgba(148,163,184,0.3);
}

.patroller-dashboard__content-grid[b-lorzx6z3xc] {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr);
    gap: 18px;
    flex: 1 1 auto;
    height: 100%;
    min-height: 0;
    align-items: stretch;
}

.patroller-dashboard__main-column[b-lorzx6z3xc],
.patroller-dashboard__side-column[b-lorzx6z3xc] {
    display: flex;
    flex-direction: column;
    gap: 18px;
    min-height: 0;
}

.patroller-panel[b-lorzx6z3xc] {
    display: flex;
    flex-direction: column;
    min-height: 0;
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background: linear-gradient(var(--sg-card), var(--sg-card));
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 20px 48px rgba(0,0,0,0.28);
    backdrop-filter: blur(8px);
}

.patroller-panel--empty[b-lorzx6z3xc],
.patroller-panel__empty-copy[b-lorzx6z3xc] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 28px;
    color: var(--sg-muted-soft);
}

.patroller-panel__header[b-lorzx6z3xc] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 18px 20px 14px;
    border-bottom: 1px solid var(--sg-border);
}

.patroller-panel__header h2[b-lorzx6z3xc] {
    margin: 0;
    font-size: 20px;
    font-weight: 700;
    color: var(--sg-heading);
}

.patroller-panel__header p[b-lorzx6z3xc] {
    margin: 6px 0 0;
    color: var(--sg-muted-soft);
    font-size: 14px;
}

.patroller-dashboard__hero-grid[b-lorzx6z3xc] {
    padding: 18px 20px;
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) repeat(2, minmax(0, 0.85fr));
    gap: 14px;
}

.patroller-map-preview[b-lorzx6z3xc],
.patroller-summary-card[b-lorzx6z3xc] {
    border-radius: 16px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    padding: 18px;
}

.patroller-map-preview[b-lorzx6z3xc] {
    min-height: 220px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background:
        linear-gradient(var(--sg-card), var(--sg-card)),
        radial-gradient(circle at 50% 40%, rgba(59,130,246,0.14), transparent 32%),
        url('/images/bg-city.jpg') center/cover no-repeat;
}

.patroller-map-preview__badge[b-lorzx6z3xc] {
    display: inline-flex;
    width: fit-content;
    min-height: 28px;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
    border-radius: 999px;
    background: rgba(37,99,235,0.24);
    color: var(--sg-accent);
    font-size: 12px;
    font-weight: 700;
}

.patroller-map-preview strong[b-lorzx6z3xc],
.patroller-summary-card__value[b-lorzx6z3xc] {
    color: var(--sg-heading);
}

.patroller-map-preview p[b-lorzx6z3xc],
.patroller-summary-card__meta[b-lorzx6z3xc],
.patroller-alert-item p[b-lorzx6z3xc] {
    color: var(--sg-muted-soft);
}

.patroller-summary-card[b-lorzx6z3xc] {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.patroller-summary-card__label[b-lorzx6z3xc] {
    color: var(--sg-eyebrow, rgba(191,219,254,0.72));
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-size: 11px;
    margin-bottom: 8px;
}

.patroller-summary-card__value[b-lorzx6z3xc] {
    font-size: clamp(24px, 2.4vw, 32px);
    font-weight: 700;
    margin-bottom: 8px;
}

.patroller-quick-actions[b-lorzx6z3xc] {
    padding: 0 20px 20px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.patroller-button[b-lorzx6z3xc],
.patroller-link-button[b-lorzx6z3xc] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 48px;
    padding: 0 14px;
    border-radius: 14px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    color: var(--sg-text);
    text-decoration: none;
    font-weight: 600;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.patroller-button:hover[b-lorzx6z3xc],
.patroller-link-button:hover[b-lorzx6z3xc],
.patroller-incident-card:hover[b-lorzx6z3xc] {
    transform: translateY(-1px);
    box-shadow: 0 12px 28px rgba(15,23,42,0.28);
    color: var(--sg-heading);
}

.patroller-button--primary[b-lorzx6z3xc],
.patroller-link-button[b-lorzx6z3xc] {
    border-color: color-mix(in srgb, var(--sg-accent) 42%, transparent);
    background: linear-gradient(180deg, color-mix(in srgb, var(--sg-accent) 78%, transparent), color-mix(in srgb, var(--sg-accent) 72%, transparent));
    color: #fff;
}

.patroller-incident-list[b-lorzx6z3xc],
.patroller-alert-list[b-lorzx6z3xc],
.patroller-rule-list[b-lorzx6z3xc] {
    padding: 18px 20px 20px;
}

.patroller-incident-list[b-lorzx6z3xc],
.patroller-alert-list[b-lorzx6z3xc] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.patroller-incident-card[b-lorzx6z3xc],
.patroller-alert-item[b-lorzx6z3xc] {
    border-radius: 16px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    padding: 16px;
}

.patroller-incident-card[b-lorzx6z3xc] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    color: var(--sg-text);
    text-decoration: none;
}

.patroller-incident-card strong[b-lorzx6z3xc],
.patroller-alert-item strong[b-lorzx6z3xc] {
    display: block;
    margin-bottom: 4px;
    color: var(--sg-heading);
}

.patroller-incident-card p[b-lorzx6z3xc],
.patroller-alert-item p[b-lorzx6z3xc] {
    margin: 0;
    font-size: 13px;
}

.patroller-incident-card__actions[b-lorzx6z3xc] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 6px;
}

.patroller-incident-card__status[b-lorzx6z3xc],
.patroller-incident-card__nav[b-lorzx6z3xc],
.patroller-alert-item span[b-lorzx6z3xc] {
    font-size: 12px;
    color: var(--sg-eyebrow, rgba(191,219,254,0.82));
}

.patroller-alert-item--unread[b-lorzx6z3xc] {
    border-color: rgba(96,165,250,0.32);
    box-shadow: inset 0 0 0 1px rgba(96,165,250,0.18);
}

.patroller-rule-list[b-lorzx6z3xc] {
    list-style: none;
    margin: 0;
    display: grid;
    gap: 12px;
}

.patroller-rule-list li[b-lorzx6z3xc] {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 10px;
    align-items: start;
    color: var(--sg-subtext);
    font-size: 14px;
}

.patroller-rule-list i[b-lorzx6z3xc] {
    color: rgba(96,165,250,0.82);
}

@media (max-width: 1100px) {
    .patroller-dashboard__content-grid[b-lorzx6z3xc],
    .patroller-dashboard__hero-grid[b-lorzx6z3xc],
    .patroller-quick-actions[b-lorzx6z3xc],
    .patroller-status-bar[b-lorzx6z3xc] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 720px) {
    .patroller-dashboard[b-lorzx6z3xc] {
        padding: 10px;
    }

    .patroller-dashboard__topbar[b-lorzx6z3xc] {
        flex-direction: column;
    }

    .patroller-button[b-lorzx6z3xc],
    .patroller-link-button[b-lorzx6z3xc] {
        width: 100%;
    }
}
/* /Components/Pages/PersonsOfInterest.razor.rz.scp.css */
/* ── Persons of Interest page (Browser shape: list pane + detail pane frame) ──
   Detail-surface styles live in Components/Shared/PoiDetail.razor.css. */

.poi-page[b-j3unhtiux3] {
    gap: 16px;
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    /* Was min-height:100vh, which forced the page taller than the 100vh clipped main
       area and cut off the bottom. Fit within the parent and let .poi-layout scroll. */
    min-height: 0;
    overflow: hidden;
}

.poi-topbar .members-page__title[b-j3unhtiux3] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.poi-title-info[b-j3unhtiux3] {
    color: rgba(96,165,250,0.8);
    font-size: 18px;
    cursor: help;
}

.poi-disclaimer[b-j3unhtiux3] {
    margin-top: 8px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: var(--sg-subtext);
}

.poi-disclaimer i[b-j3unhtiux3] {
    color: var(--sg-warn-text);
    font-size: 16px;
}

.poi-disclaimer strong[b-j3unhtiux3] {
    color: var(--sg-warn-text);
    font-weight: 600;
}

/* Stats bar — compact strip at top of left panel card */
.poi-stats-bar[b-j3unhtiux3] {
    display: flex;
    align-items: center;
    gap: 0;
    padding: 10px 18px;
    border-bottom: 1px solid var(--sg-border);
    flex-shrink: 0;
}

.poi-stat[b-j3unhtiux3] {
    display: flex;
    flex-direction: column;
    gap: 1px;
    padding-right: 14px;
}

.poi-stat-sep[b-j3unhtiux3] {
    width: 1px;
    height: 24px;
    background: var(--sg-card);
    margin-right: 14px;
    flex-shrink: 0;
}

.poi-stat__val[b-j3unhtiux3] {
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
    color: var(--sg-heading);
}

.poi-stat__label[b-j3unhtiux3] {
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--sg-muted-soft);
    line-height: 1;
    white-space: nowrap;
}

.poi-stat--danger .poi-stat__val[b-j3unhtiux3]  { color: var(--sg-err-text); }
.poi-stat--success .poi-stat__val[b-j3unhtiux3] { color: var(--sg-online-text); }
.poi-stat--purple  .poi-stat__val[b-j3unhtiux3] { color: var(--sg-purple-text); }

/* Layout */
.poi-layout[b-j3unhtiux3] {
    display: flex;
    gap: 16px;
    flex: 1 1 auto;
    min-height: 0;
}

.poi-list-card[b-j3unhtiux3] {
    display: flex;
    flex-direction: column;
    flex: 1 1 0;
    min-height: 0;
    margin-bottom: 22px; /* outer gap like members page */
}

/* Detail pane frame — the hosted PoiDetail fills it; only this card scrolls */
.poi-detail-card[b-j3unhtiux3] {
    display: flex;
    flex-direction: column;
    flex: 1.05 1 0;
    min-height: 0;
    margin-bottom: 22px; /* outer gap like members page */
    position: relative;
    padding: 0;
    overflow-y: auto;
}

.poi-detail-close[b-j3unhtiux3] {
    position: absolute;
    top: 14px;
    right: 14px;
    background: transparent;
    border: none;
    color: var(--sg-muted-soft);
    font-size: 18px;
    cursor: pointer;
    z-index: 2;
}

.poi-detail-close:hover[b-j3unhtiux3] {
    color: var(--sg-heading);
}

/* Toolbar (search + filter pill) */
.poi-list-toolbar[b-j3unhtiux3] {
    display: flex;
    align-items: stretch;
    gap: 12px;
    padding: 16px 18px 10px;
    flex: 0 0 auto;
}

.poi-search[b-j3unhtiux3] {
    flex: 1 1 auto;
}

.poi-filter-pill[b-j3unhtiux3] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 0 16px;
    border-radius: 10px;
    border: 1px solid rgba(96,165,250,0.45);
    background: rgba(30,58,138,0.35);
    color: var(--sg-accent);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
}

.poi-filter-pill i[b-j3unhtiux3] {
    font-size: 14px;
}

.poi-filter-pill--active[b-j3unhtiux3] {
    background: rgba(59,130,246,.18);
    border-color: var(--sg-accent);
    color: var(--sg-accent);
}

/* Compact filter selects row (Risk / Gender / Age / Sector / Incidents) */
.poi-filter-row[b-j3unhtiux3] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    padding: 0 18px 12px;
    border-bottom: 1px solid var(--sg-border);
    flex: 0 0 auto;
}

.poi-filter-row[b-j3unhtiux3]  .sg-topbar-select {
    min-width: 0;
}

/* List */
.poi-list-scroll[b-j3unhtiux3] {
    flex: 1 1 auto;
    overflow-y: auto;
    padding: 12px 14px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.poi-list-item[b-j3unhtiux3] {
    display: grid;
    grid-template-columns: 72px 1fr auto;
    gap: 14px;
    align-items: center;
    padding: 12px 14px;
    background: var(--sg-card);
    border: 1px solid var(--sg-border);
    border-radius: 14px;
    text-align: left;
    color: var(--sg-text);
    cursor: pointer;
    transition: transform 0.15s ease, border-color 0.15s ease, background 0.15s ease;
    width: 100%;
}

.poi-list-item:hover[b-j3unhtiux3] {
    transform: translateY(-1px);
    border-color: rgba(96,165,250,0.35);
}

.poi-list-item--selected[b-j3unhtiux3] {
    border-color: #3b82f6;
    box-shadow: 0 0 0 2px rgba(59,130,246,0.35);
}

.poi-list-item__photo[b-j3unhtiux3] {
    width: 64px;
    height: 64px;
    border-radius: 12px;
    object-fit: cover;
    flex-shrink: 0;
}

.poi-list-item__body[b-j3unhtiux3] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.poi-list-item__title-row[b-j3unhtiux3] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.poi-list-item__name[b-j3unhtiux3] {
    font-size: 16px;
    color: var(--sg-heading);
}

.poi-list-item__alias[b-j3unhtiux3],
.poi-list-item__meta[b-j3unhtiux3],
.poi-list-item__lastseen[b-j3unhtiux3] {
    font-size: 12px;
    color: var(--sg-muted-soft);
}

.poi-list-item__side[b-j3unhtiux3] {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-shrink: 0;
}

.poi-list-item__incidents[b-j3unhtiux3],
.poi-list-item__updated[b-j3unhtiux3] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    text-align: right;
    font-size: 11px;
    color: var(--sg-muted-soft);
}

.poi-list-item__incidents strong[b-j3unhtiux3],
.poi-list-item__updated strong[b-j3unhtiux3] {
    color: var(--sg-heading);
    font-size: 14px;
}

.poi-list-item__chevron[b-j3unhtiux3] {
    color: var(--sg-muted-soft);
    font-size: 18px;
}

/* Risk pills (list rows) */
.poi-risk-pill[b-j3unhtiux3] {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.poi-risk-pill--high[b-j3unhtiux3] {
    background: rgba(239,68,68,0.18);
    color: var(--sg-danger);
    border: 1px solid rgba(239,68,68,0.4);
}

.poi-risk-pill--medium[b-j3unhtiux3] {
    background: rgba(249,115,22,0.18);
    color: var(--sg-warning);
    border: 1px solid rgba(249,115,22,0.4);
}

.poi-risk-pill--low[b-j3unhtiux3] {
    background: rgba(59,130,246,0.18);
    color: var(--sg-accent);
    border: 1px solid rgba(59,130,246,0.4);
}

/* Pagination / summary strip */
.poi-pagination[b-j3unhtiux3] {
    display: flex;
    align-items: center;
    margin-top: auto;
    gap: 8px;
    padding: 12px 18px;
    border-top: 1px solid var(--sg-border);
    flex: 0 0 auto;
}

.poi-pagination__summary[b-j3unhtiux3] {
    margin-left: auto;
    font-size: 13px;
    color: var(--sg-muted-soft);
}

/* Responsive */
@media (max-width: 1280px) {
    .poi-layout[b-j3unhtiux3] {
        flex-direction: column;
    }
}

/* ── Create New Profile modal (stays page-side) ───────────────────────── */

.poi-modal-backdrop[b-j3unhtiux3] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.65);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 24px;
}

.poi-modal[b-j3unhtiux3] {
    background: var(--sg-panel);
    border: 1px solid var(--sg-border);
    border-radius: 18px;
    width: 100%;
    max-width: 720px;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    box-shadow: 0 24px 64px rgba(0,0,0,0.5);
}

.poi-modal__header[b-j3unhtiux3] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 24px 16px;
    border-bottom: 1px solid var(--sg-border);
    flex-shrink: 0;
}

.poi-modal__header h2[b-j3unhtiux3] {
    margin: 0;
    font-size: 20px;
    color: var(--sg-heading);
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.poi-modal__header h2 i[b-j3unhtiux3] {
    color: var(--sg-accent);
}

.poi-modal__body[b-j3unhtiux3] {
    padding: 20px 24px;
    overflow-y: auto;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.poi-modal__row[b-j3unhtiux3] {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
}

.poi-modal__field[b-j3unhtiux3] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    flex: 1 1 180px;
    min-width: 0;
}

.poi-modal__field--half[b-j3unhtiux3] {
    flex: 0 1 100px;
}

.poi-modal__field--full[b-j3unhtiux3] {
    flex: 1 1 100%;
}

.poi-modal__field label[b-j3unhtiux3] {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: var(--sg-muted-soft);
    font-weight: 600;
}

.poi-modal__required[b-j3unhtiux3] {
    color: var(--sg-err-text);
}

.poi-modal__field input[b-j3unhtiux3],
.poi-modal__field select[b-j3unhtiux3],
.poi-modal__field textarea[b-j3unhtiux3] {
    background: var(--sg-card);
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    padding: 9px 12px;
    color: var(--sg-heading);
    font-size: 13px;
    outline: none;
    transition: border-color 0.15s;
    width: 100%;
}

.poi-modal__field input:focus[b-j3unhtiux3],
.poi-modal__field select:focus[b-j3unhtiux3],
.poi-modal__field textarea:focus[b-j3unhtiux3] {
    border-color: #3b82f6;
}

.poi-modal__field select option[b-j3unhtiux3] {
    background: var(--sg-card);
}

.poi-modal__field textarea[b-j3unhtiux3] {
    resize: vertical;
    min-height: 64px;
}

.poi-modal__error[b-j3unhtiux3] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    background: rgba(239,68,68,0.12);
    border: 1px solid rgba(239,68,68,0.35);
    border-radius: 8px;
    color: var(--sg-danger);
    font-size: 13px;
}

.poi-modal__footer[b-j3unhtiux3] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 16px 24px 20px;
    border-top: 1px solid var(--sg-border);
    flex-shrink: 0;
}

/* Photo upload in modal */
.poi-modal__photo-upload[b-j3unhtiux3] {
    display: flex;
    gap: 16px;
    align-items: flex-start;
}

.poi-modal__photo-preview[b-j3unhtiux3] {
    width: 80px;
    height: 80px;
    border-radius: 12px;
    object-fit: cover;
    border: 2px solid var(--sg-border);
    flex-shrink: 0;
}

.poi-modal__photo-placeholder[b-j3unhtiux3] {
    width: 80px;
    height: 80px;
    border-radius: 12px;
    background: var(--sg-card);
    border: 2px dashed var(--sg-border);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 28px;
    color: var(--sg-muted-soft);
    flex-shrink: 0;
}

/* Light theme: soften the filter pill fill (translucent navy over white read muddy) */
[data-sg-theme="light"] .poi-filter-pill[b-j3unhtiux3] { background: rgba(29,78,216,0.10); border-color: rgba(29,78,216,0.35); }
/* /Components/Pages/Radio.razor.rz.scp.css */
.radio-page[b-6ea3xyqs9b] { display: flex; flex-direction: column; gap: 14px; height: 100%; min-height: 0; overflow-y: auto; padding: 16px 18px; }

.radio-top h1[b-6ea3xyqs9b] { font-size: 22px; font-weight: 800; margin: 0; display: flex; align-items: center; gap: 10px; color: var(--sg-heading, var(--sg-text)); }
.radio-top__badge[b-6ea3xyqs9b] { font-size: 11px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--sg-accent); border: 1px solid color-mix(in srgb, var(--sg-accent) 40%, transparent); border-radius: 999px; padding: 2px 9px; }
.radio-top__hint[b-6ea3xyqs9b] { display: block; margin-top: 4px; font-size: 12.5px; color: var(--sg-muted); max-width: 70ch; }

.radio-grid[b-6ea3xyqs9b] { display: grid; grid-template-columns: minmax(0, 300px) minmax(0, 1fr); gap: 14px; align-items: start; }
@media (max-width: 900px) { .radio-grid[b-6ea3xyqs9b] { grid-template-columns: 1fr; } }

.radio-card[b-6ea3xyqs9b] { border: 1px solid var(--sg-border, var(--sg-card-border)); border-radius: 14px; background: var(--sg-card); padding: 14px 16px; }
.radio-card__h[b-6ea3xyqs9b] { font-size: 13px; font-weight: 800; color: var(--sg-heading, var(--sg-text)); margin-bottom: 12px; display: flex; align-items: center; }

/* Channel */
.radio-chan[b-6ea3xyqs9b] { border-radius: 12px; padding: 14px; background: color-mix(in srgb, var(--sg-accent) 10%, transparent); border: 1px solid color-mix(in srgb, var(--sg-accent) 25%, transparent); margin-bottom: 14px; }
.radio-chan__name[b-6ea3xyqs9b] { font-size: 18px; font-weight: 800; color: var(--sg-text); }
.radio-chan__sub[b-6ea3xyqs9b] { font-size: 12px; color: var(--sg-muted); margin-top: 1px; }
.radio-onair[b-6ea3xyqs9b] { display: inline-flex; align-items: center; gap: 7px; margin-top: 10px; font-size: 12px; font-weight: 800; letter-spacing: .06em; padding: 4px 12px; border-radius: 999px; background: color-mix(in srgb, var(--sg-text) 8%, transparent); color: var(--sg-muted); }
.radio-onair__dot[b-6ea3xyqs9b] { width: 9px; height: 9px; border-radius: 50%; background: var(--sg-muted); }
.radio-onair--live[b-6ea3xyqs9b] { background: color-mix(in srgb, #dc2626 16%, transparent); color: #dc2626; }
.radio-onair--live .radio-onair__dot[b-6ea3xyqs9b] { background: #dc2626; animation: radio-pulse-b-6ea3xyqs9b 1s infinite; }
@keyframes radio-pulse-b-6ea3xyqs9b { 0%,100% { opacity: 1; } 50% { opacity: .3; } }

.radio-roster__h[b-6ea3xyqs9b] { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: var(--sg-muted); display: flex; align-items: center; gap: 6px; margin-bottom: 8px; }
.radio-roster__n[b-6ea3xyqs9b] { background: color-mix(in srgb, var(--sg-text) 10%, transparent); border-radius: 9px; padding: 0 6px; font-size: 10px; }
.radio-roster[b-6ea3xyqs9b] { display: flex; flex-direction: column; gap: 4px; }
.radio-member[b-6ea3xyqs9b] { display: flex; align-items: center; gap: 8px; font-size: 13px; padding: 3px 2px; }
.radio-member__dot[b-6ea3xyqs9b] { width: 8px; height: 8px; border-radius: 50%; flex: 0 0 auto; }
.radio-member__dot.on[b-6ea3xyqs9b] { background: #16a34a; }
.radio-member__dot.standby[b-6ea3xyqs9b] { background: #f59e0b; }
.radio-member__dot.online[b-6ea3xyqs9b] { background: #3b82f6; }
.radio-member__dot.off[b-6ea3xyqs9b] { background: var(--sg-muted); opacity: .5; }
.radio-member__name[b-6ea3xyqs9b] { color: var(--sg-text); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.radio-member__tag[b-6ea3xyqs9b] { margin-left: auto; font-size: 10px; font-weight: 700; }
.radio-member__tag--on[b-6ea3xyqs9b] { color: #16a34a; }
.radio-member__tag--standby[b-6ea3xyqs9b] { color: #f59e0b; }
.radio-member__tag--online[b-6ea3xyqs9b] { color: #3b82f6; }

/* Composer */
.radio-field[b-6ea3xyqs9b] { margin-bottom: 10px; }
.radio-field label[b-6ea3xyqs9b] { display: block; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: var(--sg-muted); margin-bottom: 4px; }
.radio-field textarea[b-6ea3xyqs9b] { width: 100%; resize: vertical; }
.radio-seg[b-6ea3xyqs9b] { display: inline-flex; border: 1px solid var(--sg-border, var(--sg-card-border)); border-radius: 9px; overflow: hidden; }
.radio-seg__b[b-6ea3xyqs9b] { background: transparent; border: none; padding: 6px 12px; font-size: 12.5px; font-weight: 600; color: var(--sg-muted); cursor: pointer; display: inline-flex; align-items: center; }
.radio-seg__b + .radio-seg__b[b-6ea3xyqs9b] { border-left: 1px solid var(--sg-border, var(--sg-card-border)); }
.radio-seg__b.on[b-6ea3xyqs9b] { background: var(--sg-accent); color: #fff; }
.radio-hint2[b-6ea3xyqs9b] { font-size: 11px; color: var(--sg-muted); margin-top: 5px; }
.radio-member--pick[b-6ea3xyqs9b] { cursor: pointer; }
.radio-member--pick input[type=checkbox][b-6ea3xyqs9b] { margin: 0 2px 0 0; flex: 0 0 auto; }

.radio-row[b-6ea3xyqs9b] { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin: 6px 0 12px; }
.radio-check[b-6ea3xyqs9b] { display: flex; align-items: center; gap: 7px; font-size: 13px; color: var(--sg-text); cursor: pointer; }
.radio-voice[b-6ea3xyqs9b] { max-width: 220px; }
.radio-rate[b-6ea3xyqs9b] { display: flex; align-items: center; gap: 8px; font-size: 12px; color: var(--sg-muted); margin-left: auto; }
.radio-rate input[b-6ea3xyqs9b] { width: 110px; }
.radio-actions[b-6ea3xyqs9b] { display: flex; align-items: center; gap: 10px; }

.radio-transcript[b-6ea3xyqs9b] { margin-top: 14px; border-radius: 12px; border: 1px solid color-mix(in srgb, var(--sg-accent) 30%, var(--sg-border)); background: color-mix(in srgb, var(--sg-accent) 5%, transparent); padding: 12px 14px; }
.radio-transcript__h[b-6ea3xyqs9b] { font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; color: var(--sg-accent); margin-bottom: 6px; display: flex; align-items: center; }
.radio-transcript__body[b-6ea3xyqs9b] { font-size: 15px; line-height: 1.5; color: var(--sg-text); font-style: italic; }

.radio-warn[b-6ea3xyqs9b] { margin-top: 10px; font-size: 12px; color: var(--sg-warn-text, #b45309); }

/* Log */
.radio-log__n[b-6ea3xyqs9b] { margin-left: 8px; font-size: 10px; background: color-mix(in srgb, var(--sg-text) 10%, transparent); border-radius: 9px; padding: 0 6px; }
.radio-logrow[b-6ea3xyqs9b] { display: flex; align-items: center; gap: 12px; padding: 8px 2px; border-top: 1px solid var(--sg-border, var(--sg-card-border)); }
.radio-logrow:first-of-type[b-6ea3xyqs9b] { border-top: none; }
.radio-logrow__meta[b-6ea3xyqs9b] { flex: 0 0 auto; display: flex; flex-direction: column; gap: 2px; min-width: 128px; }
.radio-logrow__time[b-6ea3xyqs9b] { font-size: 12px; font-weight: 700; color: var(--sg-text); font-variant-numeric: tabular-nums; }
.radio-logrow__urgent[b-6ea3xyqs9b] { font-size: 9.5px; font-weight: 800; color: #dc2626; letter-spacing: .05em; }
.radio-logrow__chan[b-6ea3xyqs9b] { font-size: 10.5px; color: var(--sg-muted); }
.radio-logrow__text[b-6ea3xyqs9b] { flex: 1 1 auto; font-size: 13px; color: var(--sg-text); }
.radio-muted[b-6ea3xyqs9b] { font-size: 13px; color: var(--sg-muted); padding: 6px 2px; }

/* Delivery receipts — each targeted radio ticks off as its phone ACKS reception */
.radio-logrow__delivery[b-6ea3xyqs9b] { flex: 0 1 auto; display: flex; flex-wrap: wrap; align-items: center; gap: 6px; max-width: 340px; }
.radio-delivery__count[b-6ea3xyqs9b] { font-size: 11px; font-weight: 800; color: var(--sg-warn-text, #b45309); white-space: nowrap; }
.radio-delivery__count.is-all[b-6ea3xyqs9b] { color: #16a34a; }
.radio-delivery__unit[b-6ea3xyqs9b] { font-size: 10.5px; padding: 1px 7px; border-radius: 9px; border: 1px solid var(--sg-border, var(--sg-card-border)); color: var(--sg-muted); white-space: nowrap; }
.radio-delivery__unit.is-acked[b-6ea3xyqs9b] { color: #16a34a; border-color: color-mix(in srgb, #16a34a 45%, transparent); background: color-mix(in srgb, #16a34a 8%, transparent); }
.radio-delivery__none[b-6ea3xyqs9b] { font-size: 11px; font-weight: 700; color: var(--sg-warn-text, #b45309); }
/* /Components/Pages/ResidentDashboard.razor.rz.scp.css */
.resident-dashboard[b-hjfni77n4v] {
    min-height: 100%;
    height: 100%;
    padding: 18px;
    display: flex;
    flex-direction: column;
    gap: 18px;
    box-sizing: border-box;
    border-radius: 0;
    background: transparent;
    border: none;
    box-shadow: none;
}

.resident-dashboard--loading[b-hjfni77n4v] {
    justify-content: center;
}

.resident-dashboard__topbar[b-hjfni77n4v] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin: 0;
}

.resident-dashboard__eyebrow[b-hjfni77n4v] {
    color: var(--sg-muted-soft);
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 11px;
    margin-bottom: 8px;
}

.resident-dashboard__title[b-hjfni77n4v] {
    margin: 0 0 10px;
    font-size: clamp(28px, 3vw, 36px);
    font-weight: 700;
    color: var(--sg-heading);
}

.resident-dashboard__subtitle[b-hjfni77n4v] {
    margin: 0;
    color: var(--sg-subtext);
    font-size: 15px;
    max-width: 640px;
}

.resident-status-card[b-hjfni77n4v] {
    min-width: 240px;
    padding: 16px 18px;
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background: linear-gradient(var(--sg-card), var(--sg-card));
}

.resident-status-card__label[b-hjfni77n4v],
.resident-summary-card__label[b-hjfni77n4v] {
    color: var(--sg-eyebrow, rgba(191,219,254,0.72));
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-size: 11px;
    margin-bottom: 8px;
}

.resident-status-card__value[b-hjfni77n4v] {
    font-size: 22px;
    font-weight: 700;
    color: var(--sg-heading);
    margin-bottom: 6px;
}

.resident-status-card__value--green[b-hjfni77n4v] {
    color: #bbf7d0;
}

.resident-status-card__value--amber[b-hjfni77n4v] {
    color: var(--sg-warning);
}

.resident-status-card__meta[b-hjfni77n4v],
.resident-summary-card__meta[b-hjfni77n4v] {
    color: var(--sg-muted-soft);
    font-size: 13px;
}

.resident-dashboard__content-grid[b-hjfni77n4v] {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr);
    gap: 18px;
    flex: 1 1 auto;
    height: 100%;
    min-height: 0;
    align-items: stretch;
}

.resident-dashboard__main-column[b-hjfni77n4v],
.resident-dashboard__side-column[b-hjfni77n4v] {
    display: flex;
    flex-direction: column;
    gap: 18px;
    min-height: 0;
}

.resident-panel[b-hjfni77n4v] {
    display: flex;
    flex-direction: column;
    min-height: 0;
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background: linear-gradient(var(--sg-card), var(--sg-card));
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 20px 48px rgba(0,0,0,0.28);
    backdrop-filter: blur(8px);
}

.resident-panel--empty[b-hjfni77n4v],
.resident-panel__empty-copy[b-hjfni77n4v] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 28px;
    color: var(--sg-muted-soft);
}

.resident-panel__header[b-hjfni77n4v] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 18px 20px 14px;
    border-bottom: 1px solid var(--sg-border);
}

.resident-panel__header h2[b-hjfni77n4v] {
    margin: 0;
    font-size: 20px;
    font-weight: 700;
    color: var(--sg-heading);
}

.resident-panel__header p[b-hjfni77n4v] {
    margin: 6px 0 0;
    color: var(--sg-muted-soft);
    font-size: 14px;
}

.resident-hero-grid[b-hjfni77n4v] {
    padding: 18px 20px;
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) repeat(2, minmax(0, 0.8fr));
    gap: 14px;
}

.resident-map-preview[b-hjfni77n4v],
.resident-summary-card[b-hjfni77n4v],
.resident-alert-item[b-hjfni77n4v],
.resident-contact-item[b-hjfni77n4v],
.resident-incident-card[b-hjfni77n4v] {
    border-radius: 16px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.resident-map-preview[b-hjfni77n4v] {
    min-height: 220px;
    padding: 18px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background:
        linear-gradient(var(--sg-card), var(--sg-card)),
        radial-gradient(circle at 50% 40%, rgba(59,130,246,0.12), transparent 34%),
        url('/images/bg-city.jpg') center/cover no-repeat;
}

.resident-map-preview__badge[b-hjfni77n4v] {
    display: inline-flex;
    width: fit-content;
    min-height: 28px;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
    border-radius: 999px;
    background: rgba(37,99,235,0.22);
    color: var(--sg-accent);
    font-size: 12px;
    font-weight: 700;
}

.resident-map-preview strong[b-hjfni77n4v],
.resident-summary-card__value[b-hjfni77n4v],
.resident-incident-card strong[b-hjfni77n4v],
.resident-alert-item strong[b-hjfni77n4v],
.resident-contact-item strong[b-hjfni77n4v] {
    color: var(--sg-heading);
}

.resident-map-preview p[b-hjfni77n4v],
.resident-incident-card p[b-hjfni77n4v],
.resident-alert-item p[b-hjfni77n4v],
.resident-contact-item p[b-hjfni77n4v] {
    margin: 0;
    color: var(--sg-muted-soft);
    font-size: 13px;
}

.resident-summary-card[b-hjfni77n4v] {
    padding: 18px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.resident-summary-card__value[b-hjfni77n4v] {
    font-size: clamp(24px, 2.4vw, 32px);
    font-weight: 700;
    margin-bottom: 8px;
}

.resident-quick-actions[b-hjfni77n4v] {
    padding: 0 20px 20px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.resident-button[b-hjfni77n4v],
.resident-link-button[b-hjfni77n4v] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 48px;
    padding: 0 14px;
    border-radius: 14px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    color: var(--sg-text);
    text-decoration: none;
    font-weight: 600;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.resident-button:hover[b-hjfni77n4v],
.resident-link-button:hover[b-hjfni77n4v],
.resident-incident-card:hover[b-hjfni77n4v] {
    transform: translateY(-1px);
    box-shadow: 0 12px 28px rgba(15,23,42,0.28);
    color: var(--sg-heading);
}

.resident-button--primary[b-hjfni77n4v],
.resident-link-button[b-hjfni77n4v] {
    border-color: color-mix(in srgb, var(--sg-accent) 42%, transparent);
    background: linear-gradient(180deg, color-mix(in srgb, var(--sg-accent) 78%, transparent), color-mix(in srgb, var(--sg-accent) 72%, transparent));
    color: #fff;
}

.resident-button--panic[b-hjfni77n4v] {
    border-color: rgba(248,113,113,0.42);
    background: linear-gradient(180deg, rgba(239,68,68,0.78), rgba(220,38,38,0.72));
    color: #fee2e2;
}

.resident-button--medical[b-hjfni77n4v] {
    border-color: rgba(52,211,153,0.42);
    background: linear-gradient(180deg, rgba(16,185,129,0.78), rgba(5,150,105,0.72));
    color: #d1fae5;
}

.resident-incident-list[b-hjfni77n4v],
.resident-alert-list[b-hjfni77n4v],
.resident-contact-list[b-hjfni77n4v] {
    padding: 18px 20px 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.resident-incident-card[b-hjfni77n4v] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px;
    color: var(--sg-text);
    text-decoration: none;
}

.resident-incident-card__meta[b-hjfni77n4v] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 6px;
    color: var(--sg-eyebrow, rgba(191,219,254,0.82));
    font-size: 12px;
}

.resident-alert-item[b-hjfni77n4v],
.resident-contact-item[b-hjfni77n4v] {
    padding: 16px;
}

.resident-alert-item span[b-hjfni77n4v],
.resident-contact-item span[b-hjfni77n4v] {
    display: block;
    margin-top: 8px;
    color: var(--sg-eyebrow, rgba(191,219,254,0.82));
    font-size: 12px;
}

.resident-alert-item--unread[b-hjfni77n4v] {
    border-color: rgba(96,165,250,0.32);
    box-shadow: inset 0 0 0 1px rgba(96,165,250,0.18);
}

.resident-contact-footer[b-hjfni77n4v] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 20px 20px;
    color: var(--sg-eyebrow, rgba(191,219,254,0.82));
    font-size: 13px;
}

@media (max-width: 1100px) {
    .resident-dashboard__content-grid[b-hjfni77n4v],
    .resident-hero-grid[b-hjfni77n4v],
    .resident-quick-actions[b-hjfni77n4v] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 720px) {
    .resident-dashboard[b-hjfni77n4v] {
        padding: 10px;
    }

    .resident-dashboard__topbar[b-hjfni77n4v] {
        flex-direction: column;
    }

    .resident-button[b-hjfni77n4v],
    .resident-link-button[b-hjfni77n4v],
    .resident-status-card[b-hjfni77n4v] {
        width: 100%;
    }
}
/* /Components/Pages/ResidentSetup.razor.rz.scp.css */
.resident-setup-frame[b-a3b363jrfc] {
    min-height: 100dvh;
    display: flex;
    flex-direction: column;
    background: linear-gradient(135deg, var(--sg-panel) 0%, #1e3a5f 100%);
}

.resident-setup-topbar[b-a3b363jrfc] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 24px;
    border-bottom: 1px solid var(--sg-border);
}

.resident-setup-logo[b-a3b363jrfc] {
    height: 36px;
    width: auto;
}

.resident-setup-home[b-a3b363jrfc] {
    color: var(--sg-muted-soft);
    font-size: 14px;
    text-decoration: none;
}

.resident-setup-home:hover[b-a3b363jrfc] {
    color: var(--sg-heading);
}

.resident-setup-body[b-a3b363jrfc] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px 16px;
}

.resident-setup-card[b-a3b363jrfc] {
    width: 100%;
    max-width: 480px;
    background: var(--sg-card);
    border: 1px solid var(--sg-border);
    border-radius: 24px;
    padding: 40px 36px;
    box-shadow: 0 24px 64px rgba(0,0,0,0.4);
    backdrop-filter: blur(12px);
}

/* Loading */
.resident-setup-loading[b-a3b363jrfc] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    padding: 32px 0;
    color: var(--sg-muted-soft);
}

/* Error */
.resident-setup-error[b-a3b363jrfc] {
    text-align: center;
    color: var(--sg-heading);
}

.resident-setup-error__icon[b-a3b363jrfc] {
    font-size: 48px;
    color: #f59e0b;
    margin-bottom: 16px;
}

/* Done */
.resident-setup-done[b-a3b363jrfc] {
    text-align: center;
    color: var(--sg-heading);
}

.resident-setup-done__icon[b-a3b363jrfc] {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: #22c55e;
    color: #fff;
    font-size: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
}

.resident-setup-done h2[b-a3b363jrfc] {
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 12px;
}

.resident-setup-done__sub[b-a3b363jrfc] {
    color: var(--sg-muted-soft);
    font-size: 15px;
    line-height: 1.6;
}

.resident-setup-done__redirect[b-a3b363jrfc] {
    margin-top: 24px;
    font-size: 13px;
    color: var(--sg-muted-soft);
}

.resident-setup-done__next[b-a3b363jrfc] {
    margin-top: 24px;
    background: var(--sg-card);
    border: 1px solid var(--sg-border);
    border-radius: 14px;
    padding: 18px 22px;
    text-align: left;
}

.resident-setup-done__next h3[b-a3b363jrfc] {
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--sg-muted-soft);
    margin: 0 0 10px;
}

.resident-setup-done__next ol[b-a3b363jrfc] {
    margin: 0;
    padding-left: 20px;
    color: var(--sg-subtext);
    font-size: 14px;
    line-height: 1.6;
}

.resident-setup-done__next ol li + li[b-a3b363jrfc] {
    margin-top: 6px;
}

.resident-setup-done__warning[b-a3b363jrfc] {
    margin-top: 18px;
    background: rgba(251,191,36,0.12);
    border: 1px solid rgba(251,191,36,0.45);
    border-left: 4px solid #f59e0b;
    border-radius: 10px;
    padding: 14px 18px;
    color: var(--sg-warning);
    font-size: 14px;
    line-height: 1.55;
    text-align: left;
}

.resident-setup-done__warning strong[b-a3b363jrfc] {
    color: #fff;
    display: inline;
}

/* Step indicator */
.resident-setup-steps[b-a3b363jrfc] {
    display: flex;
    align-items: center;
    gap: 0;
    margin-bottom: 32px;
}

.resident-setup-step[b-a3b363jrfc] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: var(--sg-muted-soft);
}

.resident-setup-step--active[b-a3b363jrfc] {
    color: var(--sg-heading);
    font-weight: 600;
}

.resident-setup-step--done[b-a3b363jrfc] {
    color: #22c55e;
}

.resident-setup-step__dot[b-a3b363jrfc] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 2px solid currentColor;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 700;
    flex-shrink: 0;
}

.resident-setup-step--active .resident-setup-step__dot[b-a3b363jrfc] {
    background: #3b82f6;
    border-color: #3b82f6;
    color: #fff;
}

.resident-setup-step--done .resident-setup-step__dot[b-a3b363jrfc] {
    background: #22c55e;
    border-color: #22c55e;
    color: #fff;
}

.resident-setup-step__line[b-a3b363jrfc] {
    flex: 1;
    height: 2px;
    background: var(--sg-input-bg);
    margin: 0 12px;
}

/* Welcome step */
.resident-setup-welcome h1[b-a3b363jrfc] {
    font-size: clamp(22px, 4vw, 30px);
    font-weight: 700;
    color: var(--sg-heading);
    margin-bottom: 12px;
}

.resident-setup-welcome > p[b-a3b363jrfc] {
    color: var(--sg-subtext);
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 24px;
}

.resident-setup-info-card[b-a3b363jrfc] {
    border: 1px solid var(--sg-border);
    border-radius: 14px;
    background: var(--sg-card);
    padding: 16px 20px;
    margin-bottom: 24px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.resident-setup-info-row[b-a3b363jrfc] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
}

.resident-setup-info-row__label[b-a3b363jrfc] {
    font-size: 13px;
    color: var(--sg-muted-soft);
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.resident-setup-info-row__value[b-a3b363jrfc] {
    font-size: 15px;
    font-weight: 600;
    color: var(--sg-heading);
    word-break: break-word;
    text-align: right;
}

.resident-setup-welcome__hint[b-a3b363jrfc] {
    font-size: 14px;
    color: var(--sg-muted-soft);
    margin-bottom: 28px;
}

/* Details step */
.resident-setup-details-title[b-a3b363jrfc] {
    font-size: 22px;
    font-weight: 700;
    color: var(--sg-heading);
    margin-bottom: 6px;
}

.resident-setup-details-sub[b-a3b363jrfc] {
    font-size: 15px;
    color: var(--sg-muted-soft);
    margin-bottom: 28px;
}

.resident-setup-fields[b-a3b363jrfc] {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-bottom: 28px;
}

.resident-setup-field[b-a3b363jrfc] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    font-size: 14px;
    color: var(--sg-muted-soft);
    font-weight: 500;
}

.resident-setup-field .form-control[b-a3b363jrfc] {
    background: var(--sg-card);
    border-color: rgba(148,163,184,0.24);
    color: var(--sg-heading);
    border-radius: 12px;
}

.resident-setup-field .form-control:focus[b-a3b363jrfc] {
    border-color: rgba(96,165,250,0.72);
    box-shadow: 0 0 0 3px rgba(59,130,246,0.18);
    background: var(--sg-card);
    color: var(--sg-heading);
}

.resident-setup-field .form-control[b-a3b363jrfc]::placeholder {
    color: var(--sg-muted-soft);
}

.resident-setup-actions[b-a3b363jrfc] {
    display: flex;
    gap: 12px;
    margin-top: 8px;
}

@media (max-width: 520px) {
    .resident-setup-card[b-a3b363jrfc] {
        padding: 28px 20px;
        border-radius: 18px;
    }
}
/* /Components/Pages/Rosters.razor.rz.scp.css */
.roster-page[b-00kawjyr5k] {
    min-height: 0;
    height: 100%;
    overflow: hidden;
}

.roster-panel[b-00kawjyr5k] {
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.roster-toolbar[b-00kawjyr5k] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 22px;
    border-bottom: 1px solid var(--sg-border);
}

.roster-toolbar__group[b-00kawjyr5k] {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.roster-toolbar__group--end[b-00kawjyr5k] {
    margin-left: auto;
    justify-content: flex-end;
}

.roster-segmented-control[b-00kawjyr5k] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px;
    border-radius: 14px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.roster-segmented-control__button[b-00kawjyr5k] {
    flex: 1 1 0;
    text-align: center;
}

.roster-segmented-control__button[b-00kawjyr5k],
.roster-toolbar__icon-button[b-00kawjyr5k] {
    min-height: 40px;
    border-radius: 10px;
    border: 1px solid rgba(148,163,184,0.2);
    background: var(--sg-card);
    color: var(--sg-text);
    padding: 0 14px;
}

.roster-segmented-control__button--active[b-00kawjyr5k] {
    background: rgba(37,99,235,0.92);
    border-color: rgba(96,165,250,0.72);
    color: var(--sg-heading);
}

.roster-segmented-control__button:disabled[b-00kawjyr5k] {
    opacity: 0.6;
}

.roster-toolbar__icon-button[b-00kawjyr5k] {
    width: 40px;
    padding: 0;
}

.roster-toolbar__range[b-00kawjyr5k] {
    color: var(--sg-heading);
    font-size: 15px;
    font-weight: 600;
}

.roster-toolbar__filter[b-00kawjyr5k] {
    min-width: 0;
}

.roster-summary-strip[b-00kawjyr5k] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    padding: 16px 22px;
    border-bottom: 1px solid var(--sg-border);
}

.roster-summary-card[b-00kawjyr5k] {
    padding: 14px 16px;
    border-radius: 14px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.roster-summary-card__value[b-00kawjyr5k] {
    color: var(--sg-heading);
    font-size: 28px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 6px;
}

.roster-summary-card__label[b-00kawjyr5k] {
    color: var(--sg-muted-soft);
    font-size: 13px;
}

.roster-layout[b-00kawjyr5k] {
    flex: 1 1 auto;
    min-height: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) clamp(320px, 28vw, 420px);
    gap: 18px;
    padding: 18px 22px;
}

.roster-board-card[b-00kawjyr5k],
.roster-sidebar[b-00kawjyr5k],
.roster-sidebar-panel[b-00kawjyr5k] {
    min-height: 0;
}

.roster-board-card[b-00kawjyr5k] {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.roster-board-header[b-00kawjyr5k],
.roster-board-allday[b-00kawjyr5k],
.roster-board-body[b-00kawjyr5k] {
    display: grid;
    grid-template-columns: 72px repeat(var(--roster-day-count, 7), minmax(0, 1fr));
}

.roster-board-header[b-00kawjyr5k] {
    border-bottom: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.roster-board-header__time[b-00kawjyr5k],
.roster-board-allday__label[b-00kawjyr5k] {
    border-right: 1px solid var(--sg-border);
}

.roster-board-header__day[b-00kawjyr5k],
.roster-board-allday__cell[b-00kawjyr5k] {
    min-width: 0;
    border-right: 1px solid var(--sg-border);
}

.roster-board-header__day:last-child[b-00kawjyr5k],
.roster-board-allday__cell:last-child[b-00kawjyr5k] {
    border-right: none;
}

.roster-board-header__day[b-00kawjyr5k] {
    padding: 12px 14px;
}

.roster-board-header__day span[b-00kawjyr5k] {
    display: block;
    color: var(--sg-muted-soft);
    font-size: 12px;
    margin-bottom: 4px;
}

.roster-board-header__day strong[b-00kawjyr5k] {
    color: var(--sg-heading);
    font-size: 14px;
    font-weight: 600;
}

.roster-board-header__day--today strong[b-00kawjyr5k] {
    color: var(--sg-accent);
}

.roster-board-allday[b-00kawjyr5k] {
    min-height: 48px;
    border-bottom: 1px solid var(--sg-border);
}

.roster-board-allday__label[b-00kawjyr5k] {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--sg-muted-soft);
    font-size: 12px;
}

.roster-board-allday__cell[b-00kawjyr5k] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 10px;
    overflow: hidden;
}

.roster-board-allday__empty[b-00kawjyr5k] {
    color: var(--sg-muted-soft);
}

.roster-board-pill[b-00kawjyr5k] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 4px 10px;
    border-radius: 999px;
    border: 1px solid transparent;
    font-size: 11px;
    font-weight: 600;
    white-space: nowrap;
}

.roster-board-pill--patrol[b-00kawjyr5k] {
    background: rgba(22,163,74,0.16);
    border-color: rgba(74,222,128,0.24);
    color: var(--sg-success);
}

.roster-board-pill--standby[b-00kawjyr5k] {
    background: rgba(37,99,235,0.16);
    border-color: rgba(96,165,250,0.28);
    color: var(--sg-accent);
}

.roster-board-pill--response[b-00kawjyr5k] {
    background: rgba(249,115,22,0.18);
    border-color: rgba(251,146,60,0.28);
    color: var(--sg-warning);
}

.roster-board-pill--control[b-00kawjyr5k] {
    background: rgba(147,51,234,0.18);
    border-color: rgba(192,132,252,0.28);
    color: #d8b4fe;
}

.roster-board-pill--custom[b-00kawjyr5k] {
    background: rgba(100,116,139,0.18);
    border-color: rgba(148,163,184,0.24);
    color: var(--sg-subtext);
}

.roster-board-body[b-00kawjyr5k] {
    flex: 1 1 auto;
    grid-template-columns: 72px minmax(0, 1fr);
    min-height: 0;
    overflow: hidden;
}

.roster-time-column[b-00kawjyr5k] {
    position: relative;
    height: 100%;
    border-right: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.roster-time-column__label[b-00kawjyr5k] {
    position: absolute;
    left: 12px;
    transform: translateY(-50%);
    color: var(--sg-muted-soft);
    font-size: 12px;
}

.roster-time-column__label:last-child[b-00kawjyr5k] {
    transform: translateY(-100%);
}

.roster-day-columns[b-00kawjyr5k] {
    display: grid;
    grid-column: 2 / -1;
    grid-template-columns: repeat(var(--roster-day-count, 7), minmax(0, 1fr));
    height: 100%;
    min-height: 0;
}

.roster-board-card--month[b-00kawjyr5k] {
    padding: 0;
}

.roster-month-board[b-00kawjyr5k] {
    display: flex;
    flex-direction: column;
    min-height: 0;
    height: 100%;
}

.roster-month-board__header[b-00kawjyr5k],
.roster-month-board__grid[b-00kawjyr5k] {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
}

.roster-month-board__header[b-00kawjyr5k] {
    background: var(--sg-card);
    border-bottom: 1px solid var(--sg-border);
}

.roster-month-board__header-cell[b-00kawjyr5k] {
    padding: 14px 12px;
    border-right: 1px solid var(--sg-border);
    color: var(--sg-muted-soft);
    font-size: 12px;
    font-weight: 600;
}

.roster-month-board__header-cell:last-child[b-00kawjyr5k] {
    border-right: none;
}

.roster-month-board__grid[b-00kawjyr5k] {
    flex: 1 1 auto;
    min-height: 0;
    grid-template-rows: repeat(6, minmax(0, 1fr));
}

.roster-month-cell[b-00kawjyr5k] {
    min-height: 0;
    padding: 10px;
    border-right: 1px solid var(--sg-border);
    border-bottom: 1px solid var(--sg-border);
    display: flex;
    flex-direction: column;
    gap: 8px;
    overflow: hidden;
}

.roster-month-cell:nth-child(7n)[b-00kawjyr5k] {
    border-right: none;
}

.roster-month-cell__date[b-00kawjyr5k] {
    color: var(--sg-heading);
    font-size: 12px;
    font-weight: 700;
}

.roster-month-cell--muted .roster-month-cell__date[b-00kawjyr5k] {
    color: var(--sg-muted-soft);
}

.roster-month-cell--today[b-00kawjyr5k] {
    background: rgba(59,130,246,0.05);
}

.roster-month-cell__items[b-00kawjyr5k] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-height: 0;
    overflow: hidden;
}

.roster-month-cell__empty[b-00kawjyr5k] {
    color: var(--sg-muted-soft);
    font-size: 13px;
}

.roster-month-entry[b-00kawjyr5k] {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 10px;
    border: 1px solid transparent;
    color: var(--sg-heading);
    font-size: 11px;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.roster-day-column[b-00kawjyr5k] {
    position: relative;
    min-height: 0;
    height: 100%;
    border-right: 1px solid var(--sg-border);
    overflow: hidden;
}

.roster-day-column:last-child[b-00kawjyr5k] {
    border-right: none;
}

.roster-day-column--today[b-00kawjyr5k] {
    background: rgba(59,130,246,0.04);
}

.roster-day-column__grid[b-00kawjyr5k] {
    position: absolute;
    inset: 0;
    background-image: repeating-linear-gradient(to bottom, var(--sg-card) 0, var(--sg-card) 1px, transparent 1px, transparent calc(100% / 24));
}

.roster-entry-card[b-00kawjyr5k] {
    position: absolute;
    min-height: 2.4rem;
    min-width: 0;
    display: grid;
    gap: 4px;
    padding: 10px 12px;
    border-radius: 12px;
    border: 1px solid transparent;
    text-align: left;
    box-shadow: 0 12px 28px rgba(0,0,0,0.18);
    overflow: hidden;
}

.roster-entry-card__title[b-00kawjyr5k] {
    color: var(--sg-heading);
    font-size: 13px;
    font-weight: 700;
}

.roster-entry-card__meta[b-00kawjyr5k] {
    color: var(--sg-heading);
    font-size: 11px;
}

.roster-entry-card--patrol[b-00kawjyr5k] {
    background: linear-gradient(180deg, rgba(21,128,61,0.42), rgba(21,128,61,0.22));
    border-color: rgba(74,222,128,0.4);
}

.roster-entry-card--standby[b-00kawjyr5k] {
    background: linear-gradient(180deg, rgba(30,64,175,0.42), rgba(30,64,175,0.22));
    border-color: rgba(96,165,250,0.4);
}

.roster-entry-card--response[b-00kawjyr5k] {
    background: linear-gradient(180deg, rgba(194,65,12,0.42), rgba(194,65,12,0.22));
    border-color: rgba(251,146,60,0.4);
}

.roster-entry-card--control[b-00kawjyr5k] {
    background: linear-gradient(180deg, rgba(109,40,217,0.42), rgba(109,40,217,0.22));
    border-color: rgba(192,132,252,0.4);
}

.roster-entry-card--custom[b-00kawjyr5k] {
    background: linear-gradient(180deg, rgba(71,85,105,0.42), rgba(71,85,105,0.22));
    border-color: rgba(148,163,184,0.38);
}

.roster-sidebar[b-00kawjyr5k] {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    gap: 18px;
}

.roster-sidebar-panel[b-00kawjyr5k] {
    display: flex;
    flex-direction: column;
    min-height: 0;
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    overflow: hidden;
}

.roster-sidebar-panel--controls[b-00kawjyr5k] {
    flex: 0 0 auto;
}

.roster-sidebar-panel--patrol[b-00kawjyr5k] {
    flex: 1 1 auto;
    min-height: 0;
}

.roster-sidebar-controls[b-00kawjyr5k] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 18px;
}

.roster-sidebar-controls__nav-row[b-00kawjyr5k] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.roster-sidebar-controls__nav-row .roster-toolbar__range[b-00kawjyr5k] {
    white-space: nowrap;
}

.roster-role-select[b-00kawjyr5k] {
    flex: 1 1 0;
    min-width: 0;
    min-height: 40px;
    border-radius: 10px;
    border: 1px solid rgba(148,163,184,0.2);
    background: var(--sg-card);
    color: var(--sg-text);
    padding: 0 10px;
    font-size: 13px;
}

.roster-summary-strip--sidebar[b-00kawjyr5k] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 0 18px 18px;
    border-bottom: none;
}

.roster-sidebar-panel__header[b-00kawjyr5k] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 18px 12px;
    border-bottom: 1px solid var(--sg-border);
}

.roster-sidebar-panel__header--stacked[b-00kawjyr5k] {
    align-items: flex-start;
}

.roster-sidebar-panel__header h2[b-00kawjyr5k] {
    margin: 0;
    color: var(--sg-heading);
    font-size: 18px;
    font-weight: 700;
}

.roster-sidebar-panel__header p[b-00kawjyr5k] {
    margin: 6px 0 0;
    color: var(--sg-muted-soft);
    font-size: 13px;
}

.roster-sidebar-list[b-00kawjyr5k] {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
    padding: 14px 18px 18px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.roster-sidebar-list__item[b-00kawjyr5k],
.roster-person-item[b-00kawjyr5k] {
    padding: 14px;
    border-radius: 14px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.roster-sidebar-list__item strong[b-00kawjyr5k],
.roster-person-item strong[b-00kawjyr5k] {
    display: block;
    color: var(--sg-heading);
    margin: 10px 0 6px;
}

.roster-sidebar-list__item p[b-00kawjyr5k],
.roster-person-item p[b-00kawjyr5k],
.roster-sidebar-list__empty[b-00kawjyr5k],
.roster-import-copy[b-00kawjyr5k] {
    margin: 0;
    color: var(--sg-muted-soft);
    font-size: 13px;
    line-height: 1.5;
}

.roster-person-item[b-00kawjyr5k] {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 12px;
}

.roster-person-item__avatar[b-00kawjyr5k] {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(59,130,246,0.24);
    color: var(--sg-heading);
    font-size: 12px;
    font-weight: 700;
}

.roster-person-item__content strong[b-00kawjyr5k] {
    margin: 0 0 4px;
}

.roster-person-item__status[b-00kawjyr5k] {
    color: var(--sg-muted-soft);
    font-size: 12px;
    white-space: nowrap;
}

.roster-person-item__status--active[b-00kawjyr5k] {
    color: var(--sg-success);
}

.roster-sidebar-list__action[b-00kawjyr5k] {
    margin-top: auto;
}

.roster-footer[b-00kawjyr5k] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 14px 22px 18px;
    border-top: 1px solid var(--sg-border);
}

.roster-footer--legend-only[b-00kawjyr5k] {
    justify-content: flex-start;
}

.roster-legend[b-00kawjyr5k] {
    display: flex;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
}

.roster-legend__item[b-00kawjyr5k] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--sg-muted-soft);
    font-size: 13px;
}

.roster-legend__dot[b-00kawjyr5k] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
}

.roster-legend__dot--patrol[b-00kawjyr5k] {
    background: #22c55e;
}

.roster-legend__dot--standby[b-00kawjyr5k] {
    background: #3b82f6;
}

.roster-legend__dot--response[b-00kawjyr5k] {
    background: #fb923c;
}

.roster-legend__dot--control[b-00kawjyr5k] {
    background: #a855f7;
}

.roster-legend__dot--custom[b-00kawjyr5k] {
    background: #94a3b8;
}

.roster-modal__content[b-00kawjyr5k] {
    border-radius: 20px;
    border: 1px solid var(--sg-border);
    background: linear-gradient(var(--sg-card), var(--sg-card));
    color: var(--sg-heading);
    box-shadow: 0 22px 60px rgba(0,0,0,0.38);
}

.roster-modal__header[b-00kawjyr5k],
.roster-modal__footer[b-00kawjyr5k] {
    border-color: var(--sg-border);
    padding: 20px 24px;
}

.roster-modal__header h5[b-00kawjyr5k] {
    margin: 0;
    font-size: 22px;
    font-weight: 700;
}

.roster-modal__header p[b-00kawjyr5k] {
    margin: 6px 0 0;
    color: var(--sg-muted-soft);
}

.roster-modal__body[b-00kawjyr5k] {
    padding: 24px;
}

.roster-form-grid[b-00kawjyr5k] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 18px;
}

.roster-form-grid__wide[b-00kawjyr5k] {
    grid-column: 1 / -1;
}

@media (max-width: 1400px) {
    .roster-layout[b-00kawjyr5k] {
        grid-template-columns: 1fr;
    }

    .roster-sidebar[b-00kawjyr5k] {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        grid-template-rows: none;
    }
}

@media (max-width: 1180px) {
    .roster-footer[b-00kawjyr5k],
    .roster-sidebar[b-00kawjyr5k] {
        flex-direction: column;
        align-items: stretch;
    }

    .roster-sidebar[b-00kawjyr5k] {
        grid-template-columns: 1fr;
        grid-template-rows: auto minmax(0, 1fr) minmax(0, 1fr);
    }

    .roster-summary-strip[b-00kawjyr5k],
    .roster-form-grid[b-00kawjyr5k] {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 900px) {
    .roster-summary-strip[b-00kawjyr5k],
    .roster-form-grid[b-00kawjyr5k],
    .roster-sidebar[b-00kawjyr5k] {
        grid-template-columns: 1fr;
    }

    .roster-sidebar-controls__picker[b-00kawjyr5k],
    .roster-sidebar-controls__filters[b-00kawjyr5k] {
        justify-content: flex-start;
    }

    .roster-sidebar-controls .roster-toolbar__range[b-00kawjyr5k] {
        text-align: left;
    }
}
/* /Components/Pages/SuburbAdminDashboard.razor.rz.scp.css */
.suburb-admin-dashboard[b-w7v0fizkzq] {
    min-height: 100%;
    height: 100%;
    padding: 18px;
    display: flex;
    flex-direction: column;
    gap: 18px;
    box-sizing: border-box;
    border-radius: 0;
    background: transparent;
    border: none;
    box-shadow: none;
}
[data-sg-theme="light"] .suburb-admin-dashboard__eyebrow[b-w7v0fizkzq] { color: var(--sg-muted-soft); }
[data-sg-theme="light"] .suburb-admin-dashboard__title[b-w7v0fizkzq] { color: var(--sg-heading); }
[data-sg-theme="light"] .suburb-admin-dashboard__subtitle[b-w7v0fizkzq],
[data-sg-theme="light"] .suburb-admin-dashboard__header-status[b-w7v0fizkzq] { color: var(--sg-subtext); }

[data-sg-theme="light"] .suburb-admin-button[b-w7v0fizkzq],
[data-sg-theme="light"] .suburb-admin-link-button[b-w7v0fizkzq] {
    border-color: var(--sg-border);
    background: var(--sg-card);
    color: var(--sg-text);
}

[data-sg-theme="light"] .suburb-admin-button:hover[b-w7v0fizkzq],
[data-sg-theme="light"] .suburb-admin-link-button:hover[b-w7v0fizkzq],
[data-sg-theme="light"] .suburb-admin-link-card:hover[b-w7v0fizkzq],
[data-sg-theme="light"] .suburb-admin-incident-item:hover[b-w7v0fizkzq] {
    color: var(--sg-text);
    box-shadow: 0 10px 24px rgba(15,23,42,0.10);
}

[data-sg-theme="light"] .suburb-admin-button--ghost[b-w7v0fizkzq] {
    background: var(--sg-panel);
}

[data-sg-theme="light"] .suburb-admin-button--primary[b-w7v0fizkzq],
[data-sg-theme="light"] .suburb-admin-link-button[b-w7v0fizkzq] {
    border-color: var(--sg-btn-border);
    background: var(--sg-btn-bg);
    color: var(--sg-btn-text);
}

[data-sg-theme="light"] .suburb-admin-stat-card[b-w7v0fizkzq] {
    border-color: var(--sg-border);
    background:
        linear-gradient(var(--sg-panel-overlay-start), var(--sg-panel-overlay-end)),
        var(--sg-bg-city-image) center/cover no-repeat;
    color: var(--sg-text);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.75), 0 10px 28px rgba(15,23,42,0.10);
}

[data-sg-theme="light"] .suburb-admin-stat-card__value[b-w7v0fizkzq],
[data-sg-theme="light"] .suburb-admin-panel__header h2[b-w7v0fizkzq],
[data-sg-theme="light"] .suburb-admin-link-card strong[b-w7v0fizkzq],
[data-sg-theme="light"] .suburb-admin-link-card[b-w7v0fizkzq],
[data-sg-theme="light"] .suburb-admin-snapshot-grid dd[b-w7v0fizkzq],
[data-sg-theme="light"] .suburb-admin-incident-item__title[b-w7v0fizkzq] {
    color: var(--sg-text);
}

[data-sg-theme="light"] .suburb-admin-stat-card__label[b-w7v0fizkzq],
[data-sg-theme="light"] .suburb-admin-stat-card__meta[b-w7v0fizkzq],
[data-sg-theme="light"] .suburb-admin-panel__header p[b-w7v0fizkzq],
[data-sg-theme="light"] .suburb-admin-link-card p[b-w7v0fizkzq],
[data-sg-theme="light"] .suburb-admin-snapshot-grid dt[b-w7v0fizkzq],
[data-sg-theme="light"] .suburb-admin-incident-item__meta[b-w7v0fizkzq],
[data-sg-theme="light"] .suburb-admin-panel--empty[b-w7v0fizkzq],
[data-sg-theme="light"] .suburb-admin-panel__empty-copy[b-w7v0fizkzq] {
    color: var(--sg-muted);
}

[data-sg-theme="light"] .suburb-admin-panel[b-w7v0fizkzq] {
    border-color: var(--sg-border);
    background:
        linear-gradient(var(--sg-panel-overlay-start), var(--sg-panel-overlay-end)),
        var(--sg-bg-city-image) center/cover no-repeat;
    box-shadow: 0 12px 30px rgba(15,23,42,0.10);
}

[data-sg-theme="light"] .suburb-admin-panel__header[b-w7v0fizkzq] {
    border-bottom-color: var(--sg-border);
}

[data-sg-theme="light"] .suburb-admin-link-card[b-w7v0fizkzq] {
    border-color: var(--sg-border);
    background: rgba(255,255,255,0.70);
}

[data-sg-theme="light"] .suburb-admin-link-card__icon[b-w7v0fizkzq] {
    color: #ffffff;
}

.suburb-admin-dashboard--loading[b-w7v0fizkzq] {
    justify-content: center;
}

.suburb-admin-dashboard__topbar[b-w7v0fizkzq] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin: 0;
}

.suburb-admin-dashboard__eyebrow[b-w7v0fizkzq] {
    color: var(--sg-muted-soft);
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 11px;
    margin-bottom: 8px;
}

.suburb-admin-dashboard__title-row[b-w7v0fizkzq] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 8px;
}

.suburb-admin-dashboard__title[b-w7v0fizkzq] {
    margin: 0;
    font-size: clamp(28px, 3vw, 38px);
    font-weight: 700;
    color: var(--sg-heading);
}

.suburb-admin-dashboard__subtitle[b-w7v0fizkzq] {
    margin: 0;
    color: var(--sg-subtext);
    font-size: 15px;
    max-width: 760px;
}

.suburb-admin-dashboard__header-status[b-w7v0fizkzq] {
    margin-top: -6px;
    color: var(--sg-muted);
    font-size: 12px;
}

.suburb-admin-dashboard__actions[b-w7v0fizkzq] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 12px;
}

.suburb-admin-button[b-w7v0fizkzq],
.suburb-admin-link-button[b-w7v0fizkzq] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    padding: 0 16px;
    border-radius: 12px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    color: var(--sg-text);
    text-decoration: none;
    transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

.suburb-admin-button:hover[b-w7v0fizkzq],
.suburb-admin-link-button:hover[b-w7v0fizkzq],
.suburb-admin-link-card:hover[b-w7v0fizkzq],
.suburb-admin-incident-item:hover[b-w7v0fizkzq] {
    transform: translateY(-1px);
    box-shadow: 0 12px 28px rgba(15,23,42,0.28);
    color: var(--sg-heading);
}

.suburb-admin-button--ghost[b-w7v0fizkzq] {
    background: linear-gradient(180deg, var(--sg-card), var(--sg-card));
}

.suburb-admin-button--primary[b-w7v0fizkzq],
.suburb-admin-link-button[b-w7v0fizkzq] {
    border-color: color-mix(in srgb, var(--sg-accent) 42%, transparent);
    background: linear-gradient(180deg, color-mix(in srgb, var(--sg-accent) 78%, transparent), color-mix(in srgb, var(--sg-accent) 72%, transparent));
    color: #fff;
}

.suburb-admin-status-pill[b-w7v0fizkzq] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    padding: 0 12px;
    border-radius: 999px;
    border: 1px solid transparent;
    font-size: 13px;
    font-weight: 600;
}

.suburb-admin-status-pill--green[b-w7v0fizkzq] {
    color: #d1fae5;
    background: rgba(34,197,94,0.24);
    border-color: rgba(74,222,128,0.34);
}

.suburb-admin-status-pill--amber[b-w7v0fizkzq] {
    color: var(--sg-warning);
    background: rgba(245,158,11,0.2);
    border-color: rgba(251,191,36,0.3);
}

.suburb-admin-stats-grid[b-w7v0fizkzq] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
    margin: 0;
}

.suburb-admin-stat-card[b-w7v0fizkzq] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 20px 22px;
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background:
        linear-gradient(var(--sg-card), var(--sg-card)),
        url('/images/bg-city.jpg') center/cover no-repeat;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 18px 48px rgba(0,0,0,0.32);
    color: var(--sg-text);
    text-decoration: none;
    transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

.suburb-admin-stat-card--clickable[b-w7v0fizkzq] {
    cursor: pointer;
}

.suburb-admin-stat-card--clickable:hover[b-w7v0fizkzq] {
    transform: translateY(-1px);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.1), 0 12px 28px rgba(15,23,42,0.42);
    border-color: var(--sg-border);
    color: var(--sg-heading);
}

.suburb-admin-stat-card__content[b-w7v0fizkzq] {
    min-width: 0;
}

.suburb-admin-stat-card__content--with-action[b-w7v0fizkzq] {
    flex: 1 1 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.suburb-admin-stat-card__details[b-w7v0fizkzq] {
    min-width: 0;
}

.suburb-admin-stat-card__icon[b-w7v0fizkzq] {
    width: 46px;
    height: 46px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: var(--sg-heading);
    background: linear-gradient(135deg, rgba(59,130,246,0.95), rgba(96,165,250,0.35));
}

.suburb-admin-stat-card--green .suburb-admin-stat-card__icon[b-w7v0fizkzq] {
    background: linear-gradient(135deg, rgba(34,197,94,0.95), rgba(74,222,128,0.35));
}

.suburb-admin-stat-card--orange .suburb-admin-stat-card__icon[b-w7v0fizkzq] {
    background: linear-gradient(135deg, rgba(249,115,22,0.95), rgba(251,146,60,0.35));
}

.suburb-admin-stat-card--red .suburb-admin-stat-card__icon[b-w7v0fizkzq] {
    background: linear-gradient(135deg, rgba(239,68,68,0.95), rgba(248,113,113,0.35));
}

.suburb-admin-stat-card__value[b-w7v0fizkzq] {
    font-size: clamp(28px, 2.8vw, 42px);
    line-height: 1;
    font-weight: 700;
    color: var(--sg-heading);
    margin-bottom: 6px;
}

.suburb-admin-stat-card__label[b-w7v0fizkzq] {
    color: var(--sg-subtext);
    font-size: 15px;
}

.suburb-admin-stat-card__meta[b-w7v0fizkzq] {
    margin-top: 6px;
    color: var(--sg-eyebrow, rgba(191,219,254,0.82));
    font-size: 12px;
}

.suburb-admin-stat-card__action[b-w7v0fizkzq] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    min-height: 34px;
    padding: 0 12px;
    border-radius: 10px;
    border: 1px solid rgba(96,165,250,0.42);
    background: linear-gradient(180deg, color-mix(in srgb, var(--sg-accent) 78%, transparent), color-mix(in srgb, var(--sg-accent) 72%, transparent));
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
}

.suburb-admin-stat-card__action:hover[b-w7v0fizkzq] {
    color: var(--sg-heading);
}

.suburb-admin-dashboard__content-grid[b-w7v0fizkzq] {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(320px, 0.85fr);
    gap: 18px;
    flex: 1 1 auto;
    height: 100%;
    min-height: 0;
    align-items: stretch;
}

.suburb-admin-dashboard__main-column[b-w7v0fizkzq],
.suburb-admin-dashboard__side-column[b-w7v0fizkzq] {
    display: flex;
    flex-direction: column;
    gap: 18px;
    min-height: 0;
}

.suburb-admin-dashboard__main-column[b-w7v0fizkzq] {
    flex: 1 1 auto;
}

.suburb-admin-dashboard__side-column[b-w7v0fizkzq] {
    flex: 0 0 auto;
}

.suburb-admin-panel[b-w7v0fizkzq] {
    display: flex;
    flex-direction: column;
    min-height: 0;
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background:
        linear-gradient(var(--sg-card), var(--sg-card)),
        url('/images/bg-city.jpg') center/cover no-repeat;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 20px 48px rgba(0,0,0,0.28);
    backdrop-filter: blur(8px);
}

.suburb-admin-panel--operations[b-w7v0fizkzq],
.suburb-admin-panel--map[b-w7v0fizkzq] {
    flex: 1 1 auto;
}

.suburb-admin-panel--empty[b-w7v0fizkzq],
.suburb-admin-panel__empty-copy[b-w7v0fizkzq] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px;
    color: var(--sg-muted-soft);
}

.suburb-admin-panel__header[b-w7v0fizkzq] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 18px 22px 14px;
    border-bottom: 1px solid var(--sg-border);
}

.suburb-admin-panel__header h2[b-w7v0fizkzq] {
    margin: 0;
    font-size: 20px;
    font-weight: 700;
    color: var(--sg-heading);
}

.suburb-admin-panel__header p[b-w7v0fizkzq] {
    margin: 6px 0 0;
    color: var(--sg-muted-soft);
    font-size: 14px;
}

.suburb-admin-link-grid[b-w7v0fizkzq] {
    flex: 1 1 auto;
    min-height: 0;
    padding: 18px 22px 22px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: minmax(0, 1fr);
    gap: 14px;
}

.suburb-admin-link-card[b-w7v0fizkzq] {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 14px;
    align-items: start;
    padding: 16px;
    border-radius: 16px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    color: var(--sg-text);
    text-decoration: none;
    transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

.suburb-admin-link-card__icon[b-w7v0fizkzq] {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, rgba(59,130,246,0.9), rgba(96,165,250,0.3));
    color: var(--sg-heading);
    font-size: 18px;
}

.suburb-admin-link-card strong[b-w7v0fizkzq] {
    display: block;
    margin-bottom: 6px;
    color: var(--sg-heading);
    font-size: 15px;
}

.suburb-admin-link-card p[b-w7v0fizkzq] {
    margin: 0;
    color: rgba(226,232,240,0.78);
    line-height: 1.55;
    font-size: 13px;
}

.suburb-admin-link-card span[b-w7v0fizkzq] {
    color: var(--sg-eyebrow, rgba(191,219,254,0.88));
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
}

.suburb-admin-incident-list[b-w7v0fizkzq] {
    padding: 12px 22px 22px;
    display: grid;
    gap: 12px;
}

.suburb-admin-incident-item[b-w7v0fizkzq] {
    padding: 14px 16px;
    border-radius: 14px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    color: var(--sg-text);
    text-decoration: none;
}

.suburb-admin-incident-item strong[b-w7v0fizkzq] {
    color: var(--sg-heading);
    font-size: 15px;
}

.suburb-admin-incident-item p[b-w7v0fizkzq] {
    margin: 4px 0 0;
    color: var(--sg-muted-soft);
    font-size: 13px;
}

.suburb-admin-incident-item span[b-w7v0fizkzq] {
    color: var(--sg-eyebrow, rgba(191,219,254,0.92));
    font-size: 12px;
    font-weight: 600;
}

.suburb-admin-map[b-w7v0fizkzq] {
    flex: 1 1 auto;
    min-height: 0;
    padding: 18px 18px 12px;
}

.suburb-admin-map__surface[b-w7v0fizkzq] {
    position: relative;
    height: 100%;
    min-height: 250px;
    border-radius: 16px;
    overflow: hidden;
    border: 1px solid var(--sg-border);
    background:
        radial-gradient(circle at 65% 20%, rgba(255,255,255,0.3), transparent 24%),
        linear-gradient(110deg, rgba(235,245,255,0.95) 0%, rgba(216,235,248,0.82) 34%, rgba(91,135,187,0.58) 35%, rgba(16,46,92,0.92) 100%);
}

.suburb-admin-map__canvas[b-w7v0fizkzq] {
    width: 100%;
    height: 100%;
    min-height: 250px;
}

.suburb-admin-map__hint[b-w7v0fizkzq] {
    position: absolute;
    left: 18px;
    bottom: 18px;
    max-width: 320px;
    padding: 14px 16px;
    border-radius: 14px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    color: rgba(241,245,249,0.92);
    display: grid;
    gap: 6px;
}

.suburb-admin-map__footer[b-w7v0fizkzq] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 22px 22px;
    color: var(--sg-subtext);
    font-size: 14px;
}

.suburb-admin-definition-list[b-w7v0fizkzq] {
    margin: 0;
    padding: 18px 22px 22px;
    display: grid;
    gap: 14px;
}

.suburb-admin-definition-list div[b-w7v0fizkzq] {
    display: flex;
    justify-content: space-between;
    gap: 16px;
}

.suburb-admin-definition-list dt[b-w7v0fizkzq] {
    color: var(--sg-muted-soft);
    font-size: 14px;
    font-weight: 500;
}

.suburb-admin-definition-list dd[b-w7v0fizkzq] {
    margin: 0;
    color: var(--sg-heading);
    font-size: 14px;
    text-align: right;
}

.suburb-admin-text-status--green[b-w7v0fizkzq] {
    color: #5eead4 !important;
}

.suburb-admin-text-status--amber[b-w7v0fizkzq] {
    color: var(--sg-warn-text) !important;
}

@media (max-width: 1280px) {
    .suburb-admin-dashboard__content-grid[b-w7v0fizkzq] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 960px) {
    .suburb-admin-stats-grid[b-w7v0fizkzq],
    .suburb-admin-link-grid[b-w7v0fizkzq] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 840px) {
    .suburb-admin-dashboard[b-w7v0fizkzq] {
        padding: 18px;
    }

    .suburb-admin-dashboard__topbar[b-w7v0fizkzq],
    .suburb-admin-panel__header[b-w7v0fizkzq],
    .suburb-admin-incident-item[b-w7v0fizkzq],
    .suburb-admin-definition-list div[b-w7v0fizkzq] {
        flex-direction: column;
        align-items: stretch;
    }

    .suburb-admin-dashboard__actions[b-w7v0fizkzq] {
        justify-content: stretch;
    }

    .suburb-admin-button[b-w7v0fizkzq],
    .suburb-admin-link-button[b-w7v0fizkzq] {
        width: 100%;
    }

    .suburb-admin-stats-grid[b-w7v0fizkzq],
    .suburb-admin-link-grid[b-w7v0fizkzq] {
        grid-template-columns: 1fr;
    }

    .suburb-admin-stat-card__content--with-action[b-w7v0fizkzq] {
        align-items: flex-start;
        flex-direction: column;
    }

    .suburb-admin-link-card[b-w7v0fizkzq] {
        grid-template-columns: auto 1fr;
    }

    .suburb-admin-link-card span[b-w7v0fizkzq],
    .suburb-admin-definition-list dd[b-w7v0fizkzq] {
        text-align: left;
    }
}
/* /Components/Pages/Suburbs.razor.rz.scp.css */
.suburb-list-page[b-h0hg1gbrhs] {
    flex: 1 1 auto;
    min-height: 0;
    height: 100%;
    max-height: 100%;
    width: 100%;
    padding: 6px;
    display: flex;
    flex-direction: column;
    gap: var(--sg-card-gap);
    box-sizing: border-box;
    overflow: hidden;
    min-width: 0;
    border-radius: 0;
    background: transparent;
    border: none;
    box-shadow: none;
}

.suburb-list-page__topbar[b-h0hg1gbrhs] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    margin-bottom: 22px;
}

.suburb-list-page__eyebrow[b-h0hg1gbrhs] {
    color: var(--sg-muted-soft);
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 11px;
    margin-bottom: 8px;
}

.suburb-list-page__title[b-h0hg1gbrhs] {
    margin: 0 0 8px;
    font-size: clamp(28px, 3vw, 38px);
    font-weight: 700;
    color: var(--sg-heading);
}

.suburb-list-page__subtitle[b-h0hg1gbrhs] {
    margin: 0;
    color: var(--sg-subtext);
    font-size: 15px;
}

.suburb-list-page__chips[b-h0hg1gbrhs] {
    display: flex;
    align-items: stretch;
    gap: 12px;
    flex-wrap: wrap;
}

.suburb-list-page__province-filter[b-h0hg1gbrhs] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px 10px;
    border-radius: 14px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.suburb-list-page__province-filter-label[b-h0hg1gbrhs] {
    color: var(--sg-subtext);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.suburb-list-page__province-filter-select[b-h0hg1gbrhs] {
    min-width: 160px;
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    background: var(--sg-card);
    color: var(--sg-heading);
    padding: 8px 12px;
}

.suburb-list-chip[b-h0hg1gbrhs] {
    min-width: 110px;
    padding: 14px 16px;
    border-radius: 16px;
    border: 1px solid var(--sg-border);
    background: linear-gradient(var(--sg-card), var(--sg-card));
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 18px 48px rgba(0,0,0,0.22);
}

.suburb-list-chip__label[b-h0hg1gbrhs] {
    display: block;
    margin-bottom: 6px;
    color: var(--sg-muted-soft);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.suburb-list-chip strong[b-h0hg1gbrhs] {
    font-size: 26px;
    color: var(--sg-heading);
}

.suburb-list-card[b-h0hg1gbrhs] {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    min-height: 0;
    width: 100%;
    max-height: 100%;
    overflow: hidden;
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background:
        linear-gradient(var(--sg-card), var(--sg-card)),
        url('/images/bg-city.jpg') center/cover no-repeat;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 20px 48px rgba(0,0,0,0.28);
    backdrop-filter: blur(8px);
}

.suburb-list-card--empty[b-h0hg1gbrhs],
.suburb-list-empty-state[b-h0hg1gbrhs] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px;
    color: var(--sg-muted-soft);
}

.suburb-list-card__header[b-h0hg1gbrhs] {
    flex: 0 0 auto;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    padding: 20px 22px 16px;
    border-bottom: 1px solid var(--sg-border);
}

.suburb-list-card__header-actions[b-h0hg1gbrhs] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 16px;
    flex-wrap: wrap;
}

.suburb-list-card__header h2[b-h0hg1gbrhs] {
    margin: 0 0 6px;
    font-size: 20px;
    font-weight: 700;
    color: var(--sg-heading);
}

.suburb-list-card__header p[b-h0hg1gbrhs] {
    margin: 0;
    color: var(--sg-muted-soft);
    font-size: 14px;
}

.suburb-list-clear-button[b-h0hg1gbrhs],
.suburb-list-action-button[b-h0hg1gbrhs] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 104px;
    padding: 9px 16px;
    border-radius: 10px;
    border: 1px solid rgba(96,165,250,0.45);
    color: #fff;
    background: linear-gradient(180deg, color-mix(in srgb, var(--sg-accent) 78%, transparent), color-mix(in srgb, var(--sg-accent) 72%, transparent));
    text-decoration: none;
    font-size: 14px;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.suburb-list-clear-button:hover[b-h0hg1gbrhs],
.suburb-list-action-button:hover[b-h0hg1gbrhs] {
    transform: translateY(-1px);
    box-shadow: 0 10px 20px rgba(37,99,235,0.24);
    color: var(--sg-heading);
}

.suburb-list-filters[b-h0hg1gbrhs] {
    flex: 0 0 auto;
    display: grid;
    grid-template-columns: minmax(260px, 2fr) repeat(3, minmax(0, 1fr));
    gap: 16px;
    padding: 18px 22px 20px;
    border-bottom: 1px solid var(--sg-border);
}

.suburb-list-filter[b-h0hg1gbrhs] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.suburb-list-filter span[b-h0hg1gbrhs] {
    color: var(--sg-muted-soft);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.suburb-list-filter input[b-h0hg1gbrhs],
.suburb-list-filter select[b-h0hg1gbrhs] {
    width: 100%;
    min-height: 44px;
    padding: 0 14px;
    border-radius: 12px;
    border: 1px solid rgba(148,163,184,0.24);
    background: var(--sg-card);
    color: var(--sg-heading);
    outline: none;
}

.suburb-list-filter input:focus[b-h0hg1gbrhs],
.suburb-list-filter select:focus[b-h0hg1gbrhs] {
    border-color: rgba(96,165,250,0.72);
    box-shadow: 0 0 0 3px rgba(59,130,246,0.18);
}

.suburb-list-input-wrap[b-h0hg1gbrhs] {
    position: relative;
}

.suburb-list-input-wrap i[b-h0hg1gbrhs] {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--sg-muted-soft);
}

.suburb-list-filter--search input[b-h0hg1gbrhs] {
    padding-left: 40px;
}

.suburb-list-table-wrap[b-h0hg1gbrhs] {
    flex: 1 1 auto;
    min-height: 0;
    max-height: 100%;
    overflow: auto;
    overscroll-behavior: contain;
}

.suburb-list-table[b-h0hg1gbrhs] {
    width: 100%;
    border-collapse: collapse;
}

.suburb-list-table th[b-h0hg1gbrhs],
.suburb-list-table td[b-h0hg1gbrhs] {
    padding: 16px 22px;
    border-bottom: 1px solid var(--sg-border);
    text-align: left;
}

.suburb-list-table th[b-h0hg1gbrhs] {
    position: sticky;
    top: 0;
    z-index: 1;
    background: rgba(8,15,30,0.96);
    color: rgba(226,232,240,0.68);
    font-size: 13px;
    font-weight: 500;
}

.suburb-list-table td[b-h0hg1gbrhs] {
    color: var(--sg-text);
    font-size: 15px;
}

.suburb-list-table tbody tr:last-child td[b-h0hg1gbrhs] {
    border-bottom: none;
}

.suburb-list-table__row--pending[b-h0hg1gbrhs] {
    background: rgba(245,158,11,0.08);
}

.suburb-list-table__name[b-h0hg1gbrhs] {
    font-weight: 600;
    color: var(--sg-heading);
}

.suburb-list-table__slug[b-h0hg1gbrhs] {
    color: var(--sg-eyebrow, rgba(191,219,254,0.92));
}

.suburb-list-table__action[b-h0hg1gbrhs] {
    text-align: right;
}

.suburb-list-status[b-h0hg1gbrhs] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 96px;
    padding: 6px 12px;
    border-radius: 10px;
    font-size: 14px;
    line-height: 1;
    border: 1px solid transparent;
}

.suburb-list-status--green[b-h0hg1gbrhs] {
    color: #D1FAE5;
    background: rgba(34,197,94,0.28);
    border-color: rgba(74,222,128,0.38);
}

.suburb-list-status--amber[b-h0hg1gbrhs] {
    color: var(--sg-warning);
    background: rgba(245,158,11,0.22);
    border-color: rgba(251,191,36,0.34);
}

.suburb-list-status--gold[b-h0hg1gbrhs] {
    color: var(--sg-warning);
    background: rgba(217,119,6,0.24);
    border-color: rgba(245,158,11,0.32);
}

.suburb-list-plan-pill[b-h0hg1gbrhs] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 128px;
    padding: 6px 12px;
    border-radius: 999px;
    color: #fef3c7;
    background: rgba(245,158,11,0.24);
    border: 1px solid rgba(251,191,36,0.35);
    font-size: 13px;
    font-weight: 600;
}

@media (max-width: 1200px) {
    .suburb-list-page__topbar[b-h0hg1gbrhs] {
        flex-direction: column;
    }

    .suburb-list-filters[b-h0hg1gbrhs] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 840px) {
    .suburb-list-page[b-h0hg1gbrhs] {
        padding: 6px;
    }

    .suburb-list-card__header[b-h0hg1gbrhs] {
        flex-direction: column;
        align-items: stretch;
    }

    .suburb-list-card__header-actions[b-h0hg1gbrhs] {
        justify-content: flex-start;
    }

    .suburb-list-filters[b-h0hg1gbrhs] {
        grid-template-columns: 1fr;
    }

    .suburb-list-table th[b-h0hg1gbrhs],
    .suburb-list-table td[b-h0hg1gbrhs] {
        padding: 14px 16px;
    }
}
/* /Components/Pages/TeamMemberSetup.razor.rz.scp.css */
.team-member-setup-frame[b-rx1kjb2g9d] {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 24px;
    background:
        radial-gradient(circle at 20% 12%, rgba(59,130,246,0.16), transparent 26%),
        radial-gradient(circle at 85% 20%, rgba(16,185,129,0.14), transparent 24%),
        linear-gradient(var(--sg-card), var(--sg-card)),
        url('/images/bg-city.jpg') center/cover no-repeat;
}

.team-member-setup-topbar[b-rx1kjb2g9d] {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    margin-bottom: 18px;
}

.team-member-setup-home[b-rx1kjb2g9d] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 16px;
    border-radius: 12px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    color: var(--sg-text);
    text-decoration: none;
}

.team-member-setup-shell[b-rx1kjb2g9d] {
    width: 100%;
    display: flex;
    justify-content: center;
}

.team-member-setup-panel[b-rx1kjb2g9d] {
    width: 100%;
    max-width: 900px;
    border-radius: 24px;
    border: 1px solid var(--sg-border);
    background: linear-gradient(var(--sg-card), var(--sg-card));
    box-shadow: 0 30px 80px rgba(0,0,0,0.35), inset 0 1px 0 rgba(255,255,255,0.06);
    backdrop-filter: blur(10px);
    padding: 32px;
}

.team-member-setup-header[b-rx1kjb2g9d] {
    margin-bottom: 28px;
}

.team-member-setup-eyebrow[b-rx1kjb2g9d],
.team-member-setup-complete__eyebrow[b-rx1kjb2g9d] {
    color: var(--sg-eyebrow, rgba(191,219,254,0.88));
    text-transform: uppercase;
    letter-spacing: 0.16em;
    font-size: 11px;
    margin-bottom: 10px;
}

.team-member-setup-header h1[b-rx1kjb2g9d],
.team-member-setup-complete h2[b-rx1kjb2g9d] {
    margin: 0 0 12px;
    font-size: clamp(30px, 4vw, 44px);
    line-height: 1.05;
    color: var(--sg-heading);
}

.team-member-setup-header p[b-rx1kjb2g9d],
.team-member-setup-loading[b-rx1kjb2g9d],
.team-member-setup-complete p[b-rx1kjb2g9d] {
    margin: 0;
    color: var(--sg-subtext);
    font-size: 16px;
    line-height: 1.7;
}

.team-member-setup-steps[b-rx1kjb2g9d] {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 24px;
}

.team-member-setup-step[b-rx1kjb2g9d] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 8px 14px;
    border-radius: 999px;
    background: var(--sg-card);
    border: 1px solid var(--sg-border);
    color: rgba(226,232,240,0.78);
    font-size: 13px;
    font-weight: 600;
}

.team-member-setup-step--active[b-rx1kjb2g9d] {
    background: linear-gradient(180deg, color-mix(in srgb, var(--sg-accent) 82%, transparent), color-mix(in srgb, var(--sg-accent) 74%, transparent));
    border-color: color-mix(in srgb, var(--sg-accent) 42%, transparent);
    color: #fff;
    box-shadow: 0 12px 24px rgba(37,99,235,0.22);
}

.team-member-setup-summary-grid[b-rx1kjb2g9d] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 12px;
}

.team-member-setup-summary-grid article[b-rx1kjb2g9d] {
    padding: 18px;
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.team-member-setup-summary-grid strong[b-rx1kjb2g9d] {
    display: block;
    margin-bottom: 8px;
    color: var(--sg-heading);
    font-size: 15px;
}

.team-member-setup-summary-grid p[b-rx1kjb2g9d] {
    margin: 0;
    color: rgba(226,232,240,0.78);
    line-height: 1.6;
    font-size: 14px;
}

.team-member-setup-actions[b-rx1kjb2g9d] {
    margin-top: 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.team-member-setup-validation[b-rx1kjb2g9d] {
    color: var(--sg-danger);
    font-size: 14px;
    margin-top: -4px;
}

@media (max-width: 900px) {
    .team-member-setup-summary-grid[b-rx1kjb2g9d] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .team-member-setup-frame[b-rx1kjb2g9d] {
        padding: 16px;
    }

    .team-member-setup-panel[b-rx1kjb2g9d] {
        padding: 22px 18px;
    }

    .team-member-setup-actions[b-rx1kjb2g9d] {
        flex-direction: column;
        align-items: stretch;
    }

    .team-member-setup-actions .btn[b-rx1kjb2g9d] {
        width: 100%;
    }
}
/* /Components/Pages/TenantManagerDashboard.razor.rz.scp.css */
.tenant-manager-dashboard[b-awopoqny03] {
    min-height: 100%;
    height: 100%;
    padding: 18px;
    display: flex;
    flex-direction: column;
    gap: 18px;
    box-sizing: border-box;
    border-radius: 0;
    background: transparent;
    border: none;
    box-shadow: none;
}

.tenant-manager-dashboard--loading[b-awopoqny03] {
    justify-content: center;
}

.tenant-manager-dashboard__topbar[b-awopoqny03] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin: 0;
}

.tenant-manager-dashboard__eyebrow[b-awopoqny03] {
    color: var(--sg-muted-soft);
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 11px;
    margin-bottom: 8px;
}

.tenant-manager-dashboard__title[b-awopoqny03] {
    margin: 0 0 10px;
    font-size: clamp(28px, 3vw, 38px);
    font-weight: 700;
    color: var(--sg-heading);
}

.tenant-manager-dashboard__subtitle[b-awopoqny03] {
    margin: 0;
    color: var(--sg-subtext);
    font-size: 15px;
    max-width: 760px;
}

.tenant-manager-dashboard__actions[b-awopoqny03] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 12px;
}

.tenant-manager-button[b-awopoqny03],
.tenant-manager-link-button[b-awopoqny03] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    padding: 0 16px;
    border-radius: 12px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    color: var(--sg-text);
    text-decoration: none;
    transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

.tenant-manager-button:hover[b-awopoqny03],
.tenant-manager-link-button:hover[b-awopoqny03],
.tenant-manager-link-card:hover[b-awopoqny03],
.tenant-manager-incident-item:hover[b-awopoqny03] {
    transform: translateY(-1px);
    box-shadow: 0 12px 28px rgba(15,23,42,0.28);
    color: var(--sg-heading);
}

.tenant-manager-button--ghost[b-awopoqny03] {
    background: linear-gradient(180deg, var(--sg-card), var(--sg-card));
}

.tenant-manager-button--primary[b-awopoqny03],
.tenant-manager-link-button[b-awopoqny03] {
    border-color: color-mix(in srgb, var(--sg-accent) 42%, transparent);
    background: linear-gradient(180deg, color-mix(in srgb, var(--sg-accent) 78%, transparent), color-mix(in srgb, var(--sg-accent) 72%, transparent));
    color: #fff;
}

.tenant-manager-stats-grid[b-awopoqny03] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
    margin: 0;
}

.tenant-manager-stat-card[b-awopoqny03] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px 18px;
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background: linear-gradient(var(--sg-card), var(--sg-card));
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 18px 48px rgba(0,0,0,0.32);
}

.tenant-manager-stat-card__icon[b-awopoqny03] {
    width: 46px;
    height: 46px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: var(--sg-heading);
    background: linear-gradient(135deg, rgba(59,130,246,0.95), rgba(96,165,250,0.35));
}

.tenant-manager-stat-card--green .tenant-manager-stat-card__icon[b-awopoqny03] {
    background: linear-gradient(135deg, rgba(34,197,94,0.95), rgba(74,222,128,0.35));
}

.tenant-manager-stat-card--orange .tenant-manager-stat-card__icon[b-awopoqny03] {
    background: linear-gradient(135deg, rgba(249,115,22,0.95), rgba(251,146,60,0.35));
}

.tenant-manager-stat-card--red .tenant-manager-stat-card__icon[b-awopoqny03] {
    background: linear-gradient(135deg, rgba(239,68,68,0.95), rgba(248,113,113,0.35));
}

.tenant-manager-stat-card__value[b-awopoqny03] {
    font-size: clamp(22px, 2.1vw, 32px);
    line-height: 1;
    font-weight: 700;
    color: var(--sg-heading);
    margin-bottom: 6px;
}

.tenant-manager-stat-card__label[b-awopoqny03] {
    color: var(--sg-subtext);
    font-size: 15px;
}

.tenant-manager-stat-card__meta[b-awopoqny03] {
    margin-top: 6px;
    color: var(--sg-eyebrow, rgba(191,219,254,0.82));
    font-size: 12px;
}

.tenant-manager-dashboard__content-grid[b-awopoqny03] {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(320px, 0.8fr);
    gap: 18px;
    flex: 1 1 auto;
    height: 100%;
    min-height: 0;
    align-items: stretch;
}

.tenant-manager-dashboard__main-column[b-awopoqny03],
.tenant-manager-dashboard__side-column[b-awopoqny03] {
    display: flex;
    flex-direction: column;
    gap: 18px;
    min-height: 0;
}

.tenant-manager-panel--operations[b-awopoqny03] {
    flex: 1 1 auto;
}

.tenant-manager-panel--queue[b-awopoqny03] {
    flex: 0 0 245px;
}

.tenant-manager-panel--focus[b-awopoqny03],
.tenant-manager-panel--boundary[b-awopoqny03] {
    flex: 1 1 0;
}

.tenant-manager-panel[b-awopoqny03] {
    display: flex;
    flex-direction: column;
    min-height: 0;
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background: linear-gradient(var(--sg-card), var(--sg-card));
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 20px 48px rgba(0,0,0,0.28);
    backdrop-filter: blur(8px);
}

.tenant-manager-panel--empty[b-awopoqny03],
.tenant-manager-panel__empty-copy[b-awopoqny03] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px;
    color: var(--sg-muted-soft);
}

.tenant-manager-panel__header[b-awopoqny03] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 18px 22px 14px;
    border-bottom: 1px solid var(--sg-border);
}

.tenant-manager-panel__header h2[b-awopoqny03] {
    margin: 0;
    font-size: 20px;
    font-weight: 700;
    color: var(--sg-heading);
}

.tenant-manager-panel__header p[b-awopoqny03] {
    margin: 6px 0 0;
    color: var(--sg-muted-soft);
    font-size: 14px;
}

.tenant-manager-link-grid[b-awopoqny03] {
    flex: 1 1 auto;
    min-height: 0;
    padding: 18px 22px 22px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: minmax(0, 1fr);
    gap: 14px;
}

.tenant-manager-link-card[b-awopoqny03] {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 14px;
    align-items: start;
    padding: 16px;
    border-radius: 16px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    color: var(--sg-text);
    text-decoration: none;
}

.tenant-manager-link-card--disabled[b-awopoqny03] {
    opacity: 0.68;
}

.tenant-manager-link-card__icon[b-awopoqny03] {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    color: var(--sg-heading);
    background: linear-gradient(135deg, rgba(59,130,246,0.95), rgba(96,165,250,0.25));
}

.tenant-manager-link-card strong[b-awopoqny03] {
    display: block;
    font-size: 15px;
    color: var(--sg-heading);
    margin-bottom: 6px;
}

.tenant-manager-link-card p[b-awopoqny03] {
    margin: 0;
    color: var(--sg-muted-soft);
    font-size: 13px;
    line-height: 1.5;
}

.tenant-manager-link-card span[b-awopoqny03] {
    color: var(--sg-eyebrow, rgba(191,219,254,0.82));
    font-size: 12px;
    white-space: nowrap;
}

.tenant-manager-incident-list[b-awopoqny03],
.tenant-manager-focus-list[b-awopoqny03],
.tenant-manager-boundary-list[b-awopoqny03] {
    padding: 18px 22px 22px;
    min-height: 0;
    overflow: auto;
}

.tenant-manager-incident-list[b-awopoqny03] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.tenant-manager-incident-item[b-awopoqny03] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 16px;
    border-radius: 14px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    color: var(--sg-text);
    text-decoration: none;
}

.tenant-manager-incident-item strong[b-awopoqny03] {
    display: block;
    color: var(--sg-heading);
    margin-bottom: 4px;
}

.tenant-manager-incident-item p[b-awopoqny03] {
    margin: 0;
    color: var(--sg-muted-soft);
    font-size: 13px;
}

.tenant-manager-incident-item span[b-awopoqny03] {
    color: var(--sg-eyebrow, rgba(191,219,254,0.82));
    font-size: 12px;
    white-space: nowrap;
}

.tenant-manager-focus-list[b-awopoqny03] {
    display: grid;
    gap: 14px;
}

.tenant-manager-focus-list article[b-awopoqny03] {
    padding: 14px 16px;
    border-radius: 14px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.tenant-manager-focus-list strong[b-awopoqny03] {
    display: block;
    margin-bottom: 6px;
    color: var(--sg-heading);
}

.tenant-manager-focus-list p[b-awopoqny03] {
    margin: 0;
    color: var(--sg-muted-soft);
    font-size: 14px;
    line-height: 1.5;
}

.tenant-manager-boundary-list[b-awopoqny03] {
    list-style: none;
    margin: 0;
    display: grid;
    gap: 12px;
}

.tenant-manager-boundary-list li[b-awopoqny03] {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 10px;
    align-items: start;
    color: var(--sg-subtext);
    font-size: 14px;
}

.tenant-manager-boundary-list i[b-awopoqny03] {
    color: rgba(96,165,250,0.82);
}

@media (max-width: 1200px) {
    .tenant-manager-stats-grid[b-awopoqny03] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .tenant-manager-dashboard__content-grid[b-awopoqny03] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 900px) {
    .tenant-manager-dashboard__topbar[b-awopoqny03] {
        flex-direction: column;
    }

    .tenant-manager-link-grid[b-awopoqny03] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .tenant-manager-stats-grid[b-awopoqny03] {
        grid-template-columns: 1fr;
    }

    .tenant-manager-dashboard[b-awopoqny03] {
        padding: 10px;
    }
}
/* /Components/Pages/TenantNuances.razor.rz.scp.css */
.nuances-page[b-ui2koqv7a8] {
    display: flex;
    flex-direction: column;
    gap: 0;
    flex: 1;
    min-height: 0;
}

.nuances-card[b-ui2koqv7a8] {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 0;
    overflow: hidden;
}

/* Type filter chips in header */
.nuances-chips[b-ui2koqv7a8] {
    display: flex;
    gap: 6px;
    align-items: center;
    flex-wrap: wrap;
}

.inc-pill--active[b-ui2koqv7a8] {
    background: rgba(96,165,250,.25);
    color: var(--sg-accent);
    border-color: rgba(96,165,250,.5);
}

/* Type colour chips */
.nuance-type-location[b-ui2koqv7a8] { background: rgba(74,222,128,.15); color: var(--sg-online-text); border-color: rgba(74,222,128,.3); }
.nuance-type-person[b-ui2koqv7a8]   { background: rgba(251,191,36,.15); color: var(--sg-warn-text); border-color: rgba(251,191,36,.3); }
.nuance-type-rule[b-ui2koqv7a8]     { background: rgba(167,139,250,.15); color: var(--sg-purple-text); border-color: rgba(167,139,250,.3); }

.nuance-phrase[b-ui2koqv7a8] { font-size: 13px; color: var(--sg-text); }
.nuance-desc[b-ui2koqv7a8]   { font-size: 11px; color: var(--sg-muted); margin-top: 2px; }
.nuance-behaviour[b-ui2koqv7a8] { font-size: 12px; color: var(--sg-muted); max-width: 320px; }
.nuance-actions[b-ui2koqv7a8] { display: flex; gap: 6px; }

/* ── Drawer ── */
.nuance-overlay[b-ui2koqv7a8] {
    position: fixed; inset: 0;
    background: rgba(0,0,0,.45);
    z-index: 1040;
}

.nuance-drawer[b-ui2koqv7a8] {
    position: fixed;
    right: 0; top: 0; bottom: 0;
    width: 440px;
    max-width: 100vw;
    z-index: 1050;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    border-radius: 0 !important;
    padding: 20px 22px;
    gap: 0;
}

.nuance-drawer__head[b-ui2koqv7a8] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 18px;
}

.nuance-drawer__title[b-ui2koqv7a8] {
    font-size: 16px;
    font-weight: 700;
    color: var(--sg-text);
    margin: 0;
}

.nuance-form[b-ui2koqv7a8] { display: flex; flex-direction: column; gap: 12px; }

.nuance-form__row[b-ui2koqv7a8] {
    display: grid;
    grid-template-columns: 130px 1fr;
    align-items: start;
    gap: 8px;
}

.nuance-form__row label[b-ui2koqv7a8] { font-size: 12px; color: var(--sg-muted); padding-top: 6px; }

.nuance-form__section[b-ui2koqv7a8] {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--sg-muted);
    border-top: 1px solid var(--sg-border);
    padding-top: 10px;
    margin-top: 4px;
}

.nuance-form__checks[b-ui2koqv7a8] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding-left: 138px;
}

.nuance-form__checks label[b-ui2koqv7a8] {
    font-size: 13px;
    color: var(--sg-text);
    display: flex;
    align-items: center;
    gap: 7px;
    cursor: pointer;
}

.nuance-form__footer[b-ui2koqv7a8] {
    display: flex;
    gap: 8px;
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid var(--sg-border);
}

/* Type selector tabs */
.nuance-type-tabs[b-ui2koqv7a8] { display: flex; gap: 6px; flex-wrap: wrap; }

.nuance-type-tab[b-ui2koqv7a8] {
    background: transparent;
    border: 1px solid var(--sg-border);
    border-radius: 6px;
    padding: 4px 12px;
    font-size: 12px;
    color: var(--sg-muted);
    cursor: pointer;
    transition: all .15s;
}

.nuance-type-tab:hover[b-ui2koqv7a8] { background: var(--sg-card); color: var(--sg-text); }

.nuance-type-tab--active[b-ui2koqv7a8] {
    background: rgba(96,165,250,.18);
    border-color: rgba(96,165,250,.45);
    color: var(--sg-accent);
    font-weight: 600;
}
/* /Components/Pages/TenantSetup.razor.rz.scp.css */
.community-setup-frame[b-8uzg5q4epd] {
    margin: 0;
    min-height: 100vh;
    border-radius: 0;
}

.community-setup-shell[b-8uzg5q4epd] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px 24px 72px;
}

.community-setup-panel[b-8uzg5q4epd] {
    width: 100%;
    max-width: 980px;
    border-radius: 24px;
    border: 1px solid var(--sg-border);
    background: linear-gradient(var(--sg-card), var(--sg-card));
    box-shadow: 0 30px 80px rgba(0,0,0,0.35), inset 0 1px 0 rgba(255,255,255,0.06);
    backdrop-filter: blur(10px);
    padding: 32px;
}

.community-setup-header[b-8uzg5q4epd] {
    margin-bottom: 28px;
}

.community-setup-eyebrow[b-8uzg5q4epd] {
    color: var(--sg-eyebrow, rgba(191,219,254,0.88));
    text-transform: uppercase;
    letter-spacing: 0.16em;
    font-size: 11px;
    margin-bottom: 10px;
}

.community-setup-header h1[b-8uzg5q4epd] {
    margin: 0 0 12px;
    font-size: clamp(32px, 4vw, 48px);
    line-height: 1.05;
    color: var(--sg-heading);
}

.community-setup-header p[b-8uzg5q4epd],
.community-setup-loading[b-8uzg5q4epd] {
    margin: 0;
    color: var(--sg-subtext);
    font-size: 16px;
    line-height: 1.7;
}

.community-setup-steps[b-8uzg5q4epd] {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 24px;
}

.community-setup-step[b-8uzg5q4epd] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 8px 14px;
    border-radius: 999px;
    background: var(--sg-card);
    border: 1px solid var(--sg-border);
    color: rgba(226,232,240,0.78);
    font-size: 13px;
    font-weight: 600;
}

.community-setup-step--active[b-8uzg5q4epd] {
    background: linear-gradient(180deg, color-mix(in srgb, var(--sg-accent) 82%, transparent), color-mix(in srgb, var(--sg-accent) 74%, transparent));
    border-color: color-mix(in srgb, var(--sg-accent) 42%, transparent);
    color: #fff;
    box-shadow: 0 12px 24px rgba(37,99,235,0.22);
}

.community-setup-intro-grid[b-8uzg5q4epd],
.community-setup-complete__grid[b-8uzg5q4epd] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.community-setup-intro-card[b-8uzg5q4epd],
.community-setup-complete__grid article[b-8uzg5q4epd] {
    padding: 18px 18px 16px;
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.community-setup-intro-card strong[b-8uzg5q4epd],
.community-setup-complete__grid strong[b-8uzg5q4epd] {
    display: block;
    margin-bottom: 8px;
    color: var(--sg-heading);
    font-size: 15px;
}

.community-setup-intro-card p[b-8uzg5q4epd],
.community-setup-complete__grid p[b-8uzg5q4epd] {
    margin: 0;
    color: rgba(226,232,240,0.78);
    line-height: 1.6;
    font-size: 14px;
}

.community-setup-summary[b-8uzg5q4epd] {
    margin-top: 22px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.community-setup-summary--review[b-8uzg5q4epd] {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.community-setup-summary > div[b-8uzg5q4epd] {
    padding: 14px 16px;
    border-radius: 16px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.community-setup-summary span[b-8uzg5q4epd] {
    display: block;
    margin-bottom: 6px;
    color: var(--sg-eyebrow, rgba(191,219,254,0.82));
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.community-setup-summary strong[b-8uzg5q4epd] {
    color: var(--sg-heading);
    font-size: 15px;
}

.community-setup-map[b-8uzg5q4epd] {
    height: 240px;
    border-radius: 18px;
    overflow: hidden;
    border: 1px solid rgba(148,163,184,0.2);
}

.community-setup-location-grid[b-8uzg5q4epd] {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.75fr);
    gap: 18px;
    align-items: start;
}

.community-setup-location-form[b-8uzg5q4epd] {
    margin: 0;
}

.community-setup-location-map[b-8uzg5q4epd] {
    padding: 16px;
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.community-setup-location-map__actions[b-8uzg5q4epd] {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 12px;
}

.community-setup-actions[b-8uzg5q4epd] {
    margin-top: 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.community-setup-validation[b-8uzg5q4epd] {
    color: var(--sg-danger);
    font-size: 14px;
    margin-top: -4px;
}

.community-setup-complete[b-8uzg5q4epd] {
    padding: 12px 0 8px;
}

.community-setup-complete__eyebrow[b-8uzg5q4epd] {
    color: rgba(34,197,94,0.9);
    text-transform: uppercase;
    letter-spacing: 0.16em;
    font-size: 11px;
    margin-bottom: 10px;
}

.community-setup-complete h2[b-8uzg5q4epd] {
    margin: 0 0 12px;
    color: var(--sg-heading);
    font-size: clamp(28px, 3vw, 40px);
}

.community-setup-complete > p[b-8uzg5q4epd] {
    margin: 0 0 24px;
    color: rgba(226,232,240,0.82);
    line-height: 1.7;
    font-size: 16px;
}

@media (max-width: 900px) {
    .community-setup-panel[b-8uzg5q4epd] {
        padding: 24px;
    }

    .community-setup-intro-grid[b-8uzg5q4epd],
    .community-setup-complete__grid[b-8uzg5q4epd],
    .community-setup-summary[b-8uzg5q4epd],
    .community-setup-summary--review[b-8uzg5q4epd],
    .community-setup-location-grid[b-8uzg5q4epd] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .community-setup-shell[b-8uzg5q4epd] {
        padding: 8px 16px 48px;
    }

    .community-setup-panel[b-8uzg5q4epd] {
        padding: 22px 18px;
    }

    .community-setup-actions[b-8uzg5q4epd] {
        flex-direction: column;
        align-items: stretch;
    }

    .community-setup-actions .btn[b-8uzg5q4epd] {
        width: 100%;
    }
}
/* /Components/Shared/AlertDetailModal.razor.rz.scp.css */
.alert-detail-modal[b-r454naiobf] {
    background: var(--sg-surface, var(--sg-panel));
    border: 1px solid var(--sg-border);
    border-radius: 18px;
    width: 520px;
    max-width: 96vw;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: 0 24px 64px rgba(0,0,0,0.7);
}

/* Header */
.alert-detail-modal__header[b-r454naiobf] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 20px;
    flex-shrink: 0;
}

.alert-detail-modal__header--sos[b-r454naiobf],
.alert-detail-modal__header--panic[b-r454naiobf],
.alert-detail-modal__header--medicalemergency[b-r454naiobf] {
    background: rgba(239,68,68,0.15);
    border-bottom: 1px solid rgba(239,68,68,0.3);
}

.alert-detail-modal__header--backup[b-r454naiobf] {
    background: rgba(59,130,246,0.15);
    border-bottom: 1px solid rgba(59,130,246,0.3);
}

.alert-detail-modal__type-icon[b-r454naiobf] { font-size: 18px; color: #ef4444; }
.alert-detail-modal__header--backup .alert-detail-modal__type-icon[b-r454naiobf] { color: var(--sg-accent); }
.alert-detail-modal__type-label[b-r454naiobf] { font-size: 15px; font-weight: 700; color: var(--sg-heading); flex: 1; letter-spacing: 0.5px; }

/* Body */
.alert-detail-modal__body[b-r454naiobf] {
    flex: 1 1 auto;
    overflow-y: auto;
    padding: 16px 20px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

/* Person */
.alert-detail-modal__person[b-r454naiobf] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.alert-detail-modal__photo[b-r454naiobf] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
}

.alert-detail-modal__avatar[b-r454naiobf] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: rgba(239,68,68,0.2);
    color: #ef4444;
    font-size: 16px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.alert-detail-modal__name[b-r454naiobf] { font-size: 16px; font-weight: 700; color: var(--sg-heading); }
.alert-detail-modal__sub[b-r454naiobf]  { font-size: 12px; color: var(--sg-muted-soft); margin-top: 2px; }

/* Detail rows */
.alert-detail-modal__details[b-r454naiobf] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.alert-detail-modal__row[b-r454naiobf] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 13px;
    color: var(--sg-subtext);
}

.alert-detail-modal__row i[b-r454naiobf] { color: var(--sg-muted-soft); margin-top: 2px; flex-shrink: 0; }
.alert-detail-modal__row a[b-r454naiobf] { color: var(--sg-accent); text-decoration: none; }
.alert-detail-modal__row a:hover[b-r454naiobf] { text-decoration: underline; }

/* Map */
.alert-detail-modal__map[b-r454naiobf] {
    width: 100%;
    height: 240px;
    border-radius: 12px;
    overflow: hidden;
    flex-shrink: 0;
    background: var(--sg-card);
}

.alert-detail-modal__map--no-key[b-r454naiobf] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: var(--sg-muted-soft);
    font-size: 13px;
}

/* Footer */
.alert-detail-modal__footer[b-r454naiobf] {
    display: flex;
    justify-content: flex-end;
    padding: 12px 20px;
    border-top: 1px solid var(--sg-border);
    flex-shrink: 0;
}
/* /Components/Shared/CrimeStatsGraphPanel.razor.rz.scp.css */
.crime-graph-card[b-cwpsng7le6] {
    display: flex;
    flex-direction: column;
    min-height: 0;
    height: 100%;
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background: linear-gradient(var(--sg-card), var(--sg-card));
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 18px 40px rgba(0,0,0,0.2);
    overflow: hidden;
}

.crime-graph-card__header[b-cwpsng7le6],
.crime-graph-card__footer[b-cwpsng7le6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 18px;
}

.crime-graph-card__header[b-cwpsng7le6] {
    border-bottom: 1px solid var(--sg-border);
}

.crime-graph-card__header h3[b-cwpsng7le6] {
    margin: 0;
    color: var(--sg-heading);
    font-size: 18px;
    font-weight: 700;
}

.crime-graph-card__header p[b-cwpsng7le6] {
    margin: 6px 0 0;
    color: var(--sg-muted-soft);
    font-size: 13px;
}

.crime-graph-card__badge[b-cwpsng7le6] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 0 12px;
    border-radius: 10px;
    border: 1px solid rgba(148,163,184,0.22);
    background: var(--sg-card);
    color: var(--sg-text);
    font-size: 12px;
    white-space: nowrap;
}

.crime-graph-card__body[b-cwpsng7le6] {
    flex: 1 1 auto;
    min-height: 0;
    padding: 16px 18px;
    display: flex;
    overflow: hidden;
}

.crime-graph-card__footer[b-cwpsng7le6] {
    border-top: 1px solid var(--sg-border);
    justify-content: flex-end;
}

.crime-graph-card__footer a[b-cwpsng7le6] {
    color: var(--sg-accent);
    text-decoration: none;
    font-size: 13px;
    font-weight: 600;
}

.crime-line-chart[b-cwpsng7le6],
.crime-comparison-chart[b-cwpsng7le6],
.crime-map-wireframe[b-cwpsng7le6],
.crime-heatmap[b-cwpsng7le6],
.crime-donut-layout[b-cwpsng7le6] {
    width: 100%;
    height: 100%;
    min-height: 0;
}

.crime-line-chart[b-cwpsng7le6] {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.crime-line-chart__legend[b-cwpsng7le6] {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    color: var(--sg-muted-soft);
    font-size: 12px;
}

.crime-line-chart__legend span[b-cwpsng7le6] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.crime-line-chart__legend i[b-cwpsng7le6] {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    display: inline-block;
}

.crime-line-chart__svg[b-cwpsng7le6] {
    flex: 1 1 auto;
    width: 100%;
    min-height: 0;
}

.crime-line-chart__svg line[b-cwpsng7le6] {
    stroke: rgba(255,255,255,0.08);
    stroke-width: 0.5;
}

.crime-line-chart__svg polyline[b-cwpsng7le6] {
    fill: none;
    stroke-width: 1.4;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.crime-line-chart__axis[b-cwpsng7le6] {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 8px;
    color: var(--sg-muted-soft);
    font-size: 11px;
}

.crime-donut-layout[b-cwpsng7le6] {
    display: grid;
    grid-template-columns: minmax(180px, 0.9fr) minmax(0, 1fr);
    gap: 18px;
    align-items: center;
}

.crime-donut-chart[b-cwpsng7le6] {
    width: 100%;
    aspect-ratio: 1;
    border-radius: 50%;
    background: conic-gradient(#2563eb 0 34%, #65a30d 34% 58%, #7c3aed 58% 74%, #f97316 74% 84%, #ef4444 84% 92%, #64748b 92% 100%);
    position: relative;
}

.crime-donut-chart[b-cwpsng7le6]::after {
    content: "";
    position: absolute;
    inset: 28%;
    border-radius: 50%;
    background: var(--sg-card);
    border: 1px solid var(--sg-border);
}

.crime-donut-chart__center[b-cwpsng7le6] {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    pointer-events: none;
}

.crime-donut-chart__center strong[b-cwpsng7le6] {
    color: var(--sg-heading);
    font-size: 30px;
    line-height: 1;
}

.crime-donut-chart__center span[b-cwpsng7le6] {
    color: var(--sg-muted-soft);
    font-size: 12px;
}

.crime-donut-chart__legend-list[b-cwpsng7le6] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.crime-donut-chart__legend-item[b-cwpsng7le6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    color: var(--sg-muted-soft);
    font-size: 13px;
}

.crime-donut-chart__legend-item span[b-cwpsng7le6] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.crime-donut-chart__legend-item i[b-cwpsng7le6] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    display: inline-block;
}

.crime-donut-chart__legend-item strong[b-cwpsng7le6] {
    color: var(--sg-heading);
    font-weight: 600;
}

.crime-heatmap[b-cwpsng7le6] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.crime-heatmap__grid[b-cwpsng7le6] {
    flex: 1 1 auto;
    min-height: 0;
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 6px;
}

.crime-heatmap__cell[b-cwpsng7le6] {
    border-radius: 6px;
    background: linear-gradient(180deg, rgba(37,99,235,0.8), rgba(59,130,246,0.22));
    border: 1px solid rgba(96,165,250,0.16);
    min-height: 1.6rem;
}

.crime-heatmap__axis[b-cwpsng7le6] {
    display: grid;
    gap: 8px;
    color: var(--sg-muted-soft);
    font-size: 11px;
}

.crime-heatmap__axis--x[b-cwpsng7le6] {
    grid-template-columns: repeat(7, minmax(0, 1fr));
}

.crime-heatmap__scale[b-cwpsng7le6] {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--sg-muted-soft);
    font-size: 11px;
}

.crime-heatmap__scale div[b-cwpsng7le6],
.crime-map-wireframe__legend div[b-cwpsng7le6] {
    flex: 1 1 auto;
    height: 6px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(37,99,235,0.24), rgba(37,99,235,0.92));
}

.crime-comparison-chart[b-cwpsng7le6] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 14px;
}

.crime-comparison-chart__row[b-cwpsng7le6] {
    display: grid;
    grid-template-columns: minmax(74px, 0.4fr) minmax(0, 1fr);
    gap: 12px;
    align-items: center;
}

.crime-comparison-chart__row span[b-cwpsng7le6] {
    color: var(--sg-muted-soft);
    font-size: 13px;
}

.crime-comparison-chart__bar-wrap[b-cwpsng7le6] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
}

.crime-comparison-chart__bar[b-cwpsng7le6] {
    height: 14px;
    border-radius: 999px;
}

.crime-comparison-chart__bar-wrap strong[b-cwpsng7le6] {
    color: var(--sg-heading);
    font-size: 12px;
}

.crime-map-wireframe[b-cwpsng7le6] {
    position: relative;
    min-height: 0;
}

.crime-map-wireframe__base[b-cwpsng7le6] {
    position: absolute;
    inset: 0 0 2rem;
    border-radius: 18px;
    background:
        radial-gradient(circle at 20% 30%, rgba(59,130,246,0.24), transparent 20%),
        radial-gradient(circle at 55% 40%, rgba(59,130,246,0.18), transparent 18%),
        radial-gradient(circle at 72% 65%, rgba(59,130,246,0.22), transparent 20%),
        linear-gradient(var(--sg-card), var(--sg-card)),
        var(--sg-card);
    border: 1px solid var(--sg-border);
}

.crime-map-wireframe__hotspot[b-cwpsng7le6] {
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(96,165,250,0.92), rgba(37,99,235,0.1));
    box-shadow: 0 0 0 10px rgba(59,130,246,0.08);
}

.crime-map-wireframe__legend[b-cwpsng7le6] {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--sg-muted-soft);
    font-size: 11px;
}

.crime-graph-card__placeholder[b-cwpsng7le6] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--sg-muted-soft);
    border: 1px dashed rgba(148,163,184,0.26);
    border-radius: 16px;
}

@media (max-width: 1200px) {
    .crime-donut-layout[b-cwpsng7le6] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Shared/IncidentCommandModal.razor.rz.scp.css */
.icmd-backdrop[b-jhzdfg8uzb] {
    position: fixed;
    inset: 0;
    /* Above every other modal (SgModal/detail = 1200, SOS overlay = 200): a new Critical incident's
       command popup must ALWAYS surface on top — never hidden behind a popup the operator left open. */
    z-index: 1300;
    background: rgba(2, 6, 23, 0.62);
    backdrop-filter: blur(3px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2vh 2vw;
}

.icmd[b-jhzdfg8uzb] {
    width: min(1240px, 96vw);
    height: min(92vh, 880px);
    display: flex;
    flex-direction: column;
    background: #0b1626;
    border: 2px solid #1f3d66;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6);
    color: #e6f0ff;
}

.icmd--high[b-jhzdfg8uzb] { border-color: #f59e0b; }
.icmd--critical[b-jhzdfg8uzb] { border-color: #ef4444; }

.icmd__head[b-jhzdfg8uzb] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 18px;
    background: #11233f;
    border-bottom: 1px solid #1f3d66;
    flex: 0 0 auto;
}
.icmd--high .icmd__head[b-jhzdfg8uzb] { background: #3a2a0c; }
.icmd--critical .icmd__head[b-jhzdfg8uzb] { background: #3a1414; }
.icmd__head > .bi[b-jhzdfg8uzb] { font-size: 24px; color: var(--sg-danger); }
.icmd__head-text[b-jhzdfg8uzb] { flex: 1; min-width: 0; }
.icmd__title[b-jhzdfg8uzb] { font-size: 19px; font-weight: 700; }
.icmd__sev[b-jhzdfg8uzb] { font-weight: 600; opacity: 0.85; }
.icmd__sub[b-jhzdfg8uzb] { font-size: 12px; color: #9db2cf; margin-top: 2px; }
.icmd__source[b-jhzdfg8uzb] {
    font-size: 12px; font-weight: 600; color: #cfe0f5;
    border: 1px solid #2b4a72; border-radius: 8px; padding: 4px 10px; white-space: nowrap;
}
.icmd__x[b-jhzdfg8uzb] { background: none; border: none; color: #9db2cf; font-size: 18px; cursor: pointer; padding: 4px 8px; }
.icmd__x:hover[b-jhzdfg8uzb] { color: #fff; }

.icmd__body[b-jhzdfg8uzb] {
    flex: 1 1 auto;
    min-height: 0;
    display: grid;
    grid-template-columns: 1.1fr 1fr 1fr;   /* three real columns */
    gap: 12px;
    padding: 12px;
    background: #0c1a30;
    overflow: hidden;                        /* the columns themselves never scroll */
}

/* Each column is a flex stack that fills the body height and never scrolls — its CARDS scroll. */
.icmd__col[b-jhzdfg8uzb] { display: flex; flex-direction: column; gap: 12px; min-height: 0; overflow: hidden; }

/* Map GROWS to fill the slack freed by the compact reporter + shorter description. */
.icmd__mapwrap[b-jhzdfg8uzb] { position: relative; flex: 1 1 auto; min-height: 170px; }
.icmd__map[b-jhzdfg8uzb] { width: 100%; height: 100%; min-height: 170px; background: #0a1322; border-radius: 10px; }

/* Severity dropdown reads in its severity colour (closed + open). */
.icmd__cat.icmd__sev[b-jhzdfg8uzb] { font-weight: 700; }
.icmd__cat.icmd__sev--low[b-jhzdfg8uzb]      { color: var(--sg-accent); }
.icmd__cat.icmd__sev--medium[b-jhzdfg8uzb]   { color: var(--sg-warn-text); }
.icmd__cat.icmd__sev--high[b-jhzdfg8uzb]     { color: var(--sg-orange-text); }
.icmd__cat.icmd__sev--critical[b-jhzdfg8uzb] { color: var(--sg-err-text); }
.icmd__maplegend[b-jhzdfg8uzb] {
    position: absolute; left: 10px; bottom: 10px;
    display: flex; gap: 14px; font-size: 11px; color: #cfe0f5;
    background: rgba(11, 22, 38, 0.85); border-radius: 8px; padding: 5px 10px;
}

.icmd__panel[b-jhzdfg8uzb] { background: #0f2138; border: 1px solid #1f3d66; border-radius: 12px; padding: 10px 12px; display: flex; flex-direction: column; min-height: 0; flex: 0 0 auto; }
.icmd__panel--grow[b-jhzdfg8uzb] { flex: 1 1 0; }          /* cards that share leftover column height */
.icmd__panel--secco[b-jhzdfg8uzb] { border-color: #2b6a4a; background: #0e2a20; }
.icmd__panel-h[b-jhzdfg8uzb] { font-size: 11px; letter-spacing: 0.06em; text-transform: uppercase; color: #8da6c6; margin-bottom: 8px; display: flex; align-items: center; gap: 8px; flex: 0 0 auto; }
.icmd__scroll[b-jhzdfg8uzb] { overflow-y: auto; min-height: 0; flex: 1 1 auto; }
.icmd__empty[b-jhzdfg8uzb] { font-size: 13px; color: #8da6c6; }

/* sub-section headers inside a scrolling card */
.icmd__subhead[b-jhzdfg8uzb] { font-size: 10.5px; letter-spacing: 0.05em; text-transform: uppercase; color: #6f8aac; margin: 8px 0 2px; }

/* security companies tick-list */
.icmd__tick[b-jhzdfg8uzb] { display: flex; align-items: center; gap: 8px; padding: 7px 6px; border-radius: 8px; cursor: pointer; border: 1px solid transparent; }
.icmd__tick:hover[b-jhzdfg8uzb] { background: #11253b; }
.icmd__tick--on[b-jhzdfg8uzb] { background: #13233f; border-color: #2b4a72; }
.icmd__tick-logo[b-jhzdfg8uzb] { width: 38px; height: 38px; border-radius: 8px; object-fit: contain; background: #fff; padding: 2px; flex: 0 0 auto; }
.icmd__tick-name[b-jhzdfg8uzb] { flex: 1; min-width: 0; font-weight: 600; font-size: 13px; }

.icmd__save-hint[b-jhzdfg8uzb] { font-size: 10px; font-weight: 600; color: #f59e0b; text-transform: none; letter-spacing: 0; }

/* media grid + add */
.icmd__addmedia[b-jhzdfg8uzb] { margin-left: auto; display: inline-flex; align-items: center; gap: 5px; cursor: pointer; font-size: 11px; font-weight: 600; color: var(--sg-accent); border: 1px solid #2b4a72; border-radius: 8px; padding: 3px 8px; text-transform: none; letter-spacing: 0; }
.icmd__addmedia:hover[b-jhzdfg8uzb] { background: #13233f; }
.icmd__media-grid[b-jhzdfg8uzb] { display: grid; grid-template-columns: repeat(auto-fill, minmax(82px, 1fr)); gap: 6px; }
.icmd__media-thumb[b-jhzdfg8uzb] { position: relative; display: block; aspect-ratio: 1; border-radius: 8px; overflow: hidden; background: #0a1322; }
.icmd__media-thumb img[b-jhzdfg8uzb], .icmd__media-thumb video[b-jhzdfg8uzb] { width: 100%; height: 100%; object-fit: cover; }
.icmd__media-play[b-jhzdfg8uzb] { position: absolute; inset: 0; margin: auto; width: 26px; height: 26px; font-size: 26px; color: var(--sg-heading); text-shadow: 0 1px 4px rgba(0,0,0,.6); }

.icmd__resp[b-jhzdfg8uzb] { display: flex; align-items: center; gap: 10px; padding: 7px 0; border-bottom: 1px solid #16304f; }
.icmd__resp:last-child[b-jhzdfg8uzb] { border-bottom: none; }
.icmd__resp > .bi[b-jhzdfg8uzb] { font-size: 10px; }
.icmd__resp-body[b-jhzdfg8uzb] { flex: 1; min-width: 0; }
.icmd__resp-name[b-jhzdfg8uzb] { font-size: 14px; font-weight: 600; }
.icmd__resp-meta[b-jhzdfg8uzb] { font-size: 12px; color: #9db2cf; }
.icmd__icon[b-jhzdfg8uzb] {
    background: #13233f; border: 1px solid #2b4a72; color: var(--sg-accent);
    width: 32px; height: 32px; border-radius: 8px; cursor: pointer; flex: 0 0 auto;
    display: inline-flex; align-items: center; justify-content: center; line-height: 1; text-decoration: none;
}
.icmd__icon:hover[b-jhzdfg8uzb] { background: #1c3454; }

/* Small right-aligned Save in a card title (Description / Location) — auto-save still runs on blur. */
.icmd__title-save[b-jhzdfg8uzb] {
    margin-left: auto; display: inline-flex; align-items: center; gap: 4px;
    background: #13233f; border: 1px solid #2b4a72; color: var(--sg-accent);
    border-radius: 7px; padding: 2px 8px; font-size: 11px; font-weight: 600;
    text-transform: none; letter-spacing: 0; cursor: pointer;
}
.icmd__title-save:hover:not(:disabled)[b-jhzdfg8uzb] { background: #1c3454; }
.icmd__title-save:disabled[b-jhzdfg8uzb] { opacity: .4; cursor: default; }

.icmd__reporter[b-jhzdfg8uzb] { display: flex; gap: 10px; }
.icmd__avatar[b-jhzdfg8uzb] { width: 46px; height: 46px; border-radius: 50%; object-fit: cover; flex: 0 0 auto; }
.icmd__avatar--initial[b-jhzdfg8uzb] { background: #1c3454; display: flex; align-items: center; justify-content: center; font-weight: 700; color: #cfe0f5; }
.icmd__reporter-body[b-jhzdfg8uzb] { flex: 1; min-width: 0; }
.icmd__tag[b-jhzdfg8uzb] { font-size: 11px; color: #9db2cf; font-weight: 400; }
.icmd__msg[b-jhzdfg8uzb] { font-size: 12px; color: #c0d2e8; margin-top: 3px; }
.icmd__reporter-actions[b-jhzdfg8uzb] { display: flex; flex-direction: column; gap: 6px; }

.icmd__secco-h[b-jhzdfg8uzb] { font-size: 13px; font-weight: 600; color: #b8f0d4; margin-bottom: 8px; }
.icmd__secco-actions[b-jhzdfg8uzb] { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.icmd__btn-sm[b-jhzdfg8uzb] { background: #12402c; border: 1px solid #2b6a4a; color: #b8f0d4; border-radius: 8px; padding: 6px 10px; font-size: 12px; cursor: pointer; }
.icmd__btn-sm:hover[b-jhzdfg8uzb] { background: #185639; }
.icmd__hint[b-jhzdfg8uzb] { font-size: 11px; color: #8da6c6; }

.icmd__actions[b-jhzdfg8uzb] {
    flex: 0 0 auto;
    border-top: 1px solid #1f3d66;
    background: #0c1a30;
    padding: 12px 14px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.icmd__act-left[b-jhzdfg8uzb] { display: flex; align-items: center; gap: 8px; }
.icmd__catlabel[b-jhzdfg8uzb] { font-size: 11px; text-transform: uppercase; letter-spacing: 0.06em; color: #8da6c6; }
.icmd__cat[b-jhzdfg8uzb] { background: #0f2138; border: 1px solid #2b4a72; color: #e6f0ff; border-radius: 8px; padding: 6px 10px; min-width: 200px; }

.icmd__desc[b-jhzdfg8uzb] {
    width: 100%; resize: vertical; min-height: 64px;
    background: #0c1a30; border: 1px solid #2b4a72; color: #e6f0ff;
    border-radius: 8px; padding: 8px 10px; font-size: 13px; line-height: 1.4; margin-bottom: 8px;
}
.icmd__desc:focus[b-jhzdfg8uzb] { outline: none; border-color: #3b82f6; }

/* One row, equal columns — every action fits; captions wrap to 2 lines instead of spilling onto
   a second row (so Dismiss never lands alone below). */
.icmd__act-grid[b-jhzdfg8uzb] { display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; gap: 5px; }
.icmd__act[b-jhzdfg8uzb] {
    display: flex; flex-direction: row; align-items: center; justify-content: center; gap: 5px;
    background: #13233f; border: 1px solid #2b4a72; color: #e6f0ff;
    border-radius: 8px; padding: 6px 6px; font-size: 11.5px; font-weight: 600; cursor: pointer;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: 1.1; text-align: center; min-height: 34px;
}
.icmd__act i[b-jhzdfg8uzb] { font-size: 13px; }
.icmd__act:hover[b-jhzdfg8uzb] { background: #1c3454; }
.icmd__act--primary[b-jhzdfg8uzb] { background: #b91c1c; border-color: #ef4444; color: #fff; }
.icmd__act--primary:hover[b-jhzdfg8uzb] { background: #dc2626; }
.icmd__act--ghost[b-jhzdfg8uzb] { background: transparent; color: #9db2cf; }

.icmd__services[b-jhzdfg8uzb] { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.icmd__chip[b-jhzdfg8uzb] { background: #0f2138; border: 1px solid #2b4a72; color: #cfe0f5; border-radius: 8px; padding: 6px 12px; font-size: 13px; cursor: pointer; }
.icmd__chip:hover[b-jhzdfg8uzb] { background: #1c3454; }

@keyframes icmdPulse-b-jhzdfg8uzb {
    0%, 100% { box-shadow: 0 0 0 0 rgba(248, 113, 113, 0); }
    50% { box-shadow: 0 0 0 4px rgba(248, 113, 113, 0.55); }
}
.icmd--flash[b-jhzdfg8uzb] { animation: icmdPulse-b-jhzdfg8uzb 1.1s ease-in-out infinite; }

@media (max-width: 1000px) {
    /* Narrow: stack the three columns and let the whole body scroll instead. */
    .icmd__body[b-jhzdfg8uzb] { grid-template-columns: 1fr; overflow-y: auto; }
    .icmd__col[b-jhzdfg8uzb] { overflow: visible; }
    .icmd__panel--grow[b-jhzdfg8uzb] { flex: 0 0 auto; }
    .icmd__scroll[b-jhzdfg8uzb] { overflow: visible; }
}
/* /Components/Shared/NearbyCamerasPanel.razor.rz.scp.css */
.ncam[b-x4qxaey0eo] {
    margin-top: 12px;
    border: 1px solid var(--sg-card-border, #1d3a5f);
    border-radius: 10px;
    padding: 10px 12px;
    background: rgba(8, 24, 42, 0.4);
}

.ncam__head[b-x4qxaey0eo] {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--sg-accent-light2, #9dc8ff);
    margin-bottom: 8px;
}

.ncam__grid[b-x4qxaey0eo] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 8px;
}

.ncam__tile[b-x4qxaey0eo] {
    position: relative;
    aspect-ratio: 16 / 9;
    border-radius: 8px;
    overflow: hidden;
    background: #05101f;
    border: 1px solid #16314f;
}

.ncam__tile--off[b-x4qxaey0eo] { border-color: #5a2330; }

.ncam__video[b-x4qxaey0eo] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    background: #05101f;
}

.ncam__bar[b-x4qxaey0eo] {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 5px 8px;
    background: linear-gradient(to top, rgba(2, 9, 20, 0.92), rgba(2, 9, 20, 0));
}

.ncam__name[b-x4qxaey0eo] {
    font-size: 0.74rem;
    color: #eef4ff;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ncam__dist[b-x4qxaey0eo] {
    margin-left: auto;
    font-size: 0.68rem;
    color: #8da1bf;
}

.ncam__dot[b-x4qxaey0eo] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    flex: 0 0 auto;
}

.ncam__dot--on[b-x4qxaey0eo] { background: #2ec27e; box-shadow: 0 0 5px #2ec27e; }
.ncam__dot--off[b-x4qxaey0eo] { background: #6b7280; }
/* /Components/Shared/NotificationBanner.razor.rz.scp.css */
/* ─── Bell button ──────────────────────────────────────────────── */
.sg-notification-banner[b-d6djtgbbt0] {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.sg-hub-dot[b-d6djtgbbt0] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
}

.sg-hub-dot.connected[b-d6djtgbbt0] { background: #22c55e; }
.sg-hub-dot.disconnected[b-d6djtgbbt0] { background: #64748b; animation: sg-pulse-b-d6djtgbbt0 1.5s infinite; }

.sg-bell-btn[b-d6djtgbbt0] {
    position: relative;
    background: none;
    border: none;
    color: var(--sg-text, var(--sg-heading));
    font-size: 18px;
    cursor: pointer;
    padding: 4px 8px;
}

.sg-bell-badge[b-d6djtgbbt0] {
    position: absolute;
    top: -2px;
    right: 0;
    background: #ef4444;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    padding: 2px 5px;
    border-radius: 10px;
    min-width: 16px;
    text-align: center;
}

/* ─── Dropdown panel ──────────────────────────────────────────── */
.sg-notification-panel[b-d6djtgbbt0] {
    position: absolute;
    top: 100%;
    right: 0;
    width: 360px;
    max-height: 420px;
    background: var(--sg-card, var(--sg-card));
    border: 1px solid var(--sg-border, var(--sg-border));
    border-radius: 12px;
    box-shadow: 0 12px 40px rgba(0,0,0,0.5);
    z-index: 1000;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.sg-notification-panel__header[b-d6djtgbbt0] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 16px;
    border-bottom: 1px solid var(--sg-border, var(--sg-border));
    font-weight: 600;
    font-size: 14px;
    color: var(--sg-text, var(--sg-heading));
}

.sg-notification-clear[b-d6djtgbbt0] {
    background: none;
    border: none;
    color: var(--sg-accent-light, var(--sg-accent));
    font-size: 12px;
    cursor: pointer;
}

.sg-notification-panel__list[b-d6djtgbbt0] {
    overflow-y: auto;
    flex: 1;
}

.sg-notification-empty[b-d6djtgbbt0] {
    padding: 32px 16px;
    text-align: center;
    color: var(--sg-muted, #64748b);
    font-size: 13px;
}

.sg-notification-item[b-d6djtgbbt0] {
    display: flex;
    gap: 10px;
    padding: 10px 16px;
    border-bottom: 1px solid var(--sg-border, var(--sg-border));
    transition: background .15s;
}

.sg-notification-item:hover[b-d6djtgbbt0] { background: var(--sg-card); }
.sg-notification-item.critical[b-d6djtgbbt0] { border-left: 3px solid #ef4444; }
.sg-notification-item.high[b-d6djtgbbt0] { border-left: 3px solid #f59e0b; }

.sg-notification-item__icon[b-d6djtgbbt0] { font-size: 20px; flex-shrink: 0; }
.sg-notification-item__body[b-d6djtgbbt0] { flex: 1; min-width: 0; }
.sg-notification-item__title[b-d6djtgbbt0] { font-weight: 600; font-size: 13px; color: var(--sg-text, var(--sg-heading)); }
.sg-notification-item__message[b-d6djtgbbt0] { font-size: 12px; color: var(--sg-muted, var(--sg-muted)); margin-top: 2px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sg-notification-item__time[b-d6djtgbbt0] { font-size: 11px; color: var(--sg-muted, #64748b); margin-top: 2px; }

/* ─── SOS urgent overlay ─────────────────────────────────────── */
.sg-sos-overlay[b-d6djtgbbt0] {
    position: fixed;
    inset: 0;
    background: rgba(127,29,29,0.85);
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    animation: sg-fade-in-b-d6djtgbbt0 .2s ease;
}

.sg-sos-card[b-d6djtgbbt0] {
    background: #1c1c2e;
    border: 2px solid #ef4444;
    border-radius: 20px;
    padding: 32px 40px;
    text-align: center;
    max-width: 420px;
    width: 90%;
    box-shadow: 0 0 60px rgba(239,68,68,0.4);
}

.sg-sos-card__icon[b-d6djtgbbt0] { font-size: 48px; margin-bottom: 8px; }
.sg-sos-card__title[b-d6djtgbbt0] { font-size: 22px; font-weight: 800; color: var(--sg-danger); letter-spacing: 1px; }
.sg-sos-card__victim[b-d6djtgbbt0] { font-size: 18px; font-weight: 600; color: var(--sg-heading); margin-top: 8px; }
.sg-sos-card__phone[b-d6djtgbbt0] { font-size: 14px; color: var(--sg-accent); margin-top: 4px; }
.sg-sos-card__message[b-d6djtgbbt0] { font-size: 14px; color: var(--sg-subtext); margin-top: 12px; }
.sg-sos-card__location[b-d6djtgbbt0] { font-size: 13px; color: var(--sg-muted); margin-top: 8px; }
.sg-sos-card__time[b-d6djtgbbt0] { font-size: 12px; color: #64748b; margin-top: 8px; }
.sg-sos-card__dismiss[b-d6djtgbbt0] {
    margin-top: 20px;
    background: #ef4444;
    color: #fff;
    border: none;
    padding: 10px 28px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
}

@keyframes sg-fade-in-b-d6djtgbbt0 { from { opacity: 0; } to { opacity: 1; } }
@keyframes sg-pulse-b-d6djtgbbt0 { 0%, 100% { opacity: 1; } 50% { opacity: 0.4; } }
/* /Components/Shared/NotificationBell.razor.rz.scp.css */
.sg-notif-bell-wrap[b-ea90vazwjz] {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.sg-notif-bell[b-ea90vazwjz] {
    background: none;
    border: none;
    border-radius: 8px;
    color: var(--sg-muted);
    font-size: 17px;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    position: relative;
    transition: color 0.15s, background 0.15s;
}
.sg-notif-bell:hover[b-ea90vazwjz] {
    color: var(--sg-text);
    background: rgba(148,163,184,0.1);
}
.sg-notif-bell--active[b-ea90vazwjz] {
    color: var(--sg-warn-text);
}

.sg-notif-bell__badge[b-ea90vazwjz] {
    position: absolute;
    top: -2px;
    right: -2px;
    background: #ef4444;
    color: #fff;
    font-size: 9px;
    font-weight: 700;
    min-width: 15px;
    height: 15px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 3px;
    line-height: 1;
}

.sg-notif-popover[b-ea90vazwjz] {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    width: 340px;
    max-height: 420px;
    overflow-y: auto;
    background: #1a2236;
    border: 1px solid rgba(148,163,184,0.18);
    border-radius: 14px;
    box-shadow: 0 8px 32px rgba(0,0,0,0.45);
    z-index: 1000;
    padding: 6px 0;
}

.sg-notif-popover__header[b-ea90vazwjz] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 16px 6px;
    font-size: 13px;
    font-weight: 600;
    color: var(--sg-muted);
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.sg-notif-clear[b-ea90vazwjz] {
    background: none;
    border: none;
    color: var(--sg-accent);
    font-size: 12px;
    cursor: pointer;
    padding: 0;
}
.sg-notif-clear:hover[b-ea90vazwjz] { text-decoration: underline; }

.sg-notif-item[b-ea90vazwjz] {
    display: flex;
    gap: 10px;
    padding: 10px 16px;
    border-left: 3px solid transparent;
    transition: background 0.12s;
}
.sg-notif-item:hover[b-ea90vazwjz] { background: rgba(148,163,184,0.06); }
.sg-notif-item--critical[b-ea90vazwjz] { border-left-color: #ef4444; }
.sg-notif-item--high[b-ea90vazwjz] { border-left-color: #f59e0b; }
.sg-notif-item--normal[b-ea90vazwjz] { border-left-color: #3b82f6; }

.sg-notif-item__icon[b-ea90vazwjz] {
    font-size: 16px;
    flex-shrink: 0;
    padding-top: 2px;
}

.sg-notif-item__body[b-ea90vazwjz] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}
.sg-notif-item__body strong[b-ea90vazwjz] {
    font-size: 13px;
    color: var(--sg-heading);
}
.sg-notif-item__body span[b-ea90vazwjz] {
    font-size: 12px;
    color: var(--sg-eyebrow, rgba(191,219,254,0.8));
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.sg-notif-item__body small[b-ea90vazwjz] {
    font-size: 10px;
    color: rgba(148,163,184,0.7);
}

.sg-notif-empty[b-ea90vazwjz] {
    padding: 24px 16px;
    text-align: center;
    color: #64748b;
    font-size: 13px;
}
/* /Components/Shared/OrgPanel.razor.rz.scp.css */
/* ── Overlay ─────────────────────────────────────────────────────────────── */
.sg-org-overlay[b-9wduv1splv] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
    z-index: 1000;
    animation: sg-fade-in-b-9wduv1splv 0.18s ease;
}

/* ── Modal (centered floating dialog) ───────────────────────────────────── */
.sg-org-modal[b-9wduv1splv] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: min(900px, 94vw);
    /* FIXED height — the modal must not resize as General/Branding/Sites/Roles
       tabs swap in content of different lengths; the body scrolls instead. */
    height: min(720px, 86vh);
    background: var(--sg-panel);
    border: 1px solid var(--sg-border);
    border-radius: 14px;
    z-index: 1001;
    display: flex;
    flex-direction: column;
    box-shadow: 0 24px 64px rgba(0,0,0,.65), 0 4px 16px rgba(0,0,0,.4);
    animation: sg-modal-in-b-9wduv1splv 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    overflow: hidden;
}

@keyframes sg-modal-in-b-9wduv1splv {
    from { opacity: 0; transform: translate(-50%, calc(-50% + 24px)); }
    to   { opacity: 1; transform: translate(-50%, -50%); }
}

@keyframes sg-fade-in-b-9wduv1splv {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* ── Header ──────────────────────────────────────────────────────────────── */
.sg-org-modal-header[b-9wduv1splv] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 22px;
    border-bottom: 1px solid var(--sg-border);
    flex-shrink: 0;
}

.sg-org-modal-identity[b-9wduv1splv] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.sg-org-modal-avatar[b-9wduv1splv] {
    width: 40px;
    height: 40px;
    border-radius: 9px;
    background: var(--sg-accent);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    font-weight: 700;
    color: #fff;
    overflow: hidden;
    flex-shrink: 0;
}

.sg-org-modal-avatar img[b-9wduv1splv] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.sg-org-modal-name[b-9wduv1splv] {
    font-size: 15px;
    font-weight: 700;
    color: var(--sg-heading);
}

.sg-org-modal-subname[b-9wduv1splv] {
    font-size: 12px;
    color: var(--sg-muted);
    margin-top: 2px;
}

.sg-org-modal-close[b-9wduv1splv] {
    background: none;
    border: none;
    color: var(--sg-muted);
    font-size: 17px;
    cursor: pointer;
    padding: 6px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: color .15s, background .15s;
    flex-shrink: 0;
}

.sg-org-modal-close:hover[b-9wduv1splv] {
    color: var(--sg-text);
    background: var(--sg-card);
}

/* ── Tab bar ─────────────────────────────────────────────────────────────── */
.sg-org-tab-bar[b-9wduv1splv] {
    display: flex;
    gap: 0;
    padding: 0 22px;
    border-bottom: 1px solid var(--sg-border);
    flex-shrink: 0;
    overflow-x: auto;
}

.sg-org-tab[b-9wduv1splv] {
    background: none;
    border: none;
    border-bottom: 2px solid transparent;
    padding: 10px 14px;
    font-size: 13px;
    font-weight: 500;
    color: var(--sg-muted);
    cursor: pointer;
    white-space: nowrap;
    transition: color .15s, border-color .15s;
    margin-bottom: -1px;
}

.sg-org-tab:hover[b-9wduv1splv] { color: var(--sg-text); }

.sg-org-tab--active[b-9wduv1splv] {
    color: var(--sg-accent);
    border-bottom-color: var(--sg-accent);
    font-weight: 600;
}

/* ── Modal body (scrollable) ─────────────────────────────────────────────── */
.sg-org-modal-body[b-9wduv1splv] {
    flex: 1 1 auto;
    overflow-y: auto;
    padding: 22px;
    display: flex;
    flex-direction: column;
    gap: 0;
}

/* ── Spinner ─────────────────────────────────────────────────────────────── */
.sg-org-spinner[b-9wduv1splv] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 60px 0;
}

/* ── Form elements ───────────────────────────────────────────────────────── */
.sg-org-form-section-label[b-9wduv1splv] {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--sg-muted);
    margin: 18px 0 8px;
}

.sg-org-form-section-label:first-child[b-9wduv1splv] { margin-top: 0; }

.sg-org-form-grid[b-9wduv1splv] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 12px;
}

.sg-org-form-field[b-9wduv1splv] {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.sg-org-form-field--wide[b-9wduv1splv] {
    grid-column: 1 / -1;
}

.sg-org-form-label[b-9wduv1splv] {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: var(--sg-muted);
}

.sg-org-input[b-9wduv1splv] {
    background: var(--sg-card);
    border: 1px solid var(--sg-border);
    border-radius: 7px;
    color: var(--sg-text);
    font-size: 13px;
    padding: 7px 10px;
    outline: none;
    transition: border-color .15s;
    width: 100%;
    box-sizing: border-box;
}

.sg-org-input:focus[b-9wduv1splv] {
    border-color: var(--sg-accent);
}

.sg-org-input:disabled[b-9wduv1splv] {
    opacity: 0.6;
    cursor: not-allowed;
}

.sg-org-select[b-9wduv1splv] {
    background: var(--sg-card);
    border: 1px solid var(--sg-border);
    border-radius: 7px;
    color: var(--sg-text);
    font-size: 13px;
    padding: 7px 10px;
    outline: none;
    cursor: pointer;
    width: 100%;
    box-sizing: border-box;
    transition: border-color .15s;
}

.sg-org-select:focus[b-9wduv1splv] { border-color: var(--sg-accent); }
.sg-org-select:disabled[b-9wduv1splv] { opacity: 0.6; cursor: not-allowed; }

/* ── Form footer (save row) ──────────────────────────────────────────────── */
.sg-org-form-footer[b-9wduv1splv] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid var(--sg-border);
    flex-wrap: wrap;
}

.sg-org-form-error[b-9wduv1splv] {
    font-size: 12px;
    color: var(--sg-danger, #ef4444);
    flex: 1;
}

.sg-org-form-ok[b-9wduv1splv] {
    font-size: 12px;
    color: var(--sg-success, #22c55e);
    flex: 1;
}

/* ── Section toolbar (Sites/Roles header bar) ────────────────────────────── */
.sg-org-section-toolbar[b-9wduv1splv] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 14px;
}

.sg-org-section-count[b-9wduv1splv] {
    font-size: 12px;
    color: var(--sg-muted);
    font-weight: 500;
}

/* ── Add form card ───────────────────────────────────────────────────────── */
.sg-org-site-form[b-9wduv1splv] {
    background: var(--sg-card);
    border: 1px solid var(--sg-accent);
    border-radius: 10px;
    padding: 16px;
    margin-bottom: 14px;
}

.sg-org-site-form .sg-org-form-footer[b-9wduv1splv] {
    margin-top: 14px;
    padding-top: 12px;
}

/* ── Sites / Roles list ──────────────────────────────────────────────────── */
.sg-org-sites-list[b-9wduv1splv] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.sg-org-site-card[b-9wduv1splv] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 14px;
    background: var(--sg-card);
    border: 1px solid var(--sg-border);
    border-radius: 9px;
    gap: 10px;
    transition: border-color .15s;
}

.sg-org-site-card:hover[b-9wduv1splv] { border-color: var(--sg-border); }

.sg-org-site-card--editing[b-9wduv1splv] {
    flex-direction: column;
    align-items: stretch;
    border-color: var(--sg-accent);
}

.sg-org-site-card--inactive[b-9wduv1splv] {
    opacity: 0.55;
}

.sg-org-site-card-info[b-9wduv1splv] {
    flex: 1;
    min-width: 0;
}

.sg-org-site-card-name[b-9wduv1splv] {
    font-size: 14px;
    font-weight: 600;
    color: var(--sg-text);
    display: flex;
    align-items: center;
    gap: 8px;
}

.sg-org-site-card-meta[b-9wduv1splv] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: 4px;
}

/* ── Badges ──────────────────────────────────────────────────────────────── */
.sg-org-type-badge[b-9wduv1splv] {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    padding: 2px 7px;
    border-radius: 4px;
    background: rgba(99,102,241,0.18);
    color: #a5b4fc;
    white-space: nowrap;
}

.sg-org-inactive-badge[b-9wduv1splv] {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    padding: 2px 7px;
    border-radius: 4px;
    background: rgba(239,68,68,0.15);
    color: var(--sg-err-text);
}

.sg-org-role-code[b-9wduv1splv] {
    font-size: 10px;
    font-weight: 700;
    padding: 1px 6px;
    border-radius: 4px;
    background: var(--sg-card);
    color: var(--sg-muted);
    margin-left: 4px;
}

.sg-org-role-desc-inline[b-9wduv1splv] {
    font-size: 11px;
    color: var(--sg-muted);
}

/* ── Edit button ─────────────────────────────────────────────────────────── */
.sg-org-edit-btn[b-9wduv1splv] {
    background: none;
    border: 1px solid var(--sg-border);
    border-radius: 6px;
    color: var(--sg-muted);
    font-size: 13px;
    padding: 5px 8px;
    cursor: pointer;
    flex-shrink: 0;
    transition: color .15s, border-color .15s, background .15s;
}

.sg-org-edit-btn:hover[b-9wduv1splv] {
    color: var(--sg-text);
    border-color: var(--sg-accent);
    background: rgba(99,102,241,0.1);
}

/* ── Toggle label ────────────────────────────────────────────────────────── */
.sg-org-toggle-label[b-9wduv1splv] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: var(--sg-text);
    cursor: pointer;
    user-select: none;
}

.sg-org-toggle-label input[type="checkbox"][b-9wduv1splv] {
    accent-color: var(--sg-accent);
    width: 14px;
    height: 14px;
    cursor: pointer;
}

/* ── Empty state ─────────────────────────────────────────────────────────── */
.sg-org-empty[b-9wduv1splv] {
    text-align: center;
    color: var(--sg-muted);
    font-size: 13px;
    padding: 40px 0;
}
/* /Components/Shared/PageHeader.razor.rz.scp.css */
.admin-dashboard__topbar[b-s5iudprc4k] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 0;
}

.admin-dashboard__eyebrow[b-s5iudprc4k] {
    color: var(--sg-muted-soft);
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 11px;
    margin-bottom: 8px;
}

.admin-dashboard__title[b-s5iudprc4k] {
    margin: 0;
    font-size: clamp(28px, 3vw, 38px);
    font-weight: 700;
    color: var(--sg-heading);
}

.admin-dashboard__subtitle[b-s5iudprc4k] {
    margin: 8px 0 0;
    color: var(--sg-subtext);
    font-size: 15px;
    max-width: 760px;
}

.admin-dashboard__topbar-actions[b-s5iudprc4k] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.admin-dashboard__filter[b-s5iudprc4k] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px 10px;
    border-radius: 14px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.admin-dashboard__filter-label[b-s5iudprc4k] {
    color: var(--sg-subtext);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.admin-dashboard__filter-select[b-s5iudprc4k] {
    min-width: 160px;
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    background: var(--sg-card);
    color: var(--sg-heading);
    padding: 8px 12px;
}

.admin-notification-wrap[b-s5iudprc4k] {
    position: relative;
}

.admin-icon-button[b-s5iudprc4k] {
    width: 38px;
    height: 38px;
    border-radius: 12px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    color: var(--sg-text);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.06);
    position: relative;
}

.admin-icon-button--alert[b-s5iudprc4k] {
    color: var(--sg-danger);
    border-color: rgba(248,113,113,0.55);
    background: rgba(127,29,29,0.5);
}

.admin-icon-button__badge[b-s5iudprc4k] {
    position: absolute;
    top: -6px;
    right: -6px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 999px;
    background: #ef4444;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.admin-notification-popover[b-s5iudprc4k] {
    position: absolute;
    top: calc(100% + 12px);
    right: 0;
    width: 290px;
    border-radius: 16px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    box-shadow: 0 24px 50px rgba(0,0,0,0.38);
    padding: 12px;
    z-index: 20;
}

.admin-notification-popover__header[b-s5iudprc4k] {
    color: var(--sg-heading);
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 8px;
}

.admin-notification-item[b-s5iudprc4k] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 10px 12px;
    border-radius: 12px;
    color: var(--sg-text);
    text-decoration: none;
}

.admin-notification-item:hover[b-s5iudprc4k] {
    background: rgba(59,130,246,0.14);
    color: var(--sg-heading);
}

.admin-notification-item strong[b-s5iudprc4k] {
    font-size: 14px;
    color: var(--sg-heading);
}

.admin-notification-item span[b-s5iudprc4k],
.admin-notification-empty[b-s5iudprc4k] {
    font-size: 12px;
    color: var(--sg-eyebrow, rgba(191,219,254,0.82));
}

.admin-notification-clear-btn[b-s5iudprc4k] {
    background: none;
    border: none;
    color: var(--sg-accent);
    font-size: 12px;
    cursor: pointer;
    padding: 0;
    margin-left: auto;
}
.admin-notification-clear-btn:hover[b-s5iudprc4k] { text-decoration: underline; }

.admin-notification-popover__header[b-s5iudprc4k] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.admin-notification-item__icon[b-s5iudprc4k] {
    font-size: 16px;
    flex-shrink: 0;
}

.admin-notification-item--critical[b-s5iudprc4k] {
    border-left: 3px solid #ef4444;
}
.admin-notification-item--high[b-s5iudprc4k] {
    border-left: 3px solid #f59e0b;
}
.admin-notification-item--normal[b-s5iudprc4k] {
    border-left: 3px solid #3b82f6;
}

.admin-notification-item small[b-s5iudprc4k] {
    font-size: 10px;
    color: rgba(148,163,184,0.8);
}
/* /Components/Shared/PersonProfileView.razor.rz.scp.css */

/* Card 1 (identity/access/address) is a TALL left sidebar spanning the full height; the
   location + photo sit top-right, and the tabs fill the rest of the right side. */
.user-profile-page[b-g109q5tm2d] {
    min-height: 0;
    height: 100%;
    overflow: hidden;
    display: grid;
    /* Card 1 (sidebar) ≥40% of the width; location + photo take 30% each. */
    grid-template-columns: minmax(0, 40fr) minmax(0, 30fr) minmax(0, 30fr);
    grid-template-rows: clamp(300px, 34vh, 352px) minmax(0, 1fr);
    grid-template-areas:
        "sidebar loc   photo"
        "sidebar tabs  tabs";
    gap: 14px;
}

.user-profile-overview-panel[b-g109q5tm2d] { grid-area: sidebar; min-height: 0; }
.user-profile-map-panel[b-g109q5tm2d]      { grid-area: loc;   min-height: 0; }
.user-profile-photo-panel[b-g109q5tm2d]    { grid-area: photo; min-height: 0; }
.user-profile-tabs-panel[b-g109q5tm2d]     { grid-area: tabs;  min-height: 0; }

/* The tall identity card scrolls internally if its content (fields + access + address) overflows. */
.user-profile-overview-card[b-g109q5tm2d] { overflow-y: auto; }

.user-profile-sidebar-section[b-g109q5tm2d] {
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid var(--sg-border);
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.user-profile-sidebar-section__label[b-g109q5tm2d] {
    font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
    color: var(--sg-muted);
}

/* Joined / Vehicle quick-facts — separated from the access block above. */
.user-profile-overview-list--facts[b-g109q5tm2d] {
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid var(--sg-border);
}

/* Overview = ONE compact card with a dense stat grid (no sub-cards, no scroll). */
.ups-card[b-g109q5tm2d] { padding: 6px; }
/* 3 equal columns, every tile the same fixed height — uniform, no wasted space. */
.ups-grid[b-g109q5tm2d] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: 34px;
    gap: 5px 10px;
}
.ups-stat[b-g109q5tm2d] {
    display: flex; align-items: center; justify-content: space-between; gap: 8px;
    padding: 6px 11px; border-radius: 7px;
    background: var(--sg-card); border: 1px solid var(--sg-border);
}
.ups-stat__k[b-g109q5tm2d] { font-size: 12px; color: var(--sg-muted); }
.ups-stat__v[b-g109q5tm2d] { font-size: 14px; font-weight: 700; color: var(--sg-text, var(--sg-heading)); text-align: right; }
.ups-stat--link[b-g109q5tm2d] { cursor: pointer; transition: border-color .12s ease, background .12s ease; }
.ups-stat--link:hover[b-g109q5tm2d] { border-color: rgba(96,165,250,0.5); background: rgba(96,165,250,0.08); }

/* Security-provider tick-list (profile "Security Provider" tab). */
.ups-provider-list[b-g109q5tm2d] { display: flex; flex-direction: column; gap: 8px; }
.ups-provider[b-g109q5tm2d] {
    display: flex; align-items: center; gap: 10px;
    padding: 10px 12px; border-radius: 8px; cursor: pointer;
    background: var(--sg-card); border: 1px solid var(--sg-border);
    transition: border-color .12s ease, background .12s ease;
}
.ups-provider:hover[b-g109q5tm2d] { border-color: rgba(96,165,250,0.45); }
.ups-provider--on[b-g109q5tm2d] { background: rgba(34,197,94,0.10); border-color: rgba(34,197,94,0.45); }
.ups-provider input[b-g109q5tm2d] { width: 17px; height: 17px; accent-color: #22c55e; }
.ups-provider__name[b-g109q5tm2d] { font-size: 13.5px; font-weight: 600; color: var(--sg-text, var(--sg-heading)); }
.ups-provider__meta[b-g109q5tm2d] { margin-left: auto; font-size: 12px; color: var(--sg-muted); }

.user-profile-overview-panel[b-g109q5tm2d],
.user-profile-map-panel[b-g109q5tm2d],
.user-profile-photo-panel[b-g109q5tm2d],
.user-profile-tabs-panel[b-g109q5tm2d] {
    min-height: 0;
}

.user-profile-overview-card[b-g109q5tm2d],
.user-profile-photo-card[b-g109q5tm2d] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    height: 100%;
    min-height: 0;
    padding: 16px;
}

.user-profile-map-card[b-g109q5tm2d] {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
}

.user-profile-map-card__header[b-g109q5tm2d] {
    flex: 0 0 auto;
    padding: 12px 16px 10px;
}

.user-profile-map-card__header h2[b-g109q5tm2d] {
    margin: 4px 0 3px;
    font-size: 15px;
    font-weight: 700;
    color: var(--sg-heading);
}

.user-profile-map-card__header p[b-g109q5tm2d] {
    margin: 0;
    font-size: 13px;
    color: var(--sg-muted-soft);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.user-profile-map-card__map[b-g109q5tm2d] {
    flex: 1 1 auto;
    min-height: 180px;
    border-radius: 0 0 18px 18px;
    overflow: hidden;
}

/* Shown instead of the map when the member has no home address on file. */
.user-profile-map-card__empty[b-g109q5tm2d] {
    flex: 1 1 auto;
    min-height: 160px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    text-align: center;
    padding: 16px;
    border-radius: 0 0 18px 18px;
    background: var(--sg-card);
    border-top: 1px dashed var(--sg-border);
}
.user-profile-map-card__empty-title[b-g109q5tm2d] { font-size: 14px; font-weight: 700; color: var(--sg-text, var(--sg-heading)); }
.user-profile-map-card__empty-text[b-g109q5tm2d] { font-size: 12px; color: var(--sg-muted); max-width: 240px; line-height: 1.4; }

.user-profile-overview-card__topline[b-g109q5tm2d] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}

.user-profile-overview-card__eyebrow[b-g109q5tm2d],
.user-profile-photo-card__eyebrow[b-g109q5tm2d] {
    color: var(--sg-eyebrow, rgba(191,219,254,0.78));
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-size: 11px;
    margin-bottom: 8px;
}

.user-profile-overview-card h2[b-g109q5tm2d],
.user-profile-photo-card h2[b-g109q5tm2d] {
    margin: 0;
    color: var(--sg-heading);
    font-size: 20px;
    font-weight: 700;
}

.user-profile-overview-card p[b-g109q5tm2d],
.user-profile-photo-card p[b-g109q5tm2d] {
    margin: 6px 0 0;
    color: var(--sg-subtext);
    font-size: 12.5px;
}

.user-profile-status-pill[b-g109q5tm2d] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 0 12px;
    border-radius: 999px;
    border: 1px solid transparent;
    font-size: 13px;
    font-weight: 600;
    white-space: nowrap;
}

.user-profile-status-pill--active[b-g109q5tm2d] {
    color: var(--sg-ok-text, #d1fae5);
    background: rgba(34,197,94,0.22);
    border-color: rgba(74,222,128,0.34);
}

.user-profile-status-pill--pending[b-g109q5tm2d] {
    color: var(--sg-warning);
    background: rgba(245,158,11,0.2);
    border-color: rgba(251,191,36,0.3);
}

.user-profile-overview-list[b-g109q5tm2d] {
    margin: 0;
    display: grid;
    /* Stacked one field per row (Jeremy: card 1 has the vertical space). */
    grid-template-columns: 1fr;
    gap: 10px;
    /* Natural height now — the whole identity card scrolls (it's a tall sidebar), not this list. */
    flex: 0 0 auto;
    min-height: 0;
}

.user-profile-overview-list div[b-g109q5tm2d] {
    display: grid;
    gap: 6px;
    min-width: 0;
}

.user-profile-overview-list__wide[b-g109q5tm2d] {
    grid-column: 1 / -1;
}

.user-profile-overview-list dt[b-g109q5tm2d] {
    color: var(--sg-muted-soft);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.user-profile-overview-list dd[b-g109q5tm2d] {
    margin: 0;
    color: var(--sg-heading);
    font-size: 13.5px;
    line-height: 1.45;
}

.user-profile-inline-editor[b-g109q5tm2d] {
    display: grid;
    /* Stacked one field per row — Display Name above Email above Phone above ID. */
    grid-template-columns: 1fr;
    gap: 10px;
    padding-top: 0;
    border-top: none;
    margin-top: 0;
}

/* The editor fields use .app-filter, which is a horizontal 148px-label + input
   grid built for filter bars — nested inside this 2-column grid it crushes each
   input to a sliver. Re-flow them as stacked label-above-input, full-width. */
.user-profile-inline-editor .app-filter[b-g109q5tm2d] {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 6px;
}

.user-profile-inline-editor .app-filter input[b-g109q5tm2d],
.user-profile-inline-editor .app-filter select[b-g109q5tm2d],
.user-profile-inline-editor .app-filter textarea[b-g109q5tm2d] {
    width: 100%;
}

/* Same fix for the tab editor forms (Add Home / Vehicle / Travel / Note): the
   .app-filter horizontal label+input grid crushes inputs inside this 2-column grid. */
.user-profile-form-grid .app-filter[b-g109q5tm2d] {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 6px;
}

.user-profile-form-grid .app-filter.app-filter--checkbox[b-g109q5tm2d] {
    flex-direction: row;
    align-items: center;
    gap: 10px;
}

.user-profile-form-grid .app-filter input[b-g109q5tm2d],
.user-profile-form-grid .app-filter select[b-g109q5tm2d],
.user-profile-form-grid .app-filter textarea[b-g109q5tm2d] {
    width: 100%;
}

.user-profile-form-grid .app-filter.app-filter--checkbox input[b-g109q5tm2d] {
    width: auto;
}

.user-profile-inline-editor__wide[b-g109q5tm2d] {
    grid-column: 1 / -1;
}

.user-profile-photo-card__content[b-g109q5tm2d] {
    flex: 1 1 auto;
    min-height: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(140px, 40%);
    gap: 14px;
    align-items: center;
}

.user-profile-photo-card__sidebar[b-g109q5tm2d] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 16px;
    min-width: 0;
}

.user-profile-photo-card__media[b-g109q5tm2d] {
    min-height: 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.user-profile-photo-card__preview[b-g109q5tm2d] {
    width: min(100%, 168px);
    aspect-ratio: 1;
    object-fit: cover;
    border-radius: 20px;
    border: 1px solid var(--sg-border);
    box-shadow: 0 12px 26px rgba(0,0,0,0.28);
}

.user-profile-photo-card__meta[b-g109q5tm2d] {
    display: grid;
    gap: 6px;
    padding: 14px 16px;
    border-radius: 14px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.user-profile-photo-card__meta span[b-g109q5tm2d] {
    color: var(--sg-muted-soft);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.user-profile-photo-card__meta strong[b-g109q5tm2d] {
    color: var(--sg-heading);
    font-size: 15px;
}

.user-profile-photo-card__hint[b-g109q5tm2d] {
    color: var(--sg-muted-soft);
    font-size: 13px;
    line-height: 1.5;
}

.user-profile-photo-picker[b-g109q5tm2d] {
    width: 100%;
    display: grid;
    gap: 12px;
    padding: 16px;
    border-radius: 16px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.user-profile-photo-picker__title[b-g109q5tm2d] {
    color: var(--sg-subtext);
    font-size: 13px;
    font-weight: 600;
}

.user-profile-photo-picker__choices[b-g109q5tm2d] {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
}

.user-profile-photo-picker__choice[b-g109q5tm2d] {
    padding: 0;
    border-radius: 14px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    overflow: hidden;
}

.user-profile-photo-picker__choice img[b-g109q5tm2d] {
    display: block;
    width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
}

.user-profile-photo-picker__choice--active[b-g109q5tm2d] {
    border-color: rgba(96,165,250,0.72);
    box-shadow: 0 0 0 2px rgba(59,130,246,0.22);
}

.user-profile-photo-picker__cancel[b-g109q5tm2d] {
    padding: 0;
    color: var(--sg-accent);
    text-decoration: none;
    justify-self: start;
}

.user-profile-tabs-panel[b-g109q5tm2d] {
    flex: 1 1 auto;
}

.user-profile-tabs[b-g109q5tm2d] {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    padding: 10px 14px 0;
    border-bottom: 1px solid var(--sg-border);
}

.user-profile-tabs__tab[b-g109q5tm2d] {
    min-height: 30px;
    padding: 0 11px;
    font-size: 12.5px;
    border-radius: 999px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    color: var(--sg-subtext);
}

.user-profile-tabs__tab--active[b-g109q5tm2d] {
    background: linear-gradient(180deg, color-mix(in srgb, var(--sg-accent) 78%, transparent), color-mix(in srgb, var(--sg-accent) 72%, transparent));
    color: #fff;
    border-color: color-mix(in srgb, var(--sg-accent) 42%, transparent);
}

.user-profile-tabs__content[b-g109q5tm2d] {
    /* .app-scroll--padded already supplies 20px top — don't double it (was wasting a row of height). */
    padding-top: 0;
}

.user-profile-grid[b-g109q5tm2d] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.user-profile-card[b-g109q5tm2d] {
    border-radius: 16px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    padding: 18px;
}

.user-profile-card--single[b-g109q5tm2d] {
    max-width: none;
}

.user-profile-card--wide[b-g109q5tm2d] {
    grid-column: 1 / -1;
}

.user-profile-card h2[b-g109q5tm2d] {
    margin: 0 0 8px;
    color: var(--sg-heading);
    font-size: 14.5px;
}

.user-profile-card p[b-g109q5tm2d],
.user-profile-card__copy[b-g109q5tm2d] {
    margin: 0 0 7px;
    color: var(--sg-subtext);
    font-size: 12.5px;
}

.user-profile-card__topline[b-g109q5tm2d],
.user-profile-toolbar[b-g109q5tm2d] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
}

.user-profile-toolbar--inline[b-g109q5tm2d] {
    justify-content: flex-start;
    margin-top: 12px;
    margin-bottom: 0;
}

.user-profile-toolbar--stacked[b-g109q5tm2d] {
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    margin: 0;
}

.user-profile-toolbar--stacked .btn[b-g109q5tm2d] {
    width: 100%;
}

/* ── Profile roster (condensed week/month board inside tabs) ── */

.profile-roster[b-g109q5tm2d] {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    overflow: hidden;
}

.profile-roster__toolbar[b-g109q5tm2d] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 18px;
    border-bottom: 1px solid var(--sg-border);
    flex-wrap: wrap;
}

.profile-roster .roster-segmented-control[b-g109q5tm2d] {
    display: inline-flex;
    flex: 0 0 auto;
}

.profile-roster .roster-segmented-control__button[b-g109q5tm2d] {
    flex: 0 0 auto;
}

.profile-roster .roster-board-header[b-g109q5tm2d],
.profile-roster .roster-board-allday[b-g109q5tm2d],
.profile-roster .roster-board-body[b-g109q5tm2d] {
    display: grid;
    grid-template-columns: 56px repeat(var(--roster-day-count, 7), minmax(0, 1fr));
}

.profile-roster .roster-board-header[b-g109q5tm2d] {
    border-bottom: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.profile-roster .roster-board-header__time[b-g109q5tm2d],
.profile-roster .roster-board-allday__label[b-g109q5tm2d] {
    border-right: 1px solid var(--sg-border);
}

.profile-roster .roster-board-header__day[b-g109q5tm2d],
.profile-roster .roster-board-allday__cell[b-g109q5tm2d] {
    min-width: 0;
    border-right: 1px solid var(--sg-border);
}

.profile-roster .roster-board-header__day:last-child[b-g109q5tm2d],
.profile-roster .roster-board-allday__cell:last-child[b-g109q5tm2d] {
    border-right: none;
}

.profile-roster .roster-board-header__day[b-g109q5tm2d] {
    padding: 10px 10px;
}

.profile-roster .roster-board-header__day span[b-g109q5tm2d] {
    display: block;
    color: var(--sg-muted-soft);
    font-size: 11px;
    margin-bottom: 2px;
}

.profile-roster .roster-board-header__day strong[b-g109q5tm2d] {
    color: var(--sg-heading);
    font-size: 13px;
    font-weight: 600;
}

.profile-roster .roster-board-header__day--today strong[b-g109q5tm2d] {
    color: var(--sg-accent);
}

.profile-roster .roster-board-allday[b-g109q5tm2d] {
    min-height: 36px;
    border-bottom: 1px solid var(--sg-border);
}

.profile-roster .roster-board-allday__label[b-g109q5tm2d] {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--sg-muted-soft);
    font-size: 11px;
}

.profile-roster .roster-board-allday__cell[b-g109q5tm2d] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px 8px;
    overflow: hidden;
}

.profile-roster .roster-board-allday__empty[b-g109q5tm2d] {
    color: var(--sg-muted-soft);
}

.profile-roster .roster-board-body[b-g109q5tm2d] {
    flex: 1 1 auto;
    grid-template-columns: 56px minmax(0, 1fr);
    min-height: 0;
    overflow: hidden;
}

.profile-roster .roster-time-column[b-g109q5tm2d] {
    position: relative;
    height: 100%;
    border-right: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.profile-roster .roster-time-column__label[b-g109q5tm2d] {
    position: absolute;
    left: 8px;
    transform: translateY(-50%);
    color: var(--sg-muted-soft);
    font-size: 10px;
}

.profile-roster .roster-time-column__label:last-child[b-g109q5tm2d] {
    transform: translateY(-100%);
}

.profile-roster .roster-day-columns[b-g109q5tm2d] {
    display: grid;
    grid-column: 2 / -1;
    grid-template-columns: repeat(var(--roster-day-count, 7), minmax(0, 1fr));
    height: 100%;
    min-height: 0;
}

.profile-roster .roster-day-column[b-g109q5tm2d] {
    position: relative;
    min-height: 0;
    height: 100%;
    border-right: 1px solid var(--sg-border);
    overflow: hidden;
}

.profile-roster .roster-day-column:last-child[b-g109q5tm2d] {
    border-right: none;
}

.profile-roster .roster-day-column--today[b-g109q5tm2d] {
    background: rgba(59,130,246,0.04);
}

.profile-roster .roster-day-column__grid[b-g109q5tm2d] {
    position: absolute;
    inset: 0;
    background-image: repeating-linear-gradient(to bottom, var(--sg-card) 0, var(--sg-card) 1px, transparent 1px, transparent calc(100% / 24));
}

.profile-roster .roster-entry-card[b-g109q5tm2d] {
    position: absolute;
    min-height: 1.6rem;
    min-width: 0;
    display: grid;
    gap: 2px;
    padding: 6px 8px;
    border-radius: 10px;
    border: 1px solid transparent;
    text-align: left;
    box-shadow: 0 8px 20px rgba(0,0,0,0.16);
    overflow: hidden;
}

.profile-roster .roster-entry-card__title[b-g109q5tm2d] {
    color: var(--sg-heading);
    font-size: 11px;
    font-weight: 700;
}

.profile-roster .roster-entry-card__meta[b-g109q5tm2d] {
    color: var(--sg-heading);
    font-size: 10px;
}

.profile-roster .roster-month-board[b-g109q5tm2d] {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
}

.profile-roster .roster-month-board__header[b-g109q5tm2d],
.profile-roster .roster-month-board__grid[b-g109q5tm2d] {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
}

.profile-roster .roster-month-board__header[b-g109q5tm2d] {
    background: var(--sg-card);
    border-bottom: 1px solid var(--sg-border);
}

.profile-roster .roster-month-board__header-cell[b-g109q5tm2d] {
    padding: 10px 8px;
    border-right: 1px solid var(--sg-border);
    color: var(--sg-muted-soft);
    font-size: 11px;
    font-weight: 600;
}

.profile-roster .roster-month-board__header-cell:last-child[b-g109q5tm2d] {
    border-right: none;
}

.profile-roster .roster-month-board__grid[b-g109q5tm2d] {
    flex: 1 1 auto;
    min-height: 0;
    grid-template-rows: repeat(6, minmax(0, 1fr));
}

.profile-roster .roster-month-cell[b-g109q5tm2d] {
    min-height: 0;
    padding: 6px;
    border-right: 1px solid var(--sg-border);
    border-bottom: 1px solid var(--sg-border);
    display: flex;
    flex-direction: column;
    gap: 4px;
    overflow: hidden;
}

.profile-roster .roster-month-cell:nth-child(7n)[b-g109q5tm2d] {
    border-right: none;
}

.profile-roster .roster-month-cell__date[b-g109q5tm2d] {
    color: var(--sg-heading);
    font-size: 11px;
    font-weight: 700;
}

.profile-roster .roster-month-cell--muted .roster-month-cell__date[b-g109q5tm2d] {
    color: var(--sg-muted-soft);
}

.profile-roster .roster-month-cell--today[b-g109q5tm2d] {
    background: rgba(59,130,246,0.05);
}

.profile-roster .roster-month-cell__items[b-g109q5tm2d] {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-height: 0;
    overflow: hidden;
}

.profile-roster .roster-month-cell__empty[b-g109q5tm2d] {
    color: var(--sg-muted-soft);
    font-size: 11px;
}

.profile-roster .roster-month-entry[b-g109q5tm2d] {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 0 8px;
    border-radius: 8px;
    border: 1px solid transparent;
    color: var(--sg-heading);
    font-size: 10px;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ── Detail popup and clickable rows ── */

[b-g109q5tm2d] .app-table__row--clickable {
    cursor: pointer;
}

[b-g109q5tm2d] .app-table__row--clickable:hover {
    background: rgba(59,130,246,0.08);
}

.user-profile-modal-overlay[b-g109q5tm2d] {
    position: fixed;
    inset: 0;
    z-index: 900;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0,0,0,0.55);
    backdrop-filter: blur(4px);
}

.user-profile-modal-card[b-g109q5tm2d] {
    width: clamp(340px, 50vw, 560px);
    max-height: 80vh;
    overflow: auto;
    padding: 28px;
    border-radius: 20px;
    border: 1px solid var(--sg-border);
    background: linear-gradient(var(--sg-card), var(--sg-card));
    color: var(--sg-heading);
    box-shadow: 0 22px 60px rgba(0,0,0,0.38);
}

.user-profile-modal-card h2[b-g109q5tm2d] {
    margin: 0 0 18px;
    font-size: 22px;
    font-weight: 700;
}

.user-profile-detail-list[b-g109q5tm2d] {
    margin: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 18px;
}

.user-profile-detail-list div[b-g109q5tm2d] {
    display: grid;
    gap: 4px;
}

.user-profile-detail-list dt[b-g109q5tm2d] {
    color: var(--sg-muted-soft);
    font-size: 12px;
    font-weight: 600;
}

.user-profile-detail-list dd[b-g109q5tm2d] {
    margin: 0;
    color: var(--sg-heading);
    font-size: 14px;
}

.user-profile-form-grid__wide[b-g109q5tm2d] {
    grid-column: 1 / -1;
}

.user-profile-list[b-g109q5tm2d] {
    margin: 0;
    padding-left: 18px;
    color: var(--sg-subtext);
    display: grid;
    gap: 8px;
}

.user-profile-list li[b-g109q5tm2d] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.user-profile-form-grid[b-g109q5tm2d] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.user-profile-form-grid__wide[b-g109q5tm2d] {
    grid-column: 1 / -1;
}

.app-filter--checkbox[b-g109q5tm2d] {
    justify-content: flex-end;
}

@media (max-width: 1200px) {
    .user-profile-grid[b-g109q5tm2d],
    .user-profile-overview-list[b-g109q5tm2d],
    .user-profile-inline-editor[b-g109q5tm2d],
    .user-profile-form-grid[b-g109q5tm2d],
    .user-profile-photo-card__content[b-g109q5tm2d] {
        grid-template-columns: 1fr;
    }

    /* Stack the profile into one column and let the container scroll on small screens. */
    .user-profile-page[b-g109q5tm2d] {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
        grid-template-areas: "sidebar" "loc" "photo" "tabs";
        overflow-y: auto;
    }
    .user-profile-overview-card[b-g109q5tm2d] { overflow-y: visible; }

    .user-profile-overview-card__topline[b-g109q5tm2d] {
        flex-direction: column;
        align-items: stretch;
    }

    .user-profile-photo-card__sidebar[b-g109q5tm2d],
    .user-profile-photo-card__media[b-g109q5tm2d] {
        justify-content: flex-start;
    }

    .user-profile-photo-picker__choices[b-g109q5tm2d] {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}
/* /Components/Shared/PoiDetail.razor.rz.scp.css */
/* ── PoiDetail — detail surface styles (extracted from PersonsOfInterest page) ── */

.poi-detail-close[b-p5ykk3gxwr] {
    position: absolute;
    top: 14px;
    right: 14px;
    background: transparent;
    border: none;
    color: var(--sg-muted-soft);
    font-size: 18px;
    cursor: pointer;
    z-index: 2;
}

.poi-detail-close:hover[b-p5ykk3gxwr] {
    color: var(--sg-heading);
}

.poi-detail-header[b-p5ykk3gxwr] {
    display: grid;
    grid-template-columns: 120px 1fr auto;
    gap: 18px;
    padding: 22px 24px 18px;
    border-bottom: 1px solid var(--sg-border);
}

.poi-detail-header__photo[b-p5ykk3gxwr] {
    width: 110px;
    height: 110px;
    border-radius: 14px;
    object-fit: cover;
}

.poi-detail-header__photo-col[b-p5ykk3gxwr] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}

.poi-detail-header__photo--empty[b-p5ykk3gxwr] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--sg-card);
    border: 1px solid var(--sg-border);
    color: var(--sg-muted-soft);
    font-size: 44px;
}

/* "Add / Change Photo" — sized to the photo, wraps cleanly without overlapping. */
.poi-photo-btn[b-p5ykk3gxwr] {
    width: 110px;
    height: auto;
    white-space: normal;
    line-height: 1.25;
    text-align: center;
    font-size: 12px;
    padding: 6px 8px;
}

.poi-photo-error[b-p5ykk3gxwr] {
    width: 120px;
    font-size: 11px;
    line-height: 1.3;
    text-align: center;
    color: var(--sg-danger);
}

.poi-detail-header__body[b-p5ykk3gxwr] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.poi-detail-header__title-row[b-p5ykk3gxwr] {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 4px;
}

.poi-detail-header__title-row h2[b-p5ykk3gxwr] {
    margin: 0;
    font-size: 24px;
    color: var(--sg-heading);
}

.poi-detail-header__row[b-p5ykk3gxwr] {
    font-size: 13px;
    color: var(--sg-subtext);
}

.poi-detail-header__meta[b-p5ykk3gxwr] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    text-align: left;
    font-size: 12px;
    min-width: 130px;
}

.poi-detail-header__meta > div[b-p5ykk3gxwr] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.poi-detail-header__meta span[b-p5ykk3gxwr] {
    color: var(--sg-muted-soft);
    text-transform: uppercase;
    font-size: 10px;
    letter-spacing: 0.06em;
}

.poi-detail-header__meta strong[b-p5ykk3gxwr] {
    color: var(--sg-heading);
    font-size: 14px;
}

/* Tabs */
.poi-tabs[b-p5ykk3gxwr] {
    display: flex;
    gap: 6px;
    padding: 8px 18px 0;
    border-bottom: 1px solid var(--sg-border);
    overflow-x: auto;
}

.poi-tab[b-p5ykk3gxwr] {
    background: transparent;
    border: none;
    color: var(--sg-muted-soft);
    padding: 12px 14px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 500;
    border-bottom: 2px solid transparent;
    margin-bottom: -1px;
    white-space: nowrap;
}

.poi-tab:hover[b-p5ykk3gxwr] {
    color: var(--sg-heading);
}

.poi-tab--active[b-p5ykk3gxwr] {
    color: var(--sg-accent);
    border-bottom-color: #3b82f6;
    font-weight: 600;
}

.poi-tab__count[b-p5ykk3gxwr] {
    color: var(--sg-muted-soft);
    font-size: 12px;
}

/* Detail blocks */
.poi-detail-grid[b-p5ykk3gxwr] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    padding: 18px 22px;
}

.poi-detail-block[b-p5ykk3gxwr] {
    background: var(--sg-card);
    border: 1px solid var(--sg-border);
    border-radius: 12px;
    padding: 16px 18px;
}

.poi-detail-block h3[b-p5ykk3gxwr] {
    margin: 0 0 10px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--sg-muted-soft);
    font-weight: 700;
}

.poi-feature-list[b-p5ykk3gxwr] {
    margin: 0;
    padding-left: 18px;
    color: var(--sg-subtext);
    font-size: 13px;
    line-height: 1.8;
}

.poi-risk-dl[b-p5ykk3gxwr] {
    display: grid;
    grid-template-columns: max-content 1fr;
    column-gap: 16px;
    row-gap: 8px;
    margin: 0;
    font-size: 13px;
}

.poi-risk-dl dt[b-p5ykk3gxwr] {
    color: var(--sg-muted-soft);
}

.poi-risk-dl dd[b-p5ykk3gxwr] {
    margin: 0;
    color: var(--sg-heading);
    font-weight: 600;
}

.poi-risk-dot[b-p5ykk3gxwr] {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    margin-right: 6px;
    vertical-align: middle;
}

.poi-risk-dot--high[b-p5ykk3gxwr] { background: #ef4444; }
.poi-risk-dot--medium[b-p5ykk3gxwr] { background: #f97316; }
.poi-risk-dot--low[b-p5ykk3gxwr] { background: #3b82f6; }

/* Risk pills (also used in the header) */
.poi-risk-pill[b-p5ykk3gxwr] {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.poi-risk-pill--high[b-p5ykk3gxwr] {
    background: rgba(239,68,68,0.18);
    color: var(--sg-danger);
    border: 1px solid rgba(239,68,68,0.4);
}

.poi-risk-pill--medium[b-p5ykk3gxwr] {
    background: rgba(249,115,22,0.18);
    color: var(--sg-warning);
    border: 1px solid rgba(249,115,22,0.4);
}

.poi-risk-pill--low[b-p5ykk3gxwr] {
    background: rgba(59,130,246,0.18);
    color: var(--sg-accent);
    border: 1px solid rgba(59,130,246,0.4);
}

/* Linked incidents */
.poi-incidents-block[b-p5ykk3gxwr] {
    padding: 0 22px 18px;
}

.poi-incidents-block__header[b-p5ykk3gxwr] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 0 10px;
}

.poi-incidents-block__header h3[b-p5ykk3gxwr] {
    margin: 0;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--sg-muted-soft);
    font-weight: 700;
}

.poi-incidents-table[b-p5ykk3gxwr] {
    background: var(--sg-card);
    border: 1px solid var(--sg-border);
    border-radius: 12px;
    overflow: hidden;
}

.poi-incidents-row[b-p5ykk3gxwr] {
    display: grid;
    grid-template-columns: 24px 110px 130px 1fr 100px 110px 18px;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    font-size: 12px;
    color: var(--sg-subtext);
    border-bottom: 1px solid var(--sg-border);
    text-decoration: none;
    transition: background 0.12s;
}

.poi-incidents-row:hover[b-p5ykk3gxwr] {
    background: rgba(59,130,246,0.08);
    text-decoration: none;
    color: var(--sg-subtext);
}

.poi-incidents-row:last-child[b-p5ykk3gxwr] {
    border-bottom: none;
}

.poi-incidents-row__id[b-p5ykk3gxwr] {
    color: var(--sg-heading);
    font-weight: 600;
    font-family: ui-monospace, monospace;
    font-size: 12px;
}

.poi-incidents-row__type[b-p5ykk3gxwr] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 3px 8px;
    border-radius: 5px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.04em;
    background: rgba(239,68,68,0.18);
    color: var(--sg-danger);
    border: 1px solid rgba(239,68,68,0.35);
    width: fit-content;
}

.poi-incidents-row__type--burglary[b-p5ykk3gxwr] { background: rgba(168,85,247,0.18); color: var(--sg-purple-text); border-color: rgba(168,85,247,0.35); }
.poi-incidents-row__type--suspicious[b-p5ykk3gxwr] { background: rgba(249,115,22,0.18); color: var(--sg-warning); border-color: rgba(249,115,22,0.35); }
.poi-incidents-row__type--trespassing[b-p5ykk3gxwr] { background: rgba(234,179,8,0.18); color: #fde047; border-color: rgba(234,179,8,0.35); }
.poi-incidents-row__type--vandalism[b-p5ykk3gxwr] { background: rgba(236,72,153,0.18); color: #f9a8d4; border-color: rgba(236,72,153,0.35); }
.poi-incidents-row__type--fraud[b-p5ykk3gxwr] { background: rgba(20,184,166,0.18); color: #5eead4; border-color: rgba(20,184,166,0.35); }
.poi-incidents-row__type--loitering[b-p5ykk3gxwr] { background: rgba(100,116,139,0.18); color: var(--sg-subtext); border-color: rgba(100,116,139,0.35); }

.poi-incidents-row__location[b-p5ykk3gxwr] { color: var(--sg-subtext); }
.poi-incidents-row__date[b-p5ykk3gxwr] { color: var(--sg-muted-soft); font-size: 12px; }

.poi-incidents-row__status[b-p5ykk3gxwr] {
    font-size: 11px;
    font-weight: 600;
}

.poi-incidents-row__status--review[b-p5ykk3gxwr] { color: var(--sg-accent); }
.poi-incidents-row__status--closed[b-p5ykk3gxwr] { color: var(--sg-muted-soft); }

.poi-incidents-row > i:last-child[b-p5ykk3gxwr] {
    color: var(--sg-muted-soft);
    justify-self: end;
}

/* Footer disclaimer */
.poi-footer-disclaimer[b-p5ykk3gxwr] {
    margin: 0 22px 22px;
    display: flex;
    gap: 12px;
    align-items: flex-start;
    padding: 14px 18px;
    background: var(--sg-card);
    border: 1px solid rgba(234,179,8,0.25);
    border-radius: 10px;
    font-size: 12px;
    color: var(--sg-muted-soft);
    line-height: 1.5;
}

.poi-footer-disclaimer i[b-p5ykk3gxwr] {
    color: var(--sg-warn-text);
    font-size: 18px;
    margin-top: 1px;
}

/* ── Modals owned by this component (create-incident, edit) ──────────────── */

.poi-modal-backdrop[b-p5ykk3gxwr] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.65);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 24px;
}

.poi-modal[b-p5ykk3gxwr] {
    background: var(--sg-panel);
    border: 1px solid var(--sg-border);
    border-radius: 18px;
    width: 100%;
    max-width: 720px;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    box-shadow: 0 24px 64px rgba(0,0,0,0.5);
}

.poi-modal--narrow[b-p5ykk3gxwr] { max-width: 540px; }

.poi-modal__header[b-p5ykk3gxwr] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 24px 16px;
    border-bottom: 1px solid var(--sg-border);
    flex-shrink: 0;
}

.poi-modal__header h2[b-p5ykk3gxwr] {
    margin: 0;
    font-size: 20px;
    color: var(--sg-heading);
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.poi-modal__header h2 i[b-p5ykk3gxwr] {
    color: var(--sg-accent);
}

.poi-modal__body[b-p5ykk3gxwr] {
    padding: 20px 24px;
    overflow-y: auto;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.poi-modal__row[b-p5ykk3gxwr] {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
}

.poi-modal__field[b-p5ykk3gxwr] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    flex: 1 1 180px;
    min-width: 0;
}

.poi-modal__field--half[b-p5ykk3gxwr] {
    flex: 0 1 100px;
}

.poi-modal__field--full[b-p5ykk3gxwr] {
    flex: 1 1 100%;
}

.poi-modal__field label[b-p5ykk3gxwr] {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: var(--sg-muted-soft);
    font-weight: 600;
}

.poi-modal__required[b-p5ykk3gxwr] {
    color: var(--sg-err-text);
}

.poi-modal__field input[b-p5ykk3gxwr],
.poi-modal__field select[b-p5ykk3gxwr],
.poi-modal__field textarea[b-p5ykk3gxwr] {
    background: var(--sg-card);
    border: 1px solid var(--sg-border);
    border-radius: 8px;
    padding: 9px 12px;
    color: var(--sg-heading);
    font-size: 13px;
    outline: none;
    transition: border-color 0.15s;
    width: 100%;
}

.poi-modal__field input:focus[b-p5ykk3gxwr],
.poi-modal__field select:focus[b-p5ykk3gxwr],
.poi-modal__field textarea:focus[b-p5ykk3gxwr] {
    border-color: #3b82f6;
}

.poi-modal__field select option[b-p5ykk3gxwr] {
    background: var(--sg-card);
}

.poi-modal__field textarea[b-p5ykk3gxwr] {
    resize: vertical;
    min-height: 64px;
}

.poi-modal__error[b-p5ykk3gxwr] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    background: rgba(239,68,68,0.12);
    border: 1px solid rgba(239,68,68,0.35);
    border-radius: 8px;
    color: var(--sg-danger);
    font-size: 13px;
}

.poi-modal__footer[b-p5ykk3gxwr] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 16px 24px 20px;
    border-top: 1px solid var(--sg-border);
    flex-shrink: 0;
}

.poi-tab-body[b-p5ykk3gxwr] {
    padding: 18px 22px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.poi-photo-upload-row[b-p5ykk3gxwr] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--sg-border);
}
/* /Components/Shared/QuickContactsModal.razor.rz.scp.css */
/* ── QuickContacts popup — fast tap-to-call directory ── */

.qc-toolbar[b-cygfo99kwd] {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 12px;
}

.qc-tabs[b-cygfo99kwd] {
    display: flex;
    gap: 6px;
    flex: 1 1 auto;
}

.qc-tab[b-cygfo99kwd] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 14px;
    border-radius: 999px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    color: var(--sg-subtext);
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
}

.qc-tab--active[b-cygfo99kwd] {
    background: rgba(59,130,246,0.22);
    border-color: rgba(96,165,250,0.5);
    color: var(--sg-accent);
}

.qc-tab__count[b-cygfo99kwd] {
    font-size: 11px;
    opacity: 0.7;
}

.qc-search[b-cygfo99kwd] {
    flex: 0 1 220px;
    min-width: 140px;
}

.qc-list[b-cygfo99kwd] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    /* FIXED height (not max-height): the popup opens at full size and keeps it
       for its whole duration — switching to a tab with fewer rows must never
       shrink the modal. Long tabs scroll inside this area. */
    height: 56vh;
    overflow-y: auto;
    padding-right: 2px;
}

.qc-empty[b-cygfo99kwd] {
    padding: 28px 16px;
    text-align: center;
    color: var(--sg-muted);
    font-size: 13px;
}

.qc-row[b-cygfo99kwd] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 14px;
    border-radius: 12px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.qc-row__avatar[b-cygfo99kwd] {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: rgba(96,165,250,0.15);
    color: var(--sg-accent);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    flex-shrink: 0;
}

.qc-row__avatar--icon[b-cygfo99kwd] { font-size: 16px; }

.qc-row__avatar--logo[b-cygfo99kwd] {
    object-fit: contain;
    background: var(--sg-card);
}

.qc-row__body[b-cygfo99kwd] {
    flex: 1 1 auto;
    min-width: 0;
}

.qc-row__name[b-cygfo99kwd] {
    font-weight: 600;
    color: var(--sg-text);
    font-size: 14px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.qc-row__meta[b-cygfo99kwd] {
    font-size: 12px;
    color: var(--sg-muted);
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.qc-row__actions[b-cygfo99kwd] {
    display: flex;
    gap: 8px;
    flex-shrink: 0;
}

.qc-row__actions a[b-cygfo99kwd] {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    text-decoration: none;
    border: 1px solid transparent;
}

.qc-call[b-cygfo99kwd] { background: rgba(34,197,94,0.16);  color: var(--sg-online-text); border-color: rgba(74,222,128,0.3) !important; }
.qc-wa[b-cygfo99kwd]   { background: rgba(37,211,102,0.12); color: #25d366; border-color: rgba(37,211,102,0.3) !important; }
.qc-mail[b-cygfo99kwd] { background: rgba(96,165,250,0.12); color: var(--sg-accent); border-color: rgba(96,165,250,0.3) !important; }

.qc-call:hover[b-cygfo99kwd], .qc-wa:hover[b-cygfo99kwd], .qc-mail:hover[b-cygfo99kwd] { filter: brightness(1.25); }
/* /Components/Shared/ReportsCrimeStatsTab.razor.rz.scp.css */
/* CrimeStats page */
.crime-stats-page[b-w5nio5i91t] { gap: 14px; }

.crime-stats-card[b-w5nio5i91t] { flex: 0 0 auto; }

.crime-stats-table th[b-w5nio5i91t],
.crime-stats-table td[b-w5nio5i91t] {
    min-width: 44px;
    text-align: center;
    font-size: 12px;
    padding: 6px 4px;
}

.crime-stats-table td:first-child[b-w5nio5i91t],
.crime-stats-table th:first-child[b-w5nio5i91t] {
    text-align: left;
    min-width: 140px;
    padding-left: 12px;
}

.crime-cell--nonzero[b-w5nio5i91t] {
    background: rgba(239, 68, 68, 0.12);
    color: var(--sg-danger);
    font-weight: 600;
    border-radius: 4px;
}
/* /Components/Shared/ReportsOverviewTab.razor.rz.scp.css */
.crime-stats-page[b-tcfj4ibxqd] {
    min-height: 0;
    height: 100%;
    overflow: hidden;
}

.crime-stats-scope-switcher[b-tcfj4ibxqd] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px;
    border-radius: 14px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.crime-stats-scope-switcher__button[b-tcfj4ibxqd] {
    min-height: 38px;
    padding: 0 14px;
    border-radius: 10px;
    border: 1px solid transparent;
    background: transparent;
    color: var(--sg-muted-soft);
    font-size: 13px;
}

.crime-stats-scope-switcher__button--active[b-tcfj4ibxqd] {
    background: rgba(37,99,235,0.92);
    border-color: rgba(96,165,250,0.62);
    color: var(--sg-heading);
}

.crime-stats-toolbar[b-tcfj4ibxqd] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 12px;
}

.crime-stats-toolbar__date-pill[b-tcfj4ibxqd],
.crime-stats-toolbar__range-select select[b-tcfj4ibxqd] {
    min-height: 42px;
    border-radius: 12px;
    border: 1px solid rgba(148,163,184,0.22);
    background: var(--sg-card);
    color: var(--sg-heading);
    padding: 0 14px;
}

.crime-stats-toolbar__date-pill[b-tcfj4ibxqd] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.crime-stats-summary-grid[b-tcfj4ibxqd] {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 18px;
}

.crime-stats-summary-card[b-tcfj4ibxqd] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 18px;
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background: linear-gradient(var(--sg-card), var(--sg-card));
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 18px 40px rgba(0,0,0,0.2);
}

.crime-stats-summary-card__icon[b-tcfj4ibxqd] {
    width: 46px;
    height: 46px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(37,99,235,0.24);
    color: var(--sg-accent);
    font-size: 20px;
    flex: 0 0 auto;
}

.crime-stats-summary-card__label[b-tcfj4ibxqd] {
    color: var(--sg-muted-soft);
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-size: 11px;
    margin-bottom: 6px;
}

.crime-stats-summary-card__value[b-tcfj4ibxqd] {
    color: var(--sg-heading);
    font-size: 34px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 6px;
}

.crime-stats-summary-card__meta[b-tcfj4ibxqd] {
    font-size: 12px;
}

.crime-stats-summary-card__meta--alert[b-tcfj4ibxqd] {
    color: #fda4af;
}

.crime-stats-summary-card__meta--good[b-tcfj4ibxqd] {
    color: var(--sg-success);
}

.crime-stats-main-grid[b-tcfj4ibxqd],
.crime-stats-secondary-grid[b-tcfj4ibxqd] {
    min-height: 0;
    display: grid;
    gap: 18px;
}

.crime-stats-main-grid[b-tcfj4ibxqd] {
    grid-template-columns: minmax(0, 1.65fr) minmax(340px, 1fr);
    flex: 1.18 1 0;
}

.crime-stats-secondary-grid[b-tcfj4ibxqd] {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    flex: 0.9 1 0;
}

.crime-stats-insight-card[b-tcfj4ibxqd] {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 18px;
    padding: 18px;
    border-radius: 18px;
    border: 1px solid var(--sg-border);
    background: linear-gradient(var(--sg-card), var(--sg-card));
}

.crime-stats-insight-card__icon[b-tcfj4ibxqd] {
    width: 46px;
    height: 46px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(37,99,235,0.2);
    color: var(--sg-accent);
    font-size: 20px;
}

.crime-stats-insight-card__content h2[b-tcfj4ibxqd] {
    margin: 0 0 6px;
    color: var(--sg-heading);
    font-size: 18px;
    font-weight: 700;
}

.crime-stats-insight-card__content p[b-tcfj4ibxqd] {
    margin: 0;
    color: var(--sg-muted-soft);
    font-size: 13px;
}

@media (max-width: 1400px) {
    .crime-stats-summary-grid[b-tcfj4ibxqd] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .crime-stats-main-grid[b-tcfj4ibxqd],
    .crime-stats-secondary-grid[b-tcfj4ibxqd] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 960px) {
    .crime-stats-summary-grid[b-tcfj4ibxqd] {
        grid-template-columns: 1fr;
    }

    .crime-stats-toolbar[b-tcfj4ibxqd],
    .crime-stats-insight-card[b-tcfj4ibxqd] {
        grid-template-columns: 1fr;
        flex-direction: column;
        align-items: stretch;
    }
}
/* /Components/Shared/ReviewOrgModal.razor.rz.scp.css */
/* ── Modal chrome — exact match to manage-tenant-modal ──────────────── */
.modal-content[b-7fh8m9k4i0] {
    border-radius: 20px;
    border: 1px solid var(--sg-border);
    background: linear-gradient(180deg, var(--sg-card), var(--sg-card));
    color: var(--sg-heading);
}

.modal-header[b-7fh8m9k4i0],
.modal-footer[b-7fh8m9k4i0] {
    border-color: var(--sg-border);
}

.form-label[b-7fh8m9k4i0] {
    color: var(--sg-subtext);
}

.form-control[b-7fh8m9k4i0],
.form-select[b-7fh8m9k4i0] {
    border-radius: 12px;
    border-color: rgba(148,163,184,0.24);
    background: var(--sg-card);
    color: var(--sg-heading);
}

.btn-close[b-7fh8m9k4i0] {
    filter: invert(1);
}

/* ── Location map ────────────────────────────────────────────────────── */
.rom-map[b-7fh8m9k4i0] {
    width: 100%;
    height: 220px;
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid var(--sg-border);
    margin-bottom: 20px;
}
/* /Components/Shared/RoamingVisitBanner.razor.rz.scp.css */
.roaming-banner[b-xoz8x25rzp] {
    display: flex;
    align-items: center;
    gap: 10px;
    background: #1e3a5f;
    border: 1px solid #2563eb44;
    border-radius: 10px;
    padding: 8px 14px;
    margin: 0 0 10px 0;
    font-size: 13px;
    color: var(--sg-text);
}

.roaming-banner__icon[b-xoz8x25rzp] { font-size: 18px; }

.roaming-banner__body[b-xoz8x25rzp] {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.roaming-banner__label[b-xoz8x25rzp] { color: var(--sg-muted); }
.roaming-banner__tenant[b-xoz8x25rzp] { color: var(--sg-accent); font-weight: 600; }
.roaming-banner__expires[b-xoz8x25rzp] { color: #64748b; font-size: 11px; }

.roaming-banner__end[b-xoz8x25rzp] {
    background: transparent;
    border: 1px solid #475569;
    color: var(--sg-muted);
    border-radius: 6px;
    padding: 4px 10px;
    font-size: 12px;
    cursor: pointer;
    transition: all 0.15s;
}

.roaming-banner__end:hover[b-xoz8x25rzp] {
    background: #dc2626;
    border-color: #dc2626;
    color: white;
}
/* /Components/Shared/SgColorPicker.razor.rz.scp.css */
.sgcp[b-1828uhgmw4] {
    position: relative;
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
}

.sgcp__swatch[b-1828uhgmw4] {
    width: 44px;
    height: 32px;
    border-radius: 7px;
    border: 1px solid var(--sg-border);
    cursor: pointer;
    padding: 0;
    box-shadow: inset 0 0 0 2px rgba(255,255,255,0.35);
}
.sgcp__swatch:disabled[b-1828uhgmw4] { opacity: 0.5; cursor: default; }

.sgcp__backdrop[b-1828uhgmw4] {
    position: fixed;
    inset: 0;
    z-index: 1090;
    background: transparent;
}

/* In normal flow (not absolute) so it can never be clipped by a scrolling
   card/modal column — the surrounding layout simply makes room for it. */
.sgcp__pop[b-1828uhgmw4] {
    position: relative;
    z-index: 1091;
    width: 234px;
    padding: 12px;
    border-radius: 12px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    box-shadow: 0 18px 40px rgba(2, 8, 20, 0.35);
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.sgcp__presets[b-1828uhgmw4] {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 6px;
}

.sgcp__preset[b-1828uhgmw4] {
    width: 100%;
    aspect-ratio: 1;
    border-radius: 6px;
    border: 1px solid var(--sg-border);
    cursor: pointer;
    padding: 0;
}
.sgcp__preset--on[b-1828uhgmw4] { outline: 2px solid var(--sg-accent); outline-offset: 1px; }

.sgcp__slider-row[b-1828uhgmw4] { display: flex; }

.sgcp__hue[b-1828uhgmw4], .sgcp__sat[b-1828uhgmw4], .sgcp__lum[b-1828uhgmw4] {
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
    height: 14px;
    border-radius: 999px;
    border: 1px solid var(--sg-border);
    outline: none;
}
.sgcp__hue[b-1828uhgmw4] {
    background: linear-gradient(90deg, #f00, #ff0, #0f0, #0ff, #00f, #f0f, #f00);
}
.sgcp__sat[b-1828uhgmw4] {
    background: linear-gradient(90deg, hsl(var(--sgcp-h), 0%, 50%), hsl(var(--sgcp-h), 100%, 50%));
}
.sgcp__lum[b-1828uhgmw4] {
    background: linear-gradient(90deg, #000, hsl(var(--sgcp-h), calc(var(--sgcp-s) * 1%), 50%), #fff);
}

.sgcp__hue[b-1828uhgmw4]::-webkit-slider-thumb,
.sgcp__sat[b-1828uhgmw4]::-webkit-slider-thumb,
.sgcp__lum[b-1828uhgmw4]::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #fff;
    border: 2px solid rgba(15, 23, 42, 0.45);
    box-shadow: 0 1px 4px rgba(0,0,0,0.35);
    cursor: pointer;
}

.sgcp__footer[b-1828uhgmw4] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.sgcp__preview[b-1828uhgmw4] {
    width: 28px;
    height: 28px;
    border-radius: 7px;
    border: 1px solid var(--sg-border);
    flex: 0 0 auto;
}

.sgcp__hex[b-1828uhgmw4] {
    flex: 1 1 auto;
    min-width: 0;
    height: 30px;
    padding: 0 8px;
    border-radius: 7px;
    border: 1px solid var(--sg-border);
    background: var(--sg-input-bg, var(--sg-card));
    color: var(--sg-text);
    font-family: ui-monospace, monospace;
    font-size: 12.5px;
    text-transform: uppercase;
}

.sgcp__done[b-1828uhgmw4] {
    height: 30px;
    padding: 0 12px;
    border-radius: 7px;
    border: 1px solid var(--sg-accent);
    background: var(--sg-accent);
    color: #fff;
    font-size: 12.5px;
    font-weight: 600;
    cursor: pointer;
}
/* /Components/Shared/SgDialog.razor.rz.scp.css */
/* ── SgDialog themed overlay ── */
.sg-dialog-overlay[b-j5xgurrqvx] {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0,0,0,0.65);
    backdrop-filter: blur(4px);
}

.sg-dialog-card[b-j5xgurrqvx] {
    width: 380px;
    max-width: 92vw;
    background: linear-gradient(180deg, var(--sg-card) 0%, var(--sg-panel) 100%);
    border: 1px solid var(--sg-border, var(--sg-border));
    border-radius: 18px;
    padding: 0;
    box-shadow: 0 8px 40px rgba(0,0,0,0.6);
    animation: sg-dialog-in-b-j5xgurrqvx 0.18s ease-out;
}

@keyframes sg-dialog-in-b-j5xgurrqvx {
    from { opacity: 0; transform: scale(0.95) translateY(8px); }
    to   { opacity: 1; transform: scale(1) translateY(0); }
}

.sg-dialog-header[b-j5xgurrqvx] {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 24px 24px 0;
}

.sg-dialog-icon[b-j5xgurrqvx] {
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: #fff;
}
.sg-dialog-icon-info[b-j5xgurrqvx]    { background: #2563EB; }
.sg-dialog-icon-success[b-j5xgurrqvx] { background: #22C55E; }
.sg-dialog-icon-warning[b-j5xgurrqvx] { background: #F59E0B; }
.sg-dialog-icon-danger[b-j5xgurrqvx]  { background: #EF4444; }
.sg-dialog-icon-edit[b-j5xgurrqvx]    { background: #A855F7; }

.sg-dialog-title[b-j5xgurrqvx] {
    margin: 0;
    color: var(--sg-heading);
    font-size: 18px;
    font-weight: 600;
    line-height: 1.3;
    padding-top: 8px;
}

.sg-dialog-message[b-j5xgurrqvx] {
    padding: 14px 24px 0;
    margin: 0;
    color: var(--sg-muted);
    font-size: 14px;
    line-height: 1.5;
    white-space: pre-line;
}

.sg-dialog-input-wrap[b-j5xgurrqvx] {
    padding: 14px 24px 0;
}

.sg-dialog-input[b-j5xgurrqvx] {
    width: 100%;
    background: var(--sg-card);
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    color: var(--sg-heading);
    font-size: 14px;
    padding: 10px 14px;
    outline: none;
    box-sizing: border-box;
}
.sg-dialog-input:focus[b-j5xgurrqvx] {
    border-color: #2563EB;
}
.sg-dialog-textarea[b-j5xgurrqvx] {
    min-height: 90px;
    resize: vertical;
}

.sg-dialog-buttons[b-j5xgurrqvx] {
    display: flex;
    gap: 12px;
    padding: 20px 24px 22px;
}

.sg-dialog-btn[b-j5xgurrqvx] {
    flex: 1;
    height: 44px;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 600;
    border: none;
    cursor: pointer;
    transition: opacity 0.15s;
}
.sg-dialog-btn:hover[b-j5xgurrqvx] { opacity: 0.85; }

.sg-dialog-btn-secondary[b-j5xgurrqvx] {
    background: var(--sg-card);
    color: var(--sg-muted);
    border: 1px solid var(--sg-border);
}

.sg-dialog-btn-primary[b-j5xgurrqvx] {
    background: #2563EB;
    color: #fff;
}

.sg-dialog-btn-danger[b-j5xgurrqvx] {
    background: #EF4444;
}
/* /Components/Shared/SuperAdminPageHeader.razor.rz.scp.css */
.admin-dashboard__topbar[b-o87379gmsk] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 0;
}

.admin-dashboard__eyebrow[b-o87379gmsk] {
    color: var(--sg-muted-soft);
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 11px;
    margin-bottom: 8px;
}

.admin-dashboard__title[b-o87379gmsk] {
    margin: 0;
    font-size: clamp(28px, 3vw, 38px);
    font-weight: 700;
    color: var(--sg-heading);
}

.admin-dashboard__subtitle[b-o87379gmsk] {
    margin: 8px 0 0;
    color: var(--sg-subtext);
    font-size: 15px;
    max-width: 760px;
}

.admin-dashboard__topbar-actions[b-o87379gmsk] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.admin-dashboard__filter[b-o87379gmsk] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px 10px;
    border-radius: 14px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
}

.admin-dashboard__filter-label[b-o87379gmsk] {
    color: var(--sg-subtext);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.admin-dashboard__filter-select[b-o87379gmsk] {
    min-width: 160px;
    border: 1px solid var(--sg-border);
    border-radius: 10px;
    background: var(--sg-card);
    color: var(--sg-heading);
    padding: 8px 12px;
}

.admin-notification-wrap[b-o87379gmsk] {
    position: relative;
}

.admin-icon-button[b-o87379gmsk] {
    width: 38px;
    height: 38px;
    border-radius: 12px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    color: var(--sg-text);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.06);
    position: relative;
}

.admin-icon-button--alert[b-o87379gmsk] {
    color: var(--sg-danger);
    border-color: rgba(248,113,113,0.55);
    background: rgba(127,29,29,0.5);
}

.admin-icon-button__badge[b-o87379gmsk] {
    position: absolute;
    top: -6px;
    right: -6px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 999px;
    background: #ef4444;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.admin-notification-popover[b-o87379gmsk] {
    position: absolute;
    top: calc(100% + 12px);
    right: 0;
    width: 290px;
    border-radius: 16px;
    border: 1px solid var(--sg-border);
    background: var(--sg-card);
    box-shadow: 0 24px 50px rgba(0,0,0,0.38);
    padding: 12px;
    z-index: 20;
}

.admin-notification-popover__header[b-o87379gmsk] {
    color: var(--sg-heading);
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 8px;
}

.admin-notification-item[b-o87379gmsk] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 10px 12px;
    border-radius: 12px;
    color: var(--sg-text);
    text-decoration: none;
}

.admin-notification-item:hover[b-o87379gmsk] {
    background: rgba(59,130,246,0.14);
    color: var(--sg-heading);
}

.admin-notification-item strong[b-o87379gmsk] {
    font-size: 14px;
    color: var(--sg-heading);
}

.admin-notification-item span[b-o87379gmsk],
.admin-notification-empty[b-o87379gmsk] {
    font-size: 12px;
    color: var(--sg-eyebrow, rgba(191,219,254,0.82));
}

.admin-notification-clear-btn[b-o87379gmsk] {
    background: none;
    border: none;
    color: var(--sg-accent);
    font-size: 12px;
    cursor: pointer;
    padding: 0;
    margin-left: auto;
}
.admin-notification-clear-btn:hover[b-o87379gmsk] { text-decoration: underline; }

.admin-notification-popover__header[b-o87379gmsk] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.admin-notification-item__icon[b-o87379gmsk] {
    font-size: 16px;
    flex-shrink: 0;
}

.admin-notification-item--critical[b-o87379gmsk] {
    border-left: 3px solid #ef4444;
}
.admin-notification-item--high[b-o87379gmsk] {
    border-left: 3px solid #f59e0b;
}
.admin-notification-item--normal[b-o87379gmsk] {
    border-left: 3px solid #3b82f6;
}

.admin-notification-item small[b-o87379gmsk] {
    font-size: 10px;
    color: rgba(148,163,184,0.8);
}
