.calendario-anual{--fill-text:var(--on-fill)}:root[data-theme=dark] .calendario-anual{--fill-text:#121316}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .calendario-anual{--fill-text:#121316}}.calendario-anual .year{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:1.5rem 1.75rem;padding:1.25rem 1.4rem 1.4rem;display:grid}@media (width>=1100px){.calendario-anual .year{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=900px){.calendario-anual .year{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.calendario-anual .year{grid-template-columns:1fr;gap:1.25rem;padding:1rem}}.calendario-anual .month{animation:.45s cubic-bezier(.2,.7,.2,1) both reveal;animation-delay:calc(var(--m) * 45ms)}.calendario-anual h3{background:var(--nacional);color:var(--fill-text);letter-spacing:.08em;text-transform:uppercase;-webkit-print-color-adjust:exact;print-color-adjust:exact;border-radius:4px;justify-content:space-between;align-items:baseline;gap:.5rem;margin:0 0 .4rem;padding:.3rem .6rem;font-size:.8rem;font-weight:800;display:flex}.calendario-anual .month-anio{margin-left:.35rem;margin-right:auto;font-weight:600}.calendario-anual .month-count{letter-spacing:0;text-transform:none;font-size:.7rem;font-weight:600}.calendario-anual .grid{font-variant-numeric:tabular-nums;text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;font-size:.82rem;display:grid}.calendario-anual .dow{color:var(--muted);padding-bottom:2px;font-size:.66rem;font-weight:700}.calendario-anual .dow-domingo{color:var(--domingo)}.calendario-anual .day{width:100%;max-width:2.3rem;height:1.65rem;color:var(--text);border-radius:4px;justify-self:center;place-items:center;display:grid}@media (width<=560px){.calendario-anual .day{height:1.85rem}}.calendario-anual .finde{color:var(--muted)}.calendario-anual .domingo{color:var(--domingo);font-weight:600}.calendario-anual .hoy{box-shadow:inset 0 0 0 2px var(--ink);font-weight:800}.calendario-anual .festivo{font:inherit;color:var(--fill-text);background:var(--c);cursor:pointer;-webkit-print-color-adjust:exact;print-color-adjust:exact;animation:.4s cubic-bezier(.3,1.6,.5,1) both ca-pop;animation-delay:calc(var(--m) * 45ms + .26s);border:0;padding:0;font-weight:800;transition:transform .15s,background-color .15s,color .15s}.calendario-anual .festivo.hoy{box-shadow:inset 0 0 0 2px var(--surface), 0 0 0 2px var(--ink)}.calendario-anual .festivo:hover,.calendario-anual .festivo:focus-visible,.calendario-anual .festivo.activo{box-shadow:0 0 0 2px var(--ink);outline:none;transform:scale(1.15)}@keyframes ca-pop{0%{opacity:0;transform:scale(.2)}}.calendario-anual .f-nacional{--c:var(--nacional);--c-soft:var(--nacional-soft)}.calendario-anual .f-autonomico{--c:var(--autonomico);--c-soft:var(--autonomico-soft)}.calendario-anual .f-local{--c:var(--local);--c-soft:var(--local-soft)}.calendario-anual .f-vacaciones{--c:var(--accent);--c-soft:var(--accent-soft)}.calendario-anual .f-festivo{--c:var(--nacional);--c-soft:var(--nacional-soft)}.calendario-anual .f-nolectivo{--c:var(--local);--c-soft:var(--local-soft)}.calendario-anual .f-cierre{--c:var(--ink);--c-soft:var(--surface-2)}.calendario-anual button.elegible{font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.calendario-anual button.elegible:hover,.calendario-anual button.elegible:focus-visible{box-shadow:inset 0 0 0 2px var(--accent);outline:none}.calendario-anual .month-list{border-top:1px solid var(--border);gap:2px;margin:.7rem 0 0;padding:.6rem 0 0;font-size:.85rem;line-height:1.3;list-style:none;display:grid}.calendario-anual .month-list li{border-radius:5px;grid-template-columns:minmax(1.6rem,max-content) minmax(0,1fr) auto;align-items:baseline;gap:.5rem;margin:0 -.35rem;padding:.2rem .35rem;transition:background-color .15s;display:grid}.calendario-anual .month-list li.activo{background:var(--c-soft);animation:.5s ca-senal}@keyframes ca-senal{40%{transform:translate(4px)}}.calendario-anual .ml-dia{color:var(--c);font-variant-numeric:tabular-nums;font-size:1rem;font-weight:900;font-stretch:80%}.calendario-anual .ml-nombre{font-weight:600}.calendario-anual .ml-prov{color:var(--muted);font-weight:400}.calendario-anual .ml-tipo{color:var(--c);font-size:.72rem;font-weight:700}.calendario-anual .month-none{border-top:1px solid var(--border);color:var(--muted);margin:.7rem 0 0;padding-top:.6rem;font-size:.8rem}.calendario-anual .legend{color:var(--muted);flex-wrap:wrap;gap:.5rem 1.1rem;margin:.9rem 0 0;padding:0;font-size:.85rem;list-style:none;display:flex}.calendario-anual .legend li{align-items:center;gap:.4rem;display:inline-flex}.calendario-anual .sw{border-radius:3px;width:14px;height:14px}.calendario-anual .sw[class*=f-]{background:var(--c);-webkit-print-color-adjust:exact;print-color-adjust:exact}.calendario-anual .sw-finde{width:auto;height:auto;color:var(--domingo);font-size:.8rem;font-weight:700}@media (prefers-reduced-motion:reduce){.calendario-anual .month-list li.activo{animation:none}}@media print{.calendario-anual .year{border:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:2mm;padding:0}.calendario-anual .month{break-inside:avoid;padding:1.5mm 2mm}.calendario-anual h3{margin-bottom:.5mm;padding:.3mm 1.5mm;font-size:.7rem}.calendario-anual .grid{gap:1px;font-size:.75rem}.calendario-anual .day{height:4.2mm}.calendario-anual .month-list,.calendario-anual .month-none{display:none}.calendario-anual .legend{margin-top:1.5mm}}
