:root{--accent:#a3336e;--accent-dark:#ec8fc0}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--accent:var(--accent-dark)}}
:root[data-theme="dark"]{--accent:var(--accent-dark)}

.rotulo{font:600 14px/1.2 var(--font-title);text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.aviso-unidad{margin:0;max-width:72ch;font-size:15px;border-left:3px solid var(--accent);padding:2px 0 2px 12px}
.site-header h1 a{color:inherit;text-decoration:none}
.wrap{max-width:1240px;margin:0 auto;padding:0 16px}
section.bloque-home{margin:28px 0}
h2.sec{font:700 26px/1.05 var(--font-title);text-transform:uppercase;letter-spacing:.03em;margin:0 0 4px}
p.sec-sub{margin:0 0 12px;color:var(--muted);font-size:15px}

/* Search */
.buscador{position:relative;margin:22px 0 6px;max-width:720px}
.buscador input{width:100%;box-sizing:border-box;font:400 19px/1.2 var(--font-text);padding:14px 16px 14px 46px;
  background:var(--paper);color:var(--ink);border:1.5px solid var(--ink);border-radius:0;box-shadow:var(--shadow)}
.buscador input:focus{outline:3px solid var(--accent);outline-offset:1px}
.buscador svg{position:absolute;left:15px;top:50%;transform:translateY(-50%);width:20px;height:20px;stroke:var(--muted);fill:none;stroke-width:2}
.resultados{position:absolute;z-index:1000;left:0;right:0;top:calc(100% + 4px);background:var(--paper);border:1px solid var(--line);
  box-shadow:var(--shadow);max-height:min(420px,60vh);overflow:auto;margin:0;padding:4px 0;list-style:none}
.resultados[hidden]{display:none}
.resultados li a{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:baseline;padding:8px 14px;color:var(--ink);text-decoration:none}
.resultados li a:hover,.resultados li a[aria-selected="true"]{background:var(--ground)}
.resultados .tipo{font:600 11.5px/1 var(--font-title);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);width:72px}
.resultados .extra{font:12.5px var(--font-data);color:var(--muted)}
.ejemplos{font-size:14.5px;color:var(--muted);margin:0}
.ejemplos a{color:inherit}

/* Home grid */
.dos{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}
.lista{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.item{background:var(--paper);border:1px solid var(--line);padding:10px 12px;display:grid;gap:4px}
.item.urgente{border-left:4px solid var(--accent)}
.item .t{font-size:15.5px;line-height:1.35}
.item .t a{color:var(--ink)}
.meta{font:12.5px/1.4 var(--font-data);color:var(--muted)}
.meta a{color:inherit}
.dias{font:600 13px/1 var(--font-data);color:var(--accent);white-space:nowrap}
.tag{display:inline-block;font:600 11.5px/1 var(--font-title);text-transform:uppercase;letter-spacing:.1em;padding:3px 6px 2px;
  border:1px solid var(--line);color:var(--muted);margin-right:6px;vertical-align:1px}
.tag.prec-municipio{border-style:dashed}
.ver-mas{display:inline-block;margin-top:10px;font:600 14px var(--font-title);text-transform:uppercase;letter-spacing:.08em}
.semana-tema{margin:0 0 12px}
.semana-tema h3{font:600 15px/1.2 var(--font-title);text-transform:uppercase;letter-spacing:.08em;margin:0 0 6px;color:var(--muted)}

/* The map of everything: tiles on the left, the layers as a legend with switches on the right */
.mapa-host{margin:16px 0 4px}
.mapa-todo{display:grid;grid-template-columns:minmax(0,1fr) 290px;border:1px solid var(--line);background:var(--paper)}
.lienzo{height:440px}
.mapa-host.grande .lienzo{height:580px}
.capas{border-left:1px solid var(--line);padding:12px 14px;display:grid;gap:8px;align-content:start}
.capas h3{margin:0;font:600 15px/1.2 var(--font-title);text-transform:uppercase;letter-spacing:.08em}
.capas ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.capas .meta{margin:4px 0 0}
.capa label,.capa.base{display:grid;grid-template-columns:18px 20px minmax(0,1fr) auto;gap:1px 8px;align-items:center;padding:4px 0;font-size:14.5px;line-height:1.25}
.capa label{cursor:pointer}
.capa input{margin:0;width:16px;height:16px;accent-color:var(--ink)}
.capa .n{font:13px var(--font-data);color:var(--muted);font-variant-numeric:tabular-nums}
.capa small{grid-column:3/-1;color:var(--muted);font-size:12.5px}
.capa.no-cubre label{cursor:default}
.capa.no-cubre svg{filter:grayscale(1);opacity:.4}
.capa.no-cubre .nombre{color:var(--muted)}
.marca{background:none;border:0}
.marca svg{display:block;overflow:visible}
.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:var(--paper);color:var(--ink)}
.leaflet-popup-content{margin:10px 12px;font:14px/1.4 var(--font-text)}
.pop ul{margin:6px 0 4px;padding-left:16px;display:grid;gap:5px}
.pop .meta{display:block}
.pop .tag{margin-bottom:3px}

/* Communities */
.comunidades{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}
.comunidades a{display:grid;gap:3px;height:100%;box-sizing:border-box;padding:10px 12px;background:var(--paper);border:1px solid var(--line);color:var(--ink);text-decoration:none}
.comunidades a:hover{border-color:var(--accent)}
.comunidades b{font:700 19px/1.05 var(--font-title);text-transform:uppercase;letter-spacing:.02em}

/* Tables */
.leyenda{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px;color:var(--muted);padding:6px 0}
.leyenda i{display:inline-block;width:14px;height:10px;margin-right:5px;vertical-align:-1px;border:1px solid var(--accent);background:var(--accent)}
.controles{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;font-size:15px;margin-bottom:8px}
.controles select{font:15px var(--font-text);background:var(--paper);color:var(--ink);border:1px solid var(--line);padding:4px 6px}
.ranking{max-height:560px;overflow:auto;border:1px solid var(--line);background:var(--paper)}
.ranking.tabla{max-height:none}
.ranking td.meta{font-size:12.5px}
.ranking table{width:100%;border-collapse:collapse;font-size:14.5px}
.ranking th,.ranking td{padding:7px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:baseline}
.ranking th{position:sticky;top:0;background:var(--paper);font:600 12.5px var(--font-title);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.ranking td.n{text-align:right;font-family:var(--font-data);font-variant-numeric:tabular-nums}
.ranking tr:hover td{background:var(--ground)}
.ranking a{color:var(--ink)}

/* Place view */
.migas{font:600 14px var(--font-title);text-transform:uppercase;letter-spacing:.08em;margin:18px 0 6px}
.migas a{color:var(--muted)}
.lugar-cab h2{font:700 clamp(32px,4.6vw,52px)/.95 var(--font-title);text-transform:uppercase;margin:0}
.lugar-cab .codigo{font:13px var(--font-data);color:var(--muted)}
.municipios{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 0;padding:0;list-style:none}
.municipios a{font-size:14px;padding:3px 8px;border:1px solid var(--line);background:var(--paper);color:var(--ink);text-decoration:none}
.municipios a:hover{border-color:var(--accent)}
.lugar{display:grid;grid-template-columns:minmax(0,3fr) minmax(280px,2fr);gap:28px;margin:18px 0 32px}
.lugar>aside{display:grid;gap:18px;align-content:start}
.panel{background:var(--paper);border:1px solid var(--line);padding:14px}
.luz-graf{min-height:120px;margin:4px 0 2px}
.luz svg{display:block;width:100%;height:auto;touch-action:pan-y}
.luz .linea{fill:none;stroke:var(--ink);stroke-width:2;stroke-linejoin:round}
.luz .pt{fill:var(--paper);stroke:var(--ink);stroke-width:2}
.luz .pt.on{fill:var(--ink)}
.luz .ref{stroke:var(--muted);stroke-width:1;stroke-dasharray:4 3}
.luz .eje-l{stroke:var(--line);stroke-width:1}
.luz .cruz{stroke:var(--muted);stroke-width:1}
.luz .eje{fill:var(--muted);font:11px var(--font-data)}
.luz .col{fill:transparent;cursor:crosshair}
.luz .luz-dato{margin:0 0 6px;font-family:var(--font-data)}
.luz details{margin:0 0 6px}
.luz-tabla{border-collapse:collapse;font:12px var(--font-data);margin-top:4px}
.luz-tabla th,.luz-tabla td{padding:1px 10px 1px 0;text-align:left}
.luz-tabla .n{text-align:right}
.luz .fuente{margin:0}
.panel h3{margin:0 0 8px;font:600 16px/1.2 var(--font-title);text-transform:uppercase;letter-spacing:.08em}
.actuar{border:1.5px solid var(--accent);background:var(--paper);padding:14px 16px;margin-bottom:22px}
.actuar h3{margin:0 0 4px;font:700 20px/1.1 var(--font-title);text-transform:uppercase;color:var(--accent)}
.actuar p{margin:0 0 10px;font-size:15px}
.cronologia h3.mes{font:600 14px/1 var(--font-title);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);
  margin:18px 0 8px;padding-bottom:4px;border-bottom:1px solid var(--line)}
.fotos{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:4px}
.fotos figure{margin:0}
.fotos img{width:100%;aspect-ratio:1;object-fit:cover;display:block;border:1px solid var(--line);background:var(--ground)}
.fotos figcaption{font:12px var(--font-data);color:var(--muted)}
.fotos.grandes{margin:0 0 14px;gap:10px}
.aviso-cab{margin:18px 0 0}
.aviso-cab h2{font:700 clamp(24px,3.2vw,36px)/1.08 var(--font-title);margin:8px 0 0;max-width:62ch}
.aviso-mapa{height:340px;border:1px solid var(--line)}
.significa-txt{color:var(--muted);font-size:15px;max-width:62ch}
dl.datos{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:0}
dl.datos dt{color:var(--muted);font-size:14px}
dl.datos dd{margin:0;font-size:15px}
.lista-simple{margin:0;padding-left:18px}
.lista-simple li{margin:2px 0}
a.fuera::after{content:" ↗"}
.significa summary{cursor:pointer;font-size:13.5px;color:var(--muted)}
.significa p{margin:4px 0 0;font-size:14px}
.vacio{color:var(--muted);font-size:15px;margin:0}
.hilo{list-style:none;margin:0;padding:0;display:grid;gap:10px;font-size:15px}
.hilo li{display:grid;gap:2px}
.cadena{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:baseline}
.cadena span+span::before{content:"→";color:var(--muted);margin-right:8px}
.rss{font-size:14.5px}
.rss code{font:12.5px var(--font-data);word-break:break-all}

.leaflet-container{background:var(--paper);font:13px var(--font-text)}
.method{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;border-top:1.5px solid var(--ink);margin-top:24px}

@media (max-width:900px){
  .dos,.lugar,.method,.mapa-todo{grid-template-columns:1fr}
  .lienzo,.mapa-host.grande .lienzo{height:58vh}
  .capas{border-left:0;border-top:1px solid var(--line)}
  .ranking{max-height:70vh}
}
@media (max-width:480px){
  table.params th{white-space:normal}  /* the longest names would push the page sideways on a phone */
}

/* Away from home: the place is the page, the national lede and figures stay on the home page. */
.en-lugar .site-header .lede, .en-lugar .site-header .aviso-unidad, .en-lugar .site-header .figures { display: none; }

/* Birds of a site */
section.aves{margin:28px 0}
.aves-grado{font:600 14px/1.2 var(--font-title);text-transform:uppercase;letter-spacing:.08em;margin:16px 0 6px;display:inline}
.aves details{margin:16px 0 0}
.aves details summary{cursor:pointer}
.aves > .aves-grado{display:block}
.aves-lista{list-style:none;margin:6px 0 0;padding:0;columns:2 260px;column-gap:24px}
.aves-lista li{break-inside:avoid;padding:3px 0;border-bottom:1px solid var(--line);font-size:15px;line-height:1.35}
.aves-lista i.meta{font-style:italic}
.aves .fuente{margin:14px 0 0}
