@import url(https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.language-modal-overlay{align-items:center;animation:langFadeIn .25s ease-out forwards;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#0a192fbf;display:flex;height:100vh;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100vw;z-index:9999}@keyframes langFadeIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.language-modal-card{background:linear-gradient(145deg,#102542f2,#0d1b2afa);border:1px solid #3b82f659;border-radius:24px;box-shadow:0 20px 50px #0009,0 0 30px #2563eb33;color:#f8fafc;display:flex;flex-direction:column;gap:24px;max-width:460px;padding:32px;width:100%}.language-modal-head{align-items:center;display:flex;flex-direction:column;gap:12px;text-align:center}.language-modal-logo{filter:drop-shadow(0 0 10px rgba(59,130,246,.5));height:56px;width:56px}.language-modal-title{color:#60a5fa;font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin:0}.language-lang-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.language-lang-btn{background:#1e3a8a40;border:1px solid #3b82f640;border-radius:14px;color:#cbd5e1;cursor:pointer;font-size:.95rem;font-weight:600;padding:12px 16px;text-align:center;transition:all .18s ease}.language-lang-btn:hover{background:#2563eb59;border-color:#60a5fa80;color:#fff;transform:translateY(-2px)}.language-lang-btn.active{background:linear-gradient(135deg,#2563eb,#1d4ed8);border-color:#60a5fa;box-shadow:0 4px 14px #2563eb66;color:#fff}.language-modal-footer{display:flex;justify-content:flex-end}.language-close-btn{background:#ffffff14;border:1px solid #ffffff26;border-radius:12px;color:#94a3b8;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 20px;transition:all .15s ease}.language-close-btn:hover{background:#ffffff26;color:#fff}.nearest-toilets-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(145deg,#0f172acc,#070c1ae6);border:1px solid #3b82f640;border-radius:20px;box-shadow:0 12px 30px #0006,inset 0 1px 0 #ffffff14;margin:18px 0 24px;padding:18px 20px}.nearest-toilets-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:16px}.nearest-header-title-wrap{flex:1 1}.nearest-section-title{align-items:center;color:#f8fafc;display:flex;font-size:1.15rem;font-weight:800;gap:6px;letter-spacing:.04em;margin:0 0 2px}.title-icon{font-size:1.2rem}.nearest-section-subtitle{color:#94a3b8;font-size:.82rem;margin:0}.live-gps-badge{align-items:center;background:#2563eb2e;border:1px solid #3b82f666;border-radius:20px;color:#60a5fa;display:inline-flex;font-size:.75rem;font-weight:700;gap:6px;letter-spacing:.05em;padding:4px 10px;text-transform:uppercase}.gps-dot{animation:gps-pulse 1.8s ease-in-out infinite;background-color:#3b82f6;border-radius:50%;box-shadow:0 0 8px #3b82f6;height:8px;width:8px}@keyframes gps-pulse{0%,to{opacity:.6;transform:scale(.8)}50%{opacity:1;transform:scale(1.3)}}.nearest-toilets-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width:1100px){.nearest-toilets-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.nearest-toilets-grid{grid-template-columns:1fr}}.nearest-toilet-card{background:#1e293ba6;border:1px solid #ffffff1a;border-radius:14px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:14px;position:relative;transition:all .2s ease}.nearest-toilet-card:hover{background:#1e293bf2;border-color:#3b82f6;box-shadow:0 8px 20px #00000059,0 0 12px #3b82f626;transform:translateY(-3px)}.nearest-card-head{align-items:flex-start;display:flex;gap:8px;justify-content:space-between;margin-bottom:6px}.nearest-toilet-name{color:#f1f5f9;flex:1 1;font-size:.95rem;font-weight:700;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nearest-status-badge{border:1px solid #0000;border-radius:12px;font-size:.68rem;font-weight:700;padding:3px 8px;text-transform:uppercase;white-space:nowrap}.nearest-toilet-location{color:#94a3b8;font-size:.8rem;margin:0 0 12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nearest-card-footer{display:flex;flex-direction:column;gap:10px}.nearest-distance-info{font-size:.82rem}.distance-tag{color:#38bdf8;font-weight:600}.distance-tag.muted{color:#64748b;font-size:.78rem}.nearest-card-actions{grid-gap:6px;display:grid;gap:6px;grid-template-columns:1fr 1fr}.nearest-details-btn{background:#33415599;border:1px solid #ffffff1f;border-radius:8px;color:#cbd5e1;cursor:pointer;font-size:.78rem;font-weight:600;padding:7px 8px;text-align:center;transition:all .15s ease}.nearest-details-btn:hover{background:#475569e6;color:#fff}.nearest-navigate-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:8px;box-shadow:0 3px 10px #2563eb59;color:#fff;cursor:pointer;font-size:.78rem;font-weight:700;padding:7px 8px;text-align:center;transition:all .15s ease}.nearest-navigate-btn:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 4px 14px #2563eb80;transform:translateY(-1px)}:root{--bg-primary:#0f0f23;--bg-secondary:#1a1a2e;--bg-card:#ffffff14;--bg-card-hover:#ffffff1f;--text-primary:#fff;--text-secondary:#a0a0b8;--text-muted:#6b6b80;--brand-primary:#22c55e;--brand-secondary:#10b981;--brand-accent:#34d399;--status-good:#10b981;--status-good-glow:#10b98166;--status-moderate:#f59e0b;--status-moderate-glow:#f59e0b66;--status-critical:#ef4444;--status-critical-glow:#ef444466;--accent-cyan:#22d3ee;--accent-purple:#34d399;--accent-pink:#6ee7b7;--accent-orange:#fb923c;--gradient-primary:linear-gradient(135deg,#22c55e,#10b981 50%,#34d399);--gradient-card:linear-gradient(145deg,#ffffff1a,#ffffff0d);--gradient-mesh:linear-gradient(135deg,#0f0f23,#1a1a2e 50%,#064e3b);--shadow-glow:0 0 40px #22c55e4d;--shadow-card:0 8px 32px #0006;--shadow-card-hover:0 16px 48px #00000080;--glass-bg:#ffffff14;--glass-border:#ffffff1f;--glass-blur:blur(20px);--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:28px;--radius-full:9999px}*{box-sizing:border-box}body{background:radial-gradient(ellipse at 20% 20%,#22c55e40 0,#0000 50%),radial-gradient(ellipse at 80% 80%,#10b98133 0,#0000 50%),radial-gradient(ellipse at 50% 50%,#34d3991a 0,#0000 60%),#0f0f23;background:radial-gradient(ellipse at 20% 20%,#22c55e40 0,#0000 50%),radial-gradient(ellipse at 80% 80%,#10b98133 0,#0000 50%),radial-gradient(ellipse at 50% 50%,#34d3991a 0,#0000 60%),var(--bg-primary);color:#fff;color:var(--text-primary);font-family:Manrope,Segoe UI,sans-serif;margin:0;min-height:100vh;overflow-x:hidden}body:before{background-image:radial-gradient(circle at 25% 25%,#22c55e1a 0,#0000 50%),radial-gradient(circle at 75% 75%,#34d3991a 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:-1}.app-container{margin:0 auto;max-width:1400px;padding:30px 20px 60px}.main-header{animation:fade-slide .6s ease both;margin-bottom:32px;text-align:center}.eyebrow{align-items:center;background:#ffffff14;background:var(--glass-bg);border:1px solid #ffffff1f;border:1px solid var(--glass-border);border-radius:9999px;border-radius:var(--radius-full);color:#22d3ee;color:var(--accent-cyan);display:inline-flex;font-size:.75rem;font-weight:700;gap:10px;letter-spacing:.15em;margin:0;padding:8px 16px;text-transform:uppercase}.eyebrow:before{animation:pulse-glow 2s ease-in-out infinite;background:#22d3ee;background:var(--accent-cyan);border-radius:50%;content:"";height:8px;width:8px}@keyframes pulse-glow{0%,to{box-shadow:0 0 8px #22d3ee;box-shadow:0 0 8px var(--accent-cyan);transform:scale(1)}50%{box-shadow:0 0 20px #22d3ee,0 0 40px #22d3ee;box-shadow:0 0 20px var(--accent-cyan),0 0 40px var(--accent-cyan);transform:scale(1.2)}}.main-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#fff,#86efac 50%,#6ee7b7);-webkit-background-clip:text;background-clip:text;font-family:Outfit,Segoe UI,sans-serif;font-size:clamp(2rem,4vw,3.5rem);font-weight:800;line-height:1.15;margin:16px 0 8px;text-shadow:0 0 60px #10b9814d}.main-header h2{color:#a0a0b8;color:var(--text-secondary);font-family:Space Grotesk,sans-serif;font-size:clamp(1.1rem,2.5vw,1.4rem);font-weight:500;margin:0}.map-section{animation:fade-slide .7s ease both;border:1px solid #ffffff1f;border:1px solid var(--glass-border);border-radius:28px;border-radius:var(--radius-xl);box-shadow:0 0 40px #22c55e4d,0 8px 32px #0006;box-shadow:var(--shadow-glow),var(--shadow-card);overflow:hidden;position:relative}.map-section:before{background:linear-gradient(180deg,#0000 60%,#22c55e1a);content:"";inset:0;pointer-events:none;position:absolute;z-index:400}.toilet-map{background:#1a1a2e;background:var(--bg-secondary);height:clamp(380px,60vh,580px);width:100%}.leaflet-container{background:#1a1a2e!important;background:var(--bg-secondary)!important;font-family:Manrope,sans-serif!important}.leaflet-popup-content-wrapper{border:1px solid #ffffff1f!important;border:1px solid var(--glass-border)!important;border-radius:16px!important;box-shadow:0 20px 50px #00000080,0 0 30px #22c55e33!important;color:#fff!important;color:var(--text-primary)!important;overflow:hidden;padding:0!important}.leaflet-popup-content-wrapper,.leaflet-popup-tip{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0f0f23fa!important}.leaflet-popup-tip{border:1px solid #ffffff1f!important;border:1px solid var(--glass-border)!important}.leaflet-popup-content{margin:0!important}.leaflet-popup-close-button{align-items:center!important;border-radius:50%!important;color:#a0a0b8!important;color:var(--text-secondary)!important;display:flex!important;font-size:22px!important;height:36px!important;justify-content:center!important;padding:10px 14px!important;right:4px!important;top:4px!important;transition:all .2s ease!important;width:36px!important}.leaflet-popup-close-button:hover{background:#ef444433!important;color:#ef4444!important;transform:rotate(90deg)}.leaflet-control-zoom{border:none!important;box-shadow:0 8px 32px #0006!important;box-shadow:var(--shadow-card)!important}.leaflet-control-zoom a{background:#0f0f23e6!important;border:1px solid #ffffff1f!important;border:1px solid var(--glass-border)!important;color:#fff!important;color:var(--text-primary)!important;transition:all .2s ease!important}.leaflet-control-zoom a:hover{background:#22c55e!important;background:var(--brand-primary)!important}.custom-tooltip{background:#0000!important;border:none!important;box-shadow:none!important}.custom-tooltip:before{display:none!important}.leaflet-tooltip-top.custom-tooltip{margin-bottom:10px!important;padding:0!important}.tooltip-card{animation:tooltipFadeIn .2s ease;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0f0f23fa;border:1px solid #ffffff1f;border:1px solid var(--glass-border);border-radius:12px;box-shadow:0 10px 30px #0006,0 0 20px #22c55e33;min-width:160px;padding:12px 16px}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.tooltip-header{margin-bottom:8px}.tooltip-name{color:#fff;font-family:Outfit,sans-serif;font-size:14px;font-weight:700}.tooltip-status-row{align-items:center;display:flex;gap:0}.tooltip-status-dot{border-radius:50%;box-shadow:0 0 10px currentColor;height:10px;width:10px}.tooltip-status-text{flex:1 1;font-size:12px;font-weight:600}.tooltip-score{color:#a0a0b8;color:var(--text-secondary);font-size:12px;font-weight:600}.popup-card{min-width:220px;padding:16px}.popup-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.popup-title{font-size:16px;line-height:1.3;margin:0}.popup-title-wrap{grid-gap:6px;display:grid;gap:6px}.popup-badge{border-radius:20px;color:#fff;font-size:11px;letter-spacing:.5px;padding:4px 12px;white-space:nowrap}.popup-accessibility-badge,.popup-badge{font-weight:700;text-transform:uppercase}.popup-accessibility-badge{align-items:center;background:#6366f129;border:1px solid #6366f173;border-radius:999px;color:#c7d2fe;display:inline-flex;font-size:10px;gap:6px;letter-spacing:.04em;padding:3px 10px;width:-webkit-fit-content;width:fit-content}.popup-accessibility-icon{font-size:12px;line-height:1}.popup-location{align-items:center;display:flex;font-size:13px;gap:0;margin:0 0 14px}.popup-icon{font-size:12px}.popup-metrics{background:#ffffff0d;border-radius:12px;margin-bottom:14px;padding:12px}.popup-metric{padding:8px 0}.popup-metric+.popup-metric{border-top:1px solid #ffffff14}.popup-metric-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px}.popup-metric-label{color:#a0a0b8;color:var(--text-secondary);font-size:12px;font-weight:600}.popup-metric-value{color:#fff;font-family:Outfit,sans-serif;font-size:12px;font-weight:700}.popup-metric-bar{background:#ffffff1a;border-radius:10px;height:6px;overflow:hidden}.popup-metric-fill{border-radius:10px;height:100%;transition:width .4s ease}.popup-metric-fill.health{background:linear-gradient(90deg,#10b981,#34d399);box-shadow:0 0 10px #10b98180}.popup-metric-fill.cleanliness{background:linear-gradient(90deg,#f59e0b,#fbbf24);box-shadow:0 0 10px #f59e0b80}.popup-metric-fill.water{background:linear-gradient(90deg,#22d3ee,#67e8f9);box-shadow:0 0 10px #22d3ee80}.popup-actions{margin-bottom:10px}.popup-btn{align-items:center;border-radius:10px;display:flex;flex:1 1;font-size:12px;gap:0;justify-content:center;padding:10px 12px}.popup-btn:hover{filter:brightness(1.1);transform:translateY(-2px)}.btn-icon{font-size:14px}.popup-btn-details{background:linear-gradient(135deg,#22d3ee,#06b6d4);box-shadow:0 4px 15px #22d3ee4d}.popup-btn-complaint{background:linear-gradient(135deg,#34d399,#6ee7b7);box-shadow:0 4px 15px #34d3994d}.popup-btn-directions{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 15px #10b9814d;width:100%}.custom-marker-icon{transition:transform .2s ease}.custom-marker-icon:hover{transform:scale(1.15) translateY(-3px);z-index:1000!important}.user-location-icon{animation:userPulse 2s ease-in-out infinite}@keyframes userPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.2)}}@keyframes userLocationPulse{0%,to{box-shadow:0 0 0 0 #22c55e66}50%{box-shadow:0 0 0 15px #22c55e00}}.toilets-toggle-wrap{margin:36px 0 24px;text-align:center}.all-toilets-btn{background:linear-gradient(135deg,#22c55e,#10b981 50%,#34d399);background:var(--gradient-primary);border:none;border-radius:9999px;border-radius:var(--radius-full);box-shadow:0 4px 20px #22c55e66,0 0 40px #10b98133;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;overflow:hidden;padding:14px 32px;position:relative;transition:all .3s ease}.all-toilets-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";inset:0;position:absolute;transform:translateX(-100%);transition:transform .5s ease}.all-toilets-btn:hover{box-shadow:0 8px 30px #22c55e80,0 0 60px #10b9814d;transform:translateY(-3px)}.all-toilets-btn:hover:before{transform:translateX(100%)}.toilets-grid{grid-gap:24px;align-items:stretch;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.toilet-card{animation:fade-slide .5s ease both;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);background:linear-gradient(145deg,#ffffff1a,#ffffff0d);background:var(--gradient-card);border:1px solid #ffffff1f;border:1px solid var(--glass-border);border-radius:28px;border-radius:var(--radius-xl);box-shadow:0 8px 32px #0006;box-shadow:var(--shadow-card);display:flex;flex-direction:column;height:100%;overflow:hidden;padding:24px;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.toilet-card:before{background:linear-gradient(135deg,#22c55e,#10b981 50%,#34d399);background:var(--gradient-primary);content:"";height:3px;left:0;position:absolute;right:0;top:0}.toilet-card:after{background:radial-gradient(circle,#22c55e26,#0000 60%);border-radius:50%;content:"";height:100%;pointer-events:none;position:absolute;right:-50%;top:-50%;transition:all .4s ease;width:100%}.toilet-card:hover{border-color:#10b9814d;box-shadow:0 16px 48px #00000080;box-shadow:var(--shadow-card-hover);transform:translateY(-8px)}.toilet-card:hover:after{transform:scale(1.5)}.toilet-card.good-card{border-color:#10b98140}.toilet-card.good-card:before{background:linear-gradient(90deg,#10b981,#34d399,#6ee7b7)}.toilet-card.moderate-card{border-color:#f59e0b40}.toilet-card.moderate-card:before{background:linear-gradient(90deg,#f59e0b,#fbbf24,#fcd34d)}.toilet-card.critical-card{animation:critical-pulse 2s ease-in-out infinite;border-color:#ef444440}.toilet-card.critical-card:before{background:linear-gradient(90deg,#ef4444,#f87171,#fca5a5)}.toilet-card.in-use-card{border-color:#f973164d}.toilet-card.in-use-card:before{background:linear-gradient(90deg,#f97316,#fb923c,#fdba74)}.toilet-card.free-card{border-color:#22c55e47}.toilet-card.free-card:before{background:linear-gradient(90deg,#22c55e,#4ade80,#86efac)}@keyframes critical-pulse{0%,to{box-shadow:0 8px 32px #0006,0 0 20px #ef444466;box-shadow:var(--shadow-card),0 0 20px var(--status-critical-glow)}50%{box-shadow:0 8px 32px #0006,0 0 40px #ef444466;box-shadow:var(--shadow-card),0 0 40px var(--status-critical-glow)}}.toilet-card-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:20px}.toilet-name{color:#fff;color:var(--text-primary);font-family:Outfit,Segoe UI,sans-serif;font-size:1.25rem;font-weight:700;line-height:1.3;margin:0}.toilet-location{align-items:center;color:#a0a0b8;color:var(--text-secondary);display:flex;font-size:.9rem;gap:0;margin:6px 0 0}.accessibility-badge{align-items:center;background:#6366f129;border:1px solid #6366f173;border-radius:9999px;border-radius:var(--radius-full);color:#c7d2fe;display:inline-flex;font-size:.7rem;font-weight:700;gap:8px;letter-spacing:.07em;margin-bottom:10px;padding:5px 12px;text-transform:uppercase}.accessibility-icon{font-size:.95rem;line-height:1}.toilet-type-chip{align-items:center;background:#38bdf829;border:1px solid #38bdf873;border-radius:9999px;border-radius:var(--radius-full);color:#bae6fd;display:inline-flex;font-size:.7rem;gap:6px;letter-spacing:.06em;margin-bottom:10px;padding:5px 12px}.status-badge,.toilet-type-chip{font-weight:700;text-transform:uppercase}.status-badge{border-radius:9999px;border-radius:var(--radius-full);box-shadow:0 4px 15px #0000004d;color:#fff;font-size:.75rem;letter-spacing:.05em;padding:8px 16px;white-space:nowrap}.status-badge.good{background:linear-gradient(135deg,#10b981,#34d399);box-shadow:0 4px 20px #10b98166;box-shadow:0 4px 20px var(--status-good-glow)}.status-badge.moderate{background:linear-gradient(135deg,#f59e0b,#fbbf24);box-shadow:0 4px 20px #f59e0b66;box-shadow:0 4px 20px var(--status-moderate-glow)}.status-badge.critical{animation:badge-pulse 1.5s ease-in-out infinite;background:linear-gradient(135deg,#ef4444,#f87171);box-shadow:0 4px 20px #ef444466;box-shadow:0 4px 20px var(--status-critical-glow)}.status-badge.in-use{background:linear-gradient(135deg,#f97316,#fb923c);box-shadow:0 4px 20px #f9731666}.status-badge.free{background:linear-gradient(135deg,#22c55e,#4ade80);box-shadow:0 4px 20px #22c55e59}@keyframes badge-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.toilet-kpi-row{background:#ffffff14;background:var(--glass-bg);border:1px solid #ffffff1f;border:1px solid var(--glass-border);border-radius:20px;border-radius:var(--radius-lg);flex-wrap:wrap;gap:16px;justify-content:flex-start;margin-bottom:20px;padding:16px}.health-orb,.toilet-kpi-row{align-items:center;display:flex}.health-orb{background:radial-gradient(circle at 30% 30%,#fff3,#ffffff0d);border:2px solid;border-radius:50%;flex-direction:column;height:80px;justify-content:center;position:relative;transition:all .3s ease;width:80px}.health-orb:before{background:inherit;border-radius:50%;content:"";filter:blur(12px);inset:-4px;opacity:.5;position:absolute;z-index:-1}.health-orb.healthy{border-color:#10b981;border-color:var(--status-good);box-shadow:0 0 30px #10b98166,inset 0 0 20px #10b98133;box-shadow:0 0 30px var(--status-good-glow),inset 0 0 20px #10b98133}.health-orb.warning{border-color:#f59e0b;border-color:var(--status-moderate);box-shadow:0 0 30px #f59e0b66,inset 0 0 20px #f59e0b33;box-shadow:0 0 30px var(--status-moderate-glow),inset 0 0 20px #f59e0b33}.health-orb.critical{animation:orb-pulse 1.5s ease-in-out infinite;border-color:#ef4444;border-color:var(--status-critical);box-shadow:0 0 30px #ef444466,inset 0 0 20px #ef444433;box-shadow:0 0 30px var(--status-critical-glow),inset 0 0 20px #ef444433}@keyframes orb-pulse{0%,to{box-shadow:0 0 30px #ef444466;box-shadow:0 0 30px var(--status-critical-glow)}50%{box-shadow:0 0 50px #ef444466,0 0 80px #ef444466;box-shadow:0 0 50px var(--status-critical-glow),0 0 80px var(--status-critical-glow)}}.health-orb-label{color:#a0a0b8;color:var(--text-secondary);font-size:.6rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.health-orb-value{color:#fff;color:var(--text-primary);font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:800}.usage-count{align-items:center;background:#ffffff14;background:var(--glass-bg);border:1px solid #ffffff1f;border:1px solid var(--glass-border);border-radius:12px;border-radius:var(--radius-md);color:#a0a0b8;color:var(--text-secondary);display:inline-flex;font-size:.85rem;font-weight:600;gap:0;padding:10px 16px}.sensor-chip{background:#0ea5e924;border:1px solid #38bdf866;border-radius:12px;border-radius:var(--radius-md);color:#d0f2ff;font-weight:700}.fan-alert-chip,.sensor-chip{align-items:center;display:inline-flex;font-size:.83rem;padding:10px 14px}.fan-alert-chip{background:#ef44442e;border:1px solid #f8717180;border-radius:12px;border-radius:var(--radius-md);color:#fecaca;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.toilet-metrics{background:#ffffff14;background:var(--glass-bg);border:1px solid #ffffff1f;border:1px solid var(--glass-border);border-radius:20px;border-radius:var(--radius-lg);margin-bottom:20px;padding:16px}.metric-item{background:#ffffff08;border:1px solid #ffffff0d;border-radius:12px;border-radius:var(--radius-md);padding:12px}.metric-item+.metric-item{margin-top:12px}.metric-item.healthy{background:linear-gradient(90deg,#10b9811a,#0000);border-color:#10b98133}.metric-item.warning{background:linear-gradient(90deg,#f59e0b1a,#0000);border-color:#f59e0b33}.metric-item.critical{background:linear-gradient(90deg,#ef44441a,#0000);border-color:#ef444433}.metric-label{color:#a0a0b8;color:var(--text-secondary);font-size:.85rem;justify-content:space-between;margin-bottom:12px}.metric-label,.metric-name{align-items:center;display:flex}.metric-name{font-weight:600;gap:10px}.metric-name:before{border-radius:50%;content:"";height:8px;width:8px}.metric-item.healthy .metric-name:before{background:#10b981;background:var(--status-good)}.metric-item.warning .metric-name:before{background:#f59e0b;background:var(--status-moderate)}.metric-item.critical .metric-name:before{background:#ef4444;background:var(--status-critical)}.metric-value{color:#fff;color:var(--text-primary);font-family:Outfit,sans-serif;font-weight:700}.metric-bar{background:#ffffff1a;border-radius:9999px;border-radius:var(--radius-full);height:8px;overflow:hidden;position:relative}.metric-bar:before{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";inset:0;position:absolute}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.metric-bar-fill{border-radius:inherit;height:100%;position:relative;transition:width .6s cubic-bezier(.4,0,.2,1)}.metric-bar-fill.health{background:linear-gradient(90deg,#10b981,#34d399);box-shadow:0 0 15px #10b98166;box-shadow:0 0 15px var(--status-good-glow)}.metric-bar-fill.cleanliness{background:linear-gradient(90deg,#f59e0b,#fbbf24);box-shadow:0 0 15px #f59e0b66;box-shadow:0 0 15px var(--status-moderate-glow)}.metric-bar-fill.water{background:linear-gradient(90deg,#22d3ee,#67e8f9);box-shadow:0 0 15px #22d3ee66}.toilet-card-actions{grid-gap:10px;display:grid;gap:10px;margin-top:auto}.complaint-btn,.submit-btn{background:linear-gradient(135deg,#22c55e,#10b981 50%,#34d399);background:var(--gradient-primary);border:none;border-radius:12px;border-radius:var(--radius-md);box-shadow:0 4px 20px #22c55e4d;color:#fff;cursor:pointer;font-size:.95rem;font-weight:700;overflow:hidden;padding:14px 20px;position:relative;transition:all .3s ease;width:100%}.complaint-btn:before,.submit-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.complaint-btn:hover,.submit-btn:hover:not(:disabled){box-shadow:0 8px 30px #22c55e66;transform:translateY(-2px)}.complaint-btn:hover:before,.submit-btn:hover:before{left:100%}.payment-btn{background:linear-gradient(145deg,#121212f0,#050505f0);border:1px solid #fffc;border-radius:12px;border-radius:var(--radius-md);box-shadow:0 8px 24px #00000073;color:#fff;cursor:pointer;font-size:.9rem;font-weight:700;padding:12px 18px;transition:transform .25s ease,box-shadow .25s ease,opacity .25s ease;width:100%}.payment-btn:hover:not(:disabled){border-color:#fff;box-shadow:0 10px 30px #000000a6;transform:translateY(-2px)}.payment-btn:disabled{cursor:not-allowed;opacity:.62;transform:none}.direction-btn{background:linear-gradient(135deg,#2f86d0,#1f669f);border:1px solid #50a8ff80;border-radius:12px;border-radius:var(--radius-md);box-shadow:0 4px 18px #2f86d047;color:#fff;cursor:pointer;font-size:.9rem;font-weight:700;padding:12px 18px;transition:transform .25s ease,box-shadow .25s ease,opacity .25s ease;width:100%}.direction-btn:hover:not(:disabled){box-shadow:0 8px 24px #2f86d066;transform:translateY(-2px)}.direction-btn:disabled{cursor:not-allowed;opacity:.58;transform:none}.toilet-rating-shell{grid-gap:8px;display:grid;gap:8px;margin-top:10px;min-height:52px}.toilet-rating-toggle{grid-gap:8px;align-items:center;background:linear-gradient(140deg,#091927b3,#07131e9e);border:1px solid #94dcff52;border-radius:12px;color:#deeff8;cursor:pointer;display:grid;gap:8px;grid-template-columns:1fr auto auto;padding:10px 12px;transition:border-color .2s ease,transform .2s ease;width:100%}.toilet-rating-toggle b{color:#fff2a8;font-size:.9rem}.toilet-rating-toggle small{color:#a9d2e7;font-size:.75rem;font-weight:700}.toilet-rating-toggle:hover{border-color:#94dcff85;transform:translateY(-1px)}.toilet-rating-toggle.open{border-color:#facc1573}.toilet-rating-box{grid-gap:7px;background:linear-gradient(140deg,#091927b3,#07131e9e);border:1px solid #94dcff42;border-radius:12px;display:grid;gap:7px;padding:10px}.toilet-rating-head{align-items:center;color:#acd2e4;display:flex;font-size:.82rem;gap:8px;justify-content:space-between}.toilet-rating-head b{color:#fff2a8;font-size:.88rem}.toilet-rating-subline{color:#9ec6db;font-size:.76rem}.toilet-rating-stars{display:flex;gap:6px}.toilet-star-btn{background:#ffffff12;border:1px solid #ffffff2e;border-radius:10px;color:#6e86a0;cursor:pointer;font-size:1.05rem;height:34px;transition:transform .16s ease,border-color .16s ease,color .16s ease,background .16s ease;width:34px}.toilet-star-btn.active{border-color:#facc158c;color:#facc15}.toilet-star-btn.mine{background:#facc152e}.toilet-star-btn:hover:not(:disabled){border-color:#facc15ad;transform:translateY(-1px)}.toilet-star-btn:disabled{cursor:not-allowed;opacity:.7}.toilet-rating-note{color:#9dc4d7;font-size:.78rem;margin-top:-2px}.toilet-rating-actions{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.toilet-rating-mode-btn{background:#071724a3;border:1px solid #9ed5f357;border-radius:10px;color:#c4e3f0;cursor:pointer;font-size:.78rem;font-weight:700;min-height:34px;transition:border-color .2s ease,color .2s ease,transform .2s ease}.toilet-rating-mode-btn:hover{border-color:#7de0b799;transform:translateY(-1px)}.toilet-rating-mode-btn.active{background:#facc151f;border-color:#facc1599;color:#fff3b2}.toilet-rating-form{grid-gap:8px;display:grid;gap:8px}.toilet-rating-field-label{color:#9ec6db;font-size:.75rem;letter-spacing:.04em;text-transform:uppercase}.toilet-review-comment{background:#071724a3;border:1px solid #9ed5f357;border-radius:10px;color:#f0fcff;font:inherit;min-height:72px;padding:9px 10px;resize:vertical;width:100%}.toilet-review-comment:focus{border-color:#7de0b7a8;box-shadow:0 0 0 2px #7de0b729;outline:none}.toilet-review-submit-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.toilet-review-submit-btn{background:linear-gradient(135deg,#22c55e,#10b981);border:1px solid #ffffff47;border-radius:10px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:700;min-height:34px;padding:0 12px;transition:transform .2s ease,opacity .2s ease}.toilet-review-submit-btn:hover:not(:disabled){transform:translateY(-1px)}.toilet-review-submit-btn:disabled{cursor:not-allowed;opacity:.7}.toilet-review-list{grid-gap:8px;display:grid;gap:8px}.toilet-review-item{grid-gap:6px;background:#08192694;border:1px solid #9ed5f338;border-radius:10px;display:grid;gap:6px;padding:8px}.toilet-review-item-head{align-items:center;display:flex;gap:8px;justify-content:space-between}.toilet-review-item-head strong{color:#eaf9ff;font-size:.8rem}.toilet-review-item-head span{color:#95bed1;font-size:.72rem}.toilet-review-item-stars{display:inline-flex;gap:3px}.toilet-review-star{color:#5f7d95;font-size:.9rem}.toilet-review-star.active{color:#facc15}.toilet-review-item-comment{color:#d3ebf7;font-size:.82rem;line-height:1.4;margin:0}.toilet-review-item-comment.empty{color:#93b6c7;font-style:italic}.submit-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.empty-state,.loading-state{color:#a0a0b8;color:var(--text-secondary);padding:50px 20px;text-align:center}.loading-spinner{animation:spin .9s linear infinite;border:3px solid #22c55e33;border-radius:50%;border-top-color:#22c55e;border-top:3px solid var(--brand-primary);box-shadow:0 0 20px #10b98166;box-shadow:0 0 20px var(--status-good-glow);height:50px;margin:0 auto 16px;width:50px}.modal-overlay,.portal-modal-overlay{animation:fade-in .3s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000bf;display:grid;inset:0;padding:20px;place-items:center;position:fixed;z-index:9999}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.modal-content,.portal-modal-card{animation:modal-slide .4s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);background:#0f0f23f5;border:1px solid #ffffff1f;border:1px solid var(--glass-border);border-radius:28px;border-radius:var(--radius-xl);box-shadow:0 25px 50px -12px #00000080,0 0 40px #22c55e33;color:#f8fafc;max-height:min(92vh,860px);overflow-y:auto;overscroll-behavior:contain;padding:28px;position:relative;width:min(500px,94vw)}@keyframes modal-slide{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.portal-modal-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:12px}.portal-modal-header h3{color:#60a5fa;font-size:1.25rem;margin:0}.modal-close-btn,.portal-modal-close{align-items:center;background:#ef444433;border:none;border-radius:50%;color:#ef4444;cursor:pointer;display:flex;font-size:20px;height:36px;justify-content:center;position:absolute;right:16px;top:16px;transition:all .2s ease;width:36px;z-index:10}.modal-close-btn:hover,.portal-modal-close:hover{background:#ef4444;color:#fff;transform:rotate(90deg)}.modal-title{color:#fff;color:var(--text-primary);font-family:Outfit,Segoe UI,sans-serif;font-size:1.5rem;font-weight:700;margin:0 0 20px}.modal-title,.payment-success-modal{text-align:center}.payment-success-label{color:#e0f2feb8;font-size:.8rem;letter-spacing:.08em;margin:8px 0 4px;text-transform:uppercase}.payment-success-code{color:#facc15;font-size:2rem;font-weight:800;letter-spacing:.08em;margin:0}.payment-qr-wrap{background:#fff;border-radius:14px;margin:10px auto 8px;padding:10px;width:-webkit-max-content;width:max-content}.payment-qr-token{color:#e2e8f0c7;font-size:.82rem;margin:0;word-break:break-all}.form-group{margin-bottom:16px}.complaint-form{grid-gap:12px;display:grid;gap:12px}.complaint-form .form-group{margin-bottom:0}.complaint-camera-box{grid-gap:10px;background:#ffffff14;background:var(--glass-bg);border:1px solid #ffffff1f;border:1px solid var(--glass-border);border-radius:12px;border-radius:var(--radius-md);display:grid;gap:10px;padding:10px}.complaint-camera-top-actions{display:flex;justify-content:flex-end}.complaint-camera-capture-wrap{grid-gap:8px;display:grid;gap:8px}.complaint-camera-live{background:#02070d;border:1px solid #ffffff2e;border-radius:12px;border-radius:var(--radius-md);max-height:42vh;min-height:220px;object-fit:cover;width:100%}.complaint-camera-actions{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.complaint-camera-btn{background:linear-gradient(135deg,#22c55e,#10b981 50%,#34d399);background:var(--gradient-primary);border:none;border-radius:12px;border-radius:var(--radius-md);color:#fff;cursor:pointer;font-size:.84rem;font-weight:700;padding:10px 12px}.complaint-camera-btn.secondary{background:linear-gradient(135deg,#334155,#1f2937)}.complaint-camera-btn:disabled{cursor:not-allowed;opacity:.58}.complaint-camera-preview-wrap{grid-gap:8px;display:grid;gap:8px}.complaint-camera-preview{background:#07111a;border:1px solid #fff3;border-radius:12px;border-radius:var(--radius-md);max-height:240px;object-fit:cover;width:100%}.complaint-camera-hint{color:#a0a0b8;color:var(--text-secondary);font-size:.78rem}.complaint-form-submit-row{background:linear-gradient(180deg,#0f0f2300,#0f0f23f5 42%);bottom:-1px;padding-top:8px;position:-webkit-sticky;position:sticky;z-index:2}.form-label{color:#a0a0b8;color:var(--text-secondary);display:block;font-size:.9rem;font-weight:600;margin-bottom:8px}.form-file,.form-input,.form-select,.form-textarea{background:#ffffff14;background:var(--glass-bg);border:1px solid #ffffff1f;border:1px solid var(--glass-border);border-radius:12px;border-radius:var(--radius-md);box-sizing:border-box;color:#fff;color:var(--text-primary);font:inherit;font-size:.95rem;padding:12px 16px;transition:all .2s ease;width:100%}.form-input::placeholder,.form-textarea::placeholder{color:#6b6b80;color:var(--text-muted)}.form-file,.form-select{cursor:pointer}.form-select option{background:#1a1a2e;background:var(--bg-secondary);color:#fff;color:var(--text-primary)}.form-file:focus,.form-input:focus,.form-select:focus,.form-textarea:focus{background:#22c55e1a;border-color:#22c55e;border-color:var(--brand-primary);box-shadow:0 0 0 3px #22c55e33;outline:none}.form-textarea{min-height:120px;resize:vertical}.form-message{border-radius:12px;border-radius:var(--radius-md);font-size:.9rem;margin-top:12px;padding:12px 16px}.form-message.success{background:#10b9811a;border:1px solid #10b9814d;color:#34d399}.form-message.error{background:#ef44441a;border:1px solid #ef44444d;color:#f87171}.popup-card{min-width:200px;padding:4px}.popup-title{color:#fff;color:var(--text-primary);font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:700;margin:0 0 6px}.popup-location{margin:0 0 8px}.popup-location,.popup-status{color:#a0a0b8;color:var(--text-secondary);font-size:.85rem}.popup-status{margin:0 0 12px}.popup-status b{color:#fff;color:var(--text-primary)}.popup-actions{display:flex;gap:0;margin-bottom:8px}.popup-btn{border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:.8rem;font-weight:600;padding:8px 12px;transition:all .2s ease}.popup-btn:hover{transform:translateY(-1px)}.popup-btn-primary{background:linear-gradient(135deg,#22c55e,#10b981);box-shadow:0 4px 15px #22c55e4d}.popup-btn-secondary{background:linear-gradient(135deg,#22d3ee,#06b6d4);box-shadow:0 4px 15px #22d3ee4d}.popup-btn-route{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 15px #10b9814d;width:100%}@keyframes spin{to{transform:rotate(1turn)}}@keyframes fade-slide{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.toilet-card:first-child{animation-delay:0s}.toilet-card:nth-child(2){animation-delay:.05s}.toilet-card:nth-child(3){animation-delay:.1s}.toilet-card:nth-child(4){animation-delay:.15s}.toilet-card:nth-child(5){animation-delay:.2s}.toilet-card:nth-child(6){animation-delay:.25s}@media (max-width:768px){.app-container{padding:20px 12px 40px}.main-header h1{font-size:1.8rem}.toilets-grid{gap:16px;grid-template-columns:1fr}.toilet-kpi-row{align-items:stretch;flex-direction:column}.health-orb{height:70px;width:70px}.popup-actions{flex-direction:column}.toilet-card{padding:18px}}@media (max-width:480px){.eyebrow{font-size:.65rem;padding:6px 12px}.main-header h1{font-size:1.5rem}.all-toilets-btn{font-size:.9rem;padding:12px 24px}}.toilet-card-focused{animation:focus-card-pop .8s ease;border-color:#22d3eebf!important;box-shadow:0 0 0 2px #22d3ee80,0 12px 30px #081f2c73!important}@keyframes focus-card-pop{0%{transform:scale(.98)}60%{transform:scale(1.02)}to{transform:scale(1)}}.custom-popup .leaflet-popup-content-wrapper{overflow:visible!important}.custom-popup .leaflet-popup-content{margin:0!important}.custom-popup .leaflet-popup-close-button{background:#0c1224f2!important;border:1px solid #ffffff2e!important;border-radius:999px!important;color:#fff!important;height:30px!important;line-height:26px!important;padding:0!important;right:-12px!important;text-align:center!important;top:-12px!important;width:30px!important;z-index:1200!important}.custom-popup .leaflet-popup-close-button:hover{background:#d34646f2!important;color:#fff!important;transform:none!important}.custom-popup .popup-header{padding-right:28px}.map-tools{margin-bottom:16px}.map-quick-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.map-quick-btn{background:#ffffff14;border:1px solid #fff3;border-radius:999px;color:#fff;color:var(--text-primary);cursor:pointer;font-size:.82rem;font-weight:700;padding:9px 14px;transition:transform .2s ease,border-color .2s ease,background .2s ease}.map-quick-btn:hover{border-color:#22d3ee9e;transform:translateY(-1px)}.map-quick-btn.active{background:linear-gradient(135deg,#22d3ee47,#2563eb52);border-color:#22d3eeb3}.map-quick-btn.map-quick-btn-reset{background:#ef444424;border-color:#ef444473}.map-search-form{grid-gap:10px;align-items:center;display:grid;gap:10px;grid-template-columns:1fr auto auto}.map-search-input{background:#ffffff12;border:1px solid #ffffff2e;border-radius:999px;color:#fff;color:var(--text-primary);font-size:.94rem;height:46px;padding:0 16px}.map-search-input:focus{border-color:#22d3eeb3;box-shadow:0 0 0 3px #22d3ee33;outline:none}.map-search-btn{background:linear-gradient(135deg,#22d3ee,#2563eb);border:none;border-radius:999px;box-shadow:0 8px 24px #2563eb4d;color:#fff;cursor:pointer;font-weight:700;height:46px;padding:0 18px;transition:transform .2s ease,box-shadow .2s ease}.map-search-btn:hover{box-shadow:0 12px 30px #2563eb66;transform:translateY(-1px)}.map-search-voice-btn{background:linear-gradient(135deg,#0ea5e9,#14b8a6);box-shadow:0 8px 24px #14b8a647}.map-search-voice-btn.active{background:linear-gradient(135deg,#10b981,#22c55e);box-shadow:0 12px 28px #22c55e5c}.map-search-voice-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.58}.map-search-results{margin-top:10px}.search-results-list{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.search-result-card{background:#ffffff0f;border:1px solid #ffffff24;border-radius:12px;color:#fff;color:var(--text-primary);cursor:pointer;padding:10px 12px;text-align:left;transition:border-color .2s ease,transform .2s ease,background .2s ease}.search-result-card:hover{background:#22d3ee14;border-color:#22d3ee8c;transform:translateY(-1px)}.search-result-name{display:block;font-weight:700;margin-bottom:3px}.search-result-location{display:block;font-size:.82rem}.search-empty,.search-result-location{color:#a0a0b8;color:var(--text-secondary)}.search-empty{border:1px dashed #fff3;border-radius:12px;font-size:.9rem;padding:10px 12px}.map-filter-message{background:#ef444424;border:1px solid #ef444466;border-radius:12px;color:#ffcbcb;font-size:.88rem;margin-top:10px;padding:10px 12px}.map-focus-card{background:#10b9811f;border:1px solid #7de0b76b;border-radius:14px;margin-top:10px;padding:12px}.map-focus-head{align-items:center;display:flex;gap:10px;justify-content:space-between}.map-focus-head h4{color:#d9fff0;font-size:1rem;margin:0}.map-focus-head span{color:#8cf6c9;font-size:.82rem;font-weight:700}.map-focus-card p{color:#e6f7ff;font-weight:600;margin:8px 0 2px}.map-focus-card small{color:#a6c7d4}.map-focus-actions{display:flex;gap:8px;margin-top:10px}.map-focus-actions button{background:linear-gradient(135deg,#2563eb,#22d3ee);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:.78rem;font-weight:700;padding:8px 10px}.cleanest-panel{background:#071d29a6;border:1px solid #7de0b759;border-radius:18px;margin-top:14px;padding:14px;scroll-margin-top:88px}.cleanest-panel-head h3{color:#e7fff8;margin:0}.cleanest-panel-head p{color:#9ac2cf;font-size:.84rem;margin:3px 0 0}.cleanest-list{grid-gap:10px;display:grid;gap:10px;margin-top:12px}.cleanest-item{grid-gap:10px;align-items:center;background:#091624b3;border:1px solid #93cdff3d;border-radius:12px;display:grid;gap:10px;grid-template-columns:auto 1fr auto;padding:10px}.cleanest-item.best{background:linear-gradient(120deg,#10b9813d,#071624c7);border-color:#34d399b8}.cleanest-rank{align-items:center;background:#22d3ee33;border-radius:10px;color:#dff8ff;display:inline-flex;font-size:.84rem;font-weight:800;height:36px;justify-content:center;min-width:36px}.cleanest-info h4{color:#f2fdff;font-size:.95rem;margin:0}.cleanest-info p{color:#a6c3d0;font-size:.78rem;margin:3px 0 0}.cleanest-score{color:#84f1bc;font-size:.92rem;font-weight:800}.cleanest-actions{display:flex;gap:8px;grid-column:1/-1}.cleanest-actions button{background:linear-gradient(135deg,#2563eb,#22d3ee);border:none;border-radius:10px;color:#fff;cursor:pointer;flex:1 1;font-size:.78rem;font-weight:700;padding:8px 10px}.details-mode-note{background:#22d3ee1f;border:1px solid #22d3ee59;border-radius:12px;color:#b8ecff;font-size:.9rem;font-weight:600;margin:0 0 14px;padding:10px 12px}.map-pin-highlight{filter:drop-shadow(0 0 8px rgba(34,211,238,.7))}@media (max-width:768px){.map-quick-actions{display:grid}.map-quick-actions,.map-search-form{grid-template-columns:1fr}.map-search-btn{width:100%}}.portal-splash{background:radial-gradient(900px 460px at 15% 10%,#22d3ee2e,#0000 60%),radial-gradient(900px 460px at 85% 90%,#34d3991f,#0000 60%),#0b1020;display:grid;min-height:100vh;padding:16px;place-items:center}.portal-splash-core{background:#ffffff0d;border:1px solid #ffffff29;border-radius:18px;box-shadow:0 16px 44px #020a1973;padding:28px 24px;text-align:center;width:min(460px,92vw)}.portal-splash-logo{animation:splash-float 1.8s ease-in-out infinite;filter:drop-shadow(0 0 14px rgba(34,211,238,.7));height:92px;object-fit:contain;width:92px}.portal-splash-core h1{color:#fff;font-family:Outfit,sans-serif;margin:14px 0 6px}.portal-splash-core p{color:#9fb6cc;font-size:.92rem;margin:0 0 16px}.portal-loader-grid{grid-gap:0;display:grid;gap:0;grid-template-columns:repeat(4,1fr);margin:0 auto 14px;width:150px}.portal-loader-grid span{animation:splash-bars 1.1s ease-in-out infinite;background:linear-gradient(90deg,#22d3ee,#2563eb);border-radius:999px;height:10px}.portal-loader-grid span:nth-child(2){animation-delay:.15s}.portal-loader-grid span:nth-child(3){animation-delay:.3s}.portal-loader-grid span:nth-child(4){animation-delay:.45s}.portal-loader-line{background:#ffffff1f;border-radius:999px;height:8px;overflow:hidden;width:100%}.portal-loader-line-fill{animation:splash-progress 2s linear infinite;background:linear-gradient(90deg,#22d3ee,#34d399);border-radius:inherit;height:100%;width:45%}.portal-auth-shell{--auth-cyan:#fff;--auth-blue:#d5d5d5;--auth-mint:#fff;--auth-text:#fff;--auth-muted:#c6c6c6;align-items:center;background:#050913;display:flex;isolation:isolate;justify-content:center;min-height:100vh;overflow:hidden;padding:clamp(14px,2vw,26px);perspective:1300px;position:relative}.portal-auth-stars{height:100%;inset:0;min-height:auto;pointer-events:none;position:absolute!important;z-index:0}.portal-auth-stars .parallax-stars-atmosphere{background:radial-gradient(ellipse at bottom,#112133 0,#040810 100%)}.portal-auth-video{animation:none;filter:none;height:100%;inset:0;object-fit:cover;opacity:1;position:absolute;transform:none;width:100%;z-index:0}.portal-auth-aurora{animation:auth-aurora-shift 15s ease-in-out infinite alternate;background:radial-gradient(circle at 20% 20%,#46e7ff54 0,#0000 42%),radial-gradient(circle at 80% 70%,#66ffc838 0,#0000 45%),radial-gradient(circle at 40% 88%,#4f78ff3d 0,#0000 50%);filter:blur(22px);inset:-18%;pointer-events:none;position:absolute;z-index:1}.portal-auth-grid{animation:auth-grid-drift 16s linear infinite;background-image:linear-gradient(#46e7ff1f 1px,#0000 0),linear-gradient(90deg,#46e7ff1f 1px,#0000 0);background-size:46px 46px;inset:0;-webkit-mask-image:radial-gradient(circle at center,#000 42%,#0000 90%);mask-image:radial-gradient(circle at center,#000 42%,#0000 90%);transform-origin:center;z-index:2}.portal-auth-grid,.portal-auth-orb{pointer-events:none;position:absolute}.portal-auth-orb{border-radius:999px;filter:blur(1px);z-index:3}.portal-auth-orb-one{animation:auth-orb-one-move 9s ease-in-out infinite;background:radial-gradient(circle at 30% 30%,#46e7ffe0,#08142c00);height:clamp(180px,24vw,330px);right:clamp(10px,6vw,100px);top:clamp(24px,8vh,80px);width:clamp(180px,24vw,330px)}.portal-auth-orb-two{animation:auth-orb-two-move 11s ease-in-out infinite;background:radial-gradient(circle at 60% 38%,#66ffc8a3,#050f2600);bottom:clamp(30px,7vh,100px);height:clamp(220px,28vw,360px);left:clamp(0px,5vw,90px);width:clamp(220px,28vw,360px)}.portal-auth-card-wrap{animation:none;position:relative;transform:none;transform-style:flat;z-index:4}.portal-auth-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(155deg,#0d0d0deb,#020202f2),linear-gradient(145deg,#ffffff14,#ffffff05);border:1px solid #ffffffa3;border-radius:24px;box-shadow:0 30px 70px #000c,inset 0 1px 0 #ffffff52,inset 0 -20px 42px #0000007a;overflow:hidden;padding:clamp(18px,2.2vw,28px);position:relative;width:min(560px,95vw)}.portal-auth-card>*{position:relative;z-index:1}.portal-auth-card:before{border:1px solid #ffffff47;border-radius:inherit;content:"";inset:0;pointer-events:none;position:absolute;z-index:2}.portal-auth-card:after{animation:auth-scan-sweep 6.5s linear infinite;background:linear-gradient(180deg,#fff0,#ffffff42,#fff0);content:"";height:240%;left:-20%;pointer-events:none;position:absolute;top:-150%;transform:rotate(16deg);width:140%;z-index:0}.portal-auth-head{margin-bottom:14px;position:relative;text-align:center;z-index:1}.portal-auth-logo{animation:auth-logo-pulse 2.8s ease-in-out infinite;filter:drop-shadow(0 0 10px rgba(255,255,255,.6)) drop-shadow(0 0 22px rgba(255,255,255,.25));height:64px;object-fit:contain;width:64px}.portal-auth-head h1{color:var(--auth-text);font-family:Outfit,Segoe UI,sans-serif;font-size:clamp(1.34rem,2vw,1.64rem);letter-spacing:.03em;margin:10px 0 6px;text-shadow:0 0 18px #ffffff3d;text-transform:uppercase}.portal-auth-head p{color:var(--auth-muted);font-size:.95rem;letter-spacing:.06em;margin:0;text-transform:uppercase}.portal-auth-role-switch{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:12px;position:relative;z-index:1}.portal-auth-role-switch button{background:#070707d1;border:1px solid #ffffff80;border-radius:12px;color:#f1f1f1;cursor:pointer;font-size:.79rem;font-weight:700;letter-spacing:.05em;padding:10px 8px;text-transform:uppercase;transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease,color .18s ease}.portal-auth-role-switch button:hover{border-color:#fffffff2;color:#fff;transform:translateY(-1px)}.portal-auth-role-switch button.active{background:linear-gradient(130deg,#2c2c2ceb,#0e0e0ef2);border-color:#fffffff2;box-shadow:0 0 16px #ffffff2e;color:#fff}.portal-auth-msg{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:12px;font-size:.9rem;margin-bottom:12px;padding:11px 13px;position:relative;z-index:1}.portal-auth-msg.ok{background:#282828bf;border:1px solid #ffffff80;color:#fff}.portal-auth-msg.err{background:#222222d6;border:1px solid #ffffff80;color:#fff}.portal-auth-tabs{grid-gap:9px;display:grid;gap:9px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:14px;position:relative;z-index:1}.portal-auth-tabs button{background:#080808d6;border:1px solid #ffffff75;border-radius:12px;color:#efefef;cursor:pointer;font-size:.82rem;font-weight:700;letter-spacing:.04em;padding:10px 8px;text-transform:uppercase;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,color .18s ease}.portal-auth-tabs button:hover{border-color:#fffffff2;color:#fff;transform:translateY(-1px)}.portal-auth-tabs button.active{background:linear-gradient(135deg,#303030e6,#0e0e0ef2);border-color:#fffffff2;box-shadow:0 0 16px #ffffff2e;color:#fff}.portal-auth-form{grid-gap:10px;display:grid;gap:10px;position:relative;z-index:1}.portal-auth-form input{background:#080808e0;border:1px solid #ffffff80;border-radius:12px;color:#fff;font-size:.95rem;height:45px;padding:0 13px;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;width:100%}.portal-auth-form input::placeholder{color:#d6d6d6cc}.portal-auth-form input:focus{background:#000000f2;border-color:#fffffff5;box-shadow:0 0 0 3px #ffffff29,0 0 20px #ffffff1f;outline:none}.portal-auth-form button{animation:auth-btn-glow 3s ease-in-out infinite;background:linear-gradient(140deg,#303030f2,#0b0b0bfa);background-size:180% 180%;border:1px solid #ffffffe0;border-radius:12px;color:#fff;cursor:pointer;font-weight:700;height:46px;letter-spacing:.05em;text-transform:uppercase;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.portal-auth-form button:hover:not(:disabled){box-shadow:0 10px 22px #0009,0 0 16px #ffffff2e;transform:translateY(-1px)}.portal-auth-form button:disabled{box-shadow:none;cursor:not-allowed;opacity:.72}.portal-google-auth{grid-gap:10px;display:grid;gap:10px;margin-top:12px;position:relative;z-index:1}.portal-auth-divider{color:#d6d6d6;font-size:.78rem;letter-spacing:.12em;margin:0;text-align:center;text-transform:uppercase;width:100%}.portal-auth-divider span{display:inline-block;padding:0 8px}.portal-google-button-host{align-items:center;display:flex;justify-content:center;min-height:42px}.portal-google-hint{color:#d3d3d3;font-size:.82rem;margin:0;text-align:center}.portal-google-retry-btn{background:#080808d6;border:1px solid #ffffffb3;border-radius:999px;color:#fff;cursor:pointer;font-size:.78rem;justify-self:center;letter-spacing:.08em;padding:8px 16px;text-transform:uppercase}.portal-google-retry-btn:hover{background:#1a1a1af2}.disabled-friendly-panel{background:#081c26b8;border-color:#7de0b78c}.portal-bypass-wrap{grid-gap:8px;display:grid;gap:8px;margin-top:14px;text-align:center}.portal-bypass-btn{background:#070707d9;border:1px solid #ffffffc7;border-radius:999px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:700;letter-spacing:.09em;padding:10px 16px;text-transform:uppercase;transition:background-color .18s ease,transform .18s ease,opacity .18s ease}.portal-bypass-btn:hover:not(:disabled){background:#181818f2;transform:translateY(-1px)}.portal-bypass-btn:disabled{cursor:not-allowed;opacity:.7}.portal-bypass-wrap p{color:#d4d4d4;font-size:.8rem;margin:0}.portal-forgot-wrap{grid-gap:13px;display:grid;gap:13px}.portal-reset-dev-note{color:#d3d3d3;font-size:.86rem;line-height:1.4;margin:0}.portal-reset-dev-note b{color:#fff}.portal-userbar{align-items:center;background:#ffffff12;border:1px solid #ffffff2e;border-radius:999px;display:inline-flex;gap:8px;margin-top:14px;padding:8px 12px}.portal-userbar span{color:#c8d8e9;font-size:.9rem;font-weight:600}.portal-userbar button{background:linear-gradient(135deg,#ef4444,#b91c1c);border:none;border-radius:999px;color:#fff;cursor:pointer;font-size:.78rem;padding:6px 10px}@keyframes splash-bars{0%,to{opacity:1;transform:scaleY(1)}50%{opacity:.7;transform:scaleY(.45)}}@keyframes splash-progress{0%{transform:translateX(-120%)}to{transform:translateX(240%)}}@keyframes splash-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes auth-video-drift{0%{transform:translate3d(-1%,-1%,-320px) scale(1.22)}to{transform:translate3d(1%,1%,-320px) scale(1.26)}}@keyframes auth-aurora-shift{0%{transform:rotate(0deg) scale(1)}to{transform:rotate(8deg) scale(1.08)}}@keyframes auth-grid-drift{0%{transform:translateY(0)}to{transform:translateY(46px)}}@keyframes auth-orb-one-move{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(14px,-18px,0) scale(1.08)}}@keyframes auth-orb-two-move{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(-10px,16px,0) scale(1.06)}}@keyframes auth-card-float{0%,to{transform:rotateX(4deg) rotateY(-7deg) translateY(0)}50%{transform:rotateX(1deg) rotateY(6deg) translateY(-8px)}}@keyframes auth-scan-sweep{0%{opacity:0;transform:translateY(-120%) rotate(16deg)}14%{opacity:1}28%{opacity:0;transform:translateY(135%) rotate(16deg)}to{opacity:0;transform:translateY(135%) rotate(16deg)}}@keyframes auth-logo-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@media (max-width:900px){.portal-auth-card-wrap{animation-duration:9s}}@media (max-width:640px){.portal-auth-shell{padding:12px;perspective:none}.portal-auth-video{height:100%;inset:0;width:100%}.portal-auth-card-wrap{animation:none;transform:none;width:100%}.portal-auth-card{border-radius:18px;padding:16px;width:100%}.portal-auth-tabs{gap:0}.portal-auth-role-switch,.portal-auth-tabs{grid-template-columns:1fr}.portal-auth-tabs button{font-size:.78rem;padding:11px 8px}.portal-auth-head h1{letter-spacing:.02em}}@media (prefers-reduced-motion:reduce){.portal-auth-card-wrap,.portal-auth-card:after,.portal-auth-form button,.portal-auth-logo,.portal-auth-video{animation:none!important}}.app-container{position:relative}.portal-main-content{grid-gap:18px;display:grid;gap:18px}.portal-footer{color:#9fb8ce;font-size:.82rem;letter-spacing:.04em;margin-top:20px;text-align:center}.portal-footer p{margin:0}.portal-menu-toggle{align-items:center;background:#071623db;border:1px solid #7de0b766;border-radius:14px;box-shadow:0 12px 28px #00000059;cursor:pointer;display:flex;flex-direction:column;gap:6px;height:48px;justify-content:center;left:14px;position:fixed;top:14px;width:48px;z-index:1200}.portal-menu-toggle span{background:#c9fff1;border-radius:999px;display:block;height:2.5px;transition:transform .18s ease,opacity .18s ease;width:22px}.portal-menu-toggle.open span:first-child{transform:translateY(8px) rotate(45deg)}.portal-menu-toggle.open span:nth-child(2){opacity:0}.portal-menu-toggle.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.portal-side-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#02080e94;inset:0;opacity:0;pointer-events:none;position:fixed;transition:opacity .18s ease;z-index:1090}.portal-side-overlay.show{opacity:1;pointer-events:auto}.portal-side-drawer{background:linear-gradient(180deg,#061823f5,#071422f7);border-right:1px solid #7de0b73d;box-shadow:18px 0 42px #00000080;display:flex;flex-direction:column;gap:14px;height:100vh;left:0;padding:20px 14px 16px;position:fixed;top:0;transform:translateX(-102%);transition:transform .22s ease;width:min(330px,86vw);z-index:1150}.portal-side-drawer.open{transform:translateX(0)}.portal-side-close{align-self:flex-end;background:#081d2eb3;border:1px solid #b8e1ff4d;border-radius:10px;color:#d8f2ff;cursor:pointer;font-size:1.15rem;height:34px;width:34px}.portal-side-profile{align-items:center;background:#071e2fc7;border:1px solid #7be5b94d;border-radius:14px;cursor:pointer;display:flex;gap:10px;padding:10px;text-align:left;width:100%}.portal-side-avatar{align-items:center;background:linear-gradient(135deg,#39d98a,#30b9ee);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-weight:700;height:44px;justify-content:center;overflow:hidden;width:44px}.portal-side-avatar img{height:100%;object-fit:cover;width:100%}.portal-side-profile-text{grid-gap:1px;display:grid;gap:1px}.portal-side-profile-text strong{color:#e8fdff;font-size:.95rem}.portal-side-profile-text small{color:#9ec5d0;font-size:.75rem}.portal-side-nav{grid-gap:0;display:grid;gap:0}.portal-side-item,.portal-side-logout{align-items:center;background:#0a1d2cb8;border:1px solid #a9e0ff2e;border-radius:12px;color:#d4edf6;cursor:pointer;display:flex;font-size:.92rem;font-weight:600;gap:10px;padding:11px;text-align:left;transition:transform .16s ease,border-color .16s ease;width:100%}.portal-side-item:hover,.portal-side-logout:hover{border-color:#7de0b77a;transform:translateX(3px)}.portal-side-item.active{background:linear-gradient(120deg,#228eff52,#39d98a42);border-color:#7de0b79e}.portal-side-icon{align-items:center;color:#9dd7ff;display:inline-flex;flex-shrink:0;height:20px;justify-content:center;width:20px}.portal-contact-icon svg,.portal-side-icon svg{stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;height:16px;width:16px}.portal-side-logout{background:linear-gradient(120deg,#4e1014cc,#751616cc);border-color:#fea9a947;color:#ffd3d3;margin-top:auto}.portal-content-panel{background:#091b2aa6;border:1px solid #ffffff24;border-radius:18px;box-shadow:0 20px 42px #00000052;padding:16px}.portal-panel-header{margin-bottom:14px}.portal-panel-header h3{color:#e4fbff;font-size:1.22rem;margin:0}.portal-panel-header p{color:#a5c7d3;font-size:.88rem;margin:4px 0 0}.payment-section-panel{background:linear-gradient(160deg,#0e0e0ee6,#050505e6);border-color:#ffffff42}.payment-section-selected{background:#00000073;border:1px solid #ffffff52;border-radius:13px;margin-bottom:12px;padding:12px}.payment-section-selected small{color:#c8c8c8;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.payment-section-selected h4{color:#fff;margin:6px 0 4px}.payment-section-selected p{color:#d0d0d0;font-size:.88rem;margin:0}.payment-plan-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.payment-plan-card{grid-gap:8px;background:#0000008c;border:1px solid #ffffff52;border-radius:13px;display:grid;gap:8px;padding:12px}.payment-plan-head{align-items:baseline;display:flex;gap:8px;justify-content:space-between}.payment-plan-head h4{color:#fff;font-size:.98rem;margin:0}.payment-plan-head strong{color:#f4f4f4}.payment-plan-card p{color:#cfcfcf;font-size:.82rem;line-height:1.4;margin:0}.payment-plan-btn{background:linear-gradient(140deg,#323232f2,#0a0a0af2);border:1px solid #ffffffbd;border-radius:10px;color:#fff;cursor:pointer;font-weight:700;height:40px;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.payment-plan-btn:hover:not(:disabled){box-shadow:0 10px 20px #00000073;transform:translateY(-1px)}.payment-plan-btn:disabled{cursor:not-allowed;opacity:.68}.payment-section-message{background:#101010e0;border-color:#ffffff61;color:#f3f3f3}.portal-complaint-stats{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px}.complaint-stat-card{grid-gap:2px;background:#05131fa8;border:1px solid #97d8ff38;border-radius:12px;display:grid;gap:2px;padding:10px}.complaint-stat-card span{color:#a8cad9;font-size:.76rem}.complaint-stat-card b{color:#f3fdff;font-size:1.15rem}.complaint-stat-card.pending{border-color:#f59e0b8c}.complaint-stat-card.inprogress{border-color:#0ea5e999}.complaint-stat-card.resolved{border-color:#34d3999e}.portal-panel-empty,.portal-panel-error{border-radius:12px;font-size:.9rem;padding:12px}.portal-panel-empty{background:#0a182594;color:#b7d3df}.portal-panel-error{background:#851b1b33;border:1px solid #f5717166;color:#ffbcbc}.portal-complaints-list{grid-gap:10px;display:grid;gap:10px}.portal-complaint-card{background:#081725b3;border:1px solid #9de2ff33;border-radius:12px;padding:12px}.portal-complaint-head{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-bottom:6px}.portal-complaint-head h4{color:#e6f9ff;font-size:1rem;margin:0}.portal-status-chip{border:1px solid #b0dbf680;border-radius:999px;color:#deeff8;font-size:.72rem;padding:4px 9px}.portal-status-chip.pending{border-color:#f59e0bb3;color:#ffd98d}.portal-status-chip.in-progress{border-color:#0ea5e9b8;color:#86ddff}.portal-status-chip.resolved{border-color:#34d399b8;color:#93ffd5}.portal-complaint-toilet{color:#9ec3d4;font-size:.82rem;margin:0}.portal-complaint-desc{color:#d3ebf7;font-size:.88rem;margin:8px 0}.portal-complaint-meta{color:#98bac8;display:flex;flex-wrap:wrap;font-size:.76rem;gap:8px 12px}.portal-profile-hero{align-items:center;display:flex;gap:14px;margin-bottom:14px}.portal-profile-avatar-wrap{align-items:center;cursor:pointer;display:inline-flex;flex-direction:column;gap:0;position:relative}.portal-profile-avatar-wrap input{display:none}.portal-profile-avatar-fallback,.portal-profile-avatar-img{border:2px solid #7de0b799;border-radius:50%;height:74px;object-fit:cover;width:74px}.portal-profile-avatar-fallback{align-items:center;background:linear-gradient(135deg,#39d98a,#30b9ee);color:#fff;display:inline-flex;font-size:1.3rem;font-weight:700;justify-content:center}.portal-avatar-edit{color:#9fd1dd;font-size:.74rem}.portal-profile-identity h4{color:#f1fdff;margin:0}.portal-profile-identity p{color:#98c0d0;margin:3px 0}.portal-profile-identity small{color:#7dbcae;font-size:.78rem}.portal-profile-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:12px}.portal-profile-grid label{grid-gap:0;color:#b6d5e2;display:grid;font-size:.8rem;gap:0}.portal-profile-grid input,.portal-profile-reset-form input{background:#071724a3;border:1px solid #9ed5f357;border-radius:10px;color:#f0fcff;height:40px;padding:0 11px}.portal-action-btn,.portal-profile-reset-form button{background:linear-gradient(130deg,#1f7aff,#39d98a);border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:700;height:42px}.portal-profile-reset-form{grid-gap:0;border:1px solid #a3d8f33d;border-radius:12px;display:grid;gap:0;margin-top:12px;padding:12px}.portal-profile-reset-form h4{color:#e2f8ff;margin:0}.portal-profile-reset-form p{color:#9dc2d1;font-size:.8rem;margin:0}.portal-submissions-box{background:#05161db3;border:1px solid #91d7b64d;border-radius:12px;margin-top:14px;padding:12px}.portal-submissions-box h4{color:#d8fff1;margin:0 0 8px}.portal-submission-inline{border-bottom:1px dashed #ade3f233;color:#a8cbda;display:flex;font-size:.86rem;justify-content:space-between;padding:6px 0}.portal-submission-inline:last-child{border-bottom:none}.portal-submission-inline strong{color:#eefcff}.portal-contact-card{background:#071826bd;border:1px solid #9ee0f447;border-radius:14px;padding:14px}.portal-contact-card h4{color:#ecfdff;margin:0 0 10px}.portal-contact-row{align-items:flex-start;color:#b8d4e0;display:flex;font-size:.88rem;gap:10px;margin-bottom:9px}.portal-contact-row p{margin:0}.portal-contact-icon{align-items:center;color:#8bd3ff;display:inline-flex;flex-shrink:0;height:20px;justify-content:center;width:20px}.portal-faq-list{grid-gap:0;display:grid;gap:0}.portal-faq-item{background:#081826b8;border:1px solid #95d7f447;border-radius:12px;padding:10px}.portal-faq-item summary{color:#e1f8ff;cursor:pointer;font-weight:600}.portal-faq-item p{color:#a7c6d5;font-size:.88rem;margin:8px 0 0}.portal-settings-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.portal-setting-tile{grid-gap:2px;align-content:center;background:#091c2cb8;border:1px solid #9fd8f54d;border-radius:12px;color:#deeff8;cursor:pointer;display:grid;gap:2px;justify-items:center;min-height:78px}.portal-setting-tile span{color:#9fc3d2;font-size:.78rem}.portal-setting-tile strong{font-size:.95rem}.portal-setting-tile.active{background:linear-gradient(130deg,#1f7aff42,#39d98a38);border-color:#7de0b7b3}.toilets-grid.compact-layout{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.app-container.portal-theme-light{--bg-card:#064d2612;--bg-card-hover:#064d2624;--text-primary:#102718;--text-secondary:#2a5440;--glass-border:#0d532a2e}body.portal-light-mode{background:radial-gradient(ellipse at 20% 20%,#38bd7a29 0,#0000 50%),radial-gradient(ellipse at 80% 80%,#0ea5e91f 0,#0000 55%),#edf7ef;color:#102718}body.portal-light-mode .portal-menu-toggle{background:#f5fff8f2}body.portal-light-mode .portal-menu-toggle span{background:#1a5f3d}body.portal-light-mode .portal-side-drawer{background:linear-gradient(180deg,#eefcf3fa,#e4f7ecfa)}body.portal-light-mode .complaint-stat-card,body.portal-light-mode .portal-complaint-card,body.portal-light-mode .portal-contact-card,body.portal-light-mode .portal-content-panel,body.portal-light-mode .portal-faq-item,body.portal-light-mode .portal-profile-reset-form,body.portal-light-mode .portal-setting-tile,body.portal-light-mode .portal-side-item,body.portal-light-mode .portal-side-profile,body.portal-light-mode .portal-submissions-box{background:#ffffffdb;color:#163527}body.portal-light-mode .accessibility-badge,body.portal-light-mode .popup-accessibility-badge{background:#2563eb1a;border-color:#2563eb5c;color:#1d4ed8}@media (max-width:960px){.portal-complaint-stats,.portal-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-plan-grid,.portal-profile-grid{grid-template-columns:1fr}}@media (max-width:640px){.app-container{padding:70px 12px 26px}.portal-menu-toggle{border-radius:12px;height:44px;left:12px;top:12px;width:44px}.portal-content-panel{padding:12px}.portal-complaint-stats,.portal-settings-grid{grid-template-columns:1fr}.portal-complaint-head,.portal-profile-hero{align-items:flex-start;flex-direction:column}.portal-userbar{justify-content:center;width:100%}.toilet-rating-actions{grid-template-columns:1fr}.toilet-review-submit-row{align-items:stretch}.toilet-review-submit-btn{width:100%}.cleanest-actions,.map-focus-actions{display:grid;grid-template-columns:1fr}.cleanest-item{align-items:flex-start;gap:8px;grid-template-columns:1fr}.cleanest-score{justify-self:flex-start}}.custom-user-location-icon{background:#0000;border:none}.user-location-marker-container{align-items:center;display:flex;height:24px;justify-content:center;position:relative;width:24px}.user-location-dot{background-color:#2563eb;border:3px solid #fff;border-radius:50%;box-shadow:0 2px 6px #2563eb66,0 0 10px #2563eb99;height:14px;position:relative;width:14px;z-index:2}.user-location-pulse{animation:user-location-pulse-anim 2s ease-out infinite;background-color:#2563eb59;border-radius:50%;height:32px;position:absolute;width:32px;z-index:1}@keyframes user-location-pulse-anim{0%{opacity:1;transform:scale(.5)}to{opacity:0;transform:scale(1.6)}}.my-location-control-btn{align-items:center;background:#fff;border:none;border-radius:4px;box-shadow:0 2px 6px #00000040;cursor:pointer;display:flex;height:34px;justify-content:center;transition:background-color .15s ease,transform .15s ease;width:34px}.my-location-control-btn:hover{background:#f8fafc;transform:scale(1.05)}.my-location-control-btn:active{transform:scale(.95)}.location-alert-banner{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(135deg,#ef444426,#b91c1c40);border:1px solid #ef444466;border-radius:12px;color:#fca5a5;display:flex;font-size:.9rem;gap:10px;margin:10px 0;padding:10px 16px}.location-alert-icon{font-size:1.2rem}.location-alert-text{flex:1 1;font-weight:500}.location-alert-btn{background:#ef4444;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.82rem;font-weight:600;padding:6px 14px;transition:background-color .15s ease,transform .15s ease}.location-alert-btn:hover{background:#dc2626;transform:translateY(-1px)}.parallax-stars{background:#090a0f;min-height:100vh;overflow:hidden;position:relative;width:100%}.parallax-stars-atmosphere{background:radial-gradient(ellipse at bottom,#1b2735 0,#090a0f 100%);inset:0;position:absolute;z-index:0}.parallax-stars-layer{animation-iteration-count:infinite;animation-name:parallax-anim-star;animation-timing-function:linear;background:#0000;left:0;position:absolute;top:0;z-index:1}.parallax-stars-layer-copy{background:#0000;height:inherit;left:0;position:absolute;top:2000px;width:inherit}.parallax-stars-layer-small{height:1px;width:1px}.parallax-stars-layer-medium{height:2px;width:2px}.parallax-stars-layer-big{height:3px;width:3px}.parallax-stars-title{color:#fff;font-size:clamp(1.1rem,2.2vw,2.1rem);font-weight:300;left:0;letter-spacing:.3em;position:absolute;right:0;text-align:center;text-shadow:0 0 14px #93c5fd59;text-transform:uppercase;top:50%;transform:translateY(-50%);z-index:2}.parallax-stars-title span{-webkit-text-fill-color:#0000;background:linear-gradient(180deg,#fff 0,#38495a);-webkit-background-clip:text}.parallax-stars-content{position:relative;z-index:3}@keyframes parallax-anim-star{0%{transform:translateY(0)}to{transform:translateY(-2000px)}}.entry-dashboard{grid-gap:12px;display:grid;gap:12px;margin-top:16px}.entry-dashboard-head{align-items:flex-start;background:linear-gradient(145deg,#fff,#eef8f3);border:1px solid #d4eadf;border-radius:14px;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;padding:14px}.entry-dashboard-head h2{color:#134d35;margin:0}.entry-dashboard-head p{color:#557465;margin:6px 0 0}.entry-refresh-btn{background:linear-gradient(135deg,#1fa968,#187948);border:1px solid #fff3;border-radius:10px;color:#fff;cursor:pointer;font-weight:700;padding:10px 14px}.entry-meta-row{color:#2a6148;display:flex;flex-wrap:wrap;gap:12px}.entry-alert{border-radius:10px;font-weight:700;padding:10px 12px}.entry-alert.success{background:#e8f9ef;border:1px solid #bde5cb;color:#1c6b44}.entry-alert.error{background:#fff2f2;border:1px solid #efc5c5;color:#942d2d}.entry-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.entry-card{grid-gap:8px;background:linear-gradient(145deg,#fff,#f4fcf8);border:1px solid #d4eadf;border-radius:14px;box-shadow:0 8px 20px #0f4e3114;display:grid;gap:8px;padding:12px}.entry-card h3{color:#184f39;margin:0}.entry-card p{color:#547264;font-size:.9rem;margin:0}.entry-card input{background:#fff;border:1px solid #c6e2d3;border-radius:10px;color:#1d5039;padding:10px}.entry-card button{background:linear-gradient(135deg,#29976b,#1f7b57);border:1px solid #fff3;border-radius:10px;color:#fff;cursor:pointer;font-weight:700;padding:10px 12px}.entry-card button:disabled{cursor:not-allowed;opacity:.6}.entry-scan-toggle{background:linear-gradient(135deg,#2f87cf,#1f669f)!important}.entry-qr-reader{background:#eff8f3;border:1px solid #c8e4d5;border-radius:12px;min-height:220px;overflow:hidden}.entry-scanner-error{color:#964040;font-weight:700}.entry-revenue-box{grid-gap:8px;display:grid;gap:8px}.entry-revenue-box div{align-items:center;background:#fff;border:1px solid #d5eadf;border-radius:10px;display:flex;justify-content:space-between;padding:9px 10px}.entry-revenue-box span{color:#4e6e5f;font-size:.85rem}.entry-revenue-box strong{color:#1b5d42}.entry-wide{grid-column:1/-1}.entry-table-wrap{overflow-x:auto}.entry-table{border-collapse:collapse;width:100%}.entry-table td,.entry-table th{border-bottom:1px solid #d8ebe1;color:#295b45;font-size:.86rem;padding:9px 10px;text-align:left}.entry-table th{background:#edf8f2;color:#1a4f38;font-weight:800}.entry-status-chip{border-radius:999px;color:#fff;font-size:.75rem;font-weight:800;padding:4px 10px}.entry-status-chip.verified{background:#1fa968}.entry-status-chip.pending{background:#f59e0b}@media (max-width:980px){.entry-grid{grid-template-columns:1fr}}.worker-shell{--wk-bg-0:#f4fbf8;--wk-bg-1:#ecf8f3;--wk-surface:#fff;--wk-border:#d3ece0;--wk-text:#173f2e;--wk-text-soft:#5e7f70;--wk-primary:#1f9d63;--wk-primary-2:#15794c;--wk-danger:#dc4a4a;--wk-warning:#e38f22;--wk-high:#ef4444;--wk-medium:#f97316;--wk-low:#22c55e;--wk-shadow-sm:0 6px 18px #12583914;--wk-shadow-md:0 16px 34px #1258391f;background:radial-gradient(840px 380px at 8% -10%,#29b17224,#0000 65%),radial-gradient(860px 420px at 96% 110%,#22c55e21,#0000 70%),var(--wk-bg-0);min-height:100vh;padding:24px 14px}.worker-shell.worker-shell-auth{background:#050913;display:grid;overflow:hidden;padding:clamp(20px,5vw,42px) 14px;place-items:center;position:relative}.worker-auth-stars{height:100%;inset:0;min-height:auto;pointer-events:none;position:absolute!important;z-index:0}.worker-auth-stars .parallax-stars-atmosphere{background:radial-gradient(ellipse at bottom,#112133 0,#040810 100%)}.worker-card{background:linear-gradient(150deg,#fff,var(--wk-bg-1));border:1px solid var(--wk-border);border-radius:18px;box-shadow:var(--wk-shadow-md);margin:0 auto;max-width:1240px;padding:18px}.worker-card.worker-card-auth{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(165deg,#0a182ad9,#081220e0),radial-gradient(420px 210px at 6% 0,#46e7ff26,#0000 72%);border:1px solid #75bcff61;border-radius:20px;box-shadow:0 26px 58px #00040e99,inset 0 1px 0 #ade2ff47;padding:clamp(20px,3vw,26px);position:relative;width:min(580px,96vw);z-index:1}.worker-header.worker-header-auth{text-align:center}.worker-auth-kicker{background:linear-gradient(135deg,#46e7ff33,#4f78ff29);border:1px solid #7de2ff4d;border-radius:999px;color:#bde8ff;display:inline-block;font-size:.75rem;font-weight:800;letter-spacing:.12em;margin-bottom:8px;padding:6px 12px;text-transform:uppercase}.worker-header h1{color:var(--wk-text);font-size:clamp(1.4rem,2vw,2rem);margin:0}.worker-header p{color:var(--wk-text-soft);margin:6px 0 0}.worker-shell.worker-shell-auth .worker-header h1{color:#e9f5ff;text-shadow:0 0 20px #46e7ff33}.worker-shell.worker-shell-auth .worker-header p{color:#9fc2db}.worker-shell.worker-shell-auth .worker-alert.success{background:#34d39926;border:1px solid #34d3998a;color:#8cf1ca}.worker-shell.worker-shell-auth .worker-alert.error{background:#f8717124;border:1px solid #f871718a;color:#ffb9b9}@keyframes auth-btn-glow{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.worker-footer{color:#5a7a6a;font-size:.82rem;margin-top:16px;text-align:center}.worker-footer p{margin:0}.worker-profile{align-items:center;background:linear-gradient(135deg,#ebfaf3,#e3f6ec);border:1px solid #cdebdc;border-radius:12px;display:flex;gap:10px;justify-content:space-between;margin-top:14px;padding:12px}.worker-profile span{color:#1d583f}.worker-form button,.worker-logout-btn,.worker-map-nav-btn,.worker-nav-btn,.worker-refresh-btn,.worker-status-actions button{background:linear-gradient(135deg,var(--wk-primary),var(--wk-primary-2));border:1px solid #ffffff38;border-radius:10px;box-shadow:0 8px 16px #0f563533;color:#fff;cursor:pointer;font-weight:700;letter-spacing:.01em;padding:11px 16px;transition:transform .16s ease,filter .16s ease,box-shadow .16s ease}.worker-form button:hover,.worker-logout-btn:hover,.worker-map-nav-btn:hover,.worker-nav-btn:hover,.worker-refresh-btn:hover,.worker-status-actions button:hover{box-shadow:0 10px 20px #0f56353d;filter:brightness(1.04);transform:translateY(-1px)}.worker-logout-btn{background:linear-gradient(135deg,#eb5757,#cf3838)}.worker-nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.worker-auth-switch{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}.worker-auth-switch button{background:#061222b3;border:1px solid #a2deff40;border-radius:10px;color:#b9d9ee;cursor:pointer;font-size:.78rem;font-weight:700;letter-spacing:.05em;padding:10px 8px;text-transform:uppercase;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.worker-auth-switch button:hover{border-color:#78eaffa3;box-shadow:0 8px 16px #08234240;transform:translateY(-1px)}.worker-auth-switch button.active{background:linear-gradient(135deg,#1f7aff8c,#4bebff66);border-color:#5cf4c6bf;color:#fff}.worker-role-toggle{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}.worker-role-btn{background:linear-gradient(135deg,#e9f7ef,#e1f1ea);border:1px solid #bedfce;border-radius:10px;color:#235942;cursor:pointer;font-size:.82rem;font-weight:800;padding:10px 12px;transition:transform .16s ease,box-shadow .16s ease}.worker-role-btn:hover{box-shadow:0 8px 16px #13573626;transform:translateY(-1px)}.worker-role-btn.active{background:linear-gradient(135deg,#25a566,#2f8fe2);border-color:#0000;box-shadow:0 10px 18px #14674738;color:#fff}.worker-nav-btn{background:linear-gradient(135deg,#759688,#648678)}.worker-nav-btn.active{background:linear-gradient(135deg,var(--wk-primary),var(--wk-primary-2))}.worker-shell.worker-shell-auth .worker-nav{background:#0815289e;border:1px solid #79c2ff47;border-radius:14px;margin-top:18px;padding:6px}.worker-shell.worker-shell-auth .worker-nav-btn{background:#071425bf;border:1px solid #a4daff3d;border-radius:10px;box-shadow:none;color:#c6e3f6;flex:1 1;min-width:130px}.worker-shell.worker-shell-auth .worker-nav-btn.active{background:linear-gradient(135deg,#1f7aff,#46e7ff);border-color:#0000;box-shadow:0 9px 18px #0a305257;color:#fff}.worker-form{grid-gap:8px;display:grid;gap:8px;margin-top:16px;max-width:460px}.worker-form label{color:#24573f;font-size:.92rem;font-weight:700}.worker-form input{background:#fff;border:1px solid #c7e2d4;border-radius:10px;color:var(--wk-text);padding:10px 12px}.worker-form input:focus{border-color:#35b276;box-shadow:0 0 0 3px #35b27633;outline:none}.worker-shell.worker-shell-auth .worker-form{gap:10px;margin-top:18px;max-width:100%}.worker-shell.worker-shell-auth .worker-form label{color:#9dc8e4;font-size:.76rem;letter-spacing:.1em;text-transform:uppercase}.worker-shell.worker-shell-auth .worker-form input{background:#061225b8;border:1px solid #a8d8ff3d;border-radius:12px;color:#ecf8ff;height:46px}.worker-shell.worker-shell-auth .worker-form button{animation:auth-btn-glow 3s ease-in-out infinite;background:linear-gradient(120deg,#1f7aff,#46e7ff,#57f3ba);background-size:180% 180%;border-radius:12px;height:46px;margin-top:2px}.worker-auth-form-title{color:#eaf5ff;font-size:1rem;margin:0 0 2px}.worker-shell.worker-shell-auth .worker-alert{margin-top:16px}.worker-alert{border-radius:10px;font-weight:700;margin-top:14px;padding:10px 12px}.worker-alert.success{background:#e6f9ee;border:1px solid #bde8cc;color:#196746}.worker-alert.error{background:#fff1f1;border:1px solid #f2caca;color:#8d2d2d}.worker-forgot-wrap{grid-gap:18px;display:grid;gap:18px}.worker-bypass-wrap{grid-gap:8px;display:grid;gap:8px;justify-items:center;margin-top:18px}.worker-bypass-btn{background:linear-gradient(135deg,#f4fff8,#e7f7ef);border:1px solid #a6cfba;border-radius:999px;color:#1f5d41;cursor:pointer;font-weight:700;height:44px;letter-spacing:.08em;text-transform:uppercase;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,opacity .18s ease;width:min(100%,460px)}.worker-bypass-btn:hover:not(:disabled){background:linear-gradient(135deg,#edfbf3,#def5ea);box-shadow:0 8px 18px #2260422e;transform:translateY(-1px)}.worker-bypass-btn:disabled{cursor:not-allowed;opacity:.7}.worker-bypass-wrap p{color:#567867;font-size:.84rem;margin:0;text-align:center}.worker-shell.worker-shell-auth .worker-bypass-btn{background:#081b2db8;border:1px solid #84dbff66;color:#d7f2ff}.worker-shell.worker-shell-auth .worker-bypass-btn:hover:not(:disabled){background:#102b45db}.worker-shell.worker-shell-auth .worker-bypass-wrap p,.worker-shell.worker-shell-auth .worker-reset-code-note{color:#9ec0dc}.worker-reset-code-note{color:#4c6f5f;margin:0}.worker-dashboard{margin-top:16px}.worker-dashboard-head{align-items:flex-start;background:linear-gradient(140deg,#f8fffb,#ecf8f2);border:1px solid var(--wk-border);border-radius:14px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:14px}.worker-dashboard-head h2{color:#154f36;font-size:clamp(1.2rem,2vw,1.5rem);margin:0}.worker-dashboard-head p{color:#5c7b6c;margin:6px 0 0}.worker-dashboard-head-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.worker-live-dashboard{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(6,minmax(0,1fr));margin-top:14px}.worker-live-card{background:linear-gradient(145deg,#fff,#eefaf3);border:1px solid #cfe9dc;border-radius:12px;box-shadow:var(--wk-shadow-sm);min-height:92px;padding:11px}.worker-live-card h3{color:#3f6a56;font-size:.84rem;margin:0}.worker-live-card p{color:#194f37;font-size:1.28rem;font-weight:800;margin:8px 0 0}.worker-live-card.pending{border-top:4px solid #f59e0b}.worker-live-card.in-progress{border-top:4px solid #3b82f6}.worker-live-card.resolved{border-top:4px solid #22c55e}.worker-live-card.total{border-top:4px solid #10b981}.worker-live-card.avg{border-top:4px solid #0ea5e9}.worker-live-card.rank{border-top:4px solid #22c55e}.worker-stat-chip{align-items:center;background:#effaf4;border:1px solid #cbe7d9;border-radius:999px;color:#2a6449;display:inline-flex;font-size:.88rem;font-weight:700;gap:6px;padding:8px 10px}.worker-dashboard-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.worker-dashboard-tabs button{background:linear-gradient(135deg,#effaf4,#e5f5ed);border:1px solid #c9e7d8;border-radius:10px;color:#226246;cursor:pointer;font-weight:700;padding:9px 12px;transition:all .16s ease}.worker-dashboard-tabs button.active{background:linear-gradient(135deg,#2bae70,#1d8f5b);border-color:#177449;box-shadow:0 8px 16px #1156353d;color:#fff}.worker-complaint-filter{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.worker-complaint-filter button{background:linear-gradient(135deg,#edf9f2,#e4f4eb);border:1px solid #bfe0ce;border-radius:10px;color:#20593f;cursor:pointer;font-size:.88rem;font-weight:800;padding:10px 14px;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.worker-complaint-filter button:hover{border-color:#8bc8a9;transform:translateY(-1px)}.worker-complaint-filter button.active{background:linear-gradient(135deg,#25a865,#1d8554);border-color:#177449;box-shadow:0 8px 16px #105f3a3d;color:#fff}.worker-alerts-panel,.worker-map-panel,.worker-ranking-panel,.worker-sim-panel{background:linear-gradient(140deg,#fff,#f3fcf7);border:1px solid var(--wk-border);border-radius:14px;box-shadow:var(--wk-shadow-sm);margin-top:14px;padding:12px}.worker-sim-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.worker-sim-card{background:linear-gradient(145deg,#fff,#f2fbf7);border:1px solid #d1eadf;border-radius:14px;box-shadow:var(--wk-shadow-sm);padding:12px}.worker-sim-card h4{color:#1a563d;font-size:1rem;margin:0}.worker-sim-card p{color:#4a705e;font-size:.9rem;margin:7px 0 0}.worker-sim-card label{color:#24563f;display:block;font-size:.84rem;font-weight:700;margin-top:10px}.worker-sim-card input,.worker-sim-card select{background:#fff;border:1px solid #c7e4d5;border-radius:10px;color:#204f39;font-size:.88rem;margin-top:6px;padding:9px 10px;width:100%}.worker-sim-live{background:#f9fffb;border:1px solid #d2ebdf;border-radius:12px;margin-top:10px;padding:10px}.worker-sim-live-head{align-items:center;display:flex;gap:10px;justify-content:space-between}.worker-sim-live-head strong{color:#155138}.worker-sim-status{border-radius:999px;color:#fff;font-size:.74rem;font-weight:800;padding:4px 10px}.worker-sim-status.good{background:#22c55e}.worker-sim-status.moderate{background:#f59e0b}.worker-sim-status.critical{background:#ef4444}.worker-sim-metrics{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:10px}.worker-sim-metrics span{background:#fff;border:1px solid #d7eee3;border-radius:10px;color:#285d46;font-size:.82rem;font-weight:700;padding:8px}.worker-sim-metrics .metric-healthy{background:#edfaf2;border-color:#b6e3c7;color:#167548}.worker-sim-metrics .metric-warning{background:#fff6e9;border-color:#f2d7ac;color:#8c4c08}.worker-sim-metrics .metric-critical{background:#fff1f1;border-color:#efc0c0;color:#9c2f2f}.worker-sim-logic{background:#f7fffb;border:1px dashed #c9e4d6;border-radius:10px;margin-top:10px;padding:9px 10px}.worker-sim-logic h5{color:#1f5c42;font-size:.82rem;letter-spacing:.04em;margin:0;text-transform:uppercase}.worker-sim-logic ul{margin:8px 0 0;padding-left:18px}.worker-sim-logic li{color:#335f4b;font-size:.8rem;margin:4px 0}.worker-sim-action-grid{grid-gap:9px;display:grid;gap:9px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}.worker-sim-action-grid button{background:linear-gradient(135deg,#2b9c66,#1f7c4e);border:1px solid #ffffff38;border-radius:10px;color:#fff;cursor:pointer;font-size:.84rem;font-weight:800;padding:11px 10px;transition:transform .16s ease,filter .16s ease}.worker-sim-action-grid button:hover{filter:brightness(1.04);transform:translateY(-1px)}.worker-sim-action-grid button:disabled{cursor:not-allowed;opacity:.56;transform:none}.worker-sim-action-grid .worker-sim-emergency-btn{background:linear-gradient(135deg,#ef4444,#cf3535)}.worker-sim-action-grid .worker-sim-reset-btn{background:linear-gradient(135deg,#2f86d0,#1f669f)}.worker-sim-running{color:#12543b;font-size:.82rem;font-weight:700;margin-top:10px}.worker-sim-qr-image{background:#fff;border:1px solid #c9e6d7;border-radius:10px;margin-top:10px;padding:6px;width:min(220px,100%)}.worker-sim-qr-actions{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:10px}.worker-sim-qr-actions a,.worker-sim-qr-actions button{align-items:center;background:linear-gradient(135deg,#2f96da,#1f679f);border:1px solid #fff3;border-radius:9px;color:#fff;cursor:pointer;display:inline-flex;font-size:.78rem;font-weight:700;justify-content:center;padding:9px 10px;text-align:center;text-decoration:none}.worker-sim-qr-actions button:disabled{cursor:not-allowed;opacity:.58}.worker-work-order{background:linear-gradient(140deg,#fff,#f3fcf7);border:1px solid var(--wk-border);border-radius:14px;box-shadow:var(--wk-shadow-sm);margin-top:14px;padding:12px}.worker-work-order-list{grid-gap:8px;display:grid;gap:8px}.worker-work-order-item{grid-gap:10px;align-items:center;background:linear-gradient(135deg,#fbfffd,#effaf4);border:1px solid #d2ebde;border-radius:12px;display:grid;gap:10px;grid-template-columns:40px minmax(0,1fr) auto auto;padding:10px;text-align:left;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.worker-work-order-item:hover{border-color:#88cda9;box-shadow:var(--wk-shadow-sm);transform:translateY(-1px)}.worker-work-order-index{background:linear-gradient(135deg,#2ea96d,#1d8a58);border-radius:999px;color:#fff;display:grid;font-weight:800;height:32px;place-items:center;width:32px}.worker-work-order-main{grid-gap:2px;display:grid;gap:2px}.worker-work-order-main b{color:#1b563e;font-size:.95rem}.worker-work-order-main small{color:#5b7a6b;font-size:.82rem}.worker-work-order-actions{align-items:center;display:inline-flex;gap:6px}.worker-work-nav-btn,.worker-work-view-btn{border:1px solid #ffffff38;border-radius:9px;color:#fff;cursor:pointer;font-size:.78rem;font-weight:700;padding:8px 10px}.worker-work-view-btn{background:linear-gradient(135deg,#2c9f66,#1c7d4e)}.worker-work-nav-btn{background:linear-gradient(135deg,#2f86d0,#1f6199)}.worker-section-head{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:10px}.worker-section-head h3{color:#16533a;font-size:1.05rem;margin:0}.worker-section-head p{color:#58796a;font-size:.9rem;margin:0}.worker-map-empty{color:#537264;margin:8px 0 0}.worker-complaint-map{border:1px solid #d0e8db;border-radius:12px;height:370px;overflow:hidden;width:100%}.worker-map-popup-card{background:linear-gradient(140deg,#fff,#eefaf3);border:1px solid #cce7d9;border-radius:10px;color:#194d35;min-width:240px;padding:10px}.worker-map-popup-card h4{color:#0f422d;font-size:1rem;margin:0}.worker-map-popup-type{color:#2a6650;font-size:.9rem;font-weight:700;margin:6px 0 8px}.worker-map-popup-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.worker-map-priority,.worker-map-status{align-items:center;border-radius:999px;color:#fff;display:inline-flex;font-size:.74rem;font-weight:800;padding:4px 9px}.worker-map-priority.high{background:#ef4444}.worker-map-priority.medium{background:#f97316}.worker-map-priority.low{background:#22c55e}.worker-map-status.pending{background:#f59e0b}.worker-map-status.in-progress{background:#3b82f6}.worker-map-status.resolved{background:#22c55e}.worker-map-popup-location{color:#466b5a;font-size:.86rem;margin:0}.worker-map-nav-btn{margin-top:8px;min-height:40px;width:100%}.worker-empty{color:#4d6d5f;margin-top:16px}.worker-alert-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:12px}.worker-alert-card{background:linear-gradient(160deg,#fff,#f6fcf9);border:1px solid #d3eadf;border-radius:14px;box-shadow:var(--wk-shadow-sm);padding:12px;transition:transform .16s ease,box-shadow .16s ease}.worker-alert-card:hover{box-shadow:var(--wk-shadow-md);transform:translateY(-2px)}.worker-alert-card.resolved{opacity:.82}.worker-alert-card.priority-high{border-top:4px solid var(--wk-high)}.worker-alert-card.priority-medium{border-top:4px solid var(--wk-medium)}.worker-alert-card.priority-low{border-top:4px solid var(--wk-low)}.worker-alert-top{align-items:flex-start;display:flex;gap:8px;justify-content:space-between}.worker-alert-top h3{color:#174f37;font-size:1rem;margin:0}.worker-alert-card p{color:#315745;font-size:.9rem;margin:6px 0}.worker-complaint-grid{grid-gap:10px;align-items:start;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(320px,360px));justify-content:center;margin-top:14px}.worker-complaint-card{background:linear-gradient(160deg,#fff,#f6fcf9);border:1px solid #d4eade;border-radius:12px;box-shadow:var(--wk-shadow-sm);max-width:360px;padding:9px;transition:transform .16s ease,box-shadow .16s ease;width:100%}.worker-complaint-card:hover{box-shadow:var(--wk-shadow-md);transform:translateY(-2px)}.worker-complaint-card.active{border-color:#67c89a;box-shadow:0 0 0 3px #27a46733,var(--wk-shadow-md)}.worker-complaint-card.priority-high{border-top:4px solid var(--wk-high)}.worker-complaint-card.priority-medium{border-top:4px solid var(--wk-medium)}.worker-complaint-card.priority-low{border-top:4px solid var(--wk-low)}.worker-complaint-top{align-items:flex-start;display:flex;gap:8px;justify-content:space-between}.worker-complaint-top h3{color:#174f37;font-size:.94rem;margin:0}.worker-chip-row{display:flex;flex-wrap:wrap;gap:6px}.worker-priority,.worker-status{border-radius:999px;color:#fff;font-size:.75rem;font-weight:800;padding:4px 9px}.worker-priority.high{background:var(--wk-high)}.worker-priority.medium{background:var(--wk-medium)}.worker-priority.low{background:var(--wk-low)}.worker-status.pending{background:var(--wk-warning)}.worker-status.in-progress{background:#2b84d0}.worker-status.resolved{background:#1f9d63}.worker-complaint-card p{color:#315745;font-size:.84rem;margin:5px 0}.worker-sensor-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.worker-sensor-row span{background:#e6f5ee;border:1px solid #bfe1d0;border-radius:999px;color:#114f38;font-size:.75rem;font-weight:700;padding:4px 8px}.worker-fan-alert{border:1px solid #f4b9b9;border-radius:9px;font-size:.78rem;margin-top:7px;padding:6px 9px}.worker-fan-alert,.worker-fan-alert-inline{background:#fff0f0;color:#a12f2f;font-weight:800}.worker-fan-alert-inline{border:1px solid #f4b9b9;border-radius:999px;font-size:.75rem;padding:4px 8px}.worker-sla{border:1px solid #cde7da;border-radius:10px;font-size:.8rem;font-weight:700;margin-top:8px;padding:7px 9px}.worker-sla,.worker-sla.normal{background:#f2fbf6;color:#245a42}.worker-sla.normal{border-color:#cde7da}.worker-sla.critical{animation:worker-sla-alert 1s ease-in-out infinite;background:#fff5ea;border-color:#f3bf79;color:#924e05}.worker-sla.overdue{animation:worker-sla-alert .9s ease-in-out infinite;background:#fff1f1;border-color:#f5b6b6;color:#9d2f2f}.worker-sla.resolved{background:#e8f8ee;border-color:#b7e2c7;color:#176b45}@keyframes worker-sla-alert{0%,to{opacity:1}50%{opacity:.62}}.worker-ai-suggestion{background:linear-gradient(135deg,#effcf4,#e6f8ee);border:1px solid #cde9db;border-radius:10px;margin-top:8px;padding:8px}.worker-ai-suggestion h4{color:#12563a;font-size:.9rem;margin:0 0 6px}.worker-ai-suggestion p{color:#235840;font-size:.83rem;margin:0 0 5px}.worker-ai-toggle-btn{background:linear-gradient(135deg,#2bab6d,#1c8a55);border:1px solid #1e8a57;border-radius:9px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:700;padding:7px 10px}.worker-ai-suggestion ul{color:#2e5f49;margin:8px 0 0;padding-left:18px}.worker-ai-suggestion li{font-size:.86rem;margin:3px 0}.worker-image-compare{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:8px}.worker-image-block{background:#fff;border:1px solid #d5ebe0;border-radius:10px;padding:7px}.worker-image-block h4{color:#20553d;font-size:.76rem;letter-spacing:.02em;margin:0 0 5px}.worker-image-block img,.worker-image-block video{background:#f3fbf7;border:1px solid #d3e7dc;border-radius:8px;height:110px;object-fit:cover;width:100%}.worker-full-image-btn{background:linear-gradient(135deg,#2ca86b,#1f8150);border:1px solid #2f875a;border-radius:9px;color:#fff;cursor:pointer;font-size:.76rem;font-weight:700;margin-top:7px;padding:7px 9px;width:100%}.worker-image-empty{background:#f8fffb;border:1px dashed #c8e3d6;border-radius:8px;color:#5f7f70;display:grid;font-size:.78rem;min-height:112px;padding:8px;place-items:center;text-align:center}.worker-after-video-shell{position:relative}.worker-after-video-loader{background:#102d2161;border-radius:8px;display:grid;inset:0;padding:10px;place-items:center;position:absolute}.worker-after-video-loader-text{grid-gap:4px;background:#091c14ad;border:1px solid #ffffff52;border-radius:10px;color:#eafff3;display:grid;gap:4px;padding:8px 10px;text-align:center}.worker-after-video-loader-text strong{font-size:.76rem}.worker-after-video-loader-text small{color:#d6f9e7;font-size:.73rem}.worker-after-video-spinner{animation:worker-spin .8s linear infinite;border:2px solid #ffffff59;border-radius:50%;border-top-color:#fff;height:24px;margin:0 auto 6px;width:24px}@keyframes worker-spin{to{transform:rotate(1turn)}}.worker-upload-box{grid-gap:5px;background:#f8fffb;border:1px solid #d4eadf;border-radius:10px;display:grid;gap:5px;margin-top:8px;padding:7px}.worker-upload-box label{color:#22563d;font-size:.8rem;font-weight:700}.worker-upload-hint{color:#5b7c6d;font-size:.76rem;line-height:1.35}.worker-open-camera-btn{background:linear-gradient(135deg,#2ca96b,#1f7f4f);border:1px solid #258258;border-radius:9px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:700;padding:8px 10px}.worker-open-camera-btn:disabled{cursor:not-allowed;opacity:.58}.worker-upload-box small{color:#4d6c5e}.worker-ai-verify-progress{grid-gap:3px;background:#eef6ff;border:1px solid #cde3f8;border-radius:8px;display:grid;gap:3px;margin-top:4px;padding:7px 8px}.worker-ai-verify-progress strong{color:#1f4f7d;font-size:.76rem}.worker-ai-verify-progress small{color:#355f86;font-size:.74rem}.worker-local-video-preview{background:#f7fffb;border:1px solid #cae4d7;border-radius:8px;max-height:140px;width:100%}.worker-submit-photo-btn{background:linear-gradient(135deg,#2f96da,#1f679f);border:1px solid #fff3;border-radius:9px;color:#fff;cursor:pointer;font-size:.78rem;font-weight:700;padding:7px 9px}.worker-submit-photo-btn:disabled{cursor:not-allowed;opacity:.58}.worker-video-verdict{border-radius:8px;font-size:.76rem;font-weight:700;margin-top:8px;padding:6px 8px}.worker-video-verdict.approved{background:#e9faef;border:1px solid #b8e6c8;color:#17673f}.worker-video-verdict.rejected{background:#fff2f2;border:1px solid #f2c4c4;color:#922f2f}.worker-video-verdict.pending{background:#fff7e9;border:1px solid #e6d5b7;color:#8f5b15}.worker-video-reason{color:#4a6f5d;display:block;font-size:.75rem;line-height:1.35;margin-top:6px}.worker-status-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.worker-status-actions button{font-size:.8rem;min-height:36px;padding:9px 11px}.worker-start-btn{background:linear-gradient(135deg,#2f95e0,#226fb2)}.worker-resolve-btn{background:linear-gradient(135deg,#1fa263,#177a4c)}.worker-navigate-btn{background:linear-gradient(135deg,#2780ca,#195c92)}.worker-status-actions button:disabled{box-shadow:none;cursor:not-allowed;opacity:.56}.worker-ranking-podium{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.worker-podium-card{background:linear-gradient(145deg,#fff,#effaf4);border:1px solid #cfe9dc;border-radius:16px;box-shadow:0 14px 30px #11563526;overflow:hidden;padding:16px 14px 14px;position:relative;text-align:center}.worker-podium-card:before{background:linear-gradient(135deg,#ffffff61,#0000 45%);content:"";inset:-1px;pointer-events:none;position:absolute}.worker-podium-card.rank-1{background:linear-gradient(160deg,#fff9df,#ffefaa);border-color:#eccf6d;box-shadow:0 16px 34px #8c6f1240}.worker-podium-card.rank-2{background:linear-gradient(160deg,#f7fafc,#e6edf3);border-color:#d0d9e2;box-shadow:0 14px 30px #344c6333}.worker-podium-card.rank-3{background:linear-gradient(160deg,#fff2e5,#ffdcb8);border-color:#eebe89;box-shadow:0 14px 30px #814d1d33}.worker-podium-card.mine{box-shadow:0 0 0 2px #219e6233,0 16px 34px #10603a38}.worker-podium-rank-tag{background:linear-gradient(135deg,#208654,#16663f);border-radius:999px;box-shadow:0 8px 16px #0e4c2e38;color:#fff;font-size:.72rem;font-weight:800;left:8px;padding:4px 9px;position:absolute;top:8px}.worker-podium-medal{color:#164f37;font-size:1.35rem;font-weight:800;letter-spacing:.05em;margin-bottom:8px;text-transform:uppercase}.worker-podium-card h4{color:#194f37;font-size:1.05rem;margin:0}.worker-podium-card p{color:#3f6755;font-weight:700;margin:5px 0 0}.worker-podium-meter{background:#ffffffa6;border:1px solid #15573729;border-radius:999px;height:8px;margin-top:10px;overflow:hidden;width:100%}.worker-podium-meter span{background:linear-gradient(90deg,#20a161,#157547);border-radius:inherit;display:block;height:100%}.worker-ranking-list{grid-gap:8px;display:grid;gap:8px;margin-top:12px}.worker-ranking-row{grid-gap:8px 10px;align-items:center;background:linear-gradient(145deg,#fff,#f1faf5);border:1px solid #d1e9dd;border-radius:14px;box-shadow:0 8px 18px #125a3a14;display:grid;gap:8px 10px;grid-template-areas:"pos name score" "bar bar bar";grid-template-columns:70px minmax(0,1fr) auto;padding:12px}.worker-ranking-row.mine{background:linear-gradient(135deg,#e8fbf0,#dbf4e6);border-color:#a8dcbf;box-shadow:0 0 0 2px #25a16629,0 10px 22px #25a16624}.worker-ranking-position{align-items:center;background:linear-gradient(135deg,#e9f8ef,#dff3e7);border:1px solid #c7e7d7;border-radius:10px;color:#19563c;display:inline-flex;font-weight:800;grid-area:pos;height:32px;justify-content:center;width:48px}.worker-ranking-name-wrap{grid-gap:2px;display:grid;gap:2px;grid-area:name;min-width:0}.worker-ranking-name{color:#245a42;font-size:.94rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.worker-ranking-tag{color:#5d7c6d;font-size:.75rem;font-weight:600}.worker-ranking-score{background:#e9f8ef;border:1px solid #c9e8d8;border-radius:999px;color:#165f3f;font-size:.82rem;font-weight:800;grid-area:score;justify-self:end;padding:4px 10px}.worker-ranking-progress{background:#e3f1e9;border-radius:999px;grid-area:bar;height:7px;overflow:hidden;width:100%}.worker-ranking-progress span{background:linear-gradient(90deg,#28af71,#1d8757);border-radius:inherit;display:block;height:100%}.worker-map-marker-wrap{background:#0000;border:none}.worker-image-modal{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#051910c7;display:grid;inset:0;padding:16px;place-items:center;position:fixed;z-index:1200}.worker-image-modal-card{background:#fff;border:1px solid #8dd0ad;border-radius:14px;box-shadow:0 22px 48px #0006;display:grid;grid-template-rows:auto minmax(0,1fr);max-height:92vh;overflow:hidden;width:min(1000px,96vw)}.worker-image-modal-head{align-items:center;background:linear-gradient(135deg,#ecf9f1,#dff4e8);border-bottom:1px solid #cfe9dc;display:flex;gap:8px;justify-content:space-between;padding:10px 12px}.worker-image-modal-head h3{color:#1c543b;font-size:.95rem;margin:0}.worker-image-modal-head button{background:linear-gradient(135deg,#2ca86b,#1f8150);border:1px solid #2d875a;border-radius:8px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:700;padding:7px 10px}.worker-image-modal-card img{background:#e9f7ef;height:min(82vh,760px);object-fit:contain;width:100%}.worker-video-capture-card{max-width:760px}.worker-video-capture-body{grid-gap:10px;display:grid;gap:10px;padding:10px}.worker-video-capture-body video{background:#0a0f13;border:1px solid #c8e3d6;border-radius:10px;max-height:54vh;min-height:260px;object-fit:cover;width:100%}.worker-video-capture-note{color:#436b58;font-size:.82rem;margin:0}.worker-video-capture-timer{color:#1f5b40;font-size:.82rem;font-weight:800;margin:0}.worker-video-capture-actions{display:flex;flex-wrap:wrap;gap:8px}.worker-video-capture-actions button{background:linear-gradient(135deg,#2f95e0,#226fb2);border:1px solid #fff3;border-radius:10px;color:#fff;cursor:pointer;font-size:.82rem;font-weight:700;padding:10px 12px}.worker-video-capture-actions button:nth-child(2){background:linear-gradient(135deg,#ef4444,#c72f2f)}.worker-video-capture-actions button:nth-child(3){background:linear-gradient(135deg,#22a063,#1b7f4f)}.worker-video-capture-actions button:disabled{cursor:not-allowed;opacity:.58}@media (max-width:980px){.worker-live-dashboard{grid-template-columns:repeat(3,minmax(0,1fr))}.worker-ranking-podium,.worker-sim-grid{grid-template-columns:1fr}}@media (max-width:760px){.worker-shell{padding:12px}.worker-shell.worker-shell-auth{padding:14px 10px}.worker-card{padding:12px}.worker-shell.worker-shell-auth .worker-nav-btn{min-width:100%}.worker-auth-switch,.worker-role-toggle{grid-template-columns:1fr}.worker-dashboard-head-actions{width:100%}.worker-live-dashboard{grid-template-columns:repeat(2,minmax(0,1fr))}.worker-work-order-item{grid-template-areas:"idx main" "badge badge" "actions actions";grid-template-columns:40px minmax(0,1fr)}.worker-work-order-index{grid-area:idx}.worker-work-order-main{grid-area:main}.worker-work-order-item .worker-priority{grid-area:badge;justify-self:start}.worker-work-order-actions{grid-area:actions;width:100%}.worker-work-nav-btn,.worker-work-view-btn{flex:1 1}.worker-image-compare,.worker-sim-action-grid,.worker-sim-metrics,.worker-sim-qr-actions{grid-template-columns:1fr}.worker-complaint-filter button,.worker-status-actions button,.worker-video-capture-actions button{width:100%}.worker-complaint-grid{grid-template-columns:1fr;justify-content:stretch}.worker-complaint-card{max-width:none}.worker-ranking-row{grid-template-areas:"pos name" "score score" "bar bar";grid-template-columns:56px minmax(0,1fr)}.worker-ranking-name-wrap{grid-area:name}.worker-ranking-score{grid-area:score;justify-self:start}.worker-complaint-map{height:320px}}.sim-shell{background:radial-gradient(800px 340px at 8% -10%,#29b17224,#0000 65%),radial-gradient(820px 390px at 96% 110%,#22c55e1f,#0000 70%),#f5fcf8;min-height:100vh;padding:20px 12px}.sim-card{background:linear-gradient(145deg,#fff,#edf9f3);border:1px solid #d3ece0;border-radius:18px;box-shadow:0 16px 34px #1258391f;margin:0 auto;max-width:1200px;padding:16px}.sim-head{align-items:flex-start;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.sim-kicker{background:linear-gradient(135deg,#effaf3,#e7f5ff);border:1px solid #cbe9d8;border-radius:999px;color:#245f46;display:inline-block;font-size:.74rem;font-weight:800;letter-spacing:.1em;margin-bottom:6px;padding:5px 10px;text-transform:uppercase}.sim-head h1{color:#184f38;font-size:clamp(1.35rem,2vw,1.8rem);margin:0}.sim-head p{color:#5a7b6c;margin:6px 0 0}.sim-action-grid button,.sim-head button,.sim-qr-actions a,.sim-qr-actions button{align-items:center;background:linear-gradient(135deg,#1f9d63,#15794c);border:1px solid #ffffff38;border-radius:10px;color:#fff;cursor:pointer;display:inline-flex;font-weight:700;justify-content:center;padding:10px 12px;text-decoration:none}.sim-action-grid button:disabled,.sim-head button:disabled,.sim-qr-actions button:disabled{cursor:not-allowed;opacity:.56}.sim-alert{border-radius:10px;font-weight:700;margin-top:12px;padding:10px 12px}.sim-alert.success{background:#e6f9ee;border:1px solid #bde8cc;color:#196746}.sim-alert.error{background:#fff1f1;border:1px solid #f2caca;color:#8d2d2d}.sim-empty{color:#4d6d5f;margin-top:14px}.sim-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}.sim-panel{background:linear-gradient(145deg,#fff,#f4fcf8);border:1px solid #d1eadf;border-radius:14px;box-shadow:0 6px 18px #12583914;padding:12px}.sim-panel h3{color:#1b543d;font-size:1rem;margin:0}.sim-panel p{color:#4b705f;font-size:.9rem;margin:7px 0 0}.sim-panel input,.sim-panel select{background:#fff;border:1px solid #c7e4d5;border-radius:10px;color:#204f39;font-size:.88rem;margin-top:8px;padding:9px 10px;width:100%}.sim-live-box{background:#f9fffb;border:1px solid #d2ebdf;border-radius:12px;margin-top:10px;padding:10px}.sim-live-head{align-items:center;display:flex;gap:10px;justify-content:space-between}.sim-live-head strong{color:#155138}.sim-status{border-radius:999px;color:#fff;font-size:.74rem;font-weight:800;padding:4px 10px}.sim-status.good{background:#22c55e}.sim-status.moderate{background:#f59e0b}.sim-status.critical{background:#ef4444}.sim-metrics{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:10px}.sim-metrics span{background:#fff;border:1px solid #d7eee3;border-radius:10px;color:#285d46;font-size:.82rem;font-weight:700;padding:8px}.sim-metrics .metric-healthy{background:#edfaf2;border-color:#b6e3c7;color:#167548}.sim-metrics .metric-warning{background:#fff6e9;border-color:#f2d7ac;color:#8c4c08}.sim-metrics .metric-critical{background:#fff1f1;border-color:#efc0c0;color:#9c2f2f}.sim-action-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:10px}.sim-action-grid button.emergency{background:linear-gradient(135deg,#ef4444,#cf3535)}.sim-action-grid button.reset{background:linear-gradient(135deg,#2f86d0,#1f669f)}.sim-panel img{background:#fff;border:1px solid #c9e6d7;border-radius:10px;margin-top:10px;padding:6px;width:min(220px,100%)}.sim-qr-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.sim-list,.sim-qr-actions{grid-gap:8px;display:grid;gap:8px;margin-top:10px}.sim-list-row{grid-gap:8px;align-items:center;background:#fff;border:1px solid #d3ebdf;border-radius:10px;color:#275944;display:grid;font-size:.82rem;font-weight:700;gap:8px;grid-template-columns:minmax(0,1fr) auto auto;padding:8px}.sim-list-row.active{border-color:#68c89a;box-shadow:0 0 0 2px #27a46729}.sim-footer{color:#5a7a6a;font-size:.82rem;margin-top:16px;text-align:center}.sim-footer p{margin:0}@media (max-width:900px){.sim-grid{grid-template-columns:1fr}}@media (max-width:700px){.sim-action-grid,.sim-list-row,.sim-metrics,.sim-qr-actions{grid-template-columns:1fr}}.leaflet-image-layer,.leaflet-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane,.leaflet-pane>canvas,.leaflet-pane>svg,.leaflet-tile,.leaflet-tile-container,.leaflet-zoom-box{left:0;position:absolute;top:0}.leaflet-container{overflow:hidden}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.leaflet-tile::selection{background:#0000}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{height:1600px;-webkit-transform-origin:0 0;width:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-height:none!important;max-width:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer{max-height:none!important;max-width:none!important;padding:0;width:auto}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;height:0;width:0;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{height:1px;width:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{pointer-events:visiblePainted;pointer-events:auto;position:relative;z-index:800}.leaflet-bottom,.leaflet-top{pointer-events:none;position:absolute;z-index:1000}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{clear:both;float:left}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-pan-anim .leaflet-tile,.leaflet-zoom-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-control,.leaflet-popup-pane{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:grabbing}.leaflet-image-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-image-layer.leaflet-interactive,.leaflet-marker-icon.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;color:#000;display:block;height:26px;line-height:26px;text-align:center;text-decoration:none;width:26px}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:focus,.leaflet-bar a:hover{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.leaflet-bar a.leaflet-disabled{background-color:#f4f4f4;color:#bbb;cursor:default}.leaflet-touch .leaflet-bar a{height:30px;line-height:30px;width:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);height:36px;width:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{height:44px;width:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{background:#fff;color:#333;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{overflow-x:hidden;overflow-y:scroll;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;line-height:1.4;padding:0 5px}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:focus,.leaflet-control-attribution a:hover{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;height:.6669em;vertical-align:initial!important;width:1em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{background:#fffc;border:2px solid #777;border-top:none;box-sizing:border-box;line-height:1.1;padding:2px 5px 1px;text-shadow:1px 1px #fff;white-space:nowrap}.leaflet-control-scale-line:not(:first-child){border-bottom:none;border-top:2px solid #777;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers{box-shadow:none}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-layers{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{margin-bottom:20px;position:absolute;text-align:center}.leaflet-popup-content-wrapper{border-radius:12px;padding:1px;text-align:left}.leaflet-popup-content{font-size:13px;font-size:1.08333em;line-height:1.3;margin:13px 24px 13px 20px;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{height:20px;left:50%;margin-left:-20px;margin-top:-1px;overflow:hidden;pointer-events:none;position:absolute;width:40px}.leaflet-popup-tip{height:17px;margin:-10px auto 0;padding:1px;pointer-events:auto;transform:rotate(45deg);width:17px}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;box-shadow:0 3px 14px #0006;color:#333}.leaflet-container a.leaflet-popup-close-button{background:#0000;border:none;color:#757575;font:16px/24px Tahoma,Verdana,sans-serif;height:24px;position:absolute;right:0;text-align:center;text-decoration:none;top:0;width:24px}.leaflet-container a.leaflet-popup-close-button:focus,.leaflet-container a.leaflet-popup-close-button:hover{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678,M12=0.70710678,M21=-0.70710678,M22=0.70710678);margin:0 auto;width:24px}.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{background-color:#fff;border:1px solid #fff;border-radius:3px;box-shadow:0 1px 3px #0006;color:#222;padding:6px;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;white-space:nowrap}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before,.leaflet-tooltip-top:before{background:#0000;border:6px solid #0000;content:"";pointer-events:none;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{border-top-color:#fff;bottom:0;margin-bottom:-12px}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-left:-6px;margin-top:-12px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;left:0;margin-left:-12px}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
/*# sourceMappingURL=main.e4df0207.css.map*/