/* =========================================================
   Harmonic Innovation Group – Admin Console (Light Theme)
   Design System: https://higroup.org
   ========================================================= */

/* Typography */
@font-face {
  font-family: "Suisse Intl";
  src: url("../fonts/SuisseIntl-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Suisse Intl";
  src: url("../fonts/SuisseIntl-Semibold.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Suisse Intl";
  src: url("../fonts/SuisseIntl-Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* Global PatternFly Tokens Overrides */
:root {
  --pf-v5-global--FontFamily--sans-serif: "Suisse Intl", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  --pf-v5-global--FontFamily--heading: "Suisse Intl", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;

  /* Primary Brand Tokens (HIGroup Black) */
  --pf-v5-global--primary-color--100: #000000 !important;
  --pf-v5-global--primary-color--200: #18181b !important;
  --pf-v5-global--link--Color: #000000 !important;
  --pf-v5-global--link--Color--hover: #3f3f46 !important;

  --pf-v5-global--BackgroundColor--100: #ffffff !important;
  --pf-v5-global--BackgroundColor--200: #f8f9fa !important;

  /* Masthead & Header Background Tokens (Light Theme Guard) */
  --pf-v5-c-masthead--BackgroundColor: #ffffff !important;
  --pf-v5-c-masthead--m-light--BackgroundColor: #ffffff !important;
  --pf-v5-c-masthead--m-light-200--BackgroundColor: #ffffff !important;
  --pf-v5-c-masthead--c-toolbar--BackgroundColor: #ffffff !important;
  --pf-v5-c-page__header--BackgroundColor: #ffffff !important;
  --pf-v5-c-toolbar--BackgroundColor: #ffffff !important;
  --pf-v5-global--BackgroundColor--dark-100: #ffffff !important;
  --pf-v5-global--BackgroundColor--dark-200: #ffffff !important;
  --pf-v5-global--BackgroundColor--dark-300: #ffffff !important;
  --pf-v5-global--BackgroundColor--dark-400: #ffffff !important;

  /* PatternFly 4 Fallback Tokens */
  --pf-c-masthead--BackgroundColor: #ffffff !important;
  --pf-c-masthead--c-toolbar--BackgroundColor: #ffffff !important;
  --pf-c-page__header--BackgroundColor: #ffffff !important;
  --pf-c-toolbar--BackgroundColor: #ffffff !important;
  --pf-global--BackgroundColor--dark-100: #ffffff !important;
  --pf-global--BackgroundColor--dark-200: #ffffff !important;

  /* Switches (HIGroup Pure Black when ON) */
  --pf-v5-c-switch--input--checked__toggle--BackgroundColor: #000000 !important;
  --pf-v5-c-switch--input--checked__toggle--before--BackgroundColor: #ffffff !important;

  --pf-v5-global--BorderRadius--sm: 4px !important;
  --pf-v5-global--BorderRadius--md: 6px !important;
  --pf-v5-global--BorderRadius--lg: 8px !important;
}

/* =========================================================
   Masthead / Header – Full Seamless White (Tema Chiaro)
   ========================================================= */
.pf-v5-c-page__header,
.pf-v5-c-page__header-brand,
.pf-v5-c-page__header-tools,
.pf-v5-c-masthead,
.pf-v5-c-masthead__main,
.pf-v5-c-masthead__content,
.pf-v5-c-masthead .pf-v5-c-toolbar,
.pf-v5-c-masthead .pf-v5-c-toolbar__content,
.pf-v5-c-masthead .pf-v5-c-toolbar__content-section,
.pf-v5-c-masthead .pf-v5-c-toolbar__group,
.pf-v5-c-masthead .pf-v5-c-toolbar__item,
.pf-c-page__header,
.pf-c-page__header-brand,
.pf-c-page__header-tools,
.pf-c-masthead,
.pf-c-masthead__main,
.pf-c-masthead__content,
.pf-c-masthead .pf-c-toolbar,
.pf-c-masthead .pf-c-toolbar__content {
  background-color: #ffffff !important;
  background: #ffffff !important;
  color: #18181b !important;
}

.pf-v5-c-masthead,
.pf-v5-c-page__header,
.pf-c-masthead,
.pf-c-page__header {
  border-bottom: 1px solid #e4e4e7 !important;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.03) !important;
}

/* Logo HIGroup Nero su Sfondo Bianco Trasparente */
.pf-v5-c-masthead__brand,
.pf-v5-c-brand,
.pf-c-masthead__brand,
.pf-c-brand {
  background: transparent !important;
  background-color: transparent !important;
}

.pf-v5-c-masthead__brand img,
.pf-v5-c-brand img,
img.pf-v5-c-brand,
.pf-c-masthead__brand img,
.pf-c-brand img,
img.pf-c-brand {
  content: url("../img/logo.svg") !important;
  height: 32px !important;
  max-height: 36px !important;
  width: auto !important;
  object-fit: contain !important;
}

/* Header Controls, Icon Buttons & Toggles */
.pf-v5-c-masthead .pf-v5-c-button,
.pf-v5-c-masthead .pf-v5-c-button.pf-m-plain,
.pf-v5-c-masthead .pf-v5-c-button.pf-m-control,
.pf-v5-c-masthead .pf-v5-c-menu-toggle,
.pf-v5-c-masthead .pf-v5-c-menu-toggle__text,
.pf-v5-c-masthead .pf-v5-c-menu-toggle__icon,
.pf-v5-c-masthead .pf-v5-c-menu-toggle__controls,
.pf-v5-c-masthead .pf-v5-c-toolbar__item,
.pf-v5-c-masthead svg:not(.pf-v5-c-avatar):not(.pf-v5-c-avatar *),
.pf-v5-c-masthead i,
.pf-v5-c-page__header .pf-v5-c-button,
.pf-v5-c-page__header .pf-v5-c-button.pf-m-plain,
.pf-v5-c-page__header .pf-v5-c-menu-toggle,
.pf-v5-c-page__header svg:not(.pf-v5-c-avatar):not(.pf-v5-c-avatar *),
.pf-c-masthead .pf-c-button,
.pf-c-masthead .pf-c-button.pf-m-plain,
.pf-c-masthead .pf-c-dropdown__toggle,
.pf-c-masthead svg:not(.pf-c-avatar):not(.pf-c-avatar *),
.pf-c-page__header .pf-c-button,
.pf-c-page__header svg:not(.pf-c-avatar):not(.pf-c-avatar *) {
  color: #18181b !important;
  fill: #18181b !important;
  --pf-v5-c-button--m-plain--Color: #18181b !important;
  --pf-v5-c-menu-toggle--Color: #18181b !important;
  --pf-v5-c-menu-toggle--icon--Color: #18181b !important;
}

/* User Avatar (Header Top Right) – Crisply Visible */
.pf-v5-c-avatar,
.pf-c-avatar,
img.pf-v5-c-avatar,
svg.pf-v5-c-avatar {
  border-radius: 50% !important;
  border: 1px solid #d4d4d8 !important;
  background-color: #f4f4f5 !important;
  width: 32px !important;
  height: 32px !important;
  object-fit: cover !important;
  display: inline-block !important;
  vertical-align: middle !important;
}

.pf-v5-c-avatar svg,
svg.pf-v5-c-avatar {
  fill: initial !important;
}

.pf-v5-c-avatar svg path,
.pf-v5-c-avatar path,
svg.pf-v5-c-avatar path {
  fill: #71717a !important; /* Neutral slate silhouette */
}

.pf-v5-c-avatar svg circle,
.pf-v5-c-avatar circle,
svg.pf-v5-c-avatar circle {
  fill: #f4f4f5 !important; /* Light neutral circle base */
}

.pf-v5-c-masthead .pf-v5-c-menu-toggle {
  background-color: transparent !important;
  border-color: #e4e4e7 !important;
  color: #18181b !important;
  border-radius: 4px !important;
}

.pf-v5-c-masthead .pf-v5-c-menu-toggle.pf-m-plain {
  border-color: transparent !important;
}

/* Hover and focus states in masthead */
.pf-v5-c-masthead .pf-v5-c-button:hover,
.pf-v5-c-masthead .pf-v5-c-button.pf-m-plain:hover,
.pf-v5-c-masthead .pf-v5-c-button.pf-m-control:hover,
.pf-v5-c-masthead .pf-v5-c-menu-toggle:hover,
.pf-v5-c-masthead .pf-v5-c-menu-toggle.pf-m-expanded,
.pf-v5-c-page__header .pf-v5-c-button:hover,
.pf-v5-c-page__header .pf-v5-c-menu-toggle:hover,
.pf-c-masthead .pf-c-button:hover,
.pf-c-page__header .pf-c-button:hover {
  background-color: #f4f4f5 !important;
  color: #000000 !important;
}

.pf-v5-c-masthead .pf-v5-c-button:hover svg,
.pf-v5-c-masthead .pf-v5-c-menu-toggle:hover svg {
  fill: #000000 !important;
}

/* Dropdown menus opened from header */
.pf-v5-c-menu,
.pf-v5-c-dropdown__menu,
.pf-c-dropdown__menu {
  background-color: #ffffff !important;
  border: 1px solid #e4e4e7 !important;
  border-radius: 6px !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08) !important;
  color: #18181b !important;
}

.pf-v5-c-menu__item,
.pf-v5-c-menu__item-text,
.pf-v5-c-dropdown__menu-item,
.pf-c-dropdown__menu-item {
  color: #18181b !important;
}

.pf-v5-c-menu__item:hover,
.pf-v5-c-menu__list-item:hover,
.pf-v5-c-dropdown__menu-item:hover,
.pf-c-dropdown__menu-item:hover {
  background-color: #f4f4f5 !important;
  color: #000000 !important;
}

/* Sidebar Navigation (Tema Chiaro) */
.pf-v5-c-page__sidebar {
  background-color: #ffffff !important;
  border-right: 1px solid #e4e4e7 !important;
}

.pf-v5-c-nav {
  background-color: #ffffff !important;
}

.pf-v5-c-nav__link {
  font-family: var(--pf-v5-global--FontFamily--sans-serif) !important;
  color: #52525b !important;
  border-radius: 4px !important;
  transition: all 150ms ease !important;
}

.pf-v5-c-nav__link:hover {
  color: #000000 !important;
  background-color: #f4f4f5 !important;
}

.pf-v5-c-nav__link.pf-m-current,
.pf-v5-c-nav__item.pf-m-current > .pf-v5-c-nav__link {
  color: #000000 !important;
  background-color: #f4f4f5 !important;
  font-weight: 600 !important;
  border-left: 3px solid #000000 !important;
}

.pf-v5-c-nav__section-title {
  color: #a1a1aa !important;
  font-size: 0.75rem !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

/* Page Body Background */
.pf-v5-c-page__main-section {
  background-color: #f8f9fa !important;
}

/* Buttons */
.pf-v5-c-button.pf-m-primary {
  background-color: #000000 !important;
  border-color: #000000 !important;
  color: #ffffff !important;
  border-radius: 4px !important;
  font-weight: 500 !important;
  transition: all 150ms ease !important;
}

.pf-v5-c-button.pf-m-primary:hover {
  background-color: #27272a !important;
  border-color: #27272a !important;
}

.pf-v5-c-button.pf-m-secondary {
  background-color: #ffffff !important;
  border: 1px solid #e4e4e7 !important;
  color: #000000 !important;
  border-radius: 4px !important;
  font-weight: 500 !important;
}

.pf-v5-c-button.pf-m-secondary:hover {
  background-color: #f4f4f5 !important;
  border-color: #a1a1aa !important;
}

/* Tabs & Sub-navigation */
.pf-v5-c-tabs__item.pf-m-current .pf-v5-c-tabs__link {
  border-bottom-color: #000000 !important;
  color: #000000 !important;
  font-weight: 600 !important;
}

.pf-v5-c-tab-content {
  padding-top: 1.5rem !important;
}

.pf-v5-c-page__main-tabs {
  background-color: #ffffff !important;
  border-bottom: 1px solid #e4e4e7 !important;
}

/* Cards, Content Boxes & Containers (Generous Padding & Refined Borders) */
.pf-v5-c-card,
.pf-c-card {
  background-color: #ffffff !important;
  border: 1px solid #e4e4e7 !important;
  border-radius: 8px !important;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.03) !important;
  padding: 2rem !important; /* 32px internal padding across all sides */
  --pf-v5-c-card--child--PaddingTop: 2rem !important;
  --pf-v5-c-card--child--PaddingRight: 2rem !important;
  --pf-v5-c-card--child--PaddingBottom: 2rem !important;
  --pf-v5-c-card--child--PaddingLeft: 2rem !important;
}

/* Prevent double-padding if card uses standard card__body */
.pf-v5-c-card > .pf-v5-c-card__body,
.pf-v5-c-card > .pf-v5-c-card__header,
.pf-v5-c-card > .pf-v5-c-card__footer,
.pf-v5-c-card > .pf-v5-c-form,
.pf-v5-c-card > form {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Card Section Titles & Headings */
.pf-v5-c-card .pf-v5-c-title,
.pf-v5-c-card .pf-v5-c-form__section-title,
.pf-v5-c-card h2,
.pf-v5-c-card h3 {
  font-family: var(--pf-v5-global--FontFamily--sans-serif) !important;
  font-size: 1.125rem !important;
  font-weight: 600 !important;
  color: #000000 !important;
  margin-top: 0 !important;
  margin-bottom: 1.25rem !important;
}

/* Form Spacing inside Cards */
.pf-v5-c-card .pf-v5-c-form__section {
  margin-top: 2rem !important;
}

.pf-v5-c-card .pf-v5-c-form__section:first-child {
  margin-top: 0 !important;
}

.pf-v5-c-card .pf-v5-c-form__group {
  margin-bottom: 1.25rem !important;
}

.pf-v5-c-card .pf-v5-c-divider,
.pf-v5-c-divider {
  border-top-color: #e4e4e7 !important;
  margin: 1.75rem 0 !important;
}

.pf-v5-c-table {
  background-color: #ffffff !important;
}

/* Form Controls */
.pf-v5-c-form-control {
  border-radius: 4px !important;
  border-color: #d4d4d8 !important;
}

.pf-v5-c-form-control:focus {
  border-color: #000000 !important;
  box-shadow: 0 0 0 1px #000000 !important;
}
