/*! 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{box-sizing:border-box;border:0 solid;margin:0;padding:0}::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;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;appearance:button}::file-selector-button{-webkit-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}}@layer components;@layer utilities{.start{inset-inline-start:var(--spacing)}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#f5f5ef;--muted:#f5f5ef9e;--line:#ffffff2e;--base:#101c23;--tone-a:#345d71;--tone-b:#0f2c3b;--accent:#d3ff82}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:#101c23;margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}.weather-stage{--base:#101c23;--tone-a:#345d71;--tone-b:#0f2c3b;--accent:#d3ff82;background:var(--base);isolation:isolate;grid-template-rows:auto 1fr auto;min-height:100svh;padding:24px 32px 26px;transition:background-color 1.2s;display:grid;position:relative;overflow:hidden}.weather-stage[data-mood=storm]{--base:#090b12;--tone-a:#4a4d68;--tone-b:#142b39;--accent:#bdf3ff}.weather-stage[data-mood=heat]{--base:#2b120e;--tone-a:#d16431;--tone-b:#762810;--accent:#ffe566}.weather-stage[data-mood=cold]{--base:#0b202c;--tone-a:#8dbfd1;--tone-b:#244960;--accent:#e7fbff}.weather-stage[data-mood=rain]{--base:#0c1a21;--tone-a:#315a67;--tone-b:#1a3543;--accent:#9ddfff}.weather-stage[data-mood=fog]{--base:#2d3434;--tone-a:#8b9690;--tone-b:#4f5d5b;--accent:#f0ffc5}.weather-stage[data-mood=clear-day]{--base:#18344c;--tone-a:#5fa1c6;--tone-b:#b46c45;--accent:#f0ff91}.weather-stage[data-mood=clear-night]{--base:#080d1b;--tone-a:#333962;--tone-b:#122c46;--accent:#b8d6ff}.atmosphere,.grain,.particles{pointer-events:none;position:absolute;inset:0}.atmosphere{z-index:-1;overflow:hidden}.atmosphere:after{content:"";background:linear-gradient(#0000000f,#0000005c);position:absolute;inset:0}.orb{filter:blur(72px);opacity:.72;mix-blend-mode:screen;border-radius:50%;position:absolute}.orb-a{background:var(--tone-a);width:74vw;height:74vw;animation:18s ease-in-out infinite alternate drift-a;top:-32vw;left:-20vw}.orb-b{background:var(--tone-b);width:66vw;height:66vw;animation:24s ease-in-out infinite alternate drift-b;bottom:-32vw;right:-18vw}.pressure-ring{border:1px solid #ffffff21;border-radius:50%;position:absolute}.ring-a{aspect-ratio:1;width:62vw;animation:45s linear infinite spin;top:-29vw;right:-16vw}.ring-b{aspect-ratio:1;width:36vw;animation:34s linear infinite reverse spin;bottom:-25vw;left:8vw}.ring-a:before,.ring-a:after,.ring-b:before{content:"";border:1px solid #ffffff14;border-radius:50%;position:absolute;inset:10%}.ring-a:after{inset:25%}.particles i{left:calc(var(--i) * 3.57%);top:calc(5% + var(--i) * 2.4%);width:2px;height:28px;animation:fall calc(2.8s + var(--i) * 30ms) linear infinite;animation-delay:calc(var(--i) * -.17s);opacity:0;background:#ffffff47;position:absolute;transform:rotate(18deg)}[data-mood=rain] .particles i,[data-mood=storm] .particles i{opacity:.7}[data-mood=cold] .particles i{opacity:.65;width:4px;height:4px;animation-duration:calc(5s + var(--i) * 80ms);border-radius:50%;transform:none}.grain{opacity:.14;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E")}.topbar{border-bottom:1px solid var(--line);letter-spacing:.13em;text-transform:uppercase;justify-content:space-between;align-items:center;padding-bottom:18px;font-size:12px;display:flex}.wordmark{letter-spacing:.22em;font-size:14px;font-weight:700}.top-actions{color:var(--muted);align-items:center;gap:30px;display:flex}.top-actions a:hover,.credits a:hover{color:var(--ink)}.live-indicator{align-items:center;gap:9px;display:flex}.live-indicator i{background:var(--accent);width:7px;height:7px;box-shadow:0 0 14px var(--accent);border-radius:50%;animation:2s ease-in-out infinite pulse}.hero{align-self:center;max-width:920px;margin:7vh 0 4vh}.eyebrow,.context{color:var(--accent);letter-spacing:.18em;text-transform:uppercase;font-size:11px;font-weight:700}.hero h1{letter-spacing:-.075em;max-width:850px;margin:20px 0 24px;font-size:clamp(58px,9vw,142px);font-weight:500;line-height:.82}.intro{max-width:530px;color:var(--muted);margin:0;font-size:clamp(16px,1.4vw,20px);line-height:1.55}.weather-card{border-top:1px solid var(--line);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);grid-template-columns:1.05fr 1fr 1.2fr;align-items:center;gap:28px;min-height:126px;padding:22px 0;display:grid}.reading{align-items:center;gap:20px;display:flex}.temperature{letter-spacing:-.08em;font-size:clamp(52px,6vw,88px);line-height:.8}.reading div,.place-block{flex-direction:column;gap:6px;display:flex}.condition{font-size:15px;font-weight:700}.feels,.place-block>span:last-child{color:var(--muted);font-size:12px}.place-block{border-left:1px solid var(--line);padding-left:28px}.place-block strong{font-size:clamp(18px,2vw,28px);font-weight:500;line-height:1.1}.metrics{border-left:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin:0;display:grid}.metrics div{padding-left:24px}.metrics dt{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;margin-bottom:9px;font-size:11px}.metrics dd{white-space:nowrap;margin:0;font-size:14px}.loading-row{color:var(--muted);grid-column:1/-1;align-items:center;gap:15px;display:flex}.loading-row i{border:1px solid var(--accent);border-top-color:#0000;border-radius:50%;width:12px;height:12px;animation:1s linear infinite spin}footer{justify-content:space-between;align-items:flex-end;gap:24px;min-height:72px;padding-top:22px;display:flex}footer button{border:0;border-bottom:1px solid var(--ink);min-width:190px;color:var(--ink);cursor:pointer;text-align:left;background:0 0;justify-content:space-between;padding:9px 0;display:flex}footer button:hover b{transform:translate(2px,-2px)}footer button b{transition:transform .2s}footer button:disabled{opacity:.5;cursor:wait}.error{color:#ffd2c9;margin:8px 0 0;font-size:12px}.credits{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;text-align:right;margin:0;font-size:10px}.credits a{text-underline-offset:3px;text-decoration:underline}@keyframes drift-a{to{transform:translate(14vw,11vh)scale(1.08)}}@keyframes drift-b{to{transform:translate(-11vw,-8vh)scale(.9)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}@keyframes fall{0%{translate:-6vw -18vh}to{translate:10vw 118vh}}@media (max-width:760px){.weather-stage{padding:20px}.top-actions{gap:16px}.live-indicator{display:none}.hero{margin:8vh 0 5vh}.hero h1{font-size:clamp(54px,18vw,92px)}.weather-card{grid-template-columns:1fr 1fr;gap:18px}.place-block{border-left:1px solid var(--line);padding-left:18px}.metrics{border-left:0;border-top:1px solid var(--line);grid-column:1/-1;padding-top:18px}.metrics div{padding-left:0}footer{align-items:flex-start}.credits{max-width:170px}}@media (max-width:480px){.reading{gap:12px}.temperature{font-size:54px}.condition{font-size:13px}.place-block strong{font-size:17px}.context{font-size:9px}.credits{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
