/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-orange-500:oklch(70.5% .213 47.604);--color-orange-600:oklch(64.6% .222 41.116);--color-orange-700:oklch(55.3% .195 38.402);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-600:oklch(66.6% .179 58.318);--color-amber-700:oklch(55.5% .163 48.998);--color-amber-800:oklch(47.3% .137 46.201);--color-yellow-500:oklch(79.5% .184 86.047);--color-yellow-600:oklch(68.1% .162 75.834);--color-yellow-700:oklch(55.4% .135 66.442);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-cyan-600:oklch(60.9% .126 221.723);--color-sky-300:oklch(82.8% .111 230.318);--color-sky-400:oklch(74.6% .16 232.661);--color-sky-500:oklch(68.5% .169 237.323);--color-sky-600:oklch(58.8% .158 241.966);--color-sky-700:oklch(50% .134 242.749);--color-purple-600:oklch(55.8% .288 302.321);--color-fuchsia-500:oklch(66.7% .295 322.15);--color-rose-600:oklch(58.6% .253 17.585);--color-gray-500:oklch(55.1% .027 264.364);--color-neutral-700:oklch(37.1% 0 0);--color-neutral-900:oklch(20.5% 0 0);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-4xl:56rem;--container-5xl:64rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--font-weight-medium:500;--font-weight-semibold:600;--leading-relaxed:1.625;--radius-lg:.5rem;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-border:hsl(var(--border));--color-background:hsl(var(--background));--color-foreground:hsl(var(--foreground));--color-primary:hsl(var(--primary));--color-card:hsl(var(--card));--color-muted:hsl(var(--muted))}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:root{--background:210 20% 98%;--foreground:220 15% 20%;--card:0 0% 100%;--primary:220 15% 40%;--primary-foreground:210 20% 98%;--primary-shadow:100 100 110;--muted:220 15% 94%;--muted-foreground:220 10% 45%;--border:220 15% 90%}.dark{--background:220 15% 10%;--foreground:220 10% 80%;--card:220 15% 14%;--primary:220 10% 60%;--primary-foreground:220 15% 10%;--primary-shadow:100 100 110;--muted:220 15% 18%;--muted-foreground:220 10% 60%;--border:220 15% 20%}*{border-color:var(--color-border)}html{scroll-behavior:smooth}body{background-color:var(--color-background);color:var(--color-foreground);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.3s;font-feature-settings:"rlig" 1,"calt" 1;transition-duration:.3s}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.top-0{top:calc(var(--spacing) * 0)}.z-50{z-index:50}.mx-auto{margin-inline:auto}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-2{margin-left:calc(var(--spacing) * 2)}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.h-4{height:calc(var(--spacing) * 4)}.h-32{height:calc(var(--spacing) * 32)}.h-auto{height:auto}.max-h-\[70vh\]{max-height:70vh}.min-h-screen{min-height:100vh}.w-48{width:calc(var(--spacing) * 48)}.w-full{width:100%}.max-w-4xl{max-width:var(--container-4xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-\[360px\]{max-width:360px}.max-w-\[512px\]{max-width:512px}.max-w-\[768px\]{max-width:768px}.min-w-\[220px\]{min-width:220px}.min-w-\[900px\]{min-width:900px}.min-w-full{min-width:100%}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.animate-pulse{animation:var(--animate-pulse)}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-amber-500\/40{border-color:#f99c0066}@supports (color:color-mix(in lab,red,red)){.border-amber-500\/40{border-color:color-mix(in oklab,var(--color-amber-500) 40%,transparent)}}.border-amber-500\/50{border-color:#f99c0080}@supports (color:color-mix(in lab,red,red)){.border-amber-500\/50{border-color:color-mix(in oklab,var(--color-amber-500) 50%,transparent)}}.border-amber-600\/40{border-color:#dd740066}@supports (color:color-mix(in lab,red,red)){.border-amber-600\/40{border-color:color-mix(in oklab,var(--color-amber-600) 40%,transparent)}}.border-black\/60{border-color:#0009}@supports (color:color-mix(in lab,red,red)){.border-black\/60{border-color:color-mix(in oklab,var(--color-black) 60%,transparent)}}.border-border{border-color:var(--color-border)}.border-border\/60{border-color:color-mix(in srgb,hsl(var(--border)) 60%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-border\/60{border-color:color-mix(in oklab,var(--color-border) 60%,transparent)}}.border-cyan-600\/40{border-color:#0092b566}@supports (color:color-mix(in lab,red,red)){.border-cyan-600\/40{border-color:color-mix(in oklab,var(--color-cyan-600) 40%,transparent)}}.border-emerald-500\/30{border-color:#00bb7f4d}@supports (color:color-mix(in lab,red,red)){.border-emerald-500\/30{border-color:color-mix(in oklab,var(--color-emerald-500) 30%,transparent)}}.border-emerald-600\/30{border-color:#0097674d}@supports (color:color-mix(in lab,red,red)){.border-emerald-600\/30{border-color:color-mix(in oklab,var(--color-emerald-600) 30%,transparent)}}.border-emerald-600\/40{border-color:#00976766}@supports (color:color-mix(in lab,red,red)){.border-emerald-600\/40{border-color:color-mix(in oklab,var(--color-emerald-600) 40%,transparent)}}.border-emerald-600\/50{border-color:#00976780}@supports (color:color-mix(in lab,red,red)){.border-emerald-600\/50{border-color:color-mix(in oklab,var(--color-emerald-600) 50%,transparent)}}.border-fuchsia-500\/40{border-color:#e12afb66}@supports (color:color-mix(in lab,red,red)){.border-fuchsia-500\/40{border-color:color-mix(in oklab,var(--color-fuchsia-500) 40%,transparent)}}.border-orange-500\/30{border-color:#fe6e004d}@supports (color:color-mix(in lab,red,red)){.border-orange-500\/30{border-color:color-mix(in oklab,var(--color-orange-500) 30%,transparent)}}.border-orange-500\/40{border-color:#fe6e0066}@supports (color:color-mix(in lab,red,red)){.border-orange-500\/40{border-color:color-mix(in oklab,var(--color-orange-500) 40%,transparent)}}.border-orange-500\/50{border-color:#fe6e0080}@supports (color:color-mix(in lab,red,red)){.border-orange-500\/50{border-color:color-mix(in oklab,var(--color-orange-500) 50%,transparent)}}.border-orange-500\/60{border-color:#fe6e0099}@supports (color:color-mix(in lab,red,red)){.border-orange-500\/60{border-color:color-mix(in oklab,var(--color-orange-500) 60%,transparent)}}.border-orange-600\/40{border-color:#f0510066}@supports (color:color-mix(in lab,red,red)){.border-orange-600\/40{border-color:color-mix(in oklab,var(--color-orange-600) 40%,transparent)}}.border-primary\/60{border-color:color-mix(in srgb,hsl(var(--primary)) 60%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-primary\/60{border-color:color-mix(in oklab,var(--color-primary) 60%,transparent)}}.border-purple-600\/30{border-color:#9810fa4d}@supports (color:color-mix(in lab,red,red)){.border-purple-600\/30{border-color:color-mix(in oklab,var(--color-purple-600) 30%,transparent)}}.border-red-500\/30{border-color:#fb2c364d}@supports (color:color-mix(in lab,red,red)){.border-red-500\/30{border-color:color-mix(in oklab,var(--color-red-500) 30%,transparent)}}.border-red-500\/40{border-color:#fb2c3666}@supports (color:color-mix(in lab,red,red)){.border-red-500\/40{border-color:color-mix(in oklab,var(--color-red-500) 40%,transparent)}}.border-red-500\/50{border-color:#fb2c3680}@supports (color:color-mix(in lab,red,red)){.border-red-500\/50{border-color:color-mix(in oklab,var(--color-red-500) 50%,transparent)}}.border-red-600\/30{border-color:#e400144d}@supports (color:color-mix(in lab,red,red)){.border-red-600\/30{border-color:color-mix(in oklab,var(--color-red-600) 30%,transparent)}}.border-red-600\/40{border-color:#e4001466}@supports (color:color-mix(in lab,red,red)){.border-red-600\/40{border-color:color-mix(in oklab,var(--color-red-600) 40%,transparent)}}.border-red-600\/60{border-color:#e4001499}@supports (color:color-mix(in lab,red,red)){.border-red-600\/60{border-color:color-mix(in oklab,var(--color-red-600) 60%,transparent)}}.border-rose-600\/40{border-color:#e7004466}@supports (color:color-mix(in lab,red,red)){.border-rose-600\/40{border-color:color-mix(in oklab,var(--color-rose-600) 40%,transparent)}}.border-sky-300\/40{border-color:#77d4ff66}@supports (color:color-mix(in lab,red,red)){.border-sky-300\/40{border-color:color-mix(in oklab,var(--color-sky-300) 40%,transparent)}}.border-sky-400\/40{border-color:#00bcfe66}@supports (color:color-mix(in lab,red,red)){.border-sky-400\/40{border-color:color-mix(in oklab,var(--color-sky-400) 40%,transparent)}}.border-sky-500\/40{border-color:#00a5ef66}@supports (color:color-mix(in lab,red,red)){.border-sky-500\/40{border-color:color-mix(in oklab,var(--color-sky-500) 40%,transparent)}}.border-sky-600\/30{border-color:#0084cc4d}@supports (color:color-mix(in lab,red,red)){.border-sky-600\/30{border-color:color-mix(in oklab,var(--color-sky-600) 30%,transparent)}}.border-sky-600\/40{border-color:#0084cc66}@supports (color:color-mix(in lab,red,red)){.border-sky-600\/40{border-color:color-mix(in oklab,var(--color-sky-600) 40%,transparent)}}.border-sky-600\/50{border-color:#0084cc80}@supports (color:color-mix(in lab,red,red)){.border-sky-600\/50{border-color:color-mix(in oklab,var(--color-sky-600) 50%,transparent)}}.border-sky-700\/50{border-color:#0069a480}@supports (color:color-mix(in lab,red,red)){.border-sky-700\/50{border-color:color-mix(in oklab,var(--color-sky-700) 50%,transparent)}}.border-white\/30{border-color:#ffffff4d}@supports (color:color-mix(in lab,red,red)){.border-white\/30{border-color:color-mix(in oklab,var(--color-white) 30%,transparent)}}.border-yellow-500\/30{border-color:#edb2004d}@supports (color:color-mix(in lab,red,red)){.border-yellow-500\/30{border-color:color-mix(in oklab,var(--color-yellow-500) 30%,transparent)}}.border-yellow-500\/60{border-color:#edb20099}@supports (color:color-mix(in lab,red,red)){.border-yellow-500\/60{border-color:color-mix(in oklab,var(--color-yellow-500) 60%,transparent)}}.border-yellow-600\/30{border-color:#cd89004d}@supports (color:color-mix(in lab,red,red)){.border-yellow-600\/30{border-color:color-mix(in oklab,var(--color-yellow-600) 30%,transparent)}}.bg-amber-400{background-color:var(--color-amber-400)}.bg-amber-500\/10{background-color:#f99c001a}@supports (color:color-mix(in lab,red,red)){.bg-amber-500\/10{background-color:color-mix(in oklab,var(--color-amber-500) 10%,transparent)}}.bg-amber-600\/10{background-color:#dd74001a}@supports (color:color-mix(in lab,red,red)){.bg-amber-600\/10{background-color:color-mix(in oklab,var(--color-amber-600) 10%,transparent)}}.bg-background{background-color:var(--color-background)}.bg-black{background-color:var(--color-black)}.bg-black\/5{background-color:#0000000d}@supports (color:color-mix(in lab,red,red)){.bg-black\/5{background-color:color-mix(in oklab,var(--color-black) 5%,transparent)}}.bg-black\/40{background-color:#0006}@supports (color:color-mix(in lab,red,red)){.bg-black\/40{background-color:color-mix(in oklab,var(--color-black) 40%,transparent)}}.bg-card{background-color:var(--color-card)}.bg-card\/50{background-color:color-mix(in srgb,hsl(var(--card)) 50%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-card\/50{background-color:color-mix(in oklab,var(--color-card) 50%,transparent)}}.bg-cyan-600\/10{background-color:#0092b51a}@supports (color:color-mix(in lab,red,red)){.bg-cyan-600\/10{background-color:color-mix(in oklab,var(--color-cyan-600) 10%,transparent)}}.bg-emerald-500\/10{background-color:#00bb7f1a}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/10{background-color:color-mix(in oklab,var(--color-emerald-500) 10%,transparent)}}.bg-emerald-600{background-color:var(--color-emerald-600)}.bg-emerald-600\/5{background-color:#0097670d}@supports (color:color-mix(in lab,red,red)){.bg-emerald-600\/5{background-color:color-mix(in oklab,var(--color-emerald-600) 5%,transparent)}}.bg-emerald-600\/10{background-color:#0097671a}@supports (color:color-mix(in lab,red,red)){.bg-emerald-600\/10{background-color:color-mix(in oklab,var(--color-emerald-600) 10%,transparent)}}.bg-fuchsia-500\/10{background-color:#e12afb1a}@supports (color:color-mix(in lab,red,red)){.bg-fuchsia-500\/10{background-color:color-mix(in oklab,var(--color-fuchsia-500) 10%,transparent)}}.bg-gray-500\/10{background-color:#6a72821a}@supports (color:color-mix(in lab,red,red)){.bg-gray-500\/10{background-color:color-mix(in oklab,var(--color-gray-500) 10%,transparent)}}.bg-muted\/10{background-color:color-mix(in srgb,hsl(var(--muted)) 10%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/10{background-color:color-mix(in oklab,var(--color-muted) 10%,transparent)}}.bg-muted\/30{background-color:color-mix(in srgb,hsl(var(--muted)) 30%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/30{background-color:color-mix(in oklab,var(--color-muted) 30%,transparent)}}.bg-muted\/40{background-color:color-mix(in srgb,hsl(var(--muted)) 40%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/40{background-color:color-mix(in oklab,var(--color-muted) 40%,transparent)}}.bg-muted\/50{background-color:color-mix(in srgb,hsl(var(--muted)) 50%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/50{background-color:color-mix(in oklab,var(--color-muted) 50%,transparent)}}.bg-neutral-700{background-color:var(--color-neutral-700)}.bg-neutral-900{background-color:var(--color-neutral-900)}.bg-orange-500{background-color:var(--color-orange-500)}.bg-orange-500\/5{background-color:#fe6e000d}@supports (color:color-mix(in lab,red,red)){.bg-orange-500\/5{background-color:color-mix(in oklab,var(--color-orange-500) 5%,transparent)}}.bg-orange-500\/10{background-color:#fe6e001a}@supports (color:color-mix(in lab,red,red)){.bg-orange-500\/10{background-color:color-mix(in oklab,var(--color-orange-500) 10%,transparent)}}.bg-orange-600\/10{background-color:#f051001a}@supports (color:color-mix(in lab,red,red)){.bg-orange-600\/10{background-color:color-mix(in oklab,var(--color-orange-600) 10%,transparent)}}.bg-primary\/5{background-color:color-mix(in srgb,hsl(var(--primary)) 5%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/5{background-color:color-mix(in oklab,var(--color-primary) 5%,transparent)}}.bg-purple-600\/10{background-color:#9810fa1a}@supports (color:color-mix(in lab,red,red)){.bg-purple-600\/10{background-color:color-mix(in oklab,var(--color-purple-600) 10%,transparent)}}.bg-red-500\/10{background-color:#fb2c361a}@supports (color:color-mix(in lab,red,red)){.bg-red-500\/10{background-color:color-mix(in oklab,var(--color-red-500) 10%,transparent)}}.bg-red-600{background-color:var(--color-red-600)}.bg-red-600\/5{background-color:#e400140d}@supports (color:color-mix(in lab,red,red)){.bg-red-600\/5{background-color:color-mix(in oklab,var(--color-red-600) 5%,transparent)}}.bg-red-600\/10{background-color:#e400141a}@supports (color:color-mix(in lab,red,red)){.bg-red-600\/10{background-color:color-mix(in oklab,var(--color-red-600) 10%,transparent)}}.bg-rose-600\/10{background-color:#e700441a}@supports (color:color-mix(in lab,red,red)){.bg-rose-600\/10{background-color:color-mix(in oklab,var(--color-rose-600) 10%,transparent)}}.bg-sky-300\/10{background-color:#77d4ff1a}@supports (color:color-mix(in lab,red,red)){.bg-sky-300\/10{background-color:color-mix(in oklab,var(--color-sky-300) 10%,transparent)}}.bg-sky-400\/10{background-color:#00bcfe1a}@supports (color:color-mix(in lab,red,red)){.bg-sky-400\/10{background-color:color-mix(in oklab,var(--color-sky-400) 10%,transparent)}}.bg-sky-500\/10{background-color:#00a5ef1a}@supports (color:color-mix(in lab,red,red)){.bg-sky-500\/10{background-color:color-mix(in oklab,var(--color-sky-500) 10%,transparent)}}.bg-sky-600{background-color:var(--color-sky-600)}.bg-sky-600\/5{background-color:#0084cc0d}@supports (color:color-mix(in lab,red,red)){.bg-sky-600\/5{background-color:color-mix(in oklab,var(--color-sky-600) 5%,transparent)}}.bg-sky-600\/10{background-color:#0084cc1a}@supports (color:color-mix(in lab,red,red)){.bg-sky-600\/10{background-color:color-mix(in oklab,var(--color-sky-600) 10%,transparent)}}.bg-sky-700\/10{background-color:#0069a41a}@supports (color:color-mix(in lab,red,red)){.bg-sky-700\/10{background-color:color-mix(in oklab,var(--color-sky-700) 10%,transparent)}}.bg-yellow-500\/5{background-color:#edb2000d}@supports (color:color-mix(in lab,red,red)){.bg-yellow-500\/5{background-color:color-mix(in oklab,var(--color-yellow-500) 5%,transparent)}}.bg-yellow-500\/10{background-color:#edb2001a}@supports (color:color-mix(in lab,red,red)){.bg-yellow-500\/10{background-color:color-mix(in oklab,var(--color-yellow-500) 10%,transparent)}}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-10{padding-block:calc(var(--spacing) * 10)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-4{padding-right:calc(var(--spacing) * 4)}.text-left{text-align:left}.text-right{text-align:right}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[11px\]{font-size:11px}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.text-amber-700{color:var(--color-amber-700)}.text-amber-800\/90{color:#953d00e6}@supports (color:color-mix(in lab,red,red)){.text-amber-800\/90{color:color-mix(in oklab,var(--color-amber-800) 90%,transparent)}}.text-emerald-600{color:var(--color-emerald-600)}.text-emerald-700{color:var(--color-emerald-700)}.text-foreground{color:var(--color-foreground)}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-neutral-900{color:var(--color-neutral-900)}.text-orange-600{color:var(--color-orange-600)}.text-orange-700{color:var(--color-orange-700)}.text-purple-600{color:var(--color-purple-600)}.text-red-600{color:var(--color-red-600)}.text-red-700{color:var(--color-red-700)}.text-sky-600{color:var(--color-sky-600)}.text-sky-700{color:var(--color-sky-700)}.text-white{color:var(--color-white)}.text-yellow-600{color:var(--color-yellow-600)}.text-yellow-700{color:var(--color-yellow-700)}.underline{text-decoration-line:underline}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-primary\/20{--tw-ring-color:color-mix(in srgb, hsl(var(--primary)) 20%, transparent)}@supports (color:color-mix(in lab,red,red)){.ring-primary\/20{--tw-ring-color:color-mix(in oklab, var(--color-primary) 20%, transparent)}}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.select-none{-webkit-user-select:none;user-select:none}@media(hover:hover){.hover\:bg-primary\/5:hover{background-color:color-mix(in srgb,hsl(var(--primary)) 5%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/5:hover{background-color:color-mix(in oklab,var(--color-primary) 5%,transparent)}}}@media(min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.md\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}}@media(min-width:64rem){.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}}@media(min-width:80rem){.xl\:grid-cols-\[1fr_auto\]{grid-template-columns:1fr auto}}}.card-container{perspective:1000px}.card-hover{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.3s;--tw-ease:var(--ease-in-out);transition-duration:.3s;transition-timing-function:var(--ease-in-out);transform-style:preserve-3d;position:relative}.card-hover:hover{box-shadow:0 10px 20px #0003,0 0 25px rgba(var(--primary-shadow),.5);transform:rotateX(7deg)rotateY(-7deg)scale3d(1.05,1.05,1.05)}#root{max-width:100%;margin:0 auto;padding:0}.weather-app{--app-accent:#1e72c9;--app-accent-deep:#1557a0;--app-accent-light:#e8f3fc;--app-accent-fg:#fff;--app-surface:#f4f4f5;--app-card-bg:#fff;--app-card-border:hsl(var(--border));--app-text:hsl(var(--foreground));--app-text-muted:hsl(var(--muted-foreground));background:var(--app-surface);text-align:left;flex-direction:column;width:100%;max-width:100%;min-height:100dvh;margin:0 auto;display:flex}.app-body{flex:1;min-height:0;display:flex}.app-content{flex-direction:column;flex:1;min-width:0;display:flex}.app-header{background:linear-gradient(135deg,var(--app-accent-deep) 0%,var(--app-accent) 52%,#3d9ae8 100%);color:var(--app-accent-fg);flex-shrink:0}.app-header-inner{padding:.875rem 1rem .75rem}.app-header-brand{flex:1;min-width:0}.app-header-toolbar{align-items:center;gap:.5rem;margin-top:.75rem;display:flex}.app-header-message{opacity:.85;margin:.5rem 0 0;font-size:.75rem}.app-title{margin:0;font-size:1.125rem;font-weight:700;line-height:1.2}.app-subtitle{opacity:.75;margin:.125rem 0 0;font-size:.6875rem}.app-icon-btn{width:2.25rem;height:2.25rem;color:var(--app-accent-fg);cursor:pointer;background:#ffffff29;border:1px solid #ffffff47;border-radius:9999px;flex-shrink:0;font-size:1rem;line-height:1}.app-icon-btn:disabled{opacity:.5}.app-select{color:var(--app-accent-fg);background:#ffffff29;border:1px solid #ffffff47;border-radius:.5rem;padding:.5rem .75rem;font-size:.875rem}.app-select-district{flex:1;min-width:0}.app-main{flex:1;padding:.75rem .75rem 5.5rem;overflow-y:auto}.app-footer{text-align:center;color:hsl(var(--muted-foreground));flex-shrink:0;padding:.5rem 1rem 5rem;font-size:.625rem}.app-loading{text-align:center;color:hsl(var(--muted-foreground));padding:2rem;font-size:.875rem}.muted-text{color:hsl(var(--muted-foreground));font-size:.875rem}.situation-text{color:hsl(var(--foreground));margin:0;font-size:.875rem;line-height:1.55}.summary-value{font-variant-numeric:tabular-nums;margin:.125rem 0 0;font-size:1.25rem;font-weight:600}.region-updated{color:hsl(var(--muted-foreground));margin:.5rem 0 0;font-size:.75rem}.region-footnote{color:hsl(var(--muted-foreground));margin:0;font-size:.75rem;line-height:1.5}.region-footnote-sub{color:hsl(var(--muted-foreground));opacity:.85;margin:.375rem 0 0;font-size:.6875rem}.astro-row{justify-content:space-between;font-size:.875rem;display:flex}.day-item-left{align-items:flex-start;gap:.5rem;display:flex}.day-item-right{text-align:right;flex-shrink:0}.side-nav{display:none}.bottom-nav{border-top:1px solid hsl(var(--border));z-index:50;padding-bottom:env(safe-area-inset-bottom,0);background:#fff;position:fixed;bottom:0;left:0;right:0}.bottom-nav-inner{max-width:100%;margin:0 auto;display:flex}.nav-item{cursor:pointer;color:hsl(var(--muted-foreground));background:0 0;border:none;font-family:inherit}.bottom-nav-item{flex-direction:column;flex:1;align-items:center;gap:.125rem;padding:.5rem .25rem .375rem;font-size:.625rem;display:flex}.bottom-nav-item.active{color:var(--app-accent);font-weight:700}.bottom-nav-item.active .nav-icon{background:var(--app-accent);color:#fff;border-radius:9999px;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;display:flex}.bottom-nav-item .nav-icon{text-align:center;width:1.75rem;font-size:.875rem;line-height:1.75rem}.view-stack,.home-top-grid,.home-side-stack,.forecast-grid,.region-grid{flex-direction:column;gap:.625rem;display:flex}.app-banner{border-radius:.625rem;padding:.625rem .75rem;font-size:.8125rem}.app-banner-ok{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0}.app-banner-warn{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.app-badge{border-radius:9999px;padding:.125rem .5rem;font-size:.6875rem;font-weight:600;display:inline-block}.app-card{background:var(--app-card-bg,white);border:1px solid var(--app-card-border,hsl(var(--border)));border-radius:.75rem;padding:.875rem;box-shadow:0 1px 2px #0000000a}.app-card-compact{padding:.625rem .875rem}.app-card-title{color:hsl(var(--foreground));margin:0 0 .5rem;font-size:.8125rem;font-weight:700}.app-card-desc{color:hsl(var(--muted-foreground));margin:-.25rem 0 .625rem;font-size:.6875rem}.hero-card{background:var(--app-card-bg,white);border:1px solid var(--app-card-border,hsl(var(--border)));border-radius:.875rem;padding:1rem}.hero-district{color:hsl(var(--muted-foreground));margin:0 0 .5rem;font-size:.75rem;font-weight:600}.hero-main{align-items:center;gap:.875rem;display:flex}.hero-emoji{font-size:2.75rem;line-height:1}.hero-temp{font-variant-numeric:tabular-nums;font-size:2.75rem;font-weight:700;line-height:1}.hero-unit{margin-left:.125rem;font-size:1.25rem;font-weight:500}.hero-label{margin:.25rem 0 0;font-size:1rem;font-weight:600}.hero-feel{color:hsl(var(--muted-foreground));margin:.125rem 0 0;font-size:.8125rem}.hero-situation{border-top:1px solid hsl(var(--border));color:hsl(var(--muted-foreground));margin:.75rem 0 0;padding-top:.75rem;font-size:.8125rem;line-height:1.55}.metric-grid{grid-template-columns:repeat(2,1fr);gap:.5rem;display:grid}.metric-tile{background:var(--app-card-bg,white);border:1px solid var(--app-card-border,hsl(var(--border)));border-radius:.625rem;padding:.625rem .75rem}.metric-label{color:hsl(var(--muted-foreground));margin:0;font-size:.6875rem}.metric-value{font-variant-numeric:tabular-nums;margin:.125rem 0 0;font-size:1.125rem;font-weight:700}.metric-sub{color:hsl(var(--muted-foreground));margin:.125rem 0 0;font-size:.625rem}.advice-card.advice-alert{background:#fef2f2;border-color:#fecaca}.advice-card.advice-caution{background:#fffbeb;border-color:#fde68a}.advice-card.advice-ok{background:#ecfdf5;border-color:#a7f3d0}.advice-list{margin:0;padding:0;font-size:.8125rem;line-height:1.5;list-style:none}.advice-list li+li{margin-top:.375rem}.hourly-strip{-webkit-overflow-scrolling:touch;gap:.375rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.hourly-item{background:hsl(var(--muted) / .5);border-radius:.5rem;flex-direction:column;flex:0 0 3rem;align-items:center;padding:.375rem .25rem;display:flex}.hourly-item.is-now{background:var(--app-accent);color:#fff}.hourly-time{opacity:.85;font-size:.5625rem}.hourly-emoji{margin:.125rem 0;font-size:1rem}.hourly-bar-wrap{align-items:flex-end;height:2.5rem;display:flex}.hourly-bar{background:hsl(var(--primary));opacity:.65;border-radius:.125rem .125rem 0 0;width:.75rem}.hourly-item.is-now .hourly-bar{background:#fff}.hourly-pop{font-variant-numeric:tabular-nums;font-size:.625rem;font-weight:600}.forecast-hour-list{flex-direction:column;max-height:none;display:flex;overflow:visible}.forecast-hour-row{border-bottom:1px solid hsl(var(--border) / .6);grid-template-columns:2.75rem 1fr 2.5rem 2.75rem;align-items:center;gap:.5rem;padding:.5rem 0;font-size:.8125rem;display:grid}.forecast-hour-time{font-variant-numeric:tabular-nums;color:hsl(var(--muted-foreground))}.forecast-hour-pop,.forecast-hour-wind{text-align:right;font-variant-numeric:tabular-nums;font-size:.75rem}.day-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.day-item{border:1px solid hsl(var(--border));background:hsl(var(--muted) / .25);border-radius:.625rem;padding:.625rem .75rem}.day-item.is-today{border-color:var(--app-accent);background:var(--app-accent-light)}.day-item-head{justify-content:space-between;gap:.5rem;display:flex}.day-icon{font-size:1.25rem}.day-title{margin:0;font-size:.875rem;font-weight:700}.day-date{color:hsl(var(--muted-foreground));margin-left:.25rem;font-weight:400}.day-wind{color:hsl(var(--muted-foreground));margin:.125rem 0 0;font-size:.6875rem}.day-temp{font-variant-numeric:tabular-nums;font-size:.875rem;font-weight:700}.day-pop{color:hsl(var(--muted-foreground));font-size:.6875rem}.day-weather{margin:.375rem 0 0;font-size:.8125rem;line-height:1.45}.day-psr{background:hsl(var(--muted));border-radius:.25rem;margin-top:.375rem;padding:.125rem .375rem;font-size:.625rem;display:inline-block}.region-summary-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.rank-list{margin:0;padding:0;list-style:none}.rank-row{border-bottom:1px solid hsl(var(--border) / .5);justify-content:space-between;gap:.5rem;padding:.5rem 0;font-size:.8125rem;display:flex}.rank-row:last-child{border-bottom:none}.rank-place{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rank-value{font-variant-numeric:tabular-nums;flex-shrink:0;font-weight:700}.rank-rain{color:#0369a1}.pro-view-banner{background:var(--app-accent);color:var(--app-accent-fg);border-radius:.625rem;margin-bottom:.625rem;padding:.625rem .75rem}.pro-view .min-h-screen{text-align:left;min-height:auto}.pro-view .max-w-5xl{max-width:100%;padding-top:0;padding-left:0;padding-right:0}.pro-loading{text-align:center;color:hsl(var(--muted-foreground));padding:2rem;font-size:.875rem}.app-title-row{align-items:center;gap:.5rem;display:flex}.app-logo{border-radius:.375rem;flex-shrink:0;box-shadow:0 1px 2px #0000001f}.app-lang-btn{letter-spacing:.02em;font-size:.6875rem;font-weight:800}.dark .weather-app{--app-surface:#18181b;--app-accent:#3b9eff;--app-accent-deep:#2563eb;--app-accent-light:#172554;--app-accent-fg:#fff;--app-card-bg:#27272a;--app-card-border:#3f3f46;--app-text:#f4f4f5;--app-text-muted:#a1a1aa}.dark .weather-app .app-card,.dark .weather-app .hero-card,.dark .weather-app .metric-tile,.dark .weather-app .day-item,.dark .weather-app .district-picker-panel,.dark .weather-app .side-nav,.dark .weather-app .bottom-nav{background:var(--app-card-bg);border-color:var(--app-card-border);color:var(--app-text)}.dark .weather-app .app-card-title,.dark .weather-app .hero-label,.dark .weather-app .hero-district,.dark .weather-app .summary-value,.dark .weather-app .metric-value,.dark .weather-app .day-title,.dark .weather-app .district-picker-title,.dark .weather-app .district-picker-name{color:var(--app-text)}.dark .weather-app .app-subtitle,.dark .weather-app .metric-label,.dark .weather-app .metric-sub,.dark .weather-app .hero-feel,.dark .weather-app .hero-situation,.dark .weather-app .muted-text,.dark .weather-app .app-card-desc,.dark .weather-app .region-updated,.dark .weather-app .region-footnote,.dark .weather-app .region-footnote-sub,.dark .weather-app .district-picker-en,.dark .weather-app .district-picker-hint,.dark .weather-app .pull-indicator,.dark .weather-app .app-footer,.dark .weather-app .forecast-hour-time,.dark .weather-app .day-date,.dark .weather-app .day-wind,.dark .weather-app .day-pop{color:var(--app-text-muted)}.dark .weather-app .hourly-item{color:var(--app-text);background:#3f3f46}.dark .weather-app .hourly-item.is-now{background:var(--app-accent);color:#fff}.dark .weather-app .day-item.is-today{border-color:var(--app-accent);background:#3f3f46}.dark .weather-app .district-picker-trigger,.dark .weather-app .district-quick-chip{color:var(--app-accent-fg);background:#ffffff1f;border-color:#ffffff38}.dark .weather-app .district-quick-chip.is-active{color:var(--app-accent-deep);background:#ffffffe6}.dark .weather-app .district-picker-row:hover,.dark .weather-app .district-picker-row.is-active{background:#3f3f46}.dark .weather-app .district-picker-search{color:var(--app-text);border-color:var(--app-card-border);background:#18181b}.dark .weather-app .side-nav .nav-item:hover{background:#3f3f46}.dark .weather-app .side-nav .nav-item.active{color:#fff}.dark .weather-app .bottom-nav-item{color:var(--app-text-muted)}.dark .weather-app .bottom-nav-item.active{color:var(--app-accent)}.dark .weather-app .app-banner-ok{color:#a7f3d0;background:#064e3b;border-color:#047857}.dark .weather-app .app-banner-warn{color:#fecaca;background:#450a0a;border-color:#991b1b}.dark .weather-app .advice-card.advice-alert{background:#450a0a;border-color:#991b1b}.dark .weather-app .advice-card.advice-caution{background:#451a03;border-color:#b45309}.dark .weather-app .advice-card.advice-ok{background:#064e3b;border-color:#047857}.dark .weather-app .skeleton-pulse{background:linear-gradient(90deg,#3f3f46,#52525b,#3f3f46) 0 0/200% 100%}.dark .weather-app .status-offline{color:#fcd34d;background:#451a03}.dark .weather-app .status-warn{color:#fecaca;background:#450a0a}.dark .weather-app .error-banner-btn{color:#fecaca;background:#27272a}.dark .weather-app .nav-item{color:var(--app-text-muted)}.dark .weather-app{box-shadow:none}@media(min-width:768px){.dark .weather-app{box-shadow:0 0 0 1px var(--app-card-border)}}.app-warning-badge{color:#fff;text-align:center;background:#dc2626;border-radius:9999px;min-width:1.25rem;height:1.25rem;padding:0 .375rem;font-size:.6875rem;font-weight:700;line-height:1.25rem}.app-header-controls{width:100%;margin-top:.75rem}.app-header-toolbar{align-items:center;gap:.5rem;display:flex}.app-icon-spin.is-spinning{animation:.8s linear infinite app-spin;display:inline-block}@keyframes app-spin{to{transform:rotate(360deg)}}.district-quick-row{flex-wrap:wrap;gap:.375rem;margin-bottom:.5rem;display:flex}.district-quick-chip{color:var(--app-accent-fg);cursor:pointer;background:#ffffff24;border:1px solid #ffffff47;border-radius:9999px;padding:.25rem .625rem;font-size:.75rem;font-weight:600}.district-quick-chip.is-active{color:var(--app-accent-deep);box-shadow:none;background:#ffffffeb}.district-picker{flex:1;min-width:0}.district-picker-trigger{width:100%;color:var(--app-accent-fg);cursor:pointer;background:#ffffff29;border:1px solid #ffffff47;border-radius:.5rem;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.875rem;font-weight:600;display:flex}.district-picker-trigger-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.district-picker-overlay{z-index:100;background:#00000059;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.district-picker-panel{background:#fff;border-radius:1rem 1rem 0 0;flex-direction:column;width:100%;max-height:min(78vh,640px);display:flex;box-shadow:0 -8px 32px #0000001f}.district-picker-head{justify-content:space-between;align-items:center;padding:1rem 1rem .5rem;display:flex}.district-picker-title{margin:0;font-size:1rem;font-weight:700}.district-picker-close{background:hsl(var(--muted));cursor:pointer;border:none;border-radius:9999px;width:2rem;height:2rem}.district-picker-search{border:1px solid hsl(var(--border));border-radius:.625rem;margin:0 1rem .5rem;padding:.625rem .75rem;font-size:1rem}.district-picker-hint{color:hsl(var(--muted-foreground));margin:0 1rem .5rem;font-size:.6875rem}.district-picker-scroll{padding:0 .75rem 1rem;overflow-y:auto}.district-picker-group+.district-picker-group{margin-top:.75rem}.district-picker-group-title{color:hsl(var(--muted-foreground));text-transform:uppercase;letter-spacing:.04em;margin:0 .25rem .375rem;padding:0 .25rem;font-size:.6875rem;font-weight:700}.district-picker-list{margin:0;padding:0;list-style:none}.district-picker-list li{align-items:stretch;gap:.25rem;display:flex}.district-picker-row{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:.625rem;flex-direction:column;flex:1;align-items:flex-start;gap:.125rem;padding:.625rem .75rem;display:flex}.district-picker-row:hover{background:hsl(var(--muted) / .45)}.district-picker-row.is-active{background:var(--app-accent-light);box-shadow:inset 0 0 0 1px var(--app-accent)}.district-picker-name{font-size:.9375rem;font-weight:600}.district-picker-en{color:hsl(var(--muted-foreground));font-size:.6875rem}.district-picker-star{width:2.75rem;color:hsl(var(--muted-foreground));cursor:pointer;background:0 0;border:none;flex-shrink:0;font-size:1.125rem}.district-picker-star.is-starred{color:#ca8a04}.district-picker-empty{text-align:center;color:hsl(var(--muted-foreground));padding:1rem;font-size:.875rem}.status-strip{flex-wrap:wrap;gap:.375rem;padding:.375rem .75rem 0;display:flex}.status-chip{border:none;border-radius:9999px;padding:.25rem .625rem;font-size:.6875rem;font-weight:600}.status-offline{color:#92400e;background:#fef3c7}.status-warn{color:#991b1b;cursor:pointer;background:#fee2e2}.error-banner{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.625rem;display:flex}.error-banner-title{margin:0;font-size:.8125rem;font-weight:700}.error-banner-msg{opacity:.9;margin:.125rem 0 0;font-size:.6875rem}.error-banner-btn{color:#991b1b;cursor:pointer;background:#fff;border:1px solid #991b1b40;border-radius:9999px;flex-shrink:0;padding:.375rem .75rem;font-size:.75rem;font-weight:700}.install-prompt{left:.75rem;right:.75rem;bottom:calc(4.25rem + env(safe-area-inset-bottom,0));z-index:60;position:fixed}.install-prompt-inner{color:#fff;background:#1a1a1a;border-radius:.875rem;align-items:center;gap:.75rem;padding:.75rem .875rem;display:flex;box-shadow:0 8px 24px #0000002e}.install-prompt-title{margin:0;font-size:.875rem;font-weight:700}.install-prompt-desc{opacity:.8;margin:.125rem 0 0;font-size:.6875rem;line-height:1.4}.install-prompt-actions{flex-shrink:0;align-items:center;gap:.375rem;margin-left:auto;display:flex}.install-prompt-primary{background:var(--app-accent);color:var(--app-accent-fg);cursor:pointer;border:none;border-radius:9999px;padding:.4375rem .875rem;font-size:.75rem;font-weight:700}.install-prompt-dismiss{color:#fff;cursor:pointer;background:#ffffff1f;border:none;border-radius:9999px;width:2rem;height:2rem}.pull-indicator{text-align:center;height:0;color:hsl(var(--muted-foreground));font-size:.6875rem;transition:height .15s;overflow:hidden}.pull-indicator.is-visible{height:calc(var(--pull-offset,0px) + .25rem);padding-top:.25rem}.view-enter{animation:.22s ease-out view-enter}@keyframes view-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.skeleton-pulse{background:linear-gradient(90deg,hsl(var(--muted)),hsl(var(--muted) / .55),hsl(var(--muted)));background-size:200% 100%;animation:1.4s ease-in-out infinite skeleton-pulse}@keyframes skeleton-pulse{0%{background-position:100% 0}to{background-position:-100% 0}}.skeleton-banner,.skeleton-hero,.skeleton-card,.skeleton-hourly{border-radius:.75rem;min-height:3rem}.skeleton-banner{min-height:2.75rem}.skeleton-hero{min-height:10rem}.skeleton-card{min-height:5rem}.skeleton-metric{border-radius:.625rem;min-height:4.5rem}.skeleton-hourly{min-height:7rem}.side-nav .nav-desc{display:none}@media(min-width:768px){.weather-app{max-width:1280px;min-height:100vh;box-shadow:0 0 0 1px hsl(var(--border));margin:0 auto}.app-header-inner{flex-wrap:wrap;align-items:center;gap:1rem;padding:1rem 1.5rem;display:flex}.app-header-toolbar{flex:0 auto;width:auto;margin-top:0;margin-left:auto}.app-header-controls{width:auto;margin-top:0;margin-left:auto}.district-picker{flex:none;min-width:11rem}.district-picker-overlay{align-items:center;padding:1rem}.district-picker-panel{border-radius:1rem;max-width:28rem;max-height:min(70vh,560px)}.side-nav .side-nav-item{grid-template-rows:auto auto;grid-template-columns:1.25rem 1fr;align-items:start;gap:.125rem .625rem;display:grid}.side-nav .nav-icon{grid-row:1/span 2;align-self:center}.side-nav .nav-desc{opacity:.72;grid-column:2;font-size:.6875rem;font-weight:400;line-height:1.35;display:block}.install-prompt{width:min(22rem,100% - 14rem);bottom:1.5rem;left:auto;right:1.5rem}.app-header-message{width:100%;margin-top:0}.side-nav{border-right:1px solid hsl(var(--border));background:#fff;flex-direction:column;flex-shrink:0;gap:.25rem;width:10.5rem;padding:1rem .75rem;display:flex}.side-nav .nav-item{text-align:left;border-radius:.5rem;align-items:center;gap:.625rem;width:100%;padding:.625rem .75rem;font-size:.875rem;transition:background .15s;display:flex}.side-nav .nav-item:hover{background:hsl(var(--muted) / .5)}.side-nav .nav-item.active{background:var(--app-accent);color:var(--app-accent-fg);font-weight:700}.side-nav .nav-icon{text-align:center;width:1.25rem;font-size:.875rem}.bottom-nav{display:none}.app-main{padding:1rem 1.5rem 1.5rem}.app-footer{padding:.75rem 1.5rem 1rem}.home-top-grid{grid-template-columns:1fr 1fr;align-items:start;gap:.75rem;display:grid}.metric-grid{grid-template-columns:repeat(2,1fr)}.hourly-card{grid-column:1/-1}.hourly-strip{flex-wrap:wrap;justify-content:flex-start;overflow-x:visible}.hourly-item{flex:3.5rem;min-width:3.5rem;max-width:4.5rem}.forecast-grid{grid-template-columns:minmax(280px,1fr) minmax(320px,1.2fr);align-items:start;gap:.75rem;display:grid}.forecast-situation{grid-column:1/-1}.forecast-hour-list{max-height:28rem;overflow-y:auto}.forecast-hour-row{grid-template-columns:3rem 1fr 3rem 3.5rem}.day-list{grid-template-columns:repeat(2,1fr);gap:.5rem;display:grid}.region-summary-grid{grid-template-columns:repeat(4,1fr)}.region-grid{grid-template-columns:repeat(3,1fr);align-items:start;gap:.75rem;display:grid}.region-view>.app-card-compact:last-child{grid-column:1/-1}.pro-view .max-w-5xl{max-width:100%;padding:0 0 1rem}}@media(min-width:1024px){.side-nav{width:12rem;padding:1.25rem 1rem}.home-top-grid{grid-template-columns:1.15fr 1fr}.hero-emoji{font-size:3.5rem}.hero-temp{font-size:3.25rem}.metric-grid{grid-template-columns:repeat(2,1fr)}.day-list{grid-template-columns:repeat(3,1fr)}}@media(min-width:1280px){.forecast-grid{grid-template-columns:1fr 1.4fr}}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:hsl(var(--background))}::-webkit-scrollbar-thumb{background:hsl(var(--muted-foreground) / .3);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:hsl(var(--muted-foreground) / .5)}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}
