/* Nora Marketing v0.2.2 / Mautic 7.2.1. Only the explicitly marked shell. */

html[data-nora-branding="internal"] .nora-logo,
html[data-nora-branding="internal"] .nora-login-logo {
    object-fit: contain;
    vertical-align: middle;
}

/* Keep the original wordmark proportional and out of Mautic's avatar mask. */
html[data-nora-branding="internal"] #app-header.navbar .navbar-nocollapse .navbar-nav > li > a .nora-logo {
    display: block;
    width: 112px;
    min-width: 0;
    height: auto;
    aspect-ratio: auto;
    border-radius: 0;
}
html[data-nora-branding="internal"] #app-header.navbar .navbar-nocollapse .navbar-nav > li > a .nora-logo--mobile {
    width: 32px;
    height: 32px;
    min-width: 32px;
    aspect-ratio: 1 / 1;
    border-radius: 0;
}
html[data-nora-branding="internal"] .nora-login-logo {
    max-width: 100%;
    height: auto;
}

/* Header brand shell and direct controls. Dropdown panels/content stay on the
   Mautic theme; only their trigger controls receive Nora colors. */
html[data-nora-branding="internal"] #app-header.navbar {
    background-color: #142e3b;
}
html[data-nora-branding="internal"] #app-header.navbar .navbar-nocollapse .navbar-nav > li > a,
html[data-nora-branding="internal"] #app-header.navbar .navbar-nocollapse .navbar-nav > .search-button:not(:disabled):not(.disabled) {
    color: #ffffff;
    --icon-primary: #ffffff;
    --link-primary: #ffffff;
    --link-primary-hover: #ffffff;
    --focus: #ffffff;
}
html[data-nora-branding="internal"] #app-header.navbar .navbar-nocollapse .navbar-nav > li > a > :is(i, span)[class*="ri-"],
html[data-nora-branding="internal"] #app-header.navbar .navbar-nocollapse .navbar-nav > .search-button:not(:disabled):not(.disabled) > i[class*="ri-"] {
    color: inherit;
}
html[data-nora-branding="internal"] #app-header.navbar .navbar-nocollapse .navbar-nav > li > a:is(:hover, :focus, :active, .active, [aria-expanded="true"]),
html[data-nora-branding="internal"] #app-header.navbar .navbar-nocollapse .navbar-nav > li.open > a,
html[data-nora-branding="internal"] #app-header.navbar .navbar-nocollapse .navbar-nav > .search-button:not(:disabled):not(.disabled):is(:hover, :focus, :active, .active) {
    color: #ffffff;
    background-color: #29424f;
}
html[data-nora-branding="internal"] #app-header.navbar .navbar-nocollapse .navbar-nav > li > a:focus-visible,
html[data-nora-branding="internal"] #app-header.navbar .navbar-nocollapse .navbar-nav > .search-button:not(:disabled):not(.disabled):focus-visible {
    outline: 2px solid #ffffff;
    outline-offset: -3px;
}

/* Internal sidebar: fixed Nora petroleum surfaces across light/dark themes.
   Match the upstream ancestry and item states; avoid changing page surfaces. */
html[data-nora-branding="internal"] .app-sidebar.sidebar-left {
    background-color: #142e3b;
    color: #b9c7ce;
}
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .sidebar-header,
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .sidebar-footer {
    background-color: #142e3b;
    color: #ffffff;
}
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .extra-menu > a,
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .extra-menu > a > i {
    color: #ffffff;
}
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .extra-menu > a:hover,
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .extra-menu > a:focus-visible {
    color: #b9c7ce;
}
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav.sidebar-left-dark,
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav.sidebar-left-dark > li > a:hover {
    background-color: #142e3b;
    background-image: none;
}
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav-sidebar > .nav > li > a,
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav-sidebar > .nav > li > .nav-submenu > li > a {
    color: #b9c7ce;
}
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav-sidebar > .nav > li > a .icon,
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav-sidebar > .nav > li > a .arrow {
    color: inherit;
}
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav-sidebar > .nav > li > a:is(:hover, :focus),
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav-sidebar > .nav > li > .nav-submenu > li > a:is(:hover, :focus) {
    color: #ffffff;
    background-color: #29424f;
}
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav-sidebar > .nav > li:is(.active, .open) > a,
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav-sidebar > .nav > li > .nav-submenu > li.active > a {
    color: #ffffff;
    background-color: #c7432a;
    /* Terracotta/petroleum measure 2.87:1; the inset white marker supplies a
       separate >=3:1 non-text selection cue without changing row geometry. */
    box-shadow: inset 3px 0 0 #ffffff;
}
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav-sidebar > .nav > li:is(.active, .open) > a .icon,
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav-sidebar > .nav > li:is(.active, .open) > a .arrow,
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav-sidebar > .nav > li > .nav-submenu > li.active > a .icon,
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav-sidebar > .nav > li > .nav-submenu > li.active > a .arrow {
    color: #ffffff;
}
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav-sidebar > .nav > li:is(.active, .open) > a:is(:hover, :focus),
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav-sidebar > .nav > li > .nav-submenu > li.active > a:is(:hover, :focus) {
    color: #ffffff;
    background-color: #c7432a;
}
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav-sidebar > .nav .nav-heading {
    color: #b9c7ce;
}
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav-sidebar > .nav > li > .nav-submenu,
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav-sidebar > .nav > li.open > .nav-submenu {
    background-color: #142e3b;
}
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav-sidebar > .nav > li > .nav-submenu::after {
    background-color: #29424f;
}
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav-sidebar > .nav > li > .nav-submenu > li::after {
    background-color: #b9c7ce;
    box-shadow: none;
}
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav-sidebar > .nav > li > .nav-submenu > li.active::after {
    /* Upstream marks this active-navigation dot !important. It is a nav state,
       not a warning signal; keep the override narrowly scoped to active rows. */
    background-color: #c7432a !important;
    box-shadow: 0 0 0 1px #ffffff;
}
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav-sidebar > .nav > li > a:focus-visible,
html[data-nora-branding="internal"] .app-sidebar.sidebar-left .nav-sidebar > .nav > li > .nav-submenu > li > a:focus-visible {
    outline: 2px solid #ffffff;
    outline-offset: -2px;
}

/* Use petroleum for ordinary text links only on light content surfaces.
   Exclude controls, labels and semantic/status links; dark-theme links remain
   governed by the selected Mautic theme. */
html[data-nora-branding="internal"][theme^="light"] #app-content .content-body a[href]:not([class]):not([role]):not([data-toggle]):not([data-bs-toggle]):not([aria-controls]):not([aria-expanded]):not([onclick]):not([tabindex]) {
    color: #142e3b;
}
html[data-nora-branding="internal"][theme^="light"] #app-content .content-body a[href]:not([class]):not([role]):not([data-toggle]):not([data-bs-toggle]):not([aria-controls]):not([aria-expanded]):not([onclick]):not([tabindex]):hover {
    color: #333333;
}

/* The password-recovery navigation link belongs to the light Nora sign-in
   surface; keep this route-specific and leave SSO/forms/status links intact. */
html[data-nora-branding="internal"] #main .panel[name="form-login"] .login-form > .mt-sm.text-right > a[href] {
    color: #142e3b;
}
html[data-nora-branding="internal"] #main .panel[name="form-login"] .login-form > .mt-sm.text-right > a[href]:is(:hover, :focus-visible) {
    color: #c7432a;
}
html[data-nora-branding="internal"] #main .panel[name="form-login"] .login-form > .mt-sm.text-right > a[href]:focus-visible {
    outline: 2px solid #142e3b;
    outline-offset: 2px;
}

/* Scope primary-action tokens directly on their controls. Mautic themes define
   tokens on :root[theme], which outranks a plain html[data-*] declaration.
   Direct control tokens win without recoloring links, charts, maps, or other
   components that also consume theme tokens. Danger and disabled values remain
   semantic upstream tokens. */
html[data-nora-branding="internal"] .btn-primary:not(.btn-danger),
html[data-nora-branding="internal"] .btn-primary:not(.btn-danger) + .dropdown-toggle:not(.btn-danger) {
    --button-primary: #c7432a;
    --button-primary-hover: #a93622;
    --button-primary-active: #94301d;
    --text-on-color: #ffffff;
    --focus: #ffffff;
}

/* The marker is presentation-only and stays absent from excluded surfaces. */
html[data-nora-branding="internal"] .mautic-logo.img-circle {
    border-radius: 0;
}

@media (min-width: 768px) {
    html[data-nora-branding="internal"].sidebar-left-collapse #app-header .brand-logo--desktop,
    html[data-nora-branding="internal"] .sidebar-left-collapse #app-header .brand-logo--desktop {
        display: none !important;
    }
    html[data-nora-branding="internal"].sidebar-left-collapse #app-header .brand-logo--mobile,
    html[data-nora-branding="internal"] .sidebar-left-collapse #app-header .brand-logo--mobile {
        display: block !important;
    }
}
