/*
 * Omega Light - tema do GLPI (Design System Omega Light)
 * Injetado pelo Apache (mod_substitute) em todas as paginas. Arquivos em /var/www/glpi-omega (fora do GLPI).
 * So vale com tema claro (data-glpi-theme-dark="0"); tema escuro escolhido pelo usuario fica como o do GLPI.
 */
@font-face {
  font-family: 'Jost';
  src: url('/_omega/jost.woff2') format('woff2');
  font-weight: 400 700;
  font-style: normal;
  font-display: swap;
}

:root {
  --omega-petroleo: #0F363F;
  --omega-petroleo-02: #144E5B;
  --omega-petroleo-03: #186077;
  --omega-petroleo-04: #1D7192;
  --omega-fundo: #F5F5F5;
  --omega-texto: #0C2127;
  --omega-texto-2: #4A5D62;
  --omega-borda: #DCDEDF;
  --omega-hover: #EEF3F4;
  --omega-sombra: 0 1px 2px rgba(15, 54, 63, .06), 0 8px 24px rgba(15, 54, 63, .08);
  --omega-fonte: 'Futura PT', 'Jost', 'Segoe UI', Arial, sans-serif;
  --omega-ease: cubic-bezier(.2, 0, 0, 1);
}

/* ---------- Paleta do GLPI -> Omega (so tema claro) ---------- */
html[data-glpi-theme-dark="0"], body.welcome-anonymous {
  --glpi-palette-color-1: #0F363F;
  --glpi-palette-color-2: #FFFFFF;
  --glpi-palette-color-3: #186077;
  --glpi-palette-color-4: #1D7192;
  --tblr-primary: #0F363F;
  --tblr-primary-rgb: 15, 54, 63;
  --tblr-primary-fg: #FFFFFF;
  --tblr-primary-text: #0F363F;
  --tblr-link-color: #186077;
  --tblr-link-color-rgb: 24, 96, 119;
  --tblr-link-hover-color: #0F363F;
  --tblr-body-bg: #F5F5F5;
  --tblr-body-color: #0C2127;
  --tblr-border-color: #DCDEDF;
  --tblr-font-sans-serif: var(--omega-fonte);
  --tblr-border-radius: 8px;
  --tblr-card-border-radius: 16px;
  --glpi-mainmenu-bg: #0F363F;
  --glpi-mainmenu-fg: rgba(255, 255, 255, .80);
  --glpi-mainmenu-fg-muted: rgba(255, 255, 255, .55);
  --glpi-mainmenu-active-bg: rgba(255, 255, 255, .10);
  --glpi-helpdesk-header: #0F363F;
  --glpi-form-header-fg: #0F363F;
  --glpi-tabs-active-fg: #0F363F;
}

html[data-glpi-theme-dark="0"] body, body.welcome-anonymous {
  font-family: var(--omega-fonte);
  background-color: var(--omega-fundo);
  color: var(--omega-texto);
}
html[data-glpi-theme-dark="0"] h1, html[data-glpi-theme-dark="0"] h2, html[data-glpi-theme-dark="0"] h3,
html[data-glpi-theme-dark="0"] .card-title { font-family: var(--omega-fonte); font-weight: 600; color: var(--omega-texto); }

/* menu lateral */
html[data-glpi-theme-dark="0"] aside.sidebar, html[data-glpi-theme-dark="0"] .navbar-vertical {
  background-color: var(--omega-petroleo) !important;
}
html[data-glpi-theme-dark="0"] aside.sidebar .glpi-logo {
  background-image: url('/_omega/logo-omega-light.png') !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  min-width: 150px; min-height: 40px;
}
html[data-glpi-theme-dark="0"] aside.sidebar .nav-link { border-radius: 8px; transition: background-color 160ms var(--omega-ease); }
html[data-glpi-theme-dark="0"] aside.sidebar .nav-link:hover { background-color: rgba(255, 255, 255, .08); }

/* botoes pill */
.btn { border-radius: 999px !important; font-family: var(--omega-fonte); font-weight: 600; letter-spacing: .02em;
  transition: background-color 160ms var(--omega-ease), box-shadow 160ms var(--omega-ease), transform 160ms var(--omega-ease); }
.btn-primary { background-color: var(--omega-petroleo) !important; border-color: var(--omega-petroleo) !important; color: #fff !important; }
.btn-primary:hover, .btn-primary:focus { background-color: var(--omega-petroleo-02) !important; border-color: var(--omega-petroleo-02) !important; }
.btn-outline-primary { color: var(--omega-petroleo) !important; border-color: var(--omega-petroleo) !important; }
.btn-outline-primary:hover { background-color: var(--omega-petroleo) !important; color: #fff !important; }

/* cards e campos */
html[data-glpi-theme-dark="0"] .card, body.welcome-anonymous .card { border-radius: 16px; border: 1px solid var(--omega-borda); box-shadow: var(--omega-sombra); }
.form-control, .form-select, .select2-container--default .select2-selection { border-radius: 8px !important; border-width: 1.5px !important; }
.form-control:focus, .form-select:focus { border-color: var(--omega-petroleo-03) !important; box-shadow: 0 0 0 3px rgba(24, 96, 119, .15) !important; }
.form-label { font-weight: 600; color: var(--omega-texto); }
.badge.bg-primary { background-color: var(--omega-petroleo) !important; }

/* ---------- Login em duas colunas (painel petroleo + formulario) ---------- */
body.omega-login {
  display: grid;
  grid-template-columns: minmax(360px, 44%) 1fr;
  min-height: 100vh;
  margin: 0;
}
body.omega-login .skip-links { position: absolute; }
/* omega-centro */ body.omega-login #page { min-height: 100vh; grid-row: 1; grid-column: 2; display: flex; align-items: center; justify-content: center; padding: 32px 24px; }
body.omega-login #page > .flex-fill { width: 100%; padding: 0 !important; margin: 0 !important; }
body.omega-login .container-tight { max-width: 440px !important; padding: 0 !important; }
body.omega-login .glpi-logo { display: none !important; }
body.omega-login .main-content-card > .card-header:first-child { display: none; }
body.omega-login .main-content-card .row > .col-md-5 { flex: 0 0 100%; max-width: 100%; }
body.omega-login .main-content-card .card-body { padding: 40px 36px 32px; }
body.omega-login .main-content-card h2 {
  margin: 0 !important; font-size: 13px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--omega-texto-2);
}
body.omega-login .main-content-card .card-header.mb-4 { border: 0; padding: 0; margin-bottom: 24px !important; }
body.omega-login .btn-primary { padding: 12px 20px; text-transform: uppercase; letter-spacing: .08em; font-size: 13px; }
body.omega-login .copyright, body.omega-login .text-muted { color: var(--omega-texto-2) !important; font-size: 12px; }

.omega-hero {
  grid-column: 1; grid-row: 1 / span 2;
  position: relative; overflow: hidden;
  background: var(--omega-petroleo);
  color: #fff;
  display: flex;
  min-height: 100vh;
}
.omega-hero::after {
  content: ''; position: absolute; width: 720px; height: 720px; right: -220px; bottom: -220px;
  background: url('/_omega/globo.svg') no-repeat center / contain; opacity: .07; pointer-events: none;
}
.omega-hero-inner { position: relative; z-index: 1; display: flex; flex-direction: column; justify-content: space-between; padding: 56px 56px 40px; width: 100%; }
.omega-logo { height: 56px; width: auto; align-self: flex-start; }
.omega-hero-body { max-width: 460px; margin: 48px 0; }
.omega-overline { font-size: 12px; font-weight: 600; letter-spacing: .24em; text-transform: uppercase; color: rgba(255, 255, 255, .70); margin: 0 0 16px; }
.omega-hero-title { font-family: var(--omega-fonte); font-size: 34px; line-height: 1.2; font-weight: 600; color: #fff !important; margin: 0 0 16px; }
.omega-hero-text { font-size: 16px; line-height: 1.6; color: rgba(255, 255, 255, .82); margin: 0; }
.omega-hero-foot { font-size: 13px; color: rgba(255, 255, 255, .60); margin: 0; }

@media (max-width: 900px) {
  body.omega-login { grid-template-columns: 1fr; }
  body.omega-login #page { min-height: 0; grid-row: auto; grid-column: 1; padding: 24px 16px 40px; }
  .omega-hero { grid-row: auto; min-height: 0; }
  .omega-hero-inner { padding: 28px 24px; }
  .omega-logo { height: 36px; }
  .omega-hero-body { margin: 24px 0 0; }
  .omega-hero-title { font-size: 24px; }
  .omega-hero-text, .omega-hero-foot { display: none; }
}
@media (prefers-reduced-motion: reduce) { .btn { transition: none; } }
