*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6;color:#333;background-color:#f8f9fa;transition:background-color .3s ease,color .3s ease}body.dark-mode{color:#e9ecef;background-color:#1a1a1a}body.dark-mode .map-container,body.dark-mode .analysis{background:#2d2d2d;color:#e9ecef}body.dark-mode .insight-card{background:#3a3a3a;border-left-color:#13d0b4}body.dark-mode .legend-card{background:#2d2d2d;color:#e9ecef}body.dark-mode h1,body.dark-mode h2,body.dark-mode h3,body.dark-mode .analysis h2{color:#e9ecef}body.dark-mode .analysis h2{border-bottom-color:#13d0b4}body.dark-mode .methodology{border-top-color:#444}body.dark-mode .methodology p,body.dark-mode .subtitle{color:#b0b0b0}.container{max-width:1400px;margin:0 auto;padding:20px}header{margin-bottom:30px}.header-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.title-section{flex:1;text-align:center}.theme-toggle{background:#13d0b4;border:none;border-radius:50%;width:50px;height:50px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:20px;color:#fff;transition:all .3s ease;box-shadow:0 2px 8px #0000001a}.theme-toggle:hover{background:#10b49d;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}body.dark-mode .theme-toggle{background:#f59a66}body.dark-mode .theme-toggle:hover{background:#f08749}h1{font-size:2.5em;margin-bottom:10px;color:#2c3e50;font-weight:700}.subtitle{font-size:1.2em;color:#666;margin-bottom:20px}.content-wrapper{display:grid;grid-template-columns:2fr 1fr;gap:30px;margin-bottom:20px}.map-section{display:flex;flex-direction:column;gap:15px}.map-container{position:relative;background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;overflow:hidden}#map{height:600px;width:100%}.legend-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:12px}.legend h3{margin-bottom:10px;font-size:.9em;color:#2c3e50;text-align:center}.quartile-legend{display:flex;flex-direction:column;gap:12px}.quartile-item{display:flex;align-items:center;gap:6px;font-size:.7em;line-height:1.2;white-space:nowrap}.quartile-item span{color:#666;font-weight:500}body.dark-mode .quartile-item span{color:#b0b0b0}.analysis{background:#fff;padding:25px;border-radius:12px;box-shadow:0 4px 6px #0000001a}.analysis h2{margin-bottom:20px;color:#2c3e50;border-bottom:3px solid #13D0B4;padding-bottom:10px}.insights-grid{display:flex;flex-direction:column;gap:20px;margin-bottom:25px}.insight-card{padding:20px;background:#f8f9fa;border-radius:8px;border-left:4px solid #13D0B4}.insight-card h3{margin-bottom:10px;color:#2c3e50;font-size:1.1em}.insight-card ol{margin-left:20px}.insight-card ol li{margin-bottom:5px}.methodology{padding-top:20px;border-top:1px solid #e9ecef}.methodology h3{margin-bottom:10px;color:#2c3e50}.methodology p{color:#666;font-size:.95em}.methodology a{color:#13d0b4;text-decoration:none;font-weight:600;border-bottom:1px solid transparent;transition:all .2s ease}.methodology a:hover{color:#10b49d;border-bottom-color:#10b49d}body.dark-mode .methodology a{color:#13d0b4}body.dark-mode .methodology a:hover{color:#10b49d;border-bottom-color:#10b49d}.leaflet-popup-content-wrapper{border-radius:12px;box-shadow:0 8px 32px #0000001f;border:none;min-width:200px}.leaflet-popup-content{font-family:inherit;margin:0;padding:0}.leaflet-popup-tip{background:#fff;border:none;box-shadow:0 2px 8px #0000001a}.popup-content{padding:16px;text-align:left}.popup-title{font-size:1.1em;font-weight:600;color:#1a1a1a;margin-bottom:8px;line-height:1.3}.popup-score{font-size:.9em;color:#666;line-height:1.2}body.dark-mode .leaflet-popup-content-wrapper{background:#2d2d2d;color:#e9ecef}body.dark-mode .leaflet-popup-tip{background:#2d2d2d}body.dark-mode .popup-title{color:#e9ecef}body.dark-mode .popup-score{color:#b0b0b0}@media (max-width: 968px){.content-wrapper{grid-template-columns:1fr}.map-section{gap:10px}h1{font-size:2em}.header-content{justify-content:center;text-align:center}.title-section{order:1}.theme-toggle{order:2;margin-top:15px}}@media (max-width: 768px){.container{padding:15px}#map{height:400px}.legend-card{padding:10px}.quartile-legend{flex-direction:column!important;gap:8px!important}}
