*,:before,:after{box-sizing:border-box;border-style:solid;border-width:0;border-color:var(--un-default-border-color,#e5e7eb)}:before,:after{--un-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;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}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}*,:before,:after,::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 #0000;--un-ring-shadow:0 0 #0000;--un-shadow-inset: ;--un-shadow:0 0 #0000;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:#93c5fd80;--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.section-label{color:var(--accent) ;letter-spacing:.16em;font-size:.7rem;font-weight:600;font-family:var(--font-mono);text-transform:uppercase;margin:0}.page-shell{width:min(100% - 3rem,62rem);margin-left:auto;margin-right:auto}.quiet-link{color:var(--muted) ;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.quiet-link:hover,.quiet-link:focus-visible{color:var(--ink) }.font-code{font-family:var(--font-mono)}.font-display{font-family:var(--font-serif)}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.left-4{left:1rem}.top-4{top:1rem}.z-10{z-index:10}.grid{display:grid}.inline-grid{display:inline-grid}.m-0{margin:0}.mb-0{margin-bottom:0}.mb-5{margin-bottom:1.25rem}.mb-7{margin-bottom:1.75rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-14{margin-top:3.5rem}.mt-3{margin-top:.75rem}.mt-7{margin-top:1.75rem}.inline{display:inline}.block{display:block}.hidden{display:none}.h1{height:.25rem}.h2{height:.5rem}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.min-h-\[calc\(100svh-10rem\)\]{min-height:calc(100svh - 10rem)}.flex{display:flex}.inline-flex{display:inline-flex}.flex-shrink{flex-shrink:1}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.-translate-y-24{--un-translate-y:-6rem;transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.hover\:-translate-y-0\.5:hover{--un-translate-y:-.125rem;transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.focus\:translate-y-0:focus{--un-translate-y:0;transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.transform{transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.resize{resize:both}.items-center{align-items:center}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-x-4{column-gap:1rem}.gap-y-2{row-gap:.5rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-line{border-color:var(--line)}.hover\:border-accent:hover,.focus-visible\:border-accent:focus-visible{border-color:var(--accent)}.rounded-2xl{border-radius:1rem}.rounded-md{border-radius:.375rem}.bg-ink{background-color:var(--ink) }.bg-surface{background-color:var(--surface) }.hover\:bg-surface-strong:hover{background-color:var(--surface-strong) }.p-5{padding:1.25rem}.px{padding-left:1rem;padding-right:1rem}.px-3{padding-left:.75rem;padding-right:.75rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-7{padding-top:1.75rem;padding-bottom:1.75rem}.pb-10{padding-bottom:2.5rem}.text-wrap{text-wrap:wrap}.text-\[0\.7rem\]{font-size:.7rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.text-\[clamp\(2\.5rem\,7vw\,4\.4rem\)\]{font-size:clamp(2.5rem,7vw,4.4rem)}.text-\[clamp\(2\.8rem\,7vw\,4\.8rem\)\]{font-size:clamp(2.8rem,7vw,4.8rem)}.text-accent,.group:hover .group-hover\:text-accent{color:var(--accent) }.text-canvas{color:var(--canvas) }.text-muted{color:var(--muted) }.font-400{font-weight:400}.font-600{font-weight:600}.leading-\[1\.06\]{line-height:1.06}.leading-7{line-height:1.75rem}.leading-8{line-height:2rem}.tracking-\[-0\.02em\]{letter-spacing:-.02em}.tracking-\[-0\.03em\]{letter-spacing:-.03em}.tracking-\[-0\.045em\]{letter-spacing:-.045em}.uppercase{text-transform:uppercase}.tabular-nums{--un-numeric-spacing:tabular-nums;font-variant-numeric:var(--un-ordinal) var(--un-slashed-zero) var(--un-numeric-figure) var(--un-numeric-spacing) var(--un-numeric-fraction)}.outline{outline-style:solid}.backdrop-blur-sm{--un-backdrop-blur:blur(4px);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.filter{filter:var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia)}.backdrop-filter{backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.ease,.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@media (width>=640px){.sm\:grid-cols-\[6\.5rem_1fr_auto\]{grid-template-columns:6.5rem 1fr auto}.sm\:flex-row{flex-direction:row}.sm\:items-start{align-items:flex-start}.sm\:justify-between{justify-content:space-between}.sm\:p-6{padding:1.5rem}.sm\:py-22{padding-top:5.5rem;padding-bottom:5.5rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}}@font-face{font-family:HY WenHei;src:url(/fonts/HYWenHei-85W.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}:root{color-scheme:dark;--canvas:#05070b;--surface:#0d121cb8;--surface-strong:#141b29e0;--ink:#e8ecf5;--muted:#8d96aa;--line:#8e9dbb2e;--accent:#8aafff;--glass-face:linear-gradient(145deg, #869bc12e, #1f2a3eb8);--glass-panel:linear-gradient(145deg, #222e42f0, #0f1724f0);--glass-edge:#c2d4f33d;--glass-highlight:inset 0 1px 0 #f1f7ff24, inset 0 -1px 0 #050c1924;--glass-shadow:#00071438;--glass-well:#050c1847;--glass-selected:#86a4d83d;--glass-card:linear-gradient(140deg, #859eca1f, #10192933);--glass-card-rim:#c6d7f333;--glass-card-inner:#eef6ff17;--glass-card-shadow:#0007141f;--font-sans:"HY WenHei", "PingFang SC", "Microsoft YaHei", sans-serif;--font-serif:"HY WenHei", "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace}:root[data-theme=day]{color-scheme:light;--canvas:#eceef1;--surface:#f9fafc8c;--surface-strong:#ffffffc7;--ink:#283140;--muted:#606978;--line:#3e4b5f30;--accent:#4b637e;--glass-face:linear-gradient(145deg, #ffffffd9, #e2eaf394);--glass-panel:linear-gradient(145deg, #fffffff0, #eaf0f7f0);--glass-edge:#ffffffe0;--glass-highlight:inset 0 1px 0 #fffffff5, inset 0 -1px 0 #6277911f;--glass-shadow:#344a6724;--glass-well:#7087a214;--glass-selected:#fffffff0;--glass-card:linear-gradient(140deg, #ffffff57, #ebf1f624);--glass-card-rim:#ffffffa8;--glass-card-inner:#465b6f14;--glass-card-shadow:#2f405117}:root[data-theme=day][data-weather=storm]{--surface:#f2f5fab3;--surface-strong:#f9fafde0;--ink:#202b3b;--muted:#4b586a;--line:#2f40573d;--accent:#344e71}html{scroll-behavior:smooth;background:var(--canvas)}html.is-dragging-cloud{cursor:grabbing;user-select:none}body{background:radial-gradient(circle at 72% 9%, #2a437a1c, transparent 32rem), var(--canvas);min-width:320px;color:var(--ink);font-family:var(--font-sans);text-rendering:optimizelegibility;margin:0;transition:color .7s}:root[data-theme=day] body{background:var(--canvas)}.page-shell{z-index:1;isolation:isolate;width:min(100% - 3rem,62rem);position:relative}.site-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem 2.5rem;padding-block:clamp(1.25rem,4.5svh,2.75rem) 1.25rem;display:flex}.site-brand{letter-spacing:-.025em;align-items:center;gap:.75rem;font-size:1rem;font-weight:500;display:inline-flex}.site-brand img{border:1px solid var(--glass-card-rim);object-fit:cover;object-position:center 38%;width:2.65rem;height:2.65rem;box-shadow:inset 0 1px 0 #ffffffb8, 0 6px 18px var(--glass-card-shadow);border-radius:50%}.site-brand span{letter-spacing:.06em}.site-navigation,.site-links,.site-tools{align-items:center;display:flex}.site-navigation{gap:2.25rem}.site-links{gap:2.75rem;font-size:1rem}.site-links .quiet-link{color:var(--ink)}.site-tools{gap:.65rem}.site-tools .glass-control{box-sizing:border-box;border:1px solid var(--glass-edge);background:var(--glass-face);width:2.5rem;height:2.5rem;color:var(--ink);box-shadow:var(--glass-highlight), 0 3px 10px var(--glass-shadow);backdrop-filter:blur(12px)saturate(120%);border-radius:.8rem;flex-shrink:0;place-items:center;padding:0;transition:transform .18s,box-shadow .18s,border-color .18s;display:inline-grid}.site-tools .glass-control:hover,.site-tools .glass-control[aria-expanded=true]{border-color:color-mix(in srgb, var(--accent) 35%, var(--glass-edge));box-shadow:var(--glass-highlight), 0 6px 16px var(--glass-shadow);transform:translateY(-1px)}.site-tools .glass-control:active{transform:translateY(0)scale(.96)}.site-tools .glass-control:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@supports not (backdrop-filter:blur(1px)){.site-tools .glass-control{background:var(--surface-strong)}}@media (width<=760px){.site-header{padding-top:1.25rem}.site-navigation{flex-wrap:wrap;justify-content:space-between;gap:.75rem .5rem;width:100%}.site-links{gap:clamp(1rem,4vw,1.75rem);font-size:.875rem}.site-tools{gap:.2rem;margin-left:auto}}::view-transition-old(root),::view-transition-new(root){animation:none}::selection{background:color-mix(in srgb, var(--accent) 22%, transparent)}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.article-content{font-size:1.05rem;line-height:1.9}.article-content>:first-child{margin-top:0}.article-content h2{font-family:var(--font-serif);letter-spacing:-.025em;margin:3rem 0 1rem;font-size:clamp(1.8rem,4vw,2.3rem);font-weight:400}.article-content p,.article-content ul{margin:1.25rem 0}.article-content ul{padding-left:1.4rem}.article-content li{margin:.55rem 0}.article-content strong{color:var(--ink);font-weight:650}.article-content pre{border:1px solid var(--line);font-family:var(--font-mono);border-radius:1rem;margin:1.75rem 0;padding:1.2rem 1.3rem;font-size:.88rem;line-height:1.7;overflow-x:auto;background:#0a0e16e6!important}:root[data-theme=day] .article-content pre{color:#17364d!important;background:#eff7fce0!important}:root[data-theme=day] .article-content pre span{color:inherit!important}:root[data-theme=day][data-weather=storm] .article-content pre{border-color:#e1edf63d;color:#eef4fb!important;background:#0a121dd1!important}.article-content code:not(pre code){background:var(--surface);color:var(--accent);font-family:var(--font-mono);border-radius:.35rem;padding:.12rem .35rem;font-size:.9em}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}body,.site-tools .glass-control{transition:none}::view-transition-old(root),::view-transition-new(root){animation-duration:0s}}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}.interactive-scene[data-astro-cid-jezl3i2q]{z-index:0;pointer-events:none;background:#05070b;position:fixed;inset:0;overflow:hidden}.sky-layer[data-astro-cid-jezl3i2q],.weather-shade[data-astro-cid-jezl3i2q],.day-atmosphere[data-astro-cid-jezl3i2q],.lightning-flash[data-astro-cid-jezl3i2q]{position:absolute;inset:0}.sky-layer[data-astro-cid-jezl3i2q]{transition:opacity 1.1s cubic-bezier(.22,.75,.18,1),filter .9s}.sky-night[data-astro-cid-jezl3i2q]{opacity:1;background:linear-gradient(105deg,#0000 15%,#6d83c51a 50%,#0000 85%),radial-gradient(circle at 73% 12%,#30519c33,#0000 30rem),linear-gradient(150deg,#05070b 0%,#080e1c 58%,#071326 100%)}.sky-day[data-astro-cid-jezl3i2q]{opacity:0;background:#e6e9ed;overflow:hidden}.day-weather[data-astro-cid-jezl3i2q]{z-index:1;opacity:0;transition:opacity 1.8s;position:absolute;inset:0}.day-rain[data-astro-cid-jezl3i2q]{background:linear-gradient(145deg,#525b6a2e,#58637447)}.day-storm[data-astro-cid-jezl3i2q]{background:radial-gradient(at 25% 33%,#3f485633,#303a4c75 85%)}.interactive-scene[data-astro-cid-jezl3i2q][data-weather=rain] .day-rain[data-astro-cid-jezl3i2q],.interactive-scene[data-astro-cid-jezl3i2q][data-weather=storm] .day-storm[data-astro-cid-jezl3i2q]{opacity:1}.mist-bank[data-astro-cid-jezl3i2q]{opacity:var(--bank-presence,1);transform:translate3d(var(--bank-x,0px), var(--bank-y,0px), 0);pointer-events:none;transition:transform 2.4s cubic-bezier(.16,.8,.24,1),opacity 1.8s;position:absolute;inset:-28px}.mist-drift[data-astro-cid-jezl3i2q]{animation:42s ease-in-out infinite alternate mist-breathe;position:absolute;inset:-16px}.mist-texture[data-astro-cid-jezl3i2q]{pointer-events:none;background:url(/clouds/airy-silver-clouds-v2.webp) 50%/cover no-repeat;position:absolute;inset:0}@keyframes mist-breathe{0%{transform:translate(6px,-5px)scale(1)}to{transform:translate(-14px,8px)}}.scene-paused[data-astro-cid-jezl3i2q] .mist-drift[data-astro-cid-jezl3i2q],.scene-paused[data-astro-cid-jezl3i2q] .cloud[data-astro-cid-jezl3i2q]{animation-play-state:paused}.weather-shade[data-astro-cid-jezl3i2q]{z-index:1;opacity:0;background:linear-gradient(155deg,#18283714,#18213470);transition:opacity 1.8s}.day-atmosphere[data-astro-cid-jezl3i2q]{z-index:2;opacity:0;background:radial-gradient(34% 30% at 25% 33%,#b2daef42,#d5e9f417 48%,#0000 78%);transition:opacity 1.8s}.cloud-response[data-astro-cid-jezl3i2q]{z-index:2;background:radial-gradient(circle 12rem at var(--pointer-x,25%) var(--pointer-y,33%), #cae7f62e, #deeff70f 42%, transparent 74%);opacity:var(--pointer-cloud-light,0);mix-blend-mode:screen;pointer-events:none;transition:opacity .7s;position:absolute;inset:0}.interactive-scene[data-astro-cid-jezl3i2q][data-weather=rain] .cloud-response[data-astro-cid-jezl3i2q],.interactive-scene[data-astro-cid-jezl3i2q][data-weather=storm] .cloud-response[data-astro-cid-jezl3i2q]{opacity:0}.cloud-layer[data-astro-cid-jezl3i2q]{--cloud-x:0px;--cloud-y:0px;z-index:3;opacity:0;transform:translate3d(var(--cloud-x), var(--cloud-y), 0);transition:opacity .95s,filter .9s,transform .9s cubic-bezier(.2,.8,.2,1);position:absolute;inset:-3rem;mask-image:linear-gradient(90deg,#000,#0000 25% 75%,#000),linear-gradient(#0000 77%,#000 100%);mask-composite:add}.cloud[data-astro-cid-jezl3i2q]{--repel-x:0px;--repel-y:0px;--drag-x:0px;--drag-y:0px;--cloud-scale:1;--cloud-stretch:1;--cloud-top:20%;--cloud-duration:136s;--cloud-delay:0s;--static-left:20%;top:var(--cloud-top);user-select:none;width:clamp(24rem,38vw,42rem);max-width:none;height:auto;transform:translate3d(calc(var(--repel-x) + var(--drag-x)), calc(var(--repel-y) + var(--drag-y)), 0) scale(var(--cloud-scale)) scaleX(var(--cloud-stretch));transform-origin:50%;animation:cloud-cross var(--cloud-duration) linear var(--cloud-delay) 1 both;will-change:translate, transform;transition:transform .68s cubic-bezier(.16,.8,.24,1),opacity 1.8s;position:absolute;left:0}.cloud-template[data-astro-cid-jezl3i2q]{display:none}.cloud[data-astro-cid-jezl3i2q][data-cloud-depth=far]{opacity:.16}.cloud[data-astro-cid-jezl3i2q][data-cloud-depth=mid]{opacity:.24}.cloud[data-astro-cid-jezl3i2q][data-cloud-depth=near]{opacity:.34}.cloud[data-astro-cid-jezl3i2q].is-dragging{transition:none;animation-play-state:paused}canvas[data-astro-cid-jezl3i2q]{z-index:4;width:100%;height:100%;position:absolute;inset:0}.lightning-flash[data-astro-cid-jezl3i2q]{z-index:5;background:radial-gradient(circle 19rem at var(--lightning-x,50%) var(--lightning-y,20%), #d3e2ff33, #a4c1f412 43%, transparent 76%);opacity:0;transition:opacity .17s ease-out}.air-grain[data-astro-cid-jezl3i2q]{z-index:6;opacity:.018;mix-blend-mode:soft-light;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='.42'/%3E%3C/svg%3E");background-size:12rem 12rem;transition:opacity .9s;position:absolute;inset:0}.interactive-scene[data-astro-cid-jezl3i2q].lightning-active .lightning-flash[data-astro-cid-jezl3i2q]{opacity:1;transition-duration:28ms}html[data-theme=day] .sky-night[data-astro-cid-jezl3i2q]{opacity:0}html[data-theme=day] .sky-day[data-astro-cid-jezl3i2q],html[data-theme=day] .day-atmosphere[data-astro-cid-jezl3i2q],html[data-theme=day] .cloud-layer[data-astro-cid-jezl3i2q]{opacity:1}html[data-theme=night] .air-grain[data-astro-cid-jezl3i2q]{opacity:.025}.interactive-scene[data-astro-cid-jezl3i2q][data-weather=rain] .weather-shade[data-astro-cid-jezl3i2q]{opacity:.16}.interactive-scene[data-astro-cid-jezl3i2q][data-weather=storm] .weather-shade[data-astro-cid-jezl3i2q]{opacity:.48}.interactive-scene[data-astro-cid-jezl3i2q][data-weather=rain] .cloud-layer[data-astro-cid-jezl3i2q],.interactive-scene[data-astro-cid-jezl3i2q][data-weather=storm] .cloud-layer[data-astro-cid-jezl3i2q]{opacity:.94}.interactive-scene[data-astro-cid-jezl3i2q][data-weather=rain] .day-atmosphere[data-astro-cid-jezl3i2q]{opacity:.12}.interactive-scene[data-astro-cid-jezl3i2q][data-weather=storm] .day-atmosphere[data-astro-cid-jezl3i2q]{opacity:0}.interactive-scene[data-astro-cid-jezl3i2q][data-weather=storm] .cloud-layer[data-astro-cid-jezl3i2q]{opacity:1}.interactive-scene[data-astro-cid-jezl3i2q][data-weather=rain] .cloud[data-astro-cid-jezl3i2q],.interactive-scene[data-astro-cid-jezl3i2q][data-weather=storm] .cloud[data-astro-cid-jezl3i2q]{opacity:.28}html[data-theme=night] .interactive-scene[data-astro-cid-jezl3i2q] .cloud-layer[data-astro-cid-jezl3i2q],html[data-theme=night] .interactive-scene[data-astro-cid-jezl3i2q] .day-atmosphere[data-astro-cid-jezl3i2q]{opacity:0}html[data-theme=night] .mist-drift[data-astro-cid-jezl3i2q]{animation-play-state:paused}html[data-theme=day] .interactive-scene[data-astro-cid-jezl3i2q] .weather-shade[data-astro-cid-jezl3i2q]{opacity:0}@keyframes cloud-cross{0%{translate:calc(100vw + 10rem)}to{translate:-52rem}}@media (prefers-reduced-motion:reduce){.sky-layer[data-astro-cid-jezl3i2q],.day-weather[data-astro-cid-jezl3i2q],.mist-bank[data-astro-cid-jezl3i2q],.mist-drift[data-astro-cid-jezl3i2q],.mist-texture[data-astro-cid-jezl3i2q],.weather-shade[data-astro-cid-jezl3i2q],.day-atmosphere[data-astro-cid-jezl3i2q],.cloud-response[data-astro-cid-jezl3i2q],.cloud-layer[data-astro-cid-jezl3i2q],.cloud[data-astro-cid-jezl3i2q],.lightning-flash[data-astro-cid-jezl3i2q]{transition:none}.mist-drift[data-astro-cid-jezl3i2q]{animation:none}.mist-bank[data-astro-cid-jezl3i2q]{transform:none}.cloud[data-astro-cid-jezl3i2q]{left:var(--static-left);animation:none;translate:0}}.theme-control[data-astro-cid-l6lhmie6]{flex:none}.theme-trigger[data-astro-cid-l6lhmie6]{cursor:pointer}.theme-icon[data-astro-cid-l6lhmie6]{fill:none;stroke:currentColor;stroke-width:1.65px;stroke-linecap:round;stroke-linejoin:round;width:1.05rem;height:1.05rem;display:none}.theme-trigger[data-astro-cid-l6lhmie6][data-preference=system] .theme-icon-system[data-astro-cid-l6lhmie6],.theme-trigger[data-astro-cid-l6lhmie6][data-preference=day] .theme-icon-day[data-astro-cid-l6lhmie6],.theme-trigger[data-astro-cid-l6lhmie6][data-preference=night] .theme-icon-night[data-astro-cid-l6lhmie6]{display:block}.weather-control[data-astro-cid-e66ut2ch]{flex:none;position:relative}.weather-toggle[data-astro-cid-e66ut2ch]{border:1px solid var(--line);background:var(--surface);width:2.5rem;height:2.5rem;color:var(--accent);cursor:pointer;border-radius:.55rem;place-items:center;transition:border-color .16s,background-color .16s,color .16s,transform .16s;display:inline-grid;position:relative}.weather-toggle[data-astro-cid-e66ut2ch]:hover{border-color:var(--accent);background:var(--surface-strong);color:var(--ink);transform:translateY(-1px)}.weather-toggle[data-astro-cid-e66ut2ch] svg[data-astro-cid-e66ut2ch]{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:1.12rem;height:1.12rem}.weather-badge[data-astro-cid-e66ut2ch]{width:.3rem;height:.3rem;box-shadow:0 0 0 2px var(--glass-edge);background:#c3a567;border-radius:50%;position:absolute;bottom:.28rem;right:.28rem}.weather-badge[data-astro-cid-e66ut2ch][data-mode=rain]{background:#5d9fd2}.weather-badge[data-astro-cid-e66ut2ch][data-mode=storm]{background:#9496c2}.weather-panel[data-astro-cid-e66ut2ch]{z-index:30;box-sizing:border-box;border:1px solid var(--glass-edge);background:var(--glass-panel);width:min(21rem,100vw - 2rem);color:var(--ink);box-shadow:var(--glass-highlight), 0 18px 50px var(--glass-shadow);backdrop-filter:blur(20px)saturate(125%);border-radius:1.25rem;padding:1.25rem;position:absolute;top:calc(100% + .7rem);right:0}.weather-panel[data-astro-cid-e66ut2ch][hidden]{display:none}.weather-panel[data-astro-cid-e66ut2ch] p[data-astro-cid-e66ut2ch]{margin:0}.weather-eyebrow[data-astro-cid-e66ut2ch],.weather-fieldset[data-astro-cid-e66ut2ch] legend[data-astro-cid-e66ut2ch],.weather-city[data-astro-cid-e66ut2ch] label[data-astro-cid-e66ut2ch]{font-family:var(--font-sans);letter-spacing:.04em;color:var(--muted);text-transform:uppercase;font-size:.875rem;font-weight:400}.weather-summary[data-astro-cid-e66ut2ch]{font-size:.95rem;margin-top:.35rem!important}.weather-fieldset[data-astro-cid-e66ut2ch]{border:0;margin:1rem 0 0;padding:0}.weather-modes[data-astro-cid-e66ut2ch]{border:1px solid var(--line);background:var(--glass-well);border-radius:.85rem;grid-template-columns:repeat(4,minmax(0,1fr));gap:.25rem;margin-top:.55rem;padding:.25rem;display:grid}.weather-modes[data-astro-cid-e66ut2ch] button[data-astro-cid-e66ut2ch],.weather-city[data-astro-cid-e66ut2ch] form[data-astro-cid-e66ut2ch] button[data-astro-cid-e66ut2ch],.weather-result{border:1px solid var(--glass-edge);background:var(--glass-face);color:var(--ink);box-shadow:var(--glass-highlight);cursor:pointer;border-radius:.65rem;transition:background-color .18s,box-shadow .18s,border-color .18s}.weather-modes[data-astro-cid-e66ut2ch] button[data-astro-cid-e66ut2ch]{min-height:2.5rem;box-shadow:none;background:0 0;border-color:#0000;padding:.48rem .25rem;font-size:.875rem}.weather-modes[data-astro-cid-e66ut2ch] button[data-astro-cid-e66ut2ch]:hover,.weather-modes[data-astro-cid-e66ut2ch] button[data-astro-cid-e66ut2ch].is-active{border-color:var(--accent);color:var(--ink)}.weather-modes[data-astro-cid-e66ut2ch] button[data-astro-cid-e66ut2ch].is-active{border-color:var(--glass-edge);background:var(--glass-selected);box-shadow:var(--glass-highlight), 0 2px 8px var(--glass-shadow)}.weather-city[data-astro-cid-e66ut2ch]{margin-top:1rem}.weather-city[data-astro-cid-e66ut2ch] form[data-astro-cid-e66ut2ch]{grid-template-columns:1fr auto;gap:.4rem;margin-top:.55rem;display:grid}.weather-city[data-astro-cid-e66ut2ch] input[data-astro-cid-e66ut2ch]{border:1px solid var(--line);background:var(--surface);min-width:0;color:var(--ink);font:inherit;border-radius:.5rem;outline:none;padding:.58rem .65rem;font-size:1rem}.weather-city[data-astro-cid-e66ut2ch] input[data-astro-cid-e66ut2ch]:focus{border-color:var(--accent)}.weather-city[data-astro-cid-e66ut2ch] form[data-astro-cid-e66ut2ch] button[data-astro-cid-e66ut2ch]{color:var(--ink);padding:.5rem .7rem;font-size:.875rem}.weather-status[data-astro-cid-e66ut2ch],.weather-hint[data-astro-cid-e66ut2ch]{color:var(--muted);font-size:.8125rem;line-height:1.55;margin-top:.6rem!important}.weather-results[data-astro-cid-e66ut2ch]{gap:.35rem;margin-top:.5rem;display:grid}.weather-result{text-align:left;width:100%;padding:.55rem .65rem;font-size:.875rem}.weather-result:hover{border-color:var(--accent);color:var(--ink)}@media (width<=640px){.weather-panel[data-astro-cid-e66ut2ch]{width:auto;position:fixed;top:7.4rem;left:1rem;right:1rem}}@media (prefers-reduced-motion:reduce){.weather-toggle[data-astro-cid-e66ut2ch],.weather-modes[data-astro-cid-e66ut2ch] button[data-astro-cid-e66ut2ch],.weather-city[data-astro-cid-e66ut2ch] form[data-astro-cid-e66ut2ch] button[data-astro-cid-e66ut2ch],.weather-result{transition:none}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}
