/* ==========================================================
   SENTINELRE PRODUCTION UI
   Authoritative presentation-layer normalization
   Purple · Gold · White · Silver
   ========================================================== */

:root {
    --sr-purple-950: #180A2E;
    --sr-purple-900: #25103F;
    --sr-purple-850: #321451;
    --sr-purple-800: #421A68;
    --sr-purple-700: #582783;
    --sr-purple-600: #6E3A96;
    --sr-purple-500: #8150A8;
    --sr-purple-300: #C8AEDB;
    --sr-purple-100: #F0E8F6;

    --sr-gold-700: #9F761A;
    --sr-gold-600: #B98A28;
    --sr-gold-500: #C89B3C;
    --sr-gold-400: #D9B55F;
    --sr-gold-300: #E6CC8A;
    --sr-gold-100: #F7EFD8;

    --sr-white: #FFFFFF;
    --sr-ivory: #FCFBF8;
    --sr-page: #F7F5F9;

    --sr-text: #111111;
    --sr-muted: #667085;
    --sr-border: #DDD7E4;

    --sr-success: #247A48;
    --sr-warning: #A15C00;
    --sr-danger: #B42318;
}

/* ----------------------------------------------------------
   PAGE
   ---------------------------------------------------------- */

html,
body {
    background: var(--sr-page) !important;
    color: var(--sr-text) !important;
}

body {
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

/* ----------------------------------------------------------
   TYPOGRAPHY
   ---------------------------------------------------------- */

h1,
h2,
h3,
h4,
h5,
h6 {
    color: var(--sr-purple-900) !important;
}

p,
li,
td,
label {
    color: var(--sr-text);
}

.small-note,
.text-muted,
.muted,
.help-text,
.form-text {
    color: var(--sr-muted) !important;
}

a {
    color: var(--sr-purple-700);
}

a:hover {
    color: var(--sr-gold-700);
}

/* ----------------------------------------------------------
   CARDS / PANELS / WHITE SURFACES
   ---------------------------------------------------------- */

.card,
.panel,
.widget,
.metric-card,
.kpi-card,
.content-card,
.dashboard-card {
    background: var(--sr-white) !important;
    color: var(--sr-text) !important;
    border-color: var(--sr-border) !important;
}

.card h1,
.card h2,
.card h3,
.panel h1,
.panel h2,
.panel h3 {
    color: var(--sr-purple-900) !important;
}

/* ----------------------------------------------------------
   FORMS
   ---------------------------------------------------------- */

input:not([type="checkbox"]):not([type="radio"]),
select,
textarea {
    background: var(--sr-white) !important;
    color: var(--sr-text) !important;
    border: 1px solid var(--sr-border) !important;
    box-shadow: none !important;
}

input::placeholder,
textarea::placeholder {
    color: #8B8490 !important;
    opacity: 1;
}

input:focus,
select:focus,
textarea:focus {
    background: var(--sr-white) !important;
    color: var(--sr-text) !important;
    border-color: var(--sr-purple-500) !important;
    outline: none !important;
    box-shadow:
        0 0 0 3px rgba(129,80,168,.14) !important;
}

label {
    color: var(--sr-purple-900) !important;
}

/* Browser autofill protection */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus {
    -webkit-text-fill-color: var(--sr-text) !important;
    -webkit-box-shadow:
        0 0 0 1000px var(--sr-white) inset !important;
    box-shadow:
        0 0 0 1000px var(--sr-white) inset !important;
}

/* ----------------------------------------------------------
   BUTTONS
   ---------------------------------------------------------- */

button,
.btn,
.button,
input[type="submit"],
input[type="button"] {
    background:
        linear-gradient(
            135deg,
            var(--sr-purple-850),
            var(--sr-purple-700)
        ) !important;
    color: var(--sr-white) !important;
    border: 1px solid var(--sr-purple-700) !important;
    box-shadow:
        0 6px 14px rgba(37,16,63,.16);
}

button:hover,
.btn:hover,
.button:hover,
input[type="submit"]:hover,
input[type="button"]:hover {
    background:
        linear-gradient(
            135deg,
            var(--sr-purple-700),
            var(--sr-purple-600)
        ) !important;
    color: var(--sr-white) !important;
}

.btn-gold,
.button-gold,
.gold-button,
.btn-primary-gold {
    background:
        linear-gradient(
            135deg,
            var(--sr-gold-500),
            var(--sr-gold-400)
        ) !important;
    color: #21160A !important;
    border-color: var(--sr-gold-600) !important;
}

.btn-secondary,
.button-secondary,
.btn-light {
    background: var(--sr-white) !important;
    color: var(--sr-purple-900) !important;
    border: 1px solid var(--sr-purple-300) !important;
}

/* ----------------------------------------------------------
   TABLES
   ---------------------------------------------------------- */

table {
    background: var(--sr-white) !important;
    color: var(--sr-text) !important;
}

thead th,
table th {
    background:
        linear-gradient(
            135deg,
            var(--sr-purple-950),
            var(--sr-purple-800)
        ) !important;
    color: var(--sr-white) !important;
    border-color: rgba(255,255,255,.12) !important;
}

tbody td {
    background: var(--sr-white);
    color: var(--sr-text);
    border-color: #ECE8EF !important;
}

tbody tr:nth-child(even) td {
    background: #FBFAFC;
}

tbody tr:hover td {
    background: var(--sr-purple-100) !important;
}

/* ----------------------------------------------------------
   NAVIGATION / HEADER / SIDEBAR
   ---------------------------------------------------------- */

.sidebar,
.app-sidebar,
.sentinel-sidebar,
.topbar,
.app-header,
.sentinel-header {
    background:
        linear-gradient(
            180deg,
            var(--sr-purple-950),
            var(--sr-purple-850)
        ) !important;
    color: var(--sr-white) !important;
}

.sidebar a,
.app-sidebar a,
.sentinel-sidebar a,
.topbar a,
.app-header a,
.sentinel-header a {
    color: #F8F5FA !important;
}

.sidebar a:hover,
.app-sidebar a:hover,
.sentinel-sidebar a:hover {
    color: var(--sr-gold-300) !important;
}

/* ----------------------------------------------------------
   DARK / HERO SURFACES
   ---------------------------------------------------------- */

.sentinel-executive-hero,
.executive-banner,
.hero,
.hero-banner,
.dark-surface,
.sv2-dark-surface,
.sentinel-auto-dark-surface,
.sr-final-dark-surface {
    background:
        linear-gradient(
            135deg,
            var(--sr-purple-950) 0%,
            var(--sr-purple-850) 55%,
            var(--sr-purple-700) 100%
        ) !important;
    color: var(--sr-white) !important;
}

.sentinel-executive-hero h1,
.sentinel-executive-hero h2,
.sentinel-executive-hero h3,
.executive-banner h1,
.executive-banner h2,
.executive-banner h3,
.hero h1,
.hero h2,
.hero h3,
.dark-surface h1,
.dark-surface h2,
.dark-surface h3 {
    color: var(--sr-white) !important;
}

/* ----------------------------------------------------------
   ALERTS / STATUS
   ---------------------------------------------------------- */

.flash-success,
.alert-success {
    background: #E9F5EE !important;
    color: #166534 !important;
    border-color: #A7D7B6 !important;
}

.flash-warning,
.alert-warning {
    background: #FFF6E5 !important;
    color: #8A5200 !important;
    border-color: #EFCB83 !important;
}

.flash-danger,
.alert-danger {
    background: #FDECEC !important;
    color: #991B1B !important;
    border-color: #F3B3B3 !important;
}

.flash-info,
.alert-info {
    background: var(--sr-purple-100) !important;
    color: var(--sr-purple-900) !important;
    border-color: var(--sr-purple-300) !important;
}

/* ==========================================================
   SENTINELRE LOGIN
   ========================================================== */

.sr-login-shell {
    max-width: 620px;
    margin: 44px auto 72px;
    padding: 0 18px;
}

.sr-login-hero {
    position: relative;
    overflow: hidden;
    text-align: center;
    padding: 42px 28px 38px;
    margin-bottom: 26px;

    background:
        radial-gradient(
            circle at 50% 10%,
            rgba(217,181,95,.16),
            transparent 36%
        ),
        linear-gradient(
            135deg,
            var(--sr-purple-950),
            var(--sr-purple-800)
        );

    border-radius: 22px;
    box-shadow:
        0 22px 50px rgba(37,16,63,.22);
}

.sr-login-logo {
    display: block;
    width: 104px;
    height: 104px;
    object-fit: contain;
    margin: 0 auto 14px;
    filter:
        drop-shadow(0 8px 16px rgba(0,0,0,.22));
}

.sr-login-product {
    margin: 0 !important;
    color: var(--sr-white) !important;
    font-size: 2rem;
    letter-spacing: -.02em;
}

.sr-login-tagline {
    margin: 9px 0 0;
    color: var(--sr-gold-300) !important;
    font-size: .77rem;
    font-weight: 800;
    letter-spacing: .19em;
}

.sr-login-subtitle {
    max-width: 480px;
    margin: 16px auto 0;
    color: #EEE8F2 !important;
    font-size: .96rem;
    line-height: 1.55;
}

.sr-login-card {
    max-width: none !important;
    margin: 0 !important;
    padding: 34px 36px 30px !important;

    background: var(--sr-white) !important;
    border: 1px solid var(--sr-border) !important;
    border-radius: 20px !important;

    box-shadow:
        0 18px 46px rgba(37,16,63,.12) !important;
}

.sr-login-card h2 {
    margin: 0 0 7px;
    text-align: center;
    color: var(--sr-purple-900) !important;
}

.sr-login-card .sr-login-intro {
    margin: 0 auto 25px;
    max-width: 430px;
    text-align: center;
    color: var(--sr-muted) !important;
    line-height: 1.55;
}

.sr-login-card label {
    margin-top: 4px;
    margin-bottom: 7px;
    font-size: .9rem;
}

.sr-login-card input[type="text"],
.sr-login-card input[type="password"] {
    min-height: 48px;
    margin-bottom: 17px;
    border-radius: 10px !important;
}

.sr-login-submit {
    width: 100%;
    min-height: 48px;
    margin-top: 3px;

    background:
        linear-gradient(
            135deg,
            var(--sr-gold-500),
            var(--sr-gold-400)
        ) !important;

    color: #21160A !important;
    border: 1px solid var(--sr-gold-600) !important;
    border-radius: 10px !important;
    font-weight: 800 !important;
}

.sr-login-submit:hover {
    background:
        linear-gradient(
            135deg,
            var(--sr-gold-400),
            var(--sr-gold-300)
        ) !important;

    color: #21160A !important;
}

.sr-login-policy {
    margin: 13px 0 0;
    text-align: center;
    color: var(--sr-muted) !important;
    line-height: 1.45;
}

.sr-login-recovery {
    margin: 19px 0 0;
    padding-top: 18px;
    border-top: 1px solid #EEE9F0;
    text-align: center;
}

.sr-login-recovery a {
    color: var(--sr-purple-700) !important;
    font-weight: 700;
    text-decoration: none;
}

.sr-login-recovery a:hover {
    color: var(--sr-gold-700) !important;
}

/* ----------------------------------------------------------
   RESPONSIVE
   ---------------------------------------------------------- */

@media (max-width: 640px) {
    .sr-login-shell {
        margin-top: 22px;
        padding: 0 12px;
    }

    .sr-login-hero {
        padding: 30px 18px;
        border-radius: 16px;
    }

    .sr-login-logo {
        width: 84px;
        height: 84px;
    }

    .sr-login-product {
        font-size: 1.65rem;
    }

    .sr-login-card {
        padding: 26px 20px !important;
        border-radius: 16px !important;
    }
}

/* SENTINELRE AUTHORITATIVE FOREGROUND SYSTEM START */
/*
 * This is the sole final authority for platform foreground colors.
 *
 * Light surfaces: black text.
 * Dark surfaces: white text.
 *
 * Earlier stylesheets may provide layout, dimensions and responsive
 * behavior, but this final production stylesheet owns displayed color.
 */

/* Default white/light application surfaces */
html,
body,
main,
.content,
.main-content,
.page-content,
.dashboard-content,
.workspace-content {
    color: #111111 !important;
}

/* Light components */
.card,
.panel,
.widget,
.metric-card,
.kpi-card,
.content-card,
.dashboard-card,
.stat-card,
.summary-card,
.health-card,
.breakdown-card,
.module-card,
.form-card,
.workspace-card,
.modal-content,
.dropdown-menu,
.table-responsive {
    color: #111111 !important;
}

/* Normal text on light components */
.card h1,
.card h2,
.card h3,
.card h4,
.card h5,
.card h6,
.card p,
.card li,
.card td,
.card label,
.card small,
.card strong,
.panel h1,
.panel h2,
.panel h3,
.panel h4,
.panel h5,
.panel h6,
.panel p,
.panel li,
.panel td,
.panel label,
.panel small,
.panel strong,
.widget h1,
.widget h2,
.widget h3,
.widget p,
.metric-card h1,
.metric-card h2,
.metric-card h3,
.metric-card p,
.kpi-card h1,
.kpi-card h2,
.kpi-card h3,
.kpi-card p,
.content-card h1,
.content-card h2,
.content-card h3,
.content-card p,
.dashboard-card h1,
.dashboard-card h2,
.dashboard-card h3,
.dashboard-card p,
.modal-content h1,
.modal-content h2,
.modal-content h3,
.modal-content p,
.modal-content label {
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
    opacity: 1 !important;
}

/* Muted copy remains dark enough to read on white */
.card .small-note,
.card .text-muted,
.card .muted,
.card .description,
.card .subtitle,
.panel .small-note,
.panel .text-muted,
.panel .muted,
.panel .description,
.panel .subtitle,
.modal-content .small-note,
.modal-content .text-muted,
.modal-content .muted {
    color: #4b4b4b !important;
    -webkit-text-fill-color: #4b4b4b !important;
    opacity: 1 !important;
}

/* Known dark platform surfaces */
.sidebar,
.app-sidebar,
.sentinel-sidebar,
.topbar,
.app-header,
.sentinel-header,
.sv2-header,
.hero,
.hero-banner,
.page-hero,
.dashboard-hero,
.sentinel-executive-hero,
.executive-banner,
.dark-surface,
.bg-dark,
.bg-purple {
    color: #ffffff !important;
}

/* All ordinary lettering on dark surfaces */
.sidebar h1,
.sidebar h2,
.sidebar h3,
.sidebar h4,
.sidebar h5,
.sidebar h6,
.sidebar p,
.sidebar span,
.sidebar small,
.sidebar strong,
.sidebar label,
.sidebar li,
.sidebar a,
.app-sidebar h1,
.app-sidebar h2,
.app-sidebar h3,
.app-sidebar h4,
.app-sidebar p,
.app-sidebar span,
.app-sidebar small,
.app-sidebar strong,
.app-sidebar a,
.sentinel-sidebar h1,
.sentinel-sidebar h2,
.sentinel-sidebar h3,
.sentinel-sidebar h4,
.sentinel-sidebar p,
.sentinel-sidebar span,
.sentinel-sidebar small,
.sentinel-sidebar strong,
.sentinel-sidebar a,
.topbar h1,
.topbar h2,
.topbar h3,
.topbar p,
.topbar span,
.topbar small,
.topbar strong,
.topbar a,
.app-header h1,
.app-header h2,
.app-header h3,
.app-header p,
.app-header span,
.app-header small,
.app-header strong,
.app-header a,
.sentinel-header h1,
.sentinel-header h2,
.sentinel-header h3,
.sentinel-header p,
.sentinel-header span,
.sentinel-header small,
.sentinel-header strong,
.sentinel-header a,
.sv2-header h1,
.sv2-header h2,
.sv2-header h3,
.sv2-header p,
.sv2-header span,
.sv2-header small,
.sv2-header strong,
.sv2-header a,
.hero h1,
.hero h2,
.hero h3,
.hero h4,
.hero p,
.hero span,
.hero small,
.hero strong,
.hero label,
.hero li,
.hero a,
.hero-banner h1,
.hero-banner h2,
.hero-banner h3,
.hero-banner p,
.hero-banner span,
.hero-banner small,
.page-hero h1,
.page-hero h2,
.page-hero h3,
.page-hero p,
.page-hero span,
.page-hero small,
.dashboard-hero h1,
.dashboard-hero h2,
.dashboard-hero h3,
.dashboard-hero p,
.dashboard-hero span,
.dashboard-hero small,
.sentinel-executive-hero h1,
.sentinel-executive-hero h2,
.sentinel-executive-hero h3,
.sentinel-executive-hero p,
.sentinel-executive-hero span,
.sentinel-executive-hero small,
.executive-banner h1,
.executive-banner h2,
.executive-banner h3,
.executive-banner p,
.executive-banner span,
.executive-banner small,
.dark-surface h1,
.dark-surface h2,
.dark-surface h3,
.dark-surface p,
.dark-surface span,
.dark-surface small,
.dark-surface strong,
.dark-surface label,
.dark-surface li,
.dark-surface a,
.bg-dark h1,
.bg-dark h2,
.bg-dark h3,
.bg-dark p,
.bg-dark span,
.bg-dark small,
.bg-dark strong,
.bg-dark label,
.bg-dark li,
.bg-dark a,
.bg-purple h1,
.bg-purple h2,
.bg-purple h3,
.bg-purple p,
.bg-purple span,
.bg-purple small,
.bg-purple strong,
.bg-purple label,
.bg-purple li,
.bg-purple a {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
}

/* Purple primary actions always use white lettering */
button,
.btn,
.button,
input[type="submit"],
input[type="button"],
.sr-action,
.sr-primary-action,
.sr-luxury-action,
.sr-luxury-action-secondary {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* Children inside primary actions inherit the correct foreground */
button span,
button strong,
button small,
.btn span,
.btn strong,
.btn small,
.button span,
.button strong,
.button small {
    color: inherit !important;
    -webkit-text-fill-color: currentColor !important;
}

/* White secondary actions use black lettering */
.btn-secondary,
.button-secondary,
.btn-light,
.btn-outline,
.btn-outline-primary,
.sr-secondary-action {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
    border-color: var(--sr-purple-700) !important;
}

/* Gold buttons are light surfaces and therefore use black */
.btn-gold,
.button-gold,
.gold-button,
.btn-primary-gold {
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
}

/* White fields use black text */
input:not([type="checkbox"]):not([type="radio"]),
select,
textarea {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
}

input:not([type="checkbox"]):not([type="radio"])::placeholder,
textarea::placeholder {
    color: #4b4b4b !important;
    -webkit-text-fill-color: #4b4b4b !important;
    opacity: 1 !important;
}

/* Dark table headings and light table bodies */
thead,
thead tr,
thead th,
table th {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

tbody,
tbody tr,
tbody td {
    color: #111111;
}

/* Readable keyboard focus */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
    outline: 3px solid var(--sr-gold-400) !important;
    outline-offset: 2px;
}
/* SENTINELRE AUTHORITATIVE FOREGROUND SYSTEM END */

/* SENTINELRE CLIENT WORKSPACE BUTTON AUTHORITY START */
/*
 * Client Workspace owns layout locally.
 * Production UI owns foreground and background colors.
 */

/* Add New Client and Open Workspace */
html body .sr27c-directory-create-action
a.btn.sr-luxury-action,
html body .sr27c-button:not(
    .sr27c-button-secondary
) {
    background: var(--sr-purple-800) !important;
    background-color: var(--sr-purple-800) !important;
    color: var(--sr-white) !important;
    -webkit-text-fill-color: var(--sr-white) !important;
    border-color: var(--sr-purple-800) !important;
}

/* Text nested inside primary Client Workspace actions */
html body .sr27c-directory-create-action
a.btn.sr-luxury-action span,
html body .sr27c-directory-create-action
a.btn.sr-luxury-action strong,
html body .sr27c-button:not(
    .sr27c-button-secondary
) span,
html body .sr27c-button:not(
    .sr27c-button-secondary
) strong {
    color: var(--sr-white) !important;
    -webkit-text-fill-color: var(--sr-white) !important;
}

/* Reset and other secondary Client Workspace actions */
html body .sr27c-button.sr27c-button-secondary {
    background: var(--sr-white) !important;
    background-color: var(--sr-white) !important;
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
    border-color: var(--sr-gold-600) !important;
}

html body .sr27c-button:not(
    .sr27c-button-secondary
):hover,
html body .sr27c-button:not(
    .sr27c-button-secondary
):focus,
html body .sr27c-directory-create-action
a.btn.sr-luxury-action:hover,
html body .sr27c-directory-create-action
a.btn.sr-luxury-action:focus {
    background: var(--sr-purple-700) !important;
    background-color: var(--sr-purple-700) !important;
    color: var(--sr-white) !important;
    -webkit-text-fill-color: var(--sr-white) !important;
}
/* SENTINELRE CLIENT WORKSPACE BUTTON AUTHORITY END */

/* SENTINELRE GLOBAL ACTION CONTROL AUTHORITY START */
/*
 * All clickable action controls use the shared production palette.
 * This includes module-specific controls that predate .btn/.button.
 */

/* Primary action controls: purple background, white lettering */
html body a.btn:not(
    .btn-secondary
):not(
    .btn-light
):not(
    .btn-outline
):not(
    .btn-outline-primary
):not(
    .btn-gold
):not(
    .btn-danger
),
html body a.button:not(
    .button-secondary
):not(
    .button-gold
):not(
    .button-danger
),
html body a[role="button"]:not(
    [class*="secondary"]
):not(
    [class*="outline"]
):not(
    [class*="light"]
):not(
    [class*="gold"]
):not(
    [class*="danger"]
),
html body a[class*="button"]:not(
    [class*="secondary"]
):not(
    [class*="outline"]
):not(
    [class*="light"]
):not(
    [class*="gold"]
):not(
    [class*="danger"]
),
html body a[class*="action"]:not(
    [class*="secondary"]
):not(
    [class*="outline"]
):not(
    [class*="light"]
):not(
    [class*="gold"]
):not(
    [class*="danger"]
),
html body a[class*="workspace"]:not(
    [class*="secondary"]
):not(
    [class*="outline"]
):not(
    [class*="light"]
):not(
    [class*="gold"]
):not(
    [class*="danger"]
) {
    background: var(--sr-purple-800) !important;
    background-color: var(--sr-purple-800) !important;
    color: var(--sr-white) !important;
    -webkit-text-fill-color: var(--sr-white) !important;
    border-color: var(--sr-purple-800) !important;
    opacity: 1 !important;
    text-decoration: none !important;
}

/* Nested text and icons inherit the primary-action foreground */
html body a.btn span,
html body a.btn strong,
html body a.button span,
html body a.button strong,
html body a[role="button"] span,
html body a[role="button"] strong,
html body a[class*="button"] span,
html body a[class*="button"] strong,
html body a[class*="action"] span,
html body a[class*="action"] strong,
html body a[class*="workspace"] span,
html body a[class*="workspace"] strong {
    color: inherit !important;
    -webkit-text-fill-color: currentColor !important;
}

/* Primary hover and keyboard-focus state */
html body a.btn:not(
    .btn-secondary
):not(
    .btn-light
):not(
    .btn-outline
):not(
    .btn-outline-primary
):not(
    .btn-gold
):not(
    .btn-danger
):hover,
html body a.button:not(
    .button-secondary
):not(
    .button-gold
):not(
    .button-danger
):hover,
html body a[role="button"]:not(
    [class*="secondary"]
):not(
    [class*="outline"]
):not(
    [class*="light"]
):not(
    [class*="gold"]
):not(
    [class*="danger"]
):hover,
html body a[class*="button"]:not(
    [class*="secondary"]
):not(
    [class*="outline"]
):not(
    [class*="light"]
):not(
    [class*="gold"]
):not(
    [class*="danger"]
):hover,
html body a[class*="action"]:not(
    [class*="secondary"]
):not(
    [class*="outline"]
):not(
    [class*="light"]
):not(
    [class*="gold"]
):not(
    [class*="danger"]
):hover,
html body a[class*="workspace"]:not(
    [class*="secondary"]
):not(
    [class*="outline"]
):not(
    [class*="light"]
):not(
    [class*="gold"]
):not(
    [class*="danger"]
):hover {
    background: var(--sr-purple-700) !important;
    background-color: var(--sr-purple-700) !important;
    color: var(--sr-white) !important;
    -webkit-text-fill-color: var(--sr-white) !important;
}

/* Secondary and outline actions: white background, black lettering */
html body a.btn-secondary,
html body a.button-secondary,
html body a.btn-light,
html body a.btn-outline,
html body a.btn-outline-primary,
html body a[class*="secondary"],
html body a[class*="outline"] {
    background: var(--sr-white) !important;
    background-color: var(--sr-white) !important;
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
    border-color: var(--sr-purple-700) !important;
}

/* Gold actions are light surfaces and use black lettering */
html body a.btn-gold,
html body a.button-gold,
html body a.gold-button,
html body a[class*="gold"] {
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
}

/* Destructive actions retain a distinct red background */
html body a.btn-danger,
html body a.button-danger,
html body a[class*="danger"],
html body a[class*="delete"] {
    background: var(--sr-danger) !important;
    background-color: var(--sr-danger) !important;
    color: var(--sr-white) !important;
    -webkit-text-fill-color: var(--sr-white) !important;
    border-color: var(--sr-danger) !important;
}
/* SENTINELRE GLOBAL ACTION CONTROL AUTHORITY END */

/* SENTINELRE ORGANIZATION LOGO VISIBILITY START */
/*
 * Brokerage logos may contain dark lettering.
 * A consistent light presentation panel preserves the original
 * logo artwork and provides contrast against the black header.
 */
html body .sv2-header__organization {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: fit-content;
    max-width: 100%;
    min-height: 58px;
    padding: 7px 14px;
    box-sizing: border-box;

    background: rgba(255, 255, 255, 0.98) !important;
    background-color: #ffffff !important;

    border: 1px solid rgba(200, 155, 60, 0.78) !important;
    border-radius: 12px;

    box-shadow:
        0 6px 16px rgba(0, 0, 0, 0.22),
        0 0 0 1px rgba(255, 255, 255, 0.08);
}

html body .sv2-header__organization
.sv2-header__logo {
    display: block;
    width: auto;
    height: 58px;
    max-width: min(520px, 100%);
    object-fit: contain;
    object-position: left center;

    filter:
        brightness(1.08)
        contrast(1.08)
        saturate(1.05);
}

@media (max-width: 900px) {
    html body .sv2-header__organization {
        min-height: 50px;
        padding: 6px 10px;
        border-radius: 10px;
    }

    html body .sv2-header__organization
    .sv2-header__logo {
        height: 48px;
        max-width: 100%;
    }
}
/* SENTINELRE ORGANIZATION LOGO VISIBILITY END */

/* SENTINELRE AI ADVISOR DARK SURFACE AUTHORITY START */
/*
 * The Phase 26B hero and directive header are dark surfaces.
 * Their foreground colors are owned here, not by inline template CSS.
 */
html body .sr26-hero,
html body .sr26c-directive-header {
    color: var(--sr-white) !important;
}

html body .sr26-hero h1,
html body .sr26-hero h2,
html body .sr26-hero h3,
html body .sr26-hero h4,
html body .sr26-hero p,
html body .sr26-hero span,
html body .sr26-hero small,
html body .sr26-hero strong,
html body .sr26-hero label,
html body .sr26-hero li,
html body .sr26-hero a,
html body .sr26c-directive-header h1,
html body .sr26c-directive-header h2,
html body .sr26c-directive-header h3,
html body .sr26c-directive-header h4,
html body .sr26c-directive-header p,
html body .sr26c-directive-header span,
html body .sr26c-directive-header small,
html body .sr26c-directive-header strong,
html body .sr26c-directive-header label,
html body .sr26c-directive-header li,
html body .sr26c-directive-header a {
    color: var(--sr-white) !important;
    -webkit-text-fill-color: var(--sr-white) !important;
    opacity: 1 !important;
}

/* Generated intelligence timestamp remains readable and distinct */
html body .sr26-hero .sr26-generated {
    color: var(--sr-white) !important;
    -webkit-text-fill-color: var(--sr-white) !important;
    opacity: 1 !important;
}
/* SENTINELRE AI ADVISOR DARK SURFACE AUTHORITY END */

/* SENTINELRE AI ADVISOR REMAINING DARK HEADERS START */

/*
 * Final foreground ownership for the remaining Phase 26B dark surfaces.
 * Dark backgrounds use white foreground text.
 * Gold operational accents remain gold.
 */

/* Operational Intelligence */
.sr26d2-header h2,
.sr26d2-header p {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.sr26d2-header .sr26d2-eyebrow {
  color: #e2bd50 !important;
  -webkit-text-fill-color: #e2bd50 !important;
}

.sr26d2-header .sr26d2-health-badge span,
.sr26d2-header .sr26d2-health-badge small {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.sr26d2-header .sr26d2-health-badge strong {
  color: #e2bd50 !important;
  -webkit-text-fill-color: #e2bd50 !important;
}

/* Sentinel Executive Narrative */
.sr268-narrative-header h2,
.sr268-narrative-header h3,
.sr268-narrative-header p {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* Ask Sentinel */
.sr268-ask-header h2,
.sr268-ask-header p {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* SENTINELRE AI ADVISOR REMAINING DARK HEADERS END */

/* SENTINELRE CLIENT ASSIGNMENT DARK HEADER START */

/*
 * Final foreground ownership for the Client Assignment dark header.
 * The light assignment form and its controls remain unchanged.
 */
.sr263e-assignment-header,
.sr263e-assignment-header h2,
.sr263e-assignment-header p {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* SENTINELRE CLIENT ASSIGNMENT DARK HEADER END */

/* SENTINELRE BROKER OPERATIONS DARK HEADING START */

/*
 * Final foreground ownership for the purple Brokerage Operations heading.
 * The separate light Operational Health card remains unchanged.
 */
.sr28-operations-heading > div:first-child > h2,
.sr28-operations-heading > div:first-child > p:not(.sr28-eyebrow) {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.sr28-operations-heading > div:first-child > .sr28-eyebrow {
  color: #e2bd50 !important;
  -webkit-text-fill-color: #e2bd50 !important;
}

/* SENTINELRE BROKER OPERATIONS DARK HEADING END */

/* SENTINELRE INTELLIGENCE SUMMARY CONTRAST START */

/*
 * Final foreground ownership for dark Executive Intelligence summaries.
 * Light severity and confidence badges retain their existing colors.
 */

/* Executive Risk Index */
.sr29-risk-index > summary > div:first-child,
.sr29-risk-index > summary > div:first-child strong,
.sr29-risk-index > summary .sr29-risk-eyebrow,
.sr29-risk-index > summary .sr29-risk-summary-action {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* Predictive Brokerage Intelligence */
.sr29-predictive-intelligence > summary > div:first-child,
.sr29-predictive-intelligence > summary > div:first-child strong,
.sr29-predictive-intelligence > summary .sr29-predictive-eyebrow,
.sr29-predictive-intelligence > summary .sr29-predictive-summary-action {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* SENTINELRE INTELLIGENCE SUMMARY CONTRAST END */

/* SENTINELRE NOTIFICATION COUNT CONTRAST START */

/* Clear notification count: pale-green background with dark lettering. */
.sr266-notification-count.is-clear {
  background: #dcece4 !important;
  color: #111111 !important;
  -webkit-text-fill-color: #111111 !important;
}

/* Active notification count: gold background with dark lettering. */
.sr266-notification-count:not(.is-clear) {
  background: #e2bd50 !important;
  color: #111111 !important;
  -webkit-text-fill-color: #111111 !important;
}

/* SENTINELRE NOTIFICATION COUNT CONTRAST END */

/* SENTINELRE USER COMPLIANCE SCORE START */

/*
 * Prominent light informational badge with dark readable lettering.
 */
.sr-user-compliance-score {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 8px 16px !important;
  background: #eee7f7 !important;
  border: 1px solid #bda8d8 !important;
  border-radius: 999px !important;
  color: #111111 !important;
  -webkit-text-fill-color: #111111 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  box-shadow: 0 3px 10px rgba(43, 8, 79, 0.10);
}

/* SENTINELRE USER COMPLIANCE SCORE END */

/* SENTINELRE POWERED BY UNDER LOGO START */

/*
 * Permanent organization-brand lockup:
 * - The uploaded organization logo remains inside the white panel.
 * - SentinelRE attribution is a separate sibling beneath the panel.
 * - Future organization logos automatically inherit this structure.
 */
html body .sv2-header__organization-lockup {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  width: fit-content;
  max-width: 100%;
  min-width: 0;
  gap: 0;
}

/* Restore the organization container as a logo-only panel. */
html body .sv2-header__organization {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  width: fit-content;
  max-width: 100%;
  gap: 0;
}

/* Separate attribution area beneath—not inside—the logo panel. */
html body .sv2-header__attribution {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  box-sizing: border-box;
  padding: 6px 4px 0;
  background: transparent !important;
}

/* Gold attribution against the black header. */
html body .sv2-header__attribution
.sv2-header__powered-under-logo,
html body .sv2-header__attribution
.sv2-header__powered-under-logo strong {
  display: inline;
  width: auto;
  margin: 0 !important;
  padding: 0;
  color: #d6b35a !important;
  -webkit-text-fill-color: #d6b35a !important;
  font-size: 0.72rem !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.07em;
  text-align: center;
  text-transform: uppercase;
}

@media (max-width: 900px) {
  html body .sv2-header__organization-lockup {
    max-width: 100%;
  }

  html body .sv2-header__attribution {
    padding-top: 4px;
  }

  html body .sv2-header__attribution
  .sv2-header__powered-under-logo,
  html body .sv2-header__attribution
  .sv2-header__powered-under-logo strong {
    font-size: 0.65rem !important;
  }
}

/* SENTINELRE POWERED BY UNDER LOGO END */

/* ==========================================================
   SENTINELRE UI-BRAND.5
   ASK SENTINEL READABILITY AUTHORITY
   ========================================================== */

/*
 * Ask Sentinel uses light message surfaces.
 * Explicit local foreground authority prevents global
 * dark-surface rules from forcing white text onto them.
 */

html body .sr26b-ask-sentinel,
html body [data-endpoint*="ask-sentinel"] {
    color: #1F2937 !important;
}


/* User question card */

html body .sr26b-ask-sentinel .sr26b-ask-user,
html body .sr26b-ask-sentinel .sr26b-user-question,
html body .sr26b-ask-sentinel [class*="user"],
html body [data-endpoint*="ask-sentinel"] [class*="user"] {
    color: #241238 !important;
    -webkit-text-fill-color: #241238 !important;
}

html body .sr26b-ask-sentinel .sr26b-ask-user *,
html body .sr26b-ask-sentinel .sr26b-user-question *,
html body .sr26b-ask-sentinel [class*="user"] *,
html body [data-endpoint*="ask-sentinel"] [class*="user"] * {
    color: #241238 !important;
    -webkit-text-fill-color: #241238 !important;
    opacity: 1 !important;
}


/* Sentinel response card */

html body .sr26b-ask-sentinel .sr26b-ask-answer,
html body .sr26b-ask-sentinel .sr26b-sentinel-answer,
html body .sr26b-ask-sentinel [class*="answer"],
html body .sr26b-ask-sentinel [class*="response"],
html body [data-endpoint*="ask-sentinel"] [class*="answer"],
html body [data-endpoint*="ask-sentinel"] [class*="response"] {
    color: #1F2937 !important;
    -webkit-text-fill-color: #1F2937 !important;
}

html body .sr26b-ask-sentinel .sr26b-ask-answer *,
html body .sr26b-ask-sentinel .sr26b-sentinel-answer *,
html body .sr26b-ask-sentinel [class*="answer"] *,
html body .sr26b-ask-sentinel [class*="response"] *,
html body [data-endpoint*="ask-sentinel"] [class*="answer"] *,
html body [data-endpoint*="ask-sentinel"] [class*="response"] * {
    color: #1F2937 !important;
    -webkit-text-fill-color: #1F2937 !important;
    opacity: 1 !important;
}


/* Headings on light Ask Sentinel cards */

html body .sr26b-ask-sentinel h3,
html body .sr26b-ask-sentinel h4,
html body [data-endpoint*="ask-sentinel"] h3,
html body [data-endpoint*="ask-sentinel"] h4 {
    color: #210C39 !important;
    -webkit-text-fill-color: #210C39 !important;
}


/* Source line */

html body .sr26b-ask-sentinel .small-note,
html body .sr26b-ask-sentinel [class*="source"],
html body [data-endpoint*="ask-sentinel"] .small-note,
html body [data-endpoint*="ask-sentinel"] [class*="source"] {
    color: #566176 !important;
    -webkit-text-fill-color: #566176 !important;
    opacity: 1 !important;
}


/* Ask Sentinel input */

html body .sr26b-ask-sentinel input,
html body .sr26b-ask-sentinel textarea,
html body [data-endpoint*="ask-sentinel"] input,
html body [data-endpoint*="ask-sentinel"] textarea {
    color: #1F2937 !important;
    -webkit-text-fill-color: #1F2937 !important;
    background: #FFFFFF !important;
}

html body .sr26b-ask-sentinel input::placeholder,
html body .sr26b-ask-sentinel textarea::placeholder,
html body [data-endpoint*="ask-sentinel"] input::placeholder,
html body [data-endpoint*="ask-sentinel"] textarea::placeholder {
    color: #667085 !important;
    -webkit-text-fill-color: #667085 !important;
    opacity: 1 !important;
}


/* Dark action controls require white text */

html body .sr26b-ask-sentinel a.btn,
html body .sr26b-ask-sentinel a.button,
html body .sr26b-ask-sentinel button,
html body [data-endpoint*="ask-sentinel"] a.btn,
html body [data-endpoint*="ask-sentinel"] a.button,
html body [data-endpoint*="ask-sentinel"] button {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

html body .sr26b-ask-sentinel a.btn *,
html body .sr26b-ask-sentinel a.button *,
html body .sr26b-ask-sentinel button *,
html body [data-endpoint*="ask-sentinel"] a.btn *,
html body [data-endpoint*="ask-sentinel"] a.button *,
html body [data-endpoint*="ask-sentinel"] button * {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}


/* Specific Executive Actions control */

html body .sr26b-ask-sentinel a[href*="executive"],
html body [data-endpoint*="ask-sentinel"] a[href*="executive"] {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

/* SENTINELRE UI-BRAND.5 END */

/* SENTINELRE UI-BRAND.6 NOTIFICATION HEADER CONTRAST START */

/*
 * Live Executive Notifications panel.
 *
 * Scope is deliberately limited to the Phase 26B.6
 * notification header so no other SentinelRE surfaces
 * inherit these text colors.
 */

html body .sr266-notification-panel
.sr266-notification-header h3 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

html body .sr266-notification-panel
.sr266-notification-header
#sr266-notification-summary {
  color: #f3f0f7 !important;
  -webkit-text-fill-color: #f3f0f7 !important;
}

/* SENTINELRE UI-BRAND.6 NOTIFICATION HEADER CONTRAST END */
