/* SAL-IA-LLENGUES-TEMA-V1 (23-10-2026) · IA Llengües amb la imatge del web de la UV i de l'SLPL
   Valors presos del web real (captura del 23-10-2026, estilo.css / estilo-arena.css de www.uv.es):
   barra superior #333 de 36 px · capçalera #082b3e de 134 px amb cap-spl-val.png · menú #082b3e amb filet #1a3b5a,
   text #edeadf i actiu/sobrevol #e6e3d2 · franja de segon nivell #edeadf · text #292a25 · enllaços #016ca2 ·
   títols #013952 · peu #2d2d2d amb text #b2b2b2 · contenidor de 1200 px · tipografia Arial.
   Tot va sota html.uvt: amb ?tema=antic la pàgina es veu com abans. Amb ?embed=1 (dins de l'ERPNext) no es
   mostren la barra superior, la capçalera ni el peu; només els colors i la tipografia. */

html.uvt {
  --uv-nav: #082b3e;
  --uv-blau: #016ca2;
  --uv-blau-clar: #eef2f4;
  --uv-taronja: #082b3e;
  --uv-gris: #ffffff;
  --uv-gris-m: #545454;
  --uv-brd: #dddddd;
  --uv-txt: #292a25;
  --sans: Arial, Helvetica, sans-serif;
  --brd-r: 3px;
  --shadow-sm: none;
  --shadow-md: 0 1px 3px rgba(0, 0, 0, .10);
  --shadow-lg: 0 2px 10px rgba(0, 0, 0, .14);
  --uvt-fosc: #082b3e;
  --uvt-fosc2: #013952;
  --uvt-arena: #edeadf;
  --uvt-arena2: #e6e3d2;
  --uvt-ample: 1200px;
}

/* ── Tipografia i fons generals ───────────────────────────────────────── */
html.uvt body {
  font-family: Arial, Helvetica, sans-serif !important;
  background: #ffffff !important;
  color: #292a25;
}
html.uvt button, html.uvt input, html.uvt select, html.uvt textarea, html.uvt label,
html.uvt h1, html.uvt h2, html.uvt h3, html.uvt h4, html.uvt h5, html.uvt p, html.uvt li, html.uvt td, html.uvt th {
  font-family: Arial, Helvetica, sans-serif;
}
html.uvt a { color: #016ca2; }
html.uvt .tan-main { background: #ffffff !important; }

/* ── Contenidor de 1200 px, com el web de la UV ───────────────────────── */
html.uvt .uvt-w { max-width: var(--uvt-ample); margin: 0 auto; position: relative; box-sizing: border-box; }
@media (max-width: 1232px) { html.uvt .uvt-w { padding-left: 16px; padding-right: 16px; } }
html.uvt:not(.uvt-embed) .tan-main > .seccio,
html.uvt:not(.uvt-embed) .tan-main > .tab-content,
html.uvt:not(.uvt-embed) .tan-main > section.tab-content {
  max-width: var(--uvt-ample) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box;
}

/* ── Capçalera: la vella queda amagada ────────────────────────────────── */
html.uvt .tan-header {
  background: #082b3e !important;
  padding: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
  border: 0 !important;
  text-align: left !important;
}
html.uvt.uvt-llesta .tan-header-contingut { display: none !important; }

/* Barra superior (pre-cabecera de la UV) */
html.uvt .uvt-pre { background: #333333; height: 36px; color: #edeadf; }
html.uvt .uvt-pre .uvt-w { display: flex; align-items: center; justify-content: flex-end; height: 36px; }
html.uvt .uvt-pre a, html.uvt .uvt-pre .uvt-usuari {
  color: #edeadf; font: 11px/36px Arial, Helvetica, sans-serif; text-transform: uppercase;
  letter-spacing: .02em; text-decoration: none; padding: 0 12px; white-space: nowrap;
}
html.uvt .uvt-pre a:hover { color: #ffffff; text-decoration: underline; }
html.uvt .uvt-pre .uvt-usuari { color: #b2b2b2; text-transform: none; font-size: 12px; }
html.uvt .uvt-pre .uvt-usuari:empty { display: none; }
html.uvt .uvt-botons {
  position: static !important; display: flex !important; align-items: center !important;
  gap: 0 !important; height: 36px; margin-left: 6px; top: auto !important; right: auto !important;
}
html.uvt .uvt-botons > button, html.uvt .uvt-botons > a, html.uvt .uvt-pre #sa11y-boto:not(.flota) {
  background: transparent !important; border: 0 !important; border-left: 1px solid #4d4d4d !important;
  border-radius: 0 !important; box-shadow: none !important; color: #edeadf !important;
  font: 11px/36px Arial, Helvetica, sans-serif !important; text-transform: uppercase; letter-spacing: .02em;
  height: 36px !important; padding: 0 14px !important; margin: 0 !important; cursor: pointer;
}
html.uvt .uvt-botons > button:hover, html.uvt .uvt-pre #sa11y-boto:not(.flota):hover { background: #444444 !important; color: #ffffff !important; }
html.uvt .uvt-pre #sa11y-boto .aa { font: 700 13px/1 Georgia, "Times New Roman", serif !important; text-transform: none; }

/* Capçalera del portal (#cabecera) */
html.uvt .uvt-cap { background: #082b3e; height: 134px; overflow: hidden; }
html.uvt .uvt-cap .uvt-w { display: flex; align-items: center; justify-content: space-between; height: 134px; gap: 16px; }
html.uvt .uvt-logo { position: relative; flex: 0 0 auto; height: 134px; }
html.uvt .uvt-logo img { display: block; height: 136px; width: auto; max-width: none; margin-top: -1px; }
html.uvt .uvt-logo a { position: absolute; top: 0; height: 134px; display: block; }
html.uvt .uvt-logo a.uvt-l-uv { left: 0; width: 210px; }
html.uvt .uvt-logo a.uvt-l-slpl { left: 210px; width: 400px; }
html.uvt .uvt-app { flex: 0 1 auto; text-align: right; color: #ffffff; min-width: 0; }
html.uvt .uvt-app .uvt-nom { font: 400 34px/1.1 Arial, Helvetica, sans-serif; color: #ffffff; margin: 0; letter-spacing: .01em; }
html.uvt .uvt-app .uvt-sub { font: 13px/1.4 Arial, Helvetica, sans-serif; color: #cccccc; margin-top: 6px; }

/* Menú principal (#menu-principal) */
html.uvt #tan-nav.tan-nav, html.uvt nav#tan-nav {
  background: #082b3e !important;
  border: 0 !important;
  border-top: 1px solid #1a3b5a !important;
  box-shadow: none !important;
  display: flex !important;
  flex-wrap: nowrap !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 max(0px, calc((100% - var(--uvt-ample)) / 2)) !important;
  min-height: 34px;
  scrollbar-width: thin;
  scrollbar-color: #a9a9a9 #082b3e;
}
html.uvt #tan-nav > button {
  flex: 1 0 auto !important;
  background: #082b3e !important;
  color: #edeadf !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font: 400 12.5px/34px Arial, Helvetica, sans-serif !important;
  height: 34px !important;
  padding: 0 14px !important;
  margin: 0 !important;
  text-align: center !important;
  white-space: nowrap !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
html.uvt #tan-nav > button:hover { background: #e6e3d2 !important; color: #282828 !important; }
html.uvt #tan-nav > button.act, html.uvt #tan-nav > button.active {
  background: #edeadf !important; color: #282828 !important; font-weight: 700 !important;
}
html.uvt #tan-nav > button:focus-visible { outline: 2px solid #edeadf !important; outline-offset: -3px !important; }
html.uvt #tan-nav::-webkit-scrollbar { height: 6px; }
html.uvt #tan-nav::-webkit-scrollbar-track { background: #082b3e; }
html.uvt #tan-nav::-webkit-scrollbar-thumb { background: #a9a9a9 !important; border-radius: 0 !important; }
html.uvt #tan-nav::-webkit-scrollbar-thumb:hover { background: #cccccc !important; }
html.uvt .uvt-emo { display: none !important; }

/* Franja de segon nivell (#menu-segundos): eina activa i estat dels motors */
html.uvt .status-bar {
  background: #edeadf !important;
  border: 0 !important;
  min-height: 28px;
  padding: 0 max(16px, calc((100% - var(--uvt-ample)) / 2)) !important;
  color: #282828 !important;
  font: 11.5px Arial, Helvetica, sans-serif;
}
html.uvt .uvt-actiu { margin-right: auto; font: 700 12px/28px Arial, Helvetica, sans-serif; color: #282828; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
html.uvt .status-bar .status-txt { color: #3f3c35 !important; font-size: 11.5px !important; }
html.uvt #server-status { background: transparent !important; border: 0 !important; color: #3f3c35 !important; padding: 0 !important; margin-left: 8px !important; font-size: 11.5px !important; }
html.uvt .dot.ok { background: #2e7d32 !important; }

/* ── Botons ───────────────────────────────────────────────────────────── */
html.uvt .btn-tradueix, html.uvt .btn-tradueix-doc, html.uvt .btn-apujar, html.uvt .btn-primary,
html.uvt #a2 .a2-tria,
html.uvt body.sal-embed .btn-principal, html.uvt body.sal-embed button[onclick*="tradueix"],
html.uvt body.sal-embed button[onclick*="corregeix"], html.uvt body.sal-embed .tradueix-btn {
  background: #082b3e !important;
  color: #ffffff !important;
  border: 1px solid #082b3e !important;
  border-radius: 3px !important;
  box-shadow: none !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-weight: 700;
  text-shadow: none !important;
}
html.uvt .btn-tradueix:hover, html.uvt .btn-tradueix-doc:hover, html.uvt .btn-apujar:hover, html.uvt .btn-primary:hover,
html.uvt #a2 .a2-tria:hover {
  background: #013952 !important; border-color: #013952 !important; color: #ffffff !important;
}
html.uvt .btn-tradueix:disabled, html.uvt .btn-tradueix-doc:disabled, html.uvt .btn-primary:disabled {
  background: #b1b1b1 !important; border-color: #b1b1b1 !important; color: #ffffff !important;
}

/* Botons de tria de motor: pastilles com «SOL·LICITUD DE TRADUCCIÓ/CORRECCIÓ» del web de l'SLPL */
html.uvt .motor-btn {
  background: #ffffff !important; color: #082b4e !important; border: 1px solid #082b4e !important;
  border-radius: 15px !important; box-shadow: none !important; font-family: Arial, Helvetica, sans-serif !important;
}
html.uvt .motor-btn:hover { background: #e6e3d2 !important; color: #082b4e !important; }
html.uvt .motor-btn.motor-btn-actiu, html.uvt .motor-btn.active, html.uvt .motor-btn.act,
html.uvt .motor-btn.motor-btn-actiu[data-motor-angles], html.uvt .motor-btn.motor-btn-actiu[data-motor-corr] {
  background: #082b4e !important; color: #ffffff !important; border-color: #082b4e !important;
}

html.uvt .progres-fill { background: #016ca2 !important; }
html.uvt .eina-card-destacat, html.uvt .eina-card-destacat:hover { border-color: #082b3e !important; background: #f5f4ee !important; }
html.uvt .upload-area.drag-over { border-color: #016ca2 !important; background: #eef2f4 !important; }

/* Indicacions de focus visibles sense el groc antic */
html.uvt .caes-inv-btn:focus-visible, html.uvt .caes-chip:focus-visible,
html.uvt #a2 .a2-opt > button:focus-visible, html.uvt #a2 .a2-par:focus-visible, html.uvt #a2 .a2-inv:focus-visible {
  outline: 3px solid #016ca2 !important;
}

/* Avís dels criteris: com la franja beix dels títols de l'SLPL */
html.uvt .avis-criteri { background: #f5f4ee !important; border-left-color: #082b3e !important; color: #292a25 !important; }
html.uvt .motor-descripcio { background: #f5f4ee !important; border-left-color: #082b3e !important; color: #292a25 !important; }

/* Botó flotant del Xatbot i capçalera del panell */
html.uvt #sxb-boto-flotant {
  background: #082b3e !important; border-radius: 3px !important;
  font: 700 14px/1.1 Arial, Helvetica, sans-serif !important; box-shadow: 0 2px 8px rgba(0, 0, 0, .3) !important;
}
html.uvt #sxb-boto-flotant:hover { background: #013952 !important; }
html.uvt #sxb-panell header { background: #082b3e !important; font-family: Arial, Helvetica, sans-serif !important; }

/* ── Peu (pie-pagina) ─────────────────────────────────────────────────── */
html.uvt.uvt-llesta footer.tan-footer {
  background: #2d2d2d !important; border: 0 !important; padding: 0 !important; margin: 0 !important;
  text-align: left !important; color: #b2b2b2 !important; line-height: 1.5;
}
html.uvt .uvt-peu-dalt .uvt-w { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-top: 26px; padding-bottom: 22px; flex-wrap: wrap; }
html.uvt .uvt-peu-logo { display: flex; align-items: flex-end; gap: 30px; flex-wrap: wrap; }
html.uvt .uvt-peu-logo img { width: 178px; height: 57px; display: block; }
html.uvt .uvt-peu-logo span { font: 15.6px/1.3 Arial, Helvetica, sans-serif; color: #b2b2b2; padding-bottom: 2px; }
html.uvt .uvt-peu-enll a { color: #cccccc !important; font: 12px Arial, Helvetica, sans-serif; margin-left: 18px; text-decoration: none; }
html.uvt .uvt-peu-enll a:hover { color: #ffffff !important; text-decoration: underline; }
html.uvt .uvt-peu-baix { border-top: 1px solid #444444; }
html.uvt .uvt-peu-baix .uvt-w { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 6px 16px; padding-top: 10px; padding-bottom: 10px; font: 11px/1.5 Arial, Helvetica, sans-serif; color: #b2b2b2; }
html.uvt .uvt-peu-baix a { color: #cccccc !important; text-decoration: none; }
html.uvt .uvt-peu-baix a:hover { color: #ffffff !important; text-decoration: underline; }

/* ── Pantalla d'entrada ───────────────────────────────────────────────── */
html.uvt #login-overlay {
  background: #ffffff !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  align-items: stretch !important;
  overflow-y: auto !important;
}
html.uvt #login-overlay .uvt-login-cap { flex: 0 0 auto; }
html.uvt #login-overlay .uvt-menu-buit { background: #082b3e; border-top: 1px solid #1a3b5a; height: 34px; }
html.uvt #login-overlay .uvt-banda { background: #edeadf; }
html.uvt #login-overlay .uvt-banda .uvt-w { font: 700 12px/28px Arial, Helvetica, sans-serif; color: #282828; }
html.uvt #login-overlay > div:not(.uvt-login-cap) {
  margin: 48px auto 32px !important;
  flex: 0 0 auto;
  border-radius: 0 !important;
  border: 1px solid #dddddd !important;
  border-top: 4px solid #082b3e !important;
  box-shadow: 0 1px 4px rgba(0, 0, 0, .08) !important;
  max-width: 420px !important;
  font-family: Arial, Helvetica, sans-serif !important;
}
html.uvt #login-overlay h1 {
  color: #013952 !important; font: 400 30px/1.2 Arial, Helvetica, sans-serif !important; letter-spacing: 0 !important; margin-bottom: 6px !important;
}
html.uvt #login-overlay h1 + p { color: #545454 !important; font-size: 13.5px !important; }
html.uvt #login-overlay label { color: #292a25 !important; font-weight: 700 !important; }
html.uvt #login-overlay input { border: 1px solid #b1b1b1 !important; border-radius: 2px !important; font-family: Arial, Helvetica, sans-serif !important; }
html.uvt #login-overlay input:focus { outline: 2px solid #016ca2 !important; outline-offset: 0; border-color: #016ca2 !important; }
html.uvt #login-overlay button {
  background: #082b3e !important; border-radius: 3px !important; font-family: Arial, Helvetica, sans-serif !important; font-weight: 700 !important;
}
html.uvt #login-overlay button:hover { background: #013952 !important; }

/* ── Capçalera compacta (Xatbot, ConsulTot i CA/ES ↔ EN) ──────────────── */
html.uvt body.tc-actiu .uvt-cap, html.uvt body.xb-actiu .uvt-cap { height: 64px; }
html.uvt body.tc-actiu .uvt-cap .uvt-w, html.uvt body.xb-actiu .uvt-cap .uvt-w { height: 64px; }
html.uvt body.tc-actiu .uvt-logo, html.uvt body.xb-actiu .uvt-logo { height: 64px; }
html.uvt body.tc-actiu .uvt-logo img, html.uvt body.xb-actiu .uvt-logo img { height: 66px; }
html.uvt body.tc-actiu .uvt-logo a, html.uvt body.xb-actiu .uvt-logo a { height: 64px; }
html.uvt body.tc-actiu .uvt-logo a.uvt-l-uv, html.uvt body.xb-actiu .uvt-logo a.uvt-l-uv { width: 102px; }
html.uvt body.tc-actiu .uvt-logo a.uvt-l-slpl, html.uvt body.xb-actiu .uvt-logo a.uvt-l-slpl { left: 102px; width: 194px; }
html.uvt body.tc-actiu .uvt-app .uvt-nom, html.uvt body.xb-actiu .uvt-app .uvt-nom { font-size: 24px; }
html.uvt body.tc-actiu .uvt-app .uvt-sub, html.uvt body.xb-actiu .uvt-app .uvt-sub { display: none; }

/* ── Dins de l'ERPNext (?embed=1): sense barra superior, capçalera ni peu ─ */
html.uvt.uvt-embed .uvt-pre, html.uvt.uvt-embed .uvt-cap, html.uvt.uvt-embed footer.tan-footer, html.uvt.uvt-embed .uvt-actiu { display: none !important; }

/* ── Mòbil (com el web de la UV per davall de 768 px) ─────────────────── */
@media (max-width: 768px) {
  html.uvt .uvt-pre .uvt-enll { display: none; }
  html.uvt .uvt-pre .uvt-usuari { display: none; }
  html.uvt .uvt-cap, html.uvt .uvt-cap .uvt-w { height: auto; }
  html.uvt .uvt-cap .uvt-w { flex-direction: column; align-items: stretch; gap: 0; padding-top: 6px; padding-bottom: 10px; }
  html.uvt .uvt-logo { height: auto; }
  html.uvt .uvt-logo img { width: 100%; max-width: 470px; height: auto; }
  html.uvt .uvt-logo a { height: 100%; }
  html.uvt .uvt-logo a.uvt-l-uv { width: 27%; }
  html.uvt .uvt-logo a.uvt-l-slpl { left: 27%; width: 50%; }
  html.uvt .uvt-app { text-align: left; }
  html.uvt .uvt-app .uvt-nom { font-size: 24px; }
  html.uvt .uvt-app .uvt-sub { font-size: 12px; margin-top: 2px; }
  html.uvt .uvt-peu-dalt .uvt-w, html.uvt .uvt-peu-baix .uvt-w { justify-content: center; text-align: center; }
  html.uvt .uvt-peu-logo { justify-content: center; }
  html.uvt .uvt-peu-enll a { margin: 0 9px; }
}

/* Traducció CA ⇄ ES: sentit i motors */
html.uvt .caes-chip { border: 1px solid #082b4e !important; color: #082b4e !important; background: #ffffff !important; border-radius: 15px !important; font-family: Arial, Helvetica, sans-serif !important; }
html.uvt .caes-chip:hover { background: #e6e3d2 !important; }
html.uvt .caes-chip.act { background: #082b4e !important; color: #ffffff !important; border-color: #082b4e !important; }
html.uvt .caes-inv-btn { background: #082b3e !important; }
html.uvt .caes-inv-btn:hover { background: #013952 !important; }
html.uvt .caes-ll { background: #edeadf !important; color: #282828 !important; border-radius: 3px !important; }
html.uvt .caes-i { background: #edeadf !important; color: #082b3e !important; }
html.uvt .caes-barra, html.uvt .caes-docs-cos { border-radius: 3px !important; border-color: #dddddd !important; }

/* Ajustos V1: barra superior en pantalles estretes i botó flotant d'accessibilitat */
html.uvt .uvt-enll { display: flex; }
html.uvt .uvt-pre .uvt-w { overflow: hidden; }
html.uvt .uvt-botons > button, html.uvt .uvt-pre #sa11y-boto:not(.flota) { white-space: nowrap !important; }
html.uvt #sa11y-boto.flota { top: 4px !important; right: 8px !important; background: #333333 !important; border: 1px solid #777777 !important; border-radius: 2px !important; box-shadow: none !important; padding: 4px 10px !important; }
html.uvt .status-bar .status-txt, html.uvt #server-status { white-space: nowrap; }
@media (max-width: 768px) {
  html.uvt .uvt-actiu { display: none; }
  html.uvt .uvt-pre .uvt-w { justify-content: flex-end; }
  html.uvt .uvt-botons > button, html.uvt .uvt-pre #sa11y-boto:not(.flota) { padding: 0 10px !important; }
}

/* Xatbot: mateixos colors institucionals */
html.uvt .sxb-nou {
  --sx-uv: #082b3e !important; --sx-uv-soft: #edeadf !important; --sx-veu: #016ca2 !important;
  --sx-veu-soft: #eef2f4 !important; --sx-paper: #f5f5f5 !important; --sx-line: #dddddd !important; --sx-muted: #545454 !important;
  font-family: Arial, Helvetica, sans-serif !important;
}

/* ── V1.1 (23-10-2026) ────────────────────────────────────────────────── */
/* Quan el botó d'accessibilitat és flotant, no tapa «Tanca sessió» */
html.uvt body:has(#sa11y-boto.flota) .uvt-pre .uvt-w { padding-right: 64px; }
/* ConsulTot: colors institucionals (abans blau degradat i botó taronja) */
html.uvt .ct-nou {
  --ct-uv: #082b3e !important; --ct-uv2: #013952 !important; --ct-tint: #eef2f4 !important;
  --ct-acc: #082b3e !important; --ct-bg: #f5f5f5 !important; --ct-lin: #dddddd !important;
  --ct-fg: #292a25 !important; --ct-mut: #545454 !important;
  font-family: Arial, Helvetica, sans-serif !important;
}
html.uvt .ct-cap { background: #082b3e !important; border-radius: 3px !important; }

/* ── V1.2 (23-10-2026) ────────────────────────────────────────────────── */
/* Subtítol de la capçalera més visible i llegible */
html.uvt .uvt-app .uvt-sub { font: 400 16.5px/1.35 Arial, Helvetica, sans-serif !important; color: #ffffff !important; margin-top: 8px !important; letter-spacing: .01em; }
html.uvt .uvt-app .uvt-nom { font-size: 36px !important; }
@media (max-width: 768px) {
  html.uvt .uvt-app .uvt-sub { font-size: 14px !important; margin-top: 3px !important; }
  html.uvt .uvt-app .uvt-nom { font-size: 25px !important; }
}
/* La cua transparent de cap-spl-val.png (800 px) ja no ocupa lloc: el subtítol cap en una línia */
html.uvt .uvt-logo { width: 600px; overflow: hidden; }
html.uvt .uvt-app .uvt-sub { white-space: nowrap; }
html.uvt body.tc-actiu .uvt-logo, html.uvt body.xb-actiu .uvt-logo { width: 300px; }
@media (max-width: 1100px) { html.uvt .uvt-app .uvt-sub { font-size: 15px !important; } }
@media (max-width: 980px) { html.uvt .uvt-app .uvt-sub { white-space: normal; } }
@media (max-width: 768px) { html.uvt .uvt-logo { width: auto !important; overflow: visible; } }
