/**
 * GEMS — Auckland Council (ACC) display theme.
 * Scoped to html.gems-theme-acc. Uses data-bs-theme="light".
 *
 * Palette from Auckland Council Identity Guidelines (Ocean / Shore /
 * Pohutukawa) sampled from the public horizontal lockup:
 * - Ocean (wordmark) #000B27 — PMS 539
 * - Shore (waves)    #0088CC — PMS 7461
 * - Pohutukawa leaf  #7A9A00 — PMS 377
 * - Pohutukawa flower #E71700 — PMS 485
 *
 * Full-colour lockup is for white surfaces only. Nav chrome uses the white
 * reverse (guidelines: single-colour white on a solid colour).
 *
 * Logo: public/assets/images/partners/auckland-council-logo.png
 *       public/assets/images/partners/auckland-council-logo-white.png
 * Source: Wikimedia Commons (Auckland Council Platform Team), CC BY-SA 4.0.
 */

html.gems-theme-acc {
    --gems-acc-ocean: #000b27;
    --gems-acc-ocean-mid: #001433;
    --gems-acc-shore: #0088cc;
    --gems-acc-shore-aa: #00689c;
    --gems-acc-shore-hover: #005a88;
    --gems-acc-leaf: #7a9a00;
    --gems-acc-flower: #e71700;
    --gems-acc-wash: #e8f4fb;
    --gems-acc-ink: #000b27;
    --gems-acc-header-text: #ffffff;
    --gems-acc-header-text-soft: rgba(255, 255, 255, 0.92);
    color-scheme: light;
}

html.gems-theme-acc {
    --bs-primary: var(--gems-acc-shore-aa);
    --bs-primary-rgb: 0, 104, 156;
    --bs-link-color: var(--gems-acc-shore-aa);
    --bs-link-hover-color: var(--gems-acc-shore-hover);
}

html.gems-theme-acc .alert-warning {
    --bs-alert-color: var(--gems-acc-ink);
    --bs-alert-bg: rgba(231, 23, 0, 0.08);
    --bs-alert-border-color: var(--gems-acc-flower);
    color: var(--gems-acc-ink) !important;
}

html.gems-theme-acc body,
html.gems-theme-acc #main-wrapper,
html.gems-theme-acc .content-body {
    background-color: #f4f6f8;
    color: var(--gems-acc-ink);
}

html.gems-theme-acc .nav-header {
    position: relative;
    background: var(--gems-acc-ocean);
    border-color: var(--gems-acc-ocean-mid);
    border-bottom: 0;
}

html.gems-theme-acc .nav-header::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--gems-acc-shore) 0%, var(--gems-acc-leaf) 50%, var(--gems-acc-flower) 100%);
    pointer-events: none;
}

html.gems-theme-acc .nav-header .hamburger .line svg path {
    fill: #d6eaf6 !important;
}

html:not(.gems-theme-acc) .gems-brand-acc-mark {
    display: none !important;
}

html.gems-theme-acc .gems-brand-stack > a.brand-logo.gems-brand-default {
    display: none !important;
}

html.gems-theme-acc .gems-brand-acc-mark {
    display: flex !important;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    flex: 1 1 auto;
    min-height: 0;
    gap: 0.2rem;
    padding: 0.15rem 0 0.1rem;
    max-width: 100%;
}

html.gems-theme-acc .nav-header .gems-brand-stack {
    align-items: flex-start;
    padding-left: 1.25rem;
    padding-right: 2.25rem;
    width: 100%;
    box-sizing: border-box;
}

html.gems-theme-acc .gems-brand-acc-mark .gems-acc-external-logo img {
    height: 36px;
    width: auto;
    max-width: min(240px, 54vw);
    display: block;
    object-fit: contain;
}

html.gems-theme-acc .gems-acc-powered-line {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.25rem 0.35rem;
    font-size: 0.52rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.72);
    line-height: 1.2;
}

html.gems-theme-acc .gems-acc-powered-gems-link {
    display: inline-flex;
    align-items: center;
    gap: 0.2rem;
    color: rgba(255, 255, 255, 0.82);
    text-decoration: none;
}

html.gems-theme-acc .gems-acc-powered-gems-link:hover {
    color: #fff;
}

html.gems-theme-acc .gems-acc-powered-gems-link img {
    width: 14px;
    height: 14px;
}

html.gems-theme-acc .header {
    background: var(--gems-acc-ocean);
    border-color: var(--gems-acc-ocean-mid);
}

html.gems-theme-acc .header .dashboard_bar,
html.gems-theme-acc .header .navbar-nav .nav-link,
html.gems-theme-acc .header .header-profile2 > a.nav-link,
html.gems-theme-acc .header .header-profile2 > a.nav-link .header-info2,
html.gems-theme-acc .header .header-profile2 > a.nav-link .header-info2 span,
html.gems-theme-acc .header .header-profile2 > a.nav-link .header-info2 strong {
    color: var(--gems-acc-header-text) !important;
}

html.gems-theme-acc .header .navbar-nav .nav-link:hover,
html.gems-theme-acc .header .navbar-nav .nav-link:focus {
    color: #b8dff2 !important;
}

html.gems-theme-acc .deznav {
    background: var(--gems-acc-ocean);
    border-right: 1px solid var(--gems-acc-ocean-mid);
}

html.gems-theme-acc .deznav .metismenu > li > a {
    color: #c5d0dc;
}

html.gems-theme-acc .deznav .metismenu > li:hover > a {
    background: rgba(0, 136, 204, 0.16);
    color: #fff;
}

html.gems-theme-acc .deznav .metismenu > li.mm-active > a {
    background: rgba(0, 136, 204, 0.22);
    color: #d6eaf6;
    box-shadow: inset 3px 0 0 var(--gems-acc-shore);
}

html.gems-theme-acc .content-body .card {
    border-color: rgba(0, 11, 39, 0.1);
}

html.gems-theme-acc .btn-primary {
    background-color: var(--gems-acc-shore-aa);
    border-color: var(--gems-acc-shore-aa);
}

html.gems-theme-acc .btn-primary:hover,
html.gems-theme-acc .btn-primary:focus {
    background-color: var(--gems-acc-shore-hover);
    border-color: var(--gems-acc-shore-hover);
}

html.gems-theme-acc .btn-outline-primary {
    color: var(--gems-acc-shore-aa);
    border-color: var(--gems-acc-shore-aa);
}

html.gems-theme-acc a:not(.btn):not(.nav-link):not(.dropdown-item) {
    color: var(--gems-acc-shore-aa);
}

html.gems-theme-acc .gems-theme-menu {
    background: #fff;
    border: 1px solid rgba(0, 11, 39, 0.12);
}

html.gems-theme-acc .gems-brand-ccc-mark,
html.gems-theme-acc .gems-brand-we-mark,
html.gems-theme-acc .gems-brand-two-mark {
    display: none !important;
}
