@font-face{font-family:Google Sans Flex;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/fonts/Google_Sans_Flex/GoogleSansFlex-VariableFont_GRAD,ROND,opsz,slnt,wdth,wght.ttf) format("truetype-variations"),url(/fonts/Google_Sans_Flex/GoogleSansFlex-VariableFont_GRAD,ROND,opsz,slnt,wdth,wght.ttf) format("truetype")}:root{--brand-blue: #3291fb;--brand-blue-strong: #0a72ea;--brand-blue-soft: #8ab4ff;--brand-dark-navy: #0f2236;--wm-font: "Google Sans Flex", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--wm-name-vfs: "ROND" 100, "wght" 700;--wm-tld-vfs: "ROND" 100, "wght" 500;--wm-letter-spacing: -.012em;--wm-mark-radius-ratio: .175;--nav-surface: var(--brand-blue);--nav-on-surface: #ffffff;--nav-on-surface-muted: rgba(255, 255, 255, .78);--nav-on-surface-strong: #ffffff;--nav-border: rgba(255, 255, 255, .18);--nav-tld-color: rgba(255, 255, 255, .85);--nav-pill-bg: rgba(255, 255, 255, .2);--nav-pill-fg: #ffffff;--nav-mark-size: 1.62rem;--nav-mark-size-compact: 1.52rem;--nav-chip-radius: 8px;--nav-chip-padding-y: .34rem;--nav-chip-padding-x: .5rem;--nav-chip-bg: transparent;--nav-chip-bg-hover: rgba(255, 255, 255, .12);--nav-cta-bg: #ffffff;--nav-cta-fg: var(--brand-blue-strong);--nav-cta-border: transparent;--flag-w: 18px;--flag-h: 11px;--flag-radius: 1.5px;--ar-badge-bg: #ffffff;--ar-badge-fg: var(--brand-blue);--content-fg: #1a1a1a;--content-muted: #6b7280;--content-subtle: #9ca3af;--content-card: #ffffff;--content-border: #e6e8ec;--content-border-strong: #d1d5db;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--layout-width-narrow: 760px;--layout-width-content: 840px;--layout-width-wide: 920px;--layout-pad-block-start: var(--space-8);--layout-pad-block-end: 5rem;--layout-pad-block-start-compact: 1.3rem;--layout-pad-block-end-compact: var(--space-16);--ui-radius-control: 8px;--ui-radius-card: 12px;--ui-radius-pill: 999px;--type-xs: .72rem;--type-sm: .82rem;--type-body-sm: .9rem;--type-body: 1rem;--type-lede: 1.06rem;--type-title: 2.05rem;--type-verdict: 1.55rem;--code-bg: #f3f4f6;--code-fg: #0f172a;--codeblock-bg: #0f2236;--codeblock-fg: #e6edf3;--codeblock-muted: #8aa6c4;--codeblock-accent: var(--brand-blue-soft);--btn-primary-bg: var(--brand-blue-strong);--btn-primary-fg: #ffffff;--btn-primary-bg-hover: #0961c8;--btn-secondary-bg: #ffffff;--btn-secondary-fg: var(--brand-blue-strong);--btn-secondary-border: var(--content-border);--btn-secondary-bg-hover: #f0f6ff;--btn-ghost-fg: var(--brand-blue-strong);--btn-ghost-bg-hover: rgba(10, 114, 234, .08)}@media(prefers-color-scheme:dark){:root{--nav-surface: var(--brand-dark-navy);--nav-on-surface: #f2f2f4;--nav-on-surface-muted: #8aa6c4;--nav-on-surface-strong: #d6e2f0;--nav-border: rgba(255, 255, 255, .08);--nav-tld-color: var(--brand-blue-soft);--nav-pill-bg: rgba(138, 180, 255, .18);--nav-pill-fg: var(--brand-blue-soft);--nav-chip-bg-hover: rgba(255, 255, 255, .06);--ar-badge-bg: var(--brand-blue);--ar-badge-fg: #ffffff;--nav-cta-bg: var(--brand-blue);--nav-cta-fg: #ffffff;--nav-cta-border: transparent;--content-fg: #f2f2f4;--content-muted: #a3a3ad;--content-subtle: #6c6c78;--content-card: #14141a;--content-border: #2c2c34;--content-border-strong: #3a3a44;--code-bg: #1c1c24;--code-fg: #e6e6ea;--codeblock-bg: #0a1a2b;--btn-primary-bg-hover: #2a82f8;--btn-secondary-bg: #14141a;--btn-secondary-fg: var(--brand-blue-soft);--btn-secondary-bg-hover: rgba(138, 180, 255, .1);--btn-ghost-fg: var(--brand-blue-soft);--btn-ghost-bg-hover: rgba(138, 180, 255, .1)}}*,*:before,*:after{box-sizing:border-box;margin:0}[hidden]{display:none!important}html{scrollbar-gutter:stable}:root{--bg: #fafafa;--surface: #fff;--fg: #1a1a1a;--muted: #777;--accent: #003580;--accent-light: #e8f0fe;--button-bg: #003580;--button-fg: #fff;--oof: #6f42c1;--green: #1f7a4d;--green-light: #dff8ea;--green-strip: #24a66a;--green-action-bg: #f4fcf7;--green-action-border: #b8e7cc;--orange: #a15c00;--orange-light: #fff1d6;--orange-strip: #d99000;--orange-action-bg: #fff9ed;--orange-action-border: #f2d49b;--red: #cf222e;--border: #e0e0e0;--radius: 6px;--radius-sm: 4px;--gap: 1rem;color-scheme:light}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--fg);line-height:1.5;padding:0 var(--gap)}a{color:var(--accent)}:where(a,button,summary,input,select,textarea):focus-visible{outline:2px solid var(--accent);outline-offset:2px}main{--page-content-width: 640px;max-width:var(--page-content-width);margin:0 auto;padding-bottom:3rem}main[data-page=year]{--page-content-width: 840px}#main-content:focus{outline:none}.skip-link{position:fixed;z-index:100;inset-block-start:.75rem;inset-inline-start:.75rem;transform:translateY(-150%);min-height:2.5rem;display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:var(--radius);padding:.35rem .7rem;background:var(--surface);color:var(--fg);font-size:.88rem;font-weight:750;text-decoration:none;box-shadow:0 8px 24px #00000029}.skip-link:focus,.skip-link:focus-visible{transform:translateY(0)}.site-links a:hover{color:var(--nav-on-surface)}.site-cta:hover{border-color:color-mix(in srgb,var(--nav-cta-fg) 18%,var(--nav-cta-bg));background:color-mix(in srgb,var(--nav-cta-bg) 88%,var(--nav-cta-fg))}.site-language-picker summary:hover,.site-language-picker[open] summary,.site-menu summary:hover,.site-menu[open] summary{background:var(--nav-chip-bg-hover);border-color:var(--nav-border)}.site-language-picker summary:focus,.site-menu summary:focus{outline:none}.site-language-picker summary:focus-visible,.site-menu summary:focus-visible{outline:2px solid rgba(255,255,255,.82);outline-offset:2px}.site-menu-panel a:hover{background:color-mix(in oklab,var(--brand-blue) 9%,transparent);color:var(--brand-blue-strong)}.site-language-menu{position:absolute;z-index:40;top:calc(100% + .45rem);inset-inline-end:0;width:max-content;min-width:10rem;max-width:min(16rem,calc(100vw - 1.5rem));display:grid;gap:.5rem;padding:.4rem;background:var(--content-card);color:var(--content-fg);border:1px solid var(--content-border);border-radius:14px;box-shadow:0 12px 32px #0f172a24,0 2px 6px #0f172a0f;font-family:var(--wm-font)}.site-language-menu__list{display:grid;gap:.1rem}.site-language-menu__item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.65rem;padding:.5rem .7rem;border-radius:10px;color:var(--content-fg);text-decoration:none;font-size:.88rem;font-variation-settings:"ROND" 100,"wght" 550;letter-spacing:-.005em;transition:background-color .12s ease,color .12s ease}.site-language-menu__item:hover{background:color-mix(in oklab,var(--brand-blue) 8%,transparent);color:var(--brand-blue-strong)}.site-language-menu__item:focus-visible{outline:2px solid var(--brand-blue);outline-offset:-2px}.site-language-menu__item[aria-current=page]{background:color-mix(in oklab,var(--brand-blue) 12%,transparent);color:var(--brand-blue-strong);font-variation-settings:"ROND" 100,"wght" 650}.site-language-menu__name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-language-menu__check{width:.85rem;height:.85rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.site-language-menu .lang-glyph--ayn{background:var(--brand-blue-strong);color:#fff}.date-format-picker{display:grid;gap:.35rem;padding:.65rem .7rem .55rem;border-top:1px solid var(--content-border);margin-top:.1rem}.date-format-picker label{color:var(--content-muted);font-family:var(--wm-font);font-variation-settings:"ROND" 100,"wght" 650;font-size:.68rem;letter-spacing:.06em;text-transform:uppercase}.date-format-picker__field{position:relative;display:inline-flex;align-items:center}.date-format-picker select{appearance:none;-webkit-appearance:none;box-sizing:border-box;width:8rem;padding:.5rem 2.1rem .5rem .85rem;border:1px solid var(--content-border);border-radius:10px;background:var(--content-card);color:var(--content-fg);font-family:var(--wm-font);font-variation-settings:"ROND" 100,"wght" 550;font-size:.84rem;letter-spacing:-.005em;cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease}.date-format-picker select:hover{border-color:color-mix(in oklab,var(--brand-blue) 38%,var(--content-border))}.date-format-picker select:focus-visible{outline:none;border-color:var(--brand-blue);box-shadow:0 0 0 3px color-mix(in oklab,var(--brand-blue) 22%,transparent)}.date-format-picker__caret{position:absolute;right:.8rem;width:.7rem;height:.7rem;fill:none;stroke:var(--content-muted);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}@media(min-width:761px){.site-header{position:sticky;top:0}}.app-topbar{padding:1.35rem 0 1.1rem;margin-bottom:.75rem;display:grid;gap:.75rem 1rem;align-items:start}.topbar-heading{min-width:0}.app-title{font-size:1.25rem;line-height:1.2;font-weight:700}.header-date{font-size:.85rem;color:var(--muted);font-weight:400}.year-nav .year-nav-button{background:none;border:1px solid var(--border);border-radius:var(--radius);min-height:2.5rem;cursor:pointer;font:inherit;font-size:.85rem;color:var(--fg)}.icon{flex:0 0 auto;display:inline-block;background-color:currentColor;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}.icon{width:1rem;height:1rem}.icon-arrow-right{-webkit-mask-image:url(/assets/arrow-right.svg);mask-image:url(/assets/arrow-right.svg)}:dir(rtl) .icon-arrow-right{transform:scaleX(-1)}.icon-calendar-plus{-webkit-mask-image:url(/assets/calendar-plus.svg);mask-image:url(/assets/calendar-plus.svg)}.icon-backpack{-webkit-mask-image:url(/assets/backpack.svg);mask-image:url(/assets/backpack.svg)}.icon-clock-countdown{-webkit-mask-image:url(/assets/clock-countdown.svg);mask-image:url(/assets/clock-countdown.svg)}.icon-database{-webkit-mask-image:url(/assets/database.svg);mask-image:url(/assets/database.svg)}.icon-link{-webkit-mask-image:url(/assets/link.svg);mask-image:url(/assets/link.svg)}.icon-navigation-arrow{-webkit-mask-image:url(/assets/navigation-arrow.svg);mask-image:url(/assets/navigation-arrow.svg)}.icon-download-simple{-webkit-mask-image:url(/assets/download-simple.svg);mask-image:url(/assets/download-simple.svg)}.icon-arrow-square-out{-webkit-mask-image:url(/assets/arrow-square-out.svg);mask-image:url(/assets/arrow-square-out.svg)}.icon-copy{-webkit-mask-image:url(/assets/copy.svg);mask-image:url(/assets/copy.svg)}.year-nav .year-nav-button:hover{background:var(--accent-light)}.topbar-controls{grid-column:1 / -1;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.5rem .75rem}.year-nav{display:inline-flex;align-items:stretch;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;width:max-content}.year-nav .year-nav-button{border:0;border-radius:0;width:2.5rem;min-height:2.5rem;font-size:1rem;display:flex;align-items:center;justify-content:center;color:var(--fg);text-decoration:none}.year-nav .year-nav-current{display:flex;align-items:center;justify-content:center;min-width:4.25rem;padding:0 .75rem;border-inline-start:1px solid var(--border);border-inline-end:1px solid var(--border);font-size:1.25rem;font-weight:700;line-height:1}.year-nav-disabled{color:var(--muted);cursor:default;opacity:.45}.year-nav-disabled:hover{background:none}.topbar-count{color:var(--muted);font-size:.9rem;min-width:0}.topbar-count strong{color:var(--fg);font-weight:650}.topbar-calendar{justify-self:end}.topbar-calendar-action{min-height:2.5rem;white-space:nowrap}.topbar-export-popover{width:min(23rem,calc(100vw - 2rem));inset-block:5rem auto;inset-inline:auto max(1rem,calc((100vw - var(--page-content-width, 640px)) / 2));margin:0;border:1px solid var(--border);border-radius:var(--radius);padding:.85rem;background:var(--surface);color:var(--fg);box-shadow:0 12px 36px #0000003d}.topbar-export-popover::backdrop{background:transparent}.no-native-popover [popover]{display:none}.no-native-popover [popover].is-open{display:block;position:fixed;z-index:80;max-height:calc(100dvh - 2rem);overflow:auto}.no-native-popover .mobile-action-popover.is-open{inset:50% auto auto 50%;transform:translate(-50%,-50%)}.no-native-popover .topbar-export-popover.is-open{transform:none}.topbar-export-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.65rem}.topbar-export-title{font-weight:700}.topbar-export-summary,.topbar-export-note{color:var(--muted);font-size:.86rem;line-height:1.45}.topbar-export-summary{margin-top:.2rem}.topbar-export-note{margin-bottom:.75rem}.topbar-export-submit{width:100%;min-height:2.75rem;justify-content:center}.btn{display:inline-flex;align-items:center;gap:.35rem;background:var(--button-bg);color:var(--button-fg);border:none;border-radius:var(--radius);padding:.35rem .75rem;cursor:pointer;font-size:.8rem;font-weight:500;line-height:1.4;text-decoration:none;font-family:inherit}.btn:hover{opacity:.85}.btn:disabled{opacity:.45;cursor:not-allowed}.btn:disabled:hover{opacity:.45}.mobile-holidays{display:none}.btn-sm{background:none;color:var(--accent);border:1px solid var(--border);padding:.15rem .4rem;font-size:.75rem;border-radius:var(--radius);cursor:pointer;display:inline-flex;align-items:center;gap:.2rem;line-height:1.4;height:1.6rem;box-sizing:border-box;text-decoration:none;font-family:inherit}.btn-sm:hover{background:var(--accent-light)}.calendar-status-oof{color:var(--oof);font-weight:700;white-space:nowrap}.latin-token{direction:ltr;unicode-bidi:isolate}table{width:100%;border-collapse:collapse}thead th{text-align:start;font-size:.75rem;text-transform:uppercase;color:var(--muted);padding:.4rem .5rem;border-bottom:2px solid var(--border);letter-spacing:.03em}tbody td{padding:.5rem;border-bottom:1px solid var(--border);font-size:.9rem;vertical-align:middle}tbody tr:last-child td{border-bottom:none}td.date-cell{font-variant-numeric:tabular-nums;white-space:nowrap}td.date-cell .date-compact{display:inline-flex;align-items:baseline;gap:.45rem}td.date-cell .date-dow{display:inline}td.date-cell .date-num{display:inline;text-align:end}td.date-cell .date-wk{display:block;font-size:.75rem;color:var(--muted)}tbody tr{border-inline-start:3px solid transparent}tbody tr.day-off{border-inline-start-color:var(--green-strip)}tbody tr.observed{border-inline-start-color:var(--orange-strip)}tbody tr.past td{color:#bbb}tbody tr.past{border-inline-start-color:transparent!important}tbody tr.past .badge{background:#eee;color:#bbb}tbody tr.past .btn-sm{color:#bbb;border-color:#eee}tbody tr.past .holiday-alt{color:#ccc}tbody tr.day-off:not(.past) .holiday-name{font-weight:600}.holiday-name{font-weight:500;text-decoration:none;color:var(--fg)}.holiday-name:hover{color:var(--accent)}.holiday-alt{font-size:.8rem;color:var(--muted);display:block}.holiday-badge{margin-inline-start:.4rem;vertical-align:middle}.badge{display:inline-block;font-size:.7rem;font-weight:600;padding:.1rem .4rem;border-radius:3px;white-space:nowrap}.badge-dayoff{background:var(--green-light);color:var(--green)}.badge-observed{background:var(--orange-light);color:var(--orange)}.badge-weekend{background:#f0f0f0;color:var(--muted)}.hint{position:relative;display:inline-flex;align-items:center;justify-content:center;width:1.1em;height:1.1em;border-radius:50%;background:var(--orange-light);color:var(--orange);font-size:.65rem;font-weight:700;cursor:help;margin-inline-start:.25rem;vertical-align:middle;border:none;padding:0;line-height:1}.hint .hint-text{display:none;position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:var(--fg);color:var(--bg);font-weight:400;font-size:.8rem;padding:.5rem .75rem;border-radius:var(--radius);width:max-content;max-width:260px;white-space:normal;margin-bottom:.4rem;z-index:20;text-align:start;box-shadow:0 2px 8px #00000026}.hint:hover .hint-text,.hint:focus .hint-text{display:block}td.actions-cell,th.actions-header{white-space:nowrap;text-align:end}.mobile-holiday-list{border-top:1px solid var(--border)}.mobile-past-holidays{margin:.9rem 0 1.1rem}.mobile-past-toggle{width:100%;min-height:2.75rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:0;padding:0 .75rem;color:var(--muted);background:none;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;font:inherit;font-size:.85rem;font-weight:700;text-align:start}.mobile-past-toggle-icon{width:2rem;height:2rem;display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius);color:var(--fg)}.mobile-past-list[hidden]{display:none}.desktop-past-toggle-row{border-inline-start-color:transparent}.desktop-past-toggle-row td{padding:.4rem .5rem}.desktop-past-toggle{width:100%;min-height:2.25rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:0 .65rem;color:var(--muted);background:none;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;font:inherit;font-size:.82rem;font-weight:700;text-align:start}.desktop-past-toggle-icon{width:1.65rem;height:1.65rem;display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius);color:var(--fg)}tbody.desktop-past-list[hidden]{display:none}.mobile-holiday-card{border-bottom:1px solid var(--border);border-inline-start:3px solid transparent;padding-block:.8rem .85rem;padding-inline:.75rem .25rem}.mobile-holiday-card.day-off{border-inline-start-color:var(--green-strip)}.mobile-holiday-card.observed{border-inline-start-color:var(--orange-strip)}.mobile-holiday-card.past{border-inline-start-color:transparent;color:#bbb}.mobile-holiday-card.past .badge{background:#eee;color:#bbb}.mobile-holiday-card.past .holiday-alt,.mobile-holiday-card.past .mobile-holiday-date-meta,.mobile-holiday-card.past .mobile-observed-summary{color:#ccc}.mobile-holiday-card.past .btn-sm{color:var(--muted);border-color:var(--border)}.mobile-holiday-main{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.8rem}.mobile-holiday-title-line{display:flex;align-items:center;flex-wrap:wrap;gap:.3rem;min-width:0}.mobile-holiday-title-line .holiday-badge{display:inline-flex;align-items:center;margin-inline-start:0;line-height:1.1}.mobile-holiday-title{font-weight:600;overflow-wrap:break-word;word-break:normal;hyphens:auto;color:var(--fg);text-decoration:none}.mobile-holiday-title:hover{color:var(--accent)}.mobile-holiday-date{min-width:7rem;text-align:end;font-variant-numeric:tabular-nums}.mobile-holiday-weekday{display:block;font-weight:600}.mobile-holiday-date-num{display:block;font-weight:700}.mobile-holiday-date-meta,.mobile-observed-summary{display:block;font-size:.78rem;color:var(--muted)}.mobile-observed-row{margin-top:.25rem}.mobile-observed-trigger{display:inline-flex;align-items:center;gap:.35rem;max-width:100%;min-height:2rem;padding:0;border:0;border-radius:var(--radius);background:none;color:var(--muted);cursor:pointer;font:inherit;font-size:.78rem;text-align:start}.mobile-observed-trigger:hover{color:var(--fg)}.mobile-observed-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mobile-observed-summary{line-height:1.25;min-width:0}.mobile-info-dot{width:1.25rem;height:1.25rem;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--orange-light);color:var(--orange);font-size:.72rem;font-weight:800;line-height:1}.mobile-action-toggle{width:100%;min-height:2.75rem;margin-top:.75rem;justify-content:center}.mobile-holiday-card.day-off:not(.past) .mobile-action-toggle{color:var(--green);border-color:var(--green-action-border);background:var(--green-action-bg)}.mobile-holiday-card.day-off:not(.past) .mobile-action-toggle:hover{background:var(--green-light)}.mobile-holiday-card.observed:not(.past) .mobile-action-toggle{color:var(--orange);border-color:var(--orange-action-border);background:var(--orange-action-bg)}.mobile-holiday-card.observed:not(.past) .mobile-action-toggle:hover{background:var(--orange-light)}.mobile-action-popover{width:min(24rem,calc(100vw - 2rem));margin:auto;border:1px solid var(--border);border-radius:var(--radius);padding:.85rem;background:var(--surface);color:var(--fg);box-shadow:0 12px 36px #00000040}.mobile-action-popover::backdrop{background:#00000052}.mobile-action-popover-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.mobile-action-popover-title{font-weight:700}.mobile-action-popover-meta{color:var(--muted);font-size:.82rem;margin-top:.15rem}.mobile-popover-close{flex:0 0 auto;width:2.75rem;height:2.75rem;display:inline-flex;align-items:center;justify-content:center;background:none;color:var(--fg);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;font:inherit}.mobile-action-popover-actions{display:flex;flex-wrap:wrap;gap:.5rem}.mobile-action-popover-actions .btn-sm{min-height:2.75rem;flex:1 1 7rem;justify-content:center;font-size:.85rem;height:auto;min-width:0;flex-wrap:wrap;row-gap:0}.mobile-info-popover{max-width:min(21rem,calc(100vw - 2rem))}.mobile-info-popover p{color:var(--muted);font-size:.9rem;line-height:1.45}.section-title{font-size:1.1rem;font-weight:700;margin:2rem 0 .75rem;padding-top:1rem;border-top:2px solid var(--border)}.section-description{font-size:.85rem;color:var(--muted);margin-bottom:.75rem}.bridge-list{display:flex;flex-direction:column;gap:.75rem;max-width:40rem}.bridge-card{border:1px solid var(--border);border-radius:var(--radius);padding:.75rem 1rem;background:var(--surface)}.bridge-card .headline{font-weight:600;font-size:.95rem}.bridge-card .detail{font-size:.85rem;color:var(--muted);margin-top:.15rem}.bridge-card .period-badge{display:inline-block;font-size:.7rem;font-weight:600;padding:.1rem .4rem;border-radius:3px}.period-summer{background:#fff8c5;color:#9a6700}.period-winter{background:#e8f0fe;color:#003580}footer{max-width:640px;margin:0 auto;padding:1.5rem 0;border-top:1px solid var(--border);font-size:.8rem;color:var(--muted);text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.45rem}.footer-links{display:flex;align-items:center;justify-content:center;gap:.75rem;flex-wrap:wrap}.footer-languages{display:flex;align-items:center;justify-content:center;gap:.6rem;flex-wrap:wrap}.footer-languages a[aria-current=page]{color:var(--muted);text-decoration:none;font-weight:650}footer .footer-copyright{color:var(--muted)}footer a{color:var(--fg);text-underline-offset:.16em}.visually-hidden{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.seo-page{padding-top:1.35rem}.gateway-page{min-height:min(28rem,calc(100dvh - 12rem));display:grid;align-content:center;gap:1.25rem}.gateway-hero{display:grid;gap:.5rem}.gateway-hero h1{font-size:1.8rem;line-height:1.12}.gateway-hero p{color:var(--muted);font-size:1rem}.gateway-language-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.gateway-language-list a{min-height:3rem;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--fg);text-decoration:none;font-weight:720}.gateway-language-list a:hover{border-color:var(--accent);background:var(--accent-light);color:var(--accent)}.landing-dashboard{max-width:920px;padding-top:.5rem;padding-bottom:1rem}.landing-hero{display:grid;grid-template-columns:minmax(0,1fr);gap:.75rem;margin:.5rem 0 1.5rem}@media(min-width:740px){.landing-hero{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:stretch}}.landing-hero-day{position:relative;min-width:0;padding:1rem 1.1rem 1.05rem;background:var(--surface);border:1px solid var(--border);border-radius:calc(var(--radius) + 4px)}.landing-hero-day-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 .25rem;color:var(--muted);font-size:.86rem;margin-bottom:.55rem;font-variant-numeric:tabular-nums}.landing-hero-day-label{color:var(--muted);font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.landing-hero-day-headline{font-weight:720;letter-spacing:-.015em;color:var(--fg);margin-bottom:.35rem}.landing-hero-day-headline-link{color:inherit;text-decoration:none}.landing-hero-day-headline-link:hover{text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:.18em}.landing-hero-day-today .landing-hero-day-headline{font-size:clamp(1.5rem,1.15rem + 1.4vw,2.05rem);line-height:1.12}.landing-hero-day-tomorrow .landing-hero-day-headline{font-size:clamp(1.15rem,1rem + .5vw,1.35rem);line-height:1.18}.landing-hero-day-note{color:var(--fg);font-size:.96rem;line-height:1.4;margin-bottom:.3rem;font-weight:600}.landing-hero-day-school,.landing-hero-day-next{color:var(--muted);font-size:.88rem;line-height:1.4}.landing-hero-day-school-link{color:inherit;text-decoration-color:color-mix(in srgb,currentColor 45%,transparent);text-decoration-thickness:1px;text-underline-offset:.2em}.landing-hero-day-school-link:hover{color:var(--accent);text-decoration-color:currentColor}.landing-hero-day-day-off{background:var(--green-light);border-color:color-mix(in srgb,var(--green-strip) 30%,var(--border))}.landing-hero-day-day-off .landing-hero-day-headline,.landing-hero-day-day-off .landing-hero-day-note{color:var(--green)}.landing-hero-day-observed{background:var(--orange-light);border-color:color-mix(in srgb,var(--orange-strip) 25%,var(--border))}.landing-hero-day-observed .landing-hero-day-headline,.landing-hero-day-observed .landing-hero-day-note{color:var(--orange)}.landing-hero-day-weekend .landing-hero-day-headline{color:var(--fg)}.landing-pair{display:grid;grid-template-columns:minmax(0,1fr);gap:.85rem;margin:0 0 1.5rem}.landing-pair-calendar,.landing-pair-upcoming{min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:calc(var(--radius) + 3px)}.landing-pair-calendar{padding:.55rem .65rem .7rem}.landing-pair-upcoming{padding:.85rem 1rem .95rem;display:flex;flex-direction:column}.landing-pair-head{display:flex;align-items:baseline;justify-content:space-between;gap:.6rem;margin-bottom:.55rem}.landing-pair-title{font-size:.78rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:0}.landing-pair-cta{color:var(--accent);text-decoration:none;font-size:.85rem;font-weight:650;white-space:nowrap;display:inline-flex;align-items:center;gap:.25rem}.landing-pair-cta:hover{text-decoration:underline}.landing-pair-cta .icon{width:.85rem;height:.85rem}.landing-pair-empty{color:var(--muted);font-size:.94rem;margin:0}.landing-calendar-widget{width:100%}.landing-calendar-controls{display:grid;grid-template-columns:2.1rem minmax(8.2rem,9.4rem) auto 2.1rem;align-items:center;gap:.2rem;margin-bottom:.5rem;padding:.1rem}.landing-month-button{width:2.1rem;min-height:2.1rem;display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--fg);font-size:1.1rem;border-radius:var(--radius);cursor:pointer}.landing-month-button:hover{background:var(--accent-light);color:var(--accent)}.landing-month-button:disabled{opacity:.35;cursor:default}.landing-month-button:disabled:hover{background:transparent;color:var(--fg)}.landing-calendar-control{min-height:2.1rem;border:0;background:transparent;color:var(--fg);font:inherit;font-weight:700;font-size:.97rem;padding:0 .4rem;text-align:center;text-align-last:center;border-radius:var(--radius);cursor:pointer;transition:background-color .12s ease,box-shadow .12s ease,color .12s ease}.landing-calendar-control:hover{color:var(--accent);background:var(--accent-light);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 24%,transparent)}.landing-calendar-control:focus-visible,.landing-month-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.landing-month-select{text-align:end;padding-inline-end:.2rem;text-transform:capitalize}.landing-year-select{text-align:start;padding-inline-start:.2rem;font-variant-numeric:tabular-nums}.landing-month-viewport{overflow:visible}.landing-month{padding:0;border:0;background:transparent}.landing-month-calendar{--landing-week-column-width: 1.85rem;position:relative;width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;display:grid;gap:.08rem}.landing-month-calendar:before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:var(--landing-week-column-width);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--border) 20%,transparent)}.landing-month-calendar thead,.landing-month-calendar tbody{position:relative;display:grid;gap:.08rem}.landing-month-calendar tr{display:grid;grid-template-columns:var(--landing-week-column-width) repeat(7,minmax(0,1fr));gap:.08rem;border-inline-start:0}.landing-month-calendar th{border:0;padding:.18rem 0;color:var(--muted);font-size:.66rem;font-weight:700;text-align:center;text-transform:none;letter-spacing:0}.landing-calendar-weekcol-head,.landing-calendar-weekcol{display:flex;align-items:center;justify-content:center;color:color-mix(in srgb,var(--muted) 88%,var(--fg));background:transparent;border-radius:0;font-variant-numeric:tabular-nums;text-align:center;padding:0}.landing-calendar-weekcol-head{min-height:1.35rem;font-size:.64rem;font-weight:760;transform:translateY(.01rem)}.landing-calendar-weekcol{min-height:2rem;font-size:.7rem;font-weight:680;align-self:center}.landing-month-calendar td{position:relative;z-index:0;border:0;padding:0;height:2rem;vertical-align:middle;font-size:.84rem;text-align:center;font-variant-numeric:tabular-nums}.landing-month-calendar td:hover,.landing-month-calendar td:focus-within{z-index:8}.landing-calendar-box{position:relative;width:100%;min-height:2rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius);color:var(--fg)}.landing-calendar-day:hover .landing-calendar-box,.landing-calendar-day:focus-within .landing-calendar-box{background:var(--accent-light);color:var(--accent)}.landing-calendar-day.outside .landing-calendar-box{color:var(--muted);opacity:.38}.landing-calendar-day.today .landing-calendar-box{outline:2px solid var(--accent);outline-offset:-2px;font-weight:740}.landing-calendar-day.day-off .landing-calendar-box{background:var(--accent-light);color:var(--accent);font-weight:720}.landing-calendar-day.observed .landing-calendar-box{background:color-mix(in srgb,var(--border) 35%,var(--surface));color:var(--fg);font-weight:650}.landing-calendar-day.official-weekend .landing-calendar-box{background:color-mix(in srgb,var(--border) 20%,var(--surface));color:var(--muted);font-weight:650}.landing-calendar-mark{position:absolute;inset-block-end:.18rem;inset-inline-start:50%;width:.22rem;height:.22rem;border-radius:999px;background:currentColor;transform:translate(-50%)}.landing-calendar-popover{position:absolute;inset-block-end:calc(100% + .42rem);left:50%;z-index:12;min-width:8.6rem;width:max-content;max-width:min(18rem,82vw);display:grid;gap:.12rem;padding:.42rem .5rem .48rem;color:var(--fg);background:var(--surface);border:1px solid color-mix(in srgb,var(--accent) 16%,var(--border));border-radius:var(--radius);box-shadow:0 12px 28px #00000029;line-height:1.2;text-align:start;white-space:normal;pointer-events:none;opacity:0;visibility:hidden;transform:translate(-50%,.18rem);transition:opacity .12s ease,transform .12s ease,visibility .12s ease}.landing-calendar-popover:after{content:"";position:absolute;inset-block-start:100%;left:50%;width:.62rem;height:.62rem;background:var(--surface);border-inline-end:1px solid color-mix(in srgb,var(--accent) 16%,var(--border));border-block-end:1px solid color-mix(in srgb,var(--accent) 16%,var(--border));transform:translate(-50%,-50%) rotate(45deg)}.landing-calendar-day:hover .landing-calendar-popover,.landing-calendar-day:focus-within .landing-calendar-popover{opacity:1;visibility:visible;transform:translate(-50%)}.landing-calendar-popover-eyebrow{color:var(--muted);font-size:.67rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.landing-calendar-popover-title{color:var(--fg);font-size:.86rem;font-weight:760}.landing-calendar-popover-main{display:flex;align-items:center;gap:.36rem;min-width:0}.landing-calendar-popover-meta,.landing-calendar-popover-status{width:fit-content;border-radius:var(--radius-sm);padding:.1rem .32rem;font-size:.64rem;font-weight:720;white-space:nowrap}.landing-calendar-popover-meta{color:var(--muted);background:color-mix(in srgb,var(--border) 24%,transparent)}.landing-calendar-popover-status-day-off{color:var(--green);background:var(--green-light)}.landing-calendar-popover-status-observed{color:var(--orange);background:var(--orange-light)}.landing-calendar-popover-status-weekend{color:var(--muted);background:color-mix(in srgb,var(--border) 34%,var(--surface))}.landing-upcoming-list{list-style:none;margin:0;padding:0;display:grid;gap:.25rem;flex:1}.landing-upcoming-item{position:relative;display:grid;grid-template-columns:6.2rem minmax(0,1fr) auto;align-items:start;gap:.7rem;padding:.55rem .5rem;border-radius:var(--radius);border:1px solid transparent;transition:border-color .12s ease,background-color .12s ease}.landing-upcoming-item:hover{background:color-mix(in srgb,var(--accent-light) 35%,transparent)}.landing-upcoming-item.is-next{border-color:color-mix(in srgb,var(--accent) 22%,var(--border));background:color-mix(in srgb,var(--accent-light) 65%,transparent)}.landing-upcoming-item.is-next:hover{background:color-mix(in srgb,var(--accent-light) 85%,transparent)}.landing-upcoming-date{display:grid;gap:0;text-align:start;font-variant-numeric:tabular-nums}.landing-upcoming-dow{color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;line-height:1}.landing-upcoming-date strong{color:var(--fg);font-size:.92rem;font-weight:720;line-height:1.2}.landing-upcoming-main{min-width:0;display:grid;justify-items:start;gap:.05rem}.landing-upcoming-name{color:var(--fg);font-weight:700;font-size:.98rem;text-decoration:none;overflow-wrap:anywhere;line-height:1.25}.landing-upcoming-name:after{content:"";position:absolute;inset:0;border-radius:inherit}.landing-upcoming-item:hover .landing-upcoming-name{color:var(--accent)}.landing-upcoming-name:focus-visible{outline:none}.landing-upcoming-name:focus-visible:after{outline:2px solid var(--accent);outline-offset:2px}.landing-upcoming-meta{color:var(--muted);font-size:.8rem;line-height:1.25}.landing-upcoming-pills{position:relative;z-index:1;display:inline-flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:.35rem}.landing-upcoming-pill{display:inline-flex;align-items:center;min-height:1.45rem;padding:.12rem .5rem;border-radius:3px;font-size:.72rem;line-height:1.1;font-weight:760;white-space:nowrap}.landing-upcoming-pill-text{display:inline}.landing-upcoming-pill-day-off{background:var(--green-light);color:var(--green)}.landing-upcoming-pill-observed{background:var(--orange-light);color:var(--orange)}.landing-upcoming-pill-weekend{background:color-mix(in srgb,var(--muted) 12%,transparent);color:var(--muted)}.landing-upcoming-pill-next{background:var(--accent-light);color:var(--accent)}@media(min-width:740px){.landing-pair{grid-template-columns:minmax(17.5rem,18.5rem) minmax(0,1fr);align-items:stretch;gap:.65rem}.landing-pair-calendar{align-self:stretch;padding:.5rem .55rem .65rem}.landing-pair-upcoming{align-self:stretch;padding:.65rem .75rem .7rem}.landing-upcoming-list{flex:initial;gap:.12rem}.landing-upcoming-item{grid-template-columns:5.5rem minmax(0,1fr) auto;gap:.5rem;padding:.43rem .4rem}.landing-upcoming-pills{grid-column:auto;align-self:center;flex-wrap:nowrap;justify-content:flex-end;gap:.18rem}.landing-upcoming-pills:after{content:attr(data-pill-label);position:absolute;inset-block-start:calc(100% + .32rem);inset-inline-end:0;z-index:4;max-width:min(13rem,54vw);width:max-content;padding:.34rem .48rem;color:var(--fg);background:var(--surface);border:1px solid color-mix(in srgb,var(--accent) 14%,var(--border));border-radius:var(--radius-sm);box-shadow:0 10px 22px #00000024;font-size:.7rem;font-weight:720;line-height:1.2;white-space:normal;pointer-events:none;opacity:0;visibility:hidden;transform:translateY(-.12rem);transition:opacity .12s ease,transform .12s ease,visibility .12s ease}.landing-upcoming-item:hover .landing-upcoming-pills:after,.landing-upcoming-item:focus-within .landing-upcoming-pills:after{opacity:1;visibility:visible;transform:translateY(0)}.landing-upcoming-pill{justify-content:center;width:1.22rem;min-width:1.22rem;height:1.22rem;min-height:1.22rem;padding:0;border-radius:999px}.landing-upcoming-pill:before{content:"";width:.42rem;height:.42rem;border-radius:999px;background:currentColor;opacity:.82}.landing-upcoming-pill-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}}@media(min-width:1040px){.landing-pair{grid-template-columns:minmax(20rem,23rem) minmax(0,1fr);align-items:stretch;gap:.85rem}.landing-pair-calendar{align-self:stretch;padding:.55rem .65rem .7rem}.landing-pair-upcoming{align-self:stretch;padding:.85rem 1rem .95rem}.landing-upcoming-list{flex:1;gap:.25rem}.landing-upcoming-item{grid-template-columns:6.2rem minmax(0,1fr) auto;align-items:center;gap:.7rem;padding:.55rem .5rem}.landing-upcoming-pills{grid-column:auto;flex-wrap:wrap;justify-content:flex-end;gap:.35rem}.landing-upcoming-pills:after{content:none}.landing-upcoming-pill{width:auto;min-width:0;height:auto;min-height:1.45rem;padding:.12rem .5rem;border-radius:3px}.landing-upcoming-pill:before{content:none}.landing-upcoming-pill-text{position:static;width:auto;height:auto;overflow:visible;clip:auto;clip-path:none;white-space:nowrap}}.landing-school-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.4rem 1rem;margin:0 0 1.5rem;padding:1rem 1.1rem;background:var(--surface);border:1px solid var(--border);border-radius:calc(var(--radius) + 3px)}.landing-school-card-body{min-width:0}.landing-school-card h2{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 .3rem;font-weight:700}.landing-school-card p{margin:0;font-size:1rem;line-height:1.4;color:var(--fg)}.landing-school-card-cta{display:inline-flex;align-items:center;gap:.3rem;color:var(--accent);text-decoration:none;font-weight:650;font-size:.9rem;white-space:nowrap}.landing-school-card-cta:hover{text-decoration:underline}.landing-school-card-cta .icon{width:.85rem;height:.85rem}.landing-school-card-source-hint{grid-column:1 / -1;color:var(--muted);font-size:.8rem;line-height:1.4}.landing-school-card-empty .landing-school-card-body p{color:var(--muted)}.landing-tools{margin:0 0 1.5rem}.landing-tools-title{font-size:.78rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 .7rem}.landing-tools-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}@media(min-width:740px){.landing-tools-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.landing-tools-tile{display:grid;gap:.4rem;align-content:start;padding:.85rem .9rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--fg);text-decoration:none;min-height:6.5rem}a.landing-tools-tile:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}.landing-tools-tile-head{display:inline-flex;align-items:center;gap:.4rem;color:var(--fg);font-size:.95rem}.landing-tools-tile-head .icon{color:var(--accent);width:1rem;height:1rem;flex:0 0 auto}.landing-tools-tile-head strong{font-weight:700}.landing-tools-tile-body{color:var(--muted);font-size:.86rem;line-height:1.4}.landing-tools-tile-meta{color:var(--muted);font-size:.76rem}.landing-tools-chip-row{display:flex;flex-wrap:wrap;gap:.3rem}.landing-tools-chip,.landing-tools-year-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .55rem;border:1px solid var(--border);border-radius:999px;font-size:.82rem;background:var(--surface);color:var(--fg);text-decoration:none;font-weight:600;white-space:nowrap}.landing-tools-chip:hover,.landing-tools-year-chip:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border));color:var(--accent)}.landing-tools-year-chip.is-current{background:var(--accent-light);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 30%,var(--border))}.landing-tools-chip-emoji{font-size:.92rem;line-height:1}.landing-footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;margin:1rem 0 .5rem;padding-top:.85rem;border-top:1px solid var(--border)}.landing-footer-link-card{display:inline-flex;align-items:center;gap:.45rem;min-width:0;min-height:2.35rem;padding:.45rem .65rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--fg);text-decoration:none;font-size:.86rem;font-weight:650;line-height:1.2}.landing-footer-link-card .icon{width:.95rem;height:.95rem;color:var(--accent)}.landing-footer-link-label{min-width:0}.landing-footer-link-card:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));color:var(--accent);text-decoration:none}@media(min-width:740px){.landing-footer-links{grid-template-columns:repeat(4,minmax(0,1fr))}}.landing-link-panel{padding-top:.25rem}.landing-panel,.seo-section,.detail-calendar,.source-note,.source-section{margin:1.25rem 0}.landing-panel h2,.seo-section h2,.detail-calendar h2,.source-note h2,.source-section h2{font-size:1.05rem;line-height:1.25;margin-bottom:.55rem}.landing-panel p,.source-note p,.source-section p,.qa-item p{color:var(--muted);font-size:.92rem;margin-bottom:.75rem}.qa-list{display:grid;gap:.65rem}.qa-item{border:1px solid var(--border);border-radius:var(--radius);padding:.75rem;background:var(--surface)}.qa-item h3{font-size:.95rem;line-height:1.3;margin-bottom:.3rem}.qa-item p{margin-bottom:0}.source-list{list-style:none;padding:0;display:grid;gap:.65rem}.source-list li{border:1px solid var(--border);border-radius:var(--radius);padding:.75rem;background:var(--surface)}.source-list a{display:inline-block;font-weight:650;text-decoration:none}.source-list .source-link-note{display:block;color:var(--muted);font-size:.88rem;margin-top:.18rem}.source-list .source-link-warning,.school-event-source-warning{display:inline-block;color:#7a3d00;font-size:.82rem;font-weight:650;line-height:1.25}.source-list .source-link-warning{margin-top:.32rem}.school-event-source-warning{margin-inline-start:.45rem}.school-data-use-note{color:var(--muted);font-size:.88rem;line-height:1.45}.school-data-use-note a{color:inherit;font-weight:650}.school-calendar-index-data-use,.school-hub-data-use-note{margin-top:.75rem}.school-calendar-status-notice{display:flex;align-items:flex-start;gap:.65rem;border:1px solid #d98b2b;border-radius:var(--radius);background:#fff7ed;color:#6f3700;padding:.75rem .85rem;margin:-.4rem 0 1.2rem}.school-calendar-status-label{flex:0 0 auto;border-radius:999px;background:#9a4d00;color:#fff;font-size:.78rem;font-weight:750;line-height:1;padding:.32rem .5rem}.school-calendar-status-notice p{margin:0;font-size:.92rem;line-height:1.4}.data-panel,.contact-section{margin:1.25rem 0;display:grid;gap:.75rem}.data-panel{border-block-end:1px solid var(--border);padding-bottom:1.25rem}.data-panel:last-child{border-block-end:0}.data-panel h2,.contact-section h2,.contact-section legend{color:var(--fg);font-size:1.05rem;font-weight:760;line-height:1.25}.data-panel p,.contact-status{color:var(--muted);font-size:.92rem}.data-panel ul{margin:0;padding-inline-start:1.15rem;color:var(--muted);font-size:.92rem}.data-panel li+li{margin-top:.35rem}.data-panel code{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.9em;overflow-wrap:anywhere}.contact-form{display:grid;gap:1rem}.contact-section{min-width:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:.85rem}.contact-section legend{padding-inline:.2rem}.contact-field{min-width:0;display:grid;gap:.28rem;color:var(--fg);font-size:.9rem;font-weight:650}.contact-field input,.contact-field select,.contact-field textarea{min-width:0;width:100%;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--fg);padding:.55rem .6rem;font:inherit;font-size:.95rem;font-weight:400}.contact-field textarea{resize:vertical}.contact-field input[readonly],.contact-field textarea[readonly]{color:var(--muted)}.contact-destination{display:grid;gap:.35rem}.contact-destination div{min-width:0;display:grid;gap:.18rem}.contact-destination dt{color:var(--muted);font-size:.78rem;font-weight:760}.contact-destination dd{min-width:0;overflow-wrap:anywhere}.contact-actions{display:flex;flex-wrap:wrap;gap:.5rem}.btn-secondary{border:1px solid var(--border);background:transparent;color:var(--accent)}.link-grid{display:flex;flex-wrap:wrap;gap:.5rem}.link-grid a,.back-link{min-height:2.35rem;display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--border);border-radius:var(--radius);padding:.3rem .65rem;text-decoration:none;color:var(--accent);background:transparent}.link-grid a.link-muted{color:var(--muted)}.link-emoji{flex:0 0 auto;font-size:.95em;line-height:1}.link-grid a:hover,.back-link:hover{background:var(--accent-light)}.back-link{width:max-content;max-width:100%;margin-bottom:.85rem;font-size:.85rem}.detail-hero.day-off{border-inline-start:3px solid var(--green-strip);padding-inline-start:.85rem}.detail-hero.observed{border-inline-start:3px solid var(--orange-strip);padding-inline-start:.85rem}.detail-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-bottom:1.25rem}.detail-facts>div{border:1px solid var(--border);border-radius:var(--radius);padding:.75rem;display:flex;flex-direction:column;gap:.2rem;background:var(--surface)}.detail-facts strong{font-size:1rem}.detail-facts span:not(.fact-label){color:var(--muted);font-size:.85rem}.holiday-detail-page,.school-calendar-page{max-width:840px}.holiday-detail-hero .fact-label,.school-calendar-hero .fact-label{display:block;margin-bottom:.45rem}.school-calendar-breadcrumb{margin:0 0 .7rem;font-size:.85rem;color:var(--muted)}.school-calendar-breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:.2rem .5rem;padding:0;margin:0}.school-calendar-breadcrumb li{display:inline-flex;align-items:center;gap:.5rem;min-width:0}.school-calendar-breadcrumb li+li:before{content:"/";color:var(--border);flex:0 0 auto}.school-calendar-breadcrumb a{color:var(--accent);text-decoration:none}.school-calendar-breadcrumb a:hover{text-decoration:underline}.school-calendar-breadcrumb [aria-current=page]{color:var(--fg);font-weight:650}.school-calendar-year-switcher{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem .7rem;margin:.6rem 0 1.1rem}.school-calendar-year-switcher-label{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;font-weight:700}.school-calendar-year-switcher-list{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem;padding:0;margin:0}.school-calendar-year-chip{display:inline-flex;align-items:center;min-height:2.1rem;padding:.15rem .7rem;border:1px solid var(--border);border-radius:var(--radius-sm);text-decoration:none;color:var(--accent);background:var(--bg);font-weight:700;font-size:.88rem}.school-calendar-year-chip:hover{border-color:var(--accent);background:var(--accent-light)}.school-calendar-year-chip-active{color:var(--fg);background:var(--accent-light);border-color:color-mix(in srgb,var(--accent) 35%,var(--border));cursor:default}.school-municipality-calendar-years{margin-top:.25rem}.school-municipality-calendar-years a{border-color:color-mix(in srgb,var(--brand-blue) 20%,var(--content-border));background:color-mix(in srgb,var(--brand-blue) 8%,var(--content-card))}.school-calendar-calendar-year-switcher .school-calendar-year-chip{border-color:color-mix(in srgb,var(--accent) 24%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.holiday-detail-back-link{margin:.85rem 0 0}.holiday-answer-section,.school-answer-section,.school-schedule-section{margin:1.25rem 0}.holiday-answer-section h2,.school-answer-section h2,.school-schedule-section h2{font-size:1.05rem;line-height:1.25;margin-bottom:.65rem}.holiday-answer-grid,.school-answer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.holiday-answer-card{min-width:0;min-height:7.75rem;display:grid;grid-template-columns:2rem minmax(0,1fr);align-content:center;align-items:start;column-gap:.95rem;row-gap:.32rem;padding:1rem 1.05rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.holiday-answer-card-day-off,.holiday-answer-card-long-weekend{border-color:color-mix(in srgb,var(--green) 26%,var(--border))}.holiday-answer-card-bank-holiday{border-color:color-mix(in srgb,var(--accent) 22%,var(--border))}.holiday-answer-icon{--holiday-answer-icon: url(/assets/sparkle.svg);grid-row:1 / span 4;width:1.9rem;height:1.9rem;margin-top:.05rem;color:var(--accent);background:currentColor;-webkit-mask:var(--holiday-answer-icon) center / contain no-repeat;mask:var(--holiday-answer-icon) center / contain no-repeat}.holiday-answer-icon-date{--holiday-answer-icon: url(/assets/calendar-dots.svg)}.holiday-answer-icon-public-holiday{--holiday-answer-icon: url(/assets/scales.svg)}.holiday-answer-icon-day-off{--holiday-answer-icon: url(/assets/pause.svg);color:var(--green)}.holiday-answer-icon-bank-holiday{--holiday-answer-icon: url(/assets/bank.svg)}.holiday-answer-icon-next-business-day{--holiday-answer-icon: url(/assets/arrow-elbow-right.svg)}.holiday-answer-icon-long-weekend{--holiday-answer-icon: url(/assets/sun.svg);color:var(--green)}.holiday-answer-icon-calendar{--holiday-answer-icon: url(/assets/calendar-plus.svg)}.holiday-answer-icon-working-days{--holiday-answer-icon: url(/assets/clock-countdown.svg)}.holiday-answer-card .fact-label,.holiday-answer-value,.holiday-answer-note,.holiday-answer-action{grid-column:2}.holiday-answer-value{margin:0;color:var(--fg);font-size:1.05rem;line-height:1.25;font-weight:750}.holiday-answer-note{margin:0;color:var(--muted);font-size:.83rem;line-height:1.3}.holiday-answer-action{width:max-content;max-width:100%;min-height:2rem;display:inline-flex;align-items:center;margin-top:.2rem;color:var(--accent);font-size:.82rem;font-weight:720;line-height:1.25;min-width:0;overflow-wrap:anywhere;text-decoration:none}.holiday-answer-action:hover{text-decoration:underline}.fact-label{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;font-weight:700}.detail-calendar-actions{display:flex;flex-wrap:wrap;gap:.5rem}.detail-calendar-actions .btn-sm{min-height:2.5rem;height:auto;padding-inline:.75rem;font-size:.85rem}.detail-table th,.detail-table td{text-align:start}.holiday-practical-table th{width:38%;color:var(--muted);font-size:.85rem}.holiday-practical-table td{color:var(--fg)}.school-calendar-variant-chooser{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:.85rem;margin:1.25rem 0}.school-calendar-variant-chooser h2{margin:0 0 .65rem;font-size:1rem;line-height:1.25}.school-calendar-variant-chooser p{margin:-.25rem 0 .65rem;color:var(--muted);font-size:.9rem;line-height:1.35}.school-calendar-hub-link{max-width:44rem;border-color:var(--content-border);border-radius:8px;background:var(--content-card);padding:.78rem;margin:1.25rem 0}.school-calendar-hub-link h2{margin-bottom:.35rem;font-size:1.05rem}.school-calendar-hub-link p{margin:0 0 .65rem;color:var(--content-muted)}.school-calendar-hub-link .school-calendar-variant-link{width:fit-content;min-height:2rem;border:0;border-radius:0;padding:0;background:transparent;color:var(--brand-blue-strong)}.school-calendar-hub-link .school-calendar-variant-link:hover{color:var(--btn-primary-bg-hover);text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:.18em}.school-calendar-hub-link .school-calendar-variant-link .icon{width:.95rem;height:.95rem}.school-calendar-school-select-label{display:grid;max-width:32rem;gap:.35rem;font-size:.9rem;font-weight:700}.school-calendar-school-select-hint{color:var(--muted);font-weight:500;line-height:1.35}.school-calendar-school-select{width:100%;min-height:2.6rem;border:1px solid var(--border);border-radius:var(--radius-sm);padding:0 .75rem;color:var(--fg);background:var(--bg);font:inherit}.school-calendar-school-select:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 28%,transparent);outline-offset:2px}.school-calendar-variant-links,.school-municipality-variant-links{display:flex;flex-wrap:wrap;gap:.5rem}.school-calendar-variant-link,.school-municipality-variant-links a{min-height:2.35rem;display:inline-flex;align-items:center;gap:.45rem;border:1px solid var(--border);border-radius:var(--radius-sm);padding:0 .7rem;color:var(--fg);background:var(--bg);text-decoration:none;font-weight:700;font-size:.9rem}.school-calendar-variant-link[href]:hover,.school-municipality-variant-links a:hover{border-color:var(--accent);color:var(--accent)}.school-calendar-variant-link-active{border-color:color-mix(in srgb,var(--accent) 38%,var(--border));background:var(--accent-light)}.school-calendar-variant-current{color:var(--muted);font-size:.78rem;font-weight:700}.school-answer-past{margin:0 0 .8rem}.school-answer-past-summary{min-height:2.75rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:0 .75rem;color:var(--muted);background:none;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;font:inherit;font-size:.85rem;font-weight:700;list-style:none}.school-answer-past-summary::-webkit-details-marker{display:none}.school-answer-past-icon{width:2rem;height:2rem;display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--fg)}.school-answer-past-icon:before{content:"+"}.school-answer-past[open] .school-answer-past-icon:before{content:"-"}.school-answer-past-grid{margin-top:.8rem}.school-answer-card{min-width:0;border:1px solid var(--border);border-radius:var(--radius);position:relative;padding:.9rem 3rem .9rem .9rem;background:var(--surface);display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;column-gap:.8rem;row-gap:.25rem;min-height:8rem}.school-answer-card-past{border-color:color-mix(in srgb,var(--border) 68%,var(--bg));background:color-mix(in srgb,var(--surface) 70%,var(--bg))}.school-answer-card-past .school-answer-icon,.school-answer-card-past .fact-label,.school-answer-card-past .school-answer-value,.school-answer-card-past .school-answer-meta,.school-answer-card-past .school-answer-boundary{opacity:.56}.school-answer-card-today{border-color:color-mix(in srgb,var(--green) 42%,var(--border));background:color-mix(in srgb,var(--green-light) 50%,var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--green) 12%,transparent)}.school-answer-card-today .school-answer-icon{color:var(--green)}.school-answer-card-today .school-answer-action{color:var(--green);background:var(--green-action-bg);border-color:var(--green-action-border)}.school-answer-card-today .school-answer-action:hover{border-color:color-mix(in srgb,var(--green) 46%,var(--green-action-border));background:var(--green-light)}.school-answer-icon{--school-answer-icon: url(/assets/sparkle.svg);grid-row:1 / span 4;width:2.1rem;height:2.1rem;margin-top:.25rem;color:var(--accent);background:currentColor;flex:none;-webkit-mask:var(--school-answer-icon) center / contain no-repeat;mask:var(--school-answer-icon) center / contain no-repeat}.school-answer-icon-school-starts{--school-answer-icon: url(/assets/backpack.svg)}.school-answer-icon-school-ends{--school-answer-icon: url(/assets/confetti.svg)}.school-answer-icon-summer-break{--school-answer-icon: url(/assets/sun.svg)}.school-answer-icon-autumn-break{--school-answer-icon: url(/assets/leaf.svg)}.school-answer-icon-christmas-break{--school-answer-icon: url(/assets/tree-evergreen.svg)}.school-answer-icon-winter-break{--school-answer-icon: url(/assets/person-simple-ski.svg)}.school-answer-card .fact-label{grid-column:2}.school-answer-value{grid-column:2;margin:0;font-size:1.08rem;line-height:1.25;font-weight:750;color:var(--fg)}.school-answer-meta{grid-column:2;margin:0;color:var(--muted);font-size:.83rem;line-height:1.25}.school-answer-boundary{grid-column:2;margin:.1rem 0 0;color:var(--muted);font-size:.8rem;line-height:1.3}.school-answer-action{position:absolute;inset-block-start:.65rem;inset-inline-end:.65rem;display:inline-flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--accent);background:var(--bg);text-decoration:none}.school-answer-action:hover{border-color:color-mix(in srgb,var(--accent) 38%,var(--border));background:var(--accent-light)}.school-answer-action .icon{width:1.05rem;height:1.05rem}.school-calendar-year-variant-section{margin:1.5rem 0}.school-calendar-year-variant-section>h2{margin:0 0 .85rem;font-size:1.1rem;line-height:1.25}.school-calendar-year-related p{margin:-.25rem 0 .65rem;color:var(--muted);font-size:.9rem;line-height:1.35}.school-answer-state-badge{position:absolute;inset-block-start:.65rem;inset-inline-end:.65rem;display:inline-flex;align-items:center;justify-content:center;min-height:2.1rem;max-width:calc(100% - 1.3rem);padding:0 .58rem;border:1px solid color-mix(in srgb,var(--border) 72%,var(--bg));border-radius:var(--radius-sm);color:var(--muted);background:color-mix(in srgb,var(--surface) 58%,var(--bg));font-size:.72rem;line-height:1;font-weight:750;white-space:nowrap}.school-answer-range{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.school-answer-date{white-space:nowrap;font-variant-numeric:tabular-nums}.school-answer-separator{color:var(--muted);font-weight:500}.school-schedule-section p{color:var(--muted);font-size:.92rem;margin-bottom:.75rem}.school-schedule-section .school-schedule-range-note{margin-top:-.25rem}.school-calendar-hub-page{max-width:920px;padding-top:2.6rem;color:var(--content-fg);font-family:var(--wm-font)}.school-calendar-hub-page :is(h1,h2,h3,h4){font-variation-settings:"ROND" 100,"wght" 700;letter-spacing:0;line-height:1.12}.school-calendar-hub-page p{color:var(--content-fg);line-height:1.55}.school-hub-hero{display:grid;gap:.75rem;max-width:44rem;margin-bottom:2.2rem}.school-calendar-hub-page .school-hub-hero .fact-label{display:inline-flex;align-items:center;gap:.5rem;justify-self:start;width:fit-content;margin-bottom:0;border-radius:999px;padding:.22rem .6rem;background:color-mix(in oklab,var(--brand-blue) 12%,transparent);color:var(--brand-blue-strong);font-size:.72rem;font-variation-settings:"ROND" 100,"wght" 600;letter-spacing:.06em;text-transform:uppercase}.school-calendar-hub-page .school-hub-hero .fact-label:before{content:"";width:6px;height:6px;border-radius:50%;background:#1f7a4d;box-shadow:0 0 0 2px #1f7a4d2e}.school-hub-hero h1{margin:0;font-size:2.6rem}.school-hub-hero .detail-answer{max-width:38rem;margin:0;color:var(--content-muted);font-size:1.06rem}.school-hub-hero p{max-width:56rem}.school-hub-year-switcher{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem .75rem;margin:1rem 0 1.15rem}.school-hub-year-switcher-title{color:var(--muted);font-size:.78rem;font-weight:760;text-transform:uppercase}.school-hub-year-options{display:flex;flex-wrap:wrap;gap:.45rem}.school-hub-year-option{display:inline-flex;align-items:center;gap:.38rem;min-height:2.2rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--fg);font-weight:740;padding:.42rem .62rem;text-decoration:none}.school-hub-year-option[href]:hover{border-color:var(--accent);color:var(--accent)}.school-hub-year-option-active{border-color:var(--accent);background:var(--accent-light);color:var(--accent)}.school-hub-year-current{border-radius:999px;background:var(--surface-elevated);color:var(--muted);font-size:.68rem;font-weight:760;padding:.12rem .35rem}.school-hub-comparison{margin:1.25rem 0}.school-hub-comparison h2{margin:0;font-size:1.45rem}.school-hub-comparison>p{color:var(--muted);font-size:.92rem;margin-bottom:.75rem}.school-hub-view-stack{display:grid;gap:2rem}.school-hub-preview-section{display:grid;gap:1rem}.school-hub-section-head{display:grid;gap:.3rem}.school-hub-section-head p{max-width:44rem;color:var(--content-muted)}.school-hub-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem}.school-hub-stat-card{display:grid;gap:.25rem;border:1px solid var(--content-border);border-radius:8px;padding:.85rem 1rem;background:var(--content-card)}.school-hub-stat-card dt{color:var(--content-muted);font-size:.72rem;font-variation-settings:"ROND" 100,"wght" 650;letter-spacing:.04em;text-transform:uppercase}.school-hub-stat-card dd{margin:0;color:var(--content-fg);font-size:1.3rem;font-variation-settings:"ROND" 100,"wght" 700;line-height:1.1}.school-hub-access-note{margin:0;padding:.7rem .9rem;border-left:3px solid var(--brand-blue);border-radius:4px;background:color-mix(in oklab,var(--brand-blue) 6%,transparent);color:var(--content-fg);font-size:.92rem}.school-hub-access-note a{color:var(--brand-blue-strong);font-variation-settings:"ROND" 100,"wght" 650;text-decoration:none}.school-hub-access-note a:hover{text-decoration:underline}.school-hub-view h3{font-size:.98rem;line-height:1.25;margin:0 0 .55rem}.school-hub-table-wrap{overflow-x:auto;border:1px solid var(--content-border);border-radius:8px;background:var(--content-card)}.school-hub-data-table{width:100%;min-width:720px;border-collapse:separate;border-spacing:0;font-size:.86rem;line-height:1.28}.school-hub-year-matrix{min-width:980px}.school-hub-data-table th,.school-hub-data-table td{border-bottom:1px solid var(--border);padding:.52rem .62rem;text-align:left;vertical-align:top}.school-hub-data-table thead th{background:color-mix(in oklab,var(--content-fg) 4%,transparent);color:var(--content-muted);font-size:.74rem;font-variation-settings:"ROND" 100,"wght" 650;letter-spacing:0;text-transform:uppercase}.school-hub-data-table thead th a{color:inherit;text-decoration:none}.school-hub-data-table thead th a:hover{color:var(--accent)}.school-hub-data-table tbody tr:last-child th,.school-hub-data-table tbody tr:last-child td{border-bottom:0}.school-hub-data-table tbody tr:hover th,.school-hub-data-table tbody tr:hover td{background:color-mix(in srgb,var(--accent) 7%,transparent)}.school-hub-sticky-col{position:sticky;left:0;z-index:1}thead .school-hub-sticky-col{z-index:2}tbody .school-hub-sticky-col{background:var(--surface)}.school-hub-year-matrix td{min-width:7.5rem}.school-hub-topic-table td:nth-child(2),.school-hub-group-table th:first-child{min-width:9rem}.school-hub-row-place{display:inline-flex;flex-direction:column;min-width:0;color:var(--fg);line-height:1.14;text-decoration:none}.school-hub-row-place:hover{color:var(--accent)}.school-hub-row-place span{font-weight:760}.school-hub-row-place small{color:var(--muted);font-size:.76rem;margin-top:.14rem}.school-hub-cell-main{display:block;font-weight:760}.school-hub-data-table small,.school-hub-empty{color:var(--muted);font-size:.76rem}.school-hub-source-compact{display:grid;gap:.1rem}.school-hub-source-compact a{display:inline-flex;align-items:center;gap:.22rem}.school-hub-source-compact .icon{width:.8rem;height:.8rem}.school-hub-member-list{display:flex;flex-wrap:wrap;gap:.12rem .22rem}.school-hub-member-list a{color:var(--fg)}.school-hub-event-jump{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 .85rem}.school-hub-matrix-filter{display:flex;flex-direction:column;gap:.25rem;margin:0 0 .7rem}.school-hub-matrix-filter-label{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;font-weight:700}.school-hub-matrix-filter-row{display:flex;flex-wrap:wrap;gap:.45rem;align-items:stretch;width:min(100%,22rem)}.school-hub-matrix-filter-row input{flex:1 1 auto}.school-hub-matrix-filter-row .school-calendar-location-button{width:2.5rem;min-height:2.5rem}.school-hub-matrix-filter input{min-width:0;flex:1 1 0;min-height:2.5rem;padding:.4rem .65rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--fg);font:inherit;font-size:.92rem}.school-hub-matrix-filter input:focus{outline:none;border-color:var(--accent)}.school-hub-matrix-location-status{margin:.35rem 0 0;color:var(--muted);font-size:.82rem}.school-hub-matrix-empty{color:var(--muted);font-size:.88rem;margin:0 0 .7rem}.school-hub-in-progress{display:inline-flex;align-items:center;margin-inline-start:.4rem;padding:.05rem .4rem;border-radius:999px;background:var(--accent-light);color:var(--accent);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;vertical-align:middle}.school-hub-event-jump-chip{min-height:2.1rem;display:inline-flex;align-items:center;gap:.4rem;padding:.2rem .7rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--accent);font-weight:700;font-size:.85rem;text-decoration:none}.school-hub-event-jump-chip .school-answer-icon{width:1.05rem;height:1.05rem;margin-top:0;grid-row:auto;color:currentColor}.school-hub-event-jump-chip:hover{border-color:var(--accent);background:var(--accent-light)}.school-hub-event-groups:target>summary{background:var(--accent-light)}.school-hub-year-groups{display:grid;gap:.55rem;scroll-margin-top:1rem}.school-hub-event-groups{justify-self:start;width:min(100%,44rem);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.school-hub-event-groups summary{display:flex;align-items:center;justify-content:flex-start;gap:.45rem;cursor:pointer;padding:.62rem .75rem;font-weight:760;list-style:none}.school-hub-event-groups summary::-webkit-details-marker{display:none}.school-hub-event-groups summary::marker{content:""}.school-hub-event-groups summary:before{content:"+";display:grid;place-items:center;flex:0 0 1.15rem;width:1.15rem;height:1.15rem;border:1px solid var(--border-strong);border-radius:999px;background:var(--accent-light);color:var(--accent);font-size:.95rem;font-weight:800;line-height:1}.school-hub-event-groups[open] summary:before{content:"−"}.school-hub-event-groups summary:hover{background:var(--surface-elevated)}.school-hub-event-groups summary small{color:var(--muted);font-weight:600}.school-hub-event-groups .school-hub-table-wrap{border:0;border-top:1px solid var(--border);border-radius:0}.school-hub-date{white-space:nowrap;font-variant-numeric:tabular-nums}.school-hub-date-range{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.28rem}.school-hub-calendar-action{display:inline-flex;align-items:center;gap:.32rem;color:var(--accent);font-weight:720;text-decoration:none}.school-hub-calendar-action:hover{text-decoration:underline}.school-hub-calendar-action .icon{width:.95rem;height:.95rem}.school-hub-missing{color:var(--muted);font-size:.85rem}.school-hub-source-details{color:var(--muted);font-size:.82rem}.school-hub-source-details summary{cursor:pointer;font-weight:720}.school-hub-source-details ul{display:grid;gap:.35rem;margin:.55rem 0 0;padding-inline-start:1rem}.school-hub-source-details a{display:inline-flex;align-items:center;gap:.22rem}.school-hub-source-details .icon{width:.8rem;height:.8rem}@media(max-width:780px){.school-hub-table-wrap{overflow:visible;border:0;background:transparent}.school-hub-data-table{min-width:0;font-size:.88rem}.school-hub-data-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.school-hub-data-table,.school-hub-data-table tbody,.school-hub-data-table tr,.school-hub-data-table th,.school-hub-data-table td{display:block;width:100%}.school-hub-data-table tbody tr{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:.72rem;margin-bottom:.65rem}.school-hub-data-table tbody tr:last-child{margin-bottom:0}.school-hub-data-table tbody th,.school-hub-data-table tbody td{border-bottom:0;padding:.28rem 0}.school-hub-data-table tbody tr:hover th,.school-hub-data-table tbody tr:hover td{background:transparent}.school-hub-sticky-col{position:static}tbody .school-hub-sticky-col{background:transparent}.school-hub-data-table td{display:grid;grid-template-columns:minmax(6.5rem,36%) minmax(0,1fr);gap:.55rem;align-items:start}.school-hub-data-table td:before{content:attr(data-label);color:var(--muted);font-size:.74rem;font-weight:760}.school-hub-topic-table td:nth-child(2),.school-hub-group-table th:first-child{min-width:0}.school-hub-matrix-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin-inline:calc(var(--gap) * -1);padding-inline:0;border-inline-width:0;border-radius:0}.school-hub-year-matrix{display:table;width:max-content;min-width:100%;font-size:.82rem}.school-hub-year-matrix thead{position:static;width:auto;height:auto;overflow:visible;clip:auto;clip-path:none}.school-hub-year-matrix thead,.school-hub-year-matrix tbody,.school-hub-year-matrix tr{display:table-row-group}.school-hub-year-matrix tr{display:table-row;border:0;border-radius:0;background:transparent;padding:0;margin:0}.school-hub-year-matrix th,.school-hub-year-matrix td{display:table-cell;width:auto;padding:.42rem .6rem;border-bottom:1px solid var(--border)}.school-hub-year-matrix td{grid-template-columns:none;gap:0}.school-hub-year-matrix td:before{content:none}.school-hub-year-matrix .school-hub-sticky-col{position:sticky;left:0;background:var(--surface);box-shadow:1px 0 0 var(--border);z-index:1}.school-hub-year-matrix thead .school-hub-sticky-col{background:var(--bg);z-index:2}.school-hub-year-matrix tbody tr:last-child{margin-bottom:0}.school-hub-row-place{margin-bottom:.18rem}.school-hub-event-groups summary{align-items:center}}.school-hub-related{margin-top:1.25rem}.school-calendar-search{max-width:44rem;border:1px solid var(--content-border);border-radius:8px;background:var(--content-card);padding:.78rem;margin:1.25rem 0 2rem}.school-calendar-search label{display:block;color:var(--content-muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;font-variation-settings:"ROND" 100,"wght" 650;margin-bottom:.45rem}.school-calendar-search-row{display:grid;grid-template-columns:2.7rem minmax(0,1fr) auto;gap:.45rem}.school-calendar-location-button{width:2.7rem;min-height:2.7rem;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--content-border);border-radius:999px;background:var(--content-card);color:var(--content-muted);cursor:pointer}.school-calendar-location-button:hover{border-color:color-mix(in oklab,var(--brand-blue) 36%,var(--content-border));background:color-mix(in oklab,var(--brand-blue) 6%,var(--content-card));color:var(--brand-blue-strong)}.school-calendar-location-button:focus-visible{outline:2px solid var(--brand-blue);outline-offset:2px}.school-calendar-location-button:disabled{cursor:progress;opacity:.65}.school-calendar-location-button .icon{width:1.05rem;height:1.05rem}.school-calendar-search input{min-width:0;width:100%;min-height:2.7rem;border:1px solid var(--content-border);border-radius:999px;background:color-mix(in oklab,var(--content-fg) 2%,var(--content-card));color:var(--content-fg);padding:0 .95rem;font:inherit;font-size:.95rem;appearance:none}.school-calendar-search input:focus{outline:2px solid var(--brand-blue);outline-offset:2px}.school-calendar-search .btn{min-height:2.7rem;justify-content:center;border:1px solid var(--btn-primary-bg);border-radius:999px;padding:0 1rem;background:var(--btn-primary-bg);color:var(--btn-primary-fg);font-variation-settings:"ROND" 100,"wght" 650;font-size:.88rem;letter-spacing:0}.school-calendar-search .btn:hover{background:var(--btn-primary-bg-hover);border-color:var(--btn-primary-bg-hover);opacity:1}.school-calendar-search .btn[aria-disabled=true]{opacity:.55;pointer-events:none}.school-calendar-search-empty{color:var(--content-muted);margin-top:.55rem;font-size:.9rem}.school-calendar-location-status{color:var(--content-muted);margin-top:.55rem;font-size:.88rem}.school-municipality-section{margin:2rem 0 1.25rem}.school-municipality-section h2{margin:0;font-size:1.45rem}.school-municipality-section .school-calendar-index-data-use{max-width:44rem;margin:.35rem 0 .8rem;color:var(--content-muted)}.school-municipality-grid{display:block;overflow:hidden;border:1px solid var(--content-border);border-radius:8px;background:var(--content-card)}.school-municipality-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.65rem;align-items:center;border-bottom:1px solid var(--content-border);padding:.58rem .75rem;background:transparent}.school-municipality-card:last-child{border-bottom:0}.school-municipality-card[hidden]{display:none}.school-municipality-main{min-width:0;display:grid;grid-template-columns:minmax(10rem,1.1fr) minmax(10rem,.8fr) minmax(0,1.4fr);gap:.45rem .75rem;align-items:center}.school-municipality-card h3{grid-column:1}.school-municipality-years{grid-column:2}.school-municipality-variants{grid-column:3}.school-municipality-card h3{margin:0;font-size:.98rem}.school-municipality-card h3 a{color:var(--content-fg);text-decoration:none}.school-municipality-card h3 a:hover{color:var(--brand-blue-strong)}.school-municipality-meta{margin:0;padding:0;display:flex;align-items:baseline;gap:.5rem;justify-content:flex-end;white-space:nowrap}.school-municipality-meta[hidden]{display:none}.school-municipality-meta dt{color:var(--content-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;font-variation-settings:"ROND" 100,"wght" 650}.school-municipality-meta dd{margin:0;font-variation-settings:"ROND" 100,"wght" 650;font-size:.85rem}.school-municipality-years{display:flex;flex-wrap:wrap;gap:.25rem}.school-municipality-year{min-height:1.8rem;display:inline-flex;align-items:center;border:1px solid var(--content-border);border-radius:999px;padding:0 .55rem;text-decoration:none;color:var(--content-fg);background:var(--content-card);font-variation-settings:"ROND" 100,"wght" 650;font-size:.78rem}.school-municipality-year:hover{border-color:var(--brand-blue);color:var(--brand-blue-strong)}.school-municipality-year-current{color:var(--brand-blue-strong);background:color-mix(in oklab,var(--brand-blue) 8%,var(--content-card));border-color:color-mix(in oklab,var(--brand-blue) 32%,var(--content-border))}.school-municipality-variants{display:grid;gap:.25rem}.school-municipality-variants-title{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.school-municipality-list .school-municipality-variant-links{gap:.25rem}.school-municipality-list .school-municipality-variant-links a{min-height:1.8rem;border-color:var(--content-border);border-radius:999px;padding:0 .55rem;background:var(--content-card);color:var(--content-fg);font-size:.78rem;font-variation-settings:"ROND" 100,"wght" 650}.school-municipality-list .school-municipality-variant-links a:hover{border-color:var(--brand-blue);color:var(--brand-blue-strong)}.school-event-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.school-event-table{min-width:42rem}.school-event-table td,.school-event-table th{text-align:start}.school-event-table td{vertical-align:top}.school-event-table time{white-space:nowrap}.school-event-derived{display:block;color:var(--muted);font-size:.82rem;font-weight:400}.school-source-note .source-list{margin-top:.65rem}.school-source-note .source-list a{display:inline-flex;align-items:center;gap:.3rem}.school-source-note .source-list a .icon{width:.95rem;height:.95rem}.school-hub-row-place-stack{display:grid;gap:.15rem;min-width:0}.school-hub-row-calendar-year{color:var(--content-muted);font-size:.78rem;font-weight:650;line-height:1.25;text-decoration:none}.school-hub-row-calendar-year:hover{color:var(--brand-blue-strong);text-decoration:underline;text-underline-offset:.16em}.landing-school-panel p{max-width:42rem}.working-days-page{max-width:840px}.working-days-hero .fact-label{display:block;margin-bottom:.45rem}.working-days-tool{margin:1.25rem 0}.working-days-panel{min-width:0;border:1px solid var(--border);border-radius:var(--radius);padding:.85rem;background:var(--surface)}.working-days-calculator{display:grid;gap:.75rem}.working-days-panel h2{font-size:1.02rem;line-height:1.25;margin-bottom:.65rem}.working-days-controls{display:grid;gap:.65rem}.working-days-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.working-days-controls label{min-width:0;display:grid;gap:.25rem;color:var(--muted);font-size:.78rem;font-weight:700}.working-days-control-wide{max-width:24rem}.working-days-controls input,.working-days-controls select{width:100%;min-height:2.55rem;padding:.35rem .55rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--fg);font:inherit;font-size:.95rem}.working-days-controls input:focus-visible,.working-days-controls select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.working-days-result{display:block;min-height:3.25rem;padding:.65rem .7rem;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));border-radius:var(--radius);background:var(--accent-light);color:var(--fg);font-size:.92rem;line-height:1.38}.working-days-result-link{min-height:2.35rem;width:max-content;max-width:100%;justify-content:center;height:auto;padding-inline:.65rem}.working-days-single{margin:1.25rem 0}@media(max-width:900px){.calendar-feed-list,.working-days-field-grid{grid-template-columns:1fr}.landing-calendar-legend{justify-content:flex-start}}@media(max-width:600px){body{padding:0 var(--gap)}.app-topbar{padding-top:.9rem;padding-bottom:.95rem;margin-bottom:.45rem;gap:.55rem .75rem}.app-title{font-size:1.1rem;overflow-wrap:anywhere}.header-date{line-height:1.35}.topbar-controls{grid-template-columns:auto minmax(0,1fr);gap:.45rem .5rem}.year-nav .year-nav-button{width:2.75rem;min-height:2.75rem}.year-nav .year-nav-current{min-width:4rem;padding:0 .55rem;font-size:1.15rem}.topbar-count{grid-column:1 / -1;grid-row:2;padding-top:.12rem;font-size:.82rem;line-height:1.35}.topbar-calendar{justify-self:stretch;min-width:0}.topbar-calendar-action{width:100%;min-height:2.75rem;justify-content:center;padding-inline:.6rem;white-space:normal;text-align:center}.topbar-export-popover{inset-block:5.8rem auto;inset-inline:1rem;width:auto}.calendar-feed-card{align-items:stretch;flex-direction:column}.calendar-feed-cta{width:100%}.section-title{border-top:0;margin-top:1.35rem;padding-top:0}.mobile-holiday-main{grid-template-columns:1fr;gap:.25rem}.mobile-holiday-date{min-width:0;text-align:start}.mobile-holiday-weekday,.mobile-holiday-date-num,.mobile-holiday-date-meta{display:inline}.mobile-holiday-weekday:after,.mobile-holiday-date-num:after{content:" ·";color:var(--muted);font-weight:400}.desktop-holidays{display:none}.mobile-holidays{display:block}.landing-hero{grid-template-columns:1fr}.landing-hero h1,.detail-hero h1,.source-hero h1{font-size:1.45rem}.landing-upcoming-item{grid-template-columns:minmax(4.3rem,auto) minmax(0,1fr);align-items:start;gap:.35rem .55rem}.landing-upcoming-pills{grid-column:2;justify-content:flex-start}.landing-calendar-controls{grid-template-columns:2.45rem minmax(7.6rem,8.8rem) minmax(4.8rem,5.7rem) 2.45rem;justify-content:stretch;gap:.15rem}.landing-month-button{width:2.45rem;min-height:2.45rem}.landing-calendar-control{min-height:2.45rem;font-size:.95rem}.landing-month-calendar td,.landing-calendar-box{min-height:2.35rem}.detail-facts,.holiday-answer-grid,.school-answer-grid{grid-template-columns:1fr}.school-calendar-search-row{grid-template-columns:auto minmax(0,1fr)}.school-calendar-search .btn{grid-column:1 / -1;width:100%;justify-content:center}.school-municipality-card,.school-municipality-main{grid-template-columns:1fr}.school-municipality-card h3,.school-municipality-years,.school-municipality-variants{grid-column:auto}.school-municipality-meta{justify-content:flex-start}.link-grid a{min-height:2.75rem}.contact-section{padding:.75rem}.contact-actions{display:grid;grid-template-columns:1fr}.contact-actions .btn{width:100%;min-height:2.75rem;justify-content:center}}@media print{.site-header,.topbar-calendar,.year-nav .year-nav-button,td.actions-cell{display:none}}[data-page=school-day-status]{--school-day-rule: color-mix(in srgb, var(--border) 70%, transparent);--school-day-soft: color-mix(in srgb, var(--accent-light) 40%, transparent);--school-day-school: var(--green);--school-day-break: var(--orange);--school-day-holiday: var(--accent);--school-day-off: color-mix(in srgb, var(--orange) 60%, var(--accent));--school-day-outside: color-mix(in srgb, var(--muted) 55%, var(--border))}[data-page=school-day-status][data-lang=en]{--fg: var(--content-fg);--muted: var(--content-muted);--accent: var(--brand-blue-strong);--accent-light: color-mix(in oklab, var(--brand-blue) 12%, var(--content-card));--border: var(--content-border);font-family:var(--wm-font);font-variation-settings:"ROND" 100;letter-spacing:-.005em}.school-day-hero{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr);grid-template-areas:"fraction eyebrow" "fraction question" "fraction verdict" "fraction caption" "dots dots" "chips chips";align-items:start;column-gap:clamp(1.5rem,3vw,3rem);row-gap:.6rem;margin:2rem 0 3rem;padding:0;border:none;background:none}.school-day-eyebrow{grid-area:eyebrow;display:block;margin:0;font-size:.72rem;font-weight:720;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.school-day-question{grid-area:question;margin:0;font-size:clamp(1.5rem,1rem + 1.4vw,2rem);line-height:1.12;font-weight:720;letter-spacing:-.018em;color:var(--fg);max-width:22ch}.school-day-verdict{grid-area:verdict;margin:.6rem 0 0;font-size:clamp(1.05rem,.95rem + .4vw,1.25rem);line-height:1.3;font-weight:620;color:var(--fg);max-width:28ch}.school-day-hero-caption{grid-area:caption;margin:.55rem 0 0;font-size:.98rem;line-height:1.5;color:var(--muted);max-width:36ch}.school-day-fraction{grid-area:fraction;display:grid;grid-template-columns:auto;justify-items:start;align-content:start;gap:.1em;margin:-.18em 0 0;padding-inline-end:0;font-variant-numeric:tabular-nums;line-height:.85;color:var(--school-day-school)}.school-day-fraction-numer{display:block;font-size:clamp(5rem,3rem + 9vw,10rem);font-weight:760;letter-spacing:-.055em}.school-day-fraction-bar{display:block;height:2px;width:clamp(3rem,9vw,5.5rem);margin:.18em 0;background:currentColor;opacity:.4}.school-day-fraction-denom{display:block;font-size:clamp(1.6rem,1rem + 1.6vw,2.4rem);font-weight:600;letter-spacing:-.03em;color:var(--muted)}.school-day-dots{grid-area:dots;margin:1.8rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(.7rem,1fr));gap:.4rem;max-width:28rem}.school-day-dot{display:block;width:100%;aspect-ratio:1;border-radius:999px;background:var(--muted);transition:transform .12s ease}.school-day-dot:hover{transform:scale(1.45)}.school-day-dot-school-day{background:var(--school-day-school)}.school-day-dot-break{background:var(--school-day-break)}.school-day-dot-public-holiday{background:var(--school-day-holiday)}.school-day-dot-single-day-off{background:var(--school-day-off)}.school-day-dot-outside-school-year{background:var(--school-day-outside);opacity:.55}.school-day-chips{grid-area:chips;display:flex;flex-wrap:wrap;gap:.5rem;margin:1.2rem 0 0}.school-day-chip{display:inline-flex;align-items:center;gap:.45rem;padding:.4rem .75rem .4rem .65rem;border-radius:999px;border:1px solid var(--school-day-rule);background:transparent;color:var(--fg);text-decoration:none;font-size:.86rem;font-weight:600;letter-spacing:.01em;transition:border-color .12s ease,background-color .12s ease,color .12s ease}.school-day-chip:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent-light) 35%,transparent)}.school-day-chip-dot{width:.55rem;height:.55rem;border-radius:999px;background:var(--muted);flex:0 0 auto}.school-day-chip-school-day .school-day-chip-dot{background:var(--school-day-school)}.school-day-chip-break .school-day-chip-dot{background:var(--school-day-break)}.school-day-chip-public-holiday .school-day-chip-dot{background:var(--school-day-holiday)}.school-day-chip-single-day-off .school-day-chip-dot{background:var(--school-day-off)}.school-day-chip-outside-school-year .school-day-chip-dot{background:var(--school-day-outside)}.school-day-chip-count{color:var(--muted);font-variant-numeric:tabular-nums;font-weight:600}.school-day-chip:hover .school-day-chip-count{color:inherit}.school-day-buckets{display:flex;flex-direction:column;gap:0;margin:0 0 3rem}.school-day-bucket{scroll-margin-top:5rem;padding:1.6rem 0 1.8rem;border-top:1px solid var(--school-day-rule)}.school-day-bucket:first-child{padding-top:1.2rem}.school-day-bucket-head{display:flex;align-items:baseline;gap:.7rem;margin:0 0 .85rem}.school-day-bucket-mark{width:.55rem;height:.55rem;border-radius:999px;background:var(--muted);flex:0 0 auto;transform:translateY(-.05em)}.school-day-bucket-school-day .school-day-bucket-mark{background:var(--school-day-school)}.school-day-bucket-break .school-day-bucket-mark{background:var(--school-day-break)}.school-day-bucket-public-holiday .school-day-bucket-mark{background:var(--school-day-holiday)}.school-day-bucket-single-day-off .school-day-bucket-mark{background:var(--school-day-off)}.school-day-bucket-outside-school-year .school-day-bucket-mark{background:var(--school-day-outside)}.school-day-bucket-title{margin:0;font-size:.78rem;font-weight:720;letter-spacing:.14em;text-transform:uppercase;color:var(--fg)}.school-day-bucket-count{margin-inline-start:auto;font-size:.82rem;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums}.school-day-bucket-body{margin:0;font-size:1.05rem;line-height:1.55;color:var(--fg);max-width:50rem}.school-day-entry{display:inline;white-space:normal}.school-day-entry-aside{color:var(--muted);font-size:.88em}.school-day-name{color:var(--fg);text-decoration:none;font-weight:580;border-bottom:1px solid transparent;transition:border-color .12s ease,color .12s ease}a.school-day-name:hover{color:var(--accent);border-bottom-color:currentColor}.school-day-detail-link{color:inherit;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-underline-offset:.18em}.school-day-detail-link:hover{color:var(--accent);text-decoration-color:currentColor}.school-day-sep{color:var(--muted);user-select:none}.school-day-upcoming{display:grid;gap:.3rem;margin:0 0 3rem;padding:1.1rem 1.25rem;border-radius:14px;background:var(--school-day-soft);border:1px solid color-mix(in srgb,var(--accent) 14%,var(--border))}.school-day-upcoming-label{font-size:.7rem;font-weight:720;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.school-day-upcoming-value{color:var(--fg);font-size:1.02rem;line-height:1.5}.school-day-related{margin:0 0 2.5rem}.school-day-related-title{margin:0 0 .9rem;font-size:.78rem;font-weight:720;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.school-day-related-grid{display:grid;gap:.55rem;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr))}.school-day-related-link{display:inline-flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.8rem 1rem;border-radius:10px;background:transparent;border:1px solid var(--school-day-rule);color:var(--fg);text-decoration:none;font-weight:600;font-size:.96rem;transition:border-color .12s ease,background-color .12s ease,color .12s ease}.school-day-related-link:hover{background:var(--school-day-soft);border-color:color-mix(in srgb,var(--accent) 35%,var(--border));color:var(--accent)}.school-day-related-link .icon{width:.9rem;height:.9rem;flex:0 0 auto;color:var(--muted)}.school-day-related-link:hover .icon{color:currentColor}.school-day-source,.school-day-qa{margin:0 0 2.5rem}.school-day-source h2,.school-day-qa h2{margin:0 0 .7rem;font-size:.78rem;font-weight:720;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.school-day-source p{margin:0;color:var(--fg);font-size:.95rem;line-height:1.55;max-width:42rem}.school-day-qa-list{display:flex;flex-direction:column;gap:1.15rem;max-width:42rem}.school-day-qa-item h3{margin:0 0 .25rem;font-size:1rem;font-weight:680;color:var(--fg)}.school-day-qa-item p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.55}@media(max-width:720px){.school-day-hero{grid-template-columns:1fr;grid-template-areas:"eyebrow" "question" "fraction" "verdict" "caption" "dots" "chips";column-gap:0;row-gap:.7rem}.school-day-fraction{margin:.5rem 0}.school-day-fraction-numer{font-size:clamp(3.6rem,17vw,6rem)}.school-day-question,.school-day-verdict,.school-day-hero-caption{max-width:none}.school-day-dots{grid-template-columns:repeat(auto-fill,minmax(.7rem,1fr));gap:.34rem;max-width:none}.school-day-bucket-body{font-size:1rem}}@media(prefers-color-scheme:dark){:root{--bg: #0b0b0e;--surface: #15151a;--fg: #f2f2f4;--muted: #a3a3ad;--accent: #8ab4ff;--accent-light: #10233d;--button-bg: #2563eb;--button-fg: #fff;--oof: #c4b5fd;--green: #8ee6ad;--green-light: #112c1d;--green-strip: #42c47f;--green-action-bg: #0f2418;--green-action-border: #2a5f40;--orange: #f6c76f;--orange-light: #34240e;--orange-strip: #d99a2b;--orange-action-bg: #261c0d;--orange-action-border: #67491c;--red: #ff7b72;--border: #2c2c34;color-scheme:dark}.period-summer{background:#392b0a;color:#ffd166}.period-winter{background:var(--accent-light);color:#9cc8ff}.landing-calendar-day.official-weekend .landing-calendar-box{background:#202027;color:var(--muted)}tbody tr.past td{color:#62626c}tbody tr.past .badge{background:#202027;color:#62626c}tbody tr.past .btn-sm{color:#62626c;border-color:var(--border)}tbody tr.past .holiday-alt{color:#53535d}.mobile-holiday-card.past{color:#62626c}.mobile-holiday-card.past .badge{background:#202027;color:#62626c}.mobile-holiday-card.past .btn-sm{color:var(--muted);border-color:var(--border)}.mobile-holiday-card.past .holiday-alt,.mobile-holiday-card.past .mobile-holiday-date-meta,.mobile-holiday-card.past .mobile-observed-summary{color:#53535d}.badge-weekend{background:#202027;color:var(--muted)}}.page-shell[data-astro-cid-u7ptjwzh]{width:100%;margin:0 auto;padding-block:var(--layout-pad-block-start) var(--layout-pad-block-end)}.page-shell-narrow[data-astro-cid-u7ptjwzh]{max-width:var(--layout-width-narrow)}.page-shell-content[data-astro-cid-u7ptjwzh]{max-width:var(--layout-width-content)}.page-shell-wide[data-astro-cid-u7ptjwzh]{max-width:var(--layout-width-wide)}@media(max-width:640px){.page-shell[data-astro-cid-u7ptjwzh]{padding-block:var(--layout-pad-block-start-compact) var(--layout-pad-block-end-compact)}}
