.login-card[data-v-3a2094f3]{width:400px;max-width:90%;border-radius:12px;box-shadow:0 4px 10px rgba(0,0,0,.1)}.v-btn[data-v-4a6f8ca0]{font-size:16px;font-weight:700}.v-card[data-v-4a6f8ca0]{max-width:1000px;margin:20px auto}h1[data-v-4a6f8ca0]{font-size:28px;font-weight:700;margin-bottom:20px}.zones-root[data-v-11420a69]{--hero-bg:radial-gradient(circle at 100% 0%,#d7f2ff 0%,#e8f7ff 33%,#f6fbff 100%);--card-bg:linear-gradient(145deg,#f8fbff,#eff6ff);background:linear-gradient(180deg,#f4f8ff,#edf3ff)}.zones-hero[data-v-11420a69]{padding:18px 20px;border-radius:16px;background:var(--hero-bg);border:1px solid #d5e6fb}.zones-title[data-v-11420a69]{font-size:30px;line-height:1.12;color:#1f2e4d}.zones-subtitle[data-v-11420a69]{color:#55698f;font-size:14px}.zone-modal-card[data-v-11420a69],.zones-card[data-v-11420a69]{border-radius:14px;border:1px solid #d9e6ff;background:var(--card-bg)}.controls-bar[data-v-11420a69]{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.zone-map[data-v-11420a69]{position:relative;height:460px;width:100%;border-radius:10px;overflow:hidden;border:1px solid #dce8ff;background:#d8e7ff}.map-overlay[data-v-11420a69]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(244,248,255,.93);color:#2a3f65;font-weight:600;z-index:6}.map-overlay--error[data-v-11420a69]{color:#8b1f1f}@media (max-width:960px){.zones-title[data-v-11420a69]{font-size:24px}.zone-map[data-v-11420a69]{height:400px}}@media (max-width:600px){.zone-map[data-v-11420a69]{height:330px}}.zone-vertex-marker{width:18px;height:18px;border-radius:50%;border:2px solid #fff;background:#0f73ee;box-shadow:0 2px 8px rgba(0,0,0,.25);cursor:grab;padding:0}.zone-vertex-marker:active{cursor:grabbing}.points-root[data-v-a7f84362]{--panel-bg:linear-gradient(135deg,#f8fbff,#eef4ff);--hero-bg:radial-gradient(circle at 0% 0%,#d6ebff 0%,#eaf6ff 35%,#f7fbff 100%);--ink:#1d2b45;--muted:#5f6f8d;--accent:#1f7af1;--accent-soft:rgba(31,122,241,.12);background:linear-gradient(180deg,#f4f7fb,#ecf3ff)}.points-hero[data-v-a7f84362]{padding:18px 20px;border-radius:16px;background:var(--hero-bg);border:1px solid #d8e6ff}.points-title[data-v-a7f84362]{margin:0;font-size:30px;letter-spacing:.3px;line-height:1.1;color:var(--ink)}.points-subtitle[data-v-a7f84362]{margin-top:8px;color:var(--muted);font-size:14px}.panel-card[data-v-a7f84362]{border-radius:14px;border:1px solid #dce7fc;background:var(--panel-bg)}.stats-row[data-v-a7f84362]{display:flex;gap:8px}.stats-item[data-v-a7f84362]{flex:1;display:flex;flex-direction:column;padding:10px;border-radius:10px;background:#fff;border:1px solid #d7e2fb}.stats-label[data-v-a7f84362]{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.4px}.map-card[data-v-a7f84362]{overflow:hidden}.points-map[data-v-a7f84362]{position:relative;width:100%;height:420px;border-radius:12px;overflow:hidden;border:1px solid #dbe8ff;background:#dbe9ff}.map-overlay[data-v-a7f84362]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(1px);background:rgba(245,249,255,.92);color:#26406b;font-weight:600;z-index:5}.map-overlay--error[data-v-a7f84362]{color:#8b1f1f}code[data-v-a7f84362]{background:var(--accent-soft);border-radius:4px;padding:2px 6px}.error-list[data-v-a7f84362]{margin:0;padding-left:18px;color:#b42323;font-size:12px}@media (max-width:960px){.points-title[data-v-a7f84362]{font-size:24px}.points-map[data-v-a7f84362]{height:360px}}@media (max-width:600px){.points-map[data-v-a7f84362]{height:320px}.stats-row[data-v-a7f84362]{flex-direction:column}}.point-marker{position:relative;width:24px;height:24px;padding:0;border:0;border-radius:50%;background:transparent;cursor:grab}.point-marker:active{cursor:grabbing}.point-marker__pulse{position:absolute;inset:0;border-radius:50%;background:rgba(237,63,63,.22);animation:markerPulse 1.8s ease-out infinite}.point-marker__dot{position:absolute;width:12px;height:12px;border-radius:50%;background:#f04438;border:2px solid #fff;top:6px;left:6px;box-shadow:0 2px 10px rgba(0,0,0,.25)}.point-marker.is-selected .point-marker__dot{background:#1367d7}.point-marker.is-selected .point-marker__pulse{background:rgba(19,103,215,.24)}@keyframes markerPulse{0%{transform:scale(.8);opacity:.8}to{transform:scale(1.55);opacity:0}}