:root{--bg-base: hsl(256, 32%, 6%);--bg-card: hsla(255, 30%, 10%, .65);--bg-card-hover: hsla(255, 30%, 14%, .8);--border-glass: hsla(255, 20%, 80%, .08);--border-active: hsla(260, 80%, 70%, .35);--color-primary: hsl(263, 95%, 68%);--color-secondary: hsl(316, 90%, 62%);--color-primary-glow: hsla(263, 95%, 68%, .4);--color-secondary-glow: hsla(316, 90%, 62%, .4);--color-success: hsl(155, 85%, 52%);--color-success-glow: hsla(155, 85%, 52%, .3);--color-warning: hsl(38, 95%, 58%);--color-warning-glow: hsla(38, 95%, 58%, .3);--color-danger: hsl(355, 90%, 60%);--color-danger-glow: hsla(355, 90%, 60%, .3);--text-main: hsl(0, 0%, 100%);--text-muted: hsl(255, 10%, 75%);--text-dark: hsl(255, 20%, 15%);--font-display: "Outfit", "Inter", sans-serif;--font-body: "Inter", sans-serif;--font-syne: "Syne", sans-serif;--transition-smooth: all .3s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-base);color:var(--text-main);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;position:relative}body:before{content:"";position:absolute;top:-10%;left:-10%;width:50%;height:50%;background:radial-gradient(circle,var(--color-primary-glow) 0%,transparent 70%);z-index:-1;pointer-events:none}body:after{content:"";position:absolute;bottom:-10%;right:-10%;width:60%;height:60%;background:radial-gradient(circle,var(--color-secondary-glow) 0%,transparent 70%);z-index:-1;pointer-events:none}.glass{background:var(--bg-card);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-glass);box-shadow:0 8px 32px #0000005e;border-radius:16px;transition:var(--transition-smooth)}.glass:hover{border-color:var(--border-active);background:var(--bg-card-hover);box-shadow:0 12px 40px 0 var(--color-primary-glow)}h1,h2,h3,h4,h5{font-family:var(--font-display);letter-spacing:-.02em}.gradient-text{background:linear-gradient(135deg,#fff 30%,#cebeff);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.gradient-text-sec{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}button{cursor:pointer;border:none;outline:none;font-family:var(--font-display);font-weight:600;transition:var(--transition-smooth)}.btn-primary{background:linear-gradient(135deg,var(--color-primary) 0%,hsl(263,85%,55%) 100%);color:var(--text-main);padding:12px 24px;border-radius:8px;box-shadow:0 4px 14px 0 var(--color-primary-glow)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px 0 var(--color-primary);background:linear-gradient(135deg,hsl(263,85%,55%) 0%,var(--color-primary) 100%)}.btn-primary:active{transform:scale(.98)}.btn-secondary{background:transparent;color:var(--text-main);border:1px solid var(--border-glass);padding:12px 24px;border-radius:8px}.btn-secondary:hover{background:#c7c2d60d;border-color:var(--text-muted);transform:translateY(-2px)}.btn-danger{background:var(--color-danger);color:var(--text-main);padding:10px 20px;border-radius:8px;box-shadow:0 4px 14px 0 var(--color-danger-glow)}.btn-danger:hover{transform:translateY(-2px);box-shadow:0 6px 20px 0 var(--color-danger)}.badge{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.badge-approved{background-color:#1ded9626;color:var(--color-success);border:1px solid hsla(155,85%,52%,.3);box-shadow:0 0 10px var(--color-success-glow)}.badge-pending{background-color:#faaf2e26;color:var(--color-warning);border:1px solid hsla(38,95%,58%,.3);box-shadow:0 0 10px var(--color-warning-glow)}.badge-unverified{background-color:#80808026;color:var(--text-muted);border:1px solid hsla(0,0%,50%,.3)}.badge-license{background-color:#2b6cee26;color:#5a8cf2;border:1px solid hsla(220,85%,55%,.3)}.badge-vetting{background-color:#ad2bee26;color:#bf5af2;border:1px solid hsla(280,85%,55%,.3)}input,select,textarea{background:#0d0b1480;border:1px solid var(--border-glass);color:var(--text-main);padding:12px 16px;border-radius:8px;font-family:var(--font-body);outline:none;transition:var(--transition-smooth)}input:focus,select:focus,textarea:focus{border-color:var(--color-primary);box-shadow:0 0 10px var(--color-primary-glow)}.dark-leaflet-map .leaflet-tile{filter:invert(100%) hue-rotate(180deg) brightness(85%) contrast(90%)}.dark-leaflet-map{border-radius:12px;overflow:hidden;border:1px solid var(--border-glass);height:250px}.tag-intercity{background:linear-gradient(135deg,#256af433,#0b50da33);color:#6a9afb;border:1px solid hsla(220,90%,55%,.4)}.tag-intracity{background:linear-gradient(135deg,#0df28033,#0ac26633);color:#6afbb3;border:1px solid hsla(150,90%,50%,.4)}.tag-community{background:linear-gradient(135deg,#af25f433,#950bda33);color:#cb6afb;border:1px solid hsla(280,90%,55%,.4)}.tag-school{background:linear-gradient(135deg,#f4258c33,#da0b7333);color:#fb6ab3;border:1px solid hsla(330,90%,55%,.4)}@keyframes pulse{0%{box-shadow:0 0 #00e676b3}70%{box-shadow:0 0 0 10px #00e67600}to{box-shadow:0 0 #00e67600}}.pulse-dot{width:8px;height:8px;background-color:var(--color-success);border-radius:50%;display:inline-block;animation:pulse 2s infinite}.container{max-width:1200px;margin:0 auto;padding:0 24px}.grid-3{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px}.flex-between{display:flex;justify-content:space-between;align-items:center}.flex-center{display:flex;justify-content:center;align-items:center}.nav-link{color:var(--text-muted);text-decoration:none;font-family:var(--font-display);font-weight:500;padding:8px 16px;border-radius:20px;transition:var(--transition-smooth)}.nav-link:hover{color:var(--text-main);background:#c7c2d60d}.nav-link.active{color:var(--color-primary);background:#9b60fb1a;border:1px solid hsla(263,95%,68%,.2);box-shadow:0 0 15px #7c4dff26}@media (max-width: 768px){header div.container.flex-between{flex-direction:column;height:auto!important;padding:12px 16px!important;gap:12px}header nav{width:100%;overflow-x:auto;white-space:nowrap;padding-bottom:6px;-webkit-overflow-scrolling:touch;display:flex!important;gap:6px!important}header nav::-webkit-scrollbar{display:none}header .nav-link{flex-shrink:0}.grid-3{grid-template-columns:1fr!important}.container{padding:0 12px}header div.container>div:last-child{width:100%;justify-content:space-between;padding-top:8px;border-top:1px solid var(--border-glass)}.coordinator-panel{grid-template-columns:1fr!important}}
