@import url("tema.css");
:root{color-scheme:dark}*{box-sizing:border-box}
body{margin:0;min-height:100vh;font-family:system-ui,"Segoe UI",sans-serif;color:var(--hv-texto);background:radial-gradient(ellipse at 50% -10%,var(--hv-azul-noche) 0,var(--hv-fondo) 55%,var(--hv-fondo) 100%)}
body::before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.07;background:repeating-linear-gradient(45deg,var(--hv-laton) 0 2px,transparent 2px 22px),repeating-linear-gradient(-45deg,var(--hv-laton) 0 2px,transparent 2px 22px)}
.uv{position:relative;max-width:1180px;margin:0 auto;padding:28px 20px 60px}
.uv-cab{text-align:center;margin-bottom:28px}.uv-volver{position:absolute;left:20px;top:22px;color:var(--hv-laton);text-decoration:none;font-size:14px}
.uv-sub{letter-spacing:.2em;text-transform:uppercase;font-size:12px;color:var(--hv-borde);margin:34px 0 6px}
h1{font-size:clamp(30px,5vw,52px);margin:0;letter-spacing:.04em}h1 span{color:var(--hv-laton);text-shadow:0 0 24px color-mix(in srgb,var(--hv-laton) 40.0%,transparent)}
.uv-quien{color:#8f8a7e;font-size:14px}
.uv-mapa{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
.uv-mini{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}
.uv-nodo{position:relative;display:block;padding:20px 18px 16px;border-radius:14px;text-decoration:none;color:inherit;background:linear-gradient(160deg,var(--hv-panel),var(--hv-fondo));border:1px solid color-mix(in srgb,var(--c) 35%,transparent);box-shadow:inset 0 0 30px color-mix(in srgb,var(--c) 8%,transparent);transition:transform .18s,box-shadow .18s,border-color .18s;clip-path:polygon(0 10px,10px 0,calc(100% - 10px) 0,100% 10px,100% calc(100% - 10px),calc(100% - 10px) 100%,10px 100%,0 calc(100% - 10px))}
.uv-nodo:hover,.uv-nodo:focus-visible{transform:translateY(-3px);border-color:var(--c);box-shadow:0 0 26px color-mix(in srgb,var(--c) 35%,transparent),inset 0 0 30px color-mix(in srgb,var(--c) 14%,transparent);outline:none}
.uv-nodo b{font-size:26px;color:var(--c);text-shadow:0 0 14px var(--c)}
.uv-nodo h2{font-size:18px;margin:8px 0 4px}.uv-nodo p{margin:0;color:var(--hv-secundario);font-size:14px}.uv-nodo small{display:block;margin-top:10px;color:#6f6a60;font-size:12px}
.uv-led{position:absolute;top:14px;right:14px;width:9px;height:9px;border-radius:50%;background:#555}
.uv-led.ok{background:#4ee07a;box-shadow:0 0 8px #4ee07a}.uv-led.mal{background:#e0484e;box-shadow:0 0 8px #e0484e}
.uv-tit{margin:34px 0 14px;color:var(--hv-laton);letter-spacing:.12em;text-transform:uppercase;font-size:14px}
@media (prefers-reduced-motion:reduce){.uv-nodo{transition:none}}

/* colores por sistema (sin estilos en línea por la CSP) */
.uv-nodo.c-d9b66b{--c:var(--hv-laton)}
.uv-nodo.c-57d1c9{--c:#c1a367}
.uv-nodo.c-dc143c{--c:#dc143c}
.uv-nodo.c-9b7bff{--c:#9b7bff}
.uv-nodo.c-4fa3ff{--c:#ccb382}
.uv-nodo.c-7ee081{--c:#7ee081}
.uv-nodo.c-ff8a3d{--c:var(--hv-laton)}

/* Enlaces de las áreas con el color del tema (antes azul/morado del navegador) */
#uv-areas a{color:var(--hv-acento);text-underline-offset:3px}#uv-areas a:hover{color:var(--hv-texto)}
