/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@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;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@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%;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;-webkit-text-decoration:inherit;-webkit-text-decoration: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]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}}:root{--ink:#48515d;--muted:#7a8490;--glass:#ffffffb8}*{box-sizing:border-box}html{background:#e7ebf3;min-width:280px}body{min-height:100vh;color:var(--ink);margin:0;font-family:Avenir Next,Avenir,Segoe UI,Helvetica,Arial,sans-serif}button,input{font:inherit}button{color:inherit}.weather-app{--card-top:#ecf2ff;--card-bottom:#cdd9ef;--cloud-one:#f6f8fb;--cloud-two:#e8edf5;--cloud-three:#d9e0eb;--detail-color:#596473;--background-one:#a4b0c23d;--background-two:#bec6d333;--background-three:#7889a929;--background-base:#e7eaef;--ambient-one-color:#cbd2dd;--ambient-two-color:#aeb9cc;isolation:isolate;background:linear-gradient(235deg, var(--background-one), transparent 54%), linear-gradient(122deg, var(--background-two), transparent 46%), linear-gradient(0deg, var(--background-three), transparent 70%), var(--background-base);min-height:100svh;transition:background 1.2s;position:relative;overflow:hidden}.weather-app[data-weather=sun]{--card-top:#e9efff;--card-bottom:#ccd5ff;--background-one:#f4bc784d;--background-two:#f6dd8e3d;--background-three:#7497d82e;--background-base:#eef0f1;--ambient-one-color:#efbd8f;--ambient-two-color:#afc7ee}.weather-app[data-weather=partly]{--card-top:#e1e9f8;--card-bottom:#becae0;--cloud-one:#f0f3f8;--cloud-two:#dbe2ec;--cloud-three:#c4cedc;--background-one:#eebc7c40;--background-two:#d3dce547;--background-three:#7591c12e;--background-base:#e9ecef;--ambient-one-color:#e4c39f;--ambient-two-color:#b4c7e2}.weather-app[data-weather=cloudy]{--card-top:#cbd5e6;--card-bottom:#9eabc0;--cloud-one:#c5cedd;--cloud-two:#aeb9cb;--cloud-three:#929db0;--detail-color:#f3f6fb;--background-one:#9aa6bb47;--background-two:#c6ccd638;--background-three:#697a9a33;--background-base:#e3e7ed;--ambient-one-color:#c7ced9;--ambient-two-color:#a8b5ca}.weather-app[data-weather=fog]{--card-top:#dbe0e3;--card-bottom:#b7c0c4;--cloud-one:#e8ecee;--cloud-two:#d7dddf;--cloud-three:#c4cccf;--background-one:#bec4c64d;--background-two:#d5d9d845;--background-three:#97a4a92e;--background-base:#e7e9e8;--ambient-one-color:#d6d9d8;--ambient-two-color:#bbc4c7}.weather-app[data-weather=wind]{--card-top:#dce9e2;--card-bottom:#b8cfc3;--background-one:#89b19e40;--background-two:#bcd2c538;--background-three:#698f9d29;--background-base:#e6ece8;--ambient-one-color:#b9d1c4;--ambient-two-color:#a8c3cc}.weather-app[data-weather=rain]{--card-top:#d7dde5;--card-bottom:#a9b4c3;--cloud-one:#c4ccd7;--cloud-two:#aeb9c7;--cloud-three:#95a2b2;--detail-color:#f4f7fb;--background-one:#687c9747;--background-two:#9caec03b;--background-three:#49638933;--background-base:#dce3ea;--ambient-one-color:#a8b8ca;--ambient-two-color:#8299b5}.weather-app[data-weather=snow]{--card-top:#e8edf3;--card-bottom:#cad4e0;--background-one:#bacdde4d;--background-two:#dce5ea47;--background-three:#9daed02e;--background-base:#edf1f4;--ambient-one-color:#d7e2e9;--ambient-two-color:#c2cee5}.weather-app[data-weather=thunder]{--card-top:#8d95a3;--card-bottom:#5f6978;--cloud-one:#858f9f;--cloud-two:#6f7989;--cloud-three:#596373;--detail-color:#f8fafc;--background-one:#434c5e5c;--background-two:#616c7c42;--background-three:#333d5247;--background-base:#b7bec8;--ambient-one-color:#8e98a7;--ambient-two-color:#77859b}.weather-app[data-period=night][data-weather=sun],.weather-app[data-period=night][data-weather=partly]{--card-top:#263652;--card-bottom:#111d35;--cloud-one:#53617a;--cloud-two:#3e4d68;--cloud-three:#2e3d58;--detail-color:#edf3ff;--background-one:#3e548075;--background-two:#2032566b;--background-three:#0710278f;--background-base:#11192c;--ambient-one-color:#6876aa;--ambient-two-color:#233d71}.weather-app[data-period=night][data-weather=cloudy],.weather-app[data-period=night][data-weather=fog],.weather-app[data-period=night][data-weather=wind]{--card-top:#344055;--card-bottom:#1c263a;--cloud-one:#667187;--cloud-two:#4d596f;--cloud-three:#39465d;--detail-color:#edf2fb;--background-one:#4b586f66;--background-two:#2531486b;--background-three:#0c162a85;--background-base:#192235;--ambient-one-color:#65728b;--ambient-two-color:#344d70}.weather-app[data-period=night][data-weather=rain],.weather-app[data-period=night][data-weather=snow],.weather-app[data-period=night][data-weather=thunder]{--card-top:#29364a;--card-bottom:#121c2d;--cloud-one:#536075;--cloud-two:#3d4b61;--cloud-three:#2c3a50;--detail-color:#f1f5fb;--background-one:#374d6d7a;--background-two:#18273e70;--background-three:#07101f94;--background-base:#111b2a;--ambient-one-color:#516581;--ambient-two-color:#263e61}.night-sky{z-index:-1;opacity:.48;pointer-events:none;background-image:radial-gradient(circle at 8% 17%,#fff 0 1px,#0000 1.6px),radial-gradient(circle at 18% 42%,#dce8ff 0 1px,#0000 1.8px),radial-gradient(circle at 31% 12%,#fff 0 1.2px,#0000 1.8px),radial-gradient(circle at 44% 29%,#cddcff 0 .8px,#0000 1.5px),radial-gradient(circle at 57% 8%,#fff 0 1px,#0000 1.8px),radial-gradient(circle at 69% 38%,#dce7ff 0 1.1px,#0000 1.8px),radial-gradient(circle at 82% 15%,#fff 0 .9px,#0000 1.6px),radial-gradient(circle at 94% 32%,#c9d8ff 0 1.2px,#0000 1.8px);background-size:320px 240px;animation:6s ease-in-out infinite alternate star-shimmer;position:absolute;inset:0}.ambient{z-index:-3;aspect-ratio:1;filter:blur(80px);opacity:.35;pointer-events:none;border-radius:50%;width:min(58vw,760px);position:absolute}.ambient-one{background:var(--ambient-one-color);top:-25%;right:-15%}.ambient-two{background:var(--ambient-two-color);bottom:-35%;left:-15%}.sunburst{z-index:-2;aspect-ratio:1;opacity:.62;background:repeating-conic-gradient(from 6deg, #f7db56e6 0 7deg, transparent 7deg 22deg);width:min(76vw,720px);animation:42s linear infinite sunburst-spin;position:absolute;top:clamp(236px,35vh,330px);left:50%;translate:-50% -50%;-webkit-mask-image:radial-gradient(circle,#000 0 10%,#0000 68%);mask-image:radial-gradient(circle,#000 0 10%,#0000 68%)}.sunburst.is-partly{opacity:.34}.weather-shell{width:100%;min-height:100svh;padding:max(28px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));flex-direction:column;align-items:center;display:flex}.app-heading{align-items:center;gap:11px;margin-bottom:18px;display:flex}.app-heading h1{color:#424851e0;letter-spacing:-.025em;margin:0;font-size:clamp(1.25rem,4.5vw,1.55rem);font-weight:400}.brand-icon{width:34px;height:34px}.glyph-sun{fill:#f7c73ec7;stroke:#515862b8;stroke-width:2.4px}.glyph-moon{fill:#e7eefbe6;stroke:#515862b8;stroke-linejoin:round;stroke-width:2.2px;opacity:0}.glyph-cloud{fill:#f4f6f9e6;stroke:#515862b8;stroke-linejoin:round;stroke-width:2.4px}[data-kind=sun] .glyph-cloud,[data-kind=sun] .glyph-detail,[data-kind=sun] .glyph-bolt{opacity:0}[data-kind=sun] .glyph-sun{transform:translate(9px,9px)}[data-kind=sun][data-period=night] .glyph-sun,[data-kind=partly][data-period=night] .glyph-sun{opacity:0}[data-kind=sun][data-period=night] .glyph-moon,[data-kind=partly][data-period=night] .glyph-moon{opacity:1}[data-kind=partly] .glyph-moon{transform-origin:50%;transform:translate(-6px,-5px)scale(.7)}[data-kind=rain] .glyph-sun,[data-kind=cloudy] .glyph-sun,[data-kind=snow] .glyph-sun,[data-kind=thunder] .glyph-sun,[data-kind=fog] .glyph-sun,[data-kind=wind] .glyph-sun{opacity:0}.weather-app[data-period=night] .app-heading h1,.weather-app[data-period=night] .data-credit{color:#ecf2fcc7}.weather-app[data-period=night] .search-bar{background:#192337ad;border-color:#ffffff2e;box-shadow:inset 0 1px #ffffff1f,0 12px 34px #0000002e}.weather-app[data-period=night] .search-bar input{color:#edf3fd}.weather-app[data-period=night] .search-bar input::placeholder{color:#dde5f299}.weather-app[data-period=night] .search-bar>svg,.weather-app[data-period=night] .location-button svg{stroke:#c2ccdc}.glyph-detail{stroke:currentColor;stroke-linecap:round;stroke-width:2.6px}.glyph-bolt{fill:#f7d85e;stroke:currentColor;stroke-linejoin:round;stroke-width:1.5px}.search-wrap{z-index:20;width:min(100%,344px);margin-bottom:20px;position:relative}.search-bar{background:var(--glass);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid #ffffff94;border-radius:999px;align-items:center;gap:9px;min-height:48px;padding:5px 8px 5px 16px;display:flex;box-shadow:inset 0 1px 1px #ffffffc7,0 10px 30px #4b516114}.search-bar>svg{fill:none;stroke:#8b929b;stroke-linecap:round;stroke-width:1.8px;flex:0 0 17px;width:17px}.search-bar input{color:#3d4650;background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:.98rem;font-weight:400}.search-bar input::placeholder{color:#9097a0}.search-bar:focus-within{border-color:#53688d6b;box-shadow:0 0 0 3px #53688d1f,0 14px 34px #4b51611c}.location-button{cursor:pointer;background:0 0;border:0;border-radius:50%;flex:0 0 37px;place-items:center;width:37px;height:37px;transition:background .16s,transform .16s;display:grid}.location-button:hover{background:#464e5a14}.location-button:active{transform:scale(.94)}.location-button:focus-visible{outline-offset:2px;outline:2px solid #64748b}.location-button svg{fill:none;stroke:#747c87;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.9px;width:22px}.search-spinner{border:2px solid #64748b40;border-top-color:#64748b;border-radius:50%;flex:0 0 15px;width:15px;height:15px;animation:.7s linear infinite spin}.suggestions{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#f9fafcf0;border:1px solid #ffffffbf;border-radius:18px;max-height:min(330px,52vh);margin:0;padding:7px;list-style:none;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow-y:auto;box-shadow:0 22px 50px #3a415033}.suggestions button{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:12px;flex-direction:column;gap:2px;width:100%;padding:10px 12px;display:flex}.suggestions button:hover,.suggestions [aria-selected=true] button{background:#6d7b941a}.suggestions span{font-size:.92rem;font-weight:600}.suggestions small{color:#7a8490;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.weather-card{z-index:5;perspective:1200px;border:1px solid #ffffff57;border-radius:14px;width:min(100%,320px);height:min(430px,100svh - 210px);min-height:390px;transition:box-shadow .3s;position:relative;overflow:visible;box-shadow:12px 16px 46px -12px #242c3d47,inset 0 1px #fff6}.card-flip-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .72s cubic-bezier(.22,1,.36,1);position:relative}.weather-card.is-flipped .card-flip-inner{transform:rotateY(180deg)}.card-face{backface-visibility:hidden;background:linear-gradient(180deg, var(--card-top), var(--card-bottom));border:1px solid #ffffff57;border-radius:14px;transition:background .9s,color .9s;position:absolute;inset:0;overflow:hidden;box-shadow:inset 0 1px #fff6}.card-back{color:#4e5968;background:radial-gradient(circle at 85% 0,#ffffff52,#0000 34%),linear-gradient(145deg,#edf1f9fa,#c7d1e1fa);flex-direction:column;padding:22px 18px 18px;display:flex;transform:rotateY(180deg)}.weather-app[data-period=night] .card-back{color:#edf3fd;background:radial-gradient(circle at 85% 0,#8ca4ce29,#0000 34%),linear-gradient(145deg,#293751,#151f33)}.current-details{z-index:10;color:var(--detail-color);justify-content:space-between;align-items:flex-start;padding:22px 22px 0;transition:color 1.2s;display:flex;position:relative}.temperature{letter-spacing:-.07em;align-items:flex-start;font-size:clamp(3.4rem,15vw,4.3rem);font-weight:300;line-height:.9;display:flex}.temperature span{letter-spacing:0;margin:4px 0 0 7px;font-size:.95rem;font-weight:500}.current-copy{text-align:right;flex-direction:column;align-items:flex-end;max-width:150px;display:flex}.current-copy strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.87rem;font-weight:600;overflow:hidden}.current-copy time{opacity:.82;margin-top:4px;font-size:.72rem}.current-copy h2{letter-spacing:-.03em;margin:6px 0 0;font-size:1.36rem;font-weight:500}.weather-scene{transition:opacity .38s,transform .5s;animation:.9s cubic-bezier(.22,1,.36,1) scene-reveal;position:absolute;inset:0;overflow:hidden}.weather-card[data-loading=true] .weather-scene{opacity:.34;transform:scale(.985)}.celestial-orb{border-radius:50%;width:96px;height:96px;animation:1.2s cubic-bezier(.22,1,.36,1) both celestial-rise;position:absolute;top:44%;left:50%;transform:translate(-50%,-50%)}.celestial-orb[data-period=day]{background:#f7e762;box-shadow:0 0 48px #f7e04c94}.celestial-orb[data-period=night]{background:radial-gradient(circle at 32% 32%,#97a3bb6b 0 5px,#0000 6px),radial-gradient(circle at 67% 58%,#97a3bb52 0 8px,#0000 9px),radial-gradient(circle at 46% 75%,#97a3bb3d 0 4px,#0000 5px),#e8edf7;box-shadow:0 0 42px #c3d3f461,inset -13px -10px 20px #7e8ba933}[data-weather=partly] .celestial-orb{opacity:.9;width:84px;height:84px;top:40%;left:48%}.cloud{--cloud-color:var(--cloud-one);--cloud-distance:180px;--cloud-speed:22s;width:calc(100% + 400px);height:132px;color:var(--cloud-color);will-change:transform;animation:cloud-drift var(--cloud-speed) linear infinite;position:absolute;left:-200px;-webkit-mask-image:linear-gradient(#000 0 74%,#000000d1 86%,#0000 100%);mask-image:linear-gradient(#000 0 74%,#000000d1 86%,#0000 100%)}.cloud:before{filter:blur(.25px);content:"";background:radial-gradient(44px 40px at 44px 88px,currentColor 0 98%,#0000 100%) 0 0/210px 132px repeat-x,radial-gradient(62px 52px at 108px 88px,currentColor 0 98%,#0000 100%) 0 0/210px 132px repeat-x,radial-gradient(38px 32px at 172px 88px,currentColor 0 98%,#0000 100%) 0 0/210px 132px repeat-x;position:absolute;inset:0}.cloud:after{content:"";background:currentColor;position:absolute;inset:88px 0 0}.cloud-back{--cloud-color:var(--cloud-three);--cloud-speed:34s;opacity:.9;top:94px}.cloud-middle{--cloud-color:var(--cloud-two);--cloud-speed:27s;animation-direction:reverse;animation-delay:-9s;top:132px}.cloud-front{--cloud-color:var(--cloud-one);--cloud-speed:21s;animation-delay:-14s;top:178px}[data-weather=partly] .cloud-back{opacity:.72;top:150px}[data-weather=partly] .cloud-middle{opacity:.86;top:205px}[data-weather=partly] .cloud-front{display:none}.rain-field,.rain-splash-field,.snow-field,.leaf-field,.fog-bands,.lightning-flash{position:absolute;inset:0}.rain-field{top:170px}.rain-field i{--delay:calc(var(--i) * -.13s);top:-30px;left:var(--x);width:2px;height:21px;animation:rain-fall 1.05s var(--delay) linear infinite;background:#2f599a94;border-radius:99px;position:absolute}.rain-splash-field{z-index:7;height:26px;top:auto}.rain-splash-field i{--delay:calc(var(--i) * -.17s);bottom:2px;left:var(--x);opacity:0;width:4px;height:4px;animation:rain-splash 1.05s var(--delay) linear infinite;border:1.5px solid #36619ea6;border-top-color:#0000;border-radius:50%;position:absolute}.rain-splash-field i:before,.rain-splash-field i:after{content:"";background:#36619e94;border-radius:999px;width:2px;height:7px;position:absolute;bottom:1px}.rain-splash-field i:before{left:-5px;rotate:-42deg}.rain-splash-field i:after{right:-5px;rotate:42deg}[data-weather=thunder] .rain-field i{background:#dfe7f194;height:31px;animation-duration:.72s}[data-weather=thunder] .rain-splash-field i{border-color:#0000 #dfe7f1b3 #dfe7f1b3;animation-duration:.72s}[data-weather=thunder] .rain-splash-field i:before,[data-weather=thunder] .rain-splash-field i:after{background:#dfe7f1a6}.snow-field{top:140px}.snow-field i{--delay:calc(var(--i) * -.34s);top:-20px;left:var(--x);width:var(--size);height:var(--size);animation:snow-fall var(--duration) var(--delay) linear infinite;background:#ffffffe0;border-radius:50%;position:absolute;box-shadow:0 0 8px #ffffff7a}.leaf-field i{--delay:calc(var(--i) * -.42s);top:calc(130px + (var(--i) % 5) * 39px);background:hsl(calc(74 + var(--i) * 5) 35% 38%);width:16px;height:9px;animation:leaf-flight var(--duration) var(--delay) linear infinite;border-radius:90% 0;position:absolute;left:-30px}.fog-bands{flex-direction:column;gap:22px;padding:0 26px;display:flex;top:190px}.fog-bands i{background:#f9fbfc85;border-radius:99px;height:12px;animation:5s ease-in-out infinite alternate fog-shift}.fog-bands i:nth-child(2){width:75%;animation-delay:-2s}.fog-bands i:nth-child(3){align-self:flex-end;width:88%;animation-delay:-3.4s}.lightning-flash{opacity:0;background:linear-gradient(112deg,#0000 42%,#fffffff2 43% 44%,#0000 45%);animation:6.2s ease-in-out infinite lightning}.metrics{z-index:10;color:var(--detail-color);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#ffffff38;border:1px solid #ffffff52;border-radius:12px;grid-template-columns:repeat(3,1fr);gap:6px;padding:10px;display:grid;position:absolute;bottom:14px;left:14px;right:14px}.hourly-strip{z-index:11;color:var(--detail-color);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#ffffff2e;border:1px solid #ffffff47;border-radius:12px;grid-template-columns:repeat(5,minmax(0,1fr));margin:0;padding:8px 6px;list-style:none;transition:opacity .4s,transform .5s;display:grid;position:absolute;bottom:82px;left:14px;right:14px}.hourly-strip li{place-items:center;gap:1px;min-width:0;display:grid}.hourly-strip time{opacity:.72;font-size:.58rem;font-weight:600}.hourly-icon{color:currentColor;width:25px;height:25px}.hourly-strip strong{font-size:.72rem;font-weight:650}.hourly-strip span{color:#4f77a8;font-size:.55rem;font-weight:600}.weather-app[data-period=night] .hourly-strip span{color:#a9c9f3}.weather-card[data-loading=true] .hourly-strip{opacity:.42;transform:translateY(3px)}.weather-loader{z-index:25;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f8fafdc7;border:1px solid #ffffff94;border-radius:999px;align-items:center;gap:8px;padding:8px 11px;transition:opacity .22s,transform .3s;display:flex;position:absolute;top:48%;left:50%;transform:translate(-50%,-44%)scale(.94);box-shadow:0 10px 28px #2b354624}.weather-loader.is-visible{opacity:1;transform:translate(-50%,-50%)scale(1)}.weather-loader>span{border:2px solid #56657e33;border-top-color:#62728b;border-radius:50%;width:15px;height:15px;animation:.75s linear infinite spin}.weather-loader small{color:#586578;white-space:nowrap;font-size:.67rem;font-weight:600}.weather-app[data-period=night] .weather-loader{background:#1a253ad1;border-color:#fff3;box-shadow:0 12px 30px #0003}.weather-app[data-period=night] .weather-loader small{color:#e3eaf6}.weather-app[data-period=night] .weather-loader>span{border-color:#d9e5f8 #cfdcf133 #cfdcf133}.flip-button{z-index:30;cursor:pointer;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f7f9fcd6;border:1px solid #ffffffc7;border-radius:50%;place-items:center;width:46px;height:46px;transition:transform .26s,background .16s;display:grid;position:absolute;bottom:-13px;right:-13px;box-shadow:0 9px 24px #323c4d38}.flip-button:hover{background:#fffffff5;transform:rotate(22deg)}.flip-button:active{transform:scale(.92)}.flip-button:focus-visible{outline-offset:3px;outline:2px solid #596579}.flip-button svg{fill:none;stroke:#667184;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:21px;transition:rotate .72s cubic-bezier(.22,1,.36,1)}.weather-card.is-flipped .flip-button svg{rotate:180deg}.forecast-heading{border-bottom:1px solid #4c596c1f;justify-content:space-between;align-items:flex-end;gap:12px;padding:0 4px 14px;display:flex}.forecast-heading span{color:#7a8595;letter-spacing:.14em;text-transform:uppercase;margin-bottom:2px;font-size:.68rem;font-weight:700;display:block}.forecast-heading h2{letter-spacing:-.025em;margin:0;font-size:1.12rem;font-weight:600}.forecast-heading>strong{color:#657184;text-overflow:ellipsis;white-space:nowrap;max-width:110px;padding-bottom:1px;font-size:.76rem;font-weight:600;overflow:hidden}.forecast-list{flex-direction:column;flex:1;justify-content:center;margin:0;padding:6px 0 0;list-style:none;display:flex}.forecast-list li{border-bottom:1px solid #4c596c17;grid-template-columns:48px 34px minmax(0,1fr) 52px 43px;align-items:center;gap:5px;min-height:62px;display:grid}.forecast-list li:last-child{border-bottom:0}.forecast-day{flex-direction:column;min-width:0;display:flex}.forecast-day strong{text-transform:capitalize;font-size:.78rem;font-weight:650}.forecast-day span{color:#85909f;margin-top:2px;font-size:.64rem}.forecast-icon{color:#718095;width:31px;height:31px}.forecast-label{color:#6a7687;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.forecast-rain{color:#748399;white-space:nowrap;align-items:center;gap:3px;font-size:.62rem;display:flex}.forecast-rain svg{fill:#4a7cb633;stroke:#6684a8;stroke-width:1.7px;width:12px}.forecast-temp{justify-content:flex-end;gap:4px;font-size:.75rem;display:flex}.forecast-temp strong{font-weight:700}.forecast-temp span{color:#85909f}.weather-app[data-period=night] .forecast-heading{border-bottom-color:#e1eaf81f}.weather-app[data-period=night] .forecast-heading span,.weather-app[data-period=night] .forecast-heading>strong,.weather-app[data-period=night] .forecast-day span,.weather-app[data-period=night] .forecast-label,.weather-app[data-period=night] .forecast-rain,.weather-app[data-period=night] .forecast-temp span,.weather-app[data-period=night] .forecast-empty{color:#aebbd0}.weather-app[data-period=night] .forecast-list li{border-bottom-color:#e1eaf817}.weather-app[data-period=night] .forecast-icon{color:#d8e3f4}.weather-app[data-period=night] .forecast-rain svg{fill:#86b1e233;stroke:#9cbce0}.forecast-empty{color:#758194;flex:1;place-items:center;font-size:.82rem;display:grid}.metrics div{flex-direction:column;align-items:center;gap:2px;min-width:0;display:flex}.metrics span{opacity:.72;font-size:.64rem}.metrics strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.76rem;font-weight:600;overflow:hidden}.status{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.data-credit{color:#42485194;margin-top:16px;font-size:.7rem;text-decoration:none;transition:color .16s}.data-credit:hover{color:#313740e6}.weather-app[data-period=night] .data-credit:hover{color:#fff}@keyframes scene-reveal{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes celestial-rise{0%{opacity:0;transform:translate(-50%,calc(-50% - 44px))scale(.86)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes star-shimmer{0%{opacity:.3}to{opacity:.58}}@keyframes sunburst-spin{to{rotate:360deg}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes cloud-drift{0%{transform:translate(0)}to{transform:translate3d(var(--cloud-distance), 0, 0)}}@keyframes rain-fall{0%{opacity:0;translate:0 -20px}12%{opacity:1}to{opacity:.2;translate:-13px 280px}}@keyframes rain-splash{0%,69%{opacity:0;transform:translateY(0)scale(.45)}72%{opacity:.9;transform:translateY(0)scale(.65)}to{opacity:0;transform:translateY(-8px)scale(1.7,.72)}}@keyframes snow-fall{0%{opacity:0;translate:0 -20px;rotate:none}15%{opacity:1}50%{translate:24px 125px}to{opacity:.25;translate:-18px 285px;rotate:220deg}}@keyframes leaf-flight{0%{translate:-30px 40px;rotate:none}48%{translate:185px -35px;rotate:260deg}to{translate:390px 55px;rotate:540deg}}@keyframes fog-shift{0%{translate:-12px}to{translate:18px}}@keyframes lightning{0%,71%,74%,to{opacity:0}72%,73%{opacity:1}}@media (height<=690px){.weather-shell{padding-top:18px}.app-heading,.search-wrap{margin-bottom:12px}.weather-card{min-height:365px}.data-credit{margin-top:9px}}@media (width<=360px){.weather-shell{padding-inline:12px}.weather-card{min-height:375px}.current-details{padding-inline:18px}.metrics{left:10px;right:10px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
