/* HydroVana: Keycloak Account Console (keycloak.v3, PatternFly 5) */
@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url("../fonts/inter-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Playfair Display";font-style:normal;font-weight:400 900;font-display:swap;src:url("../fonts/playfair-display-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root {
  --hv-navy: #0B2340;
  --hv-navy-deep: #081A30;
  --hv-navy-mid: #14345C;
  --hv-blue-accent: #4CC8F1;
  --hv-blue-primary: #0683C6;
  --hv-blue-primary-dark: #056BA3;
  --hv-teal: #0D9488;
  --hv-text-dark: #111827;
  --hv-text-muted: #6B7280;
  --hv-border: #E4E7EC;
  --hv-bg-page: #F5F7F9;
  --hv-bg-soft: #F8FAFB;
  --hv-danger: #D64545;
  --hv-radius-md: 14px;
  --hv-font-serif: "Playfair Display", Georgia, "Times New Roman", serif;
  --hv-font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;

  /* PatternFly 5 design tokens (Keycloak 26 account console) */
  --pf-v5-global--FontFamily--sans-serif: var(--hv-font-sans);
  --pf-v5-global--FontFamily--heading--sans-serif: var(--hv-font-sans);
  --pf-v5-global--FontFamily--text: var(--hv-font-sans);
  --pf-v5-global--primary-color--100: #0683C6;
  --pf-v5-global--primary-color--200: #056BA3;
  --pf-v5-global--primary-color--light-100: #4CC8F1;
  --pf-v5-global--link--Color: #0683C6;
  --pf-v5-global--link--Color--hover: #056BA3;
  --pf-v5-global--active-color--100: #0683C6;
  --pf-v5-global--active-color--300: #056BA3;
  --pf-v5-global--active-color--400: #4CC8F1;
  --pf-v5-global--success-color--100: #0D9488;
  --pf-v5-global--danger-color--100: #D64545;
  --pf-v5-global--BackgroundColor--dark-100: #081A30;
  --pf-v5-global--BackgroundColor--dark-200: #0B2340;
  --pf-v5-global--BackgroundColor--dark-300: #14345C;
  --pf-v5-global--BackgroundColor--dark-400: #1C4272;
  --pf-v5-global--BackgroundColor--200: #F5F7F9;
  --pf-v5-global--BorderColor--100: #E4E7EC;
  --pf-v5-global--BorderRadius--sm: 10px;
  --pf-v5-global--Color--100: #111827;
  --pf-v5-global--Color--200: #6B7280;
}

html, body, #app { font-family: var(--hv-font-sans); }

/* ---- Masthead + brand ---- */
.pf-v5-c-masthead {
  --pf-v5-c-masthead--BackgroundColor: #081A30;
  background:
    radial-gradient(circle at 85% 0%, rgba(76,200,241,0.14) 0%, transparent 45%),
    #081A30;
}
a.pf-v5-c-masthead__brand, .pf-v5-c-masthead__brand {
  display: inline-flex; align-items: center; gap: 0;
  text-decoration: none;
  font-family: var(--hv-font-serif); font-weight: 800; font-size: 22px; letter-spacing: .2px;
}
.pf-v5-c-masthead__brand .pf-v5-c-brand, .pf-v5-c-masthead__brand img {
  order: -1; height: 36px; width: auto; margin-right: 10px;
  content: url("data:image/svg+xml,%3Csvg%20width='120'%20height='166'%20viewBox='0%200%20120%20166'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20opacity='0.18'%20d='M60%200C100%2038.7333%20120%2071.9333%20120%2099.6C120%20132.8%20100%20154.933%2060%20166C20%20154.933%200%20132.8%200%2099.6C0%2071.9333%2020%2038.7333%2060%200Z'%20fill='%234CC8F1'/%3E%3Cpath%20opacity='0.35'%20d='M60%206.64C96.6667%2043.16%20115%2074.1467%20115%2099.6C115%20129.48%2096.6667%20149.677%2060%20160.19C23.3333%20149.677%205%20129.48%205%2099.6C5%2074.1467%2023.3333%2043.16%2060%206.64Z'%20fill='%234CC8F1'/%3E%3Cpath%20d='M60%2013.28C93.3333%2047.5867%20110%2076.36%20110%2099.6C110%20126.16%2093.3333%20144.42%2060%20154.38C26.6667%20144.42%2010%20126.16%2010%2099.6C10%2076.36%2026.6667%2047.5867%2060%2013.28Z'%20fill='%234CC8F1'/%3E%3Cpath%20opacity='0.4'%20d='M44%20112.88C50.6274%20112.88%2056%20104.705%2056%2094.62C56%2084.5353%2050.6274%2076.36%2044%2076.36C37.3726%2076.36%2032%2084.5353%2032%2094.62C32%20104.705%2037.3726%20112.88%2044%20112.88Z'%20fill='white'/%3E%3Cpath%20opacity='0.43'%20d='M38%2071.38C41.3137%2071.38%2044%2069.1504%2044%2066.4C44%2063.6496%2041.3137%2061.42%2038%2061.42C34.6863%2061.42%2032%2063.6496%2032%2066.4C32%2069.1504%2034.6863%2071.38%2038%2071.38Z'%20fill='white'/%3E%3C/svg%3E");     /* Chromium/Safari; Firefox uses the theme 'logo' property */
}
.pf-v5-c-masthead__brand::before { content: "Hydro"; color: #fff; }
.pf-v5-c-masthead__brand::after  { content: "Vana";  color: var(--hv-blue-accent); }

/* ---- Sidebar navigation ---- */
.pf-v5-c-page__sidebar {
  --pf-v5-c-page__sidebar--BackgroundColor: #0B2340;
  background-color: #0B2340;
}
.pf-v5-c-nav__link { font-weight: 500; }
.pf-v5-c-nav__link:hover { background-color: #14345C; }
.pf-v5-c-nav__link.pf-m-current { background-color: #14345C; }
.pf-v5-c-nav__link.pf-m-current::before,
.pf-v5-c-nav__link.pf-m-current::after { border-color: var(--hv-blue-accent) !important; }

/* ---- Page content ---- */
.pf-v5-c-page__main { background-color: var(--hv-bg-page); }
h1.pf-v5-c-title, .pf-v5-c-title.pf-m-3xl, .pf-v5-c-title.pf-m-4xl {
  font-family: var(--hv-font-serif); font-weight: 700; color: var(--hv-navy);
}
.pf-v5-c-title.pf-m-xl, .pf-v5-c-title.pf-m-lg, .pf-v5-c-title.pf-m-md { color: var(--hv-navy); font-weight: 600; }
.pf-v5-c-card { border-radius: 20px; border: 1px solid var(--hv-border); box-shadow: 0 6px 20px rgba(11,35,64,.06); }

/* ---- Form fields ---- */
.pf-v5-c-form__label-text { font-weight: 600; font-size: 13px; color: var(--hv-text-dark); }
.pf-v5-c-form__label-required { color: var(--hv-danger); margin-left: 3px; }
.pf-v5-c-form-control { border-radius: var(--hv-radius-md); background-color: #fff; min-height: 44px; font-size: 15px; }
.pf-v5-c-form-control::before { border-radius: var(--hv-radius-md); border: 1.5px solid var(--hv-border); }
.pf-v5-c-form-control::after { display: none; }
.pf-v5-c-form-control:focus-within::before,
.pf-v5-c-form-control:focus::before { border-color: var(--hv-blue-primary); }
.pf-v5-c-form-control:focus-within { box-shadow: 0 0 0 4px rgba(6,131,198,.12); }
.pf-v5-c-form-control input, .pf-v5-c-form-control textarea { padding-left: 16px; padding-right: 16px; }
.pf-v5-c-form-control.pf-m-disabled, .pf-v5-c-form-control.pf-m-readonly,
.pf-v5-c-form-control:has(input:disabled), .pf-v5-c-form-control:has(input[readonly]) {
  background-color: var(--hv-bg-soft); color: var(--hv-text-muted);
}
.pf-v5-c-form__helper-text .pf-v5-c-helper-text__item.pf-m-error { color: var(--hv-danger); }

/* ---- Buttons ---- */
.pf-v5-c-button { border-radius: var(--hv-radius-md); font-weight: 700; letter-spacing: .2px; }
.pf-v5-c-button::after { border-radius: var(--hv-radius-md) !important; }
.pf-v5-c-button.pf-m-primary {
  --pf-v5-c-button--m-primary--BackgroundColor: #0683C6;
  --pf-v5-c-button--m-primary--hover--BackgroundColor: #056BA3;
  background-color: var(--hv-blue-primary); color: #fff;
  padding: 10px 24px; min-height: 44px;
  box-shadow: 0 8px 18px rgba(6,131,198,.28);
}
.pf-v5-c-button.pf-m-primary:hover, .pf-v5-c-button.pf-m-primary:focus { background-color: var(--hv-blue-primary-dark); }
.pf-v5-c-button.pf-m-secondary { color: var(--hv-blue-primary); }
.pf-v5-c-button.pf-m-secondary::after { border-color: var(--hv-blue-primary) !important; border-width: 1.5px; }
.pf-v5-c-button.pf-m-link, .pf-v5-c-button.pf-m-link:hover { color: var(--hv-blue-primary); box-shadow: none; }
.pf-v5-c-button.pf-m-danger { background-color: var(--hv-danger); }
.pf-v5-c-button.pf-m-link.pf-m-danger { background: none; color: var(--hv-danger); }

/* ---- Misc ---- */
a { color: var(--hv-blue-primary); }
a:hover { color: var(--hv-blue-primary-dark); }
.pf-v5-c-alert { border-radius: var(--hv-radius-md); overflow: hidden; }
.pf-v5-c-jump-links__link { color: var(--hv-text-muted); }
.pf-v5-c-jump-links__item.pf-m-current .pf-v5-c-jump-links__link { color: var(--hv-blue-primary); }
.pf-v5-c-jump-links__item.pf-m-current .pf-v5-c-jump-links__link::before { border-color: var(--hv-blue-primary); }
.pf-v5-c-switch__input:checked ~ .pf-v5-c-switch__toggle { background-color: var(--hv-blue-primary); }
.pf-v5-c-spinner { --pf-v5-c-spinner--Color: var(--hv-blue-primary); }
.pf-v5-c-avatar { border: 2px solid var(--hv-blue-accent); }

/* ---- same rules for pf-v6- class prefix (harmless if unused) ---- */

/* ---- Masthead + brand ---- */
.pf-v6-c-masthead {
  --pf-v6-c-masthead--BackgroundColor: #081A30;
  background:
    radial-gradient(circle at 85% 0%, rgba(76,200,241,0.14) 0%, transparent 45%),
    #081A30;
}
a.pf-v6-c-masthead__brand, .pf-v6-c-masthead__brand {
  display: inline-flex; align-items: center; gap: 0;
  text-decoration: none;
  font-family: var(--hv-font-serif); font-weight: 800; font-size: 22px; letter-spacing: .2px;
}
.pf-v6-c-masthead__brand .pf-v6-c-brand, .pf-v6-c-masthead__brand img {
  order: -1; height: 36px; width: auto; margin-right: 10px;
  content: url("data:image/svg+xml,%3Csvg%20width='120'%20height='166'%20viewBox='0%200%20120%20166'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20opacity='0.18'%20d='M60%200C100%2038.7333%20120%2071.9333%20120%2099.6C120%20132.8%20100%20154.933%2060%20166C20%20154.933%200%20132.8%200%2099.6C0%2071.9333%2020%2038.7333%2060%200Z'%20fill='%234CC8F1'/%3E%3Cpath%20opacity='0.35'%20d='M60%206.64C96.6667%2043.16%20115%2074.1467%20115%2099.6C115%20129.48%2096.6667%20149.677%2060%20160.19C23.3333%20149.677%205%20129.48%205%2099.6C5%2074.1467%2023.3333%2043.16%2060%206.64Z'%20fill='%234CC8F1'/%3E%3Cpath%20d='M60%2013.28C93.3333%2047.5867%20110%2076.36%20110%2099.6C110%20126.16%2093.3333%20144.42%2060%20154.38C26.6667%20144.42%2010%20126.16%2010%2099.6C10%2076.36%2026.6667%2047.5867%2060%2013.28Z'%20fill='%234CC8F1'/%3E%3Cpath%20opacity='0.4'%20d='M44%20112.88C50.6274%20112.88%2056%20104.705%2056%2094.62C56%2084.5353%2050.6274%2076.36%2044%2076.36C37.3726%2076.36%2032%2084.5353%2032%2094.62C32%20104.705%2037.3726%20112.88%2044%20112.88Z'%20fill='white'/%3E%3Cpath%20opacity='0.43'%20d='M38%2071.38C41.3137%2071.38%2044%2069.1504%2044%2066.4C44%2063.6496%2041.3137%2061.42%2038%2061.42C34.6863%2061.42%2032%2063.6496%2032%2066.4C32%2069.1504%2034.6863%2071.38%2038%2071.38Z'%20fill='white'/%3E%3C/svg%3E");     /* Chromium/Safari; Firefox uses the theme 'logo' property */
}
.pf-v6-c-masthead__brand::before { content: "Hydro"; color: #fff; }
.pf-v6-c-masthead__brand::after  { content: "Vana";  color: var(--hv-blue-accent); }

/* ---- Sidebar navigation ---- */
.pf-v6-c-page__sidebar {
  --pf-v6-c-page__sidebar--BackgroundColor: #0B2340;
  background-color: #0B2340;
}
.pf-v6-c-nav__link { font-weight: 500; }
.pf-v6-c-nav__link:hover { background-color: #14345C; }
.pf-v6-c-nav__link.pf-m-current { background-color: #14345C; }
.pf-v6-c-nav__link.pf-m-current::before,
.pf-v6-c-nav__link.pf-m-current::after { border-color: var(--hv-blue-accent) !important; }

/* ---- Page content ---- */
.pf-v6-c-page__main { background-color: var(--hv-bg-page); }
h1.pf-v6-c-title, .pf-v6-c-title.pf-m-3xl, .pf-v6-c-title.pf-m-4xl {
  font-family: var(--hv-font-serif); font-weight: 700; color: var(--hv-navy);
}
.pf-v6-c-title.pf-m-xl, .pf-v6-c-title.pf-m-lg, .pf-v6-c-title.pf-m-md { color: var(--hv-navy); font-weight: 600; }
.pf-v6-c-card { border-radius: 20px; border: 1px solid var(--hv-border); box-shadow: 0 6px 20px rgba(11,35,64,.06); }

/* ---- Form fields ---- */
.pf-v6-c-form__label-text { font-weight: 600; font-size: 13px; color: var(--hv-text-dark); }
.pf-v6-c-form__label-required { color: var(--hv-danger); margin-left: 3px; }
.pf-v6-c-form-control { border-radius: var(--hv-radius-md); background-color: #fff; min-height: 44px; font-size: 15px; }
.pf-v6-c-form-control::before { border-radius: var(--hv-radius-md); border: 1.5px solid var(--hv-border); }
.pf-v6-c-form-control::after { display: none; }
.pf-v6-c-form-control:focus-within::before,
.pf-v6-c-form-control:focus::before { border-color: var(--hv-blue-primary); }
.pf-v6-c-form-control:focus-within { box-shadow: 0 0 0 4px rgba(6,131,198,.12); }
.pf-v6-c-form-control input, .pf-v6-c-form-control textarea { padding-left: 16px; padding-right: 16px; }
.pf-v6-c-form-control.pf-m-disabled, .pf-v6-c-form-control.pf-m-readonly,
.pf-v6-c-form-control:has(input:disabled), .pf-v6-c-form-control:has(input[readonly]) {
  background-color: var(--hv-bg-soft); color: var(--hv-text-muted);
}
.pf-v6-c-form__helper-text .pf-v6-c-helper-text__item.pf-m-error { color: var(--hv-danger); }

/* ---- Buttons ---- */
.pf-v6-c-button { border-radius: var(--hv-radius-md); font-weight: 700; letter-spacing: .2px; }
.pf-v6-c-button::after { border-radius: var(--hv-radius-md) !important; }
.pf-v6-c-button.pf-m-primary {
  --pf-v6-c-button--m-primary--BackgroundColor: #0683C6;
  --pf-v6-c-button--m-primary--hover--BackgroundColor: #056BA3;
  background-color: var(--hv-blue-primary); color: #fff;
  padding: 10px 24px; min-height: 44px;
  box-shadow: 0 8px 18px rgba(6,131,198,.28);
}
.pf-v6-c-button.pf-m-primary:hover, .pf-v6-c-button.pf-m-primary:focus { background-color: var(--hv-blue-primary-dark); }
.pf-v6-c-button.pf-m-secondary { color: var(--hv-blue-primary); }
.pf-v6-c-button.pf-m-secondary::after { border-color: var(--hv-blue-primary) !important; border-width: 1.5px; }
.pf-v6-c-button.pf-m-link, .pf-v6-c-button.pf-m-link:hover { color: var(--hv-blue-primary); box-shadow: none; }
.pf-v6-c-button.pf-m-danger { background-color: var(--hv-danger); }
.pf-v6-c-button.pf-m-link.pf-m-danger { background: none; color: var(--hv-danger); }

/* ---- Misc ---- */
a { color: var(--hv-blue-primary); }
a:hover { color: var(--hv-blue-primary-dark); }
.pf-v6-c-alert { border-radius: var(--hv-radius-md); overflow: hidden; }
.pf-v6-c-jump-links__link { color: var(--hv-text-muted); }
.pf-v6-c-jump-links__item.pf-m-current .pf-v6-c-jump-links__link { color: var(--hv-blue-primary); }
.pf-v6-c-jump-links__item.pf-m-current .pf-v6-c-jump-links__link::before { border-color: var(--hv-blue-primary); }
.pf-v6-c-switch__input:checked ~ .pf-v6-c-switch__toggle { background-color: var(--hv-blue-primary); }
.pf-v6-c-spinner { --pf-v6-c-spinner--Color: var(--hv-blue-primary); }
.pf-v6-c-avatar { border: 2px solid var(--hv-blue-accent); }
