.aqi-gmap-app{font-family:inherit;color:#0b2b52}.aqi-gmap-hero{background:linear-gradient(135deg,#063b70,#087bb7 55%,#11b9c8);color:#fff;padding:34px 28px;border-radius:18px 18px 0 0;display:flex;justify-content:space-between;gap:24px;align-items:center}.aqi-gmap-kicker,.aqi-compare-hero span{font-size:12px;font-weight:800;letter-spacing:.14em;opacity:.85}.aqi-gmap-hero h1{margin:7px 0;font-size:clamp(30px,4vw,48px);color:#fff}.aqi-gmap-hero p{margin:0;opacity:.92}.aqi-gmap-search{display:flex;min-width:330px;background:#fff;border-radius:12px;padding:5px}.aqi-gmap-search input{flex:1;border:0;padding:12px;outline:0}.aqi-gmap-search button,.compare-btn,.aqi-nearby-btn{border:0;border-radius:9px;padding:11px 16px;background:#0968d8;color:#fff;font-weight:700;cursor:pointer}.aqi-gmap-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;background:#f5f9fd;padding:12px}.aqi-gmap-stats div{background:#fff;border:1px solid #e1eaf3;border-radius:12px;padding:12px 16px}.aqi-gmap-stats b{display:block;font-size:24px}.aqi-gmap-stats span{font-size:12px;color:#64748b}.aqi-gmap-grid{display:grid;grid-template-columns:270px minmax(0,1fr);gap:0;background:#eaf3fb;border:1px solid #d8e7f3}.aqi-gmap-panel,.aqi-detail-panel{background:#fff;padding:16px}.aqi-detail-panel{display:none}.aqi-gmap-grid.details-open{grid-template-columns:270px minmax(0,1fr) 300px}.aqi-gmap-grid.details-open .aqi-detail-panel{display:block}.aqi-detail-close{float:right;border:0;background:#edf3f8;color:#0b2b52;border-radius:7px;padding:5px 9px;font-size:18px;line-height:1;cursor:pointer}.aqi-detail-close:hover{background:#dfeaf3}.aqi-map-wrap{position:relative;min-height:650px}.aqi-map-wrap #aqi-map-canvas{height:650px;width:100%}.aqi-map-message{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#fff;padding:12px 16px;border-radius:10px;box-shadow:0 5px 25px #0002;z-index:500}.aqi-tabs{display:flex;border-bottom:1px solid #e5e7eb;margin-bottom:14px}.aqi-tabs button{flex:1;background:none;border:0;padding:10px;font-weight:700;color:#64748b;cursor:pointer}.aqi-tabs button.active{color:#0968d8;border-bottom:3px solid #0968d8}.aqi-tab-panel{display:none}.aqi-tab-panel.active{display:block}.aqi-gmap-panel label{display:block;font-size:12px;font-weight:700;margin:0}.filter-level{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px;align-items:start;margin:10px 0}.filter-level>span{width:24px;height:24px;border-radius:50%;background:#e8f3fb;color:#0869cf;font-weight:800;font-size:11px;display:flex;align-items:center;justify-content:center;margin-top:22px}.aqi-gmap-panel select{display:block;width:100%;margin-top:6px;padding:10px;border:1px solid #d8e1eb;border-radius:8px;background:#fff;min-height:42px}.aqi-gmap-panel select:disabled{background:#f3f6f8;color:#94a3b8;cursor:not-allowed}.aqi-show-city-btn,.aqi-reset-btn,.aqi-nearby-btn{width:100%;margin-top:8px;border:0;border-radius:9px;padding:12px 14px;font-weight:800;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.aqi-show-city-btn{background:linear-gradient(135deg,#7b2cff,#4d5cff);color:#fff;box-shadow:0 6px 14px rgba(77,92,255,.22)}.aqi-show-city-btn:hover{transform:translateY(-1px);box-shadow:0 9px 18px rgba(77,92,255,.28)}.aqi-reset-btn{background:#edf3f8;color:#0b2b52}.aqi-reset-btn:hover{background:#e1ebf4}.aqi-nearby-btn{background:#0869cf;color:#fff!important;text-decoration:none;display:block;text-align:center;box-shadow:0 5px 12px rgba(8,105,207,.22)}.aqi-nearby-btn:hover{background:#0758b0;transform:translateY(-1px);box-shadow:0 8px 16px rgba(8,105,207,.3)}.filter-status{font-size:11px;color:#64748b;line-height:1.45;margin:10px 2px 0}.check{font-weight:500!important;display:block!important;margin:7px 0!important}.check input{margin-right:7px}.layer-title{font-weight:800}.layer-group{border:1px solid #e2eaf1;border-radius:10px;padding:10px;margin:10px 0}.layer-group strong{display:block;font-size:12px;margin-bottom:8px}.layer-note{font-size:12px;color:#64748b;line-height:1.5}.station-detail .station-card{margin-top:12px}.aqi-map-legend{margin-top:20px;border-top:1px solid #e5e7eb;padding-top:15px;font-size:12px}.aqi-map-legend h3{font-size:14px}.aqi-map-legend div{margin:8px 0}.aqi-map-legend i{display:inline-block;width:13px;height:13px;border-radius:50%;margin-right:8px;vertical-align:-2px}.c-good{background:#20a84a}.c-mod{background:#e7c600}.c-sens{background:#ff8b00}.c-unhealthy{background:#ef2b2b}.c-vu{background:#7a35c8}.c-haz{background:#7d1533}.detail-empty{text-align:center;color:#64748b;padding:70px 15px}.detail-icon{font-size:45px;color:#0a76c8}.detail-card h2{margin:4px 0 10px;font-size:28px}.detail-country{font-size:13px;color:#64748b}.detail-aqi{display:flex;align-items:center;gap:12px;padding:12px;border-radius:10px;margin:12px 0;font-weight:700}.detail-aqi b{font-size:34px}.detail-aqi span{font-size:13px}.detail-aqi.good{background:#eaf8ee}.detail-aqi.moderate{background:#fffbe3}.detail-aqi.sensitive{background:#fff2e2}.detail-aqi.unhealthy{background:#ffe7e7}.detail-aqi.very{background:#f1e9fb}.detail-aqi.hazardous{background:#f6e5ea}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.detail-grid div{border:1px solid #e3ebf2;border-radius:9px;padding:10px}.detail-grid b,.detail-grid span{display:block}.detail-grid span{font-size:18px;font-weight:700;margin-top:3px}.detail-actions{display:grid;gap:8px;margin-top:14px}.detail-actions a,.station-btn{display:block;text-align:center;border-radius:8px;padding:10px;background:#0869cf;color:#fff;text-decoration:none;border:0;font-weight:700;cursor:pointer}.station-result{margin-top:12px}.station-card{background:#eef8ff;border:1px solid #cfe7fa;border-radius:10px;padding:12px;display:grid;gap:4px;font-size:12px}.station-card b{font-size:18px}.station-none{font-size:12px;color:#64748b}.aqi-gmap-links{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;padding:14px;background:#fff;border:1px solid #dce8f2}.aqi-gmap-links a{padding:15px;border:1px solid #dbe7f0;border-radius:12px;text-decoration:none;color:#0b2b52}.aqi-gmap-links b,.aqi-gmap-links span{display:block}.aqi-gmap-links span{font-size:12px;color:#64748b;margin-top:4px}.aqi-map-content{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:28px;background:#f8fbfe}.aqi-latest-posts article{padding:10px 0;border-bottom:1px solid #e3eaf0}.aqi-latest-posts time{display:block;font-size:11px;color:#64748b}.aqi-latest-posts a{font-weight:800;text-decoration:none}.aqi-latest-posts p{font-size:12px;margin:5px 0}.aqi-map-source{padding:16px;font-size:14px;line-height:1.5;font-weight:400;color:#64748b}.aqi-map-source strong{font-weight:700}.aqi-map-source a{font-weight:700}.aqi-compare-hero{background:linear-gradient(135deg,#063b70,#0a88c7);color:#fff;padding:28px;border-radius:16px}.aqi-compare-hero h1{color:#fff;margin:6px 0}.aqi-compare-controls{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;margin:20px 0;padding:18px;background:#f6faff;border-radius:14px}.aqi-compare-controls label{font-weight:700;font-size:13px}.aqi-compare-controls select{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid #d5e1ec;border-radius:8px}.compare-results{min-height:150px}.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.compare-grid article{border:1px solid #dce8f2;border-radius:14px;padding:20px}.compare-grid article h2{margin:4px 0}.compare-aqi{font-size:38px;font-weight:800;padding:10px;border-radius:10px}.compare-aqi span{font-size:13px;display:block}.compare-aqi.good{background:#eaf8ee}.compare-aqi.moderate{background:#fffbe3}.compare-aqi.sensitive{background:#fff2e2}.compare-aqi.unhealthy{background:#ffe7e7}.compare-aqi.very{background:#f1e9fb}.compare-aqi.hazardous{background:#f6e5ea}.compare-grid dl{display:grid;grid-template-columns:1fr 1fr}.compare-grid dt,.compare-grid dd{padding:7px;border-bottom:1px solid #edf2f6;margin:0}.compare-grid dd{text-align:right;font-weight:700}.compare-table{overflow:auto;margin-top:18px}.compare-table table{width:100%;border-collapse:collapse}.compare-table th,.compare-table td{padding:12px;border:1px solid #e1e8ef;text-align:left}.compare-note{font-size:12px;color:#64748b;margin-top:20px}
@media(max-width:1050px){.aqi-gmap-grid,.aqi-gmap-grid.details-open{grid-template-columns:250px minmax(0,1fr)}.aqi-gmap-grid.details-open .aqi-detail-panel{display:block;grid-column:1/-1}.aqi-gmap-links{grid-template-columns:repeat(3,1fr)}.aqi-map-content{grid-template-columns:1fr}.aqi-gmap-search{min-width:250px}}
@media(max-width:760px){.aqi-gmap-hero{display:block}.aqi-gmap-search{margin-top:18px;min-width:0}.aqi-gmap-stats{grid-template-columns:1fr 1fr}.aqi-gmap-grid{display:block}.aqi-gmap-panel{border-bottom:1px solid #ddd}.aqi-map-wrap #aqi-map-canvas{height:480px}.aqi-gmap-links{grid-template-columns:1fr 1fr}.aqi-compare-controls{grid-template-columns:1fr}.compare-grid{grid-template-columns:1fr}}
.aqi-layer-guide{margin-top:14px;border:1px solid #dce8f2;border-radius:10px;padding:12px;background:#f7fbff}.layer-guide-title{font-weight:800;font-size:14px;color:#0b2b52}.aqi-layer-guide p{font-size:12px;line-height:1.5;color:#526579;margin:7px 0}.layer-guide-meta{font-size:11px;color:#64748b}.aqi-map-quick{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.aqi-map-quick a{display:inline-block;padding:9px 11px;border:1px solid #d9e6f1;border-radius:8px;text-decoration:none;font-size:12px;font-weight:700;color:#0968d8;background:#fff}.aqi-nearby-btn{display:block;text-align:center;text-decoration:none;box-sizing:border-box}.selected-layer{display:flex;justify-content:space-between;gap:10px;align-items:center;background:#f2f8fd;border:1px solid #dceaf4;border-radius:9px;padding:10px;margin:10px 0;font-size:12px}.selected-layer span{font-weight:800;white-space:nowrap}.station-source-note{font-size:11px;color:#64748b;line-height:1.5}.station-none{font-size:12px;color:#64748b;line-height:1.45}
@media(max-width:760px){.aqi-gmap-hero h1{font-size:32px}.aqi-gmap-stats{gap:7px}.aqi-gmap-stats div{padding:10px}.aqi-gmap-stats b{font-size:20px}.aqi-map-quick{display:grid;grid-template-columns:1fr}.aqi-map-quick a{text-align:center}}
.aqi-outlook{margin-top:16px;border:1px solid #dce8f2;border-radius:12px;padding:12px;background:#fbfdff;color:#0b2b52}.outlook-head{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:13px}.outlook-head span{font-size:10px;color:#64748b;font-weight:600}.outlook-tabs{display:flex;gap:6px;margin:10px 0}.outlook-tabs button{border:1px solid #d7e3ec;background:#fff;border-radius:7px;padding:6px 8px;font-size:11px;font-weight:700;color:#526579;cursor:pointer}.outlook-tabs button.active{background:#eaf4fc;color:#0869cf;border-color:#bcdcf3}.outlook-chart-wrap{width:100%;overflow:hidden;color:#0869cf}.outlook-chart-wrap svg{display:block;width:100%;height:auto}.outlook-chart-wrap text{font-size:9px;fill:#64748b}.outlook-foot,.outlook-note{font-size:10px;line-height:1.45;color:#64748b;margin:7px 0 0}

/* Colorful homepage quick-action cards */
.aqi-gmap-quick-tools{padding:18px;background:linear-gradient(135deg,#f5fbff,#f8f4ff);border:0;box-shadow:0 8px 24px rgba(11,43,82,.06)}
.aqi-gmap-quick-tools a{position:relative;overflow:hidden;border:0;color:#fff;min-height:86px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 6px 16px rgba(11,43,82,.12);transition:transform .18s ease,box-shadow .18s ease}
.aqi-gmap-quick-tools a:nth-child(1){background:linear-gradient(135deg,#0568d8,#12a6d8)}
.aqi-gmap-quick-tools a:nth-child(2){background:linear-gradient(135deg,#6d3bd1,#a04fd8)}
.aqi-gmap-quick-tools a:nth-child(3){background:linear-gradient(135deg,#0b8f70,#16b98a)}
.aqi-gmap-quick-tools a:nth-child(4){background:linear-gradient(135deg,#ed7a19,#f2b01e)}
.aqi-gmap-quick-tools a:nth-child(5){background:linear-gradient(135deg,#e34a73,#b83f9d)}
.aqi-gmap-quick-tools a:hover{transform:translateY(-3px);box-shadow:0 10px 22px rgba(11,43,82,.18);color:#fff}
.aqi-gmap-quick-tools b{font-size:16px;color:#fff}
.aqi-gmap-quick-tools span{font-size:12px;color:rgba(255,255,255,.9);margin-top:6px}
.aqi-map-source{background:#f7fbff}

@media(max-width:600px){.aqi-map-source{font-size:13px;line-height:1.5}}
