/* ═══════════════════════════════════════════════════════════════
   Indicadores de inclusión y discapacidad — v16.3 · AW Custom
   Todos los selectores cuelgan de #aw-custom-html (el panel no afecta
   al resto de la página). La página hace scroll; topbar y sidebar son
   sticky. Para que el sticky funcione, el objeto AW Custom debe usar
   «Custom Content Full Width» o la vista sin plantilla principal.
   ═══════════════════════════════════════════════════════════════ */

/* ─── TOKENS ─────────────────────────────────────────────── */
#aw-custom-html{
  --aw-custom-topbar-height: 72px;
  --serif: Arial, Helvetica, sans-serif;
  --sans:  Arial, Helvetica, sans-serif;

  /* Palette */
  --ink:       #24222a;
  --ink2:      #514e58;
  --ink3:      #706d76;
  --paper:     #ffffff;
  --paper2:    #f6f5f7;
  --paper3:    #ece9f0;
  --rule:      rgba(0,0,0,.10);
  --rule-med:  rgba(0,0,0,.16);

  /* Eje colours */
  --eco:       #1a5296;
  --eco-bg:    #edf3fc;
  --cid:       #2e6b2c;
  --cid-bg:    #ebf4ea;
  --rel:       #6f5a91;
  --rel-bg:    #f4f1f8;

  /* Semantic */
  --neg:       #c0392b;
  --neg-bg:    #fdf0ee;
  --pos:       #2e6b2c;
  --pos-bg:    #ebf4ea;
  --amber:     #9a5a00;
  --amber-bg:  #fef8ec;

  /* Layout */
  --sb-w:      252px;
  --top-h:     54px;
  --r:         6px;
  --r-lg:      12px;
  --oliv:      #756489;
  --oliv-mid:  #8e7ab1;
  --oliv-soft: #f3f0f6;
}


#aw-custom-html{ font-family: var(--sans); background: var(--paper); color: var(--ink); font-size: 15px; line-height: 1.65; }
#aw-custom-html button,
#aw-custom-html select,
#aw-custom-html input{ font-family: var(--sans); }
#aw-custom-html a{ text-decoration: none; }

/* ─── SHELL ──────────────────────────────────────────────── */
#aw-custom-html #shell{ display: flex; flex-direction: column; }

/* ─── TOP BAR ────────────────────────────────────────────── */
#aw-custom-html .topbar{
  height: var(--top-h); flex-shrink: 0; position: sticky; top: 0; z-index: 100;
  background: #3f3a4a; color: #fff;
  display: flex; align-items: stretch; gap: 0;
  border-bottom: 3px solid #8e7ab1;
}
#aw-custom-html .topbar-brand{
  display: flex; align-items: center; gap: 12px;
  padding: 0 22px; cursor: pointer; flex-shrink: 0;
  border-right: 1px solid rgba(255,255,255,.12);
}
#aw-custom-html .topbar-oed{
  font-family: var(--serif); font-size: 11px; font-weight: 500;
  letter-spacing: .12em; text-transform: uppercase;
  border: 1px solid rgba(255,255,255,.35); padding: 3px 8px; border-radius: 3px;
  color: rgba(255,255,255,.85); flex-shrink: 0;
}
#aw-custom-html .topbar-name{ line-height: 1.2; }
#aw-custom-html .topbar-name strong{ font-size: 13px; font-weight: 600; display: block; }
#aw-custom-html .topbar-name span{ font-size: 10.5px; color: rgba(255,255,255,.55); font-style: italic; }
#aw-custom-html .topbar-sep{ width: 1px; background: rgba(255,255,255,.10); margin: 10px 0; flex-shrink: 0; }
#aw-custom-html .topbar-desc{ padding: 0 20px; font-size: 11.5px; color: rgba(255,255,255,.55); line-height: 1.45; align-self: center; }

/* ─── BODY ROW ───────────────────────────────────────────── */
#aw-custom-html .body-row{ display: flex; flex: 1; min-height: calc(100vh - var(--aw-custom-topbar-height)); }

/* ─── SIDEBAR ────────────────────────────────────────────── */
#aw-custom-html .sidebar{
  width: var(--sb-w); flex-shrink: 0;
  background: var(--paper); border-right: 1px solid var(--rule-med);
  position: sticky; top: var(--aw-custom-topbar-height); align-self: flex-start;
  height: calc(100vh - var(--aw-custom-topbar-height));
  overflow-y: auto; display: flex; flex-direction: column;
  font-size: 12.5px;
}
/* Home */
#aw-custom-html .sb-home{
  display: flex; align-items: center; gap: 8px;
  padding: 12px 16px; font-weight: 600; cursor: pointer;
  color: var(--ink2); border-bottom: 1px solid var(--rule);
  font-size: 12px; transition: background .12s;
}
#aw-custom-html .sb-home:hover,
#aw-custom-html .sb-home.active{ background: var(--paper2); color: var(--ink); }

/* Eje accordion */
#aw-custom-html .sb-eje{ border-bottom: 1px solid var(--rule); }
#aw-custom-html .sb-eje-hdr{
  display: flex; align-items: center; gap: 0;
  padding: 9px 14px; cursor: pointer; user-select: none;
  transition: background .12s;
}
#aw-custom-html .sb-eje-hdr:hover{ background: var(--paper2); }
#aw-custom-html .sb-eje-hdr.open{ background: var(--paper2); }
#aw-custom-html .sb-eje-pip{
  width: 5px; height: 5px; border-radius: 50%; flex-shrink: 0; margin-right: 9px;
}
#aw-custom-html .sb-eje-label{ flex: 1; font-weight: 600; font-size: 12px; line-height: 1.3; color: var(--ink); }
#aw-custom-html .sb-eje-num{ font-size: 10px; color: var(--ink3); margin-right: 6px; }
#aw-custom-html .sb-eje-chev{ font-size: 9px; color: var(--ink3); transition: transform .2s; flex-shrink: 0; }
#aw-custom-html .sb-eje-hdr.open .sb-eje-chev{ transform: rotate(90deg); }

/* Eje body */
#aw-custom-html .sb-eje-body{ display: none; }
#aw-custom-html .sb-eje-body.open{ display: block; }

/* Balance link */
#aw-custom-html .sb-balance{
  display: flex; align-items: center; gap: 6px;
  padding: 7px 14px 7px 26px; font-size: 12px; cursor: pointer;
  color: var(--ink3); border-left: 2px solid transparent;
  transition: background .12s, color .12s;
  font-style: italic;
}
#aw-custom-html .sb-balance:hover{ background: var(--paper2); color: var(--ink2); }
#aw-custom-html .sb-balance.active{ color: var(--eco); border-left-color: var(--eco); background: var(--eco-bg); font-weight: 600; font-style: normal; }
#aw-custom-html .sb-balance.active.cid{ color: var(--cid); border-left-color: var(--cid); background: var(--cid-bg); }
#aw-custom-html .sb-balance.active.rel{ color: var(--rel); border-left-color: var(--rel); background: var(--rel-bg); }

/* Tema group */
#aw-custom-html .sb-tema{ font-size: 10px; font-weight: 600; color: var(--ink3); text-transform: uppercase; letter-spacing: .06em; padding: 8px 14px 3px 26px; }

/* Indicator item */
#aw-custom-html .sb-ind{
  display: flex; align-items: baseline; gap: 5px;
  padding: 4px 12px 4px 26px; cursor: pointer;
  color: var(--ink2); border-left: 2px solid transparent;
  transition: background .12s, color .12s; font-size: 12px;
}
#aw-custom-html .sb-ind:hover{ background: var(--paper2); color: var(--ink); }
#aw-custom-html .sb-ind.active{ border-left-color: var(--eco); color: var(--eco); font-weight: 600; background: var(--eco-bg); }
#aw-custom-html .sb-ind.active.cid{ border-left-color: var(--cid); color: var(--cid); background: var(--cid-bg); }
#aw-custom-html .sb-ind.active.rel{ border-left-color: var(--rel); color: var(--rel); background: var(--rel-bg); }
#aw-custom-html .sb-ind-num{ font-size: 10px; color: var(--ink3); width: 17px; flex-shrink: 0; }
#aw-custom-html .sb-ind-name{ flex: 1; line-height: 1.3; }

/* Sintesis */
#aw-custom-html .sb-sint{
  display: flex; align-items: center; gap: 8px;
  padding: 11px 16px; font-size: 12px; cursor: pointer; color: var(--ink2);
  border-top: 1px solid var(--rule); margin-top: auto;
  transition: background .12s;
}
#aw-custom-html .sb-sint:hover,
#aw-custom-html .sb-sint.active{ background: var(--paper2); color: var(--ink); font-weight: 600; }

/* ─── MAIN ───────────────────────────────────────────────── */
#aw-custom-html .main{ flex: 1; min-width: 0; background: var(--paper2); }

/* Breadcrumb */
#aw-custom-html .bc{
  padding: 8px 28px; background: var(--paper); border-bottom: 1px solid var(--rule);
  font-size: 11px; color: var(--ink3); display: flex; align-items: center; gap: 5px;
  flex-shrink: 0;
}
#aw-custom-html .bc-link{ cursor: pointer; color: var(--ink2); transition: color .1s; }
#aw-custom-html .bc-link:hover{ color: var(--ink); }
#aw-custom-html .bc-sep{ color: var(--rule-med); }
#aw-custom-html .bc-cur{ color: var(--ink); }

/* Page */
#aw-custom-html .page{ padding: 28px 32px; max-width: 900px; }

/* Screen */
#aw-custom-html .screen{ display: none; }
#aw-custom-html .screen.active{ display: block; }

/* ─── TYPE HELPERS ───────────────────────────────────────── */
#aw-custom-html .slbl{
  font-size: 10px; font-weight: 600; color: var(--ink3);
  text-transform: uppercase; letter-spacing: .08em;
  display: block; margin-bottom: 12px; margin-top: 26px;
}
#aw-custom-html .slbl:first-child{ margin-top: 0; }

/* ─── PORTADA ────────────────────────────────────────────── */

/* Hero strip: título + subtítulo sobre fondo oscuro */
#aw-custom-html .portada-hero{
  background: var(--ink);
  color: #fff;
  padding: 32px 36px 28px;
  border-radius: var(--r-lg) var(--r-lg) 0 0;
  position: relative; overflow: hidden;
}
#aw-custom-html .portada-hero::after{
  content: ''; position: absolute; right: -80px; top: -80px;
  width: 300px; height: 300px; border-radius: 50%;
  background: rgba(255,255,255,.03); pointer-events: none;
}
#aw-custom-html .ph-kicker{
  font-size: 10px; letter-spacing: .10em; text-transform: uppercase;
  color: rgba(255,255,255,.45); margin-bottom: 10px;
}
#aw-custom-html .ph-title{
  font-family: var(--serif); font-size: 24px; font-weight: 700;
  line-height: 1.25; margin-bottom: 4px;
}
#aw-custom-html .ph-subtitle{
  font-size: 13px; color: rgba(255,255,255,.55);
  font-style: italic; margin-bottom: 0;
}

/* Intro: fondo propio, color diferente */
#aw-custom-html .portada-intro{
  background: var(--eco-bg);
  border-left: 3px solid var(--eco);
  border-radius: 0 0 var(--r-lg) var(--r-lg);
  padding: 18px 28px 20px 28px;
  margin-bottom: 28px;
}
#aw-custom-html .portada-intro p{
  font-size: 13.5px; color: var(--ink2); line-height: 1.78;
}
#aw-custom-html .portada-intro .pi-footer{
  font-size: 11px; color: var(--ink3); margin-top: 10px; padding-top: 10px;
  border-top: 1px solid rgba(0,0,0,.08);
}

/* Eje cards */
#aw-custom-html .eje-cards{ display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 12px; margin-bottom: 28px; }
#aw-custom-html .eje-card{
  background: var(--paper); border: 1px solid var(--rule); border-radius: var(--r-lg);
  padding: 18px 20px; cursor: pointer; transition: border-color .15s, box-shadow .15s;
  display: flex; flex-direction: column; gap: 0;
}
#aw-custom-html .eje-card:hover{ border-color: var(--rule-med); box-shadow: 0 2px 12px rgba(0,0,0,.06); }
#aw-custom-html .ec-stripe{ height: 3px; border-radius: 2px; margin-bottom: 14px; }
#aw-custom-html .ec-label{ font-size: 14px; font-weight: 600; line-height: 1.25; margin-bottom: 5px; }
#aw-custom-html .ec-desc{ font-size: 11.5px; color: var(--ink2); line-height: 1.5; margin-bottom: 14px; flex: 1; }
#aw-custom-html .ec-meta{ font-size: 11px; color: var(--ink3); margin-bottom: 10px; }
#aw-custom-html .ec-cta{ font-size: 11.5px; font-weight: 600; display: inline-flex; align-items: center; gap: 3px; }

/* Datos destacados */
#aw-custom-html .portada-highlights{ margin-bottom: 28px; }
#aw-custom-html .highlights-grid{ display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
#aw-custom-html .hl-eje{
  background: var(--paper); border: 1px solid var(--rule); border-radius: var(--r-lg);
  overflow: hidden;
}
#aw-custom-html .hl-eje-hdr{
  padding: 11px 16px; display: flex; align-items: center; gap: 8px;
  border-bottom: 1px solid var(--rule);
}
#aw-custom-html .hl-eje-pip{ width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; }
#aw-custom-html .hl-eje-name{ font-size: 12px; font-weight: 600; }
#aw-custom-html .hl-items{ padding: 12px 16px; display: flex; flex-direction: column; gap: 10px; }
#aw-custom-html .hl-item{ display: flex; align-items: flex-start; gap: 10px; }
#aw-custom-html .hl-item-dot{ width: 6px; height: 6px; border-radius: 50%; flex-shrink: 0; margin-top: 5px; }
#aw-custom-html .hl-item-body{ flex: 1; }
#aw-custom-html .hl-item-title{ font-size: 12px; font-weight: 600; color: var(--ink); margin-bottom: 2px; }
#aw-custom-html .hl-item-text{ font-size: 11.5px; color: var(--ink2); line-height: 1.5; }
#aw-custom-html .hl-item-text strong{ color: var(--ink); font-weight: 600; }

/* Global metrics */
#aw-custom-html .portada-metrics{ display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 10px; margin-bottom: 28px; }
#aw-custom-html .pm{ background: var(--paper); border: 1px solid var(--rule); border-radius: var(--r); padding: 12px 14px; }
#aw-custom-html .pm-val{ font-size: 24px; font-weight: 600; font-family: var(--serif); line-height: 1; margin-bottom: 3px; }
#aw-custom-html .pm-lab{ font-size: 11px; color: var(--ink2); }

/* Sintesis btn */
#aw-custom-html .sint-btn{
  display: inline-flex; align-items: center; gap: 7px;
  background: var(--paper); border: 1px solid var(--rule-med);
  border-radius: var(--r); padding: 9px 16px; font-size: 12.5px;
  cursor: pointer; color: var(--ink); font-weight: 500;
  transition: background .12s;
}
#aw-custom-html .sint-btn:hover{ background: var(--paper3); }

/* ─── EJE BALANCE ────────────────────────────────────────── */
#aw-custom-html .eje-head{ margin-bottom: 22px; }
#aw-custom-html .eje-head-inner{ display: flex; align-items: center; gap: 10px; margin-bottom: 3px; }
#aw-custom-html .eje-head-bar{ width: 4px; height: 30px; border-radius: 2px; flex-shrink: 0; }
#aw-custom-html .eje-head h1{ font-family: var(--serif); font-size: 22px; font-weight: 700; }
#aw-custom-html .eje-head-meta{ font-size: 11.5px; color: var(--ink3); margin-left: 14px; }

#aw-custom-html .eje-intro-box{
  background: var(--paper); border: 1px solid var(--rule);
  border-left: 3px solid var(--eco); border-radius: 0 var(--r) var(--r) 0;
  padding: 14px 18px; margin-bottom: 22px;
}
#aw-custom-html .eje-intro-box p{ font-size: 13px; color: var(--ink2); line-height: 1.75; }

#aw-custom-html .eje-kpis{ display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 10px; margin-bottom: 22px; }
#aw-custom-html .ek{ background: var(--paper); border: 1px solid var(--rule); border-radius: var(--r); padding: 13px 15px; }
#aw-custom-html .ek-val{ font-size: 24px; font-weight: 600; font-family: var(--serif); line-height: 1; margin-bottom: 3px; }
#aw-custom-html .ek-val.neg{ color: var(--neg); }
#aw-custom-html .ek-val.pos{ color: var(--pos); }
#aw-custom-html .ek-lab{ font-size: 11px; color: var(--ink2); }

#aw-custom-html .nota-m{
  font-size: 11.5px; color: var(--ink2); line-height: 1.65;
  padding: 10px 14px; background: var(--eco-bg);
  border-left: 3px solid var(--eco); border-radius: 0 var(--r) var(--r) 0;
  margin-bottom: 16px;
}
#aw-custom-html .nota-m strong{ color: var(--ink); }

/* Chart card */
#aw-custom-html .cc{
  background: var(--paper); border: 1px solid var(--rule); border-radius: var(--r-lg);
  padding: 18px 20px; margin-bottom: 16px;
}
#aw-custom-html .cc-title{ font-size: 13px; font-weight: 600; margin-bottom: 3px; }
#aw-custom-html .cc-sub{ font-size: 11px; color: var(--ink2); margin-bottom: 14px; line-height: 1.5; }

#aw-custom-html .legend{ display: flex; gap: 14px; flex-wrap: wrap; font-size: 11px; color: var(--ink2); margin-top: 10px; }
#aw-custom-html .legend-item{ display: flex; align-items: center; gap: 5px; }
#aw-custom-html .legend-dot{ width: 10px; height: 10px; border-radius: 2px; flex-shrink: 0; }
#aw-custom-html .legend-dash{ width: 16px; border-top: 2px dashed #999; flex-shrink: 0; }

/* Indicator list */
#aw-custom-html .ind-list{ display: flex; flex-direction: column; gap: 4px; margin-bottom: 22px; }
#aw-custom-html .ind-row{
  display: flex; align-items: center; gap: 8px;
  padding: 8px 12px; border: 1px solid var(--rule); border-radius: var(--r);
  cursor: pointer; background: var(--paper); font-size: 12px; transition: background .12s;
}
#aw-custom-html .ind-row:hover{ background: var(--paper2); }
#aw-custom-html .ir-num{ font-size: 10px; color: var(--ink3); width: 20px; flex-shrink: 0; }
#aw-custom-html .ir-name{ flex: 1; }
#aw-custom-html .ir-pp{ font-size: 11px; font-weight: 600; width: 56px; text-align: right; flex-shrink: 0; }
#aw-custom-html .ir-pp.neg{ color: var(--neg); }
#aw-custom-html .ir-pp.pos{ color: var(--pos); }
#aw-custom-html .ir-pp.na{ color: var(--ink3); }
#aw-custom-html .ir-arr{ color: var(--ink3); font-size: 14px; flex-shrink: 0; }

/* Balance box */
#aw-custom-html .balance-box{
  background: var(--paper); border: 1px solid var(--rule); border-radius: var(--r-lg);
  padding: 22px 24px;
}
#aw-custom-html .balance-box h3{ font-family: var(--serif); font-size: 17px; font-weight: 700; margin-bottom: 14px; }
#aw-custom-html .balance-box p{ font-size: 13px; color: var(--ink2); line-height: 1.78; margin-bottom: 10px; }
#aw-custom-html .balance-box p:last-child{ margin-bottom: 0; }

/* ─── FICHA ──────────────────────────────────────────────── */
#aw-custom-html .ficha-hdr{ padding-bottom: 16px; border-bottom: 1px solid var(--rule); margin-bottom: 18px; }
#aw-custom-html .ficha-crumb{ font-size: 11px; color: var(--ink3); margin-bottom: 4px; }
#aw-custom-html .ficha-title{ font-family: var(--serif); font-size: 20px; font-weight: 700; line-height: 1.3; }

#aw-custom-html .ficha-tabs{ display: flex; border-bottom: 1px solid var(--rule); margin-bottom: 18px; overflow: visible; flex-wrap: wrap; }
#aw-custom-html .ft{
  padding: 8px 15px; font-size: 12px; cursor: pointer; white-space: nowrap;
  border-bottom: 2px solid transparent; color: var(--ink3); margin-bottom: -1px;
  transition: color .12s; flex-shrink: 0;
}
#aw-custom-html .ft:hover{ color: var(--ink); }
#aw-custom-html .ft.active{ border-bottom-color: var(--eco); color: var(--ink); font-weight: 600; }
#aw-custom-html .ft.active.cid{ border-bottom-color: var(--cid); }
#aw-custom-html .ft.active.rel{ border-bottom-color: var(--rel); }
#aw-custom-html .ft.disabled{ opacity: .4; cursor: not-allowed; }
#aw-custom-html .fp{ display: none; }
#aw-custom-html .fp.active{ display: block; }

#aw-custom-html .fkpis{ display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 10px; margin-bottom: 12px; }
#aw-custom-html .fkpi{ background: var(--paper2); border-radius: var(--r); padding: 11px 13px; }
#aw-custom-html .fkpi-lbl{ font-size: 10px; color: var(--ink3); text-transform: uppercase; letter-spacing: .04em; margin-bottom: 3px; }
#aw-custom-html .fkpi-val{ font-size: 22px; font-weight: 600; font-family: var(--serif); line-height: 1; }

#aw-custom-html .gap-strip{
  display: flex; gap: 24px; flex-wrap: wrap; align-items: flex-start;
  padding: 10px 14px; background: var(--paper2); border-radius: var(--r);
  margin-bottom: 14px; font-size: 12px;
}
#aw-custom-html .gap-item .gi-lbl{ font-size: 10px; color: var(--ink3); text-transform: uppercase; letter-spacing: .04em; margin-bottom: 2px; }
#aw-custom-html .gap-item .gi-val{ font-size: 16px; font-weight: 600; font-family: var(--serif); }
#aw-custom-html .gap-item .gi-val.neg{ color: var(--neg); }
#aw-custom-html .gap-item .gi-val.pos{ color: var(--pos); }

#aw-custom-html .nota-amber{
  font-size: 11.5px; color: var(--amber); line-height: 1.6;
  padding: 8px 12px; background: var(--amber-bg);
  border-left: 3px solid var(--amber); border-radius: 0 var(--r) var(--r) 0;
  margin-bottom: 14px;
}
#aw-custom-html .nota-blue{
  font-size: 11.5px; color: var(--ink2); line-height: 1.6;
  padding: 8px 12px; background: var(--eco-bg);
  border-left: 3px solid var(--eco); border-radius: 0 var(--r) var(--r) 0;
  margin-bottom: 14px;
}

#aw-custom-html .ccaa-row{ display: flex; align-items: center; gap: 8px; font-size: 12px; margin-bottom: 12px; flex-wrap: wrap; }
#aw-custom-html .ccaa-row select{ border: 1px solid var(--rule-med); border-radius: var(--r); padding: 5px 10px; font-size: 12px; background: var(--paper); color: var(--ink); }
#aw-custom-html .ccaa-note{ font-size: 11px; color: var(--ink3); }

#aw-custom-html .def-box{ background: var(--paper); border: 1px solid var(--rule); border-radius: var(--r); padding: 16px 18px; }
#aw-custom-html .def-box h4{ font-size: 12px; font-weight: 600; margin-bottom: 8px; }
#aw-custom-html .def-box p{ font-size: 12.5px; color: var(--ink2); line-height: 1.72; margin-bottom: 8px; }
#aw-custom-html .def-box p:last-child{ margin-bottom: 0; }
#aw-custom-html .def-grid{ display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 12px; }
#aw-custom-html .def-field strong{ display: block; font-size: 10px; color: var(--ink3); font-weight: 600; text-transform: uppercase; letter-spacing: .05em; margin-bottom: 2px; }
#aw-custom-html .def-field{ font-size: 11.5px; color: var(--ink2); line-height: 1.6; }

#aw-custom-html .ficha-anal{ margin-top: 4px; }
#aw-custom-html .ficha-anal h4{ font-family: var(--serif); font-size: 16px; font-weight: 700; margin-bottom: 12px; }
#aw-custom-html .ficha-anal p{ font-size: 13px; color: var(--ink2); line-height: 1.78; margin-bottom: 8px; }

#aw-custom-html .sin-dato{
  background: var(--paper2); border-radius: var(--r-lg);
  padding: 30px; text-align: center; color: var(--ink2); margin: 12px 0;
}
#aw-custom-html .sin-dato strong{ display: block; font-size: 14px; margin-bottom: 6px; color: var(--ink); }
#aw-custom-html .sin-dato p{ font-size: 12px; line-height: 1.65; max-width: 380px; margin: 0 auto; }

/* ─── SÍNTESIS ───────────────────────────────────────────── */
#aw-custom-html .sint-intro{
  font-size: 12.5px; color: var(--ink2); line-height: 1.75;
  padding: 14px 18px; background: var(--paper);
  border: 1px solid var(--rule); border-left: 3px solid var(--eco);
  border-radius: 0 var(--r) var(--r) 0; margin-bottom: 18px;
}
#aw-custom-html .st-wrap{ overflow-x: auto; background: var(--paper); border: 1px solid var(--rule); border-radius: var(--r-lg); }
#aw-custom-html .st{ width: 100%; border-collapse: collapse; font-size: 12px; }
#aw-custom-html .st th{
  text-align: left; padding: 8px 11px; font-size: 10px; font-weight: 600;
  color: var(--ink3); border-bottom: 2px solid var(--rule-med);
  background: var(--paper); white-space: nowrap; position: sticky; top: 0; z-index: 2;
}
#aw-custom-html .st th.r{ text-align: right; }
#aw-custom-html .st td{ padding: 6px 11px; border-bottom: 1px solid var(--rule); vertical-align: middle; }
#aw-custom-html .st td.r{ text-align: right; font-variant-numeric: tabular-nums; }
#aw-custom-html .st tr:hover td{ background: var(--paper2); }
#aw-custom-html .gr td{ background: var(--paper2); font-size: 10px; font-weight: 600; color: var(--ink2); text-transform: uppercase; letter-spacing: .05em; padding: 7px 11px; }
#aw-custom-html .tr-tot td{ background: var(--paper2); font-size: 11px; font-weight: 600; border-top: 1px solid var(--rule-med); border-bottom: 2px solid var(--rule-med); }
#aw-custom-html .vn{ color: var(--neg); font-weight: 600; }
#aw-custom-html .vp{ color: var(--pos); font-weight: 600; }
#aw-custom-html .vx{ color: var(--ink3); }
#aw-custom-html .il{ cursor: pointer; color: var(--eco); }
#aw-custom-html .il:hover{ text-decoration: underline; }
#aw-custom-html .extrem-note{ font-size: 10.5px; color: var(--ink3); margin-top: 10px; padding: 0 4px; }

/* ─── BTN ────────────────────────────────────────────────── */
#aw-custom-html .btn{
  display: inline-flex; align-items: center; gap: 6px;
  border: 1px solid var(--rule-med); border-radius: var(--r);
  padding: 7px 14px; font-size: 12px; cursor: pointer;
  background: var(--paper); color: var(--ink); transition: background .12s;
}
#aw-custom-html .btn:hover{ background: var(--paper2); }

/* Identidad visual Olivenza: aplicación sutil */
#aw-custom-html .institutional-strip{ background:#fff; border:1px solid var(--rule); border-radius:var(--r-lg); padding:10px 16px; margin-bottom:14px; display:flex; align-items:center; justify-content:center; }
#aw-custom-html .institutional-strip img{ display:block; width:100%; max-width:760px; height:auto; }
#aw-custom-html .portada-hero{ box-shadow:0 6px 18px rgba(56,48,67,.10); }
#aw-custom-html .portada-hero::before{ content:''; position:absolute; left:0; top:0; bottom:0; width:5px; background:#a594be; }
#aw-custom-html .ph-kicker{ display:none; }
#aw-custom-html .ph-subtitle{ color:rgba(255,255,255,.72); }
#aw-custom-html .portada-intro{ background:var(--oliv-soft); border-left-color:var(--oliv-mid); }
#aw-custom-html .hl-eje,
#aw-custom-html .eje-card,
#aw-custom-html .pm,
#aw-custom-html .cc,
#aw-custom-html .balance-box,
#aw-custom-html .def-box{ box-shadow:0 1px 4px rgba(46,39,55,.035); }
#aw-custom-html .ft.active{ color:var(--oliv); }
#aw-custom-html .nota-blue{ background:#f3f0f6; border-left-color:var(--oliv-mid); }
#aw-custom-html .sint-btn{ border-color:rgba(117,100,137,.34); }
#aw-custom-html .sint-btn:hover{ background:var(--oliv-soft); }


/* V9 · Legibilidad prioritaria con Atkinson Hyperlegible */
#aw-custom-html,
#aw-custom-html button,
#aw-custom-html select,
#aw-custom-html input{ font-family: var(--sans); }
#aw-custom-html .ph-title,
#aw-custom-html .eje-head h1,
#aw-custom-html .ficha-title,
#aw-custom-html .balance-box h3,
#aw-custom-html .ficha-anal h4,
#aw-custom-html .pm-val,
#aw-custom-html .ek-val,
#aw-custom-html .fkpi-val,
#aw-custom-html .gap-item .gi-val,
#aw-custom-html .topbar-oed{ font-family: var(--sans); }
#aw-custom-html .ph-title{ font-size:26px; letter-spacing:-.01em; }
#aw-custom-html .eje-head h1{ font-size:23px; }
#aw-custom-html .ficha-title{ font-size:21px; }
#aw-custom-html .sidebar{ font-size:13px; }
#aw-custom-html .sb-eje-label,
#aw-custom-html .sb-home,
#aw-custom-html .sb-balance,
#aw-custom-html .sb-ind,
#aw-custom-html .sb-sint{ font-size:13px; }
#aw-custom-html .sb-ind{ padding-top:6px; padding-bottom:6px; }
#aw-custom-html .ft{ font-size:13px; padding:10px 15px; }
#aw-custom-html .cc-title{ font-size:14px; }
#aw-custom-html .cc-sub,
#aw-custom-html .ec-desc,
#aw-custom-html .hl-item-text,
#aw-custom-html .pm-lab,
#aw-custom-html .ek-lab,
#aw-custom-html .def-field,
#aw-custom-html .nota-m,
#aw-custom-html .nota-blue,
#aw-custom-html .nota-amber{ font-size:12px; }
#aw-custom-html .portada-intro p,
#aw-custom-html .balance-box p,
#aw-custom-html .ficha-anal p,
#aw-custom-html .def-box p{ font-size:14px; line-height:1.75; }
#aw-custom-html .eje-card{ padding:20px 22px; }
#aw-custom-html .ind-row{ padding-top:10px; padding-bottom:10px; font-size:13px; }
#aw-custom-html .st{ font-size:13px; }
#aw-custom-html .st th{ font-size:11px; }
#aw-custom-html .st th,
#aw-custom-html .st td{ padding-top:9px; padding-bottom:9px; }
#aw-custom-html .institutional-strip{ padding:7px 14px; }
#aw-custom-html .institutional-strip img{ max-width:690px; max-height:64px; object-fit:contain; }
@media (max-width: 760px){
  #aw-custom-html{ font-size:14px; }
  #aw-custom-html .institutional-strip img{ max-height:50px; }
}


/* V11 · Coherencia visual con la identidad del OED */
#aw-custom-html .ficha-tabs{ overflow:visible; flex-wrap:wrap; scrollbar-width:none; }
#aw-custom-html .ficha-tabs::-webkit-scrollbar{ display:none; }
/* Logotipos institucionales visibles y discretos en la parte superior */
#aw-custom-html .topbar{ min-height:64px; height:64px; }
#aw-custom-html .topbar-brand{ padding-left:76px; position:relative; }
#aw-custom-html .topbar-brand::before{
  content:''; position:absolute; left:18px; top:12px; width:42px; height:40px;
  background:#fff; border-radius:4px;
}
/* Motivo D del OED, reducido a un acento geométrico */
#aw-custom-html .topbar-brand::after{
  content:''; position:absolute; left:28px; top:18px; width:22px; height:28px;
  border:7px solid rgba(74,72,80,.92); border-left-width:6px; border-radius:0 18px 18px 0;
  box-sizing:border-box;
}
#aw-custom-html .topbar-oed{ border-color:#a58fc1; color:#fff; }
#aw-custom-html .portada-hero::after{
  right:-90px; top:-92px; width:330px; height:330px;
  background:transparent; border:44px solid rgba(255,255,255,.055);
  border-left-color:transparent; border-radius:0 50% 50% 0;
}
#aw-custom-html .portada-hero::before{ width:4px; background:#9b86b5; }
#aw-custom-html .institutional-strip{ padding:6px 12px; }
#aw-custom-html .institutional-strip img{ max-width:720px; max-height:56px; }
/* Tipografía institucional, legible y estable */
#aw-custom-html,
#aw-custom-html button,
#aw-custom-html select,
#aw-custom-html input{ font-family:Arial, Helvetica, sans-serif; }
#aw-custom-html .ph-title,
#aw-custom-html .eje-head h1,
#aw-custom-html .ficha-title{ font-weight:700; letter-spacing:-.015em; }


/* V12 · Reordenación de la identidad institucional */
#aw-custom-html .institutional-strip{ display:none !important; }
#aw-custom-html .topbar{ min-height:72px; height:72px; }
#aw-custom-html .topbar-brand{ padding:0 18px; gap:16px; }
#aw-custom-html .topbar-brand::before,
#aw-custom-html .topbar-brand::after{ content:none !important; display:none !important; }
#aw-custom-html .topbar-logo{ display:block; width:340px; max-width:34vw; height:54px; object-fit:contain; object-position:left center; background:#fff; border-radius:3px; }
#aw-custom-html .topbar-name strong{ font-size:14px; }
#aw-custom-html .topbar-name span{ font-size:11px; }
/* La D se integra únicamente en la franja oscura de portada */
#aw-custom-html .portada-hero{ position:relative; padding-right:205px; min-height:178px; display:flex; flex-direction:column; justify-content:center; }
#aw-custom-html .portada-hero::after{ content:''; position:absolute; right:36px; top:30px; width:112px; height:112px; border:28px solid rgba(255,255,255,.24); border-left-width:22px; border-radius:0 65px 65px 0; background:transparent; box-sizing:border-box; }
#aw-custom-html .portada-hero .ph-title::after{ content:''; position:absolute; right:129px; top:114px; width:22px; height:32px; background:rgba(255,255,255,.24); }
@media (max-width:900px){
  #aw-custom-html .topbar-logo{ width:260px; max-width:42vw; }
  #aw-custom-html .topbar-desc{ display:none; }
  #aw-custom-html .portada-hero{ padding-right:155px; }
  #aw-custom-html .portada-hero::after{ right:24px; width:88px; height:88px; border-width:22px; }
  #aw-custom-html .portada-hero .ph-title::after{ right:98px; top:105px; width:17px; height:26px; }
}


/* V13 · Portada compacta y motivo D abierto */
#aw-custom-html .portada-hero{
  min-height: 116px;
  padding: 18px 160px 17px 30px;
  justify-content: center;
}
#aw-custom-html .ph-title{ font-size: 25px; margin-bottom: 3px; }
#aw-custom-html .ph-subtitle{ font-size: 14px; font-style: normal; color: rgba(255,255,255,.78); }
#aw-custom-html .portada-intro{ padding: 15px 24px 16px; margin-bottom: 22px; }
#aw-custom-html .portada-intro p{ line-height: 1.65; }
/* Arco de la D: abierto en su extremo superior izquierdo */
#aw-custom-html .portada-hero::after{
  content: '';
  position: absolute;
  right: 34px;
  top: 20px;
  width: 78px;
  height: 78px;
  border: 19px solid rgba(255,255,255,.22);
  border-left-color: transparent;
  border-radius: 0 48px 48px 0;
  background: transparent;
  box-sizing: border-box;
}
/* Asta inferior independiente: deja visible la apertura superior */
#aw-custom-html .portada-hero .ph-title::after{
  content: '';
  position: absolute;
  right: 93px;
  top: 58px;
  width: 18px;
  height: 40px;
  background: rgba(255,255,255,.22);
}
/* Acento morado de la identidad gráfica */
#aw-custom-html .portada-hero .ph-subtitle::after{
  content: '';
  position: absolute;
  right: 105px;
  top: -46px;
  width: 18px;
  height: 18px;
  background: #9b86b5;
  box-shadow: 9px 9px 0 #9b86b5;
}
@media (max-width:900px){
  #aw-custom-html .portada-hero{ min-height: 108px; padding: 16px 125px 15px 24px; }
  #aw-custom-html .portada-hero::after{ right: 22px; top: 19px; width: 68px; height: 68px; border-width: 17px; }
  #aw-custom-html .portada-hero .ph-title::after{ right: 73px; top: 53px; width: 16px; height: 34px; }
  #aw-custom-html .portada-hero .ph-subtitle::after{ right: 84px; top: -43px; width: 15px; height: 15px; box-shadow: 7px 7px 0 #9b86b5; }
}

#aw-custom-html .analysis-list{margin:0 0 12px 22px;color:var(--ink2);font-size:14px;line-height:1.75}#aw-custom-html .analysis-list li{margin-bottom:7px}
#aw-custom-html .chart-source{margin-top:12px;padding-top:10px;border-top:1px solid var(--rule);font-size:11.5px;color:var(--ink2);line-height:1.6}

/* V16 · Enlaces generales del menú */
#aw-custom-html .sb-general{
  display:flex; align-items:center; gap:8px; padding:11px 16px;
  font-size:13px; cursor:pointer; color:var(--ink2);
  border-top:1px solid var(--rule); transition:background .12s,color .12s;
}
#aw-custom-html .sb-general:hover,
#aw-custom-html .sb-general.active{ background:var(--paper2); color:var(--ink); font-weight:600; }
#aw-custom-html .sb-sint{ margin-top:auto; border-top:1px solid var(--rule); }
#aw-custom-html .sb-met{ margin-top:0; }


/* V17 · Refuerzo moderado de legibilidad */
/* Subtítulos y etiquetas de sección */
#aw-custom-html .ph-subtitle{font-size:15px;line-height:1.55}
#aw-custom-html .slbl{font-size:11px;line-height:1.4;letter-spacing:.075em}
#aw-custom-html .eje-head-meta{font-size:12.5px;line-height:1.5}
#aw-custom-html .cc-sub{font-size:13px;line-height:1.6}
#aw-custom-html .ficha-crumb{font-size:12px;line-height:1.5}
/* Tarjetas temáticas y bloques de portada */
#aw-custom-html .ec-label{font-size:15px;line-height:1.35}
#aw-custom-html .ec-desc{font-size:12.5px;line-height:1.6}
#aw-custom-html .ec-meta,
#aw-custom-html .ec-cta{font-size:12px}
#aw-custom-html .hl-eje-name{font-size:13px}
#aw-custom-html .hl-item-title{font-size:13px;line-height:1.4}
#aw-custom-html .hl-item-text{font-size:12.5px;line-height:1.6}
#aw-custom-html .pm-lab,
#aw-custom-html .ek-lab{font-size:12px;line-height:1.45}
/* Fichas y análisis detallado */
#aw-custom-html .ficha-title{font-size:22px;line-height:1.35}
#aw-custom-html .ft{font-size:14px;line-height:1.4}
#aw-custom-html .cc-title{font-size:15px;line-height:1.4}
#aw-custom-html .def-box h4{font-size:13px}
#aw-custom-html .def-box p,
#aw-custom-html .ficha-anal p{font-size:15px;line-height:1.78}
#aw-custom-html .def-field{font-size:12.5px;line-height:1.65}
#aw-custom-html .analysis-list{font-size:15px;line-height:1.78}
#aw-custom-html .nota-m,
#aw-custom-html .nota-blue,
#aw-custom-html .nota-amber{font-size:12.5px;line-height:1.7}
/* Más anchura útil para el contenido de ficha de esta maqueta */
#aw-custom-html .page{max-width:980px}
@media(max-width:760px){
  #aw-custom-html .ph-subtitle{font-size:14px}
  #aw-custom-html .slbl{font-size:10.5px}
  #aw-custom-html .ec-label{font-size:14.5px}
  #aw-custom-html .ec-desc,
#aw-custom-html .hl-item-text{font-size:12px}
  #aw-custom-html .ficha-title{font-size:21px}
  #aw-custom-html .ft{font-size:13px}
  #aw-custom-html .def-box p,
#aw-custom-html .ficha-anal p,
#aw-custom-html .analysis-list{font-size:14px}
}

/* ── AW Custom · compatibilidad con estilos de la plantilla Plone ── */
/* Los estilos por defecto de encabezados, listas y controles del tema no deben alterar el panel */
#aw-custom-html :is(h1,h2,h3,h4,h5,h6){font-family:inherit;font-weight:700;line-height:inherit;color:inherit}
#aw-custom-html .analysis-list{padding:0}
#aw-custom-html :is(button,input,select){line-height:normal}
