:root{--lahore-green: #075f46;--lahore-mint: #eaf8f2;--lahore-ink: #14231e;--lahore-muted: #60706a;--lahore-line: #dce7e2}.lahore-page-body{margin:0;background:#fff;color:var(--lahore-ink)}.lahore-page-content{padding-top:92px}.lahore-page .lahore-content{width:min(1440px,calc(100% - 48px));margin-inline:auto}.lahore-hero-section{padding:14px 0 76px;background:radial-gradient(circle at 80% 15%,rgba(42,190,137,.16),transparent 32%),linear-gradient(180deg,#f7fcfa,#fff)}.lahore-hero-section .live-badge-container{margin-bottom:26px}.lahore-breadcrumb{display:flex;gap:9px;margin-bottom:40px;color:#70827b;font-size:14px}.lahore-breadcrumb a{color:var(--lahore-green);text-decoration:none}.lahore-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(520px,720px);align-items:center;gap:clamp(36px,5vw,72px)}.lahore-kicker,.lahore-section-heading>p{margin:0 0 12px;color:#13845f;font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.lahore-intro h1{margin:0;color:var(--lahore-green);font-size:clamp(62px,9vw,132px);font-weight:800;letter-spacing:-.075em;line-height:.85}.lahore-lead{max-width:760px;margin:32px 0;color:#42534d;font-size:clamp(18px,2vw,24px);line-height:1.6}.lahore-lead strong{color:var(--lahore-ink)}.lahore-facts{display:flex;flex-wrap:wrap;gap:12px 36px}.lahore-facts div{display:grid;gap:4px}.lahore-facts span,.lahore-dial-updated{color:#7b8a85;font-size:12px;text-transform:uppercase;letter-spacing:.06em}.lahore-dial-column .aqi-dial-container{width:100%;max-width:none;min-height:500px;padding:clamp(22px,4vw,42px);border:2px solid rgba(var(--aqi-glow-rgb, 7, 95, 70),.55);border-radius:32px;background:#fff;box-shadow:0 0 0 5px rgba(var(--aqi-glow-rgb, 7, 95, 70),.07),0 0 34px rgba(var(--aqi-glow-rgb, 7, 95, 70),.22),0 30px 80px #1e493b1f}.lahore-dial-column .aqi-dial-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px}.lahore-dial-column .aqi-dial-location-selector{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;color:var(--lahore-green);background:var(--lahore-mint);border-radius:999px}.lahore-dial-column .aqi-title{margin:0;color:#64748b;font-size:20px;text-align:right}.lahore-dial-column #aqiStationInfo{margin:4px 0 0;color:#94a3b8;font-size:13px;text-align:right}.lahore-dial-column .aqi-dial-circle-container{position:relative;display:grid;min-height:350px;place-items:center}.lahore-dial-column #aqiDialChart{display:block;width:min(100%,560px);height:auto}.lahore-dial-column .aqi-number-overlay{margin-top:-10px;text-align:center}.lahore-dial-column .aqi-dial-value-number{font-size:clamp(52px,6vw,78px);font-weight:850;line-height:1}.lahore-dial-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px;margin:14px 0 12px}.lahore-dial-meta .aqi-dial-status-badge{display:inline-flex;align-items:center;padding:9px 20px;background:#fff;border-radius:999px;font-size:15px;font-weight:700}.lahore-yesterday-card{display:grid;gap:2px;padding:10px 18px;background:#f8fafc;border-radius:14px;text-align:center}.lahore-yesterday-card span{color:#64748b;font-size:12px}.lahore-yesterday-card strong{color:#334155;font-size:24px;font-weight:800}.lahore-dial-updated{text-align:center}.lahore-section{padding:clamp(72px,9vw,124px) 0}.lahore-soft-section{background:#f3faf7}.lahore-section-heading{max-width:900px;margin-bottom:38px;text-align:left}.lahore-section-heading h2,.lahore-section-heading h3{margin:0;color:var(--lahore-ink);font-size:clamp(38px,5vw,68px);letter-spacing:-.045em;line-height:1.04}.lahore-section-heading>span{display:block;max-width:640px;margin-top:14px;color:var(--lahore-muted);line-height:1.65;text-align:left}.lahore-stations-card,.lahore-forecast-widget,.lahore-history-widget{overflow:hidden;padding:clamp(16px,3vw,32px);border:1px solid var(--lahore-line);border-radius:24px;background:#fff;box-shadow:0 18px 48px #1b3e3314}.lahore-stations-card .station-rankings-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.lahore-stations-card .station-rankings-content{max-width:none;padding:0}.lahore-stations-card .station-rankings-table{width:100%;min-width:1080px;table-layout:fixed;border-collapse:collapse}.lahore-stations-card .station-rankings-table th:nth-child(1){width:84px}.lahore-stations-card .station-rankings-table th:nth-child(2){width:16%}.lahore-stations-card .station-rankings-table th:nth-child(3){width:82px}.lahore-stations-card .station-rankings-table th:nth-child(4){width:19%}.lahore-stations-card .station-rankings-table th:nth-child(11){width:12%}.lahore-stations-card .station-rankings-table th,.lahore-stations-card .station-rankings-table td{padding:18px 10px}.lahore-stations-card .station-rankings-table th:nth-child(n+5):nth-child(-n+10),.lahore-stations-card .station-rankings-table td:nth-child(n+5):nth-child(-n+10){text-align:center;font-variant-numeric:tabular-nums}.lahore-stations-card .station-rankings-table th:nth-child(11),.lahore-stations-card .station-rankings-table td:nth-child(11){text-align:right;white-space:nowrap}.lahore-stations-card .station-table-status-badge span{white-space:nowrap}.lahore-stations-card .table-header-badge{display:inline-flex;align-items:center;padding:5px 14px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;line-height:1}.lahore-rank-badge{color:#047857;background:#10b98124;border:1px solid rgba(16,185,129,.35)}.lahore-aqi-badge{color:#1064c4;background:#1882ff1f;border:1px solid rgba(24,130,255,.35)}.lahore-forecast-widget .aqi-forecast-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.lahore-location-pill{display:inline-flex;align-items:center;gap:7px;padding:9px 14px;color:var(--lahore-green);background:var(--lahore-mint);border-radius:999px;font-weight:700}.lahore-forecast-summary{display:grid;grid-template-columns:repeat(8,minmax(120px,1fr));gap:12px;overflow-x:auto;margin-bottom:8px;padding-bottom:6px}.lahore-forecast-summary article{display:grid;gap:6px;min-width:120px;padding:16px;border:1px solid #e6eeeb;border-radius:14px;background:#fafcfb}.lahore-forecast-summary time,.lahore-forecast-summary span{color:#75837e;font-size:12px}.lahore-forecast-summary strong{font-size:20px}.lahore-forecast-widget .aqi-forecast-title{margin:0;color:var(--lahore-ink);font-family:inherit;font-size:24px;font-weight:800;letter-spacing:-.02em}.lahore-forecast-widget .aqi-forecast-subtitle{margin:4px 0 0;color:var(--lahore-muted);font-family:inherit;font-size:14px}.lahore-forecast-widget .aqi-forecast-graph-container{position:relative;width:100%;height:390px;min-height:0;margin-top:24px;padding:0;background:transparent;border-radius:0;box-shadow:none}.lahore-forecast-widget .aqi-forecast-graph-container canvas{width:100%!important;height:100%!important;max-height:none}.lahore-empty-state{padding:56px 24px;text-align:center}.lahore-empty-state p{color:var(--lahore-muted)}.lahore-history-stat-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:24px}.lahore-history-stat-card{display:grid;gap:2px;padding:12px 16px;border-left:4px solid var(--stat-accent, #e2e8f0);background:#fafcfb;border-radius:0 12px 12px 0}.lahore-history-stat-card span{color:#64748b;font-size:13px}.lahore-history-stat-card strong{color:#1e293b;font-size:26px;font-weight:800;line-height:1.1}.lahore-history-stat-card small{color:#94a3b8;font-size:11px}.lahore-heatmap-scroll{overflow-x:auto}.lahore-heatmap-grid{display:grid;grid-template-columns:max-content repeat(24,minmax(30px,1fr));grid-auto-rows:30px;gap:6px;min-width:1040px}.lahore-heatmap-day{display:grid;align-items:center;height:30px;padding-right:8px;color:#65756f;font-size:12px;font-weight:700;white-space:nowrap}.lahore-heatmap-cell{display:grid;overflow:hidden;place-items:center;height:30px;border-radius:5px;color:transparent;font-size:9px;transition:transform .15s ease}.lahore-heatmap-cell:hover{z-index:2;color:#111;outline:2px solid #fff;transform:scale(1.25)}.lahore-heatmap-hour{align-self:center;color:#7a8983;font-size:10px;text-align:center}.lahore-history-widget .historical-aqi-scale-container{min-width:1040px;margin-top:24px}.lahore-history-widget .historical-aqi-scale-bar{display:flex;overflow:hidden;height:8px;border-radius:999px}.historical-aqi-scale-segment{flex:1}.lahore-history-stats{display:flex;gap:24px;justify-content:flex-end;margin-top:12px;color:var(--lahore-muted);font-size:13px}.lahore-advisory-section{color:#fff;background:#10231d}.lahore-advisory-section .lahore-section-heading h2{color:#fff}.lahore-advisory-section .lahore-section-heading>span{color:#aebdb7}.lahore-advisory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.lahore-advisory-card{border:1px solid rgba(255,255,255,.12);border-radius:18px;background:#ffffff0e}.lahore-advisory-card summary{display:flex;align-items:center;gap:14px;padding:20px;cursor:pointer;list-style:none}.lahore-advisory-card summary i{width:14px;height:14px;border-radius:50%;background:var(--advisory-color)}.lahore-advisory-card summary span{display:grid;flex:1}.lahore-advisory-card summary small{margin-top:3px;color:#aebdb7}.lahore-advisory-card>div{padding:0 20px 20px 48px;color:#d3ddd9;line-height:1.65}.lahore-about-grid{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(400px,1.2fr);gap:70px}.lahore-about-grid h2{margin:0;font-size:clamp(38px,5vw,64px);letter-spacing:-.045em;line-height:1.05}.lahore-about-copy{color:#4f635b;font-size:20px;line-height:1.8}.lahore-faq-list{max-width:1000px}.lahore-faq-list details{border-top:1px solid var(--lahore-line)}.lahore-faq-list details:last-child{border-bottom:1px solid var(--lahore-line)}.lahore-faq-list summary{display:flex;justify-content:space-between;gap:30px;padding:24px 0;cursor:pointer;list-style:none;font-size:20px;font-weight:750}.lahore-faq-list summary span{color:var(--lahore-green);font-size:26px}.lahore-faq-list p{max-width:780px;margin:-4px 0 24px;color:var(--lahore-muted);line-height:1.75}.sr-only{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}@media(max-width:980px){.lahore-hero-grid,.lahore-about-grid{grid-template-columns:1fr}.lahore-dial-column{max-width:680px}}@media(max-width:760px){.lahore-page-content{padding-top:72px}.lahore-page .lahore-content{width:min(100% - 28px,1440px)}.lahore-advisory-grid,.lahore-history-stat-cards{grid-template-columns:1fr}.lahore-dial-column .aqi-dial-container{min-height:410px}.lahore-dial-column .aqi-dial-circle-container{min-height:280px}}@media(max-width:480px){.lahore-intro h1{font-size:58px}.lahore-dial-column .aqi-dial-header{align-items:flex-start}.lahore-dial-column .aqi-title,.lahore-dial-column #aqiStationInfo{text-align:left}}
