/* Observatory composition: plot, meaning and controls each own a flow region. */
#nucleo .observatorio{max-width:none;gap:0;background:#0b0e12;border:1px solid #65513866;border-radius:18px;padding:clamp(16px,3vw,32px);overflow:hidden}
#nucleo .observatorio [hidden]{display:none!important}
#nucleo .observatorio__titulo{font:400 clamp(24px,3vw,36px)/1.2 var(--fuente-titulo,serif);color:#f4e5cc;margin:0 0 20px;max-width:28ch}
#nucleo .observatorio__vistas{gap:0;border-bottom:1px solid #80653f66;margin-bottom:18px}
#nucleo .observatorio__vistas button{border:0;border-bottom:2px solid transparent;border-radius:0;background:none;color:#c4bcae;font-size:13px;padding:12px 16px}
#nucleo .observatorio__vistas button[aria-pressed=true]{color:#f3cb88;background:#d9a75d0d;border-bottom-color:#e9b96f}
#nucleo .observatorio__roles{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px}
#nucleo .observatorio__roles:empty{display:none}
#nucleo .observatorio__roles button{border:1px solid #78634488;border-radius:24px;padding:9px 18px;background:#171613;color:#ded2bc;text-transform:capitalize}
#nucleo .observatorio__roles button[aria-pressed=true]{background:#efc382;color:#18140f;border-color:#efc382}
#nucleo .observatorio__visor{height:clamp(340px,35vw,480px);border:0;border-radius:8px;background:radial-gradient(ellipse at 50% 45%,#b9853f15,transparent 65%),#090d11;box-shadow:none}
#nucleo .observatorio__visor::before{border:0;background:none}
#nucleo .observatorio__visor::after{display:none}
#nucleo .observatorio__leyenda{position:static;inset:auto;min-height:0;margin:16px 0;gap:10px;pointer-events:auto}
#nucleo .observatorio__leyenda span{border:0;padding:0;background:none;box-shadow:none;color:#b7ac99;font-size:11px;letter-spacing:.04em}
#nucleo .observatorio__leyenda span[hidden]{display:none!important}
#nucleo .escena__etiqueta{position:static;inset:auto;gap:8px;padding:18px 20px;margin:0 0 20px;background:#dab46d0a;border-left:2px solid #edbd7e;pointer-events:auto}
#nucleo .escena__etiqueta strong{font-size:clamp(18px,2vw,24px)}
#nucleo .escena__etiqueta small{font-size:13px;line-height:1.6}
#nucleo .observatorio__detalle{display:grid;grid-template-columns:minmax(140px,1fr) 3fr;gap:20px;margin:0;padding:20px 0;border-top:1px solid #75614066;min-height:0;font-size:14px;line-height:1.7}
#nucleo .observatorio__detalle strong{font-size:20px;font-weight:400;color:#f3cb88;overflow-wrap:anywhere}
#nucleo .observatorio__detalle span{color:#d1c9bb}
#nucleo .observatorio__fuente{border:0;padding:0;margin:0 0 16px;color:#b8b1a5;font-size:13px}
#nucleo .escena__herramientas{margin:0;padding:0;min-height:0}
#nucleo .escena__herramientas>summary{padding:14px 0;min-height:0}
#nucleo .escena__ayuda2d{padding:0;margin:0 0 14px}
#nucleo .observatorio__controles{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:end;gap:20px;padding:0;background:transparent;border:0}
#nucleo .observatorio__navegar{flex-wrap:nowrap}
#nucleo .observatorio__navegar button{background:#151511;border-color:#78634488;min-width:40px}
#nucleo .observatorio__selector{min-width:0}
#nucleo .observatorio select{background:#11120f;border-color:#78634488}
#nucleo .observatorio__rotulo{font-size:12px;padding:7px 10px;max-width:calc(100% - 16px);white-space:normal;text-align:center;line-height:1.3;border-color:#8c734a;background:#11120fee}
#nucleo .observatorio>.retrato__leyenda--estatica{display:none!important}
#nucleo .observatorio[data-modo="2d"] .observatorio__visor{height:auto;background:transparent;overflow:visible}
#nucleo .observatorio__alternativa .observatorio__mapa{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;justify-items:stretch;gap:14px;width:100%}
#nucleo .observatorio__responsabilidad{border:1px solid #78634466;background:linear-gradient(160deg,#bc91451a,transparent);border-radius:8px;min-width:0}
#nucleo .observatorio__responsabilidad summary{padding:20px;cursor:pointer;display:grid;gap:16px;list-style:none}
#nucleo .observatorio__responsabilidad summary::-webkit-details-marker{display:none}
#nucleo .observatorio__responsabilidad summary small{color:#ba9b68;font:12px var(--fuente-mono,monospace)}
#nucleo .observatorio__responsabilidad summary strong{font:400 26px/1.2 var(--fuente-titulo,serif);text-transform:capitalize;color:#f1d5a7}
#nucleo .observatorio__responsabilidad summary span{font-size:14px;line-height:1.6;color:#d1c9bb}
#nucleo .observatorio__responsabilidad summary::after{content:'+';color:#edbd7e;font-size:22px}
#nucleo .observatorio__responsabilidad[open] summary::after{content:'−'}
#nucleo .observatorio__responsabilidad ul{padding:0 20px 20px 36px;margin:0;color:#d1c9bb;font-size:14px;line-height:1.8}
#nucleo .observatorio button:focus-visible,#nucleo .observatorio summary:focus-visible{outline:2px solid #edbd7e;outline-offset:4px}
@media(max-width:700px){
 #nucleo .observatorio{padding:14px;border-radius:12px}
 #nucleo .observatorio__titulo{font-size:26px;margin-bottom:14px}
 #nucleo .observatorio__vistas{display:grid;grid-template-columns:1fr 1fr}
 #nucleo .observatorio__vistas button{padding:10px 7px;font-size:12px;text-align:left;overflow-wrap:anywhere}
 #nucleo .observatorio__roles{display:grid;grid-template-columns:1fr 1fr;gap:6px}
 #nucleo .observatorio__roles button{padding:8px 10px;text-align:left}
 #nucleo .observatorio__visor{height:320px}
 #nucleo .observatorio__detalle{grid-template-columns:1fr;gap:8px;padding:16px 0}
 #nucleo .observatorio__controles{grid-template-columns:1fr;gap:14px}
 #nucleo .observatorio__alternativa .observatorio__mapa{grid-template-columns:1fr;gap:10px}
 #nucleo .observatorio__responsabilidad summary{grid-template-columns:28px 1fr 16px;gap:8px;padding:16px;align-items:center}
 #nucleo .observatorio__responsabilidad summary strong{font-size:23px}
 #nucleo .observatorio__responsabilidad summary span{grid-column:2;grid-row:2}
 #nucleo .observatorio__responsabilidad summary::after{grid-column:3;grid-row:1/3}
 #nucleo .escena__etiqueta{padding:14px;margin-bottom:16px}
 #nucleo .observatorio__rotulo{font-size:11px}
}

@media(max-width:360px){
 #nucleo .observatorio__vistas{grid-template-columns:1fr}
 #nucleo .observatorio__vistas button{padding:9px 7px;overflow-wrap:normal}
}

/* The quality layer loads after the shared graph skin; keep the value path visible
   above the technical controls so the observatory still sells the outcome. */
#nucleo .observatorio__visor::after {
  content:'SEÑAL  →  CONTEXTO  →  CRITERIO  →  CONTROL HUMANO  →  RESULTADO';
  inset:auto;
  display:block;
  position:absolute;
  left:auto;
  right:clamp(18px,4vw,52px);
  max-width:min(560px,calc(100% - 36px));
  bottom:16px;
  z-index:2;
  padding:10px 14px;
  border:1px solid #edbd7e4a;
  border-radius:999px;
  box-shadow:none;
  background:#09111be8;
  color:#edbd7e;
  font:600 10px/1.3 var(--fuente-mono,monospace);
  letter-spacing:.08em;
  text-align:center;
  pointer-events:none;
}
@media(max-width:700px){
  #nucleo .observatorio__visor { height:360px; }
  #nucleo .observatorio__visor::after { left:auto; right:12px; bottom:10px; max-width:190px; padding:8px 9px; font-size:9px; line-height:1.45; letter-spacing:.035em; }
}

/* The public overview names the four categories; the technical tab owns leaves. */
#nucleo .observatorio[data-grupo="nucleo"] .observatorio__rotulo{font:400 18px/1.3 var(--fuente-titulo,serif);padding:8px 12px;border:0;border-bottom:1px solid #b99a64;border-radius:0;color:#f4d6a6;background:#0b0e12ed}
#nucleo .observatorio[data-grupo="nucleo"] .observatorio__rotulo[data-role="system"]{font:12px/1.3 var(--fuente-mono,monospace);color:#c5bcae;border-color:#665a48}
@media(max-width:700px){#nucleo .observatorio[data-grupo="nucleo"] .observatorio__rotulo{font-size:15px;padding:6px 8px}}
