/* =========================================================
   ALMANAQUE METEOROLÓGICO ANUAL · EL TIEMPO SEVILLA
   El blanco representa condiciones no significativas.
========================================================= */
/* El almanaque carga su propia hoja de estilos: definimos aquí el SVG común
   para que los iconos (incluido el calendario) no se rendericen como un bloque negro. */
.alm-page .resumen-icono{display:block;width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.alm-page{color:#334f60;font-size:14px}.alm-page .contenedor{overflow:visible}.alm-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:3px 0 16px;border-bottom:1px solid #e0e9ee}.alm-eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 7px;color:#6b8290;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.alm-eyebrow:before{content:"";width:18px;height:3px;border-radius:4px;background:#6ba4d0}.alm-head h1{display:flex;align-items:center;gap:10px;margin:0;color:#24465d;font-size:clamp(27px,2.7vw,37px);line-height:1.05;letter-spacing:-.025em}.alm-title-icon{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;color:#5c8fab}.alm-title-icon .resumen-icono{width:clamp(25px,2.3vw,31px);height:clamp(25px,2.3vw,31px)}.alm-periodo{margin:7px 0 0;color:#657c89;font-size:16px;font-weight:600}.alm-estado{display:flex;flex-direction:column;align-items:flex-end;gap:6px;color:#748995}.alm-chip{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #d7e5ec;border-radius:8px;background:#f7fbfd;color:#45687d;font-size:12px;font-weight:700}.alm-chip .resumen-icono{width:16px;height:16px}.alm-chip-curso{border-color:#e4b35c;background:#fff8e7;color:#9b6a12}.alm-estado small{font-size:11px}
.alm-tools{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:14px 0 14px}.alm-tabs{display:flex;flex-wrap:wrap;gap:8px}.alm-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 15px;border:1px solid #d7e4eb;border-radius:999px;background:#fff;color:#567080;text-decoration:none;font-size:13px;font-weight:700;transition:.18s ease}.alm-tabs a:hover{border-color:#8fb9d6;color:#315d77}.alm-tabs a.activo{border-color:#6ba4d0;background:#6ba4d0;color:#fff}.alm-tabs a.alm-tab-almanaque .resumen-icono{width:14px;height:14px;margin-right:6px;flex:0 0 auto}
.alm-selector{display:flex;align-items:center;gap:7px}.alm-selector select,.alm-selector button,.alm-nav,.alm-anio-actual{height:34px;border:1px solid #d7e4eb;border-radius:7px;background:#fff;color:#49677a;font:700 12px "Segoe UI",Arial,sans-serif}.alm-selector select{padding:0 28px 0 10px}.alm-selector button{padding:0 12px;background:#426d89;color:#fff;border-color:#426d89;cursor:pointer}.alm-nav{display:inline-flex;width:34px;align-items:center;justify-content:center;text-decoration:none;font-size:18px}.alm-nav.off{opacity:.35;pointer-events:none}.alm-anio-actual{display:inline-flex;align-items:center;justify-content:center;padding:0 12px;text-decoration:none;white-space:nowrap}.alm-anio-actual:hover,.alm-anio-actual:focus-visible{border-color:#8eb4c9;background:#edf6fa;color:#315f79;outline:none}.alm-anio-actual.activo{background:#eef2f4;border-color:#d9e1e5;color:#9aa7ae;pointer-events:none}
.alm-entradilla{width:100%;max-width:none;margin:15px 0 0;color:#647b88;font-size:15px;line-height:1.66;text-align:justify;text-justify:inter-word}.alm-entradilla-mobile{display:none}
.alm-controls{margin-bottom:16px;border:1px solid #dfe8ed;border-radius:10px;background:#fff;overflow:hidden}.alm-controls-head{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;padding:11px 13px;border-bottom:1px solid #e6edf1;background:#f8fbfc}.alm-controls-head>div{display:flex;align-items:baseline;gap:9px}.alm-label{color:#788d98;font-size:10px;font-weight:800;letter-spacing:.055em;text-transform:uppercase}.alm-controls-head strong{color:#31566d;font-size:14px}.alm-controls-head small{color:#8798a1;font-size:10px}.alm-variable-buttons{display:flex;flex-wrap:wrap;gap:7px;padding:11px 12px 9px}.alm-variable-buttons button{min-height:31px;padding:6px 11px;border:1px solid #cfdee6;border-radius:7px;background:#fff;color:#526f80;font:700 11px "Segoe UI",Arial,sans-serif;cursor:pointer;transition:.15s ease}.alm-variable-buttons button:hover,.alm-variable-buttons button:focus-visible{border-color:#8fb8cf;background:#f0f7fa;color:#315d77;outline:none}.alm-variable-buttons button.activo{border-color:#547f99;background:#547f99;color:#fff;box-shadow:0 1px 2px rgba(40,78,102,.12)}
.alm-legend{display:flex;flex-wrap:wrap;gap:7px 13px;align-items:center;min-height:37px;padding:8px 12px;border-top:1px solid #edf2f4;background:#fbfdfe;color:#647b88;font-size:10px}.alm-legend-items{display:contents}.alm-legend-item{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.alm-legend-swatch,.alm-swatch{display:inline-block;width:15px;height:15px;border:1px solid rgba(48,72,84,.18);border-radius:3px;background:#fff;box-sizing:border-box}.alm-legend-note{margin-left:auto;color:#8798a1;font-style:italic}
.alm-calendar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 12px}.alm-month{min-width:0;border:1px solid #dce7ec;border-radius:9px;background:#fff;overflow:hidden;box-shadow:0 2px 8px rgba(49,78,96,.035)}.alm-month header{padding:8px 10px;border-bottom:1px solid #dce6eb;background:linear-gradient(180deg,#e9f1f5 0%,#f4f8fa 100%);text-align:center}.alm-month h2{margin:0;color:#375a6e;font-size:12px;letter-spacing:.04em;text-transform:uppercase}.alm-weekdays,.alm-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.alm-weekdays{border-bottom:1px solid #e6edf1;background:#fbfcfd}.alm-weekdays span{padding:5px 2px;color:#7b8f99;font-size:9px;font-weight:800;text-align:center}.alm-days{gap:2px;padding:5px}.alm-day{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;min-width:0;border:1px solid #e2e8eb;border-radius:3px;background:#fff;color:#334f60;font:700 10px "Segoe UI",Arial,sans-serif;line-height:1;box-sizing:border-box;text-decoration:none}.alm-day-data{cursor:pointer;transition:transform .1s ease,border-color .1s ease,box-shadow .1s ease}.alm-day-data:hover,.alm-day-data:focus-visible{z-index:2;border-color:#526f80;box-shadow:0 0 0 2px rgba(82,111,128,.15);outline:none;transform:translateY(-1px)}.alm-day-empty{border-color:transparent;background:transparent}.alm-day-future{border-color:#eef1f3;background:#f4f6f7;color:#b4bdc2}.alm-day-missing{border-color:#d8dfe3;color:#98a5ac;background:repeating-linear-gradient(135deg,#f8fafb 0,#f8fafb 4px,#e9eef1 4px,#e9eef1 6px)}.alm-day-today:after{content:"";position:absolute;right:2px;bottom:2px;width:4px;height:4px;border-radius:50%;background:#347da8;box-shadow:0 0 0 1px rgba(255,255,255,.85)}.alm-day-today{border-color:#6da1bf}
/* Temperatura: frío / calor. */
.alm-color-cold-2{background:#5a89ad!important;border-color:#4b789b!important;color:#fff!important}.alm-color-cold-1{background:#d9eaf5!important;border-color:#bdd8e9!important;color:#315a74!important}.alm-color-heat-0{background:#fff3bf!important;border-color:#efdf9c!important;color:#705f20!important}.alm-color-heat-1{background:#f4d66f!important;border-color:#e3c252!important;color:#665116!important}.alm-color-heat-2{background:#eea252!important;border-color:#dd8d3e!important;color:#5f3b12!important}.alm-color-heat-3{background:#d9564f!important;border-color:#c64640!important;color:#fff!important}.alm-color-heat-4{background:#9f3038!important;border-color:#88262e!important;color:#fff!important}.alm-color-heat-5{background:#702b49!important;border-color:#5e213c!important;color:#fff!important}
/* Precipitación: intensidad diaria acumulada. */
.alm-color-rain-1{background:#e1f0f8!important;border-color:#c8e2f0!important;color:#3b6e8b!important}.alm-color-rain-2{background:#b8dced!important;border-color:#9bcce3!important;color:#2f617d!important}.alm-color-rain-3{background:#78b8da!important;border-color:#62a6cc!important;color:#183f57!important}.alm-color-rain-4{background:#3f82ad!important;border-color:#337297!important;color:#fff!important}.alm-color-rain-5{background:#1f536f!important;border-color:#17445e!important;color:#fff!important}
/* Viento: de significativo a excepcional. */
.alm-color-wind-1{background:#f8dcda!important;border-color:#efc4c0!important;color:#7c3f3a!important}.alm-color-wind-2{background:#eeaaa3!important;border-color:#e28f87!important;color:#6d2e2a!important}.alm-color-wind-3{background:#d96860!important;border-color:#c8564f!important;color:#fff!important}.alm-color-wind-4{background:#94343a!important;border-color:#7e292f!important;color:#fff!important}
/* Horas de sol: solo se destacan jornadas muy apagadas o muy soleadas. */
.alm-color-sun-low{background:#e5edf1!important;border-color:#cedbe2!important;color:#526d7b!important}.alm-color-sun-1{background:#fff4c7!important;border-color:#eedf9f!important;color:#776223!important}.alm-color-sun-2{background:#f6d96c!important;border-color:#e5c650!important;color:#6d5410!important}.alm-color-sun-3{background:#e7b640!important;border-color:#d29f29!important;color:#5e4307!important}
.alm-status-legend{display:flex;flex-wrap:wrap;gap:8px 16px;margin:2px 0 18px;padding:8px 2px;color:#7c8e98;font-size:10px}.alm-status-legend span{display:inline-flex;align-items:center;gap:6px}.alm-swatch-neutral{background:#fff}.alm-swatch-future{border-color:#eef1f3;background:#f4f6f7}.alm-swatch-missing{background:repeating-linear-gradient(135deg,#f8fafb 0,#f8fafb 4px,#e9eef1 4px,#e9eef1 6px)}.alm-swatch-today{position:relative;border-color:#6da1bf;background:#fff}.alm-swatch-today:after{content:"";position:absolute;right:2px;bottom:2px;width:4px;height:4px;border-radius:50%;background:#347da8}
.alm-no-data{padding:25px;border:1px solid #dfe8ed;border-radius:9px;background:#fbfdfe;color:#607986}.alm-source{display:flex;justify-content:space-between;gap:16px;padding:11px 0 4px;border-top:1px solid #e3eaee;color:#81929b;font-size:10px}.alm-source strong{color:#5a7483}
.alm-tooltip{position:fixed;z-index:9999;display:none;width:235px;padding:9px 10px;border:1px solid #ccdbe3;border-radius:8px;background:rgba(255,255,255,.98);box-shadow:0 6px 20px rgba(29,53,67,.18);color:#425f70;font-size:10.5px;line-height:1.35;pointer-events:none}.alm-tooltip.visible{display:block}.alm-tooltip strong{display:block;margin-bottom:6px;color:#294c62;font-size:11px}.alm-tooltip dl{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;margin:0}.alm-tooltip dt{color:#758993}.alm-tooltip dd{margin:0;color:#29495c;font-weight:700;text-align:right}.alm-tooltip .alm-tip-active{color:#244d66}.alm-tooltip .alm-tip-current{margin-top:6px;padding-top:5px;border-top:1px solid #e7edef;color:#9a6c17;font-size:9.5px}
@media(max-width:1000px){.alm-calendar{grid-template-columns:repeat(2,minmax(0,1fr))}.alm-tools{align-items:flex-start;flex-direction:column}.alm-selector{flex-wrap:wrap}}
@media(max-width:760px){.alm-head{align-items:flex-start;flex-direction:column;gap:12px}.alm-estado{align-items:flex-start}.alm-tools{margin:11px 0 14px}.alm-tabs{display:none}.alm-selector{width:100%;justify-content:center}.alm-selector .alm-nav,.alm-selector .alm-nav.off{display:none}.alm-entradilla{font-size:13px;line-height:1.55;text-align:justify;text-justify:inter-word}.alm-entradilla-desktop{display:none}.alm-entradilla-mobile{display:block}.alm-controls-head{align-items:flex-start;flex-direction:column;gap:3px}.alm-controls-head>div{display:block}.alm-controls-head strong{display:block;margin-top:3px}.alm-controls-head small{display:none}.alm-variable-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.alm-variable-buttons button{padding:6px 7px;font-size:10px}.alm-legend{display:block;padding:9px 10px}.alm-legend-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(var(--alm-legend-rows),auto);grid-auto-flow:column;gap:7px 10px;align-items:center}.alm-legend-item{display:grid;grid-template-columns:15px minmax(0,1fr);align-items:center;column-gap:6px;white-space:normal;line-height:1.15}.alm-legend-note{display:block;width:auto;margin:8px 0 0;text-align:right}.alm-calendar{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.alm-month{max-width:none;width:100%;margin:0}.alm-month header{padding:7px 5px}.alm-month h2{font-size:10px}.alm-weekdays span{padding:4px 1px;font-size:8px}.alm-days{gap:1px;padding:3px}.alm-day{font-size:9px;border-radius:3px}.alm-source{flex-direction:column;gap:3px}.alm-tooltip{width:min(235px,calc(100vw - 24px))}}
@media(max-width:420px){.alm-selector{width:100%}.alm-selector select{flex:1;min-width:90px}.alm-variable-buttons{grid-template-columns:1fr 1fr}.alm-legend{font-size:9px;gap:6px 8px}.alm-legend-swatch,.alm-swatch{width:13px;height:13px}.alm-legend-item{grid-template-columns:13px minmax(0,1fr);column-gap:5px}.alm-calendar{gap:6px}.alm-month header{padding:6px 4px}.alm-month h2{font-size:9px}.alm-weekdays span{font-size:7.5px}.alm-days{gap:1px;padding:2px}.alm-day{font-size:8.5px}.alm-status-legend{display:grid;grid-template-columns:1fr}}

/* Humedad media: seco (arena) → normal (blanco) → húmedo (verde). */
.alm-color-hum-dry-2{background:#c9ad73!important;border-color:#b99b5f!important;color:#503f20!important}
.alm-color-hum-dry-1{background:#eadcb9!important;border-color:#dccb9f!important;color:#665735!important}
.alm-color-hum-wet-1{background:#dcebdc!important;border-color:#c4ddc5!important;color:#426744!important}
.alm-color-hum-wet-2{background:#8fbe91!important;border-color:#78aa7b!important;color:#244f28!important}
.alm-color-hum-wet-3{background:#3f7448!important;border-color:#32623b!important;color:#fff!important}

/* Almanaque móvil: el primer toque abre el detalle y la navegación es voluntaria. */
@media (max-width:760px){
  .alm-tooltip{pointer-events:auto}
  .alm-tooltip .alm-tip-details{display:flex;align-items:center;justify-content:center;gap:6px;min-height:36px;margin-top:9px;padding:6px 12px;box-sizing:border-box;border:1px solid #c0d8e6;border-radius:6px;background:#edf6fa;color:#315f79;font-size:11px;font-weight:700;line-height:1.2;text-decoration:none;touch-action:manipulation}
  .alm-tooltip .alm-tip-details span{font-size:16px;line-height:1}
  .alm-tooltip .alm-tip-details:focus-visible,.alm-tooltip .alm-tip-details:active{background:#dcecf5;border-color:#8cb6cf;outline:2px solid #7ba9c3;outline-offset:2px}
}
