:root{--ds-space-0: #060a13;--ds-space-1: #0a101d;--ds-space-2: #0f172a;--ds-glass: rgba(9, 14, 26, .74);--ds-glass-solid: #0c1322;--ds-glass-strong: rgba(9, 14, 26, .92);--ds-raise: rgba(255, 255, 255, .045);--ds-raise-hover: rgba(255, 255, 255, .085);--ds-raise-press: rgba(255, 255, 255, .13);--ds-line: rgba(255, 255, 255, .085);--ds-line-strong: rgba(255, 255, 255, .16);--ds-ink: #f3f6fb;--ds-ink-2: #b9c5d9;--ds-ink-3: #8a97ae;--ds-accent: #5b9dff;--ds-accent-strong: #3b82f6;--ds-accent-ink: #d4e5ff;--ds-accent-fill: rgba(91, 157, 255, .16);--ds-accent-line: rgba(91, 157, 255, .42);--ds-warm: #f2b84b;--ds-warm-ink: #ffe3a8;--ds-warm-fill: rgba(242, 184, 75, .12);--ds-warm-line: rgba(242, 184, 75, .38);--ds-good: #34d399;--ds-r-xs: 6px;--ds-r-sm: 8px;--ds-r-md: 12px;--ds-r-lg: 16px;--ds-r-xl: 20px;--ds-r-pill: 999px;--ds-highlight: inset 0 1px 0 rgba(255, 255, 255, .07);--ds-shadow-1: 0 1px 2px rgba(0, 0, 0, .4), 0 6px 16px -4px rgba(0, 0, 0, .4);--ds-shadow-2: 0 1px 2px rgba(0, 0, 0, .45), 0 18px 44px -14px rgba(0, 0, 0, .7);--ds-blur: blur(22px) saturate(1.5);--ds-ease: cubic-bezier(.2, .8, .2, 1);--ds-ease-out: cubic-bezier(.16, 1, .3, 1);--ds-spring: cubic-bezier(.34, 1.45, .64, 1);--ds-fast: .14s;--ds-base: .22s;--ds-slow: .36s;--ds-ring: 0 0 0 2px var(--ds-space-1), 0 0 0 4px var(--ds-accent);--ds-font: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI Variable Text", "Segoe UI", Roboto, "Helvetica Neue", "PingFang SC", "Hiragino Sans", "Noto Sans", Arial, sans-serif;--ds-mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--font-family: var(--ds-font);--color-background: var(--ds-space-2);--color-text: var(--ds-ink);--color-text-muted: var(--ds-ink-2);--color-border: rgba(148, 163, 184, .22);--color-primary-light: #7db2ff;--transition-speed: .2s}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;color-scheme:dark}body{font-family:var(--ds-font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"cv11","ss01"}::selection{color:#fff;background:#5b9dff73}.ds-num,time,output,input[type=number],input[type=date],input[type=time]{font-variant-numeric:tabular-nums}[dir=rtl] *,:lang(ar) *,:lang(he) *,:lang(ja) *,:lang(ko) *,:lang(zh) *,:lang(zh-tw) *{letter-spacing:0!important}:where(a,button,input,select,textarea,summary,[tabindex]):focus{outline:none}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--ds-accent);outline-offset:2px}*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.22) transparent}.ds-glass{background:var(--ds-glass);-webkit-backdrop-filter:var(--ds-blur);backdrop-filter:var(--ds-blur);border:1px solid var(--ds-line);box-shadow:var(--ds-highlight),var(--ds-shadow-2)}.ds-kicker{display:inline-flex;align-items:center;gap:.6rem;color:var(--ds-warm);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.ds-kicker:before{content:"";width:1.4rem;height:1px;background:currentColor;opacity:.8}.ds-btn{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:.5rem;padding:0 1.15rem;color:var(--ds-ink);font:600 .9rem/1 var(--ds-font);text-decoration:none;background:var(--ds-raise);border:1px solid var(--ds-line-strong);border-radius:var(--ds-r-md);box-shadow:var(--ds-highlight);cursor:pointer;transition:background-color var(--ds-fast) var(--ds-ease),border-color var(--ds-fast) var(--ds-ease),transform var(--ds-fast) var(--ds-ease),box-shadow var(--ds-base) var(--ds-ease);touch-action:manipulation}.ds-btn:hover{color:var(--ds-ink);background:var(--ds-raise-hover);border-color:#ffffff3d}.ds-btn:active{transform:scale(.975);background:var(--ds-raise-press)}.ds-btn--primary{color:#fff;background:linear-gradient(180deg,#4b8df5,#2f6fe0);border-color:#93c5fd8c;box-shadow:var(--ds-highlight),0 8px 24px -8px #2f6fe0b3}.ds-btn--primary:hover{color:#fff;background:linear-gradient(180deg,#5c9aff,#3a7bf0);border-color:#bfdbfeb3}.ds-btn--warm{color:var(--ds-warm-ink);background:var(--ds-warm-fill);border-color:var(--ds-warm-line)}.ds-btn--warm:hover{color:#fff3d1;background:#f2b84b33;border-color:#f2b84b99}.ds-card{background:linear-gradient(180deg,#ffffff0b,#ffffff05);border:1px solid var(--ds-line);border-radius:var(--ds-r-lg);box-shadow:var(--ds-highlight)}.ds-field{min-height:42px;padding:0 .9rem;color:var(--ds-ink);font:500 .92rem/1.2 var(--ds-font);background:var(--ds-raise);border:1px solid var(--ds-line-strong);border-radius:var(--ds-r-md);transition:border-color var(--ds-fast) var(--ds-ease),background-color var(--ds-fast) var(--ds-ease),box-shadow var(--ds-base) var(--ds-ease)}.ds-field:hover{border-color:#ffffff42}.ds-field:focus-visible{outline:none;border-color:var(--ds-accent);box-shadow:0 0 0 3px #5b9dff40}@keyframes ds-pop-in{0%{opacity:0;transform:translateY(6px) scale(.965)}to{opacity:1;transform:none}}@keyframes ds-fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@supports (animation-timeline: view()){.ds-reveal{animation:ds-fade-up linear both;animation-timeline:view();animation-range:entry 0% entry 35%}}.ds-page{position:relative;min-height:100vh;color:var(--ds-ink-2);background:radial-gradient(52rem 30rem at 8% -4%,rgba(91,157,255,.14),transparent 70%),radial-gradient(40rem 26rem at 92% 10%,rgba(242,184,75,.07),transparent 70%),var(--ds-space-2)}.ds-page:before{position:fixed;inset:0;z-index:0;pointer-events:none;content:"";opacity:.2;background-image:radial-gradient(rgba(255,255,255,.3) .6px,transparent .6px);background-size:38px 38px;-webkit-mask-image:linear-gradient(to bottom,black,transparent 55%);mask-image:linear-gradient(to bottom,black,transparent 55%)}.ds-page>main{position:relative;z-index:1}#site-header{height:60px;padding-block:0;background:linear-gradient(180deg,#060a13e0,#060a13a8);-webkit-backdrop-filter:var(--ds-blur);backdrop-filter:var(--ds-blur);border-bottom:1px solid var(--ds-line);box-shadow:0 1px #00000059}#site-header.scrolled{background:linear-gradient(180deg,#060a13f0,#060a13d1);box-shadow:0 8px 24px -12px #0009}#site-header.menu-open{background:#060a13fa}#language-menu{right:0;left:auto;margin-top:10px;background:#090e1afb;border:1px solid var(--ds-line);border-radius:var(--ds-r-lg);box-shadow:var(--ds-highlight),var(--ds-shadow-2);transform:translateY(-6px) scale(.97);transform-origin:top right;transition:opacity var(--ds-fast) var(--ds-ease),transform var(--ds-slow) var(--ds-ease-out),visibility 0s linear var(--ds-slow)}[dir=rtl] #language-menu{right:auto;left:0;transform-origin:top left}#language-menu.opacity-100{transform:none;transition-delay:0s}#language-menu>div:first-child{padding:10px;border-color:var(--ds-line)}#language-search{height:38px;color:var(--ds-ink);background:#ffffff0d;border:1px solid var(--ds-line-strong);border-radius:var(--ds-r-sm)}#language-search:focus{transform:none;border-color:var(--ds-accent);box-shadow:0 0 0 3px #5b9dff38}#language-list{padding:6px}#language-menu .language-item{min-height:40px;padding:8px 10px!important;color:var(--ds-ink);font-size:13.5px;border-radius:var(--ds-r-sm);transition:background-color var(--ds-fast) var(--ds-ease)}#language-menu .language-item:hover{transform:none;background:var(--ds-raise-hover)}#language-menu .language-item[aria-current=page]{color:var(--ds-accent-ink);font-weight:600;background:var(--ds-accent-fill)}.header-app-download-popover{background:#090e1afb;border:1px solid var(--ds-line);border-radius:var(--ds-r-lg);box-shadow:var(--ds-highlight),var(--ds-shadow-2);animation:ds-pop-in var(--ds-slow) var(--ds-ease-out) both;transform-origin:top right}.map-quick-control,#search-spots-btn,#sky-photo-btn,#aurora-toggle-btn,#clearsky-toggle-btn,#open-lunar-modal,#open-exposure-calculator{--tool-accent: var(--ds-accent);color:var(--ds-ink);background:#090e1ad6;-webkit-backdrop-filter:var(--ds-blur);backdrop-filter:var(--ds-blur);border:1px solid var(--ds-line);border-radius:var(--ds-r-md);box-shadow:var(--ds-highlight),var(--ds-shadow-1);transition:background-color var(--ds-fast) var(--ds-ease),border-color var(--ds-fast) var(--ds-ease),color var(--ds-fast) var(--ds-ease),transform var(--ds-base) var(--ds-spring),box-shadow var(--ds-base) var(--ds-ease),opacity var(--ds-base) var(--ds-ease)}#search-spots-btn{--tool-accent: #a78bfa}#sky-photo-btn,#aurora-toggle-btn{--tool-accent: var(--ds-good)}#clearsky-toggle-btn{--tool-accent: var(--ds-warm)}#open-lunar-modal{--tool-accent: #ffd75e}.map-quick-control:hover,#search-spots-btn:hover,#sky-photo-btn:hover,#aurora-toggle-btn:hover,#clearsky-toggle-btn:hover,#open-lunar-modal:hover,#open-exposure-calculator:hover{color:#fff;background:#182238db;border-color:color-mix(in srgb,var(--tool-accent) 55%,transparent);box-shadow:var(--ds-highlight),0 0 0 3px color-mix(in srgb,var(--tool-accent) 14%,transparent),var(--ds-shadow-1);transform:translateY(-1px)}.map-quick-control:active,#search-spots-btn:active,#sky-photo-btn:active,#aurora-toggle-btn:active,#clearsky-toggle-btn:active,#open-lunar-modal:active,#open-exposure-calculator:active{transform:translateY(0) scale(.94);transition-duration:60ms}.map-quick-control:focus-visible,#search-spots-btn:focus-visible,#sky-photo-btn:focus-visible,#aurora-toggle-btn:focus-visible,#clearsky-toggle-btn:focus-visible,#open-lunar-modal:focus-visible,#open-exposure-calculator:focus-visible{outline:2px solid var(--tool-accent);outline-offset:2px}.map-quick-control.is-active,.map-quick-control[aria-pressed=true],#clearsky-toggle-btn.is-active,#aurora-toggle-btn.is-active,#search-spots-btn.is-active{color:var(--ds-accent-ink);background:linear-gradient(180deg,#3a74d68c,#2654a88c);border-color:var(--ds-accent-line);box-shadow:var(--ds-highlight),0 0 0 3px #5b9dff24,0 10px 24px -10px #2f6fe0b3}#open-controls-panel>div[aria-hidden=true]{animation:none;width:8px;height:8px;top:5px;right:5px;border:0!important;box-shadow:0 0 0 3px #34d3992e}.desktop-map-tools__toggle{color:var(--ds-ink-3);background:var(--ds-glass);-webkit-backdrop-filter:var(--ds-blur);backdrop-filter:var(--ds-blur);border:1px solid var(--ds-line);border-radius:var(--ds-r-sm);box-shadow:var(--ds-highlight),var(--ds-shadow-1)}.desktop-map-tools__toggle:hover,.mobile-map-tools[data-desktop-expanded=true] .desktop-map-tools__toggle{color:var(--ds-accent-ink);background:#182238db;border-color:var(--ds-accent-line)}@media (max-width: 768px){.mobile-map-tools__toggle{color:var(--ds-ink-2);background:var(--ds-glass);-webkit-backdrop-filter:var(--ds-blur);backdrop-filter:var(--ds-blur);border:1px solid var(--ds-line);border-radius:var(--ds-r-sm);box-shadow:var(--ds-highlight),var(--ds-shadow-1)}}#location-details,#controls-panel,#lunar-panel,#search-modal .search-modal-content,#map-legend{background:var(--ds-glass-strong);-webkit-backdrop-filter:var(--ds-blur);backdrop-filter:var(--ds-blur);border:1px solid var(--ds-line);border-radius:var(--ds-r-lg);box-shadow:var(--ds-highlight),var(--ds-shadow-2)}#map-legend{background:var(--ds-glass);border-radius:var(--ds-r-md)}#location-details .details-header,#controls-panel>div:first-of-type,#search-modal .search-modal-content>div:first-child{background:linear-gradient(180deg,#ffffff0e,#ffffff04);border-bottom:1px solid var(--ds-line)}#location-details .detail-title,#controls-panel #panel-title,#search-modal h2{font-size:1.05rem;font-weight:650;letter-spacing:-.012em;color:var(--ds-ink)}#close-details,#close-controls-panel,#close-search-modal{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;padding:0;color:var(--ds-ink-2);font-size:0;line-height:0;background:var(--ds-raise);border:1px solid transparent;border-radius:var(--ds-r-pill);transition:background-color var(--ds-fast) var(--ds-ease),color var(--ds-fast) var(--ds-ease),transform var(--ds-base) var(--ds-spring)}#close-details:hover,#close-controls-panel:hover,#close-search-modal:hover{color:#fff;background:var(--ds-raise-press)}#close-details:active,#close-controls-panel:active,#close-search-modal:active{transform:scale(.9)}#close-details:before,#close-controls-panel:before,#close-search-modal:before{content:"";width:14px;height:14px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='m6 6 12 12M18 6 6 18'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='m6 6 12 12M18 6 6 18'/%3E%3C/svg%3E") center / contain no-repeat}#close-details>*,#close-controls-panel>*,#close-search-modal>*{display:none}#controls-panel .control-section{padding:14px 16px;border-color:var(--ds-line)}#controls-panel .control-section h3,#controls-panel h3,#controls-panel strong[id$=-label]{color:var(--ds-ink-3);font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}#controls-panel select,#controls-panel .control-select{color:var(--ds-ink);background-color:#ffffff0d;border:1px solid var(--ds-line-strong);border-radius:var(--ds-r-sm);transition:border-color var(--ds-fast) var(--ds-ease),background-color var(--ds-fast) var(--ds-ease)}#controls-panel select:hover{border-color:#ffffff47}#controls-panel .light-pollution-style-card{background:#ffffff09;border-color:var(--ds-line);border-radius:var(--ds-r-sm);transition:border-color var(--ds-fast) var(--ds-ease),background-color var(--ds-fast) var(--ds-ease),transform var(--ds-base) var(--ds-spring)}#controls-panel .light-pollution-style-card:hover{transform:translateY(-1px);background:#ffffff12}#controls-panel .light-pollution-style-card:has(input:checked){border-color:var(--ds-accent);background:var(--ds-accent-fill);box-shadow:0 0 0 3px #5b9dff24}#controls-panel label>div>span[class*=rounded-],.dark-sky-nav-toggle label span[class*=rounded-]{background:#ffffff29;box-shadow:inset 0 0 0 1px #ffffff0f;transition:background-color var(--ds-base) var(--ds-ease)}#controls-panel input:checked+span[class*=rounded-]{background:var(--ds-accent-strong)}#controls-panel input:checked+span[class*=rounded-]:before{transition:transform var(--ds-base) var(--ds-spring);box-shadow:0 1px 3px #0006}.slider{border-radius:999px}.slider::-webkit-slider-thumb{width:18px;height:18px;background:#fff;border:0;box-shadow:0 0 0 4px #5b9dff4d,0 2px 6px #00000073;transition:box-shadow var(--ds-base) var(--ds-ease),transform var(--ds-base) var(--ds-spring)}.slider:active::-webkit-slider-thumb{transform:scale(1.12);box-shadow:0 0 0 7px #5b9dff47,0 2px 6px #00000073}.slider::-moz-range-thumb{width:18px;height:18px;background:#fff;border:0;box-shadow:0 0 0 4px #5b9dff4d,0 2px 6px #00000073}#search-modal{background:#03060c8c;-webkit-backdrop-filter:blur(10px) saturate(1.2);backdrop-filter:blur(10px) saturate(1.2)}#search-modal .search-modal-content{animation:ds-pop-in var(--ds-slow) var(--ds-ease-out) both}#search-input{height:48px;color:var(--ds-ink);font-size:1rem;background:#ffffff0d;border:1px solid var(--ds-line-strong);border-radius:var(--ds-r-md)}#search-input::placeholder{color:var(--ds-ink-3)}#search-input:focus{border-color:var(--ds-accent);background:#5b9dff0f;box-shadow:0 0 0 3px #5b9dff38}#search-button{width:48px;height:48px;background:linear-gradient(180deg,#4b8df5,#2f6fe0);border:1px solid rgba(147,197,253,.45);border-radius:var(--ds-r-md);box-shadow:var(--ds-highlight),0 8px 20px -8px #2f6fe0bf}#search-button:hover{transform:none;background:linear-gradient(180deg,#5c9aff,#3a7bf0)}#search-button:active{transform:scale(.94)}#map-legend{border-radius:var(--ds-r-md);transition:transform var(--ds-base) var(--ds-ease),opacity var(--ds-base) var(--ds-ease)}#map-legend .legend-title{color:var(--ds-ink-2);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}#map-legend #light-pollution-legend-bar{height:10px;border-radius:var(--ds-r-pill);box-shadow:inset 0 0 0 1px #ffffff24}.legend-scale-tick{font-variant-numeric:tabular-nums;font-weight:600}.leaflet-control-attribution{color:var(--ds-ink-3)!important;background:#060a138c!important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--ds-r-xs) 0 0 0!important;font-size:10.5px!important}.leaflet-control-attribution a{color:var(--ds-ink-2)!important}.leaflet-bar{border:1px solid var(--ds-line)!important;border-radius:var(--ds-r-md)!important;overflow:hidden;box-shadow:var(--ds-highlight),var(--ds-shadow-1)!important}.leaflet-bar a{color:var(--ds-ink)!important;background:var(--ds-glass-strong)!important;border-bottom:1px solid var(--ds-line)!important;transition:background-color var(--ds-fast) var(--ds-ease)}.leaflet-bar a:hover{background:#1e2a44f2!important}.leaflet-bar a:last-child{border-bottom:0!important}.leaflet-popup-content-wrapper{background:var(--ds-glass-strong)!important;border:1px solid var(--ds-line);border-radius:var(--ds-r-md)!important;box-shadow:var(--ds-highlight),var(--ds-shadow-2)!important}.leaflet-popup-tip{background:var(--ds-glass-solid)!important}#exposure-calculator-panel,#lunar-panel{z-index:1200}body:has(#exposure-calculator-panel:not([hidden])) #open-lunar-modal{opacity:0;pointer-events:none}#info-panel,#exposure-calculator-panel,#clearsky-panel,#sky-photo-modal>div,#search-spots-dialog>div:nth-child(2){background:var(--ds-glass-strong);-webkit-backdrop-filter:var(--ds-blur);backdrop-filter:var(--ds-blur);border:1px solid var(--ds-line);border-radius:var(--ds-r-lg);box-shadow:var(--ds-highlight),var(--ds-shadow-2)}#lunar-panel>div:first-child,#info-panel>div:first-child,#sky-photo-modal>div>div:first-child,#search-spots-dialog>div:nth-child(2)>div:first-child{background:linear-gradient(180deg,#ffffff0e,#ffffff04);border-bottom:1px solid var(--ds-line)}#lunar-panel h2,#info-panel h2,#sky-photo-title,#search-spots-title{font-weight:650;letter-spacing:-.012em}#lunar-panel .border-t,#lunar-panel .border-b{border-color:var(--ds-line)}#close-lunar-panel,#close-info,#close-search-spots,#close-sky-photo-modal{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;padding:0;color:var(--ds-ink-2);font-size:0;line-height:0;background:var(--ds-raise);border:1px solid transparent;border-radius:var(--ds-r-pill);transition:background-color var(--ds-fast) var(--ds-ease),color var(--ds-fast) var(--ds-ease),transform var(--ds-base) var(--ds-spring)}#close-lunar-panel:hover,#close-info:hover,#close-search-spots:hover,#close-sky-photo-modal:hover{color:#fff;background:var(--ds-raise-press)}#close-lunar-panel:active,#close-info:active,#close-search-spots:active,#close-sky-photo-modal:active{transform:scale(.9)}#close-lunar-panel>span,#close-info>span,#close-search-spots>span,#close-sky-photo-modal>span{display:none}#close-lunar-panel:before,#close-info:before,#close-search-spots:before,#close-sky-photo-modal:before{content:"";width:14px;height:14px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='m6 6 12 12M18 6 6 18'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='m6 6 12 12M18 6 6 18'/%3E%3C/svg%3E") center / contain no-repeat}#info-panel{border-radius:var(--ds-r-lg) 0 0 var(--ds-r-lg);border-width:0 0 0 1px}[dir=rtl] #info-panel{border-radius:0 var(--ds-r-lg) var(--ds-r-lg) 0;border-width:0 1px 0 0}#info-panel>aside{background:#ffffff08;border-color:var(--ds-line)}#loading-indicator>div{background:var(--ds-glass-strong);-webkit-backdrop-filter:var(--ds-blur);backdrop-filter:var(--ds-blur);border:1px solid var(--ds-line);border-radius:var(--ds-r-lg);box-shadow:var(--ds-highlight),var(--ds-shadow-2)}#search-spots-backdrop,#sky-photo-modal{background:#03060c8c;-webkit-backdrop-filter:blur(10px) saturate(1.2);backdrop-filter:blur(10px) saturate(1.2)}#search-spots-dialog:not(.hidden)>div:nth-child(2),#sky-photo-modal.opacity-100>div{animation:ds-pop-in var(--ds-slow) var(--ds-ease-out) both}.map-layer-toast,.map-status-message{color:var(--ds-ink);background:var(--ds-glass-strong);-webkit-backdrop-filter:var(--ds-blur);backdrop-filter:var(--ds-blur);border:1px solid var(--ds-line);border-radius:var(--ds-r-pill);box-shadow:var(--ds-highlight),var(--ds-shadow-1)}#location-details .mini-details[data-trend]{border-left-width:0;--trend: rgba(148, 163, 184, .55);box-shadow:inset 3px 0 0 var(--trend)}#location-details .mini-details[data-trend=↑]{--trend: rgba(248, 113, 113, .9)}#location-details .mini-details[data-trend=↓]{--trend: rgba(52, 211, 153, .9)}.skyglow-floating-preview{border:1px solid var(--ds-line);border-radius:var(--ds-r-md);box-shadow:var(--ds-highlight),var(--ds-shadow-2)}@media (hover: hover) and (pointer: fine){[data-tip]:after{content:attr(data-tip);position:absolute;top:calc(100% + 8px);inset-inline-end:0;z-index:5;padding:6px 10px;color:var(--ds-ink);font:500 12px/1.3 var(--ds-font);white-space:nowrap;background:var(--ds-glass-strong);border:1px solid var(--ds-line-strong);border-radius:var(--ds-r-sm);box-shadow:var(--ds-shadow-1);opacity:0;transform:translateY(-3px);pointer-events:none;transition:opacity var(--ds-fast) var(--ds-ease),transform var(--ds-base) var(--ds-ease-out)}[data-tip]:is(:hover,:focus-visible):after{opacity:1;transform:none;transition-delay:.38s}[data-tip]:active:after{opacity:0}}.share-modal{background:#03060c8c;-webkit-backdrop-filter:blur(10px) saturate(1.2);backdrop-filter:blur(10px) saturate(1.2)}.share-modal>div{color:var(--ds-ink-2);background:var(--ds-glass-strong);border:1px solid var(--ds-line);border-radius:var(--ds-r-xl);box-shadow:var(--ds-highlight),var(--ds-shadow-2)}.share-modal>div>div:first-child{background:linear-gradient(180deg,#ffffff0e,#ffffff04);border-color:var(--ds-line)}.share-modal h3,.share-modal h4,.share-modal label,.share-modal [class*=text-gray-8],.share-modal [class*=text-gray-9],.share-modal [class*=text-gray-7]{color:var(--ds-ink)}.share-modal p,.share-modal [class*=text-gray-6],.share-modal [class*=text-gray-5],.share-modal [class*=text-gray-4]{color:var(--ds-ink-2)}.share-modal [class*=text-blue-]{color:var(--ds-accent-ink)}.share-modal>div>div:nth-child(2)>div>div:first-child{background:var(--ds-accent-fill);border:1px solid rgba(91,157,255,.24)}.share-close-btn{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;padding:0!important;color:var(--ds-ink-2)!important;background:var(--ds-raise)!important;border-radius:var(--ds-r-pill);transition:background-color var(--ds-fast) var(--ds-ease),transform var(--ds-base) var(--ds-spring)}.share-close-btn:hover{color:#fff!important;background:var(--ds-raise-press)!important}.share-close-btn:active{transform:scale(.9)}.share-close-btn svg{width:16px;height:16px}.share-option,.embed-type-card,.embed-size-btn{color:var(--ds-ink);background:var(--ds-raise);border:1px solid var(--ds-line);box-shadow:var(--ds-highlight);transition:background-color var(--ds-fast) var(--ds-ease),border-color var(--ds-fast) var(--ds-ease),transform var(--ds-base) var(--ds-spring)}.share-option:hover,.embed-type-card:hover,.embed-size-btn:hover{background:var(--ds-raise-hover);border-color:var(--ds-line-strong);box-shadow:var(--ds-highlight)}.share-option:active,.embed-size-btn:active{transform:scale(.96)}.embed-type-card.bg-blue-50,.embed-size-btn.bg-blue-50{background:var(--ds-accent-fill);border-color:var(--ds-accent-line);box-shadow:0 0 0 3px #5b9dff24}.share-option span,.embed-size-btn{font-weight:500}.share-option svg:not([fill]){fill:currentColor}.share-modal input[type=text],.share-modal input[type=number],.share-modal textarea{color:var(--ds-ink);background:#ffffff0d;border:1px solid var(--ds-line-strong);border-radius:var(--ds-r-md)}.share-modal input:focus-visible,.share-modal textarea:focus-visible{outline:none;border-color:var(--ds-accent);box-shadow:0 0 0 3px #5b9dff38}.share-url-input{padding-inline-end:3rem!important;text-overflow:ellipsis}#embed-code{padding-inline-end:6.5rem!important}.copy-url-btn{color:var(--ds-ink-2)!important;border-radius:var(--ds-r-sm)}.copy-url-btn:hover{color:#fff!important;background:var(--ds-raise-press)!important}.embed-copy-btn{color:#fff;font-weight:600;background:linear-gradient(180deg,#4b8df5,#2f6fe0)!important;border:1px solid rgba(147,197,253,.45);border-radius:var(--ds-r-sm)!important}.share-success-message,.embed-success-message{color:#a7f3d0!important;background:#34d39924!important;border:1px solid rgba(52,211,153,.3);border-radius:var(--ds-r-md)!important}@media (max-width: 768px){#map-container:after{position:absolute;inset:auto 0 0;z-index:890;height:calc(var(--dock-h, 34px) + 44px);content:"";pointer-events:none;background:linear-gradient(to top,rgba(6,10,19,.62),rgba(6,10,19,.28) 55%,transparent)}html.app-cloud-mode #map-container:after{display:none}#quick-satellite-cloud,.mobile-app-download{border-radius:50%}.skyglow-floating-preview{box-shadow:var(--ds-highlight),0 12px 30px -10px #000000b3}body.map-controls-open .skyglow-floating-preview{opacity:0;pointer-events:none}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}@media (hover: none){.map-quick-control:hover,#search-spots-btn:hover,#sky-photo-btn:hover,#aurora-toggle-btn:hover,#clearsky-toggle-btn:hover,#open-lunar-modal:hover,#open-exposure-calculator:hover{transform:none}}@media (max-width: 480px){.xs\:grid-cols-2[data-astro-cid-qan2qojn]{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.share-option[data-astro-cid-qan2qojn]{padding:.75rem .5rem}.share-option[data-astro-cid-qan2qojn] svg[data-astro-cid-qan2qojn]{width:20px;height:20px;margin-bottom:.25rem}.share-option[data-astro-cid-qan2qojn][data-platform=bluesky] svg[data-astro-cid-qan2qojn]{width:20px;height:auto}.share-option[data-astro-cid-qan2qojn] span[data-astro-cid-qan2qojn]{font-size:.75rem;margin-top:.125rem}}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-fadeIn[data-astro-cid-qan2qojn]{animation:fadeIn .2s ease-out forwards}.embed-type-card[data-astro-cid-qan2qojn]{transition:all .2s ease}.embed-type-card[data-astro-cid-qan2qojn]:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.embed-size-btn[data-astro-cid-qan2qojn]{transition:all .2s ease}.embed-size-btn[data-astro-cid-qan2qojn]:hover{transform:translateY(-1px)}.embed-copy-btn[data-astro-cid-qan2qojn]{transition:all .2s ease}.embed-copy-btn[data-astro-cid-qan2qojn]:hover{transform:translateY(-1px);box-shadow:0 2px 8px #3b82f64d}.language-banner-show[data-astro-cid-b7nfvupg]{transform:translateY(0)!important;opacity:1!important}.language-banner-hide[data-astro-cid-b7nfvupg]{transform:translateY(calc(100% + 2rem))!important;opacity:0!important}@media (max-width: 640px){#language-detection-banner[data-astro-cid-b7nfvupg]{bottom:4rem;right:1rem;left:1rem;max-width:none}}@media (max-width: 480px){#language-detection-banner[data-astro-cid-b7nfvupg] .bg-slate-800\/95[data-astro-cid-b7nfvupg]{padding:1rem}#language-detection-banner[data-astro-cid-b7nfvupg] h3[data-astro-cid-b7nfvupg]{font-size:.875rem}#language-detection-banner[data-astro-cid-b7nfvupg] p[data-astro-cid-b7nfvupg]{font-size:.8125rem}#language-detection-banner[data-astro-cid-b7nfvupg] button[data-astro-cid-b7nfvupg]{padding:.625rem .75rem;font-size:.8125rem}}:root{font-display:swap;--color-primary: #3b82f6;--color-primary-light: #60a5fa;--color-primary-dark: #2563eb;--color-secondary: #4b5563;--color-accent: #f59e0b;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-background: #0f172a;--color-surface: #1e293b;--color-text: #f8fafc;--color-text-muted: #bfcce6;--color-border: #334155;--space-1: 4px;--space-2: 8px;--space-3: 16px;--space-4: 24px;--space-5: 32px;--space-6: 48px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--transition-speed: .2s}html,body{margin:0;padding:0;width:100%;height:100%;font-family:var(--font-family);background-color:var(--color-background);color:var(--color-text);line-height:1.5}*{box-sizing:border-box}h1,h2,h3,h4,h5,h6{margin-top:0;line-height:1.2}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-speed) ease}a:hover{color:var(--color-primary-light)}button{cursor:pointer;font-family:var(--font-family)}.leaflet-container{font:inherit}.leaflet-popup-content-wrapper{background-color:var(--color-surface);color:var(--color-text);border-radius:var(--radius-md)}.leaflet-popup-tip{background-color:var(--color-surface)}.leaflet-control{border-radius:var(--radius-md)!important}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border-color:var(--color-border)}html.app-cloud-mode #site-header,html.app-cloud-mode #language-detection-banner,html.app-cloud-mode #mobile-app-download{display:none!important}html.app-cloud-mode,html.app-cloud-mode body{width:100%;height:100%;overflow:hidden;background:#060a12}html.app-cloud-mode .map-container{height:100dvh!important}html.app-cloud-mode #open-search-modal,html.app-cloud-mode #quick-satellite-cloud,html.app-cloud-mode #open-controls-panel,html.app-cloud-mode #quick-light-pollution,html.app-cloud-mode #controls-panel,html.app-cloud-mode #location-details,html.app-cloud-mode #skyglow-floating-preview,html.app-cloud-mode #mobile-map-tools,html.app-cloud-mode #map-legend,html.app-cloud-mode #map-layer-toast,html.app-cloud-mode #loading-indicator,html.app-cloud-mode .dark-sky-nav-toggle,html.app-cloud-mode .map-status-message,html.app-cloud-mode .leaflet-control-scale,html.app-cloud-mode .leaflet-marker-pane,html.app-cloud-mode .leaflet-tooltip-pane{display:none!important}html.app-cloud-mode #map-container:before{display:none!important}#map[data-astro-cid-sckkx6r4]{height:100%;width:100%}.leaflet-tile[data-astro-cid-sckkx6r4]{will-change:transform;contain:content}
