html {
    font-size: 14px;
    position: relative;
    min-height: 100%;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

:root {
    --cp-bg: #07111e;
    --cp-bg-2: #0b1626;
    --cp-bg-3: #101d31;
    --cp-surface: rgba(13, 24, 40, 0.82);
    --cp-surface-solid: #101b2e;
    --cp-panel: rgba(15, 27, 45, 0.88);
    --cp-panel-2: rgba(18, 32, 52, 0.92);
    --cp-panel-3: rgba(28, 43, 69, 0.72);
    --cp-border: rgba(148, 163, 184, 0.15);
    --cp-border-strong: rgba(148, 163, 184, 0.28);
    --cp-text: #eef5ff;
    --cp-muted: #a8b4c7;
    --cp-dim: #748298;
    --cp-accent: #8bdc2f;
    --cp-accent-2: #38bdf8;
    --cp-accent-3: #8b5cf6;
    --cp-warn: #f59e0b;
    --cp-danger: #ef4444;
    --cp-good: #22c55e;
    --cp-shadow-lg: 0 26px 70px rgba(0, 0, 0, 0.36);
    --cp-shadow-md: 0 18px 46px rgba(0, 0, 0, 0.26);
    --cp-radius-lg: 1.35rem;
    --cp-radius-md: 1rem;
    --cp-radius-sm: .8rem;
}

* {
    box-sizing: border-box;
}

body {
    min-height: 100vh;
    margin: 0;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    color: var(--cp-text);
    background:
        radial-gradient(circle at 12% -10%, rgba(139, 92, 246, 0.25), transparent 32rem),
        radial-gradient(circle at 86% 4%, rgba(56, 189, 248, 0.18), transparent 30rem),
        radial-gradient(circle at 64% 110%, rgba(139, 220, 47, 0.11), transparent 34rem),
        linear-gradient(180deg, #07111e 0%, #0a1422 48%, #08111f 100%);
    background-attachment: fixed;
}

body::before {
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: -1;
    background-image:
        linear-gradient(rgba(255,255,255,0.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.025) 1px, transparent 1px);
    background-size: 46px 46px;
    mask-image: linear-gradient(to bottom, rgba(0,0,0,.55), transparent 78%);
}

a {
    color: #b8e986;
}

a:hover {
    color: #d7ffad;
}

.global-app-shell {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.global-header {
    position: sticky;
    top: 0;
    z-index: 1030;
    border-bottom: 1px solid rgba(148, 163, 184, 0.13);
    background: rgba(6, 15, 27, 0.72);
    backdrop-filter: blur(20px);
    box-shadow: 0 12px 40px rgba(0,0,0,.22);
}

.global-navbar {
    display: flex;
    align-items: center;
    min-height: 5rem;
    padding: .85rem 0;
}

.global-nav-container,
.global-main,
.global-footer-inner {
    max-width: 1500px;
    padding-left: clamp(1rem, 2.5vw, 2.25rem);
    padding-right: clamp(1rem, 2.5vw, 2.25rem);
}

.global-nav-container {
    display: flex;
    width: 100%;
    align-items: center;
    gap: 1rem;
}

.global-brand {
    display: inline-flex;
    align-items: center;
    gap: .8rem;
    color: var(--cp-text);
    text-decoration: none;
}

.global-brand:hover {
    color: var(--cp-text);
}

.global-brand-mark {
    width: 2.85rem;
    height: 2.85rem;
    display: inline-grid;
    place-items: center;
    border: 1px solid rgba(139, 220, 47, 0.38);
    border-radius: 1rem;
    background:
        linear-gradient(145deg, rgba(139, 220, 47, .22), rgba(56, 189, 248, .11)),
        rgba(10, 20, 35, .9);
    color: #d7ffad;
    font-weight: 800;
    font-size: 1.12rem;
    box-shadow: 0 0 0 5px rgba(139, 220, 47, 0.05), 0 16px 36px rgba(0,0,0,.25);
}

.global-brand-copy {
    display: flex;
    flex-direction: column;
    line-height: 1.05;
}

.global-brand-name {
    font-size: 1.08rem;
    font-weight: 800;
    letter-spacing: -.02em;
}

.global-brand-subtitle {
    margin-top: .22rem;
    color: var(--cp-muted);
    font-size: .74rem;
    font-weight: 700;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.global-nav-collapse {
    display: flex;
    flex: 1 1 auto;
    align-items: center;
    justify-content: space-between;
    margin-left: 2rem;
    min-width: 0;
}

.global-nav-list {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .25rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.global-nav-list .nav-item {
    list-style: none;
}

.global-nav-list .nav-item::marker {
    content: "";
}

.global-nav-link {
    position: relative;
    margin: 0 .12rem;
    padding: .55rem .82rem !important;
    border-radius: 999px;
    color: #b8c4d6 !important;
    font-weight: 700;
    font-size: .92rem;
    transition: color .16s ease, background .16s ease, transform .16s ease;
}

.global-nav-link:hover,
.global-nav-link:focus {
    color: #ffffff !important;
    background: rgba(255,255,255,.06);
    transform: translateY(-1px);
}

.global-nav-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .65rem;
    flex-wrap: wrap;
}

.global-health-chip,
.global-user-chip,
.cp-app-badge,
.cp-env-badge,
.cp-user-chip,
.cp-section-label,
.cp-tile-kicker,
.cp-side-kicker,
.cp-status,
.platform-code-chip,
.platform-badge {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    font-weight: 800;
    letter-spacing: .02em;
}

.global-health-chip,
.global-user-chip {
    min-height: 2.25rem;
    padding: .42rem .72rem;
    border: 1px solid var(--cp-border);
    background: rgba(255,255,255,0.045);
    color: #d9e4f4;
    font-size: .86rem;
}

.global-health-dot {
    width: .58rem;
    height: .58rem;
    margin-right: .48rem;
    border-radius: 999px;
    background: var(--cp-good);
    box-shadow: 0 0 0 5px rgba(34, 197, 94, .13), 0 0 18px rgba(34, 197, 94, .42);
}

.global-btn-primary,
.global-btn-outline,
.cp-btn-primary,
.cp-btn-secondary,
.btn-platform-primary {
    min-height: 2.35rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    padding-left: .95rem;
    padding-right: .95rem;
    font-weight: 800;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease;
}

.global-btn-primary,
.cp-btn-primary,
.btn-platform-primary {
    border-color: rgba(139, 220, 47, .65) !important;
    background: linear-gradient(180deg, #a7ef42 0%, #78c318 100%) !important;
    color: #07111e !important;
    box-shadow: 0 12px 28px rgba(120, 195, 24, .18);
}

.global-btn-primary:hover,
.global-btn-primary:focus,
.cp-btn-primary:hover,
.cp-btn-primary:focus,
.btn-platform-primary:hover,
.btn-platform-primary:focus {
    color: #07111e !important;
    border-color: #c2ff6a !important;
    transform: translateY(-1px);
    box-shadow: 0 16px 34px rgba(120, 195, 24, .24);
}

.global-btn-outline,
.cp-btn-secondary {
    color: #dbe4f0 !important;
    border-color: var(--cp-border-strong) !important;
    background: rgba(255,255,255,0.035) !important;
}

.global-btn-outline:hover,
.global-btn-outline:focus,
.cp-btn-secondary:hover,
.cp-btn-secondary:focus {
    color: #ffffff !important;
    border-color: rgba(255,255,255,0.34) !important;
    background: rgba(255,255,255,0.075) !important;
    transform: translateY(-1px);
}

.global-navbar-toggler {
    border-color: var(--cp-border-strong);
    background: rgba(255,255,255,.06);
}

.global-navbar-toggler:focus {
    box-shadow: 0 0 0 .2rem rgba(139, 220, 47, .18);
}

.global-navbar-toggler .navbar-toggler-icon {
    filter: invert(1) grayscale(1) brightness(1.8);
}

.global-main-wrap {
    flex: 1;
}

.global-main {
    padding-top: clamp(1.25rem, 2.5vw, 2.4rem);
    padding-bottom: clamp(2rem, 4vw, 4rem);
}

.global-footer {
    border-top: 1px solid rgba(148, 163, 184, 0.12);
    background: rgba(6, 15, 27, .55);
}

.global-footer-inner {
    min-height: 4rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    color: var(--cp-dim);
    font-size: .9rem;
}

.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-select:focus,
.form-check-input:focus {
    box-shadow: 0 0 0 0.1rem rgba(255,255,255,.12), 0 0 0 0.25rem rgba(139,220,47,.24);
}

.cp-shell,
.platform-page {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.cp-topbar,
.cp-command-panel,
.cp-section,
.platform-card,
.platform-stat-card,
.platform-form-card,
.platform-table-card,
.auth-card {
    position: relative;
    overflow: hidden;
    border: 1px solid var(--cp-border);
    border-radius: var(--cp-radius-lg);
    background:
        linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.015)),
        var(--cp-panel);
    box-shadow: var(--cp-shadow-md);
}

.cp-topbar::before,
.cp-command-panel::before,
.cp-section::before,
.platform-card::before,
.platform-stat-card::before,
.platform-form-card::before,
.platform-table-card::before,
.auth-card::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.28), transparent);
    opacity: .85;
}

.cp-topbar {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.15rem 1.25rem;
}

.cp-topbar-left {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
}

.cp-topbar-right {
    display: flex;
    gap: .75rem;
    align-items: center;
    flex-wrap: wrap;
}

.cp-app-badge,
.cp-env-badge,
.cp-user-chip,
.cp-section-label,
.cp-tile-kicker,
.cp-side-kicker {
    padding: .35rem .65rem;
    border: 1px solid var(--cp-border);
    background: rgba(255,255,255,.05);
    color: #dbe7f8;
    font-size: .78rem;
    text-transform: uppercase;
}

.cp-app-badge,
.cp-tile-kicker {
    border-color: rgba(139, 220, 47, 0.24);
    background: rgba(139, 220, 47, 0.12);
    color: #caff8f;
}

.cp-env-badge,
.platform-code-chip {
    border-color: rgba(56, 189, 248, 0.24);
    background: rgba(56, 189, 248, 0.12);
    color: #bfe8ff;
}

.cp-side-kicker {
    border-color: rgba(245, 158, 11, 0.24);
    background: rgba(245, 158, 11, 0.12);
    color: #ffd28a;
}

.cp-page-title,
.platform-page-title {
    margin: 0;
    color: var(--cp-text);
    font-weight: 800;
    letter-spacing: -.03em;
}

.cp-page-title {
    font-size: clamp(1.45rem, 2vw, 2rem);
}

.platform-page-title {
    font-size: clamp(1.55rem, 2.2vw, 2.15rem);
}

.cp-page-subtitle,
.platform-page-subtitle,
.cp-command-text,
.cp-section-header p,
.auth-subtitle,
.platform-form-section-note {
    color: var(--cp-muted);
}

.cp-page-subtitle,
.platform-page-subtitle {
    margin: .35rem 0 0;
    max-width: 62rem;
}

.cp-command-panel {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(290px, .8fr);
    gap: 1.15rem;
    padding: clamp(1.15rem, 2.4vw, 2rem);
    background:
        radial-gradient(circle at 15% 0%, rgba(139, 220, 47, .13), transparent 24rem),
        linear-gradient(180deg, rgba(255,255,255,.065), rgba(255,255,255,.018)),
        var(--cp-panel);
}

.cp-command-main,
.cp-command-side {
    min-width: 0;
}

.cp-command-title {
    margin: 0 0 .85rem;
    max-width: 54rem;
    font-size: clamp(2rem, 4.7vw, 4.45rem);
    line-height: .96;
    letter-spacing: -.07em;
    font-weight: 800;
    color: var(--cp-text);
}

.cp-command-text {
    margin: 0;
    max-width: 56rem;
    font-size: clamp(1rem, 1.25vw, 1.12rem);
    line-height: 1.75;
}

.cp-command-actions,
.platform-form-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    margin-top: 1.35rem;
}

.cp-meta-row {
    display: flex;
    flex-wrap: wrap;
    gap: .8rem 1rem;
    margin-top: 1.35rem;
    padding-top: 1rem;
    border-top: 1px solid var(--cp-border);
    color: var(--cp-dim);
    font-size: .92rem;
}

.cp-meta-row strong {
    color: #cbd8ea;
}

.cp-side-card {
    height: 100%;
    border: 1px solid var(--cp-border);
    border-radius: var(--cp-radius-md);
    padding: 1.1rem;
    background:
        radial-gradient(circle at 100% 0%, rgba(56, 189, 248, .11), transparent 18rem),
        var(--cp-panel-2);
}

.cp-side-list {
    margin: 0;
    padding-left: 1.1rem;
    color: var(--cp-muted);
}

.cp-side-list li + li {
    margin-top: .65rem;
}

.cp-section,
.platform-card .card-body,
.platform-stat-card .card-body,
.platform-form-card .card-body {
    padding: clamp(1.1rem, 2.1vw, 1.65rem);
}

.cp-section-header,
.platform-page-header {
    margin-bottom: 1rem;
}

.cp-section-header h2 {
    margin: 0 0 .35rem;
    font-size: 1.23rem;
    color: var(--cp-text);
    font-weight: 800;
    letter-spacing: -.02em;
}

.cp-tile-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.cp-tile,
.cp-stat-card {
    border: 1px solid var(--cp-border);
    border-radius: var(--cp-radius-md);
    background:
        linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.012)),
        linear-gradient(180deg, rgba(18, 32, 52, 0.96) 0%, rgba(9, 18, 32, 0.98) 100%);
}

.cp-tile {
    display: block;
    min-height: 11rem;
    padding: 1.15rem;
    color: inherit;
    text-decoration: none;
    transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

.cp-tile:hover,
.cp-tile:focus {
    transform: translateY(-3px);
    border-color: rgba(139, 220, 47, 0.36);
    box-shadow: 0 18px 38px rgba(0,0,0,.26), 0 0 0 1px rgba(139,220,47,.06) inset;
    color: inherit;
}

.cp-tile h3 {
    margin: 0 0 .5rem;
    font-size: 1.08rem;
    color: var(--cp-text);
    font-weight: 800;
}

.cp-tile p {
    margin: 0;
    color: var(--cp-muted);
    line-height: 1.55;
}

.cp-stat-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.cp-stat-card {
    padding: 1.15rem;
}

.cp-stat-label,
.platform-stat-label {
    color: var(--cp-muted);
    font-size: .88rem;
    font-weight: 700;
}

.cp-stat-value,
.platform-stat-value {
    margin-top: .45rem;
    font-size: clamp(1.85rem, 3vw, 2.55rem);
    line-height: 1;
    font-weight: 800;
    letter-spacing: -.04em;
    color: var(--cp-text);
}

.cp-stat-meta {
    margin-top: .55rem;
    color: var(--cp-dim);
    font-size: .9rem;
}

.cp-activity-table-wrap,
.platform-table {
    overflow-x: auto;
    border: 1px solid var(--cp-border);
    border-radius: var(--cp-radius-md);
    background: rgba(5, 12, 22, .18);
}

.cp-activity-table,
.platform-table table {
    --bs-table-color: #c5d2e3;
    --bs-table-bg: transparent;
    --bs-table-border-color: rgba(148, 163, 184, 0.12);
    --bs-table-accent-bg: transparent;
    --bs-table-striped-color: #d7e2f0;
    --bs-table-striped-bg: rgba(18, 34, 54, .42);
    --bs-table-hover-color: #f4f8ff;
    --bs-table-hover-bg: rgba(56, 189, 248, .09);
    margin-bottom: 0;
    color: var(--cp-text);
}

.cp-activity-table > :not(caption) > * > *,
.platform-table table > :not(caption) > * > * {
    color: inherit;
    background-color: var(--bs-table-bg);
    box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg);
}

.cp-activity-table thead th,
.platform-table thead th {
    border-bottom: 1px solid var(--cp-border-strong);
    background-color: rgba(24, 41, 64, .92);
    color: #cbd5e1;
    font-size: .78rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em;
    white-space: nowrap;
}

.cp-activity-table tbody td,
.platform-table tbody td {
    border-color: rgba(148, 163, 184, 0.10);
    vertical-align: middle;
    color: #b8c7da;
}

.cp-activity-table tbody tr,
.platform-table tbody tr {
    transition: color .14s ease;
}

.cp-activity-table tbody tr:nth-child(odd) > *,
.platform-table tbody tr:nth-child(odd) > * {
    --bs-table-accent-bg: rgba(7, 16, 29, .46);
}

.cp-activity-table tbody tr:nth-child(even) > *,
.platform-table tbody tr:nth-child(even) > * {
    --bs-table-accent-bg: rgba(18, 34, 54, .52);
}

.cp-activity-table tbody tr:hover > *,
.platform-table tbody tr:hover > * {
    --bs-table-accent-bg: var(--bs-table-hover-bg);
    color: var(--bs-table-hover-color);
}

.cp-status,
.platform-badge {
    padding: .28rem .58rem;
    font-size: .75rem;
}

.cp-status-good,
.platform-badge-active {
    background: rgba(34, 197, 94, 0.14);
    border: 1px solid rgba(34, 197, 94, 0.24);
    color: #9ff3b7;
}

.cp-status-warn {
    background: rgba(245, 158, 11, 0.14);
    border: 1px solid rgba(245, 158, 11, 0.24);
    color: #ffd28a;
}

.platform-page {
    padding-bottom: 2rem;
}

.platform-page-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    flex-wrap: wrap;
}

.platform-card .card-header,
.platform-table-card .card-header,
.platform-form-card .card-header {
    border-bottom: 1px solid var(--cp-border);
    background: rgba(255,255,255,0.035);
    color: var(--cp-text);
    font-weight: 800;
}

.platform-code-chip {
    padding: .32rem .64rem;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size: .82rem;
}

.platform-badge-disabled {
    background: rgba(239, 68, 68, 0.14);
    border: 1px solid rgba(239, 68, 68, 0.24);
    color: #f7a1a1;
}

.platform-badge-neutral {
    background: rgba(255,255,255,0.06);
    border: 1px solid var(--cp-border);
    color: #dbe4f0;
}

.platform-meta-row {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem;
    align-items: center;
}

.platform-audit-item {
    background: transparent;
    color: var(--cp-text);
    border-color: rgba(148, 163, 184, 0.10);
}

.platform-form-section-title {
    margin: 0;
    font-size: 1rem;
    font-weight: 800;
    color: var(--cp-text);
}

.platform-validation-summary {
    padding: .85rem 1rem;
    border-radius: .9rem;
    border: 1px solid rgba(239, 68, 68, 0.25);
    background: rgba(127, 29, 29, 0.28);
    color: #fecaca;
}

.platform-validation-summary:empty {
    display: none;
}

.form-label,
.platform-form-card .form-label {
    display: block;
    margin-bottom: .45rem;
    color: #dbe4f0;
    font-weight: 700;
}

.form-control,
.form-select,
.platform-form-card .form-control,
.platform-form-card .form-select {
    border-radius: .9rem;
    border: 1px solid var(--cp-border-strong);
    background-color: rgba(255,255,255,0.045);
    color: var(--cp-text);
    min-height: 3rem;
}

.form-control::placeholder {
    color: rgba(168, 180, 199, .62);
}

.form-control:focus,
.form-select:focus,
.platform-form-card .form-control:focus,
.platform-form-card .form-select:focus {
    border-color: rgba(139, 220, 47, 0.48);
    box-shadow: 0 0 0 .25rem rgba(139, 220, 47, 0.16);
    background-color: rgba(255,255,255,0.07);
    color: var(--cp-text);
}

.platform-form-card textarea.form-control {
    min-height: 7rem;
}

.platform-form-card hr {
    opacity: 1;
    border-color: var(--cp-border);
}

.auth-shell {
    min-height: min(720px, calc(100vh - 9rem));
    display: grid;
    place-items: center;
    padding: 2rem 0;
}

.auth-card {
    width: min(100%, 30rem);
    background:
        radial-gradient(circle at 50% 0%, rgba(139, 220, 47, .14), transparent 18rem),
        linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.02)),
        var(--cp-panel);
}

.auth-card h1 {
    font-weight: 800;
    letter-spacing: -.03em;
    color: var(--cp-text);
}

.auth-card .btn-primary {
    min-height: 3rem;
    border: 0;
    border-radius: 999px;
    background: linear-gradient(180deg, #a7ef42 0%, #78c318 100%);
    color: #07111e;
    font-weight: 800;
}

.auth-sso-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

.auth-email-hint {
    margin-top: .5rem;
    color: var(--cp-text-muted);
}

.auth-recovery {
    margin-top: 1.5rem;
    padding-top: 1.25rem;
    border-top: 1px solid var(--cp-border);
}

.auth-recovery summary {
    color: var(--cp-text-muted);
    cursor: pointer;
    font-size: .875rem;
    text-align: center;
}

.auth-recovery-copy {
    margin: 1rem 0;
    color: var(--cp-text-muted);
    text-align: center;
}

.alert-danger,
.text-danger {
    color: #fecaca !important;
}

.alert-danger {
    border-color: rgba(239, 68, 68, .24);
    background: rgba(127, 29, 29, .28);
}

.footer {
    position: static;
}

@media (max-width: 1199.98px) {
    .cp-tile-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .cp-stat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 991.98px) {
    .global-nav-collapse {
        margin-left: 0;
        margin-top: 1rem;
        padding: 1rem;
        border: 1px solid var(--cp-border);
        border-radius: var(--cp-radius-md);
        background: rgba(9, 18, 32, .9);
    }

    .global-nav-list {
        align-items: stretch;
    }

    .global-nav-actions {
        justify-content: flex-start;
        padding-top: .8rem;
    }

    .cp-topbar,
    .cp-command-panel {
        grid-template-columns: 1fr;
        flex-direction: column;
    }

    .cp-topbar-right {
        width: 100%;
        justify-content: flex-start;
    }
}

@media (max-width: 767.98px) {
    .global-navbar {
        min-height: auto;
    }

    .global-brand-subtitle,
    .global-health-chip {
        display: none;
    }

    .global-footer-inner {
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
        padding-top: 1rem;
        padding-bottom: 1rem;
    }

    .cp-tile-grid,
    .cp-stat-grid {
        grid-template-columns: 1fr;
    }

    .cp-topbar-left,
    .platform-page-header {
        flex-direction: column;
    }

    .cp-command-title {
        font-size: 2.2rem;
    }

    .cp-topbar,
    .cp-command-panel,
    .cp-section {
        padding: 1rem;
    }
}

/* Tenant administration */
.tenant-admin-page {
    gap: 1.35rem;
}

.tenant-admin-hero {
    position: relative;
    padding: clamp(1.25rem, 2.4vw, 1.8rem);
    border: 1px solid var(--cp-border);
    border-radius: var(--cp-radius-lg);
    background:
        radial-gradient(circle at 18% 0%, rgba(139, 220, 47, .14), transparent 24rem),
        radial-gradient(circle at 90% 10%, rgba(56, 189, 248, .12), transparent 22rem),
        linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.015)),
        var(--cp-panel);
    box-shadow: var(--cp-shadow-md);
}

.tenant-admin-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .75rem;
    flex-wrap: wrap;
}

.tenant-search {
    display: flex;
    align-items: center;
    gap: .55rem;
    min-width: min(100%, 31rem);
}

.tenant-search .form-control {
    min-width: min(100vw - 4rem, 22rem);
}

.tenant-stat-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.tenant-stat-meta {
    margin-top: .5rem;
    color: var(--cp-dim);
    font-size: .88rem;
}

.tenant-directory-card {
    overflow: visible;
}

.tenant-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.25rem;
}

.tenant-card-title {
    color: var(--cp-text);
    font-weight: 800;
    letter-spacing: -.02em;
}

.tenant-card-subtitle {
    margin-top: .2rem;
    color: var(--cp-muted);
    font-size: .9rem;
    font-weight: 500;
}

.tenant-table tbody tr.tenant-row {
    cursor: pointer;
}

.tenant-table tbody tr.tenant-row:focus {
    outline: 2px solid rgba(139, 220, 47, .55);
    outline-offset: -2px;
}

.tenant-name-cell {
    display: flex;
    align-items: center;
    gap: .85rem;
    min-width: 18rem;
}

.tenant-avatar {
    width: 2.75rem;
    height: 2.75rem;
    display: inline-grid;
    flex: 0 0 auto;
    place-items: center;
    border-radius: .95rem;
    border: 1px solid rgba(139, 220, 47, .3);
    background: linear-gradient(145deg, rgba(139, 220, 47, .2), rgba(56, 189, 248, .09));
    color: #d7ffad;
    font-weight: 900;
    box-shadow: 0 12px 28px rgba(0,0,0,.22);
}

.tenant-name,
.tenant-contact {
    display: block;
}

.tenant-name {
    color: var(--cp-text);
    font-weight: 800;
    letter-spacing: -.01em;
}

.tenant-contact {
    margin: .08rem 0 .35rem;
    color: var(--cp-muted);
    font-size: .86rem;
}

.tenant-row-actions {
    min-width: 18rem;
    white-space: nowrap;
}

.tenant-inline-form,
.tenant-modal-footer form {
    display: inline-flex;
    margin: 0;
}

.tenant-btn-danger,
.tenant-btn-success {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    font-weight: 800;
}

.tenant-btn-danger {
    border: 1px solid rgba(239, 68, 68, .42);
    background: rgba(239, 68, 68, .13);
    color: #fecaca;
}

.tenant-btn-danger:hover,
.tenant-btn-danger:focus {
    border-color: rgba(248, 113, 113, .66);
    background: rgba(239, 68, 68, .2);
    color: #fff1f2;
}

.tenant-btn-success {
    border: 1px solid rgba(34, 197, 94, .42);
    background: rgba(34, 197, 94, .13);
    color: #bbf7d0;
}

.tenant-btn-success:hover,
.tenant-btn-success:focus {
    border-color: rgba(74, 222, 128, .66);
    background: rgba(34, 197, 94, .2);
    color: #f0fdf4;
}

.tenant-modal .modal-dialog {
    --bs-modal-width: 880px;
}

.tenant-modal-content {
    border: 1px solid var(--cp-border-strong);
    border-radius: 1.35rem;
    background:
        radial-gradient(circle at 20% 0%, rgba(139, 220, 47, .12), transparent 22rem),
        linear-gradient(180deg, rgba(255,255,255,.065), rgba(255,255,255,.018)),
        #101b2e;
    color: var(--cp-text);
    box-shadow: var(--cp-shadow-lg);
}

.tenant-modal-header,
.tenant-modal-footer {
    border-color: var(--cp-border);
}

.tenant-modal-header {
    align-items: flex-start;
    padding: 1.25rem 1.4rem;
}

.tenant-modal-title {
    margin-top: .4rem;
    font-size: clamp(1.45rem, 2.4vw, 2.15rem);
    font-weight: 900;
    letter-spacing: -.05em;
}

.tenant-modal-close {
    filter: invert(1) grayscale(1) brightness(1.8);
    opacity: .75;
}

.tenant-modal-body {
    padding: 1.4rem;
}

.tenant-detail-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem;
}

.tenant-detail-item {
    min-width: 0;
    padding: 1rem;
    border: 1px solid var(--cp-border);
    border-radius: var(--cp-radius-md);
    background: rgba(255,255,255,.035);
}

.tenant-detail-item span,
.tenant-detail-item strong {
    display: block;
}

.tenant-detail-item span {
    color: var(--cp-muted);
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.tenant-detail-item strong {
    margin-top: .35rem;
    color: var(--cp-text);
    overflow-wrap: anywhere;
}

.tenant-detail-guid {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size: .88rem;
}

.tenant-modal-footer {
    gap: .65rem;
    padding: 1rem 1.4rem 1.25rem;
}

@media (max-width: 1199.98px) {
    .tenant-stat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .tenant-admin-actions,
    .tenant-search {
        width: 100%;
        justify-content: stretch;
    }

    .tenant-admin-actions > *,
    .tenant-search .form-control,
    .tenant-search .btn {
        width: 100%;
    }

    .tenant-stat-grid,
    .tenant-detail-grid {
        grid-template-columns: 1fr;
    }

    .tenant-card-header,
    .tenant-modal-footer {
        align-items: stretch;
        flex-direction: column;
    }

    .tenant-row-actions {
        white-space: normal;
    }
}

/* Node Vertex global control plane */
.nodevertex-hero {
    border: 1px solid rgba(56, 189, 248, .22);
    background:
        radial-gradient(circle at 12% 0%, rgba(56, 189, 248, .14), transparent 30rem),
        radial-gradient(circle at 90% 8%, rgba(139, 92, 246, .15), transparent 28rem),
        rgba(13, 24, 40, .78);
}

.nodevertex-nav-pills {
    display: flex;
    gap: .65rem;
    align-items: center;
    flex-wrap: wrap;
}

.nodevertex-nav-pills a:not(.btn) {
    display: inline-flex;
    align-items: center;
    min-height: 2.4rem;
    padding: .45rem .9rem;
    border: 1px solid var(--cp-border);
    border-radius: 999px;
    color: #dce8f8;
    background: rgba(255,255,255,.045);
    font-weight: 800;
    text-decoration: none;
}

.nodevertex-nav-pills a:not(.btn):hover {
    color: #fff;
    border-color: rgba(139,220,47,.44);
    background: rgba(139,220,47,.10);
}

.nodevertex-stat-grid {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.nodevertex-health-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: 1rem;
}

.nodevertex-health-grid > div {
    padding: 1rem;
    border: 1px solid var(--cp-border);
    border-radius: var(--cp-radius-sm);
    background: rgba(255,255,255,.035);
}

.nodevertex-health-grid span {
    display: block;
    color: var(--cp-muted);
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.nodevertex-health-grid strong {
    display: block;
    margin-top: .35rem;
    color: var(--cp-text);
    word-break: break-word;
}

.nodevertex-useragent {
    max-width: 28rem;
    color: var(--cp-muted);
    font-size: .82rem;
    overflow-wrap: anywhere;
}

.platform-alert {
    margin-bottom: 1rem;
    padding: .9rem 1rem;
    border-radius: var(--cp-radius-sm);
    border: 1px solid var(--cp-border-strong);
    background: rgba(245, 158, 11, .1);
    color: #ffe8b3;
}

.platform-alert-warning {
    border-color: rgba(245, 158, 11, .35);
}

.platform-alert-success {
    border-color: rgba(139, 220, 47, .36);
    background: rgba(139, 220, 47, .12);
    color: #e5ffc7;
}

.platform-alert-danger {
    border-color: rgba(248, 113, 113, .4);
    background: rgba(248, 113, 113, .12);
    color: #fecaca;
}

/* High contrast table rows for nrun.global control-plane directories */
.platform-table table,
table.platform-table,
.tenant-table {
    --bs-table-color: #edf5ff;
    --bs-table-bg: transparent;
    --bs-table-border-color: rgba(148, 163, 184, 0.16);
    --bs-table-striped-color: #edf5ff;
    --bs-table-striped-bg: rgba(15, 27, 45, 0.62);
    --bs-table-hover-color: #ffffff;
    --bs-table-hover-bg: rgba(56, 189, 248, 0.10);
    color: #edf5ff;
}

table.platform-table tbody tr,
.platform-table tbody tr,
.tenant-table tbody tr {
    background:
        linear-gradient(180deg, rgba(16, 29, 49, 0.86), rgba(10, 20, 35, 0.88));
}

table.platform-table tbody tr:nth-child(even),
.platform-table tbody tr:nth-child(even),
.tenant-table tbody tr:nth-child(even) {
    background:
        linear-gradient(180deg, rgba(20, 35, 58, 0.92), rgba(12, 24, 41, 0.92));
}

table.platform-table tbody tr:hover,
.platform-table tbody tr:hover,
.tenant-table tbody tr:hover,
.tenant-table tbody tr.tenant-row:hover {
    background:
        linear-gradient(180deg, rgba(28, 49, 79, 0.98), rgba(17, 34, 58, 0.98));
    box-shadow: inset 3px 0 0 rgba(139, 220, 47, 0.8);
}

table.platform-table tbody td,
.platform-table tbody td,
.tenant-table tbody td {
    color: #dfeaff !important;
    border-color: rgba(148, 163, 184, 0.16) !important;
}

table.platform-table tbody td strong,
.platform-table tbody td strong,
.tenant-table tbody td strong,
.tenant-table .tenant-name {
    color: #ffffff !important;
}

.tenant-table .tenant-contact,
.tenant-table td .tenant-contact,
.platform-table .tenant-contact,
table.platform-table .tenant-contact {
    color: #b9c8dd !important;
}

table.platform-table thead th,
.platform-table thead th,
.tenant-table thead th {
    color: #f3f8ff !important;
    background: rgba(24, 39, 63, 0.96) !important;
    border-color: rgba(148, 163, 184, 0.22) !important;
}

.tenant-directory-card .platform-table,
.platform-table-card .platform-table {
    background: rgba(5, 12, 22, 0.54);
}

/* Applications inventory and SSL expiration console */
.global-app-menu {
    display: none;
    position: absolute;
    top: calc(100% + .45rem);
    left: 0;
    z-index: 1040;
    min-width: 17rem;
    margin: 0;
    list-style: none;
    border: 1px solid var(--cp-border-strong);
    border-radius: 1rem;
    padding: .55rem;
    background: rgba(10, 20, 35, .98);
    box-shadow: var(--cp-shadow-md);
}

.global-nav-list .dropdown {
    position: relative;
}

.global-nav-list .dropdown:hover > .global-app-menu,
.global-nav-list .dropdown:focus-within > .global-app-menu,
.global-app-menu.show {
    display: block;
}

.global-app-menu .dropdown-item {
    display: block;
    border-radius: .75rem;
    padding: .55rem .7rem;
    color: #dbeafe;
    font-weight: 750;
    text-decoration: none;
}

.global-app-menu .dropdown-item:hover,
.global-app-menu .dropdown-item:focus {
    color: #ffffff;
    background: rgba(139, 220, 47, .12);
}

.global-app-menu .dropdown-divider {
    border-color: var(--cp-border);
}

.application-console-nav {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .65rem;
    margin: 0 0 1.25rem;
    padding: .7rem;
    border: 1px solid var(--cp-border);
    border-radius: 1rem;
    background: rgba(9, 18, 32, .72);
}

.application-console-nav a {
    display: inline-flex;
    align-items: center;
    min-height: 2.45rem;
    padding: .5rem .9rem;
    border: 1px solid transparent;
    border-radius: .75rem;
    color: #cbd8e9;
    font-weight: 800;
    text-decoration: none;
}

.application-console-nav a:hover,
.application-console-nav a:focus,
.application-console-nav a.active {
    color: #fff;
    border-color: rgba(139, 220, 47, .42);
    background: rgba(139, 220, 47, .12);
}

.vertexworks-application-hero {
    background:
        radial-gradient(circle at 8% 0%, rgba(34, 211, 238, .15), transparent 28rem),
        radial-gradient(circle at 92% 12%, rgba(139, 92, 246, .15), transparent 28rem),
        rgba(13, 24, 40, .78);
}

.vertexworks-console-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.application-console-nav { overflow-x: auto; scrollbar-width: thin; }
.application-console-nav a { white-space: nowrap; }
.finops-page { display: grid; gap: 1.25rem; }
.finops-hero {
    background: radial-gradient(circle at 86% 20%, rgba(24, 182, 199, .2), transparent 22rem),
                linear-gradient(135deg, rgba(10, 30, 49, .98), rgba(6, 17, 30, .98));
}
.finops-filter { margin: 0; }
.finops-kpi-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.finops-kpi-grid > div:not(.card-body) {
    display: grid; gap: .35rem; padding: 1rem; border: 1px solid var(--global-border);
    border-radius: 14px; background: rgba(6, 22, 37, .72);
}
.finops-kpi-grid strong { font-size: 1.35rem; color: var(--global-cyan); }
.finops-two-column { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.finops-bars { display: grid; gap: .65rem; margin-top: 1rem; }
.finops-bar-row { display: grid; grid-template-columns: 7rem minmax(4rem, 1fr) 5rem; gap: .75rem; align-items: center; font-size: .76rem; }
.finops-bar-row > div { position: relative; height: 12px; border-radius: 999px; background: rgba(255,255,255,.05); overflow: hidden; }
.finops-bar-row i, .finops-bar-row b { position: absolute; inset: 0 auto 0 0; border-radius: inherit; }
.finops-bar-row i { background: rgba(37, 211, 221, .65); }
.finops-bar-row b { height: 4px; top: auto; background: #ab7bff; }
.finops-definition-list, .receipt-grid { display: grid; gap: .75rem; margin: 1rem 0 0; }
.finops-definition-list > div, .receipt-grid > div { display: flex; justify-content: space-between; gap: 1rem; padding: .8rem 0; border-bottom: 1px solid var(--global-border); }
.finops-definition-list dd, .receipt-grid dd { margin: 0; text-align: right; color: var(--global-cyan); }
.receipt-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 1.5rem 0; }
.receipt-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; }
.receipt-hash { display: grid; gap: .4rem; padding: 1rem; border-radius: 12px; background: rgba(2, 13, 24, .85); }
.receipt-hash code { overflow-wrap: anywhere; color: var(--global-cyan); }
.form-check-wrap { display: flex; align-items: end; gap: .5rem; padding-bottom: .65rem; }
@media (max-width: 980px) { .finops-kpi-grid, .finops-two-column { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 620px) {
    .finops-kpi-grid, .finops-two-column, .receipt-grid { grid-template-columns: 1fr; }
    .finops-bar-row { grid-template-columns: 5.5rem minmax(3rem, 1fr) 4rem; }
}

@media (max-width: 980px) {
    .vertexworks-console-grid {
        grid-template-columns: 1fr;
    }
}

.nvio-root-route-form {
    display: grid;
    grid-template-columns: minmax(12rem, 1fr) minmax(22rem, 2fr) minmax(11rem, .8fr) minmax(6rem, .45fr) auto;
    gap: 1rem;
    align-items: end;
}

.nvio-root-route-field {
    min-width: 0;
}

.nvio-root-route-form .form-label {
    display: block;
    margin-bottom: .45rem;
}

.nvio-root-route-flags {
    grid-column: 1 / -2;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
}

.nvio-root-route-submit {
    min-width: 8.5rem;
    white-space: nowrap;
}

@media (max-width: 1100px) {
    .nvio-root-route-form {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .nvio-root-route-target,
    .nvio-root-route-flags {
        grid-column: 1 / -1;
    }

    .nvio-root-route-submit {
        width: 100%;
    }
}

@media (max-width: 680px) {
    .nvio-root-route-form {
        grid-template-columns: 1fr;
    }

    .nvio-root-route-flags {
        grid-column: auto;
    }
}

.nvio-console-layout {
    display: grid;
    grid-template-columns: minmax(11rem, 14rem) minmax(0, 1fr);
    gap: 1.25rem;
    align-items: start;
}

.nvio-console-nav {
    position: sticky;
    top: 6.5rem;
    padding: .85rem;
}

.nvio-console-nav-title {
    padding: .35rem .55rem .75rem;
    color: var(--cp-muted);
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.nvio-console-nav a {
    display: block;
    padding: .72rem .82rem;
    border-radius: .65rem;
    color: var(--cp-muted);
    font-weight: 800;
    text-decoration: none;
}

.nvio-console-nav a:hover,
.nvio-console-nav a.active {
    color: var(--cp-text);
    background: rgba(139, 220, 47, .12);
}

.nvio-console-main {
    min-width: 0;
}

.nvio-routes-table {
    min-width: 66rem;
}

.nvio-routes-table th:first-child,
.nvio-routes-table td:first-child {
    width: 11rem;
}

.nvio-route-actions-cell {
    white-space: nowrap;
}

.nvio-route-actions-cell .btn {
    margin-right: .35rem;
}

.nvio-icon-button {
    width: 2.25rem;
    min-width: 2.25rem;
    padding-inline: 0;
    text-align: center;
}

.nvio-route-target-cell {
    max-width: 34rem;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.nvio-route-edit-row > td {
    background: rgba(8, 18, 32, .84);
    border-top: 1px solid rgba(139, 220, 47, .18);
}

.nvio-route-edit-form {
    display: grid;
    grid-template-columns: minmax(8rem, auto) minmax(22rem, 2fr) minmax(10rem, .7fr) minmax(7rem, .45fr) minmax(12rem, .8fr);
    gap: .75rem;
    align-items: end;
}

.nvio-route-edit-form-wide {
    grid-template-columns: minmax(8rem, auto) minmax(8rem, .55fr) minmax(8rem, .55fr) minmax(20rem, 1.6fr) minmax(10rem, .7fr) minmax(18rem, 1.2fr) minmax(12rem, .8fr);
}

.nvio-route-edit-form .form-label {
    margin-bottom: .25rem;
    color: var(--cp-muted);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.nvio-route-edit-actions,
.nvio-route-edit-flags {
    display: flex;
    gap: .45rem;
    align-items: center;
    flex-wrap: wrap;
}

.nvio-route-edit-flags .tenant-checkbox {
    margin: 0;
    white-space: nowrap;
}

@media (max-width: 991.98px) {
    .nvio-console-layout {
        grid-template-columns: 1fr;
    }

    .nvio-console-nav {
        position: static;
        display: flex;
        gap: .35rem;
        overflow-x: auto;
    }

    .nvio-console-nav-title {
        display: none;
    }

    .nvio-console-nav a {
        white-space: nowrap;
    }

    .nvio-routes-table {
        min-width: 58rem;
    }

    .nvio-route-edit-form,
    .nvio-route-edit-form-wide {
        grid-template-columns: 1fr;
    }
}

.applications-hero {
    padding: clamp(1.25rem, 2.4vw, 1.8rem);
    border: 1px solid rgba(139, 220, 47, .22);
    border-radius: var(--cp-radius-lg);
    background:
        radial-gradient(circle at 18% 0%, rgba(139, 220, 47, .15), transparent 24rem),
        radial-gradient(circle at 92% 12%, rgba(56, 189, 248, .14), transparent 26rem),
        var(--cp-panel);
    box-shadow: var(--cp-shadow-md);
}

.applications-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
    gap: 1rem;
    margin-top: 1.25rem;
}

.application-card .card-body {
    display: flex;
    min-height: 100%;
    flex-direction: column;
    gap: 1rem;
}

.application-card-header {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
}

.application-card h2 {
    margin: .2rem 0 0;
    color: #fff;
    font-size: 1.35rem;
    font-weight: 900;
    letter-spacing: -.035em;
}

.application-card p {
    margin: 0;
    color: var(--cp-muted);
}

.application-meta-grid {
    display: grid;
    gap: .65rem;
}

.application-meta-grid div {
    padding: .8rem;
    border: 1px solid var(--cp-border);
    border-radius: .85rem;
    background: rgba(255,255,255,.035);
}

.application-meta-grid span {
    display: block;
    color: var(--cp-muted);
    font-size: .74rem;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.application-meta-grid strong {
    display: block;
    margin-top: .25rem;
    color: #edf5ff;
    overflow-wrap: anywhere;
}

.application-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
    margin-top: auto;
}

.application-cert-detail {
    color: var(--cp-dim);
    font-size: .82rem;
    overflow-wrap: anywhere;
}

/* Node Vertex control panel navigation */
.nodevertex-control-nav {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .75rem;
    margin: 0 0 1.5rem;
}

.nodevertex-control-nav a {
    color: var(--global-text-muted);
    border: 1px solid rgba(148, 163, 184, .22);
    background: rgba(15, 23, 42, .72);
    border-radius: 999px;
    padding: .7rem 1rem;
    font-weight: 800;
    text-decoration: none;
    transition: color .16s ease, border-color .16s ease, background .16s ease, transform .16s ease;
}

.nodevertex-control-nav a:hover,
.nodevertex-control-nav a.active {
    color: #eff6ff;
    border-color: rgba(139, 92, 246, .55);
    background: rgba(88, 28, 135, .32);
    transform: translateY(-1px);
}

.nodevertex-control-nav .nodevertex-control-back {
    color: #bff589;
    border-color: rgba(132, 204, 22, .4);
    background: rgba(63, 98, 18, .22);
}

.datastore-tenant-filter { grid-template-columns: minmax(280px, 560px) auto; justify-content: start; }
.datastore-mount-page code { color: #155e75; }
@media (max-width: 700px) { .datastore-tenant-filter { grid-template-columns: 1fr; } }

/* Control plane readability and tenant action placement polish */
:root {
    --cp-muted: #c8d4e6;
    --cp-dim: #adbad0;
}

.tenant-admin-hero {
    align-items: center;
}

.tenant-admin-hero > div:first-child {
    min-width: min(100%, 38rem);
    flex: 1 1 42rem;
}

.tenant-admin-actions {
    align-self: flex-start;
    flex: 0 0 auto;
    padding-top: .15rem;
}

.tenant-admin-actions .global-btn-primary {
    min-width: 10.75rem;
    box-shadow: 0 16px 36px rgba(120, 195, 24, .24);
}

.tenant-toolbar {
    margin: 0 0 1rem;
    padding: .85rem;
    border-color: rgba(148, 163, 184, .2);
    background: rgba(12, 24, 40, .78);
}

.tenant-toolbar .tenant-search {
    width: 100%;
    max-width: 48rem;
    min-width: 0;
}

.tenant-toolbar .tenant-search .form-control {
    min-width: 0;
    flex: 1 1 22rem;
}

.platform-page-subtitle,
.cp-page-subtitle,
.cp-command-text,
.cp-section-header p,
.platform-form-section-note,
.tenant-card-subtitle,
.tenant-stat-meta,
.cp-stat-meta,
.cp-tile p,
.cp-side-list,
.platform-stat-label,
.cp-stat-label,
.global-brand-subtitle,
.tenant-contact,
.application-card p,
.application-meta-grid span,
.nodevertex-health-grid span,
.tenant-detail-item span,
.form-text,
.text-muted {
    color: #c8d4e6 !important;
}

table.platform-table tbody td,
.platform-table tbody td,
.tenant-table tbody td,
.table.platform-table tbody td span:not(.platform-badge):not(.platform-code-chip),
.platform-table tbody td span:not(.platform-badge):not(.platform-code-chip),
.tenant-table tbody td span:not(.platform-badge):not(.platform-code-chip) {
    color: #e5eefb !important;
}

table.platform-table tbody td small,
.platform-table tbody td small,
.tenant-table tbody td small,
.table.platform-table .tenant-contact,
.platform-table .tenant-contact,
.tenant-table .tenant-contact {
    color: #c8d4e6 !important;
}

.platform-code-chip {
    color: #d8e7ff !important;
    border-color: rgba(148, 163, 184, .24);
    background: rgba(15, 23, 42, .72);
}

.form-control,
.form-select,
.platform-form-card .form-control,
.platform-form-card .form-select {
    color: #f5f9ff !important;
    background-color: rgba(15, 27, 45, .88) !important;
    border-color: rgba(180, 195, 218, .32) !important;
}

.form-control::placeholder,
.tenant-search .form-control::placeholder {
    color: #aebbd0 !important;
    opacity: 1;
}

.form-select option {
    color: #0f172a;
    background: #f8fafc;
}

.global-btn-outline,
.cp-btn-secondary {
    color: #eef6ff !important;
    border-color: rgba(180, 195, 218, .32) !important;
}

.global-btn-outline:hover,
.global-btn-outline:focus,
.cp-btn-secondary:hover,
.cp-btn-secondary:focus {
    color: #ffffff !important;
    border-color: rgba(139, 220, 47, .55) !important;
    background: rgba(139, 220, 47, .12) !important;
}

@media (max-width: 767.98px) {
    .tenant-admin-actions {
        width: 100%;
    }

    .tenant-admin-actions .global-btn-primary,
    .tenant-toolbar .tenant-search,
    .tenant-toolbar .tenant-search .form-control,
    .tenant-toolbar .tenant-search .btn {
        width: 100%;
    }

    .tenant-toolbar .tenant-search {
        flex-direction: column;
        align-items: stretch;
    }
}

/* Node Vertex operations tables */
.nodevertex-bulkbar .card-body,
.nodevertex-bulk-reason {
    display: flex;
    gap: .75rem;
    align-items: center;
    flex-wrap: wrap;
}

.nodevertex-bulk-reason .form-control {
    min-width: min(26rem, 80vw);
}

.nodevertex-ellipsis {
    min-width: 2.35rem;
    font-size: 1.35rem;
    line-height: 1;
}

.nodevertex-page .modal-content {
    color: var(--cp-text);
    background: linear-gradient(180deg, rgba(20, 34, 55, .98), rgba(9, 18, 31, .98));
    border: 1px solid var(--cp-border-strong);
    border-radius: 1.25rem;
    box-shadow: var(--cp-shadow-lg);
}

.nodevertex-page .modal-header,
.nodevertex-page .modal-footer {
    border-color: var(--cp-border);
}

.nodevertex-page .modal-title,
.nodevertex-page dt {
    color: #f4f8ff;
}

.nodevertex-page dd,
.nodevertex-page .modal-body {
    color: #c8d4e7;
}

.nodevertex-page .btn-close {
    filter: invert(1) grayscale(1);
    opacity: .72;
}

/* CRM social application directory */
.crm-provider-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(10.5rem, 1fr));
    gap: 1rem;
}

.crm-provider-card {
    position: relative;
    min-height: 10.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    padding: 1.35rem;
    border: 1px solid var(--cp-border);
    border-radius: 1.25rem;
    color: var(--cp-text);
    background:
        radial-gradient(circle at 50% 0%, rgba(139, 220, 47, .08), transparent 72%),
        linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.018)),
        rgba(13, 25, 42, .9);
    box-shadow: 0 18px 42px rgba(0, 0, 0, .2);
    cursor: pointer;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.crm-provider-card:hover,
.crm-provider-card:focus-visible {
    transform: translateY(-3px);
    border-color: rgba(139, 220, 47, .55);
    background:
        radial-gradient(circle at 50% 0%, rgba(139, 220, 47, .14), transparent 72%),
        linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.025)),
        rgba(13, 25, 42, .94);
    box-shadow: 0 22px 52px rgba(0, 0, 0, .28);
}

.crm-provider-card:focus-visible {
    outline: 3px solid rgba(139, 220, 47, .28);
    outline-offset: 3px;
}

.crm-provider-logo {
    width: 4.25rem;
    height: 4.25rem;
    display: inline-grid;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 1.15rem;
    color: #fff;
    background: #334155;
    box-shadow: 0 14px 28px rgba(0, 0, 0, .28);
}

.crm-provider-logo svg {
    width: 2.55rem;
    height: 2.55rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.crm-provider-logo .crm-provider-logo-fill {
    fill: currentColor;
    stroke: none;
}

.crm-provider-logo .crm-provider-logo-cutout {
    fill: #ff0033;
    stroke: none;
}

.crm-provider-lettermark,
.crm-provider-modal-logo-text {
    font-size: 2rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: -.09em;
}

.crm-provider-lettermark-linkedin {
    font-size: 1.75rem;
    letter-spacing: -.12em;
}

.crm-provider-lettermark-facebook,
.crm-provider-lettermark-pinterest {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 2.65rem;
}

.crm-provider-lettermark-facebook {
    transform: translateY(.22rem);
}

.crm-provider-lettermark-x {
    font-size: 2.25rem;
    font-weight: 500;
}

.crm-provider-lettermark-threads {
    font-size: 2.45rem;
}

.crm-provider-logo-linkedin { background: #0a66c2; }
.crm-provider-logo-facebook { background: #1877f2; }
.crm-provider-logo-instagram { background: linear-gradient(145deg, #833ab4, #e1306c 55%, #fcb045); }
.crm-provider-logo-x { background: #050505; }
.crm-provider-logo-youtube { background: #ff0033; }
.crm-provider-logo-tiktok { background: #111; text-shadow: -2px 0 #25f4ee, 2px 0 #fe2c55; }
.crm-provider-logo-threads { background: #151515; }
.crm-provider-logo-bluesky { background: #1185fe; }
.crm-provider-logo-pinterest { background: #bd081c; }

.crm-provider-card-name {
    font-size: 1.05rem;
    font-weight: 800;
    letter-spacing: -.02em;
}

.crm-provider-connected {
    position: absolute;
    right: .75rem;
    bottom: .7rem;
    left: .75rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .38rem;
    color: #b7ff55;
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: .08em;
    line-height: 1;
    text-transform: uppercase;
}

.crm-provider-connected-dot {
    width: .48rem;
    height: .48rem;
    flex: 0 0 auto;
    border-radius: 50%;
    background: #8bdc2f;
    box-shadow: 0 0 0 .2rem rgba(139, 220, 47, .13), 0 0 .75rem rgba(139, 220, 47, .65);
}

.crm-provider-modal .modal-dialog {
    --bs-modal-width: 900px;
    width: min(var(--bs-modal-width), calc(100vw - 2rem));
    height: calc(100dvh - 2rem);
    max-height: calc(100dvh - 2rem);
    margin: 1rem auto;
}

.crm-provider-modal-content {
    max-height: 100%;
    overflow: hidden;
    border: 1px solid var(--cp-border-strong);
    border-radius: 1.3rem;
    color: var(--cp-text);
    background:
        radial-gradient(circle at 15% 0%, rgba(139, 220, 47, .1), transparent 24rem),
        linear-gradient(180deg, rgba(22, 37, 59, .99), rgba(9, 18, 31, .99));
    box-shadow: var(--cp-shadow-lg);
}

.crm-provider-modal-header,
.crm-provider-modal-footer {
    flex: 0 0 auto;
    border-color: var(--cp-border);
}

.crm-provider-modal-header {
    align-items: flex-start;
    padding: 1rem 1.2rem;
}

.crm-provider-modal-heading,
.crm-provider-modal-meta {
    display: flex;
    align-items: center;
}

.crm-provider-modal-heading {
    min-width: 0;
    gap: .9rem;
}

.crm-provider-modal-heading .crm-provider-logo {
    width: 3.2rem;
    height: 3.2rem;
    border-radius: .9rem;
}

.crm-provider-modal-logo-text {
    font-size: 1.5rem;
    letter-spacing: 0;
}

.crm-provider-modal-heading .modal-title {
    color: #f5f9ff;
    font-size: 1.35rem;
    font-weight: 900;
    letter-spacing: -.035em;
}

.crm-provider-modal-meta {
    gap: .6rem;
    margin-top: .25rem;
    color: var(--cp-muted);
    font-size: .82rem;
}

.crm-provider-modal-close {
    filter: invert(1) grayscale(1) brightness(1.8);
    opacity: .75;
}

.crm-provider-modal-body {
    min-height: 0;
    padding: 1.2rem;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
}

.crm-provider-metadata {
    min-height: 11rem;
    resize: vertical;
}

.crm-provider-modal-footer {
    flex-wrap: wrap;
    gap: .65rem;
    padding: .85rem 1.2rem 1rem;
    background: rgba(7, 17, 30, .72);
}

.crm-provider-test-result {
    flex: 1 0 100%;
    min-height: 1.25rem;
    font-size: .82rem;
    font-weight: 700;
}

.crm-provider-test-result:empty {
    display: none;
}

.crm-provider-test-result-pending { color: var(--cp-muted); }
.crm-provider-test-result-success { color: #b7ff55; }
.crm-provider-test-result-error { color: #ff9aa8; }

@media (max-width: 575.98px) {
    .crm-provider-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .75rem;
    }

    .crm-provider-card {
        min-height: 8.5rem;
        padding: 1rem .75rem;
    }

    .crm-provider-logo {
        width: 3.5rem;
        height: 3.5rem;
    }

    .crm-provider-modal .modal-dialog {
        width: calc(100vw - 1rem);
        height: calc(100dvh - 1rem);
        max-height: calc(100dvh - 1rem);
        margin: .5rem auto;
    }

    .crm-provider-modal-header,
    .crm-provider-modal-body,
    .crm-provider-modal-footer {
        padding-left: .9rem;
        padding-right: .9rem;
    }

    .crm-provider-modal-meta {
        align-items: flex-start;
        flex-direction: column;
        gap: .35rem;
    }

    .crm-provider-modal-footer .btn {
        flex: 1 1 auto;
    }
}

.nodevertex-page .platform-table th:first-child,
.nodevertex-page .platform-table td:first-child {
    width: 3rem;
    text-align: center;
}

.onedb-inline-metric,
.onedb-progress-list > div {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding: .85rem 0;
    border-bottom: 1px solid rgba(180, 195, 218, .14);
}

.onedb-inline-metric {
    display: block;
    min-height: 5.5rem;
    padding: 1rem;
    border: 1px solid rgba(180, 195, 218, .16);
    border-radius: .5rem;
    background: rgba(15, 27, 45, .54);
}

.onedb-inline-metric span,
.onedb-progress-list span {
    color: #aebbd0;
    font-size: .82rem;
    font-weight: 600;
    text-transform: uppercase;
}

.onedb-inline-metric strong,
.onedb-progress-list strong {
    color: #f6fbff;
    font-weight: 700;
}

.onedb-inline-metric strong {
    display: block;
    margin-top: .45rem;
    font-size: 1.25rem;
}

/* Global dashboard telemetry */
.dashboard-section-heading {
    align-items: center;
    flex-direction: row;
    justify-content: space-between;
}

.dashboard-freshness,
.dashboard-health-pill {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    border: 1px solid rgba(139, 220, 47, .25);
    border-radius: 999px;
    color: #c8f69b;
    background: rgba(139, 220, 47, .08);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .04em;
    padding: .42rem .7rem;
    text-transform: uppercase;
}

.dashboard-live-dot {
    width: .52rem;
    height: .52rem;
    border-radius: 50%;
    background: var(--cp-accent);
    box-shadow: 0 0 0 .25rem rgba(139, 220, 47, .12), 0 0 .8rem rgba(139, 220, 47, .55);
}

.dashboard-product-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
    margin-bottom: 1rem;
}

.dashboard-product-stat {
    position: relative;
    min-width: 0;
    min-height: 10.5rem;
    padding: 1.2rem;
    overflow: hidden;
    border: 1px solid var(--cp-border);
    border-radius: 1rem;
    color: var(--cp-text);
    background:
        radial-gradient(circle at 100% 0%, rgba(56, 189, 248, .1), transparent 11rem),
        linear-gradient(160deg, rgba(29, 46, 72, .82), rgba(8, 19, 33, .92));
    text-decoration: none;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.dashboard-product-stat::after {
    content: "";
    position: absolute;
    right: -1.75rem;
    bottom: -2.25rem;
    width: 7.5rem;
    height: 7.5rem;
    border: 1px solid rgba(255, 255, 255, .06);
    border-radius: 50%;
    box-shadow: 0 0 0 1.2rem rgba(255, 255, 255, .018);
}

.dashboard-product-stat:hover {
    color: var(--cp-text);
    border-color: rgba(139, 220, 47, .35);
    box-shadow: 0 18px 35px rgba(0, 0, 0, .22);
    transform: translateY(-2px);
}

.dashboard-product-stat-onedb {
    background:
        radial-gradient(circle at 100% 0%, rgba(139, 220, 47, .16), transparent 12rem),
        linear-gradient(160deg, rgba(28, 49, 54, .9), rgba(8, 19, 33, .94));
}

.dashboard-product-stat > span,
.dashboard-product-stat > strong {
    position: relative;
    z-index: 1;
    display: block;
}

.dashboard-product-label {
    color: #b4c2d5;
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.dashboard-product-stat strong {
    margin: .55rem 0 .25rem;
    font-size: clamp(1.75rem, 3vw, 2.55rem);
    font-weight: 850;
    letter-spacing: -.055em;
    line-height: 1.05;
}

.dashboard-product-stat > span:last-child {
    color: var(--cp-muted);
    font-size: .82rem;
}

.dashboard-chart-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.dashboard-chart-card {
    min-width: 0;
    min-height: 21rem;
    padding: 1.25rem;
    border: 1px solid var(--cp-border);
    border-radius: 1rem;
    background:
        linear-gradient(145deg, rgba(25, 41, 65, .72), rgba(8, 18, 31, .88));
    box-shadow: inset 0 1px rgba(255, 255, 255, .025);
}

.dashboard-chart-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.dashboard-chart-header h3 {
    margin: .2rem 0 0;
    color: #f4f8ff;
    font-size: 1.05rem;
    font-weight: 800;
    letter-spacing: -.025em;
}

.dashboard-chart-kicker {
    color: var(--cp-accent);
    font-size: .68rem;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.dashboard-chart-value {
    color: #f7fbff;
    font-size: 1.35rem;
    font-weight: 850;
    letter-spacing: -.04em;
    white-space: nowrap;
}

.dashboard-chart-value small {
    color: var(--cp-muted);
    font-size: .65rem;
    font-weight: 700;
    letter-spacing: 0;
}

.dashboard-health-pill.is-warn {
    border-color: rgba(245, 158, 11, .28);
    color: #ffd18a;
    background: rgba(245, 158, 11, .08);
}

.dashboard-storage-bar {
    display: flex;
    height: 1.25rem;
    margin: 2.1rem 0 1.7rem;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(255, 255, 255, .055);
    box-shadow: inset 0 1px 4px rgba(0, 0, 0, .3);
}

.dashboard-storage-segment {
    min-width: 2px;
    height: 100%;
}

.dashboard-storage-sql { background: #8bdc2f; }
.dashboard-storage-document { background: #38bdf8; }
.dashboard-storage-vector { background: #8b5cf6; }

.dashboard-chart-legend {
    display: grid;
    gap: .8rem;
}

.dashboard-chart-legend > div {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: .65rem;
    color: var(--cp-muted);
    font-size: .79rem;
}

.dashboard-chart-legend strong {
    color: #edf4ff;
    font-weight: 750;
}

.dashboard-legend-swatch {
    width: .62rem;
    height: .62rem;
    border-radius: .2rem;
}

.dashboard-bar-chart {
    display: grid;
    gap: 1.25rem;
    padding-top: .6rem;
}

.dashboard-bar-row {
    display: grid;
    grid-template-columns: 7rem minmax(3rem, 1fr) 4.2rem;
    align-items: center;
    gap: .75rem;
    color: #bac6d7;
    font-size: .8rem;
}

.dashboard-bar-row > div {
    height: .75rem;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(255, 255, 255, .055);
}

.dashboard-bar-row i {
    display: block;
    min-width: 3px;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #38bdf8, #8b5cf6);
    box-shadow: 0 0 1rem rgba(56, 189, 248, .25);
}

.dashboard-bar-row strong {
    color: #eef5ff;
    text-align: right;
}

.dashboard-column-chart {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: clamp(2rem, 12vw, 7rem);
    height: 14.5rem;
    padding-top: 1rem;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
    background-image: repeating-linear-gradient(to top, rgba(255, 255, 255, .045) 0 1px, transparent 1px 25%);
}

.dashboard-column-chart > div {
    display: grid;
    grid-template-rows: auto 1fr auto;
    align-items: end;
    width: 5.25rem;
    height: 100%;
    text-align: center;
}

.dashboard-column-chart strong {
    margin-bottom: .5rem;
    color: #eef5ff;
    font-size: .9rem;
}

.dashboard-column-chart i {
    display: block;
    width: 100%;
    min-height: .35rem;
    border-radius: .45rem .45rem 0 0;
    background: linear-gradient(180deg, #8bdc2f, #3b8f41);
    box-shadow: 0 -8px 25px rgba(139, 220, 47, .12);
}

.dashboard-column-chart > div:nth-child(2) i {
    background: linear-gradient(180deg, #38bdf8, #306db5);
    box-shadow: 0 -8px 25px rgba(56, 189, 248, .12);
}

.dashboard-column-chart span {
    padding: .65rem 0 .2rem;
    color: var(--cp-muted);
    font-size: .75rem;
}

.dashboard-donut-layout {
    display: grid;
    grid-template-columns: minmax(10rem, .9fr) minmax(10rem, 1fr);
    align-items: center;
    gap: 2rem;
}

.dashboard-donut,
.dashboard-ring {
    position: relative;
    display: grid;
    place-items: center;
    border-radius: 50%;
}

.dashboard-donut {
    width: min(12.5rem, 100%);
    aspect-ratio: 1;
    margin-inline: auto;
    background: conic-gradient(
        #8bdc2f 0 calc(var(--active) * 1%),
        #f59e0b calc(var(--active) * 1%) calc((var(--active) + var(--expired)) * 1%),
        #33445e calc((var(--active) + var(--expired)) * 1%) 100%);
    box-shadow: 0 0 2rem rgba(139, 220, 47, .08);
}

.dashboard-donut::after,
.dashboard-ring::after {
    content: "";
    position: absolute;
    border-radius: 50%;
    background: #101d30;
}

.dashboard-donut::after {
    inset: 20%;
}

.dashboard-donut > div {
    position: relative;
    z-index: 1;
    text-align: center;
}

.dashboard-donut strong,
.dashboard-donut span {
    display: block;
}

.dashboard-donut strong {
    color: #f4f8ff;
    font-size: 1.75rem;
    letter-spacing: -.05em;
}

.dashboard-donut span {
    color: var(--cp-muted);
    font-size: .7rem;
    text-transform: uppercase;
}

.dashboard-legend-swatch.is-active { background: #8bdc2f; }
.dashboard-legend-swatch.is-inactive { background: #33445e; }
.dashboard-legend-swatch.is-expired { background: #f59e0b; }

.dashboard-empty-chart {
    display: grid;
    min-height: 13rem;
    place-items: center;
    padding: 2rem;
    border: 1px dashed rgba(148, 163, 184, .2);
    border-radius: .8rem;
    color: var(--cp-muted);
    background: rgba(7, 16, 29, .28);
    font-size: .82rem;
    text-align: center;
}

.dashboard-estate-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.dashboard-estate-card {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    padding: 1.25rem;
    border: 1px solid var(--cp-border);
    border-radius: 1rem;
    background: linear-gradient(145deg, rgba(27, 43, 67, .72), rgba(9, 19, 33, .86));
}

.dashboard-ring {
    width: 5.3rem;
    flex: 0 0 5.3rem;
    aspect-ratio: 1;
    background: conic-gradient(var(--ring-color) calc(var(--value) * 1%), rgba(255, 255, 255, .065) 0);
}

.dashboard-ring::after {
    inset: 18%;
}

.dashboard-ring strong {
    position: relative;
    z-index: 1;
    color: #f4f8ff;
    font-size: .9rem;
}

.dashboard-estate-card h3 {
    margin: 0 0 .3rem;
    color: #f2f7ff;
    font-size: .95rem;
    font-weight: 800;
}

.dashboard-estate-card p {
    margin: 0;
    color: var(--cp-muted);
    font-size: .78rem;
}

@media (max-width: 1199.98px) {
    .dashboard-product-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dashboard-estate-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767.98px) {
    .dashboard-section-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .dashboard-product-stats,
    .dashboard-chart-grid {
        grid-template-columns: 1fr;
    }

    .dashboard-chart-card {
        min-height: 0;
    }

    .dashboard-donut-layout {
        grid-template-columns: 1fr;
    }

    .dashboard-bar-row {
        grid-template-columns: 5.8rem minmax(2rem, 1fr) 3.8rem;
    }
}

.dashboard-infra-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
    margin-bottom: 1rem;
}

.dashboard-infra-stats .dashboard-product-stat {
    min-height: 9.4rem;
}

.dashboard-node-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 1rem;
}

.dashboard-node-card {
    padding: 1.25rem;
    border: 1px solid var(--cp-border);
    border-radius: 1rem;
    background: linear-gradient(145deg, rgba(27, 43, 67, .75), rgba(8, 19, 33, .94));
}

.dashboard-node-card header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.dashboard-node-card h3 {
    margin: .12rem 0 0;
    color: #f4f8ff;
    font-size: 1.15rem;
}

.dashboard-node-card p,
.dashboard-node-card small {
    color: var(--cp-muted);
    font-size: .74rem;
}

.dashboard-node-card p {
    margin: .6rem 0 1rem;
}

.dashboard-node-card small {
    display: block;
    margin-top: .8rem;
    line-height: 1.45;
}

.dashboard-meter {
    display: grid;
    grid-template-columns: 4rem minmax(3rem, 1fr) 2.8rem;
    align-items: center;
    gap: .7rem;
    margin: .55rem 0;
    color: var(--cp-muted);
    font-size: .72rem;
}

.dashboard-meter > div {
    height: .45rem;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(148, 163, 184, .12);
}

.dashboard-meter i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #38bdf8, #8b5cf6);
}

.dashboard-meter strong {
    color: #eef5ff;
    text-align: right;
}

.dashboard-pod-card,
.dashboard-sql-card,
.dashboard-cloud-card {
    min-height: 0;
    margin-top: 1rem;
}

.dashboard-pod-tools {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: .8rem;
    margin: .9rem 0 .75rem;
}

.dashboard-pod-tools label {
    display: grid;
    gap: .35rem;
    width: min(100%, 28rem);
    color: #aebdd0;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.dashboard-pod-tools .form-control {
    min-height: 2.45rem;
    border-color: rgba(148, 163, 184, .22);
    background: rgba(5, 12, 22, .58);
    color: #eef5ff;
}

.dashboard-pod-tools .form-control::placeholder {
    color: #71849e;
}

.dashboard-pod-tools .form-control:focus {
    border-color: rgba(56, 189, 248, .58);
    background: rgba(5, 12, 22, .78);
    color: #fff;
    box-shadow: 0 0 0 .2rem rgba(56, 189, 248, .12);
}

.dashboard-pod-results {
    flex: 0 0 auto;
    padding-bottom: .65rem;
    color: #9fb0c5;
    font-size: .8rem;
    font-weight: 700;
}

.dashboard-pod-table-wrap {
    max-height: min(38rem, 62vh);
    overflow: auto;
    scrollbar-color: rgba(148, 163, 184, .45) rgba(5, 12, 22, .32);
    scrollbar-width: thin;
}

.dashboard-pod-table-wrap .cp-activity-table {
    min-width: 64rem;
}

.dashboard-pod-table-wrap thead {
    position: sticky;
    top: 0;
    z-index: 2;
}

.dashboard-pod-table-wrap thead th {
    box-shadow: 0 1px 0 rgba(148, 163, 184, .2);
}

.dashboard-pod-table-wrap thead button {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    letter-spacing: inherit;
    text-transform: inherit;
    white-space: nowrap;
}

.dashboard-pod-table-wrap thead button::after {
    width: .75rem;
    color: #6f829d;
    content: "↕";
    font-size: .68rem;
}

.dashboard-pod-table-wrap thead button.is-asc::after {
    color: #7dd3fc;
    content: "↑";
}

.dashboard-pod-table-wrap thead button.is-desc::after {
    color: #7dd3fc;
    content: "↓";
}

.dashboard-pod-table-wrap thead button:focus-visible {
    border-radius: .2rem;
    outline: 2px solid #38bdf8;
    outline-offset: 3px;
}

.dashboard-pod-card tr[hidden] {
    display: none;
}

.dashboard-pod-card td:first-child span {
    color: #90a4be;
    font-size: .7rem;
}

.dashboard-pod-card td:first-child strong {
    color: #e5edf8;
}

@media (max-width: 640px) {
    .dashboard-pod-tools {
        align-items: stretch;
        flex-direction: column;
    }

    .dashboard-pod-results {
        padding-bottom: 0;
    }
}

.dashboard-cloud-nodes {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
    gap: .75rem;
}

.dashboard-cloud-nodes > div {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: .25rem .7rem;
    padding: .9rem;
    border: 1px solid rgba(148, 163, 184, .14);
    border-radius: .8rem;
    background: rgba(7, 16, 29, .32);
}

.dashboard-cloud-nodes > div > strong,
.dashboard-cloud-nodes > div > span:not(.dashboard-health-pill),
.dashboard-cloud-nodes > div > small {
    grid-column: 2;
}

.dashboard-cloud-nodes > div > strong {
    color: #eef5ff;
}

.dashboard-cloud-nodes > div > span:not(.dashboard-health-pill),
.dashboard-cloud-nodes > div > small {
    color: var(--cp-muted);
    font-size: .72rem;
}

@media (max-width: 1199.98px) {
    .dashboard-infra-stats,
    .dashboard-node-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .dashboard-infra-stats,
    .dashboard-node-grid {
        grid-template-columns: 1fr;
    }
}
/* Persona voice control plane */
.voice-control-layout{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:1.25rem;margin-top:1.25rem}
.voice-persona-rail{max-height:calc(100vh - 12rem);overflow:hidden}
.voice-persona-rail .card-body{overflow:auto}
.voice-persona-list{display:grid;gap:.55rem}
.voice-persona-choice{display:grid;gap:.15rem;width:100%;padding:.8rem 1rem;text-align:left;border:1px solid rgba(111,211,255,.16);border-radius:.8rem;background:#071424;color:#e8f7ff}
.voice-persona-choice:hover,.voice-persona-choice.active{border-color:#43d8f3;background:#0b2136}
.voice-persona-choice span,.voice-persona-choice small{color:#8ca7ba}
.voice-library-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:.75rem;max-height:20rem;overflow:auto}
.voice-library-card{position:relative;display:grid;gap:.35rem;padding:1rem;text-align:left;border:1px solid rgba(111,211,255,.16);border-radius:.85rem;background:#071424;color:#e8f7ff}
.voice-library-card:hover,.voice-library-card.selected{border-color:#43d8f3;box-shadow:0 0 0 2px rgba(67,216,243,.12)}
.voice-library-card span,.voice-library-card small{color:#8ca7ba}
.voice-library-card em{position:absolute;right:.6rem;top:.6rem;color:#ffbf69;font-size:.7rem}
.voice-parameter-grid{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:1rem}
.voice-parameter-grid label{display:grid;gap:.35rem;color:#cce9f4;font-weight:600}
.voice-parameter-grid output{color:#65e3f5;font-size:.8rem}
@media(max-width:980px){.voice-control-layout{grid-template-columns:1fr}.voice-persona-rail{max-height:none}.voice-parameter-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.voice-parameter-grid{grid-template-columns:1fr}}
