:root{--color-primary:#1a5fa0;--color-primary-dark:#164e84;--color-primary-light:#74ebd5;--color-text:#222;--color-text-muted:#666;--color-text-light:#888;--color-error:#e74c3c;--color-white:#fff;--color-bg-light:#f3f6fa;--color-border:#e0e4e9;--color-header-primary:#1a5fa0;--shadow-sm:0 2px 8px rgba(31,38,135,0.1);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--shadow-lg:0 8px 32px rgba(31,38,135,0.25);--gradient-primary:linear-gradient(90deg,#43cea2 0%,var(--color-primary) 100%);--animation-duration-fast:0.2s;--animation-duration-normal:0.3s;--animation-duration-slow:0.5s;--animation-timing-bounce:cubic-bezier(0.4,0,0.2,1);--background:var(--color-white);--foreground:var(--color-text);--bg-gradient-overlay:rgba(255,255,255,0.95);--btn-primary-color:#1a5fa0;--btn-bg-color:#f3f6fa;--btn-hover-shadow:rgba(31,38,135,0.15);--btn-focus-shadow:#43cea233;--btn-border-radius:20px;--btn-transition-duration:0.2s;--min-contrast-normal-text:4.5;--min-contrast-large-text:3;--min-contrast-enhanced:7}[data-theme=light]{--background:var(--color-white);--foreground:var(--color-text);--color-text:#222;--color-text-muted:#666;--color-text-light:#888;--bg-gradient-overlay:rgba(255,255,255,0.95);--btn-bg-color:#f3f6fa;--color-link:#164e84}[data-theme=dark]{--background:#0a0a0a;--foreground:#ededed;--color-text:#ededed;--color-text-muted:#999;--color-text-light:#aaa;--bg-gradient-overlay:rgba(22,22,22,0.95);--btn-bg-color:#3b3b3b;--color-link:#74ebd5;--btn-primary-color:#a7a7a7;--color-header-primary:#bcbcbc}body{background:var(--background);color:var(--foreground);font-family:Arial,Helvetica,sans-serif;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}.app-root{display:block;margin:0}.app-container{margin:0 auto;display:flex;flex-direction:column}.app-title{font-weight:700;font-size:2.1rem;color:var(--color-primary);text-align:center;margin:0 0 20px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-40px;left:0;background:var(--color-primary);color:white;padding:8px;z-index:100;transition:top .2s ease}.skip-link:focus{top:0}:focus{outline:2px solid var(--color-primary);outline-offset:2px}:focus:not(:focus-visible){outline:none}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;box-shadow:0 0 0 4px var(--btn-focus-shadow)}@media (forced-colors:active){.button,.card,.tile{border:1px solid}:focus{outline:2px solid currentColor}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media screen and (min-width:768px){html{max-width:100vw;overflow-x:hidden}}@media print{body{background:white;color:black;font-size:12pt}a[href]:after{content:" (" attr(href) ")"}}.app-footer{--footer-font-size:15px;--footer-spacing:32px;--button-radius:8px;text-align:center;margin-top:var(--footer-spacing);color:var(--color-text);font-size:var(--footer-font-size)}.app-footer__link{color:var(--color-link);text-decoration:underline;transition:color var(--animation-duration-fast)}.app-footer__link:focus,.app-footer__link:hover{color:var(--color-link-hover)}.app-footer__link:focus{outline:2px solid var(--color-primary);outline-offset:2px}.last-updated-row{margin-bottom:10px}.last-updated-label{margin-right:10px}.last-updated-btn{padding:.5rem .75rem;border-radius:var(--button-radius);background:var(--color-primary);color:var(--color-white);border:none;font-weight:600;font-size:.8rem;cursor:pointer;transition:all var(--animation-duration-fast);white-space:nowrap;align-self:flex-start}.last-updated-btn:hover{background:var(--color-primary-dark)}.footer-links{margin-bottom:20px}.Header_header__AF_3G{display:flex;align-items:center;justify-content:center;margin-bottom:1rem;position:relative;z-index:100;padding:.5rem}.Header_titleRow__RVoLG{display:flex;flex-direction:column;align-items:center;width:100%;max-width:1200px;gap:.5rem}.Header_title__a3JC3{font-size:1.2rem;font-weight:700;color:var(--color-header-primary);margin:0;text-align:center}.Header_navigation__CQjNn{display:flex;align-items:center;gap:.5rem;margin:.5rem 0;justify-content:center}.Header_navLink__bX76H{color:var(--color-header-primary);text-decoration:none;font-weight:500;transition:color .2s ease;font-size:.9rem}.Header_navLink__bX76H:hover{color:var(--color-secondary);text-decoration:underline}.Header_navSeparator__3xdbx{color:var(--color-header-primary);opacity:.5}.Header_buttonGroup__SE6hd{display:flex;gap:.5rem;align-items:center;justify-content:center;margin-left:1rem}.Header_locationToggle__rDZvM,.Header_themeToggle__6FVvb,.Header_unitToggle__cq4jF{background:var(--btn-bg-color);color:var(--btn-primary-color);font-weight:600;font-size:.9rem;padding:.4rem .8rem;border:none;border-radius:var(--btn-border-radius);cursor:pointer;transition:all var(--btn-transition-duration)}.Header_themeToggle__6FVvb{padding:.4rem;font-size:1rem;line-height:1;display:flex;align-items:center;justify-content:center}.Header_locationToggle__rDZvM:active,.Header_locationToggle__rDZvM:hover,.Header_themeToggle__6FVvb:active,.Header_themeToggle__6FVvb:hover,.Header_unitToggle__cq4jF:active,.Header_unitToggle__cq4jF:hover{background:var(--btn-primary-color);color:var(--color-white);box-shadow:0 4px 12px var(--btn-hover-shadow)}@media (min-width:768px){.Header_header__AF_3G{padding:.75rem 1rem}.Header_titleRow__RVoLG{flex-direction:row;justify-content:space-between;align-items:center;gap:1rem}.Header_title__a3JC3{font-size:1.2rem;text-align:left;flex-shrink:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.Header_navigation__CQjNn{margin:0 1rem;flex-shrink:0}.Header_buttonGroup__SE6hd{flex-shrink:0}.Header_locationToggle__rDZvM{padding:.4rem .8rem}.Header_themeToggle__6FVvb{padding:.4rem}}.Header_locationSwitcherWrapper__g4cC8{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;justify-content:center;align-items:flex-start;padding-top:100px;z-index:1000}.Header_overlay__zmKdm{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:Header_fadeIn__zX5C2 .2s ease-out}.Header_locationSwitcher__PVbK7{margin:0 auto;position:relative;z-index:1;animation:Header_slideIn__fgH01 .3s ease-out}@keyframes Header_fadeIn__zX5C2{0%{opacity:0}to{opacity:1}}@keyframes Header_slideIn__fgH01{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.Header_skipLink__XoP_F{position:absolute;top:-40px;left:0;background:#1a5fa0;color:var(--color-white);padding:8px;z-index:1000;transition:top .2s ease}.Header_skipLink__XoP_F:focus{top:0;outline:2px solid var(--btn-primary-color);outline-offset:2px}.Header_locationToggle__rDZvM:focus-visible,.Header_navLink__bX76H:focus-visible,.Header_themeToggle__6FVvb:focus-visible,.Header_unitToggle__cq4jF:focus-visible{outline:2px solid var(--btn-primary-color);outline-offset:2px}.location-form{--switcher-radius:12px;--switcher-padding:1.25rem;--switcher-button-radius:8px;--switcher-border-width:2px;--switcher-color-muted:#6f747a;--switcher-color-background:#f8fafc;display:flex;flex-direction:column;width:100%;background:var(--color-white);border-radius:var(--switcher-radius);overflow:hidden;box-shadow:var(--shadow-md)}.location_switcher__header{display:flex;justify-content:space-between;align-items:center;padding:1rem var(--switcher-padding);background:var(--switcher-color-background);border-bottom:1px solid var(--color-border)}.location_switcher__title{margin:0;font-size:1.1rem;font-weight:600;color:#333}.location_switcher__close{background:none;border:none;color:var(--switcher-color-muted);font-size:1.2rem;padding:.4rem;cursor:pointer;line-height:1;border-radius:6px;transition:all var(--animation-duration-fast)}.location_switcher__close:hover{background:rgba(0,0,0,.05);color:var(--color-text)}.location_switcher__content{padding:var(--switcher-padding)}.location_switcher__row{flex-direction:column;align-items:center;display:flex;gap:1rem;margin-bottom:1rem;justify-content:center}@media (min-width:768px){.location_switcher__row--align{align-self:flex-start}.location_switcher__row{flex-direction:row;align-items:baseline}}.location_switcher__inputs{display:flex;flex-direction:column;gap:.5rem}.location_switcher__input{width:inherit;padding:.75rem 1rem;border:var(--switcher-border-width) solid var(--color-border);border-radius:var(--switcher-button-radius);font-size:1rem;transition:all var(--animation-duration-fast);background:var(--color-white)}.location_switcher__input:focus{border-color:var(--color-primary);box-shadow:0 0 0 .2rem rgba(26,95,160,.15);outline:none}.location_switcher__help{color:var(--switcher-color-muted);font-size:.85rem}.location_switcher__btn,.location_switcher__btn__my-location{padding:.75rem 1.4rem;border-radius:var(--switcher-button-radius);background:var(--color-primary);color:var(--color-white);border:var(--switcher-border-width) solid var(--color-primary);font-weight:600;font-size:.95rem;cursor:pointer;transition:all var(--animation-duration-fast);white-space:nowrap}.location_switcher__btn:active,.location_switcher__btn:hover{background:var(--color-primary-dark)}.location_switcher__btn__my-location{background-color:var(--color-white);color:var(--color-primary);border:var(--switcher-border-width) solid var(--color-primary);display:inline-flex;align-items:center;gap:.5rem}.location_switcher__btn__my-location:hover{background:var(--color-bg-light)}.location_switcher__icon{width:1rem;height:1rem;fill:currentColor;flex-shrink:0}.location_switcher__divider{color:var(--switcher-color-muted);font-weight:500;font-size:.9rem;margin:0 .5rem}@media (min-width:768px){.location_switcher__divider{margin:15px .5rem}}.error-message{--error-bg:#fff6f6;--error-border:#fad7d7;color:var(--color-error);background:var(--error-bg);border:1px solid var(--error-border);padding:.75rem 1rem;border-radius:var(--switcher-button-radius);text-align:center;font-weight:500;font-size:.9rem;margin-bottom:1rem}.error-boundary{padding:2rem;margin:1rem;border-radius:8px;background-color:#fff3f3;border:1px solid #ffcdd2;text-align:center}.error-boundary h2{color:#d32f2f;margin-bottom:1rem}.error-boundary p{color:#b71c1c;margin-bottom:1.5rem}.error-boundary button{padding:.5rem 1rem;border:none;border-radius:4px;background-color:#d32f2f;color:white;cursor:pointer;transition:background-color .2s}.error-boundary button:hover{background-color:#b71c1c}@media (prefers-color-scheme:dark){.error-boundary{background-color:#3c1f1f;border-color:#632626}.error-boundary h2{color:#ff8a80}.error-boundary p{color:#ffcdd2}.error-boundary button{background-color:#ff5252}.error-boundary button:hover{background-color:#ff1744}}