:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}#root{min-height:100vh}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}input,textarea{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}html,body{touch-action:pan-x pan-y}:root{--primary-color: #2563eb;--primary-dark: #1d4ed8;--bg-color: #f8fafc;--card-bg: #ffffff;--text-primary: #1e293b;--text-secondary: #64748b;--border-color: #e2e8f0;--confidence-high: #3b82f6;--confidence-mid-high: #22c55e;--confidence-mid-low: #f59e0b;--confidence-low: #ef4444;--shadow: 0 1px 3px rgba(0, 0, 0, .1);--shadow-lg: 0 4px 6px rgba(0, 0, 0, .1);--header-bg: linear-gradient(135deg, var(--primary-color) 0%, var(--primary-dark) 100%);--glass-bg: transparent;--glass-border: transparent;--glow: none}body{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;background-color:var(--bg-color);color:var(--text-primary);line-height:1.5;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{min-height:100vh;max-width:430px;margin:0 auto;display:flex;flex-direction:column;background:var(--bg-color);position:relative}@media(min-width:480px){body{background:#0a0a0f}.app{min-height:100vh;box-shadow:0 0 60px #00000080}}.app-header{background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-dark) 100%);color:#fff;padding:1.5rem;text-align:center}.app-header h1{font-size:1.5rem;font-weight:600;margin-bottom:.25rem;letter-spacing:-.02em}.app-header .subtitle{font-size:.8125rem;font-weight:400;opacity:.85;letter-spacing:.01em}.app-main{flex:1;width:100%;padding:1rem 0;overflow-y:auto;-webkit-overflow-scrolling:touch}.location-search{position:relative;margin-bottom:1.5rem}.search-input-wrapper{position:relative}.search-input{width:100%;padding:.875rem 1rem;font-family:inherit;font-size:.9375rem;font-weight:400;border:2px solid var(--border-color);border-radius:12px;background:var(--card-bg);transition:border-color .2s,box-shadow .2s}.search-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a}.search-loading{position:absolute;right:1rem;top:50%;transform:translateY(-50%);color:var(--text-secondary)}.search-results{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 8px 32px #0003;list-style:none;max-height:300px;overflow-y:auto;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.search-results-inline{position:absolute;top:100%;left:0;right:0;margin-top:8px;z-index:1000}.search-results li{padding:.75rem 1rem;cursor:pointer;border-bottom:1px solid var(--border-color);display:flex;flex-direction:column}.search-results li:last-child{border-bottom:none}.search-results li:hover,.search-results li.selected{background-color:var(--bg-color)}.search-results li.selected{background-color:#e0e7ff}.search-no-results{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:1rem;text-align:center;font-size:.875rem;font-weight:500;color:var(--text-secondary);box-shadow:0 8px 32px #0003}.search-no-results-inline{position:absolute;top:100%;left:0;right:0;margin-top:8px;z-index:1000;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.result-name{font-size:.9375rem;font-weight:600;letter-spacing:-.01em}.result-details{font-size:.8125rem;font-weight:400;color:var(--text-secondary)}.loading-state,.error-state,.empty-state{text-align:center;padding:3rem 1.5rem;font-size:.9375rem;font-weight:500;color:var(--text-secondary)}.error-state{color:var(--confidence-low);background:#fef2f2;border-radius:12px;font-weight:500}.current-section{display:flex;flex-direction:column;align-items:center;overflow:visible;padding:1.5rem 20px 1rem;margin-bottom:1rem}.hero-weather{text-align:center;overflow:visible}.hero-main{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1.25rem;animation:fadeInUp .6s ease-out;overflow:visible}.hero-temp-group{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;overflow:visible}.hero-temp-row{display:flex;align-items:center;justify-content:center;gap:.5rem;overflow:visible}.hero-icon{font-size:4rem;animation:float 3s ease-in-out infinite;filter:drop-shadow(0 4px 8px rgba(0,0,0,.1));margin-top:.75rem}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.hero-temp{display:flex;align-items:flex-start;overflow:visible}.hero-temp-value{font-size:6rem;font-weight:100;line-height:1;letter-spacing:-.04em;background:linear-gradient(135deg,var(--text-primary) 0%,var(--text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;overflow:visible;padding-right:.1em}.hero-temp-unit{font-size:2.5rem;font-weight:200;color:var(--text-secondary);margin-top:.15em;margin-left:-.1em;line-height:1;align-self:flex-start}.hero-feels-like{font-size:.9375rem;font-weight:400;color:var(--text-secondary)}.hero-info{animation:fadeIn .8s ease-out .2s both}.hero-location{font-size:1.5rem;font-weight:600;margin-bottom:.25rem;letter-spacing:-.02em}.hero-condition{font-size:1.125rem;font-weight:400;color:var(--text-secondary);margin-bottom:.25rem}.hero-precip-info{font-size:.875rem;color:var(--text-secondary);opacity:.8}.hero-time{font-size:.75rem;font-weight:500;color:var(--text-secondary);opacity:.7;text-transform:uppercase;letter-spacing:.05em}.hero-metrics-section{margin-bottom:1.5rem}.hero-metrics{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap}.metric{display:flex;flex-direction:column;align-items:center;gap:.5rem;animation:fadeInUp .5s ease-out both}.metric-ring{position:relative;width:72px;height:72px;display:flex;align-items:center;justify-content:center}.metric-svg{position:absolute;width:100%;height:100%;transform:rotate(-90deg)}.metric-bg{fill:none;stroke:var(--border-color);stroke-width:3}.metric-fill{fill:none;stroke-width:3;stroke-linecap:round;transition:stroke-dasharray 1s ease-out}.metric-fill-temp{stroke:#ff9500}.metric-fill-humidity{stroke:#5ac8fa}.metric-fill-wind{stroke:#34c759}.metric-fill-precip{stroke:#af52de}.metric-value{font-size:1.125rem;font-weight:600;letter-spacing:-.02em;z-index:1}.metric-label{font-size:.6875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em}.wind-ring{position:relative}.wind-arrow{position:absolute;top:2px;left:50%;transform-origin:center center;font-size:.75rem;color:#34c759;margin-left:-.375rem;transition:transform .3s ease-out}@media(max-width:640px){.hero-temp-value{font-size:4.5rem}.hero-icon{font-size:3rem}.hero-metrics{gap:1rem}.metric-ring{width:64px;height:64px}.metric-value{font-size:1rem}}.accuracy-badge{display:inline-flex;align-items:center;justify-content:center;align-self:center;gap:.5rem;padding:.5rem 1rem;margin-top:.75rem;border-radius:20px;font-size:.75rem;font-weight:500;animation:fadeIn .6s ease-out .5s both;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.2);transition:transform .2s ease,box-shadow .2s ease}.accuracy-badge:active{transform:scale(.97)}.accuracy-collecting{background:#f1f5f9;color:var(--text-secondary)}.accuracy-high{background:#3b82f6d9;color:#fff;box-shadow:0 2px 8px #3b82f64d}.accuracy-mid-high{background:#22c55ed9;color:#fff;box-shadow:0 2px 8px #22c55e4d}.accuracy-mid-low{background:#f59e0bd9;color:#fff;box-shadow:0 2px 8px #f59e0b4d}.accuracy-low{background:#ef4444d9;color:#fff;box-shadow:0 2px 8px #ef44444d}.badge-samples{font-size:.6875rem;font-weight:400;opacity:.7}.badge-refresh{display:flex;align-items:center;justify-content:center;background:transparent;border:none;padding:.25rem;margin-left:.25rem;cursor:pointer;opacity:.7;transition:opacity .2s,transform .2s;color:inherit}.badge-refresh:hover{opacity:1}.badge-refresh:active{transform:rotate(180deg)}.forecast-section{background:var(--card-bg);border-radius:16px;padding:1.25rem;box-shadow:var(--shadow);margin:8px 20px 20px}.hourly-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.hourly-header h3{margin-bottom:0}.hour-toggle{display:flex;gap:.25rem;background:var(--bg-color);padding:.25rem;border-radius:8px}.toggle-btn{padding:.375rem .75rem;border:none;background:transparent;border-radius:6px;font-size:.6875rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .2s;letter-spacing:.01em}.toggle-btn:hover{color:var(--text-primary)}.toggle-btn.active{background:var(--card-bg);color:var(--primary-color);box-shadow:var(--shadow)}.hourly-scroll-wrapper{position:relative;margin-left:-1.25rem;margin-right:-1.25rem}.hourly-scroll-wrapper:after{content:"";position:absolute;top:0;right:0;bottom:0;width:50px;background:linear-gradient(to right,transparent,var(--card-bg));pointer-events:none;opacity:1;transition:opacity .3s ease;border-radius:0 16px 16px 0}.hourly-scroll-wrapper.scrolled-end:after{opacity:0}.hourly-scroll-wrapper:before{content:"";position:absolute;top:0;left:0;bottom:0;width:50px;background:linear-gradient(to left,transparent,var(--card-bg));pointer-events:none;opacity:0;transition:opacity .3s ease;z-index:1;border-radius:16px 0 0 16px}.hourly-scroll-wrapper.scrolled-start:before{opacity:1}.scroll-hint{display:flex;align-items:center;justify-content:center;gap:.375rem;margin-top:.5rem;font-size:.6875rem;font-weight:500;color:var(--text-secondary);opacity:.6}.scroll-hint-arrow{animation:scrollHintBounce 1.5s ease-in-out infinite}@keyframes scrollHintBounce{0%,to{transform:translate(0)}50%{transform:translate(4px)}}.hourly-scroll{display:flex;gap:.75rem;overflow-x:auto;padding:.5rem 1.25rem .75rem;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;scroll-padding:0 1.25rem}.hourly-scroll::-webkit-scrollbar{display:none}.hourly-item{display:flex;flex-direction:column;align-items:center;gap:.5rem;min-width:75px;padding:.75rem .625rem;background:var(--bg-color);border-radius:12px}.hour-time{font-size:.6875rem;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.02em}.hour-icon{font-size:1.375rem}.hour-temp{font-size:1rem;font-weight:600;letter-spacing:-.02em}.hour-precip{font-size:.6875rem;font-weight:500;color:var(--primary-color)}.confidence-indicator{width:100%;height:3px;border-radius:2px;margin-top:.25rem}.hourly-controls{display:flex;align-items:center;gap:.5rem}.view-toggle{display:flex;gap:.25rem;background:var(--bg-color);padding:.25rem;border-radius:8px}.view-toggle .toggle-btn{display:flex;align-items:center;justify-content:center;padding:.375rem .5rem}.hourly-graph{padding-top:.5rem}.graph-legend{display:flex;justify-content:center;gap:1.5rem;margin-bottom:1rem;font-size:.75rem;font-weight:500}.graph-legend .legend-item{display:flex;align-items:center;gap:.375rem;color:var(--text-secondary)}.legend-line{width:16px;height:3px;border-radius:2px}.legend-temp{background:#ff9500}.legend-precip{background:#5ac8fa}.legend-wind{background:#34c759}.graph-container{position:relative;margin-left:-1.25rem;margin-right:-1.25rem}.graph-container:after{content:"";position:absolute;top:0;right:0;bottom:0;width:50px;background:linear-gradient(to right,transparent,var(--card-bg));pointer-events:none;border-radius:0 16px 16px 0}.graph-container:before{content:"";position:absolute;top:0;left:0;bottom:0;width:50px;background:linear-gradient(to left,transparent,var(--card-bg));pointer-events:none;z-index:1;border-radius:16px 0 0 16px}.graph-scroll{overflow-x:auto;padding:0 1.25rem .5rem;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.graph-scroll::-webkit-scrollbar{display:none}.forecast-graph{display:block;min-width:100%}.graph-grid{stroke:var(--border-color);stroke-width:1;stroke-dasharray:4 4}.graph-label{font-size:.6875rem;font-weight:500;fill:var(--text-secondary)}.graph-line{fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.temp-line{stroke:#ff9500}.precip-line{stroke:#5ac8fa;stroke-width:2}.wind-line{stroke:#34c759;stroke-width:2;stroke-dasharray:6 3}.precip-area{fill:#5ac8fa26}.temp-point{fill:#ff9500;stroke:var(--card-bg);stroke-width:2}.point-hover{cursor:pointer}.graph-scale-labels{display:flex;justify-content:center;gap:1.5rem;margin-top:.75rem;font-size:.6875rem;font-weight:500;color:var(--text-secondary)}.scale-label{display:flex;align-items:center;gap:.375rem}.confidence-high{background:var(--confidence-high)}.confidence-mid-high{background:var(--confidence-mid-high)}.confidence-mid-low{background:var(--confidence-mid-low)}.confidence-low{background:var(--confidence-low)}.daily-header{margin-bottom:.5rem}.daily-header h3,.daily-forecast h3{font-size:.875rem;font-weight:600;color:var(--text-primary);margin:0;letter-spacing:-.01em}.daily-list{display:flex;flex-direction:column;gap:0}.daily-item{display:flex;align-items:center;justify-content:space-between;padding:.875rem 0;border-bottom:1px solid var(--border-color);gap:.75rem}.daily-item:last-child{border-bottom:none}.day-name{font-size:.875rem;font-weight:600;letter-spacing:-.01em;min-width:70px}.day-weather-group{display:flex;align-items:center;gap:.5rem;flex:1}.day-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.day-temps{display:flex;gap:.5rem}.temp-high{font-size:.9375rem;font-weight:600;letter-spacing:-.01em}.temp-low{font-size:.9375rem;font-weight:400;color:var(--text-secondary)}.confidence-circle{width:10px;height:10px;border-radius:50%;flex-shrink:0}.confidence-circle.confidence-high{background:var(--confidence-high)}.confidence-circle.confidence-mid-high{background:var(--confidence-mid-high)}.confidence-circle.confidence-mid-low{background:var(--confidence-mid-low)}.confidence-circle.confidence-low{background:var(--confidence-low)}.day-precip{display:flex;align-items:center;gap:.25rem;font-size:.8125rem;font-weight:500;color:var(--primary-color);min-width:45px;justify-content:flex-start}.no-precip{color:var(--text-secondary)}.confidence-bar{height:3px;border-radius:2px;width:100%;min-width:40px}.daily-legend{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:.75rem;margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--border-color);font-size:.6875rem;font-weight:500;color:var(--text-secondary)}.legend-label{font-weight:600}.legend-item{display:flex;align-items:center;gap:.25rem}.legend-dot{width:8px;height:8px;border-radius:50%}.model-section{background:var(--card-bg);border-radius:16px;padding:1.5rem;box-shadow:var(--shadow);margin-bottom:1.5rem}.toggle-models-btn{width:100%;padding:.75rem;background:var(--bg-color);border:1px solid var(--border-color);border-radius:8px;font-size:.8125rem;font-weight:600;color:var(--text-primary);cursor:pointer;transition:background-color .2s;letter-spacing:-.01em}.toggle-models-btn:hover{background:#e2e8f0}.app-footer{text-align:center;padding:1.5rem;color:var(--text-secondary);font-size:.8125rem;font-weight:400;border-top:1px solid var(--border-color)}.app-footer a{color:var(--primary-color);text-decoration:none}.app-footer a:hover{text-decoration:underline}.theme-switcher{display:flex;flex-direction:column;align-items:center;gap:.5rem}.theme-switcher-label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.theme-options{display:flex;gap:.5rem}.theme-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem;border:1px solid var(--border-color);border-radius:20px;background:var(--card-bg);color:var(--text-secondary);font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s;letter-spacing:.01em}.theme-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.theme-btn.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.theme-icon{font-size:.875rem}.footer-controls{display:flex;justify-content:center;align-items:flex-start;gap:2rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color);flex-wrap:wrap}.unit-switcher{display:flex;flex-direction:column;align-items:center;gap:.5rem}.unit-toggle{display:flex;gap:.25rem;background:var(--bg-color);padding:.25rem;border-radius:20px;border:1px solid var(--border-color)}.unit-btn{padding:.5rem 1rem;border:none;background:transparent;border-radius:16px;font-size:.875rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .2s}.unit-btn:hover{color:var(--text-primary)}.unit-btn.active{background:var(--primary-color);color:#fff}input,select,button{font-family:inherit}@media(max-width:640px){.weather-details{grid-template-columns:repeat(2,1fr)}.daily-item{padding:.625rem .75rem}.day-name{min-width:60px;font-size:.8125rem}.spread-metrics{grid-template-columns:1fr;gap:.5rem}.spread-item{flex-direction:row;justify-content:space-between;padding:.75rem 1rem;border-radius:8px}}.tab-bar{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:430px;display:flex;justify-content:space-around;align-items:center;height:84px;padding-bottom:env(safe-area-inset-bottom,0);background:var(--card-bg);border-top:1px solid var(--border-color);z-index:100}.tab-bar-item{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem 1.5rem;background:none;border:none;cursor:pointer;color:var(--text-secondary);transition:color .2s ease}.tab-bar-item:hover,.tab-bar-item.active{color:var(--primary-color)}.tab-icon{width:24px;height:24px;stroke-width:1.5}.tab-icon-weather{display:flex;align-items:center;justify-content:center}.tab-icon-weather .weather-icon,.tab-icon-weather .weather-icon svg,.tab-icon-weather .wi-icon{color:inherit;fill:currentColor;width:24px;height:24px}.tab-bar-item.active .tab-icon{stroke-width:2}.tab-label{font-size:.625rem;font-weight:500;text-transform:uppercase;letter-spacing:.025em}.tab-content{padding-bottom:2rem}.tab-title{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0;padding:1.25rem 1rem 0;margin-bottom:.5rem}.section-title{font-size:.6875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0;padding:1rem 0 0 20px}.unified-header{display:flex;align-items:center;padding:20px 0 0 20px;position:relative;min-height:44px;margin-bottom:1rem}.section-title-inline{font-size:.6875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0;flex-shrink:0}.header-location-name{flex:1;font-size:.875rem;font-weight:500;color:var(--text-primary);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:60px}.unified-header .location-selector{flex:1;margin-bottom:0;justify-content:center;padding-right:60px}.unified-header .location-selector-name{font-size:.875rem;font-weight:500}.unified-header .header-settings-btn{position:fixed;top:20px;right:20px}@media(min-width:480px){.unified-header .header-settings-btn{right:max(20px,calc((100vw - 430px)/2 + 20px))}}.hourly-tab-section{min-height:calc(100vh - 200px)}.hourly-preview{background:var(--card-bg);border-radius:16px;padding:1rem 1.25rem;margin:1rem;border:1px solid var(--border-color)}.hourly-preview-title{font-size:.875rem;font-weight:600;color:var(--text-primary);margin-bottom:.75rem}.hourly-preview-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.5rem}.hourly-preview-item{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem .25rem;background:var(--bg-color);border-radius:10px}.hourly-preview-time{font-size:.6875rem;font-weight:500;color:var(--text-secondary);text-transform:uppercase}.hourly-preview-temp{font-size:1rem;font-weight:600;color:var(--text-primary)}.hourly-preview-precip{font-size:.625rem;font-weight:500;color:var(--primary-color)}.precip-alert{background:var(--card-bg);border-radius:16px;margin:1rem;border:1px solid var(--border-color);overflow:hidden}.precip-alert-header{display:flex;justify-content:space-between;align-items:center;width:100%;padding:1rem 1.25rem;background:transparent;border:none;cursor:pointer;text-align:left}.precip-alert.collapsed .precip-alert-header{padding:.875rem 1.25rem}.precip-alert-title{font-size:.875rem;font-weight:600;color:var(--text-primary);margin:0}.precip-alert-toggle{display:flex;align-items:center;justify-content:center;width:20px;height:20px;color:var(--text-secondary);transition:transform .2s ease}.precip-alert-toggle svg{width:16px;height:16px}.precip-alert-toggle.expanded{transform:rotate(180deg)}.precip-alert-content{display:flex;gap:1rem;padding:0 1.25rem 1rem}.precip-alert-empty{color:var(--text-secondary);font-size:.875rem;padding:.5rem 0}.precip-alert-item{display:flex;align-items:center;gap:.75rem;flex:1;padding:.75rem 1rem;background:var(--bg-color);border-radius:12px}.precip-alert-icon{font-size:1.5rem}.precip-alert-info{display:flex;flex-direction:column;gap:.125rem}.precip-alert-label{font-size:.6875rem;font-weight:500;color:var(--text-secondary);text-transform:uppercase}.precip-alert-value{font-size:1.25rem;font-weight:700;color:var(--text-primary)}.secondary-data{width:auto;margin:.5rem 16px;padding:1rem 0;border-top:1px solid var(--border-color)}.secondary-data-grid{display:flex;justify-content:space-around;align-items:flex-start}.secondary-data-item{display:flex;flex-direction:column;align-items:center;gap:.25rem;flex:1}.secondary-data-icon{font-size:1.25rem;opacity:.6}.secondary-data-info{display:flex;flex-direction:column;align-items:center;gap:.125rem}.secondary-data-value{font-size:1.125rem;font-weight:600;color:var(--text-primary)}.secondary-data-label{font-size:.5625rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.three-day-forecast{background:var(--card-bg);border-radius:16px;padding:1rem 1.25rem;margin:1rem;border:1px solid var(--border-color)}.three-day-title{font-size:.875rem;font-weight:600;color:var(--text-primary);margin-bottom:.75rem}.three-day-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.three-day-item{display:flex;flex-direction:column;align-items:center;gap:.375rem;padding:.5rem .25rem;border-right:1px solid var(--border-color)}.three-day-item:last-child{border-right:none}.three-day-name{font-size:.75rem;font-weight:600;color:var(--text-primary)}.three-day-icon{font-size:1.5rem}.three-day-temps{display:flex;gap:.5rem;align-items:baseline}.three-day-high{font-size:1rem;font-weight:600;color:var(--text-primary)}.three-day-low{font-size:.875rem;font-weight:500;color:var(--text-secondary)}.three-day-precip{font-size:.6875rem;font-weight:500;color:var(--primary-color)}.settings-menu-btn{position:fixed;top:20px;right:max(20px,calc((100vw - 430px)/2 + 20px));width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:50%;cursor:pointer;z-index:200;color:var(--text-primary);box-shadow:var(--shadow-lg);transition:all .2s ease}.settings-menu-btn:hover{background:var(--bg-color)}.settings-menu-btn svg{width:20px;height:20px}.location-selector{display:flex;justify-content:center;margin-bottom:1.25rem}.location-selector-wrapper{position:relative}.location-selector-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:20px;cursor:pointer;transition:all .2s ease}.location-selector-btn:hover{border-color:var(--primary-color)}.location-selector-name{font-size:1rem;font-weight:600;color:var(--text-primary)}.location-selector-arrow{transition:transform .2s ease;color:var(--text-secondary)}.location-selector-arrow.open{transform:rotate(180deg)}.location-dropdown{position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%);min-width:200px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 16px #00000026;list-style:none;z-index:1100;overflow:hidden}.location-dropdown-item{padding:.75rem 1rem;cursor:pointer;transition:background .2s ease;display:flex;flex-direction:column;gap:.125rem}.location-dropdown-item:hover{background:var(--bg-color)}.location-dropdown-item.active{background:#2563eb1a}.location-dropdown-item:not(:last-child){border-bottom:1px solid var(--border-color)}.location-dropdown-name{font-size:.9375rem;font-weight:600;color:var(--text-primary)}.location-dropdown-details{font-size:.75rem;color:var(--text-secondary)}.tab-content-map{padding:0;height:calc(100vh - 84px);overflow:hidden}.loading-state-map,.error-state-map{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1000}.today-map-layout{display:flex;flex-direction:column;height:100%;width:100%;gap:0}.weather-map-container{position:relative;flex:1;min-height:280px;overflow:hidden;border-radius:16px}.weather-map{width:100%;height:100%}.map-fade-overlay{position:absolute;inset:0;pointer-events:none;z-index:500;background:radial-gradient(circle at center,transparent 0%,transparent 25%,rgba(0,0,0,.2) 50%,rgba(0,0,0,.5) 70%,var(--bg-color) 90%)}.map-time-display{position:absolute;top:16px;left:50%;transform:translate(-50%);z-index:1000;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:8px 16px;border-radius:20px;display:flex;align-items:center;gap:8px;color:#fff;font-size:.875rem}.map-time-label{font-size:.6875rem;text-transform:uppercase;letter-spacing:.5px;color:#fff9}.map-time-value{font-weight:600}.radar-timeline{position:absolute;bottom:0;left:0;right:0;z-index:1000;padding:12px 16px 16px;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.6) 70%,transparent 100%);cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none}.timeline-current{display:flex;align-items:center;gap:8px;margin-bottom:8px}.timeline-current-label{font-size:.75rem;font-weight:600;color:var(--primary-color);text-transform:uppercase;letter-spacing:.5px}.timeline-current-time{font-size:.875rem;font-weight:500;color:#ffffffe6}.timeline-track{position:relative;height:32px;background:#ffffff14;border-radius:4px}.timeline-tick{position:absolute;top:0;height:100%;display:flex;flex-direction:column;align-items:center;transform:translate(-50%)}.timeline-tick-mark{width:1px;height:8px;background:#ffffff4d}.timeline-tick.now .timeline-tick-mark{background:var(--primary-color);width:2px}.timeline-tick-label{font-size:.625rem;color:#ffffff80;margin-top:2px;white-space:nowrap}.timeline-tick.now .timeline-tick-label{color:var(--primary-color);font-weight:600}.timeline-now-line{position:absolute;top:0;width:2px;height:100%;background:var(--primary-color);transform:translate(-50%);opacity:.6;z-index:1}.timeline-playhead{position:absolute;top:0;height:100%;transform:translate(-50%);z-index:2;display:flex;flex-direction:column;align-items:center}.timeline-playhead-line{width:2px;height:100%;background:#fff;border-radius:1px}.timeline-playhead-handle{position:absolute;top:50%;transform:translateY(-50%);width:14px;height:14px;background:#fff;border-radius:50%;box-shadow:0 2px 6px #0006}.radar-timeline:active .timeline-playhead-handle{transform:translateY(-50%) scale(1.2)}.hourly-graph-section{background:var(--card-bg);border-radius:16px;padding:1.25rem 0;box-shadow:var(--shadow);margin:8px 20px 20px;overflow:hidden}.graph-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding:0 1.25rem}.graph-title{font-size:.875rem;font-weight:600;color:var(--text-primary);margin:0;letter-spacing:-.01em}.graph-scroll-wrapper{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;padding:0 1.25rem}.graph-scroll-wrapper::-webkit-scrollbar{height:4px}.graph-scroll-wrapper::-webkit-scrollbar-track{background:var(--border-color);border-radius:2px;margin:0 1.25rem}.graph-scroll-wrapper::-webkit-scrollbar-thumb{background:var(--text-secondary);border-radius:2px;opacity:.5}.graph-svg-container{display:block}.graph-layer-toggles{display:flex;gap:8px;flex-wrap:wrap;padding:.75rem 1.25rem 0;margin:0 1.25rem}.graph-toggle{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:20px;color:var(--text-secondary);font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease}.graph-toggle:hover{background:var(--hover-bg, rgba(0, 0, 0, .05))}.graph-toggle.active{color:var(--text-primary)}.graph-toggle.active.precip{border-color:#3b82f6;background:#3b82f61a}.graph-toggle.active.snow{border-color:#8b5cf6;background:#8b5cf61a}.graph-toggle.active.temp{border-color:#f59e0b;background:#f59e0b1a}.graph-toggle.active.wind{border-color:#22c55e;background:#22c55e1a}.toggle-dot{width:8px;height:8px;border-radius:50%}.toggle-dot.precip{background:#3b82f6}.toggle-dot.snow{background:#8b5cf6}.toggle-dot.temp{background:#fbbf24}.toggle-dot.wind{background:#4ade80}.graph-svg-container{display:block;padding:8px 0;margin:0 -1.25rem}.hourly-graph-svg{display:block;min-width:100%}.graph-day-separator{stroke:var(--border-color);stroke-width:1;stroke-dasharray:3 3}.graph-day-label{fill:var(--text-secondary);font-size:10px;font-weight:600;letter-spacing:.5px}.graph-gridline{stroke:var(--border-color);stroke-width:.5;opacity:.5}.y-axis-label{font-size:8px;font-weight:500}.y-axis-label.temp-axis{fill:#f59e0b}.y-axis-label.wind-axis{fill:#22c55e}.y-axis-label.precip-axis{fill:#3b82f6}.graph-line{fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.graph-line.temp-line{stroke:#f59e0b}.graph-line.wind-line{stroke:#22c55e;stroke-width:1;opacity:.8}.temp-point{fill:#f59e0b;stroke:var(--card-bg);stroke-width:1.5}.temp-label{fill:var(--text-primary);font-size:11px;font-weight:600;text-anchor:middle}.temp-label.high{fill:#d97706}.temp-label.low{fill:#2563eb}.wind-label{fill:#22c55e;font-size:10px;font-weight:600;text-anchor:middle}.precip-label{fill:#3b82f6;font-size:9px;font-weight:600;text-anchor:middle}.snow-label{fill:#8b5cf6;font-size:9px;font-weight:600;text-anchor:middle}.wind-arrow{fill:#22c55e;opacity:.9}.precip-bar{fill:#3b82f6}.precip-bar.precip-bar-empty{fill:var(--border-color)}.snow-bar{fill:#8b5cf6}.snow-label{fill:var(--text-primary);font-size:8px;text-anchor:middle;font-weight:500}.precip-label{fill:var(--text-primary);font-size:9px;font-weight:500;text-anchor:middle}.graph-time-label{fill:var(--text-secondary);font-size:10px;font-weight:500;text-anchor:middle}.map-current-data{position:absolute;top:70px;left:12px;z-index:1000;display:flex;flex-direction:column;gap:4px;background:var(--card-bg);padding:10px 14px;border-radius:12px;box-shadow:0 2px 8px #00000026}.map-data-item{display:flex;flex-direction:column}.map-data-label{font-size:.65rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.map-data-value{font-size:1.1rem;font-weight:600;color:var(--text-primary)}.weather-tooltip{background:var(--card-bg)!important;border:none!important;border-radius:10px!important;box-shadow:0 2px 8px #0003!important;padding:6px 10px!important}.weather-tooltip:before{display:none!important}.map-weather-info{display:flex;align-items:center;gap:6px}.map-temp{font-size:1rem;font-weight:600;color:var(--text-primary)}.hourly-forecast-compact .hourly-item{min-width:70px;padding:10px 8px;transition:all .2s ease;opacity:.6;transform:scale(.9);cursor:pointer}.hourly-forecast-compact .hourly-item-selected{opacity:1;transform:scale(1)}.hourly-forecast-compact .hour-time{font-size:.7rem}.hourly-forecast-compact .hour-temp{font-size:1rem;font-weight:600}.hourly-forecast-compact .hour-icon{margin:6px 0}.hourly-forecast-compact .hour-precip{font-size:.6rem}.map-temp-badge{background:none!important;border:none!important}.temp-badge-container{display:flex;flex-direction:column;align-items:center;gap:4px}.temp-badge-circle{width:52px;height:52px;border-radius:50%;background:#1e293bf2;border:2px solid rgba(255,255,255,.25);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 4px 20px #00000080;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.temp-badge-value{font-size:1rem;font-weight:700;color:#fff;line-height:1}.temp-badge-icon{width:16px;height:16px;margin-top:1px}.app-main{padding-top:0;padding-bottom:0}.onboarding{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:var(--bg-color)}.onboarding-content{width:100%;max-width:320px;text-align:center}.onboarding-icon{margin-bottom:1.5rem;color:var(--primary-color)}.onboarding-icon svg{width:64px;height:64px}.onboarding-title{font-size:2rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem;letter-spacing:-.02em}.onboarding-subtitle{font-size:1rem;color:var(--text-secondary);margin-bottom:2rem}.onboarding-search{text-align:left}.onboarding-search .location-search{margin-bottom:0}.onboarding-search .search-input{font-size:1rem;padding:1rem;border-radius:12px}.onboarding-loading{margin-top:1.5rem;color:var(--text-secondary);font-size:.875rem}.onboarding-error{margin-top:1.5rem;color:#ef4444;font-size:.875rem}.unified-weather{display:flex;flex-direction:column;height:100%;overflow:hidden;padding-bottom:calc(215px + env(safe-area-inset-bottom,0px))}@keyframes slideUpIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDownOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}@keyframes slideUpInCentered{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes slideDownOutCentered{0%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(20px)}}.forecast-card-floating{position:fixed;bottom:calc(72px + env(safe-area-inset-bottom,0px));left:0;right:0;padding:.75rem 1rem .5rem;margin:0;background:#ffffffd9;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:none;border-top:1px solid rgba(0,0,0,.08);border-radius:0;box-shadow:0 -4px 20px #0000000f;z-index:95;box-sizing:border-box;animation:slideUpIn .15s cubic-bezier(.4,0,.2,1) forwards}.forecast-card-floating.exiting{animation:slideDownOut .15s cubic-bezier(.4,0,.2,1) forwards}@media(min-width:480px){.forecast-card-floating{left:50%;right:auto;width:430px;transform:translate(-50%);animation:slideUpInCentered .15s cubic-bezier(.4,0,.2,1) forwards}.forecast-card-floating.exiting{animation:slideDownOutCentered .15s cubic-bezier(.4,0,.2,1) forwards}}.forecast-card-header{display:flex;justify-content:space-between;align-items:flex-start;height:18px;margin-bottom:.25rem}.forecast-card-time{font-size:.8125rem;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.02em;min-width:80px}.forecast-card-main{display:flex;align-items:center;height:44px}.forecast-card-icon{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center}.forecast-card-temp{display:flex;flex-direction:column;margin-left:.5rem;min-width:55px}.forecast-card-temp-value{font-size:2rem;font-weight:300;line-height:1;color:var(--text-primary)}.forecast-card-feels{font-size:.75rem;color:var(--text-secondary);margin-top:2px;white-space:nowrap}.forecast-card-condition{flex:1;text-align:right;font-size:.875rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;align-self:flex-start;margin-top:.25rem}.forecast-card-details{display:flex;justify-content:space-between;height:20px;margin-top:.625rem;padding-top:.5rem;border-top:1px solid var(--border-color)}.forecast-card-detail{display:flex;align-items:center;gap:.25rem;font-size:.75rem;color:var(--text-secondary);min-width:60px}.forecast-card-detail svg{opacity:.6;flex-shrink:0;width:14px;height:14px}.back-to-now-btn{position:fixed;bottom:calc(18px + env(safe-area-inset-bottom,0px));left:.75rem;display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:var(--primary-color);color:#fff;border:none;border-radius:50%;cursor:pointer;box-shadow:0 2px 8px #0003;z-index:100;transition:transform .15s}.back-to-now-btn svg{width:16px;height:16px}.back-to-now-btn:hover{transform:scale(1.1)}.back-to-now-btn:active{transform:scale(.95)}@media(min-width:480px){.back-to-now-btn{left:calc(50% - 215px + .75rem)}}.sun-times-row{display:flex;justify-content:center;gap:2rem;padding:.75rem 1rem}.sun-time-item{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:var(--text-secondary)}.sun-time-item svg{opacity:.6}.timeline-dial{position:fixed;bottom:0;left:0;right:0;height:calc(72px + env(safe-area-inset-bottom,0px));background:#ffffffd9;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-top:1px solid var(--border-color);overflow:hidden;cursor:grab;touch-action:pan-x;-webkit-user-select:none;user-select:none;z-index:90;padding-top:8px;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px))}.timeline-dial:active{cursor:grabbing}.dial-center-indicator{position:absolute;top:0;left:50%;transform:translate(-50%);width:2px;height:100%;background:var(--primary-color);opacity:.35;z-index:1}.dial-center-indicator:before{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:6px solid var(--primary-color)}.dial-track{display:flex;align-items:center;height:100%;transition:transform .1s ease-out}.dial-item{flex-shrink:0;width:70px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.125rem;cursor:pointer;transition:opacity .1s,transform .1s}.dial-item.active .dial-time{color:var(--primary-color);font-weight:700}.dial-item.active .dial-day{color:var(--primary-color)}.dial-time{font-size:1.125rem;font-weight:500;color:var(--text-primary);line-height:1.2}.dial-day{font-size:.6875rem;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em}.dial-precip-dot{width:6px;height:6px;border-radius:50%;margin-top:.25rem}.dial-precip-dot.rain{background:var(--accent-blue)}.dial-precip-dot.snow{background:#a5b4fc}@media(min-width:480px){.timeline-dial{max-width:430px;left:50%;right:auto;transform:translate(-50%)}}.dial-fade{position:absolute;top:0;bottom:0;width:80px;pointer-events:none;z-index:5}.dial-fade-left{left:0;background:linear-gradient(90deg,var(--card-bg) 0%,transparent 100%)}.dial-fade-right{right:0;background:linear-gradient(270deg,var(--card-bg) 0%,transparent 100%)}.timeline-content{flex:1;padding:1.5rem;padding-bottom:80px;overflow-y:auto}.timeline-hero{display:flex;flex-direction:column;align-items:center;gap:.25rem;margin-bottom:2rem}.timeline-temp{display:flex;align-items:flex-start}.timeline-temp .temp-value{font-size:5rem;font-weight:200;line-height:1;color:var(--text-primary);letter-spacing:-.03em}.timeline-temp .temp-unit{font-size:2rem;font-weight:300;color:var(--text-secondary);margin-top:.5rem}.timeline-condition{font-size:1.125rem;color:var(--text-secondary);font-weight:400}.timeline-comparison{font-size:.8125rem;font-weight:500;margin-top:.25rem}.timeline-comparison.warmer{color:var(--accent-orange)}.timeline-comparison.cooler{color:var(--accent-blue)}.timeline-comparison.hidden{visibility:hidden}.timeline-key-metrics{display:flex;justify-content:center;align-items:center;gap:1.5rem;padding:1.25rem;background:var(--card-bg);border-radius:16px;margin-bottom:1rem}.key-metric{display:flex;flex-direction:column;align-items:center;gap:.125rem;min-width:70px}.key-value{font-size:1.5rem;font-weight:600;color:var(--text-primary);line-height:1.2}.key-label{font-size:.75rem;color:var(--text-secondary);font-weight:500}.key-metric-divider{width:1px;height:32px;background:var(--border-color)}.key-value .wind-arrow{position:static;display:inline-block;margin-right:.25rem;margin-left:0;vertical-align:middle;opacity:.7}.timeline-details{background:var(--card-bg);border-radius:16px;overflow:hidden}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:.875rem 1rem;border-bottom:1px solid var(--border-color)}.detail-row:last-child{border-bottom:none}.detail-label{display:flex;align-items:center;gap:.5rem;font-size:.9375rem;color:var(--text-secondary)}.detail-icon{width:16px;height:16px;opacity:.6;flex-shrink:0}.detail-value{font-size:.9375rem;font-weight:600;color:var(--text-primary)}.detail-value-accent{color:var(--accent-blue)}.weather-content{transition:opacity .3s ease}.weather-content.is-refreshing{opacity:.5;pointer-events:none}.weather-skeleton{padding:20px;display:flex;flex-direction:column;gap:20px}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-shimmer{background:linear-gradient(90deg,var(--border-color) 25%,var(--card-bg) 50%,var(--border-color) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite}.skeleton-header{display:flex;justify-content:space-between;align-items:center;padding:0 4px}.skeleton-pill{height:20px;border-radius:10px}.skeleton-hero{display:flex;flex-direction:column;align-items:center;gap:16px;padding:24px 0}.skeleton-icon{width:120px;height:120px;border-radius:50%}.skeleton-temp-group{display:flex;flex-direction:column;align-items:center;gap:8px}.skeleton-temp{width:140px;height:64px;border-radius:12px}.skeleton-condition{width:100px;height:24px;border-radius:12px}.skeleton-sun-times{display:flex;justify-content:center;gap:32px}.skeleton-secondary{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:16px;background:var(--card-bg);border-radius:16px}.skeleton-data-item{display:flex;align-items:center;gap:12px;padding:8px}.skeleton-data-icon{width:32px;height:32px;border-radius:8px}.skeleton-data-text{display:flex;flex-direction:column;gap:4px}.skeleton-line{height:16px;border-radius:4px}.skeleton-section-title{height:16px;border-radius:4px;margin-left:4px}.skeleton-graph{background:var(--card-bg);border-radius:16px;padding:20px;height:160px}.skeleton-graph-bars{display:flex;align-items:flex-end;justify-content:space-around;height:100%;gap:8px}.skeleton-bar{flex:1;border-radius:4px 4px 0 0;max-width:32px}.skeleton-daily{background:var(--card-bg);border-radius:16px;padding:12px 16px;display:flex;flex-direction:column;gap:12px}.skeleton-daily-row{display:flex;align-items:center;gap:16px;padding:8px 0}.skeleton-daily-icon{width:32px;height:32px;border-radius:8px}.skeleton-daily-temps{display:flex;gap:12px;margin-left:auto}.offline-banner,.stale-banner{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1rem;font-size:.8125rem;font-weight:500}.offline-banner{background:#fef2f2;color:#dc2626;border-bottom:1px solid #fecaca}.offline-banner svg{flex-shrink:0}.stale-banner{background:#fffbeb;color:#d97706;border-bottom:1px solid #fde68a}.stale-refresh-btn{margin-left:.5rem;padding:.25rem .75rem;background:#d97706;color:#fff;border:none;border-radius:4px;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .2s}.stale-refresh-btn:hover{background:#b45309}.retry-btn{display:inline-flex;align-items:center;justify-content:center;margin-top:1rem;padding:.625rem 1.25rem;background:var(--primary-color);color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .2s,transform .1s}.retry-btn:hover{background:var(--primary-dark)}.retry-btn:active{transform:scale(.98)}[data-theme=futuristic]{--primary-color: #4a9eff;--primary-dark: #2d7dd2;--bg-color: #0d1926;--card-bg: #132337;--card-bg-light: #1a3148;--text-primary: #ffffff;--text-secondary: #8899a6;--border-color: #2a4a6a;--accent-cyan: #4a9eff;--accent-orange: #ff9500;--accent-green: #34c759;--accent-blue: #5ac8fa;--confidence-high: #4a9eff;--confidence-mid-high: #34c759;--confidence-mid-low: #ff9500;--confidence-low: #ff453a;--shadow: 0 4px 12px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .4);--header-bg: linear-gradient(180deg, #0d1926 0%, #132337 100%);--glass-bg: #1a3148;--glass-border: #2a5a8a;--glow: none}[data-theme=futuristic] body,[data-theme=futuristic] .app{background:#0d1926}[data-theme=futuristic] .app-header{background:var(--card-bg);border-bottom:1px solid var(--border-color)}[data-theme=futuristic] .current-section{background:transparent;border:none}[data-theme=futuristic] .hero-temp-value{background:linear-gradient(135deg,#fff,#4a9eff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=futuristic] .hero-icon{filter:drop-shadow(0 0 20px rgba(74,158,255,.4))}[data-theme=futuristic] .metric-bg{stroke:var(--border-color)}[data-theme=futuristic] .metric-fill-temp{stroke:#ff9f0a;filter:drop-shadow(0 0 4px rgba(255,159,10,.5))}[data-theme=futuristic] .metric-fill-humidity{stroke:#64d2ff;filter:drop-shadow(0 0 4px rgba(100,210,255,.5))}[data-theme=futuristic] .metric-fill-wind{stroke:#30d158;filter:drop-shadow(0 0 4px rgba(48,209,88,.5))}[data-theme=futuristic] .metric-fill-precip{stroke:#bf5af2;filter:drop-shadow(0 0 4px rgba(191,90,242,.5))}[data-theme=futuristic] .wind-arrow{color:#30d158;text-shadow:0 0 8px rgba(48,209,88,.6)}[data-theme=futuristic] .model-section{background:transparent;box-shadow:none}[data-theme=futuristic] .model-section h4{color:var(--text-primary)}[data-theme=futuristic] .search-input{background:var(--card-bg);border-color:var(--glass-border);color:var(--text-primary)}[data-theme=futuristic] .search-input:focus{border-color:var(--accent-cyan);box-shadow:0 0 0 2px #4a9eff33}[data-theme=futuristic] .search-input::placeholder{color:var(--text-secondary)}[data-theme=futuristic] .search-results,[data-theme=futuristic] .search-no-results{background:#132337fa;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-color:var(--glass-border);box-shadow:0 8px 32px #0006}[data-theme=futuristic] .search-results li:hover,[data-theme=futuristic] .search-results li.selected{background:var(--card-bg-light)}[data-theme=futuristic] .hourly-item{background:var(--card-bg);border-color:var(--glass-border)}[data-theme=futuristic] .hourly-item:hover{border-color:var(--accent-cyan)}[data-theme=futuristic] .hour-time{color:var(--text-secondary)}[data-theme=futuristic] .hour-temp{color:var(--text-primary)}[data-theme=futuristic] .hour-precip{color:var(--accent-blue)}[data-theme=futuristic] .hourly-forecast{background:var(--card-bg);border-color:var(--glass-border)}[data-theme=futuristic] .hourly-header h3{color:var(--text-primary)}[data-theme=futuristic] .hourly-scroll-wrapper:after{background:linear-gradient(to right,transparent,var(--card-bg))}[data-theme=futuristic] .hourly-scroll-wrapper:before{background:linear-gradient(to left,transparent,var(--card-bg))}[data-theme=futuristic] .graph-container:after{background:linear-gradient(to right,transparent,var(--card-bg))}[data-theme=futuristic] .graph-container:before{background:linear-gradient(to left,transparent,var(--card-bg))}[data-theme=futuristic] .hour-toggle{background:var(--card-bg-light);border-color:var(--glass-border)}[data-theme=futuristic] .toggle-btn{color:var(--text-secondary)}[data-theme=futuristic] .toggle-btn:hover{color:var(--text-primary)}[data-theme=futuristic] .toggle-btn.active{background:var(--accent-cyan);color:#fff;box-shadow:none}[data-theme=futuristic] .daily-forecast{background:transparent;border:none}[data-theme=futuristic] .daily-header{color:var(--text-secondary);border-bottom-color:var(--border-color)}[data-theme=futuristic] .daily-item{background:transparent;border:none;border-bottom:1px solid var(--border-color)}[data-theme=futuristic] .daily-item:last-child{border-bottom:none}[data-theme=futuristic] .daily-item:hover{background:#4a9eff0d}[data-theme=futuristic] .day-name,[data-theme=futuristic] .temp-high{color:var(--text-primary)}[data-theme=futuristic] .temp-low{color:var(--text-secondary)}[data-theme=futuristic] .day-precip{color:var(--accent-blue)}[data-theme=futuristic] .daily-legend{border-top-color:var(--border-color);color:var(--text-secondary)}[data-theme=futuristic] .confidence-high{background:var(--confidence-high);box-shadow:none}[data-theme=futuristic] .confidence-mid-high{background:var(--confidence-mid-high);box-shadow:none}[data-theme=futuristic] .confidence-mid-low{background:var(--confidence-mid-low);box-shadow:none}[data-theme=futuristic] .confidence-low{background:var(--confidence-low);box-shadow:none}[data-theme=futuristic] .toggle-models-btn{background:var(--card-bg);border-color:var(--glass-border);color:var(--text-primary)}[data-theme=futuristic] .toggle-models-btn:hover{border-color:var(--accent-cyan);background:var(--card-bg-light)}[data-theme=futuristic] .model-comparison{background:var(--card-bg);border-color:var(--glass-border)}[data-theme=futuristic] .comparison-table th,[data-theme=futuristic] .comparison-table td{border-color:var(--border-color)}[data-theme=futuristic] .comparison-table .ensemble-row{background:#4a9eff1a}[data-theme=futuristic] .hour-selector{background:var(--card-bg-light);border-color:var(--glass-border);color:var(--text-primary)}[data-theme=futuristic] .model-spread{border-top-color:var(--border-color)}[data-theme=futuristic] .spread-item{background:var(--card-bg);border-color:var(--glass-border)}[data-theme=futuristic] .spread-label{color:var(--text-secondary)}[data-theme=futuristic] .spread-value{color:var(--text-primary)}[data-theme=futuristic] .accuracy-badge{border-color:var(--glass-border);background:var(--card-bg-light)}[data-theme=futuristic] .accuracy-collecting{background:var(--card-bg-light);color:var(--text-secondary)}[data-theme=futuristic] .accuracy-excellent{background:#34c75926;color:var(--confidence-high);border-color:#34c7594d}[data-theme=futuristic] .accuracy-good{background:#ff950026;color:var(--confidence-mid-high);border-color:#ff95004d}[data-theme=futuristic] .accuracy-fair{background:#ff95001a;color:#ffb340;border-color:#ff950033}[data-theme=futuristic] .accuracy-poor{background:#ff453a26;color:var(--confidence-low);border-color:#ff453a4d}[data-theme=futuristic] .app-footer{background:var(--card-bg);border-top-color:var(--border-color)}[data-theme=futuristic] .app-footer a{color:var(--accent-cyan)}[data-theme=futuristic] .loading-state,[data-theme=futuristic] .empty-state{color:var(--text-secondary)}[data-theme=futuristic] .error-state{background:#ff453a1a;color:var(--confidence-low);border-color:#ff453a4d}[data-theme=futuristic] .view-toggle{background:var(--card-bg-light);border-color:var(--glass-border)}[data-theme=futuristic] .graph-grid{stroke:var(--border-color)}[data-theme=futuristic] .temp-point{stroke:var(--card-bg)}[data-theme=futuristic] .precip-area{fill:#5ac8fa1a}[data-theme=futuristic] .theme-btn{background:var(--card-bg-light);border-color:var(--glass-border);color:var(--text-secondary)}[data-theme=futuristic] .theme-btn:hover{border-color:var(--accent-cyan);color:var(--text-primary)}[data-theme=futuristic] .theme-btn.active{background:var(--accent-cyan);border-color:var(--accent-cyan);color:#fff}[data-theme=futuristic] .unit-toggle{background:var(--card-bg-light);border-color:var(--glass-border)}[data-theme=futuristic] .unit-btn{color:var(--text-secondary)}[data-theme=futuristic] .unit-btn:hover{color:var(--text-primary)}[data-theme=futuristic] .unit-btn.active{background:var(--accent-cyan);color:#fff}[data-theme=futuristic] .hourly-preview{background:var(--card-bg);border-color:var(--glass-border)}[data-theme=futuristic] .hourly-preview-item{background:var(--card-bg-light);border-color:var(--glass-border)}[data-theme=futuristic] .hourly-preview-precip{color:var(--accent-cyan)}[data-theme=futuristic] .precip-alert{background:var(--card-bg);border-color:var(--glass-border)}[data-theme=futuristic] .precip-alert-item{background:var(--card-bg-light);border-color:var(--glass-border)}[data-theme=futuristic] .secondary-data-item{background:transparent;border:none}[data-theme=futuristic] .three-day-forecast{background:var(--card-bg);border-color:var(--glass-border)}[data-theme=futuristic] .three-day-item{background:transparent;border:none}[data-theme=futuristic] .three-day-precip{color:var(--accent-cyan)}[data-theme=futuristic] .tab-bar{background:var(--card-bg);border-top-color:var(--glass-border);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}[data-theme=futuristic] .tab-bar-item.active{color:var(--accent-cyan)}[data-theme=futuristic] .settings-section{background:var(--card-bg);border-color:var(--glass-border)}[data-theme=futuristic] .settings-unit-btn{background:var(--card-bg-light)}[data-theme=futuristic] .settings-unit-btn.active{border-color:var(--accent-cyan);background:#4a9eff26}[data-theme=futuristic] .settings-theme-btn.active{border-color:var(--accent-cyan)}[data-theme=futuristic] .settings-icon-btn{background:var(--card-bg-light)}[data-theme=futuristic] .settings-icon-btn.active{border-color:var(--accent-cyan);background:#4a9eff26}[data-theme=futuristic] .icon-preview,[data-theme=futuristic] .map-layer-toggle,[data-theme=futuristic] .map-hour-toggle,[data-theme=futuristic] .map-current-data{background:var(--card-bg);border-color:var(--glass-border)}[data-theme=futuristic] .map-layer-btn.active,[data-theme=futuristic] .map-hour-btn.active{background:var(--accent-cyan)}[data-theme=futuristic] .floating-hourly{background:var(--card-bg);border-top-color:var(--glass-border)}[data-theme=futuristic] .dial-indicator{background:var(--accent-cyan)}[data-theme=futuristic] .dial-indicator:before{background:var(--accent-cyan)}[data-theme=futuristic] .weather-tooltip{background:var(--card-bg)!important;border-color:var(--glass-border)!important}[data-theme=futuristic] .toggle-switch{background:var(--border-color)}[data-theme=futuristic] .toggle-switch.active{background:var(--accent-cyan)}[data-theme=futuristic] .recent-location-item{background:var(--card-bg);border-color:var(--glass-border)}[data-theme=futuristic] .recent-location-item:hover{background:var(--accent-cyan);border-color:var(--accent-cyan)}[data-theme=futuristic] .location-selector-btn{background:var(--card-bg);border-color:var(--glass-border)}[data-theme=futuristic] .location-selector-btn:hover{border-color:var(--accent-cyan)}[data-theme=futuristic] .location-dropdown{background:var(--card-bg);border-color:var(--glass-border)}[data-theme=futuristic] .location-dropdown-item:hover{background:var(--card-bg-light)}[data-theme=futuristic] .location-dropdown-item.active{background:#4a9eff26}[data-theme=futuristic] .timeline-dial{background:#0d1926d9;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}[data-theme=futuristic] .forecast-card-floating{background:#0d1926d9;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-top:1px solid rgba(255,255,255,.1)}[data-theme=glass]{--primary-color: #007aff;--primary-dark: #0056b3;--bg-color: #f2f2f7;--card-bg: rgba(255, 255, 255, .72);--text-primary: #1c1c1e;--text-secondary: #6e6e73;--border-color: rgba(0, 0, 0, .06);--confidence-high: #007aff;--confidence-mid-high: #34c759;--confidence-mid-low: #ff9f0a;--confidence-low: #ff3b30;--shadow: 0 2px 16px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .12);--glass-blur: 40px;--glass-border: rgba(255, 255, 255, .5);--glass-highlight: linear-gradient(135deg, rgba(255,255,255,.9) 0%, rgba(255,255,255,.4) 100%)}[data-theme=glass] body{background:linear-gradient(145deg,#e8e3f3,#d4e4f7,#e8f4ec,#fce8e6,#f5e6d3);background-attachment:fixed}[data-theme=glass] .app{background:transparent}[data-theme=glass] .app-header{background:var(--card-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-bottom-color:var(--glass-border);box-shadow:0 1px #fffc inset,var(--shadow)}[data-theme=glass] .app-header h1{background:linear-gradient(135deg,#1c1c1e,#3a3a3c);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=glass] .app-header .subtitle{color:var(--text-secondary)}[data-theme=glass] .current-section{background:transparent}[data-theme=glass] .hero-location{color:var(--text-primary)}[data-theme=glass] .hero-condition,[data-theme=glass] .hero-time,[data-theme=glass] .hero-temp-unit{color:var(--text-secondary)}[data-theme=glass] .metric-value{color:var(--text-primary)}[data-theme=glass] .metric-label{color:var(--text-secondary)}[data-theme=glass] .hero-temp-value{background:linear-gradient(135deg,#1c1c1e,#48484a);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=glass] .hero-icon{filter:drop-shadow(0 4px 12px rgba(0,0,0,.15))}[data-theme=glass] .metric-ring{background:var(--card-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 2px 8px #0000000f,0 1px #fffc inset}[data-theme=glass] .metric-bg{stroke:#00000014}[data-theme=glass] .metric-fill-temp{stroke:#ff9f0a}[data-theme=glass] .metric-fill-humidity{stroke:#5ac8fa}[data-theme=glass] .metric-fill-wind{stroke:#34c759}[data-theme=glass] .metric-fill-precip{stroke:#af52de}[data-theme=glass] .search-input{background:var(--card-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-color:var(--glass-border);box-shadow:0 1px #fffc inset,var(--shadow)}[data-theme=glass] .search-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 4px #007aff26,0 1px #fffc inset}[data-theme=glass] .search-results,[data-theme=glass] .search-no-results{background:#fffffff2;backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);border-color:#fff9;box-shadow:0 8px 32px #00000026,0 0 0 1px #ffffff80 inset}[data-theme=glass] .search-results li:hover,[data-theme=glass] .search-results li.selected{background:#007aff1a}[data-theme=glass] .model-section{background:transparent;box-shadow:none}[data-theme=glass] .hourly-forecast{background:var(--card-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-color:var(--glass-border);box-shadow:0 1px #fffc inset,var(--shadow)}[data-theme=glass] .hourly-item{background:#ffffff80;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-color:#fff9;box-shadow:0 2px 8px #0000000a}[data-theme=glass] .hourly-item:hover{box-shadow:0 4px 16px #00000014}[data-theme=glass] .hour-time{color:var(--text-secondary)}[data-theme=glass] .hour-temp{color:var(--text-primary)}[data-theme=glass] .hour-precip{color:#007aff}[data-theme=glass] .hourly-scroll-wrapper:after{background:linear-gradient(to right,transparent,rgba(255,255,255,.72))}[data-theme=glass] .hourly-scroll-wrapper:before{background:linear-gradient(to left,transparent,rgba(255,255,255,.72))}[data-theme=glass] .graph-container:after{background:linear-gradient(to right,transparent,rgba(255,255,255,.72))}[data-theme=glass] .graph-container:before{background:linear-gradient(to left,transparent,rgba(255,255,255,.72))}[data-theme=glass] .hour-toggle{background:#fff9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-color:var(--glass-border)}[data-theme=glass] .toggle-btn.active{background:var(--primary-color);color:#fff;box-shadow:0 2px 8px #007aff4d}[data-theme=glass] .daily-forecast{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border:none;box-shadow:none}[data-theme=glass] .daily-item{background:transparent;border:none;border-bottom:1px solid rgba(0,0,0,.06)}[data-theme=glass] .daily-item:hover{background:#007aff0d}[data-theme=glass] .daily-item:last-child{border-bottom:none}[data-theme=glass] .day-name,[data-theme=glass] .temp-high{color:var(--text-primary)}[data-theme=glass] .temp-low{color:var(--text-secondary)}[data-theme=glass] .day-precip{color:#007aff}[data-theme=glass] .daily-header,[data-theme=glass] .daily-legend{color:var(--text-secondary)}[data-theme=glass] .confidence-high{background:linear-gradient(90deg,#007aff,#0a84ff)}[data-theme=glass] .confidence-mid-high{background:linear-gradient(90deg,#34c759,#30d158)}[data-theme=glass] .confidence-mid-low{background:linear-gradient(90deg,#ff9f0a,#ffb340)}[data-theme=glass] .confidence-low{background:linear-gradient(90deg,#ff3b30,#ff453a)}[data-theme=glass] .toggle-models-btn{background:var(--card-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-color:var(--glass-border);box-shadow:0 1px #fffc inset,var(--shadow)}[data-theme=glass] .toggle-models-btn:hover{background:#ffffffd9;box-shadow:0 1px #fffc inset,var(--shadow-lg)}[data-theme=glass] .model-comparison{background:var(--card-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-color:var(--glass-border);box-shadow:0 1px #fffc inset,var(--shadow)}[data-theme=glass] .comparison-table th{color:var(--text-secondary)}[data-theme=glass] .comparison-table .ensemble-row{background:#007aff14}[data-theme=glass] .spread-item{background:#ffffff80;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-color:var(--glass-border)}[data-theme=glass] .spread-label{color:var(--text-secondary)}[data-theme=glass] .spread-value,[data-theme=glass] .model-spread h4,[data-theme=glass] .comparison-table td,[data-theme=glass] .model-name,[data-theme=glass] .hourly-header h3,[data-theme=glass] .daily-forecast h3{color:var(--text-primary)}[data-theme=glass] .toggle-btn{color:var(--text-secondary)}[data-theme=glass] .toggle-btn:hover,[data-theme=glass] .result-name{color:var(--text-primary)}[data-theme=glass] .result-details{color:var(--text-secondary)}[data-theme=glass] .graph-label{fill:var(--text-secondary)}[data-theme=glass] .scale-label,[data-theme=glass] .graph-legend .legend-item{color:var(--text-secondary)}[data-theme=glass] .accuracy-badge{background:var(--card-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-color:var(--glass-border);box-shadow:0 1px #fffc inset,var(--shadow)}[data-theme=glass] .accuracy-high{background:#3b82f6e6;border-color:#3b82f666;color:#fff}[data-theme=glass] .accuracy-mid-high{background:#22c55ee6;border-color:#22c55e66;color:#fff}[data-theme=glass] .accuracy-mid-low{background:#f59e0be6;border-color:#f59e0b66;color:#fff}[data-theme=glass] .accuracy-low{background:#ef4444e6;border-color:#ef444466;color:#fff}[data-theme=glass] .app-footer{background:var(--card-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-top-color:var(--glass-border);box-shadow:0 -1px #ffffff80 inset}[data-theme=glass] .app-footer p{color:var(--text-secondary)}[data-theme=glass] .app-footer a{color:var(--primary-color)}[data-theme=glass] .theme-switcher-label{color:var(--text-secondary)}[data-theme=glass] .theme-btn{background:#fff9;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-color:var(--glass-border)}[data-theme=glass] .theme-btn:hover{background:#fffc}[data-theme=glass] .theme-btn.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff;box-shadow:0 2px 8px #007aff4d}[data-theme=glass] .unit-toggle{background:#fff9;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-color:var(--glass-border)}[data-theme=glass] .unit-btn.active{background:var(--primary-color);color:#fff;box-shadow:0 2px 8px #007aff4d}[data-theme=glass] .view-toggle{background:#fff9;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-color:var(--glass-border)}[data-theme=glass] .hour-selector{background:#ffffffb3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-color:var(--glass-border)}[data-theme=glass] .graph-grid{stroke:#0000000f}[data-theme=glass] .precip-area{fill:#5ac8fa33}[data-theme=glass] .loading-state,[data-theme=glass] .empty-state{color:var(--text-secondary)}[data-theme=glass] .error-state{background:#ff3b301a;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-color:#ff3b3033;color:#d70015}[data-theme=glass] .footer-controls{border-top-color:#0000000f}[data-theme=glass] .hourly-preview{background:var(--card-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-color:var(--glass-border)}[data-theme=glass] .hourly-preview-item{background:#ffffff80;border-color:#fff6}[data-theme=glass] .hourly-preview-title{color:var(--text-primary)}[data-theme=glass] .hourly-preview-time{color:var(--text-secondary)}[data-theme=glass] .hourly-preview-temp{color:var(--text-primary)}[data-theme=glass] .precip-alert{background:var(--card-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-color:var(--glass-border)}[data-theme=glass] .precip-alert-item{background:#ffffff80;border-color:#fff6}[data-theme=glass] .precip-alert-title{color:var(--text-primary)}[data-theme=glass] .precip-alert-label{color:var(--text-secondary)}[data-theme=glass] .precip-alert-value{color:var(--text-primary)}[data-theme=glass] .secondary-data-item{background:transparent;border:none}[data-theme=glass] .secondary-data-value{color:var(--text-primary)}[data-theme=glass] .secondary-data-label{color:var(--text-secondary)}[data-theme=glass] .three-day-forecast{background:var(--card-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-color:var(--glass-border)}[data-theme=glass] .three-day-item{background:transparent;border:none}[data-theme=glass] .three-day-title,[data-theme=glass] .three-day-name,[data-theme=glass] .three-day-high{color:var(--text-primary)}[data-theme=glass] .three-day-low{color:var(--text-secondary)}[data-theme=glass] .tab-bar{background:#ffffffb8;backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border-top-color:#ffffff80}[data-theme=glass] .settings-section{background:#fff9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-color:#ffffff80}[data-theme=glass] .settings-unit-btn{background:#ffffff80}[data-theme=glass] .settings-unit-btn.active{background:#007aff26}[data-theme=glass] .settings-icon-btn{background:#ffffff80}[data-theme=glass] .settings-icon-btn.active{background:#007aff26}[data-theme=glass] .icon-preview{background:#fff9;border-color:#ffffff80}[data-theme=glass] .tab-title{color:var(--text-primary)}[data-theme=glass] .settings-section-title{color:var(--text-secondary)}[data-theme=glass] .unit-symbol,[data-theme=glass] .theme-name,[data-theme=glass] .icon-style-name{color:var(--text-primary)}[data-theme=glass] .unit-name,[data-theme=glass] .settings-hint,[data-theme=glass] .current-location{color:var(--text-secondary)}[data-theme=glass] .map-layer-toggle,[data-theme=glass] .map-hour-toggle,[data-theme=glass] .map-current-data{background:#ffffffd9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}[data-theme=glass] .floating-hourly{background:#ffffffe6;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px)}[data-theme=glass] .weather-tooltip{background:#ffffffe6!important;backdrop-filter:blur(20px)!important;-webkit-backdrop-filter:blur(20px)!important}[data-theme=glass] .toggle-switch{background:#9696964d}[data-theme=glass] .toggle-switch.active{background:var(--primary-color)}[data-theme=glass] .settings-toggle-label{color:var(--text-primary)}[data-theme=glass] .recent-location-item{background:#ffffff80;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}[data-theme=glass] .recent-location-item:hover{background:var(--primary-color)}[data-theme=glass] .location-selector-btn{background:#ffffffb3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}[data-theme=glass] .location-dropdown{background:#ffffffe6;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}[data-theme=glass] .location-dropdown-item:hover{background:#6464c81a}[data-theme=glass] .location-dropdown-item.active{background:#6464c826}[data-theme=glass] .timeline-dial,[data-theme=glass] .forecast-card-floating{background:#ffffffbf;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}[data-theme=oled]{--primary-color: #3b82f6;--primary-dark: #2563eb;--bg-color: #000000;--card-bg: #0a0a0a;--card-bg-light: #141414;--text-primary: #ffffff;--text-secondary: #737373;--border-color: #262626;--accent-cyan: #3b82f6;--accent-orange: #f59e0b;--accent-green: #22c55e;--accent-blue: #0ea5e9;--confidence-high: #3b82f6;--confidence-mid-high: #22c55e;--confidence-mid-low: #f59e0b;--confidence-low: #ef4444;--shadow: none;--shadow-lg: none;--header-bg: #000000;--glass-bg: #0a0a0a;--glass-border: #262626;--glow: none}[data-theme=oled] body,[data-theme=oled] .app{background:#000}[data-theme=oled] .current-section,[data-theme=oled] .secondary-data-item{background:transparent;border:none}[data-theme=oled] .hourly-preview{background:var(--card-bg);border-color:var(--border-color)}[data-theme=oled] .hourly-preview-item{background:var(--card-bg-light);border-color:var(--border-color)}[data-theme=oled] .hourly-preview-precip{color:var(--accent-blue)}[data-theme=oled] .precip-alert{background:var(--card-bg);border-color:var(--border-color)}[data-theme=oled] .precip-alert-item{background:var(--card-bg-light);border-color:var(--border-color)}[data-theme=oled] .three-day-forecast{background:var(--card-bg);border-color:var(--border-color)}[data-theme=oled] .three-day-item{background:transparent;border:none}[data-theme=oled] .three-day-precip{color:var(--accent-blue)}[data-theme=oled] .model-section{background:transparent}[data-theme=oled] .toggle-models-btn{background:var(--card-bg);border-color:var(--border-color);color:var(--text-primary)}[data-theme=oled] .toggle-models-btn:hover{border-color:var(--accent-cyan)}[data-theme=oled] .model-spread{border-top-color:var(--border-color)}[data-theme=oled] .spread-item{background:var(--card-bg);border-color:var(--border-color)}[data-theme=oled] .spread-label{color:var(--text-secondary)}[data-theme=oled] .spread-value{color:var(--text-primary)}[data-theme=oled] .accuracy-badge{border-color:var(--border-color);background:var(--card-bg)}[data-theme=oled] .tab-bar{background:#000;border-top-color:var(--border-color)}[data-theme=oled] .tab-bar-item.active{color:var(--accent-cyan)}[data-theme=oled] .settings-section{background:var(--card-bg);border-color:var(--border-color)}[data-theme=oled] .toggle-switch{background:var(--border-color)}[data-theme=oled] .toggle-switch.active{background:var(--accent-cyan)}[data-theme=oled] .settings-unit-btn{background:var(--card-bg-light)}[data-theme=oled] .settings-unit-btn.active{border-color:var(--accent-cyan);background:#3b82f626}[data-theme=oled] .settings-theme-btn.active{border-color:var(--accent-cyan)}[data-theme=oled] .theme-preview-oled{background:#000;border-color:#262626}[data-theme=oled] .settings-icon-btn{background:var(--card-bg-light)}[data-theme=oled] .settings-icon-btn.active{border-color:var(--accent-cyan);background:#3b82f626}[data-theme=oled] .icon-preview{background:var(--card-bg);border-color:var(--border-color)}[data-theme=oled] .search-input{background:var(--card-bg);border-color:var(--border-color);color:var(--text-primary)}[data-theme=oled] .search-input:focus{border-color:var(--accent-cyan)}[data-theme=oled] .search-input::placeholder{color:var(--text-secondary)}[data-theme=oled] .search-results{background:#000;border-color:var(--border-color)}[data-theme=oled] .search-results li:hover,[data-theme=oled] .search-results li.selected{background:var(--card-bg-light)}[data-theme=oled] .search-no-results{background:#000;border-color:var(--border-color)}[data-theme=oled] .recent-location-item{background:var(--card-bg);border-color:var(--border-color)}[data-theme=oled] .recent-location-item:hover{background:var(--accent-cyan);border-color:var(--accent-cyan)}[data-theme=oled] .location-selector-btn{background:var(--card-bg);border-color:var(--border-color)}[data-theme=oled] .location-selector-btn:hover{border-color:var(--accent-cyan)}[data-theme=oled] .location-dropdown{background:#000;border-color:var(--border-color)}[data-theme=oled] .location-dropdown-item:hover{background:var(--card-bg-light)}[data-theme=oled] .location-dropdown-item.active{background:#3b82f626}[data-theme=oled] .daily-forecast{background:var(--card-bg);border-color:var(--border-color)}[data-theme=oled] .daily-header{color:var(--text-secondary);border-bottom-color:var(--border-color)}[data-theme=oled] .daily-item{border-bottom-color:var(--border-color)}[data-theme=oled] .daily-item:last-child{border-bottom:none}[data-theme=oled] .daily-item:hover{background:#3b82f60d}[data-theme=oled] .temp-low{color:var(--text-secondary)}[data-theme=oled] .day-precip{color:var(--accent-blue)}[data-theme=oled] .hourly-forecast{background:var(--card-bg);border-color:var(--border-color)}[data-theme=oled] .hourly-item{background:var(--card-bg-light);border-color:var(--border-color)}[data-theme=oled] .hourly-item:hover{border-color:var(--accent-cyan)}[data-theme=oled] .hour-precip{color:var(--accent-blue)}[data-theme=oled] .hour-toggle{background:var(--card-bg-light);border-color:var(--border-color)}[data-theme=oled] .toggle-btn{color:#e2e8f0}[data-theme=oled] .toggle-btn.active{background:var(--accent-cyan);color:#fff}[data-theme=oled] .floating-hourly{background:#000;border-top-color:var(--border-color)}[data-theme=oled] .map-layer-toggle,[data-theme=oled] .map-hour-toggle,[data-theme=oled] .map-current-data{background:var(--card-bg);border-color:var(--border-color)}[data-theme=oled] .map-layer-btn.active,[data-theme=oled] .map-hour-btn.active,[data-theme=oled] .dial-indicator{background:var(--accent-cyan)}[data-theme=oled] .dial-indicator:before{background:var(--accent-cyan)}[data-theme=oled] .weather-tooltip{background:#000!important;border-color:var(--border-color)!important}[data-theme=oled] .model-comparison{background:var(--card-bg);border-color:var(--border-color)}[data-theme=oled] .comparison-table th,[data-theme=oled] .comparison-table td{border-color:var(--border-color)}[data-theme=oled] .comparison-table .ensemble-row{background:#3b82f61a}[data-theme=oled] .hour-selector{background:var(--card-bg-light);border-color:var(--border-color)}[data-theme=oled] .loading-state,[data-theme=oled] .empty-state{color:var(--text-secondary)}[data-theme=oled] .error-state{background:#ef44441a;color:var(--confidence-low);border-color:#ef44444d}[data-theme=oled] .graph-grid{stroke:var(--border-color)}[data-theme=oled] .temp-point{stroke:#000}[data-theme=oled] .precip-area{fill:#0ea5e91a}[data-theme=oled] .hourly-scroll-wrapper:after{background:linear-gradient(to right,transparent,var(--card-bg))}[data-theme=oled] .hourly-scroll-wrapper:before{background:linear-gradient(to left,transparent,var(--card-bg))}[data-theme=oled] .graph-container:after{background:linear-gradient(to right,transparent,var(--card-bg))}[data-theme=oled] .graph-container:before{background:linear-gradient(to left,transparent,var(--card-bg))}[data-theme=oled] .timeline-dial{background:#000000d9;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}[data-theme=oled] .forecast-card-floating{background:#000000d9;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-top:1px solid rgba(255,255,255,.1)}
