/* INNOQ Keycloak Account Console Theme — Keycloak 26 / PatternFly v5 */

:root {
    /* Brand colors */
    --innoq-coral: #ff9c66;
    --innoq-coral-dark: #e88550;
    --innoq-coral-light: #ffb68a;
    --innoq-white: #ffffff;
    --innoq-dark: #1a1a1a;
    --innoq-gray: #4a4a4a;
    --innoq-gray-light: #f5f5f5;
    --innoq-border: #e0e0e0;

    /* Override PatternFly global tokens (theme-agnostic: applies in light and dark) */
    --pf-v5-global--primary-color--100: var(--innoq-coral);
    --pf-v5-global--primary-color--200: var(--innoq-coral-dark);
    --pf-v5-global--link--Color: var(--innoq-coral-dark);
    --pf-v5-global--link--Color--hover: var(--innoq-coral);
}

/* ===== Navigation ===== */
.pf-v5-c-nav__link:hover {
    color: var(--innoq-coral-dark) !important;
}

.pf-v5-c-nav__link.pf-m-current {
    color: var(--innoq-coral) !important;
}

.pf-v5-c-nav__link::after {
    --pf-v5-c-nav__link--m-current--after--BorderColor: var(--innoq-coral);
}

/* ===== Replace Keycloak logo with INNOQ logo ===== */
.pf-v5-c-brand,
._brand_1gmge_1 {
    height: 32px;
    width: 120px;
    object-position: -9999px;
    background: url('../img/innoq-logo.svg') center/contain no-repeat;
}

img.pf-v5-c-brand,
img._brand_1gmge_1 {
    object-fit: none;
    overflow: hidden;
    color: transparent;
}

/* Light wordmark logo so it stays visible on the dark background */
.pf-v5-theme-dark .pf-v5-c-brand,
.pf-v5-theme-dark ._brand_1gmge_1 {
    background-image: url('../img/innoq-logo-dark.svg');
}

/* ===== Buttons ===== */
.pf-v5-c-button.pf-m-primary {
    background-color: var(--innoq-coral) !important;
    border: none;
}

.pf-v5-c-button.pf-m-primary:hover {
    background-color: var(--innoq-coral-dark) !important;
}

.pf-v5-c-button.pf-m-primary:focus {
    box-shadow: 0 0 0 3px rgba(255, 156, 102, 0.4);
}

/* White text on coral fails WCAG contrast (2.05:1) against PatternFly's dark surfaces;
   dark text on the same coral fill passes comfortably (~8:1). Scoped to dark mode only. */
.pf-v5-theme-dark .pf-v5-c-button.pf-m-primary {
    color: var(--innoq-dark) !important;
}

.pf-v5-c-button.pf-m-link {
    color: var(--innoq-coral-dark) !important;
}

.pf-v5-c-button.pf-m-link:hover {
    color: var(--innoq-coral) !important;
}

/* ===== Links ===== */
a {
    color: var(--innoq-coral-dark);
}

a:hover {
    color: var(--innoq-coral);
}

/* ===== Form controls ===== */
.pf-v5-c-form-control:focus-within {
    --pf-v5-c-form-control--BorderColor: var(--innoq-coral);
    outline: 2px solid rgba(255, 156, 102, 0.25);
    outline-offset: -1px;
}

/* ===== Tabs ===== */
.pf-v5-c-tabs__link::after {
    --pf-v5-c-tabs__link--after--BorderColor--active: var(--innoq-coral);
}

.pf-v5-c-tabs__link:hover::after,
.pf-v5-c-tabs__item.pf-m-current .pf-v5-c-tabs__link::after {
    border-bottom-color: var(--innoq-coral);
}

/* ===== Switch / Toggle ===== */
.pf-v5-c-switch__input:checked ~ .pf-v5-c-switch__toggle {
    --pf-v5-c-switch__input--checked__toggle--BackgroundColor: var(--innoq-coral);
}

/* ===== Jump links ===== */
.pf-v5-c-jump-links__item.pf-m-current .pf-v5-c-jump-links__link-text {
    color: var(--innoq-coral) !important;
}

/* ===== Alerts ===== */
.pf-v5-c-alert.pf-m-warning {
    --pf-v5-c-alert--m-warning--BorderColor: var(--innoq-coral);
}

/* ===== Data list ===== */
.pf-v5-c-data-list__item:hover {
    --pf-v5-c-data-list__item--hover--BackgroundColor: rgba(255, 156, 102, 0.05);
}
