/* Viejo Viento · Parte de las 9 */
@import url('https://fonts.googleapis.com/css2?family=Big+Shoulders+Display:wght@600;800&family=IBM+Plex+Mono:wght@400;500&family=Spectral:ital,wght@0,400;0,600;1,400&display=swap');
.vv{--ol:#2f3a1f;--ol2:#3d4a2a;--pa:#f1eadb;--pa2:#f8f3e7;--oc:#e0b25a;--oc2:#5a4310;--li:#b9b196;
  background:var(--pa);color:#2a2f1c;font-family:'Spectral',serif;font-size:18px;line-height:1.5}
.vv *{box-sizing:border-box}
.vv a{color:var(--oc2)}
.vv .mono{font-family:'IBM Plex Mono',monospace;letter-spacing:2px;text-transform:uppercase;font-size:14px}
.vv .bs{font-family:'Big Shoulders Display',sans-serif;font-weight:800;text-transform:uppercase;line-height:.95;margin:0}
.vv .wrap{max-width:1120px;margin:0 auto;padding:48px 24px 64px;display:flex;flex-direction:column;gap:36px}
.vv .barra{background:var(--ol);color:var(--pa)}
.vv .barra>div{max-width:1120px;margin:0 auto;padding:14px 24px;display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:space-between;align-items:center}
.vv .barra a{color:var(--pa);padding:12px 0;text-decoration:none}
.vv .cab{display:flex;flex-wrap:wrap;gap:16px 40px;justify-content:space-between;align-items:flex-end;border-bottom:3px solid var(--ol);padding-bottom:20px}
.vv .hoy{display:flex;flex-wrap:wrap;gap:24px}
.vv .temp{flex:1 1 300px;background:var(--ol);color:var(--pa);padding:32px;display:flex;flex-direction:column;justify-content:space-between;gap:20px}
.vv .temp .mono{color:var(--oc)}
.vv .grilla{flex:999 1 520px;min-width:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:1px;background:var(--li);border:1px solid var(--li)}
.vv .dato{background:var(--pa2);padding:18px 20px;display:flex;flex-direction:column;gap:6px}
.vv .dato.dest{background:#ecd9a8}
.vv .dato .mono{font-size:12.5px;color:var(--oc2)}
.vv .dato .v{font-family:'Big Shoulders Display',sans-serif;font-weight:800;font-size:2.5rem;line-height:1}
.vv .dato .v small{font-size:1.05rem;font-weight:600}
.vv .regional{display:flex;flex-wrap:wrap;gap:12px 40px;border-top:1px solid var(--li);border-bottom:1px solid var(--li);padding:22px 0}
.vv .regional p{flex:1 1 420px;margin:0;font-size:23px;line-height:1.35;font-style:italic}
.vv .tabla{overflow-x:auto;border:1px solid var(--li)}
.vv table{width:100%;min-width:780px;border-collapse:collapse;font-family:'IBM Plex Mono',monospace;font-size:15px;background:var(--pa2)}
.vv th{background:var(--ol);color:var(--pa);text-align:left;font-size:12.5px;letter-spacing:1.5px;text-transform:uppercase;font-weight:500}
.vv th,.vv td{padding:13px 15px}
.vv tbody tr{border-top:1px solid #d6cfb8}
.vv .btn{font-family:'IBM Plex Mono',monospace;font-size:15px;letter-spacing:1px;text-transform:uppercase;background:var(--ol);color:var(--pa);border:0;padding:16px 22px;cursor:pointer;text-decoration:none;display:inline-block}
.vv .btn.oc{background:var(--oc);color:var(--ol)}
.vv .btn.sec{background:transparent;color:var(--ol);border:2px solid var(--ol)}
/* formulario de carga */
.vv form.carga{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;align-items:end}
.vv form.carga label{display:flex;flex-direction:column;gap:6px;font-family:'IBM Plex Mono',monospace;font-size:13px;letter-spacing:1px;text-transform:uppercase;color:var(--oc2)}
.vv form.carga .ancho{grid-column:1/-1}
.vv input,.vv select,.vv textarea{font:500 20px 'IBM Plex Mono',monospace;padding:14px 12px;border:2px solid var(--ol);background:#fff;color:#1c2112;width:100%;border-radius:0;min-height:54px}
.vv textarea{font:400 18px 'Spectral',serif;min-height:90px}
.vv .caja{padding:18px 20px;border-left:6px solid;background:var(--pa2)}
.vv .caja.err{border-color:#9a2b1b}.vv .caja.av{border-color:#b7791f}.vv .caja.ok{border-color:#3d6b2a}
.vv .caja ul{margin:8px 0 0;padding-left:20px}
.vv canvas.hist{width:100%;max-width:320px;height:auto;border:1px solid var(--li)}

[hidden]{display:none!important}
