:root{--space-px: .0625rem;--space-0-5: .125rem;--space-1: .1875rem;--space-1-5: .25rem;--space-2: .375rem;--space-2-5: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 1.75rem;--space-8: 2rem;--space-9: 2.25rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-32: 8rem;--h-1-20: 6svh;--h-1-3: 33.3333svh;--h-3-5: 50svh;--h-full: 100svh;--w-1-2: 50%;--w-full: 100%;--w-screen: 100dvw;--size-2: .5rem;--size-2-5: .625rem;--size-3: .75rem;--size-4: 1rem;--size-5: 1.25rem;--size-5-5: 1.375rem;--size-6: 1.5rem;--size-7: 1.75rem;--size-8: 2rem;--size-9: 2.25rem;--size-10: 2.5rem;--size-11: 2.75rem;--size-12: 3rem;--size-13: 3.25rem;--size-14: 3.5rem;--size-15: 3.75rem;--size-16: 4rem;--size-24: 6rem;--width-xs: 20rem;--width-sm: 24rem;--border: 1px;--radius-sm: .25rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-3xl: 2rem;--radius-ios: 2.375rem;--radius-full: 50%;--radius-pill: 9999px;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--text-7xl: 4.5rem;--text-8xl: 6rem;--text-9xl: 8rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--z-0: 0;--z-10: 10;--z-20: 20;--z-30: 30;--z-50: 50;--opacity-0: 0;--opacity-5: .05;--opacity-10: .1;--opacity-50: .5;--opacity-60: .6;--opacity-70: .7;--opacity-80: .8;--opacity-90: .9;--opacity-100: 1;--line-height-none: 1;--line-height-normal: 1.5;--line-height-loose: 1.25;--blur-sm: 4px;--scale-hover: 1.1;--scale-active: .95;--duration-100: .1s;--duration-150: .15s;--duration-200: .2s;--duration-300: .3s;--duration-700: .7s;--duration-1000: 1s;--delay-150: .15s;--delay-300: .3s;--transition-all: all var(--duration-300) ease-in-out;--transition-colors: color var(--duration-300) ease-out;--transition-bg: background-color var(--duration-700) ease-out;--transition-border: border-color var(--duration-700) ease-out;--transition-transform: transform var(--duration-300) ease;--transition-interactive: background-color var(--duration-200), color var(--duration-200), transform var(--duration-100) ease-out, box-shadow var(--duration-100) ease-out;--transition-marker: all var(--duration-200) ease-in-out, opacity var(--duration-300) ease, transform var(--duration-300) ease;--transition-slider: transform var(--duration-150) ease, left .05s linear;--transition-fade: opacity var(--duration-100) ease-out;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 5%);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / 10%), 0 2px 4px -2px rgb(0 0 0 / 10%);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 10%), 0 4px 6px -4px rgb(0 0 0 / 10%);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 10%), 0 8px 10px -6px rgb(0 0 0 / 10%);--color-white: #fff;--color-black: #000;--color-zinc-50: #fafafa;--color-zinc-100: #f4f4f5;--color-zinc-200: #e4e4e7;--color-zinc-300: #d4d4d8;--color-zinc-400: #a1a1aa;--color-zinc-500: #71717a;--color-zinc-600: #52525b;--color-zinc-700: #3f3f46;--color-zinc-800: #27272a;--color-zinc-900: #18181b;--text-primary: var(--color-zinc-100);--text-primary-inverse: var(--color-zinc-800);--text-secondary: var(--color-zinc-400);--text-border: var(--color-zinc-500);--surface-primary: color-mix(in srgb, var(--color-zinc-700) 70%, transparent);--surface-secondary: color-mix( in srgb, var(--color-zinc-800) 70%, transparent );--surface-overlay-light: color-mix( in srgb, var(--color-black) 5%, transparent );--surface-overlay-dark: color-mix( in srgb, var(--color-white) 10%, transparent );--surface-control: color-mix(in srgb, var(--color-white) 90%, transparent);--border-primary: color-mix(in srgb, var(--color-zinc-600) 80%, transparent);--border-secondary: color-mix( in srgb, var(--color-zinc-800) 90%, transparent );--surface-primary-dark: color-mix( in srgb, var(--color-zinc-900) 70%, transparent );--surface-secondary-variant: color-mix( in srgb, var(--color-zinc-700) 50%, transparent );--text-color: var(--text-primary);--info-text-color-light-bg: var(--text-primary-inverse);--info-text-color-dark-bg: var(--text-primary);--fillg: var(--text-primary);--panel-bg: var(--surface-primary);--panel-border: var(--border-primary);--panel-bg-dark: var(--surface-primary-dark);--panel-border-dark: var(--border-secondary);--controls-border: var(--border-secondary);--controls-text: var(--text-primary);--slider-badge-bg: var(--surface-control);--slider-badge-text: var(--text-primary-inverse);--marker-badge-bg: var(--surface-secondary-variant);--marker-badge-text: var(--color-white);--action-button-bg: var(--color-zinc-700);--action-button-bg-hover: var(--color-zinc-800);--action-button-text: var(--color-white);--input-bg: var(--surface-secondary);--input-text: var(--text-primary);--input-placeholder: var(--text-secondary);--input-border: var(--text-border);--forecast-bg-light: var(--surface-overlay-light);--forecast-bg-dark: var(--surface-overlay-dark)}@media all and (display-mode: standalone){:root{--h-1-20: 6vh;--h-1-3: 33.3333vh;--h-3-5: 52.5vh;--h-full: 100vh}}@font-face{font-family:Satoshi;src:url(./satoshi-300-IqwJ_ZjS.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Satoshi;src:url(./satoshi-400-CPM9dct4.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Satoshi;src:url(./satoshi-500-ByP-Zb-9.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Satoshi;src:url(./satoshi-700-Bd5kKQ_U.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0;touch-action:manipulation}html{background:transparent;transition:background var(--duration-1000) ease-out;height:var(--h-full);overflow:hidden;overscroll-behavior:none;line-height:var(--line-height-normal);text-size-adjust:var(--w-full);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Satoshi,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;margin:0;height:var(--h-full);position:fixed;top:0;left:0;overscroll-behavior:none;color:var(--text-color);transition:background var(--duration-1000) ease-out;line-height:var(--line-height-normal);width:100%;touch-action:manipulation}button,input,optgroup,select,textarea{font-family:inherit;font-size:var(--w-full);line-height:var(--line-height-loose);margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{appearance:auto}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:var(--border) dotted ButtonText}input[type=range]{appearance:none}input,textarea,select{font-size:16px;transform:translateZ(0);touch-action:manipulation}input:focus,textarea:focus,select:focus{font-size:16px;zoom:1}svg{display:block}ul,ol{list-style:none}img,svg{max-width:var(--w-full);height:auto}#scene-container{position:fixed;inset:0;z-index:var(--z-0);width:var(--w-screen);height:var(--h-full);display:block}*:not(input,textarea,select,[contenteditable=true]){user-select:none}input:not(:disabled),textarea:not(:disabled),select:not(:disabled),[contenteditable=true]{user-select:text}.main-info{position:absolute;top:var(--space-2-5);left:var(--space-2-5);padding:var(--space-3);max-width:var(--width-xs);z-index:var(--z-10);display:flex;flex-direction:column;gap:var(--space-1-5);color:var(--text-color);transition:var(--transition-colors);line-height:var(--line-height-none)}.main-info__city{font-size:var(--text-xl);font-weight:var(--font-weight-medium)}.main-info__time{font-weight:var(--font-weight-bold);transition:var(--transition-all);margin-top:var(--space-1-5)}.main-info__date{font-weight:var(--font-weight-normal);transition:var(--transition-all)}.main-info__forecast{margin-top:var(--space-1-5);line-height:var(--line-height-normal)}#main-info-time{font-size:var(--text-6xl)}#main-info-time.main-info__time--prioritized{font-size:var(--text-7xl);font-weight:var(--font-weight-bold)}#main-info-time.main-info__time--deprioritized{font-size:var(--text-5xl);font-weight:var(--font-weight-semibold)}#main-info-date{font-size:var(--text-lg);opacity:var(--opacity-90)}#main-info-date.main-info__date--prioritized{font-size:var(--text-2xl);font-weight:var(--font-weight-bold);opacity:var(--opacity-100)}#main-info-date.main-info__date--deprioritized{font-size:var(--text-lg);font-weight:var(--font-weight-semibold);opacity:var(--opacity-90)}.main-info__forecast-widget{background-color:var(--forecast-bg-light);backdrop-filter:blur(var(--blur-sm));padding:var(--space-1-5) var(--space-3);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:var(--transition-bg);width:fit-content}.main-info__forecast-container{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:var(--space-4)}.main-info__forecast-item{display:flex;align-items:center;font-size:var(--text-sm);gap:var(--space-2)}.main-info__forecast-time{font-weight:var(--font-weight-medium)}.main-info__forecast-item svg{width:var(--size-4);height:var(--size-4);margin-right:var(--space-1);opacity:var(--opacity-70)}.main-info__loading-dots span{display:inline-block;width:var(--size-2);height:var(--size-2);margin:0 var(--space-0-5);background-color:currentcolor;border-radius:var(--radius-full);animation:loading-bounce var(--duration-1000) infinite ease-in-out both}.main-info__loading-dots span:nth-child(1){animation-delay:var(--delay-300)}.main-info__loading-dots span:nth-child(2){animation-delay:var(--delay-150)}@keyframes loading-bounce{0%,80%,to{transform:scale(var(--opacity-0))}40%{transform:scale(var(--opacity-100))}}@media (min-width: 640px){.main-info{padding:var(--space-3);max-width:var(--width-sm)}.main-info__city{font-size:var(--text-2xl)}}@media all and (display-mode: standalone){.main-info{top:env(safe-area-inset-top)}}.sheet{position:relative;width:calc(100vw - 2 * var(--space-5));height:var(--size-16);z-index:var(--z-50);background:var(--panel-bg);border-radius:var(--radius-ios);overflow:hidden;transition:var(--transition-all);display:flex;align-self:center;align-items:center;justify-content:center;cursor:pointer}.sheet.sheet--open{position:fixed;bottom:0;width:100vw;height:var(--h-full);border-radius:var(--radius-ios) var(--radius-ios) 0 0;cursor:default;align-self:center}.sheet.sheet--dragging{transition:none}.sheet__handle{position:absolute;top:0;left:0;width:100%;height:var(--h-1-20);display:flex;align-items:center;justify-content:center;cursor:grab;user-select:none}.sheet__handle:active{cursor:grabbing}.sheet__grip{position:absolute;width:var(--space-9);height:var(--space-2);border-radius:var(--radius-pill);background:var(--surface-control);top:var(--space-2-5);display:none}.sheet--open .sheet__grip{display:block}.sheet--open .sheet__handle{backdrop-filter:blur(var(--blur-sm));z-index:var(--z-50)}.sheet__content{position:absolute;inset:0;padding:var(--h-1-20) var(--space-4) var(--space-3) var(--space-4);overflow:auto;display:none;backdrop-filter:blur(var(--blur-sm));scrollbar-width:none;-ms-overflow-style:none}.sheet__content::-webkit-scrollbar{display:none}.sheet--open .sheet__content{display:block}.sheet__headline{width:var(--w-full);font-size:var(--text-xl);font-weight:var(--font-weight-bold);text-align:center}.sheet--open .sheet__headline{display:none}.sheet__sections{display:flex;flex-direction:column;row-gap:var(--space-4)}.sheet__weather,.sheet__chip,.sheet__list-card,.sheet__single-card,.sheet__coordinate-card{background-color:var(--panel-bg-dark);padding:var(--space-3) var(--space-7)}.sheet__chip,.sheet__list-card,.sheet__single-card,.sheet__coordinate-card{border-radius:var(--radius-3xl)}.sheet__chip,.sheet__list-card,.sheet__coordinate-card{display:flex;flex-direction:column}.sheet__weather{display:flex;align-items:center;justify-content:space-between;border-radius:var(--radius-pill)}.sheet__chips-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.sheet__chip-label{display:inline-flex;align-items:center;column-gap:var(--space-2);font-size:var(--text-lg);font-weight:var(--font-weight-medium);opacity:var(--opacity-60)}.sheet__chip-value{font-size:var(--text-xl);font-weight:var(--font-weight-bold)}.sheet__chip-value--past{opacity:var(--opacity-60)}.sheet__icon{width:var(--space-6);height:var(--space-6);flex:0 0 auto}.sheet__list-card{row-gap:var(--space-4)}.sheet__list-item{display:flex;align-items:center;justify-content:space-between}.sheet__single-card{display:flex;flex-direction:row;justify-content:space-between;align-items:center}@media all and (display-mode: standalone){.sheet.sheet--open{height:calc(var(--h-full) - env(safe-area-inset-top))}}.time-slider__wrapper,.day-slider__wrapper{position:relative;display:flex;align-items:center;flex-grow:1}.time-slider__track,.day-slider__track{width:var(--size-10);height:var(--h-3-5);display:flex;justify-content:center;align-items:center;position:relative;margin:0 auto;flex-direction:column}.time-slider__badge,.day-slider__badge{position:absolute;transform:translateY(calc(-1 * var(--w-1-2)));background-color:var(--slider-badge-bg);color:var(--slider-badge-text);padding:var(--space-0-5) var(--space-3);border-radius:var(--radius-pill);font-size:var(--text-lg);font-weight:var(--font-weight-semibold);box-shadow:var(--shadow-md);white-space:nowrap;z-index:var(--z-30);opacity:var(--opacity-100);transition:var(--transition-slider);pointer-events:none}.time-slider__input,.day-slider__input{appearance:none;width:var(--h-3-5);height:var(--size-2-5);transform:rotate(-90deg);transform-origin:center;background-color:transparent;border-radius:var(--radius-sm);cursor:pointer;margin:0}.time-slider__input::-webkit-slider-thumb,.day-slider__input::-webkit-slider-thumb{appearance:none;width:var(--size-5);height:var(--size-3);background:#fff;cursor:grab;border-radius:var(--radius-pill);border:none;box-shadow:var(--shadow-md);position:relative;z-index:var(--z-30)}.time-slider__input:active::-webkit-slider-thumb,.day-slider__input:active::-webkit-slider-thumb{cursor:grabbing}.time-slider__input::-moz-range-thumb,.day-slider__input::-moz-range-thumb{width:var(--size-5);height:var(--size-3);background:#fff;cursor:grab;border-radius:var(--radius-pill);border:none;box-shadow:var(--shadow-md);position:relative;z-index:var(--z-30)}.time-slider__input:active::-moz-range-thumb,.day-slider__input:active::-moz-range-thumb{cursor:grabbing}.time-slider__marker,.day-slider__marker{width:var(--size-2-5);height:var(--size-2-5);border-radius:var(--radius-full);background-color:transparent;cursor:pointer;transition:var(--transition-marker);position:absolute;z-index:var(--z-10);left:calc(var(--w-1-2) - var(--space-2));display:flex;align-items:center;justify-content:center}.time-slider__marker-badge,.day-slider__marker-badge{display:block;opacity:var(--opacity-100);position:absolute;left:var(--w-full);top:var(--w-1-2);transform:translateY(-50%) translate(var(--space-2));background-color:var(--marker-badge-bg);color:var(--marker-badge-text);padding:var(--space-0-5) var(--space-3);border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);white-space:nowrap;box-shadow:var(--shadow-sm);cursor:pointer;transition:var(--transition-marker);user-select:none}.time-slider__marker-badge--hidden,.day-slider__marker-badge--hidden{opacity:var(--opacity-0);pointer-events:none;transition:var(--transition-fade)}.time-slider__marker-badge--minimized,.day-slider__marker-badge--minimized{border-radius:var(--radius-full);font-size:0;color:transparent;width:var(--size-3);height:var(--size-3);padding:0;min-width:var(--size-3);transition:var(--transition-marker)}#time-slider-panel,#day-slider-panel{display:flex;flex-direction:column;align-items:center;width:var(--size-24)}#time-slider-panel{position:absolute;right:calc(-1 * var(--space-12));bottom:22.5dvh;transform:translateY(0);z-index:var(--z-10)}#day-slider-panel{position:absolute;left:calc(-1 * var(--space-12));bottom:22.5dvh;transform:translateY(0);z-index:var(--z-10)}.time-slider__marker-badge{left:0;transform:translateY(calc(-1 * var(--w-1-2))) translate(calc(-100% - var(--space-2)))}.time-slider__badge{left:0;transform:translateY(calc(-1 * var(--w-1-2))) translate(calc(-100% + var(--space-2)))}.day-slider__marker-badge{left:var(--w-full);transform:translateY(calc(-1 * var(--w-1-2))) translate(var(--space-2))}.day-slider__badge{left:var(--w-full);transform:translateY(calc(-1 * var(--w-1-2))) translate(calc(var(--space-2) * -1))}.time-slider__marker-badge:hover,.day-slider__marker-badge:hover{filter:brightness(1.1)}.time-slider__badge--displaced-aside{transform:translateY(calc(-1 * var(--w-1-2))) translate(calc(-1 * var(--space-32)))}.day-slider__badge--displaced-aside{transform:translateY(calc(-1 * var(--w-1-2))) translate(var(--space-16))}.time-slider__marker-badge--displaced-above{transform:translateY(calc(-1 * var(--w-1-2) - var(--space-3))) translate(calc(-100% - var(--space-2)))}.time-slider__marker-badge--displaced-below{transform:translateY(calc(-1 * var(--w-1-2) + var(--space-3))) translate(calc(-100% - var(--space-2)))}.day-slider__marker-badge--displaced-above{transform:translateY(calc(-1 * var(--w-1-2) - var(--space-3))) translate(var(--space-2))}.day-slider__marker-badge--displaced-below{transform:translateY(calc(-1 * var(--w-1-2) + var(--space-3))) translate(var(--space-2))}.time-slider__marker-badge--dismissed{transform:translateY(calc(-1 * var(--w-1-2))) translate(var(--space-20))}.day-slider__marker-badge--dismissed{transform:translateY(calc(-1 * var(--w-1-2))) translate(calc(-1 * var(--space-20)))}@media (min-width: 640px){#time-slider-panel,#day-slider-panel{width:var(--size-24)}}@media all and (display-mode: standalone){#time-slider-panel,#day-slider-panel{bottom:20vh}}.controls-stack{position:absolute;left:var(--space-5);right:var(--space-5);bottom:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.controls-container{display:flex;justify-content:space-between;gap:var(--space-3);width:100%}.controls-button{position:relative;padding:var(--space-3);border-radius:var(--radius-full);box-shadow:var(--shadow-lg);transition:var(--transition-transform);background-color:var(--panel-bg);border:0 solid var(--controls-border);color:var(--controls-text);width:var(--size-12);height:var(--size-12);display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer}.controls-button:hover{transform:scale(var(--scale-hover))}.controls-button:active{transform:scale(var(--scale-active))}.controls-button__icon{width:var(--size-15);height:var(--size-15);position:absolute;transform-origin:center center}.controls-button__label{font-size:var(--text-sm);font-weight:var(--font-weight-bold);margin-top:calc(-1 * var(--space-0-5));text-shadow:var(--shadow-md)}.controls-button__icon--locate-svg{width:var(--size-10);height:var(--size-10);position:absolute;transform-origin:center center}.controls-button__icon--compass-svg{width:var(--size-9);height:var(--size-9);position:absolute;transform-origin:center center}.controls-search-input{position:relative;overflow:hidden;border-radius:var(--radius-pill);box-shadow:var(--shadow-lg);background-color:var(--panel-bg);border:0 solid var(--controls-border);height:var(--size-12);display:flex;align-items:center;padding:0 var(--space-4);gap:var(--space-2-5)}.controls-search-input__field{flex:1;min-width:0;background:transparent;border:none;outline:none;color:var(--controls-text);font-size:var(--text-base);font-family:inherit;padding-right:calc(var(--size-7) + var(--space-4) + var(--space-2))}.controls-search-input__field::placeholder{color:var(--text-secondary)}.controls-search-input__icon{width:var(--size-7);height:var(--size-7);opacity:var(--opacity-70);cursor:pointer;position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);display:block;pointer-events:auto}@media all and (display-mode: standalone){.controls-stack{bottom:calc(env(safe-area-inset-bottom) - var(--space-3))}}pwa-install::part(install-dialog),pwa-install::part(install-dialog fallback),pwa-install::part(install-dialog mobile),pwa-install::part(install-dialog desktop),pwa-install::part(install-dialog apple mobile){border-top-left-radius:var(--radius-ios);border-top-right-radius:var(--radius-ios)}pwa-install::part(install-dialog chrome mobile),pwa-install::part(install-dialog desktop),pwa-install::part(button),pwa-install::part(button primary),pwa-install::part(button secondary),pwa-install::part(button icon) pwa-install::part(img){border-radius:var(--radius-xl)}
