/* ========================================================
   HOMEFLIX – Keycloak Admin Theme
   Dark Cinema Theme · PatternFly CSS Variable Overrides
   Red #D42426 · Orange #E8911A · Dark BG #0A0A0F
   Font: Inter
   ======================================================== */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');

/* ── Global PatternFly Variable Overrides ──────────────── */
:root {
    /* ── Text Colors ── */
    --pf-v5-global--Color--100: #F0F0F5;
    --pf-v5-global--Color--200: #9999AA;
    --pf-v5-global--Color--300: #666677;
    --pf-v5-global--Color--400: #444455;
    --pf-v5-global--Color--light-100: #F0F0F5;
    --pf-v5-global--Color--light-200: #9999AA;
    --pf-v5-global--Color--light-300: #666677;
    --pf-v5-global--Color--dark-100: #F0F0F5;
    --pf-v5-global--Color--dark-200: #9999AA;

    /* ── Background Colors ── */
    --pf-v5-global--BackgroundColor--100: #0d0d14;
    --pf-v5-global--BackgroundColor--200: #111118;
    --pf-v5-global--BackgroundColor--light-100: #0d0d14;
    --pf-v5-global--BackgroundColor--light-200: #111118;
    --pf-v5-global--BackgroundColor--light-300: #16161e;
    --pf-v5-global--BackgroundColor--dark-100: #0A0A0F;
    --pf-v5-global--BackgroundColor--dark-200: #080810;
    --pf-v5-global--BackgroundColor--dark-300: #060608;

    /* ── Primary / Active – Orange ── */
    --pf-v5-global--primary-color--100: #E8911A;
    --pf-v5-global--primary-color--200: #F5A623;
    --pf-v5-global--primary-color--dark-100: #E8911A;
    --pf-v5-global--active-color--100: #E8911A;

    /* ── Links ── */
    --pf-v5-global--link--Color: #E8911A;
    --pf-v5-global--link--Color--hover: #F5A623;
    --pf-v5-global--link--Color--dark--default: #E8911A;
    --pf-v5-global--link--Color--dark--hover: #F5A623;

    /* ── Status Colors ── */
    --pf-v5-global--danger-color--100: #D42426;
    --pf-v5-global--danger-color--200: #F03234;
    --pf-v5-global--danger-color--300: #a81d1f;
    --pf-v5-global--success-color--100: #2ea043;
    --pf-v5-global--success-color--200: #57d475;
    --pf-v5-global--warning-color--100: #E8911A;
    --pf-v5-global--warning-color--200: #F5A623;
    --pf-v5-global--info-color--100: #3884ff;
    --pf-v5-global--info-color--200: #6da8ff;

    /* ── Borders ── */
    --pf-v5-global--BorderColor--100: rgba(255, 255, 255, 0.1);
    --pf-v5-global--BorderColor--200: rgba(255, 255, 255, 0.06);
    --pf-v5-global--BorderColor--300: rgba(255, 255, 255, 0.04);
    --pf-v5-global--BorderColor--dark-100: rgba(255, 255, 255, 0.1);

    /* ── Shadows ── */
    --pf-v5-global--BoxShadow--sm: 0 2px 8px rgba(0, 0, 0, 0.3);
    --pf-v5-global--BoxShadow--md: 0 4px 16px rgba(0, 0, 0, 0.4);
    --pf-v5-global--BoxShadow--lg: 0 8px 32px rgba(0, 0, 0, 0.5);
    --pf-v5-global--BoxShadow--xl: 0 16px 48px rgba(0, 0, 0, 0.6);

    /* ── Font ── */
    --pf-v5-global--FontFamily--sans-serif: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --pf-v5-global--FontFamily--heading--sans-serif: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;

    /* ── PF4 Fallbacks ── */
    --pf-global--Color--100: #F0F0F5;
    --pf-global--Color--200: #9999AA;
    --pf-global--Color--300: #666677;
    --pf-global--BackgroundColor--100: #0d0d14;
    --pf-global--BackgroundColor--200: #111118;
    --pf-global--BackgroundColor--light-100: #0d0d14;
    --pf-global--BackgroundColor--light-200: #111118;
    --pf-global--BackgroundColor--light-300: #16161e;
    --pf-global--BackgroundColor--dark-100: #0A0A0F;
    --pf-global--BackgroundColor--dark-200: #080810;
    --pf-global--primary-color--100: #E8911A;
    --pf-global--primary-color--200: #F5A623;
    --pf-global--active-color--100: #E8911A;
    --pf-global--link--Color: #E8911A;
    --pf-global--link--Color--hover: #F5A623;
    --pf-global--danger-color--100: #D42426;
    --pf-global--danger-color--200: #F03234;
    --pf-global--success-color--100: #2ea043;
    --pf-global--warning-color--100: #E8911A;
    --pf-global--info-color--100: #3884ff;
    --pf-global--BorderColor--100: rgba(255, 255, 255, 0.1);
    --pf-global--BorderColor--200: rgba(255, 255, 255, 0.06);
    --pf-global--BorderColor--300: rgba(255, 255, 255, 0.04);
    --pf-global--BoxShadow--sm: 0 2px 8px rgba(0, 0, 0, 0.3);
    --pf-global--BoxShadow--md: 0 4px 16px rgba(0, 0, 0, 0.4);
    --pf-global--BoxShadow--lg: 0 8px 32px rgba(0, 0, 0, 0.5);
    --pf-global--FontFamily--sans-serif: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --pf-global--FontFamily--heading--sans-serif: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}


/* ================================================================
   BODY & PAGE
   ================================================================ */

body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
    background-color: #0A0A0F !important;
    color: #F0F0F5 !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.pf-v5-c-page,
.pf-c-page {
    --pf-v5-c-page--BackgroundColor: #0d0d14;
    --pf-c-page--BackgroundColor: #0d0d14;
    background-color: #0d0d14 !important;
}

.pf-v5-c-page__main,
.pf-c-page__main {
    background-color: #0d0d14 !important;
}

.pf-v5-c-page__main-section,
.pf-c-page__main-section {
    --pf-v5-c-page__main-section--BackgroundColor: #0d0d14;
    --pf-c-page__main-section--BackgroundColor: #0d0d14;
    background-color: #0d0d14 !important;
}

.pf-v5-c-page__main-breadcrumb,
.pf-c-page__main-breadcrumb {
    background-color: #0d0d14 !important;
}


/* ================================================================
   MASTHEAD (Top Bar)
   ================================================================ */

.pf-v5-c-masthead,
.pf-c-masthead {
    --pf-v5-c-masthead--BackgroundColor: #0A0A0F;
    --pf-c-masthead--BackgroundColor: #0A0A0F;
    background-color: #0A0A0F !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    position: relative;
}

/* Gradient accent line at top */
.pf-v5-c-masthead::before,
.pf-c-masthead::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #D42426, #E8911A, #F5A623);
    z-index: 100;
}

.pf-v5-c-masthead__main,
.pf-c-masthead__main {
    background-color: transparent !important;
}

.pf-v5-c-masthead__content,
.pf-c-masthead__content {
    color: #F0F0F5 !important;
}

/* Masthead brand/logo area */
.pf-v5-c-masthead__brand,
.pf-c-masthead__brand {
    color: #F0F0F5 !important;
}

/* Masthead toggle button */
.pf-v5-c-masthead__toggle,
.pf-c-masthead__toggle {
    color: #9999AA !important;
}

.pf-v5-c-masthead__toggle .pf-v5-c-button,
.pf-c-masthead__toggle .pf-c-button {
    color: #9999AA !important;
}

.pf-v5-c-masthead__toggle .pf-v5-c-button:hover,
.pf-c-masthead__toggle .pf-c-button:hover {
    color: #F0F0F5 !important;
}


/* ================================================================
   SIDEBAR & NAVIGATION
   ================================================================ */

.pf-v5-c-page__sidebar,
.pf-c-page__sidebar {
    --pf-v5-c-page__sidebar--BackgroundColor: #0A0A0F;
    --pf-c-page__sidebar--BackgroundColor: #0A0A0F;
    background-color: #0A0A0F !important;
    border-right: 1px solid rgba(255, 255, 255, 0.06) !important;
}

.pf-v5-c-page__sidebar-body,
.pf-c-page__sidebar-body {
    background-color: #0A0A0F !important;
}

/* Navigation container */
.pf-v5-c-nav,
.pf-c-nav {
    --pf-v5-c-nav--BackgroundColor: transparent;
    --pf-c-nav--BackgroundColor: transparent;
    background-color: transparent !important;
}

/* Nav links */
.pf-v5-c-nav__link,
.pf-c-nav__link {
    color: #9999AA !important;
    transition: all 0.2s ease !important;
}

.pf-v5-c-nav__link:hover,
.pf-c-nav__link:hover {
    color: #F0F0F5 !important;
    background-color: rgba(255, 255, 255, 0.04) !important;
}

.pf-v5-c-nav__link:focus,
.pf-c-nav__link:focus {
    color: #F0F0F5 !important;
}

/* Current / Active nav link */
.pf-v5-c-nav__link.pf-m-current,
.pf-c-nav__link.pf-m-current,
.pf-v5-c-nav__item.pf-m-current > .pf-v5-c-nav__link,
.pf-c-nav__item.pf-m-current > .pf-c-nav__link {
    color: #E8911A !important;
    background-color: rgba(232, 145, 26, 0.08) !important;
}

/* Nav active indicator bar */
.pf-v5-c-nav__link.pf-m-current::after,
.pf-c-nav__link.pf-m-current::after {
    background-color: #E8911A !important;
}

/* Nav section titles */
.pf-v5-c-nav__section-title,
.pf-c-nav__section-title {
    color: #666677 !important;
    text-transform: uppercase;
    font-size: 0.7rem !important;
    letter-spacing: 0.8px !important;
    font-weight: 600 !important;
}

/* Nav section dividers */
.pf-v5-c-nav__section + .pf-v5-c-nav__section,
.pf-c-nav__section + .pf-c-nav__section {
    border-top-color: rgba(255, 255, 255, 0.06) !important;
}

/* Nav subnav / expandable */
.pf-v5-c-nav__subnav,
.pf-c-nav__subnav {
    background-color: rgba(255, 255, 255, 0.02) !important;
}

/* Realm selector dropdown in sidebar */
.pf-v5-c-page__sidebar .pf-v5-c-context-selector,
.pf-c-page__sidebar .pf-c-context-selector {
    border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
}


/* ================================================================
   CARDS
   ================================================================ */

.pf-v5-c-card,
.pf-c-card {
    --pf-v5-c-card--BackgroundColor: rgba(255, 255, 255, 0.03);
    --pf-c-card--BackgroundColor: rgba(255, 255, 255, 0.03);
    background-color: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25) !important;
    color: #F0F0F5 !important;
}

.pf-v5-c-card__header,
.pf-c-card__header,
.pf-v5-c-card__title,
.pf-c-card__title {
    color: #F0F0F5 !important;
}

.pf-v5-c-card__body,
.pf-c-card__body {
    color: #c8c8d4 !important;
}

.pf-v5-c-card__footer,
.pf-c-card__footer {
    border-top-color: rgba(255, 255, 255, 0.06) !important;
    color: #9999AA !important;
}


/* ================================================================
   TABLES
   ================================================================ */

.pf-v5-c-table,
.pf-c-table {
    --pf-v5-c-table--BackgroundColor: transparent;
    --pf-c-table--BackgroundColor: transparent;
    --pf-v5-c-table--BorderColor: rgba(255, 255, 255, 0.06);
    --pf-c-table--BorderColor: rgba(255, 255, 255, 0.06);
    color: #c8c8d4 !important;
}

.pf-v5-c-table thead th,
.pf-c-table thead th,
.pf-v5-c-table__th,
.pf-c-table__th {
    color: #666677 !important;
    font-weight: 600 !important;
    border-bottom-color: rgba(255, 255, 255, 0.08) !important;
}

.pf-v5-c-table tbody tr,
.pf-c-table tbody tr {
    border-bottom-color: rgba(255, 255, 255, 0.04) !important;
}

.pf-v5-c-table tbody tr:hover,
.pf-c-table tbody tr:hover {
    background-color: rgba(255, 255, 255, 0.02) !important;
}

.pf-v5-c-table td,
.pf-c-table td,
.pf-v5-c-table__td,
.pf-c-table__td {
    color: #c8c8d4 !important;
}

/* Striped rows */
.pf-v5-c-table.pf-m-striped tbody tr:nth-child(odd),
.pf-c-table.pf-m-striped tbody tr:nth-child(odd) {
    background-color: rgba(255, 255, 255, 0.015) !important;
}

/* Table action buttons */
.pf-v5-c-table__action .pf-v5-c-button,
.pf-c-table__action .pf-c-button {
    color: #9999AA !important;
}


/* ================================================================
   FORM CONTROLS & INPUTS
   ================================================================ */

.pf-v5-c-form-control,
.pf-c-form-control {
    --pf-v5-c-form-control--BackgroundColor: rgba(255, 255, 255, 0.05);
    --pf-c-form-control--BackgroundColor: rgba(255, 255, 255, 0.05);
    --pf-v5-c-form-control--Color: #F0F0F5;
    --pf-c-form-control--Color: #F0F0F5;
    background-color: rgba(255, 255, 255, 0.05) !important;
    color: #F0F0F5 !important;
    border-color: rgba(255, 255, 255, 0.12) !important;
    transition: all 0.2s ease !important;
}

.pf-v5-c-form-control:focus-within,
.pf-c-form-control:focus-within {
    border-color: rgba(232, 145, 26, 0.5) !important;
    box-shadow: 0 0 0 2px rgba(232, 145, 26, 0.12) !important;
    background-color: rgba(255, 255, 255, 0.07) !important;
}

.pf-v5-c-form-control input,
.pf-c-form-control input,
.pf-v5-c-form-control textarea,
.pf-c-form-control textarea,
.pf-v5-c-form-control select,
.pf-c-form-control select {
    color: #F0F0F5 !important;
    background-color: transparent !important;
}

.pf-v5-c-form-control input::placeholder,
.pf-c-form-control input::placeholder,
.pf-v5-c-form-control textarea::placeholder,
.pf-c-form-control textarea::placeholder {
    color: #666677 !important;
}

/* Form labels */
.pf-v5-c-form__label,
.pf-c-form__label {
    color: #c8c8d4 !important;
}

.pf-v5-c-form__label-text,
.pf-c-form__label-text {
    color: #c8c8d4 !important;
}

/* Required field indicator */
.pf-v5-c-form__label-required,
.pf-c-form__label-required {
    color: #D42426 !important;
}

/* Helper text */
.pf-v5-c-form__helper-text,
.pf-c-form__helper-text,
.pf-v5-c-helper-text,
.pf-c-helper-text {
    color: #666677 !important;
}

/* Form group descriptions */
.pf-v5-c-form__group-label-help,
.pf-c-form__group-label-help {
    color: #666677 !important;
}

/* Input groups (e.g., search with icon) */
.pf-v5-c-input-group,
.pf-c-input-group {
    background-color: transparent !important;
}


/* ================================================================
   BUTTONS
   ================================================================ */

/* Primary button - gradient */
.pf-v5-c-button.pf-m-primary,
.pf-c-button.pf-m-primary {
    --pf-v5-c-button--m-primary--BackgroundColor: #E8911A;
    --pf-c-button--m-primary--BackgroundColor: #E8911A;
    background: linear-gradient(135deg, #D42426 0%, #E8911A 100%) !important;
    border: none !important;
    color: #fff !important;
    box-shadow: 0 2px 12px rgba(212, 36, 38, 0.2) !important;
    transition: all 0.25s ease !important;
}

.pf-v5-c-button.pf-m-primary:hover,
.pf-c-button.pf-m-primary:hover {
    background: linear-gradient(135deg, #e02d2f 0%, #f09e2e 100%) !important;
    box-shadow: 0 4px 20px rgba(212, 36, 38, 0.35) !important;
    transform: translateY(-1px);
}

.pf-v5-c-button.pf-m-primary:active,
.pf-c-button.pf-m-primary:active {
    transform: translateY(0);
}

.pf-v5-c-button.pf-m-primary:focus,
.pf-c-button.pf-m-primary:focus {
    box-shadow: 0 0 0 3px rgba(232, 145, 26, 0.25) !important;
}

/* Secondary button */
.pf-v5-c-button.pf-m-secondary,
.pf-c-button.pf-m-secondary {
    --pf-v5-c-button--m-secondary--Color: #E8911A;
    --pf-c-button--m-secondary--Color: #E8911A;
    color: #E8911A !important;
    border-color: rgba(232, 145, 26, 0.4) !important;
    background-color: transparent !important;
    transition: all 0.25s ease !important;
}

.pf-v5-c-button.pf-m-secondary:hover,
.pf-c-button.pf-m-secondary:hover {
    background-color: rgba(232, 145, 26, 0.08) !important;
    border-color: rgba(232, 145, 26, 0.6) !important;
}

/* Tertiary button */
.pf-v5-c-button.pf-m-tertiary,
.pf-c-button.pf-m-tertiary {
    color: #9999AA !important;
    border-color: rgba(255, 255, 255, 0.12) !important;
    transition: all 0.25s ease !important;
}

.pf-v5-c-button.pf-m-tertiary:hover,
.pf-c-button.pf-m-tertiary:hover {
    color: #F0F0F5 !important;
    background-color: rgba(255, 255, 255, 0.06) !important;
}

/* Danger button */
.pf-v5-c-button.pf-m-danger,
.pf-c-button.pf-m-danger {
    --pf-v5-c-button--m-danger--BackgroundColor: #D42426;
    --pf-c-button--m-danger--BackgroundColor: #D42426;
    background-color: #D42426 !important;
    color: #fff !important;
    transition: all 0.25s ease !important;
}

.pf-v5-c-button.pf-m-danger:hover,
.pf-c-button.pf-m-danger:hover {
    background-color: #e02d2f !important;
    box-shadow: 0 4px 20px rgba(212, 36, 38, 0.3) !important;
}

/* Link button */
.pf-v5-c-button.pf-m-link,
.pf-c-button.pf-m-link {
    --pf-v5-c-button--m-link--Color: #E8911A;
    --pf-c-button--m-link--Color: #E8911A;
    color: #E8911A !important;
}

.pf-v5-c-button.pf-m-link:hover,
.pf-c-button.pf-m-link:hover {
    color: #F5A623 !important;
}

/* Plain button (icon buttons, kebab, etc.) */
.pf-v5-c-button.pf-m-plain,
.pf-c-button.pf-m-plain {
    color: #9999AA !important;
}

.pf-v5-c-button.pf-m-plain:hover,
.pf-c-button.pf-m-plain:hover {
    color: #F0F0F5 !important;
    background-color: rgba(255, 255, 255, 0.04) !important;
}

/* Disabled button */
.pf-v5-c-button:disabled,
.pf-c-button:disabled,
.pf-v5-c-button.pf-m-disabled,
.pf-c-button.pf-m-disabled {
    opacity: 0.4 !important;
}


/* ================================================================
   ALERTS & NOTIFICATIONS
   ================================================================ */

.pf-v5-c-alert,
.pf-c-alert {
    border-radius: 8px !important;
}

.pf-v5-c-alert.pf-m-success,
.pf-c-alert.pf-m-success {
    background-color: rgba(46, 160, 67, 0.08) !important;
    border-color: rgba(46, 160, 67, 0.3) !important;
}

.pf-v5-c-alert.pf-m-danger,
.pf-c-alert.pf-m-danger {
    background-color: rgba(212, 36, 38, 0.08) !important;
    border-color: rgba(212, 36, 38, 0.3) !important;
}

.pf-v5-c-alert.pf-m-warning,
.pf-c-alert.pf-m-warning {
    background-color: rgba(232, 145, 26, 0.08) !important;
    border-color: rgba(232, 145, 26, 0.3) !important;
}

.pf-v5-c-alert.pf-m-info,
.pf-c-alert.pf-m-info {
    background-color: rgba(56, 132, 255, 0.08) !important;
    border-color: rgba(56, 132, 255, 0.3) !important;
}

.pf-v5-c-alert__title,
.pf-c-alert__title {
    color: #F0F0F5 !important;
}

.pf-v5-c-alert__description,
.pf-c-alert__description {
    color: #c8c8d4 !important;
}


/* ================================================================
   TABS
   ================================================================ */

.pf-v5-c-tabs,
.pf-c-tabs {
    border-bottom-color: rgba(255, 255, 255, 0.08) !important;
}

.pf-v5-c-tabs__link,
.pf-c-tabs__link {
    color: #9999AA !important;
    transition: all 0.2s ease !important;
}

.pf-v5-c-tabs__link:hover,
.pf-c-tabs__link:hover {
    color: #F0F0F5 !important;
}

.pf-v5-c-tabs__item.pf-m-current .pf-v5-c-tabs__link,
.pf-c-tabs__item.pf-m-current .pf-c-tabs__link {
    color: #E8911A !important;
}

.pf-v5-c-tabs__item.pf-m-current .pf-v5-c-tabs__link::after,
.pf-c-tabs__item.pf-m-current .pf-c-tabs__link::after {
    border-bottom-color: #E8911A !important;
}


/* ================================================================
   DROPDOWNS, SELECTS & MENUS
   ================================================================ */

.pf-v5-c-menu,
.pf-c-menu,
.pf-v5-c-dropdown__menu,
.pf-c-dropdown__menu,
.pf-v5-c-select__menu,
.pf-c-select__menu {
    background-color: #16161e !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5) !important;
    color: #F0F0F5 !important;
}

.pf-v5-c-menu__item,
.pf-c-menu__item,
.pf-v5-c-dropdown__menu-item,
.pf-c-dropdown__menu-item,
.pf-v5-c-select__menu-item,
.pf-c-select__menu-item {
    color: #c8c8d4 !important;
    transition: background-color 0.15s ease !important;
}

.pf-v5-c-menu__item:hover,
.pf-c-menu__item:hover,
.pf-v5-c-dropdown__menu-item:hover,
.pf-c-dropdown__menu-item:hover,
.pf-v5-c-select__menu-item:hover,
.pf-c-select__menu-item:hover {
    background-color: rgba(232, 145, 26, 0.08) !important;
    color: #F0F0F5 !important;
}

.pf-v5-c-menu__item.pf-m-selected,
.pf-c-menu__item.pf-m-selected {
    color: #E8911A !important;
}

.pf-v5-c-menu__item-description,
.pf-c-menu__item-description {
    color: #666677 !important;
}

/* Menu / dropdown dividers */
.pf-v5-c-menu__list-item + .pf-v5-c-menu__list-item,
.pf-c-divider {
    border-color: rgba(255, 255, 255, 0.06) !important;
}

/* Context selector (realm switcher) */
.pf-v5-c-menu-toggle,
.pf-c-menu-toggle,
.pf-v5-c-context-selector__toggle,
.pf-c-context-selector__toggle {
    color: #F0F0F5 !important;
    border-color: rgba(255, 255, 255, 0.12) !important;
    background-color: rgba(255, 255, 255, 0.04) !important;
}

.pf-v5-c-menu-toggle:hover,
.pf-c-menu-toggle:hover {
    background-color: rgba(255, 255, 255, 0.08) !important;
}

/* Select / dropdown toggle */
.pf-v5-c-select__toggle,
.pf-c-select__toggle {
    background-color: rgba(255, 255, 255, 0.05) !important;
    border-color: rgba(255, 255, 255, 0.12) !important;
    color: #F0F0F5 !important;
}


/* ================================================================
   MODALS & OVERLAYS
   ================================================================ */

.pf-v5-c-modal-box,
.pf-c-modal-box {
    --pf-v5-c-modal-box--BackgroundColor: #16161e;
    --pf-c-modal-box--BackgroundColor: #16161e;
    background-color: #16161e !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    box-shadow: 0 16px 64px rgba(0, 0, 0, 0.6) !important;
    color: #F0F0F5 !important;
}

.pf-v5-c-modal-box__header,
.pf-c-modal-box__header {
    border-bottom-color: rgba(255, 255, 255, 0.08) !important;
}

.pf-v5-c-modal-box__title,
.pf-c-modal-box__title {
    color: #F0F0F5 !important;
}

.pf-v5-c-modal-box__body,
.pf-c-modal-box__body {
    color: #c8c8d4 !important;
}

.pf-v5-c-modal-box__footer,
.pf-c-modal-box__footer {
    border-top-color: rgba(255, 255, 255, 0.08) !important;
}

/* Backdrop */
.pf-v5-c-backdrop,
.pf-c-backdrop {
    background-color: rgba(0, 0, 0, 0.7) !important;
    backdrop-filter: blur(4px);
}


/* ================================================================
   BADGES, LABELS & CHIPS
   ================================================================ */

.pf-v5-c-badge,
.pf-c-badge {
    color: #F0F0F5 !important;
}

.pf-v5-c-badge.pf-m-read,
.pf-c-badge.pf-m-read {
    background-color: rgba(255, 255, 255, 0.1) !important;
    color: #9999AA !important;
}

.pf-v5-c-badge.pf-m-unread,
.pf-c-badge.pf-m-unread {
    background-color: #E8911A !important;
    color: #fff !important;
}

.pf-v5-c-label,
.pf-c-label {
    border-color: rgba(255, 255, 255, 0.1) !important;
    background-color: rgba(255, 255, 255, 0.06) !important;
    color: #c8c8d4 !important;
}

.pf-v5-c-chip,
.pf-c-chip {
    background-color: rgba(255, 255, 255, 0.06) !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
    color: #c8c8d4 !important;
}

.pf-v5-c-chip__text,
.pf-c-chip__text {
    color: #c8c8d4 !important;
}


/* ================================================================
   BREADCRUMBS
   ================================================================ */

.pf-v5-c-breadcrumb__link,
.pf-c-breadcrumb__link {
    color: #E8911A !important;
}

.pf-v5-c-breadcrumb__link:hover,
.pf-c-breadcrumb__link:hover {
    color: #F5A623 !important;
}

.pf-v5-c-breadcrumb__item-divider,
.pf-c-breadcrumb__item-divider {
    color: #444455 !important;
}

.pf-v5-c-breadcrumb__item:last-child .pf-v5-c-breadcrumb__link,
.pf-c-breadcrumb__item:last-child .pf-c-breadcrumb__link {
    color: #9999AA !important;
}


/* ================================================================
   TITLE & TYPOGRAPHY
   ================================================================ */

.pf-v5-c-title,
.pf-c-title,
h1, h2, h3, h4, h5, h6 {
    color: #F0F0F5 !important;
}

.pf-v5-c-content,
.pf-c-content {
    color: #c8c8d4 !important;
}

.pf-v5-c-content a,
.pf-c-content a {
    color: #E8911A !important;
}

.pf-v5-c-content a:hover,
.pf-c-content a:hover {
    color: #F5A623 !important;
}

/* Description list */
.pf-v5-c-description-list__term,
.pf-c-description-list__term {
    color: #9999AA !important;
}

.pf-v5-c-description-list__text,
.pf-c-description-list__text {
    color: #F0F0F5 !important;
}


/* ================================================================
   SWITCHES, TOGGLES & CHECKBOXES
   ================================================================ */

.pf-v5-c-switch__input:checked ~ .pf-v5-c-switch__toggle,
.pf-c-switch__input:checked ~ .pf-c-switch__toggle {
    background-color: #E8911A !important;
}

.pf-v5-c-switch__toggle,
.pf-c-switch__toggle {
    background-color: rgba(255, 255, 255, 0.15) !important;
}

.pf-v5-c-check__input:checked,
.pf-c-check__input:checked {
    accent-color: #E8911A;
}

.pf-v5-c-radio__input:checked,
.pf-c-radio__input:checked {
    accent-color: #E8911A;
}

.pf-v5-c-check__label,
.pf-c-check__label,
.pf-v5-c-radio__label,
.pf-c-radio__label {
    color: #c8c8d4 !important;
}


/* ================================================================
   TOOLBAR & ACTION BARS
   ================================================================ */

.pf-v5-c-toolbar,
.pf-c-toolbar {
    background-color: transparent !important;
    color: #c8c8d4 !important;
}

.pf-v5-c-toolbar__content,
.pf-c-toolbar__content {
    background-color: transparent !important;
}

.pf-v5-c-toolbar__group,
.pf-c-toolbar__group {
    border-color: rgba(255, 255, 255, 0.06) !important;
}


/* ================================================================
   PAGINATION
   ================================================================ */

.pf-v5-c-pagination,
.pf-c-pagination {
    color: #9999AA !important;
}

.pf-v5-c-options-menu__toggle,
.pf-c-options-menu__toggle {
    color: #c8c8d4 !important;
}


/* ================================================================
   EMPTY STATE
   ================================================================ */

.pf-v5-c-empty-state,
.pf-c-empty-state {
    color: #c8c8d4 !important;
}

.pf-v5-c-empty-state__icon,
.pf-c-empty-state__icon {
    color: #666677 !important;
}


/* ================================================================
   EXPANDABLE / ACCORDION
   ================================================================ */

.pf-v5-c-expandable-section__toggle,
.pf-c-expandable-section__toggle {
    color: #E8911A !important;
}

.pf-v5-c-accordion__toggle,
.pf-c-accordion__toggle {
    color: #c8c8d4 !important;
    border-bottom-color: rgba(255, 255, 255, 0.06) !important;
}

.pf-v5-c-accordion__toggle:hover,
.pf-c-accordion__toggle:hover {
    background-color: rgba(255, 255, 255, 0.02) !important;
    color: #F0F0F5 !important;
}

.pf-v5-c-accordion__expanded-content-body,
.pf-c-accordion__expanded-content-body {
    color: #c8c8d4 !important;
}


/* ================================================================
   POPOVER & TOOLTIP
   ================================================================ */

.pf-v5-c-popover,
.pf-c-popover {
    --pf-v5-c-popover--BackgroundColor: #1a1a24;
    --pf-c-popover--BackgroundColor: #1a1a24;
}

.pf-v5-c-popover__body,
.pf-c-popover__body {
    color: #c8c8d4 !important;
}

.pf-v5-c-tooltip,
.pf-c-tooltip {
    --pf-v5-c-tooltip__content--BackgroundColor: #1e1e28;
    --pf-c-tooltip__content--BackgroundColor: #1e1e28;
}

.pf-v5-c-tooltip__content,
.pf-c-tooltip__content {
    background-color: #1e1e28 !important;
    color: #F0F0F5 !important;
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
}


/* ================================================================
   CLIPBOARD COPY & CODE BLOCKS
   ================================================================ */

.pf-v5-c-clipboard-copy,
.pf-c-clipboard-copy {
    border-color: rgba(255, 255, 255, 0.1) !important;
}

.pf-v5-c-clipboard-copy__text,
.pf-c-clipboard-copy__text {
    background-color: rgba(255, 255, 255, 0.04) !important;
    color: #E8911A !important;
}

.pf-v5-c-code-block,
.pf-c-code-block {
    background-color: rgba(255, 255, 255, 0.04) !important;
    border-color: rgba(255, 255, 255, 0.08) !important;
    color: #c8c8d4 !important;
}

code, pre {
    color: #E8911A !important;
    background-color: rgba(232, 145, 26, 0.06) !important;
}


/* ================================================================
   DATA LIST
   ================================================================ */

.pf-v5-c-data-list,
.pf-c-data-list {
    border-color: rgba(255, 255, 255, 0.06) !important;
}

.pf-v5-c-data-list__item,
.pf-c-data-list__item {
    border-bottom-color: rgba(255, 255, 255, 0.06) !important;
    color: #c8c8d4 !important;
}

.pf-v5-c-data-list__item:hover,
.pf-c-data-list__item:hover {
    background-color: rgba(255, 255, 255, 0.02) !important;
}


/* ================================================================
   WIZARD / PROGRESS
   ================================================================ */

.pf-v5-c-wizard__nav-link.pf-m-current,
.pf-c-wizard__nav-link.pf-m-current {
    color: #E8911A !important;
}

.pf-v5-c-progress__bar,
.pf-c-progress__bar {
    background-color: #E8911A !important;
}

.pf-v5-c-progress__measure,
.pf-c-progress__measure {
    color: #c8c8d4 !important;
}


/* ================================================================
   PANEL & DRAWER
   ================================================================ */

.pf-v5-c-panel,
.pf-c-panel {
    background-color: #16161e !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4) !important;
}

.pf-v5-c-drawer__panel,
.pf-c-drawer__panel {
    background-color: #111118 !important;
    border-color: rgba(255, 255, 255, 0.08) !important;
}


/* ================================================================
   JUMP LINKS (sidebar ToC)
   ================================================================ */

.pf-v5-c-jump-links__link,
.pf-c-jump-links__link {
    color: #9999AA !important;
}

.pf-v5-c-jump-links__link.pf-m-current,
.pf-c-jump-links__link.pf-m-current,
.pf-v5-c-jump-links__item.pf-m-current .pf-v5-c-jump-links__link {
    color: #E8911A !important;
    border-left-color: #E8911A !important;
}


/* ================================================================
   TREE VIEW (e.g., Groups)
   ================================================================ */

.pf-v5-c-tree-view__node,
.pf-c-tree-view__node {
    color: #c8c8d4 !important;
}

.pf-v5-c-tree-view__node:hover,
.pf-c-tree-view__node:hover {
    background-color: rgba(255, 255, 255, 0.03) !important;
}

.pf-v5-c-tree-view__node.pf-m-current,
.pf-c-tree-view__node.pf-m-current {
    background-color: rgba(232, 145, 26, 0.08) !important;
    color: #E8911A !important;
}


/* ================================================================
   KEYCLOAK-SPECIFIC OVERRIDES
   ================================================================ */

/* Realm selector in masthead */
[class*="keycloak__realm-selector"],
[class*="pf-v5-c-page__header-tools"] {
    color: #F0F0F5 !important;
}

/* Event and session tables */
.keycloak__events_table,
.keycloak__sessions_table {
    color: #c8c8d4 !important;
}

/* User details */
.keycloak__user-section {
    color: #c8c8d4 !important;
}

/* JSON viewer */
pre[class*="keycloak"] {
    background-color: rgba(255, 255, 255, 0.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    color: #c8c8d4 !important;
    border-radius: 8px !important;
}


/* ================================================================
   SCROLLBARS
   ================================================================ */

::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

::-webkit-scrollbar-track {
    background: transparent;
}

::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: rgba(255, 255, 255, 0.18);
}

::selection {
    background: rgba(232, 145, 26, 0.3);
    color: #fff;
}


/* ================================================================
   LINKS (global)
   ================================================================ */

a {
    color: #E8911A;
}

a:hover {
    color: #F5A623;
}


/* ================================================================
   SKIP TO CONTENT
   ================================================================ */

.pf-v5-c-skip-to-content,
.pf-c-skip-to-content {
    background-color: #E8911A !important;
    color: #fff !important;
}
