#starry-canvas[data-astro-cid-43oau6w5]{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:-1;opacity:0;transition:opacity .5s ease}#starry-canvas[data-astro-cid-43oau6w5].active{opacity:1}.starry-toggle[data-astro-cid-43oau6w5]{position:fixed;bottom:20px;right:20px;width:48px;height:48px;border-radius:50%;background:transparent;border:2px solid var(--border-default);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);z-index:9999}.starry-toggle[data-astro-cid-43oau6w5]:hover{background:var(--bg-card);border-color:var(--accent-primary);color:var(--accent-primary);transform:translateY(-2px);box-shadow:0 6px 16px #00000026}.starry-toggle[data-astro-cid-43oau6w5].active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.starry-toggle[data-astro-cid-43oau6w5].active svg[data-astro-cid-43oau6w5]{fill:currentColor}@media(max-width:768px){.starry-toggle[data-astro-cid-43oau6w5]{bottom:var(--space-md);right:var(--space-md);width:44px;height:44px}}.sw-update-notification[data-astro-cid-sckkx6r4]{position:fixed;bottom:20px;right:20px;background:var(--bg-elevated);border:1px solid var(--accent-primary);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:0 4px 12px #0000004d;z-index:9999;animation:slideUp .3s ease-out}.sw-update-content[data-astro-cid-sckkx6r4]{display:flex;flex-direction:column;gap:var(--space-md)}.sw-update-content[data-astro-cid-sckkx6r4] p[data-astro-cid-sckkx6r4]{margin:0;font-weight:var(--font-semibold);color:var(--text-primary)}.sw-update-btn[data-astro-cid-sckkx6r4],.sw-dismiss-btn[data-astro-cid-sckkx6r4]{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-fast)}.sw-update-btn[data-astro-cid-sckkx6r4]{background:var(--accent-primary);color:#fff;border:none}.sw-update-btn[data-astro-cid-sckkx6r4]:hover{background:var(--purple-600)}.sw-dismiss-btn[data-astro-cid-sckkx6r4]{background:transparent;color:var(--text-secondary);border:1px solid var(--border-default)}.sw-dismiss-btn[data-astro-cid-sckkx6r4]:hover{background:var(--bg-secondary)}@keyframes slideUp{0%{transform:translateY(100px);opacity:0}to{transform:translateY(0);opacity:1}}#pwa-install-btn[data-astro-cid-sckkx6r4]{display:none}@layer reset,tokens,base,components,utilities;@layer reset.reset{*,*:before,*:after{box-sizing:border-box}*{margin:0}html{interpolate-size:allow-keywords}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}#root,#__next{isolation:isolate}}@layer tokens{:root{--cyan-50: hsl(187, 92%, 97%);--cyan-100: hsl(185, 96%, 90%);--cyan-200: hsl(186, 94%, 82%);--cyan-300: hsl(187, 92%, 74%);--cyan-400: hsl(188, 86%, 53%);--cyan-500: hsl(189, 94%, 43%);--cyan-600: hsl(192, 91%, 36%);--cyan-700: hsl(193, 82%, 31%);--cyan-800: hsl(194, 70%, 27%);--cyan-900: hsl(196, 64%, 24%);--cyan-950: hsl(197, 79%, 15%);--purple-50: hsl(270, 100%, 98%);--purple-100: hsl(270, 100%, 95%);--purple-200: hsl(270, 100%, 92%);--purple-300: hsl(270, 97%, 87%);--purple-400: hsl(270, 95%, 75%);--purple-500: hsl(270, 91%, 65%);--purple-600: hsl(271, 81%, 56%);--purple-700: hsl(271, 72%, 47%);--purple-800: hsl(272, 67%, 39%);--purple-900: hsl(274, 66%, 32%);--purple-950: hsl(276, 80%, 20%);--slate-950: hsl(221, 85%, 6%);--slate-900: hsl(221, 80%, 11%);--slate-800: hsl(221, 70%, 17%);--slate-700: hsl(221, 60%, 24%);--slate-600: hsl(221, 50%, 32%);--slate-500: hsl(221, 40%, 45%);--slate-400: hsl(221, 30%, 60%);--slate-300: hsl(221, 25%, 75%);--slate-200: hsl(221, 20%, 88%);--slate-100: hsl(221, 15%, 94%);--slate-50: hsl(221, 10%, 98%);--green-50: hsl(138, 76%, 97%);--green-100: hsl(141, 84%, 93%);--green-200: hsl(141, 79%, 85%);--green-300: hsl(142, 77%, 73%);--green-400: hsl(142, 69%, 58%);--green-500: hsl(142, 71%, 45%);--green-600: hsl(142, 76%, 36%);--green-700: hsl(142, 72%, 29%);--green-800: hsl(143, 64%, 24%);--green-900: hsl(144, 61%, 20%);--green-950: hsl(145, 80%, 10%);--yellow-50: hsl(55, 92%, 95%);--yellow-100: hsl(55, 97%, 88%);--yellow-200: hsl(53, 98%, 77%);--yellow-300: hsl(50, 98%, 64%);--yellow-400: hsl(48, 96%, 53%);--yellow-500: hsl(45, 93%, 47%);--yellow-600: hsl(41, 96%, 40%);--yellow-700: hsl(35, 92%, 33%);--yellow-800: hsl(32, 81%, 29%);--yellow-900: hsl(28, 73%, 26%);--yellow-950: hsl(26, 83%, 14%);--orange-50: hsl(33, 100%, 96%);--orange-100: hsl(34, 100%, 92%);--orange-200: hsl(32, 98%, 83%);--orange-300: hsl(31, 97%, 72%);--orange-400: hsl(27, 96%, 61%);--orange-500: hsl(25, 95%, 53%);--orange-600: hsl(21, 90%, 48%);--orange-700: hsl(17, 88%, 40%);--orange-800: hsl(15, 79%, 34%);--orange-900: hsl(15, 75%, 28%);--orange-950: hsl(13, 81%, 15%);--red-50: hsl(0, 86%, 97%);--red-100: hsl(0, 93%, 94%);--red-200: hsl(0, 96%, 89%);--red-300: hsl(0, 94%, 82%);--red-400: hsl(0, 91%, 71%);--red-500: hsl(0, 84%, 60%);--red-600: hsl(0, 72%, 51%);--red-700: hsl(0, 74%, 42%);--red-800: hsl(0, 70%, 35%);--red-900: hsl(0, 63%, 31%);--red-950: hsl(0, 75%, 15%);--blue-50: hsl(214, 100%, 97%);--blue-100: hsl(214, 95%, 93%);--blue-200: hsl(213, 97%, 87%);--blue-300: hsl(212, 96%, 78%);--blue-400: hsl(213, 94%, 68%);--blue-500: hsl(217, 91%, 60%);--blue-600: hsl(221, 83%, 53%);--blue-700: hsl(224, 76%, 48%);--blue-800: hsl(226, 71%, 40%);--blue-900: hsl(224, 64%, 33%);--blue-950: hsl(226, 55%, 21%);--cyan-opacity-5: rgba(6, 182, 212, .05);--cyan-opacity-10: rgba(6, 182, 212, .1);--cyan-opacity-15: rgba(6, 182, 212, .15);--cyan-opacity-20: rgba(6, 182, 212, .2);--cyan-opacity-30: rgba(6, 182, 212, .3);--cyan-opacity-40: rgba(6, 182, 212, .4);--cyan-opacity-50: rgba(6, 182, 212, .5);--cyan-opacity-60: rgba(6, 182, 212, .6);--cyan-opacity-70: rgba(6, 182, 212, .7);--cyan-opacity-80: rgba(6, 182, 212, .8);--cyan-opacity-90: rgba(6, 182, 212, .9);--purple-opacity-5: rgba(168, 85, 247, .05);--purple-opacity-10: rgba(168, 85, 247, .1);--purple-opacity-15: rgba(168, 85, 247, .15);--purple-opacity-20: rgba(168, 85, 247, .2);--purple-opacity-30: rgba(168, 85, 247, .3);--purple-opacity-40: rgba(168, 85, 247, .4);--purple-opacity-50: rgba(168, 85, 247, .5);--purple-opacity-60: rgba(168, 85, 247, .6);--purple-opacity-70: rgba(168, 85, 247, .7);--purple-opacity-80: rgba(168, 85, 247, .8);--purple-opacity-90: rgba(168, 85, 247, .9);--green-opacity-5: rgba(34, 197, 94, .05);--green-opacity-10: rgba(34, 197, 94, .1);--green-opacity-15: rgba(34, 197, 94, .15);--green-opacity-20: rgba(34, 197, 94, .2);--green-opacity-30: rgba(34, 197, 94, .3);--green-opacity-40: rgba(34, 197, 94, .4);--green-opacity-50: rgba(34, 197, 94, .5);--green-opacity-60: rgba(34, 197, 94, .6);--green-opacity-70: rgba(34, 197, 94, .7);--green-opacity-80: rgba(34, 197, 94, .8);--green-opacity-90: rgba(34, 197, 94, .9);--yellow-opacity-5: rgba(234, 179, 8, .05);--yellow-opacity-10: rgba(234, 179, 8, .1);--yellow-opacity-15: rgba(234, 179, 8, .15);--yellow-opacity-20: rgba(234, 179, 8, .2);--yellow-opacity-30: rgba(234, 179, 8, .3);--yellow-opacity-40: rgba(234, 179, 8, .4);--yellow-opacity-50: rgba(234, 179, 8, .5);--yellow-opacity-60: rgba(234, 179, 8, .6);--yellow-opacity-70: rgba(234, 179, 8, .7);--yellow-opacity-80: rgba(234, 179, 8, .8);--yellow-opacity-90: rgba(234, 179, 8, .9);--red-opacity-5: rgba(239, 68, 68, .05);--red-opacity-10: rgba(239, 68, 68, .1);--red-opacity-15: rgba(239, 68, 68, .15);--red-opacity-20: rgba(239, 68, 68, .2);--red-opacity-30: rgba(239, 68, 68, .3);--red-opacity-40: rgba(239, 68, 68, .4);--red-opacity-50: rgba(239, 68, 68, .5);--red-opacity-60: rgba(239, 68, 68, .6);--red-opacity-70: rgba(239, 68, 68, .7);--red-opacity-80: rgba(239, 68, 68, .8);--red-opacity-90: rgba(239, 68, 68, .9);--blue-opacity-5: rgba(59, 130, 246, .05);--blue-opacity-10: rgba(59, 130, 246, .1);--blue-opacity-15: rgba(59, 130, 246, .15);--blue-opacity-20: rgba(59, 130, 246, .2);--blue-opacity-30: rgba(59, 130, 246, .3);--blue-opacity-40: rgba(59, 130, 246, .4);--blue-opacity-50: rgba(59, 130, 246, .5);--blue-opacity-60: rgba(59, 130, 246, .6);--blue-opacity-70: rgba(59, 130, 246, .7);--blue-opacity-80: rgba(59, 130, 246, .8);--blue-opacity-90: rgba(59, 130, 246, .9);--slate-opacity-5: rgba(15, 23, 42, .05);--slate-opacity-10: rgba(15, 23, 42, .1);--slate-opacity-15: rgba(15, 23, 42, .15);--slate-opacity-20: rgba(15, 23, 42, .2);--slate-opacity-30: rgba(15, 23, 42, .3);--slate-opacity-40: rgba(15, 23, 42, .4);--slate-opacity-50: rgba(15, 23, 42, .5);--slate-opacity-60: rgba(15, 23, 42, .6);--slate-opacity-70: rgba(15, 23, 42, .7);--slate-opacity-80: rgba(15, 23, 42, .8);--slate-opacity-90: rgba(15, 23, 42, .9);--white-opacity-5: rgba(255, 255, 255, .05);--white-opacity-8: rgba(255, 255, 255, .08);--white-opacity-10: rgba(255, 255, 255, .1);--white-opacity-15: rgba(255, 255, 255, .15);--white-opacity-20: rgba(255, 255, 255, .2);--white-opacity-30: rgba(255, 255, 255, .3);--white-opacity-40: rgba(255, 255, 255, .4);--white-opacity-50: rgba(255, 255, 255, .5);--white-opacity-60: rgba(255, 255, 255, .6);--white-opacity-70: rgba(255, 255, 255, .7);--white-opacity-80: rgba(255, 255, 255, .8);--white-opacity-90: rgba(255, 255, 255, .9);--black-opacity-5: rgba(0, 0, 0, .05);--black-opacity-10: rgba(0, 0, 0, .1);--black-opacity-15: rgba(0, 0, 0, .15);--black-opacity-20: rgba(0, 0, 0, .2);--black-opacity-30: rgba(0, 0, 0, .3);--black-opacity-40: rgba(0, 0, 0, .4);--black-opacity-50: rgba(0, 0, 0, .5);--black-opacity-60: rgba(0, 0, 0, .6);--black-opacity-70: rgba(0, 0, 0, .7);--black-opacity-80: rgba(0, 0, 0, .8);--black-opacity-90: rgba(0, 0, 0, .9);--bg-primary: var(--slate-950);--bg-primary-opacity-80: var(--slate-opacity-80);--bg-primary-opacity-90: var(--slate-opacity-90);--bg-primary-opacity-95: rgba(10, 15, 30, .95);--bg-secondary: var(--slate-900);--bg-secondary-opacity-80: rgba(15, 23, 42, .8);--bg-secondary-opacity-90: rgba(15, 23, 42, .9);--bg-card: var(--slate-900);--bg-card-opacity-80: rgba(15, 23, 42, .8);--bg-elevated: hsl(222, 47%, 8%);--bg-elevated-opacity-80: hsla(222, 47%, 8%, .8);--bg-elevated-opacity-90: hsla(222, 47%, 8%, .9);--text-primary: hsl(0, 0%, 100%);--text-secondary: var(--slate-400);--text-muted: var(--white-opacity-50);--border-default: var(--white-opacity-5);--border-hover: var(--white-opacity-8);--border-focus: var(--white-opacity-15);--border-active: var(--white-opacity-20);--accent-primary: var(--purple-500);--accent-secondary: var(--cyan-500)}}@layer tokens{:root{--space-xs: 8px;--space-sm: 12px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--space-3xl: 64px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-2xl: 24px;--radius-full: 9999px;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-size-xs: clamp(.7rem, .65rem + .25vw, .75rem);--font-size-sm: clamp(.8rem, .75rem + .25vw, .875rem);--font-size-base: clamp(.9rem, .85rem + .25vw, 1rem);--font-size-lg: clamp(1rem, .95rem + .25vw, 1.125rem);--font-size-xl: clamp(1.125rem, 1.05rem + .375vw, 1.25rem);--font-size-2xl: clamp(1.25rem, 1.1rem + .75vw, 1.5rem);--font-size-3xl: clamp(1.5rem, 1.2rem + 1.5vw, 2rem);--font-size-4xl: clamp(1.75rem, 1.35rem + 2vw, 2.5rem);--font-size-5xl: clamp(2rem, 1.5rem + 2.5vw, 3rem);--font-medium: 500;--font-semibold: 600;--font-bold: 700;--shadow-sm: 0 1px 3px hsl(0 0% 0% / .12);--shadow-md: 0 4px 6px hsl(0 0% 0% / .1);--shadow-lg: 0 10px 15px hsl(0 0% 0% / .2);--shadow-xl: 0 20px 25px hsl(0 0% 0% / .3);--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .35s ease;--blur-sm: 2px;--blur-base: 4px;--blur-lg: 8px;--icon-xs: 16px;--icon-sm: 20px;--icon-md: 24px;--icon-lg: 32px;--icon-xl: 40px;--icon-2xl: 48px;--header-height: 4rem;--score-threshold-excellent: 80;--score-threshold-very-good: 70;--score-threshold-good: 60;--score-threshold-fair: 40;--score-threshold-bad: 0;--score-color-excellent: var(--green-500);--score-color-very-good: var(--cyan-500);--score-color-good: var(--yellow-500);--score-color-fair: var(--orange-500);--score-color-bad: var(--red-500)}}@layer utilities{@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes pulseScale{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes valueChange{0%{color:var(--cyan-400);text-shadow:0 0 10px var(--cyan-500);transform:scale(1)}50%{transform:scale(1.02)}to{color:inherit;text-shadow:none;transform:scale(1)}}.animate-fade-in{animation:fadeIn .5s ease-in}.animate-fade-in-slow{animation:fadeIn .8s ease-in}.animate-slide-up{animation:slideUp .6s ease-out}.animate-slide-down{animation:slideDown .6s ease-out}.animate-slide-in-left{animation:slideInLeft .5s ease-out}.animate-slide-in-right{animation:slideInRight .5s ease-out}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-pulse-slow{animation:pulse 3s cubic-bezier(.4,0,.6,1) infinite}.animate-pulse-scale{animation:pulseScale 2s ease-in-out infinite}.animate-spin{animation:spin 1s linear infinite}.animate-spin-slow{animation:spin 2s linear infinite}.animate-bounce{animation:bounce 1s ease-in-out infinite}.animate-shimmer{animation:shimmer 2s linear infinite;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.1) 50%,transparent 100%);background-size:1000px 100%}.value-changed{color:var(--cyan-400);font-weight:var(--font-bold);transition:all .3s ease}.value-morphing{animation:morphOut .15s ease-out forwards}.value-morphed{animation:morphIn .3s ease-out forwards}@keyframes morphOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}@keyframes morphIn{0%{opacity:0;transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.animation-delay-100{animation-delay:.1s}.animation-delay-200{animation-delay:.2s}.animation-delay-300{animation-delay:.3s}.animation-delay-500{animation-delay:.5s}.animation-duration-fast{animation-duration:.2s}.animation-duration-base{animation-duration:.3s}.animation-duration-slow{animation-duration:.5s}.transition-all{transition:all .3s ease}.transition-colors{transition:color .3s ease,background-color .3s ease,border-color .3s ease}.transition-transform{transition:transform .3s ease}.transition-opacity{transition:opacity .3s ease}}@layer base{body{font-family:var(--font-sans);font-size:var(--font-size-base);color:var(--text-primary);background:var(--bg-primary)}.pwa-install-btn{position:fixed;bottom:20px;left:50%;transform:translate(-50%);display:none;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);background:linear-gradient(135deg,var(--accent-primary) 0%,var(--purple-600) 100%);color:#fff;border:none;border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-semibold);box-shadow:0 4px 20px #8b5cf680;cursor:pointer;transition:all var(--transition-fast);z-index:9998;white-space:nowrap}.pwa-install-btn svg{flex-shrink:0}.pwa-install-btn:hover{transform:translate(-50%) translateY(-2px);box-shadow:0 6px 24px #8b5cf699}.pwa-install-btn:active{transform:translate(-50%) translateY(0)}@media(min-width:768px){.pwa-install-btn{display:none!important}}}@layer utilities{.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.grid{display:grid}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.text-center{text-align:center}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.icon-xs{width:var(--icon-xs);height:var(--icon-xs)}.icon-sm{width:var(--icon-sm);height:var(--icon-sm)}.icon-md{width:var(--icon-md);height:var(--icon-md)}.icon-lg{width:var(--icon-lg);height:var(--icon-lg)}.icon-xl{width:var(--icon-xl);height:var(--icon-xl)}.icon-2xl{width:var(--icon-2xl);height:var(--icon-2xl)}}@layer components{.card{backdrop-filter:blur(var(--blur-base));border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--space-lg);transition:all var(--transition-fast)}.card:hover{border-color:var(--border-hover);transform:translateY(-2px);box-shadow:var(--shadow-md)}.card-header{display:flex;align-items:center;margin-bottom:var(--space-md)}.card-header svg{flex-shrink:0}.card-label{font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.05em}.card-value{font-weight:var(--font-bold)}.ensemble-date.card-date{text-align:center;display:block;width:100%}.date-weekday{display:block;color:var(--slate-400)}.date-day-month{display:block;font-size:var(--font-size-lg);font-weight:var(--font-semibold)}.card-ensemble .models{display:flex;flex-direction:column;gap:var(--space-sm);margin-bottom:var(--space-lg)}.card-ensemble .model-bar{display:grid;grid-template-columns:60px 1fr 40px;align-items:center;gap:var(--space-sm)}.card-ensemble .model-name{font-size:var(--font-size-xs);font-weight:var(--font-semibold);color:var(--text-secondary);text-transform:uppercase}.card-ensemble .model-progress{height:6px;background:var(--bg-elevated);border-radius:var(--radius-full);overflow:hidden}.card-ensemble .model-progress-bar{height:100%;border-radius:var(--radius-full);transition:width var(--transition-slow)}.card-ensemble .model-progress-bar.score-excellent{background:var(--score-color-excellent)}.card-ensemble .model-progress-bar.score-very-good{background:var(--score-color-very-good)}.card-ensemble .model-progress-bar.score-good{background:var(--score-color-good)}.card-ensemble .model-progress-bar.score-fair{background:var(--score-color-fair)}.card-ensemble .model-progress-bar.score-bad{background:var(--score-color-bad)}.card-ensemble .model-score{font-size:var(--font-size-sm);font-weight:var(--font-semibold);color:var(--text-primary);text-align:right}.card-ensemble .card-details{display:flex;flex-direction:column;gap:var(--space-xs);padding-top:var(--space-md);border-top:1px solid var(--border-default)}.card-ensemble .detail-item{display:flex;justify-content:space-between;align-items:center}.card-ensemble .detail-label{font-size:var(--font-size-xs);color:var(--slate-400)}.card-ensemble .detail-value{font-size:var(--font-size-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.tab-button:focus-visible,button:focus-visible,[role=button]:focus-visible,a.button:focus-visible,.search-input:focus-visible,.search-result-item:focus-visible{outline:2px solid var(--cyan-500);outline-offset:2px;border-color:var(--cyan-500);box-shadow:0 0 0 3px #06b6d426}}#site-main{padding-block-start:var(--space-xl);padding-block-end:var(--space-xl)}.card-date{font-size:var(--font-size-base);font-weight:var(--font-semibold);color:var(--text-primary)}.score-value{font-size:var(--font-size-5xl);font-weight:var(--font-bold);text-align:center;margin-bottom:var(--space-lg)}.score-excellent{color:var(--score-color-excellent)}.score-very-good{color:var(--score-color-very-good)}.score-good{color:var(--score-color-good)}.score-fair{color:var(--score-color-fair)}.score-bad{color:var(--score-color-bad)}@layer utilities{@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}}.leaflet-popup-content-wrapper{background:var(--bg-card)!important;border-radius:var(--radius-lg)!important;padding:0!important;box-shadow:0 10px 40px #0000004d!important}.leaflet-popup-content{margin:0!important;min-width:200px!important}.leaflet-popup-tip{background:var(--bg-card)!important}.map-popup{padding:var(--space-lg);color:var(--text-primary);font-family:system-ui,-apple-system,sans-serif}.map-popup h3{margin:0 0 var(--space-md) 0;font-size:var(--font-size-lg);font-weight:var(--font-semibold);color:var(--text-primary)}.popup-close{position:absolute;top:var(--space-sm);right:var(--space-sm);background:transparent;border:none;color:var(--text-secondary);font-size:24px;line-height:1;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:color var(--transition-fast)}.popup-close:hover{color:var(--text-primary)}.popup-info{display:flex;flex-direction:column;gap:var(--space-xs);margin-bottom:var(--space-md)}.popup-row{font-size:var(--font-size-sm);color:var(--text-secondary)}.popup-row strong{color:var(--text-primary);font-weight:var(--font-semibold)}.popup-route-btn{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);background:var(--accent-primary);color:#fff;text-decoration:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-semibold);transition:all var(--transition-fast);width:100%;justify-content:center}.popup-route-btn:hover{background:var(--purple-600);transform:translateY(-1px)}.popup-route-btn svg{flex-shrink:0}.container[data-astro-cid-d6puh33w]{margin-inline:auto;padding-inline:var(--space-lg)}.container-default[data-astro-cid-d6puh33w]{max-width:1400px}.container-narrow[data-astro-cid-d6puh33w]{max-width:800px}.container-wide[data-astro-cid-d6puh33w]{max-width:1800px}.container-full[data-astro-cid-d6puh33w]{max-width:100%}@media(max-width:768px){.container[data-astro-cid-d6puh33w]{padding-inline:var(--space-md)}}#site-header{position:sticky;top:0;z-index:8000;height:var(--header-height);border-bottom:1px solid var(--border-default);backdrop-filter:blur(var(--blur-base));background-color:var(--bg-primary)}.header-container{display:flex;justify-content:space-between;align-items:center;gap:var(--space-lg);height:100%}.header-left{display:flex;align-items:center;gap:var(--space-sm);flex:1}.header-logo{height:32px;width:auto;display:block}.header-title{font-weight:var(--font-bold);font-size:var(--font-size-lg);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.location-name{color:var(--cyan-500);font-weight:var(--font-semibold)}.location-edit-btn{display:flex;align-items:center;justify-content:center;width:var(--icon-md);height:var(--icon-md);padding:0;border:0;background-color:transparent;border-radius:var(--radius-full);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);margin-left:-8px}.location-edit-btn:hover{color:var(--text-primary)}.location-edit-btn svg{width:var(--icon-xs);height:var(--icon-xs)}.header-meta{margin-inline-start:var(--space-sm);display:flex;align-items:center;gap:var(--space-sm)}.header-center{display:flex;align-items:center;gap:var(--space-sm)}.header-time{font-size:var(--font-size-sm);color:var(--text-primary);font-weight:var(--font-semibold)}.temp-badge{font-size:var(--font-size-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.auto-update-badge{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--font-size-xs);color:var(--text-secondary);font-variant-numeric:tabular-nums}.auto-update-badge svg{opacity:.5}.header-nav{display:flex;align-items:center;gap:var(--space-xs)}.nav-link{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-md);font-weight:var(--font-semibold);color:var(--text-secondary);text-decoration:none;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.nav-link:hover{color:var(--text-primary)}.nav-link.active{color:var(--cyan-500)}.nav-link svg{opacity:.7}.burger-btn{display:none;position:relative;width:28px;height:28px;background:transparent;border:none;cursor:pointer;padding:0;z-index:9001}.burger-line{position:absolute;left:0;width:100%;height:2px;background:var(--text-primary);border-radius:2px;transition:all .3s ease}.burger-line:nth-child(1){top:6px}.burger-line:nth-child(2){top:13px}.burger-line:nth-child(3){top:20px}.burger-btn.active .burger-line:nth-child(1){top:13px;transform:rotate(45deg)}.burger-btn.active .burger-line:nth-child(2){opacity:0}.burger-btn.active .burger-line:nth-child(3){top:13px;transform:rotate(-45deg)}@media(max-width:1024px){.header-center{display:none}}@media(max-width:768px){.header-container{flex-wrap:nowrap;gap:var(--space-sm)}.header-left{flex:1;gap:var(--space-xs)}.header-logo{height:24px}.header-title{font-size:var(--font-size-sm)}.header-meta{margin-inline-start:auto}.temp-badge,.header-time{font-size:var(--font-size-xs)}.auto-update-badge{display:none!important}.burger-btn{display:flex}.header-nav{display:none;position:fixed;top:var(--header-height);right:0;width:280px;max-width:80vw;height:calc(100vh - var(--header-height));background:var(--bg-primary);border-left:1px solid var(--border-default);flex-direction:column;align-items:stretch;gap:0;padding:var(--space-lg);transform:translate(100%);transition:transform .3s ease;z-index:9000;box-shadow:-4px 0 12px #0000004d}.header-nav.active{display:flex;transform:translate(0)}.nav-link{justify-content:flex-start;padding:var(--space-md);font-size:var(--font-size-md);border-radius:var(--radius-sm);border-bottom:none}.nav-link:hover{background:#06b6d41a}.nav-link.active{background:#06b6d426;border-bottom:none}}@media(max-width:480px){.header-title{font-size:var(--font-size-xs)}.location-name{display:inline;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.footer[data-astro-cid-sz7xmlte]{padding-block:var(--space-xl);border-top:1px solid var(--border-default)}.footer-content[data-astro-cid-sz7xmlte]{max-width:800px;margin:0 auto;text-align:center}.footer-tagline[data-astro-cid-sz7xmlte]{font-size:var(--font-size-base);color:var(--text-secondary);margin-bottom:var(--space-lg)}.footer-links[data-astro-cid-sz7xmlte],.footer-legal[data-astro-cid-sz7xmlte]{display:flex;justify-content:center;align-items:center;gap:var(--space-sm);flex-wrap:wrap;margin-bottom:var(--space-md)}.footer-legal[data-astro-cid-sz7xmlte]{margin-bottom:0}.footer-links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte],.footer-legal[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--text-secondary);text-decoration:none;font-size:var(--font-size-sm);transition:color var(--transition-fast)}.footer-links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover,.footer-legal[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--accent-primary)}.footer-separator[data-astro-cid-sz7xmlte]{color:var(--text-muted);opacity:.5;user-select:none}
