.navbar[data-v-46fcd8b8]{position:static;background-color:#f8f9fa;border-bottom:1px solid #dee2e6;padding:.75rem 0;z-index:auto}.nav-container[data-v-46fcd8b8]{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:0 1rem}.nav-links[data-v-46fcd8b8]{display:flex;gap:.75rem;align-items:center}.nav-link[data-v-46fcd8b8]{text-decoration:none;color:#007bff;padding:.5rem .75rem;border-radius:4px;transition:background-color .3s;white-space:nowrap;font-size:14px}.nav-link[data-v-46fcd8b8]:hover{background-color:#e9ecef}.nav-link.router-link-active[data-v-46fcd8b8]{background-color:#007bff;color:#fff}.dropdown[data-v-46fcd8b8]{position:relative;display:inline-block}.dropdown-btn[data-v-46fcd8b8]{background:none;border:none;color:#007bff;padding:.5rem .75rem;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .3s;white-space:nowrap}.dropdown-btn[data-v-46fcd8b8]:hover,.dropdown-btn.active[data-v-46fcd8b8]{background-color:#e9ecef}.dropdown-menu[data-v-46fcd8b8]{position:absolute;top:100%;left:0;background:white;border:1px solid #dee2e6;border-radius:4px;box-shadow:0 2px 8px #00000026;min-width:180px;z-index:1000;margin-top:2px}.dropdown-item[data-v-46fcd8b8]{display:block;text-decoration:none;color:#333;padding:.5rem .75rem;font-size:14px;transition:background-color .3s}.dropdown-item[data-v-46fcd8b8]:hover{background-color:#f8f9fa}.dropdown-item.router-link-active[data-v-46fcd8b8]{background-color:#007bff;color:#fff}.nav-user[data-v-46fcd8b8]{display:flex;align-items:center;gap:.75rem}.welcome-text[data-v-46fcd8b8]{font-weight:500;color:#495057;font-size:14px}.logout-btn[data-v-46fcd8b8]{background-color:#dc3545;color:#fff;border:none;padding:.5rem .75rem;border-radius:4px;cursor:pointer;transition:background-color .3s;font-size:14px}.logout-btn[data-v-46fcd8b8]:hover{background-color:#c82333}@media (max-width: 1024px){.nav-links[data-v-46fcd8b8]{gap:.5rem}.nav-link[data-v-46fcd8b8],.dropdown-btn[data-v-46fcd8b8]{padding:.4rem .6rem;font-size:13px}.welcome-text[data-v-46fcd8b8]{display:none}}@media (max-width: 768px){.nav-container[data-v-46fcd8b8]{flex-direction:column;gap:.75rem;padding:.5rem}.nav-links[data-v-46fcd8b8]{flex-wrap:wrap;justify-content:center;gap:.4rem}.nav-link[data-v-46fcd8b8],.dropdown-btn[data-v-46fcd8b8]{padding:.3rem .5rem;font-size:12px}.dropdown-menu[data-v-46fcd8b8]{position:fixed;top:auto;left:50%;transform:translate(-50%);width:90vw;max-width:300px}}@media (max-width: 480px){.navbar[data-v-46fcd8b8]{padding:.5rem 0}.nav-links[data-v-46fcd8b8]{gap:.25rem}.nav-link[data-v-46fcd8b8],.dropdown-btn[data-v-46fcd8b8]{padding:.25rem .4rem;font-size:11px}}.loading[data-v-4430447a]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px}.spinner[data-v-4430447a]{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin-4430447a 1s linear infinite}@keyframes spin-4430447a{0%{transform:rotate(0)}to{transform:rotate(360deg)}}#app{min-height:100vh;display:flex;flex-direction:column}.page-container{flex:1;padding:1rem;max-width:1200px;margin:0 auto;width:100%}.login-container[data-v-e69c1311]{max-width:400px;margin:2rem auto;padding:2rem;border:1px solid #ddd;border-radius:8px;box-shadow:0 2px 10px #0000001a}.form-group[data-v-e69c1311]{margin-bottom:1rem}label[data-v-e69c1311]{display:block;margin-bottom:.5rem;font-weight:700}input[data-v-e69c1311]{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}input[data-v-e69c1311]:disabled{background-color:#f5f5f5;cursor:not-allowed}button[data-v-e69c1311]{width:100%;padding:.75rem;background-color:#007bff;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .3s}button[data-v-e69c1311]:hover:not(:disabled){background-color:#0056b3}button[data-v-e69c1311]:disabled{background-color:#6c757d;cursor:not-allowed}.error[data-v-e69c1311]{color:#dc3545;background-color:#f8d7da;border:1px solid #f5c6cb;padding:.5rem;border-radius:4px;margin-bottom:1rem}.register-link[data-v-e69c1311]{text-align:center;margin-top:1rem}.register-link a[data-v-e69c1311]{color:#007bff;text-decoration:none}.register-link a[data-v-e69c1311]:hover{text-decoration:underline}.register-container[data-v-5796c518]{max-width:400px;margin:2rem auto;padding:2rem;border:1px solid #ddd;border-radius:8px;box-shadow:0 2px 10px #0000001a}.form-group[data-v-5796c518]{margin-bottom:1rem}label[data-v-5796c518]{display:block;margin-bottom:.5rem;font-weight:700}input[data-v-5796c518],select[data-v-5796c518]{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}input[data-v-5796c518]:disabled,select[data-v-5796c518]:disabled{background-color:#f5f5f5;cursor:not-allowed}button[data-v-5796c518]{width:100%;padding:.75rem;background-color:#28a745;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .3s}button[data-v-5796c518]:hover:not(:disabled){background-color:#218838}button[data-v-5796c518]:disabled{background-color:#6c757d;cursor:not-allowed}.error[data-v-5796c518]{color:#dc3545;background-color:#f8d7da;border:1px solid #f5c6cb;padding:.5rem;border-radius:4px;margin-bottom:1rem}.login-link[data-v-5796c518]{text-align:center;margin-top:1rem}.login-link a[data-v-5796c518]{color:#007bff;text-decoration:none}.login-link a[data-v-5796c518]:hover{text-decoration:underline}.accessibility-panel[data-v-3af85aec]{position:fixed;top:20px;right:20px;z-index:10000}.accessibility-toggle[data-v-3af85aec]{background:#007bff;color:#fff;border:none;border-radius:50%;width:56px;height:56px;cursor:pointer;font-size:1.5rem;font-weight:700;box-shadow:0 4px 12px #00000026;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.accessibility-toggle[data-v-3af85aec]:hover,.accessibility-toggle[data-v-3af85aec]:focus{background:#0056b3;transform:scale(1.05)}.accessibility-settings[data-v-3af85aec]{position:absolute;top:70px;right:0;width:400px;max-height:80vh;background:white;border-radius:12px;box-shadow:0 10px 30px #0000004d;overflow:hidden;animation:slideIn-3af85aec .3s ease}@keyframes slideIn-3af85aec{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.settings-header[data-v-3af85aec]{padding:1.5rem;border-bottom:1px solid #e9ecef;position:relative}.settings-header h2[data-v-3af85aec]{margin:0 0 .5rem;color:#333;font-size:1.25rem}.settings-description[data-v-3af85aec]{margin:0;color:#666;font-size:.875rem}.close-button[data-v-3af85aec]{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center}.close-button[data-v-3af85aec]:hover,.close-button[data-v-3af85aec]:focus{background:#f8f9fa;color:#333}.settings-content[data-v-3af85aec]{max-height:60vh;overflow-y:auto;padding:1rem 1.5rem 1.5rem}.setting-group[data-v-3af85aec]{margin-bottom:2rem}.setting-group[data-v-3af85aec]:last-child{margin-bottom:0}.setting-group h3[data-v-3af85aec]{margin:0 0 1rem;color:#333;font-size:1rem;font-weight:600;border-bottom:1px solid #e9ecef;padding-bottom:.5rem}.setting-item[data-v-3af85aec]{margin-bottom:1.5rem}.setting-label[data-v-3af85aec]{display:flex;align-items:center;cursor:pointer;margin-bottom:.25rem;font-weight:500}.setting-label input[type=checkbox][data-v-3af85aec]{margin-right:.75rem;width:18px;height:18px}.setting-text[data-v-3af85aec]{color:#333}.setting-description[data-v-3af85aec]{margin:.25rem 0 0;color:#666;font-size:.875rem;line-height:1.4}.setting-slider[data-v-3af85aec]{width:100%;margin-top:.5rem;height:6px;border-radius:3px;background:#e9ecef;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.setting-slider[data-v-3af85aec]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#007bff;cursor:pointer}.setting-slider[data-v-3af85aec]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#007bff;cursor:pointer;border:none}.settings-actions[data-v-3af85aec]{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e9ecef}.action-button[data-v-3af85aec]{padding:.5rem 1rem;border:1px solid #007bff;border-radius:6px;background:#007bff;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s ease;text-decoration:none;display:inline-block}.action-button[data-v-3af85aec]:hover,.action-button[data-v-3af85aec]:focus{background:#0056b3;border-color:#0056b3}.action-button.secondary[data-v-3af85aec]{background:white;color:#007bff}.action-button.secondary[data-v-3af85aec]:hover,.action-button.secondary[data-v-3af85aec]:focus{background:#f8f9fa}.accessibility-backdrop[data-v-3af85aec]{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.1);z-index:-1}.sr-only[data-v-3af85aec]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width: 768px){.accessibility-panel[data-v-3af85aec]{top:10px;right:10px}.accessibility-settings[data-v-3af85aec]{width:calc(100vw - 20px);right:-10px}}.high-contrast .accessibility-toggle[data-v-3af85aec],.high-contrast .accessibility-settings[data-v-3af85aec]{background:#000;color:#fff;border:2px solid #fff}.high-contrast .setting-label[data-v-3af85aec]{color:#fff}.high-contrast .setting-description[data-v-3af85aec]{color:#ccc}.reduced-motion .accessibility-settings[data-v-3af85aec]{animation:none!important}.reduced-motion .accessibility-toggle[data-v-3af85aec]{transition:none!important}.app-layout[data-v-22c9cb53]{min-height:100vh;display:flex;flex-direction:column}.page-announcement[data-v-22c9cb53]{background-color:#d1ecf1;border:1px solid #bee5eb;color:#0c5460;padding:0;margin:0}.announcement-content[data-v-22c9cb53]{max-width:1200px;margin:0 auto;padding:1rem;display:flex;align-items:center;gap:.5rem}.announcement-icon[data-v-22c9cb53]{font-size:1.2rem;flex-shrink:0}.announcement-text[data-v-22c9cb53]{flex:1;font-weight:500}.announcement-close[data-v-22c9cb53]{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#0c5460;padding:.25rem;border-radius:4px;line-height:1}.announcement-close[data-v-22c9cb53]:hover,.announcement-close[data-v-22c9cb53]:focus{background-color:#0c54601a}.main-content[data-v-22c9cb53]{flex:1;outline:none;max-width:1200px;margin:0 auto;padding:2rem 1rem;width:100%}.main-content[data-v-22c9cb53]:focus{outline:2px solid #007bff;outline-offset:-2px}.page-header[data-v-22c9cb53]{margin-bottom:2rem;border-bottom:1px solid #e9ecef;padding-bottom:1rem}.page-title[data-v-22c9cb53]{margin:0 0 .5rem;color:#333;font-size:2rem;font-weight:600;line-height:1.2}.page-description[data-v-22c9cb53]{margin:0;color:#666;font-size:1.1rem;line-height:1.4}.breadcrumb-nav[data-v-22c9cb53]{margin-bottom:1.5rem}.breadcrumb[data-v-22c9cb53]{display:flex;flex-wrap:wrap;padding:0;margin:0;list-style:none;background-color:#f8f9fa;border-radius:6px;padding:.75rem 1rem}.breadcrumb-item[data-v-22c9cb53]{display:flex;align-items:center}.breadcrumb-link[data-v-22c9cb53]{color:#007bff;text-decoration:none;padding:.25rem .5rem;border-radius:4px}.breadcrumb-link[data-v-22c9cb53]:hover,.breadcrumb-link[data-v-22c9cb53]:focus{background-color:#e7f3ff;text-decoration:underline}.breadcrumb-current[data-v-22c9cb53]{color:#6c757d;font-weight:500;padding:.25rem .5rem}.breadcrumb-separator[data-v-22c9cb53]{margin:0 .5rem;color:#6c757d}.page-content[data-v-22c9cb53]{min-height:400px}.back-to-top[data-v-22c9cb53]{position:fixed;bottom:2rem;right:2rem;width:50px;height:50px;border-radius:50%;background-color:#007bff;color:#fff;border:none;cursor:pointer;box-shadow:0 4px 12px #00000026;transition:all .3s ease;opacity:0;visibility:hidden;transform:translateY(20px);z-index:999;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700}.back-to-top.visible[data-v-22c9cb53]{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top[data-v-22c9cb53]:hover,.back-to-top[data-v-22c9cb53]:focus{background-color:#0056b3;transform:scale(1.1)}.sr-announcements[data-v-22c9cb53]{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.loading-overlay[data-v-22c9cb53]{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000c;display:flex;align-items:center;justify-content:center;z-index:10000}.loading-content[data-v-22c9cb53]{background-color:#fff;padding:2rem;border-radius:8px;text-align:center;min-width:200px}.loading-spinner[data-v-22c9cb53]{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin-22c9cb53 1s linear infinite;margin:0 auto 1rem}@keyframes spin-22c9cb53{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-content h2[data-v-22c9cb53]{margin:0 0 .5rem;font-size:1.2rem;color:#333}.loading-content p[data-v-22c9cb53]{margin:0;color:#666}@media (max-width: 768px){.main-content[data-v-22c9cb53]{padding:1rem}.page-title[data-v-22c9cb53]{font-size:1.5rem}.back-to-top[data-v-22c9cb53]{bottom:1rem;right:1rem;width:44px;height:44px;font-size:1.2rem}.breadcrumb[data-v-22c9cb53]{flex-direction:column;align-items:flex-start}.breadcrumb-item[data-v-22c9cb53]{margin-bottom:.25rem}.breadcrumb-separator[data-v-22c9cb53]{display:none}}.high-contrast .back-to-top[data-v-22c9cb53]{background-color:var(--button-bg)!important;color:var(--button-text)!important;border:2px solid var(--border-color)!important}.high-contrast .breadcrumb[data-v-22c9cb53]{background-color:var(--bg-color)!important;border:1px solid var(--border-color)!important}.reduced-motion .back-to-top[data-v-22c9cb53],.reduced-motion .loading-spinner[data-v-22c9cb53]{transition:none!important;animation:none!important}.reduced-motion .loading-spinner[data-v-22c9cb53]{border:4px solid #007bff;border-radius:0}.large-text .page-title[data-v-22c9cb53]{font-size:calc(2rem * var(--font-size-multiplier, 1.25))}.large-text .page-description[data-v-22c9cb53]{font-size:calc(1.1rem * var(--font-size-multiplier, 1.25))}.admin-dashboard[data-v-84627792]{padding:20px;max-width:1400px;margin:0 auto;background:#f8f9fa;min-height:100vh}.dashboard-header[data-v-84627792]{background:white;border-radius:8px;padding:30px;margin-bottom:30px;box-shadow:0 2px 8px #0000001a}.dashboard-header h1[data-v-84627792]{margin:0 0 10px;color:#333;font-size:2.5rem;font-weight:600}.dashboard-subtitle[data-v-84627792]{margin:0 0 25px;color:#666;font-size:1.1rem}.admin-actions[data-v-84627792]{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.refresh-btn[data-v-84627792],.export-btn[data-v-84627792]{padding:12px 24px;background:#007bff;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.refresh-btn[data-v-84627792]:hover:not(:disabled),.export-btn[data-v-84627792]:hover{background:#0056b3}.refresh-btn[data-v-84627792]:disabled{background:#6c757d;cursor:not-allowed}.last-updated[data-v-84627792]{font-size:14px;color:#666;margin-left:auto}.stats-grid[data-v-84627792]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:40px}.stat-card[data-v-84627792]{background:white;border-radius:8px;padding:25px;box-shadow:0 2px 8px #0000001a;display:flex;align-items:center;gap:20px}.stat-icon[data-v-84627792]{font-size:3rem;opacity:.8}.stat-content h3[data-v-84627792]{margin:0 0 8px;color:#666;font-size:1rem;font-weight:500}.stat-number[data-v-84627792]{font-size:2.5rem;font-weight:700;color:#333;margin-bottom:5px}.stat-trend[data-v-84627792]{font-size:14px;font-weight:500}.stat-trend.up[data-v-84627792]{color:#28a745}.stat-trend.down[data-v-84627792]{color:#dc3545}.stat-trend.stable[data-v-84627792]{color:#007bff}.stat-subtext[data-v-84627792]{font-size:14px;color:#666}.status-indicator[data-v-84627792]{font-size:1.5rem!important}.status-indicator.status-good[data-v-84627792]{color:#28a745}.status-indicator.status-warning[data-v-84627792]{color:#ffc107}.status-indicator.status-error[data-v-84627792]{color:#dc3545}.dashboard-section[data-v-84627792]{background:white;border-radius:8px;padding:30px;margin-bottom:30px;box-shadow:0 2px 8px #0000001a}.dashboard-section h2[data-v-84627792]{margin:0 0 25px;color:#333;font-size:1.8rem;font-weight:600}.demographics-grid[data-v-84627792]{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:30px}.demographic-card h3[data-v-84627792]{margin:0 0 20px;color:#333;font-size:1.3rem}.user-type-item[data-v-84627792],.age-group-item[data-v-84627792]{display:flex;align-items:center;gap:15px;margin-bottom:15px;padding:15px;background:#f8f9fa;border-radius:6px}.type-info[data-v-84627792]{display:flex;align-items:center;gap:10px;min-width:120px}.type-icon[data-v-84627792]{font-size:1.5rem}.type-name[data-v-84627792],.age-range[data-v-84627792]{font-weight:500;color:#333}.type-stats[data-v-84627792]{display:flex;align-items:center;gap:15px;flex:1}.type-count[data-v-84627792],.age-count[data-v-84627792]{font-weight:700;color:#333;min-width:60px}.type-bar[data-v-84627792],.age-bar[data-v-84627792]{flex:1;height:8px;background:#e9ecef;border-radius:4px;overflow:hidden}.type-fill[data-v-84627792],.age-fill[data-v-84627792]{height:100%;background:#007bff;transition:width .3s ease}.type-percentage[data-v-84627792]{font-size:14px;color:#666;min-width:50px}.activity-grid[data-v-84627792]{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:30px}.activity-card h3[data-v-84627792]{margin:0 0 20px;color:#333;font-size:1.3rem}.recent-item[data-v-84627792]{display:flex;align-items:center;gap:15px;padding:15px;background:#f8f9fa;border-radius:6px;margin-bottom:10px}.user-avatar[data-v-84627792]{width:40px;height:40px;border-radius:50%;background:#007bff;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}.user-details[data-v-84627792]{flex:1}.user-name[data-v-84627792]{font-weight:500;color:#333}.user-role[data-v-84627792]{font-size:14px;color:#666;text-transform:capitalize}.registration-time[data-v-84627792]{font-size:14px;color:#666}.metrics-list[data-v-84627792]{display:flex;flex-direction:column;gap:15px}.metric-item[data-v-84627792]{display:flex;justify-content:space-between;align-items:center;padding:15px;background:#f8f9fa;border-radius:6px}.metric-label[data-v-84627792]{color:#666;font-weight:500}.metric-value[data-v-84627792]{color:#333;font-weight:700}.activities-table[data-v-84627792]{display:flex;flex-direction:column;gap:2px}.table-header[data-v-84627792]{display:grid;grid-template-columns:120px 150px 180px 1fr 100px;gap:15px;padding:15px;background:#f8f9fa;border-radius:6px;font-weight:600;color:#333}.table-row[data-v-84627792]{display:grid;grid-template-columns:120px 150px 180px 1fr 100px;gap:15px;padding:15px;background:white;border:1px solid #e9ecef;border-radius:6px;align-items:center}.table-row[data-v-84627792]:hover{background:#f8f9fa}.user-badge[data-v-84627792]{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500;text-transform:uppercase}.user-badge.admin[data-v-84627792]{background:#ffe6e6;color:#dc3545}.user-badge.user[data-v-84627792]{background:#e6f7ff;color:#007bff}.user-badge.elder[data-v-84627792]{background:#f0f9ff;color:#0ea5e9}.user-badge.system[data-v-84627792]{background:#f3f4f6;color:#6b7280}.action-cell[data-v-84627792]{display:flex;align-items:center;gap:8px}.action-icon[data-v-84627792]{font-size:1.2rem}.status-badge[data-v-84627792]{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500;text-transform:uppercase}.status-badge.success[data-v-84627792]{background:#d4edda;color:#155724}.status-badge.pending[data-v-84627792]{background:#fff3cd;color:#856404}.status-badge.error[data-v-84627792]{background:#f8d7da;color:#721c24}.admin-tools-grid[data-v-84627792]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.tool-card[data-v-84627792]{display:block;padding:25px;background:#f8f9fa;border-radius:8px;text-decoration:none;color:inherit;transition:all .2s;border:2px solid transparent}.tool-card[data-v-84627792]:hover{background:white;border-color:#007bff;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;text-decoration:none;color:inherit}.tool-card.clickable[data-v-84627792]{cursor:pointer}.tool-icon[data-v-84627792]{font-size:2.5rem;margin-bottom:15px}.tool-card h3[data-v-84627792]{margin:0 0 10px;color:#333;font-size:1.2rem}.tool-card p[data-v-84627792]{margin:0;color:#666;font-size:14px}.loading-overlay[data-v-84627792]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,.9);display:flex;align-items:center;justify-content:center;z-index:1000}.loading-content[data-v-84627792]{text-align:center;color:#333}.loading-spinner[data-v-84627792]{width:40px;height:40px;border:4px solid #e3e3e3;border-top:4px solid #007bff;border-radius:50%;animation:spin-84627792 1s linear infinite;margin:0 auto 15px}@keyframes spin-84627792{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-message[data-v-84627792]{background:white;border-radius:8px;padding:40px;text-align:center;box-shadow:0 2px 8px #0000001a;border:1px solid #f5c6cb;background-color:#f8d7da;color:#721c24}.error-message h3[data-v-84627792]{margin:0 0 15px;color:#721c24}.retry-btn[data-v-84627792]{padding:10px 20px;background:#dc3545;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;margin-top:15px}.retry-btn[data-v-84627792]:hover{background:#c82333}@media (max-width: 1200px){.table-header[data-v-84627792],.table-row[data-v-84627792]{grid-template-columns:100px 120px 150px 1fr 80px;gap:10px}}@media (max-width: 768px){.admin-dashboard[data-v-84627792]{padding:15px}.dashboard-header[data-v-84627792]{padding:20px}.dashboard-header h1[data-v-84627792]{font-size:2rem}.stats-grid[data-v-84627792]{grid-template-columns:1fr}.stat-card[data-v-84627792]{flex-direction:column;text-align:center}.demographics-grid[data-v-84627792],.activity-grid[data-v-84627792]{grid-template-columns:1fr}.admin-actions[data-v-84627792]{flex-direction:column;align-items:stretch}.last-updated[data-v-84627792]{margin-left:0}.table-header[data-v-84627792],.table-row[data-v-84627792]{grid-template-columns:1fr;gap:5px}.table-header[data-v-84627792]{display:none}.table-row[data-v-84627792]{display:block;padding:15px}.table-cell[data-v-84627792]{display:block;margin-bottom:8px}.table-cell[data-v-84627792]:before{content:attr(data-label) ": ";font-weight:700;color:#666}}.refresh-btn[data-v-84627792]:focus,.export-btn[data-v-84627792]:focus,.retry-btn[data-v-84627792]:focus{outline:2px solid #007bff;outline-offset:2px}@media (prefers-contrast: high){.admin-dashboard[data-v-84627792]{background:white}.dashboard-header[data-v-84627792],.dashboard-section[data-v-84627792],.stat-card[data-v-84627792]{border:2px solid #000}.tool-card[data-v-84627792]:hover{border-color:#000}}@media (prefers-reduced-motion: reduce){.loading-spinner[data-v-84627792]{animation:none}.tool-card[data-v-84627792],.type-fill[data-v-84627792],.age-fill[data-v-84627792]{transition:none}}.error{color:#ff5252;font-weight:700}.appointment-booking[data-v-2c0c9b7e]{max-width:1200px;margin:0 auto;padding:20px}.page-header[data-v-2c0c9b7e]{text-align:center;margin-bottom:30px}.page-header h1[data-v-2c0c9b7e]{color:#333;margin-bottom:10px}.page-header p[data-v-2c0c9b7e]{color:#666;font-size:16px}.booking-stats[data-v-2c0c9b7e]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.stat-card[data-v-2c0c9b7e]{background:white;border-radius:8px;padding:20px;text-align:center;box-shadow:0 2px 8px #0000001a}.stat-card h3[data-v-2c0c9b7e]{font-size:2rem;color:#007bff;margin:0 0 10px}.stat-card p[data-v-2c0c9b7e]{margin:0;color:#666}.quick-actions[data-v-2c0c9b7e]{display:flex;gap:15px;margin-bottom:30px;justify-content:center}.book-btn[data-v-2c0c9b7e]{padding:12px 24px;border:none;border-radius:6px;cursor:pointer;font-size:16px;transition:background-color .3s;background:#28a745;color:#fff}.book-btn[data-v-2c0c9b7e]:hover{background:#218838}.calendar-container[data-v-2c0c9b7e]{background:white;border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000001a}.modal-overlay[data-v-2c0c9b7e]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-2c0c9b7e]{background:white;border-radius:8px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-header[data-v-2c0c9b7e]{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #eee}.modal-header h2[data-v-2c0c9b7e]{margin:0;color:#333}.close-btn[data-v-2c0c9b7e]{background:none;border:none;font-size:24px;cursor:pointer;color:#999}.close-btn[data-v-2c0c9b7e]:hover{color:#333}.booking-form[data-v-2c0c9b7e]{padding:20px}.form-group[data-v-2c0c9b7e]{margin-bottom:20px}.form-group label[data-v-2c0c9b7e]{display:block;margin-bottom:5px;font-weight:500;color:#333}.form-group input[data-v-2c0c9b7e],.form-group select[data-v-2c0c9b7e]{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px}.form-group input[data-v-2c0c9b7e]:focus,.form-group select[data-v-2c0c9b7e]:focus{outline:none;border-color:#007bff}.form-group select[data-v-2c0c9b7e]:disabled{background-color:#f8f9fa;cursor:not-allowed}.form-group option[data-v-2c0c9b7e]:disabled{color:#999}.conflict-warning[data-v-2c0c9b7e]{background:#fff3cd;border:1px solid #ffeaa7;color:#856404;padding:10px;border-radius:4px;margin-bottom:20px}.form-actions[data-v-2c0c9b7e]{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.cancel-btn[data-v-2c0c9b7e],.submit-btn[data-v-2c0c9b7e]{padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-size:14px}.cancel-btn[data-v-2c0c9b7e]{background:#6c757d;color:#fff}.cancel-btn[data-v-2c0c9b7e]:hover{background:#545b62}.submit-btn[data-v-2c0c9b7e]{background:#007bff;color:#fff}.submit-btn[data-v-2c0c9b7e]:hover:not(:disabled){background:#0056b3}.submit-btn[data-v-2c0c9b7e]:disabled{background:#ccc;cursor:not-allowed}.appointment-details[data-v-2c0c9b7e]{padding:20px}.detail-row[data-v-2c0c9b7e]{display:flex;margin-bottom:15px;align-items:flex-start}.detail-row strong[data-v-2c0c9b7e]{min-width:120px;color:#333}.detail-row span[data-v-2c0c9b7e]{color:#666}.detail-actions[data-v-2c0c9b7e]{padding:20px;border-top:1px solid #eee;display:flex;gap:10px;justify-content:flex-end}.edit-btn[data-v-2c0c9b7e],.cancel-appointment-btn[data-v-2c0c9b7e],.close-detail-btn[data-v-2c0c9b7e]{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px}.edit-btn[data-v-2c0c9b7e]{background:#ffc107;color:#212529}.edit-btn[data-v-2c0c9b7e]:hover{background:#e0a800}.cancel-appointment-btn[data-v-2c0c9b7e]{background:#dc3545;color:#fff}.cancel-appointment-btn[data-v-2c0c9b7e]:hover{background:#c82333}.close-detail-btn[data-v-2c0c9b7e]{background:#6c757d;color:#fff}.close-detail-btn[data-v-2c0c9b7e]:hover{background:#545b62}@media (max-width: 768px){.appointment-booking[data-v-2c0c9b7e]{padding:10px}.modal-content[data-v-2c0c9b7e]{width:95%;margin:10px}.booking-stats[data-v-2c0c9b7e]{grid-template-columns:1fr}.form-actions[data-v-2c0c9b7e],.detail-actions[data-v-2c0c9b7e]{flex-direction:column}}.interactive-table[data-v-e72a17eb]{background:white;border-radius:8px;box-shadow:0 2px 10px #0000001a;overflow:hidden}.table-controls[data-v-e72a17eb]{padding:20px;background:#f8f9fa;border-bottom:1px solid #dee2e6}.controls-row[data-v-e72a17eb]{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.search-container[data-v-e72a17eb]{flex:1}.export-controls[data-v-e72a17eb]{display:flex;gap:10px}.export-btn[data-v-e72a17eb]{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s;display:flex;align-items:center;gap:5px}.csv-btn[data-v-e72a17eb]{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.csv-btn[data-v-e72a17eb]:hover{background:linear-gradient(135deg,#218838,#1e7e34);transform:translateY(-1px)}.pdf-btn[data-v-e72a17eb]{background:linear-gradient(135deg,#dc3545,#e74c3c);color:#fff}.pdf-btn[data-v-e72a17eb]:hover{background:linear-gradient(135deg,#c82333,#dc3545);transform:translateY(-1px)}.global-search[data-v-e72a17eb]{width:100%;max-width:300px;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.column-filters[data-v-e72a17eb]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.column-filter label[data-v-e72a17eb]{display:block;font-weight:600;margin-bottom:5px;color:#495057}.column-search[data-v-e72a17eb]{width:100%;padding:6px 10px;border:1px solid #ddd;border-radius:4px;font-size:13px}.table-wrapper[data-v-e72a17eb]{overflow-x:auto}.data-table[data-v-e72a17eb]{width:100%;border-collapse:collapse}.data-table th[data-v-e72a17eb]{background:#e9ecef;padding:12px;text-align:left;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none;border-bottom:2px solid #dee2e6}.data-table th[data-v-e72a17eb]:hover{background:#dee2e6}.data-table td[data-v-e72a17eb]{padding:12px;border-bottom:1px solid #dee2e6}.data-table tbody tr[data-v-e72a17eb]:hover{background:#f8f9fa}.sort-indicator[data-v-e72a17eb]{margin-left:5px;font-size:12px;color:#6c757d}.pagination[data-v-e72a17eb]{display:flex;justify-content:space-between;align-items:center;padding:20px;background:#f8f9fa;border-top:1px solid #dee2e6}.pagination-info[data-v-e72a17eb]{color:#6c757d;font-size:14px}.pagination-controls[data-v-e72a17eb]{display:flex;gap:5px;align-items:center}.page-btn[data-v-e72a17eb]{padding:8px 12px;border:1px solid #dee2e6;background:white;color:#495057;cursor:pointer;border-radius:4px;font-size:14px}.page-btn[data-v-e72a17eb]:hover:not(:disabled){background:#e9ecef}.page-btn[data-v-e72a17eb]:disabled{opacity:.5;cursor:not-allowed}.page-btn.active[data-v-e72a17eb]{background:#007bff;color:#fff;border-color:#007bff}.ellipsis[data-v-e72a17eb]{padding:8px 4px;color:#6c757d}.status-message[data-v-e72a17eb]{padding:12px 16px;border-radius:4px;margin-top:15px;font-weight:500;text-align:center}.status-message.success[data-v-e72a17eb]{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.status-message.error[data-v-e72a17eb]{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}@media (max-width: 768px){.column-filters[data-v-e72a17eb]{grid-template-columns:1fr}.pagination[data-v-e72a17eb]{flex-direction:column;gap:15px}.table-wrapper[data-v-e72a17eb]{font-size:14px}}.employees-page[data-v-e9339315]{padding:20px;max-width:1200px;margin:0 auto}.page-header[data-v-e9339315]{margin-bottom:30px;text-align:center}.page-header h1[data-v-e9339315]{color:#2c3e50;font-size:2.5rem;margin-bottom:10px}.page-header p[data-v-e9339315]{color:#6c757d;font-size:1.1rem;max-width:600px;margin:0 auto}.content-wrapper[data-v-e9339315]{background:white;border-radius:8px;box-shadow:0 2px 10px #0000001a}.loading[data-v-e9339315]{text-align:center;padding:50px;color:#6c757d}@media (max-width: 768px){.employees-page[data-v-e9339315]{padding:10px}.page-header h1[data-v-e9339315]{font-size:2rem}}.products-page[data-v-862b973e]{padding:20px;max-width:1200px;margin:0 auto}.page-header[data-v-862b973e]{margin-bottom:30px;text-align:center}.page-header h1[data-v-862b973e]{color:#2c3e50;font-size:2.5rem;margin-bottom:10px}.page-header p[data-v-862b973e]{color:#6c757d;font-size:1.1rem;max-width:600px;margin:0 auto}.content-wrapper[data-v-862b973e]{background:white;border-radius:8px;box-shadow:0 2px 10px #0000001a}.loading[data-v-862b973e]{text-align:center;padding:50px;color:#6c757d}@media (max-width: 768px){.products-page[data-v-862b973e]{padding:10px}.page-header h1[data-v-862b973e]{font-size:2rem}}.email-composer[data-v-2b56675e]{max-width:800px;margin:0 auto;padding:20px;background:white;border-radius:8px;box-shadow:0 2px 10px #0000001a}.email-header[data-v-2b56675e]{text-align:center;margin-bottom:30px}.email-header h2[data-v-2b56675e]{color:#2c3e50;margin-bottom:10px}.email-header p[data-v-2b56675e]{color:#6c757d}.email-form[data-v-2b56675e]{margin-bottom:30px}.form-row[data-v-2b56675e]{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.form-group[data-v-2b56675e]{margin-bottom:20px}.form-group label[data-v-2b56675e]{display:block;margin-bottom:5px;font-weight:600;color:#495057}.form-group input[data-v-2b56675e],.form-group textarea[data-v-2b56675e]{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:14px;transition:border-color .3s}.form-group input[data-v-2b56675e]:focus,.form-group textarea[data-v-2b56675e]:focus{outline:none;border-color:#007bff}.form-group input[data-v-2b56675e]:disabled,.form-group textarea[data-v-2b56675e]:disabled{background-color:#f8f9fa;cursor:not-allowed}.file-input-wrapper[data-v-2b56675e]{position:relative}.file-info[data-v-2b56675e]{display:flex;align-items:center;gap:10px;margin-top:10px;padding:8px 12px;background:#f8f9fa;border-radius:4px}.file-name[data-v-2b56675e]{font-weight:500}.file-size[data-v-2b56675e]{color:#6c757d;font-size:12px}.remove-file[data-v-2b56675e]{background:#dc3545;color:#fff;border:none;border-radius:50%;width:20px;height:20px;cursor:pointer;font-size:12px;display:flex;align-items:center;justify-content:center}.file-hint[data-v-2b56675e]{color:#6c757d;font-size:12px;margin-top:5px;display:block}.form-actions[data-v-2b56675e]{display:flex;gap:15px;justify-content:flex-end}.send-btn[data-v-2b56675e]{background:#28a745;color:#fff;border:none;padding:12px 24px;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .3s}.send-btn[data-v-2b56675e]:hover:not(:disabled){background:#218838}.send-btn[data-v-2b56675e]:disabled{background:#6c757d;cursor:not-allowed}.reset-btn[data-v-2b56675e]{background:#6c757d;color:#fff;border:none;padding:12px 24px;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .3s}.reset-btn[data-v-2b56675e]:hover:not(:disabled){background:#5a6268}.quick-templates[data-v-2b56675e]{border-top:1px solid #dee2e6;padding-top:20px;margin-bottom:20px}.quick-templates h3[data-v-2b56675e]{margin-bottom:15px;color:#495057}.template-buttons[data-v-2b56675e]{display:flex;gap:10px;flex-wrap:wrap}.template-btn[data-v-2b56675e]{background:#007bff;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:13px;transition:background-color .3s}.template-btn[data-v-2b56675e]:hover:not(:disabled){background:#0056b3}.template-btn[data-v-2b56675e]:disabled{background:#6c757d;cursor:not-allowed}.status-message[data-v-2b56675e]{padding:12px 16px;border-radius:4px;margin-top:20px;font-weight:500}.status-message.success[data-v-2b56675e]{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.status-message.error[data-v-2b56675e]{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}@media (max-width: 768px){.form-row[data-v-2b56675e]{grid-template-columns:1fr}.form-actions[data-v-2b56675e],.template-buttons[data-v-2b56675e]{flex-direction:column}}.email-page[data-v-f1e07ff2]{max-width:1000px;margin:0 auto;padding:20px}.page-header[data-v-f1e07ff2]{text-align:center;margin-bottom:40px}.page-header h1[data-v-f1e07ff2]{color:#2c3e50;font-size:2.5rem;margin-bottom:10px}.page-header p[data-v-f1e07ff2]{color:#6c757d;font-size:1.1rem}.email-content[data-v-f1e07ff2]{display:grid;gap:30px}.features-info[data-v-f1e07ff2]{background:#f8f9fa;padding:20px;border-radius:8px;border-left:4px solid #007bff}.features-info h3[data-v-f1e07ff2]{color:#495057;margin-bottom:15px}.features-info ul[data-v-f1e07ff2]{list-style:none;padding:0}.features-info li[data-v-f1e07ff2]{padding:5px 0;color:#495057}.email-demo[data-v-f1e07ff2]{background:white;padding:20px;border-radius:8px;box-shadow:0 2px 10px #0000001a}.email-demo h3[data-v-f1e07ff2]{color:#495057;margin-bottom:20px}.demo-buttons[data-v-f1e07ff2]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px}.demo-btn[data-v-f1e07ff2]{display:flex;align-items:center;gap:10px;padding:15px 20px;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s;text-align:left}.demo-btn span[data-v-f1e07ff2]{font-size:20px}.demo-btn.welcome[data-v-f1e07ff2]{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.demo-btn.appointment[data-v-f1e07ff2]{background:linear-gradient(135deg,#007bff,#17a2b8);color:#fff}.demo-btn.report[data-v-f1e07ff2]{background:linear-gradient(135deg,#ffc107,#fd7e14);color:#fff}.demo-btn[data-v-f1e07ff2]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #0003}.demo-btn[data-v-f1e07ff2]:disabled{background:#6c757d;cursor:not-allowed;transform:none}.status-message[data-v-f1e07ff2]{padding:12px 16px;border-radius:4px;margin-top:20px;font-weight:500;text-align:center}.status-message.success[data-v-f1e07ff2]{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.status-message.error[data-v-f1e07ff2]{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}@media (max-width: 768px){.email-page[data-v-f1e07ff2]{padding:10px}.page-header h1[data-v-f1e07ff2]{font-size:2rem}.demo-buttons[data-v-f1e07ff2]{grid-template-columns:1fr}}.export-demo-page[data-v-77140b1d]{max-width:1200px;margin:0 auto;padding:20px}.page-header[data-v-77140b1d]{text-align:center;margin-bottom:40px}.page-header h1[data-v-77140b1d]{color:#2c3e50;font-size:2.5rem;margin-bottom:10px}.page-header p[data-v-77140b1d]{color:#6c757d;font-size:1.1rem}.export-features[data-v-77140b1d]{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-bottom:40px}.feature-card[data-v-77140b1d]{background:white;padding:20px;border-radius:8px;box-shadow:0 2px 10px #0000001a;border-left:4px solid #007bff}.feature-card h3[data-v-77140b1d]{color:#495057;margin-bottom:10px}.feature-card p[data-v-77140b1d]{color:#6c757d;margin-bottom:15px}.feature-card ul[data-v-77140b1d]{color:#495057;padding-left:20px}.feature-card li[data-v-77140b1d]{margin-bottom:5px}.demo-section[data-v-77140b1d]{background:white;padding:30px;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin-bottom:30px}.demo-section h2[data-v-77140b1d]{color:#2c3e50;margin-bottom:25px;text-align:center}.demo-cards[data-v-77140b1d]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.demo-card[data-v-77140b1d]{background:#f8f9fa;padding:20px;border-radius:8px;border:1px solid #dee2e6}.demo-card h3[data-v-77140b1d]{color:#495057;margin-bottom:10px}.demo-card p[data-v-77140b1d]{color:#6c757d;margin-bottom:15px}.demo-actions[data-v-77140b1d]{display:flex;gap:10px;flex-wrap:wrap}.demo-btn[data-v-77140b1d]{padding:10px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s}.demo-btn.csv[data-v-77140b1d]{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.demo-btn.pdf[data-v-77140b1d]{background:linear-gradient(135deg,#dc3545,#e74c3c);color:#fff}.demo-btn.health[data-v-77140b1d]{background:linear-gradient(135deg,#007bff,#17a2b8);color:#fff}.demo-btn.combined[data-v-77140b1d]{background:linear-gradient(135deg,#6f42c1,#e83e8c);color:#fff}.demo-btn[data-v-77140b1d]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.status-message[data-v-77140b1d]{padding:12px 16px;border-radius:4px;margin-top:20px;font-weight:500;text-align:center}.status-message.success[data-v-77140b1d]{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.status-message.error[data-v-77140b1d]{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}@media (max-width: 768px){.export-demo-page[data-v-77140b1d]{padding:10px}.page-header h1[data-v-77140b1d]{font-size:2rem}.demo-actions[data-v-77140b1d]{flex-direction:column}}.map-view[data-v-bb83ba2c]{padding:20px;max-width:1400px;margin:0 auto}.map-header[data-v-bb83ba2c]{text-align:center;margin-bottom:30px}.map-header h1[data-v-bb83ba2c]{color:#2c3e50;font-size:2.5rem;margin-bottom:10px}.map-header p[data-v-bb83ba2c]{color:#6c757d;font-size:1.1rem}.map-container[data-v-bb83ba2c]{display:grid;grid-template-columns:350px 1fr;gap:20px;height:600px;background:white;border-radius:8px;box-shadow:0 2px 10px #0000001a;overflow:hidden}.map-controls[data-v-bb83ba2c]{padding:20px;background:#f8f9fa;overflow-y:auto;border-right:1px solid #dee2e6}.search-section h3[data-v-bb83ba2c],.results-section h3[data-v-bb83ba2c],.route-section h3[data-v-bb83ba2c]{color:#495057;margin-bottom:15px;font-size:1.1rem}.facility-types[data-v-bb83ba2c]{display:grid;gap:8px;margin-bottom:20px}.facility-btn[data-v-bb83ba2c]{padding:10px 12px;border:1px solid #dee2e6;background:white;color:#495057;border-radius:4px;cursor:pointer;transition:all .3s;text-align:left;font-size:14px}.facility-btn[data-v-bb83ba2c]:hover{background:#e9ecef}.facility-btn.active[data-v-bb83ba2c]{background:#007bff;color:#fff;border-color:#007bff}.facility-btn[data-v-bb83ba2c]:disabled{opacity:.6;cursor:not-allowed}.location-controls[data-v-bb83ba2c]{margin-bottom:20px}.location-btn[data-v-bb83ba2c]{width:100%;padding:10px;background:#28a745;color:#fff;border:none;border-radius:4px;cursor:pointer;margin-bottom:15px;font-size:14px}.location-btn[data-v-bb83ba2c]:hover{background:#218838}.custom-search[data-v-bb83ba2c]{display:flex;gap:8px}.custom-search input[data-v-bb83ba2c]{flex:1;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.custom-search button[data-v-bb83ba2c]{padding:8px 12px;background:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.results-section[data-v-bb83ba2c]{margin-top:20px}.results-list[data-v-bb83ba2c]{max-height:300px;overflow-y:auto}.result-item[data-v-bb83ba2c]{display:flex;justify-content:space-between;align-items:center;padding:12px;border:1px solid #dee2e6;border-radius:4px;margin-bottom:8px;cursor:pointer;transition:background-color .3s}.result-item[data-v-bb83ba2c]:hover{background:#f8f9fa}.place-info h4[data-v-bb83ba2c]{margin:0 0 4px;color:#2c3e50;font-size:14px}.place-info .address[data-v-bb83ba2c]{margin:0 0 6px;color:#6c757d;font-size:12px}.place-meta[data-v-bb83ba2c]{display:flex;gap:10px;font-size:12px}.rating[data-v-bb83ba2c]{color:#ffc107}.status.open[data-v-bb83ba2c]{color:#28a745}.status.closed[data-v-bb83ba2c]{color:#dc3545}.directions-btn[data-v-bb83ba2c]{padding:6px 10px;background:#17a2b8;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:12px}.directions-btn[data-v-bb83ba2c]:hover{background:#138496}.route-section[data-v-bb83ba2c]{margin-top:20px;padding-top:20px;border-top:1px solid #dee2e6}.route-summary p[data-v-bb83ba2c]{margin:5px 0;font-size:14px;color:#495057}.travel-modes[data-v-bb83ba2c]{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:15px 0}.mode-btn[data-v-bb83ba2c]{padding:8px 6px;border:1px solid #dee2e6;background:white;color:#495057;border-radius:4px;cursor:pointer;font-size:12px;text-align:center}.mode-btn.active[data-v-bb83ba2c]{background:#007bff;color:#fff;border-color:#007bff}.clear-route-btn[data-v-bb83ba2c]{width:100%;padding:8px;background:#dc3545;color:#fff;border:none;border-radius:4px;cursor:pointer;margin-bottom:15px;font-size:14px}.route-steps[data-v-bb83ba2c]{margin-top:15px}.route-steps h4[data-v-bb83ba2c]{color:#495057;margin-bottom:10px;font-size:1rem}.steps-list[data-v-bb83ba2c]{max-height:200px;overflow-y:auto}.step-item[data-v-bb83ba2c]{display:flex;gap:10px;padding:8px 0;border-bottom:1px solid #f0f0f0}.step-number[data-v-bb83ba2c]{background:#007bff;color:#fff;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;flex-shrink:0}.step-content[data-v-bb83ba2c]{flex:1}.instruction[data-v-bb83ba2c]{font-size:13px;color:#495057;margin-bottom:4px}.step-distance[data-v-bb83ba2c]{font-size:11px;color:#6c757d}.map-wrapper[data-v-bb83ba2c]{position:relative;overflow:hidden;height:100%}.google-map[data-v-bb83ba2c]{width:100%;height:100%;min-height:600px}.map-loading[data-v-bb83ba2c]{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,.9);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000}.loading-spinner[data-v-bb83ba2c]{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin-bb83ba2c 1s linear infinite;margin-bottom:15px}@keyframes spin-bb83ba2c{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-message[data-v-bb83ba2c]{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24;padding:15px;border-radius:4px;margin-top:20px}.error-message h3[data-v-bb83ba2c]{margin:0 0 10px}.dismiss-btn[data-v-bb83ba2c]{background:#dc3545;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;margin-top:10px}@media (max-width: 768px){.map-container[data-v-bb83ba2c]{grid-template-columns:1fr;height:auto}.map-wrapper[data-v-bb83ba2c]{height:400px}.map-controls[data-v-bb83ba2c]{order:2;max-height:400px}}.cloud-functions-demo[data-v-b8cd8cf3]{max-width:1200px;margin:0 auto;padding:20px}.description[data-v-b8cd8cf3]{font-size:1.1rem;color:#666;margin-bottom:30px;text-align:center}.section[data-v-b8cd8cf3]{background:white;border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:0 2px 8px #0000001a;border:1px solid #e0e7ff}.section h2[data-v-b8cd8cf3]{color:#1e40af;margin-bottom:16px;font-size:1.5rem}.form-group[data-v-b8cd8cf3]{margin-bottom:16px}.form-group label[data-v-b8cd8cf3]{display:block;margin-bottom:8px;font-weight:600;color:#374151}.form-control[data-v-b8cd8cf3]{width:100%;padding:10px 12px;border:2px solid #d1d5db;border-radius:8px;font-size:14px;transition:border-color .2s}.form-control[data-v-b8cd8cf3]:focus{outline:none;border-color:#3b82f6}.date-range[data-v-b8cd8cf3]{display:flex;align-items:center;gap:12px}.date-range input[data-v-b8cd8cf3]{flex:1;padding:8px 12px;border:2px solid #d1d5db;border-radius:6px}.button-group[data-v-b8cd8cf3]{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}.btn[data-v-b8cd8cf3]{padding:10px 20px;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-block}.btn[data-v-b8cd8cf3]:disabled{opacity:.6;cursor:not-allowed}.btn-primary[data-v-b8cd8cf3]{background:#3b82f6;color:#fff}.btn-primary[data-v-b8cd8cf3]:hover:not(:disabled){background:#2563eb}.btn-secondary[data-v-b8cd8cf3]{background:#6b7280;color:#fff}.btn-secondary[data-v-b8cd8cf3]:hover:not(:disabled){background:#4b5563}.btn-success[data-v-b8cd8cf3]{background:#10b981;color:#fff}.btn-success[data-v-b8cd8cf3]:hover:not(:disabled){background:#059669}.btn-warning[data-v-b8cd8cf3]{background:#f59e0b;color:#fff}.btn-warning[data-v-b8cd8cf3]:hover:not(:disabled){background:#d97706}.btn-info[data-v-b8cd8cf3]{background:#06b6d4;color:#fff}.btn-info[data-v-b8cd8cf3]:hover:not(:disabled){background:#0891b2}.btn-sm[data-v-b8cd8cf3]{padding:6px 12px;font-size:.875rem}.stats-card[data-v-b8cd8cf3],.report-card[data-v-b8cd8cf3],.processed-data-card[data-v-b8cd8cf3],.backup-card[data-v-b8cd8cf3],.email-result-card[data-v-b8cd8cf3],.export-result-card[data-v-b8cd8cf3]{background:#f8fafc;border-radius:8px;padding:20px;margin-top:16px;border-left:4px solid #3b82f6}.stats-grid[data-v-b8cd8cf3]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-top:12px}.stat-item[data-v-b8cd8cf3]{display:flex;justify-content:space-between;align-items:center;padding:12px;background:white;border-radius:6px;border:1px solid #e5e7eb}.stat-item .label[data-v-b8cd8cf3]{font-weight:600;color:#374151}.stat-item .value[data-v-b8cd8cf3]{font-weight:700;color:#1f2937}.trend.improving[data-v-b8cd8cf3]{color:#10b981}.trend.declining[data-v-b8cd8cf3]{color:#ef4444}.trend.stable[data-v-b8cd8cf3]{color:#f59e0b}.health-data-form[data-v-b8cd8cf3]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin-top:12px}.input-group[data-v-b8cd8cf3]{display:flex;align-items:center;gap:12px}.input-group label[data-v-b8cd8cf3]{min-width:120px;margin-bottom:0}.input-group input[type=range][data-v-b8cd8cf3]{flex:1}.input-group span[data-v-b8cd8cf3]{min-width:30px;text-align:center;font-weight:600}.recommendations[data-v-b8cd8cf3]{margin-top:16px}.recommendations h4[data-v-b8cd8cf3]{color:#374151;margin-bottom:8px}.recommendations ul[data-v-b8cd8cf3]{margin:0;padding-left:20px}.recommendations li[data-v-b8cd8cf3]{margin-bottom:4px;color:#4b5563}.backup-list[data-v-b8cd8cf3]{margin-top:16px}.backup-item[data-v-b8cd8cf3]{display:flex;justify-content:space-between;align-items:center;padding:12px;background:white;border-radius:6px;border:1px solid #e5e7eb;margin-bottom:8px}.loading-overlay[data-v-b8cd8cf3]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,.9);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:1000}.spinner[data-v-b8cd8cf3]{width:70px;text-align:center}.spinner>div[data-v-b8cd8cf3]{width:18px;height:18px;background-color:#3b82f6;border-radius:100%;display:inline-block;animation:sk-bouncedelay-b8cd8cf3 1.4s infinite ease-in-out both}.spinner .bounce1[data-v-b8cd8cf3]{animation-delay:-.32s}.spinner .bounce2[data-v-b8cd8cf3]{animation-delay:-.16s}@keyframes sk-bouncedelay-b8cd8cf3{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.success-alert[data-v-b8cd8cf3],.error-alert[data-v-b8cd8cf3]{position:fixed;top:20px;right:20px;padding:16px 20px;border-radius:8px;color:#fff;font-weight:600;z-index:1001;display:flex;align-items:center;justify-content:space-between;max-width:400px}.success-alert[data-v-b8cd8cf3]{background:#10b981}.error-alert[data-v-b8cd8cf3]{background:#ef4444}.close-btn[data-v-b8cd8cf3]{background:none;border:none;color:#fff;font-size:18px;font-weight:700;cursor:pointer;margin-left:12px}.close-btn[data-v-b8cd8cf3]:hover{opacity:.8}@media (max-width: 768px){.cloud-functions-demo[data-v-b8cd8cf3],.section[data-v-b8cd8cf3]{padding:16px}.button-group[data-v-b8cd8cf3]{flex-direction:column}.btn[data-v-b8cd8cf3]{width:100%}.stats-grid[data-v-b8cd8cf3],.health-data-form[data-v-b8cd8cf3]{grid-template-columns:1fr}.input-group[data-v-b8cd8cf3]{flex-direction:column;align-items:stretch}.input-group label[data-v-b8cd8cf3]{min-width:auto}.date-range[data-v-b8cd8cf3]{flex-direction:column}}.simple-chart[data-v-c6f21048]{background:white;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:20px;margin-bottom:20px}.chart-header[data-v-c6f21048]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:15px}.chart-header h3[data-v-c6f21048]{margin:0;color:#333;font-size:1.5rem}.chart-controls[data-v-c6f21048]{display:flex;gap:10px;align-items:center}.chart-type-selector[data-v-c6f21048]{padding:8px 12px;border:1px solid #ddd;border-radius:4px;background:white;font-size:14px}.refresh-btn[data-v-c6f21048],.retry-btn[data-v-c6f21048]{padding:8px 12px;border:1px solid #007bff;background:#007bff;color:#fff;border-radius:4px;cursor:pointer;font-size:14px}.refresh-btn[data-v-c6f21048]:hover,.retry-btn[data-v-c6f21048]:hover{background:#0056b3}.chart-container[data-v-c6f21048]{position:relative;height:400px;margin-bottom:20px}.loading-message[data-v-c6f21048]{display:flex;align-items:center;justify-content:center;height:100%;font-size:16px;color:#666}.error-message[data-v-c6f21048]{text-align:center;padding:20px;background:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24}.error-message h4[data-v-c6f21048]{margin:0 0 10px}.chart-canvas[data-v-c6f21048]{width:100%!important;height:100%!important}.chart-stats[data-v-c6f21048]{border-top:1px solid #eee;padding-top:20px}.chart-stats h4[data-v-c6f21048]{margin:0 0 15px;font-size:1.1rem}.stats-grid[data-v-c6f21048]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.stat-item[data-v-c6f21048]{display:flex;justify-content:space-between;align-items:center;padding:10px;background:#f8f9fa;border-radius:4px}.stat-label[data-v-c6f21048]{font-weight:500;color:#666}.stat-value[data-v-c6f21048]{font-weight:700;color:#333}@media (max-width: 768px){.chart-header[data-v-c6f21048]{flex-direction:column;align-items:stretch}.chart-controls[data-v-c6f21048]{justify-content:center}.chart-container[data-v-c6f21048]{height:300px}}.charts-page[data-v-2a053e42]{padding:20px;max-width:1400px;margin:0 auto}.page-header[data-v-2a053e42]{margin-bottom:30px;text-align:center}.page-header h1[data-v-2a053e42]{color:#333;margin-bottom:10px;font-size:2.5rem}.page-description[data-v-2a053e42]{color:#666;margin-bottom:20px;max-width:600px;margin-left:auto;margin-right:auto}.header-controls[data-v-2a053e42]{display:flex;justify-content:center;gap:15px;align-items:center;flex-wrap:wrap}.refresh-all-btn[data-v-2a053e42]{display:flex;align-items:center;gap:8px;padding:12px 20px;background:#007bff;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:16px;transition:background-color .2s}.refresh-all-btn[data-v-2a053e42]:hover:not(:disabled){background:#0056b3}.refresh-all-btn[data-v-2a053e42]:disabled{opacity:.6;cursor:not-allowed}.data-source-selector[data-v-2a053e42]{padding:10px 15px;border:1px solid #ddd;border-radius:6px;background:white;font-size:16px}.summary-cards[data-v-2a053e42]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px}.summary-card[data-v-2a053e42]{background:white;padding:20px;border-radius:8px;box-shadow:0 2px 8px #0000001a;text-align:center}.summary-card h3[data-v-2a053e42]{color:#666;margin:0 0 10px;font-size:1rem;font-weight:500}.summary-value[data-v-2a053e42]{font-size:2.5rem;font-weight:700;color:#333;margin-bottom:10px}.summary-trend[data-v-2a053e42]{display:flex;align-items:center;justify-content:center;gap:5px;font-size:14px;font-weight:500}.summary-trend.up[data-v-2a053e42]{color:#28a745}.summary-trend.down[data-v-2a053e42]{color:#dc3545}.summary-trend.stable[data-v-2a053e42]{color:#007bff}.charts-grid[data-v-2a053e42]{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:20px;margin-bottom:30px}.chart-section.full-width[data-v-2a053e42]{grid-column:1 / -1}.custom-chart-builder[data-v-2a053e42]{background:white;padding:20px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.custom-chart-builder h3[data-v-2a053e42]{margin:0 0 10px;color:#333}.custom-chart-builder p[data-v-2a053e42]{color:#666;margin-bottom:20px}.builder-controls[data-v-2a053e42]{display:flex;gap:15px;align-items:end;flex-wrap:wrap;margin-bottom:20px}.control-group[data-v-2a053e42]{display:flex;flex-direction:column;gap:5px}.control-group label[data-v-2a053e42]{font-weight:500;color:#333;font-size:14px}.control-group select[data-v-2a053e42]{padding:8px 12px;border:1px solid #ddd;border-radius:4px;background:white;font-size:14px}.generate-btn[data-v-2a053e42]{padding:8px 16px;background:#28a745;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .2s}.generate-btn[data-v-2a053e42]:hover:not(:disabled){background:#218838}.generate-btn[data-v-2a053e42]:disabled{opacity:.6;cursor:not-allowed}.custom-chart-container[data-v-2a053e42]{margin-top:20px}.accessibility-info[data-v-2a053e42]{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;overflow:hidden;margin-bottom:20px}.accessibility-info summary[data-v-2a053e42]{padding:15px 20px;background:#e9ecef;cursor:pointer;font-weight:500;color:#333;border:none;outline:none}.accessibility-info summary[data-v-2a053e42]:focus{outline:2px solid #007bff;outline-offset:-2px}.accessibility-content[data-v-2a053e42]{padding:20px}.accessibility-content h4[data-v-2a053e42]{color:#333;margin:20px 0 10px}.accessibility-content h4[data-v-2a053e42]:first-child{margin-top:0}.accessibility-content ul[data-v-2a053e42]{margin:0 0 10px 20px}.accessibility-content li[data-v-2a053e42]{margin-bottom:5px;color:#666}.accessibility-content kbd[data-v-2a053e42]{background:#f8f9fa;border:1px solid #dee2e6;border-radius:3px;padding:2px 6px;font-family:monospace;font-size:.9em}.loading-overlay[data-v-2a053e42]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.loading-content[data-v-2a053e42]{background:white;padding:30px;border-radius:8px;text-align:center;box-shadow:0 4px 20px #0000004d}.loading-spinner[data-v-2a053e42]{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin-2a053e42 1s linear infinite;margin:0 auto 15px}@keyframes spin-2a053e42{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-message[data-v-2a053e42]{background:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;padding:20px;text-align:center;color:#721c24;margin:20px 0}.error-message h3[data-v-2a053e42]{margin:0 0 10px}.retry-btn[data-v-2a053e42]{padding:10px 20px;background:#dc3545;color:#fff;border:none;border-radius:4px;cursor:pointer;margin-top:10px}.retry-btn[data-v-2a053e42]:hover{background:#c82333}.sr-only[data-v-2a053e42]{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}@media (max-width: 768px){.charts-page[data-v-2a053e42]{padding:10px}.page-header h1[data-v-2a053e42]{font-size:2rem}.charts-grid[data-v-2a053e42]{grid-template-columns:1fr}.summary-cards[data-v-2a053e42]{grid-template-columns:repeat(2,1fr)}.builder-controls[data-v-2a053e42]{flex-direction:column;align-items:stretch}}@media (max-width: 480px){.summary-cards[data-v-2a053e42]{grid-template-columns:1fr}.header-controls[data-v-2a053e42]{flex-direction:column;align-items:stretch}}@media (prefers-contrast: high){.summary-card[data-v-2a053e42],.custom-chart-builder[data-v-2a053e42],.refresh-all-btn[data-v-2a053e42],.generate-btn[data-v-2a053e42]{border:2px solid #000}}@media (prefers-reduced-motion: reduce){.loading-spinner[data-v-2a053e42]{animation:none}.refresh-all-btn[data-v-2a053e42],.generate-btn[data-v-2a053e42],.retry-btn[data-v-2a053e42]{transition:none}}body{font-family:Segoe UI,sans-serif;background:#f7f8fa;color:#333;margin:0;padding:0}.page-container{padding:1.5rem;max-width:900px;margin:0 auto}nav{display:flex;flex-wrap:wrap;gap:10px;padding:1rem;background:#4f6ef7;color:#fff;border-bottom:2px solid #3b55c4}nav a{color:#fff;text-decoration:none;font-weight:500}nav a:hover{text-decoration:underline}nav button{background:#fff;color:#4f6ef7;border:none;padding:5px 10px;border-radius:4px;cursor:pointer}main h2{color:#4f6ef7}.card{background:#fff;padding:1rem;border-radius:8px;box-shadow:0 2px 6px #0000001a;margin-bottom:1rem}form{display:flex;flex-direction:column;gap:10px;background:#fff;padding:1rem;border-radius:8px;box-shadow:0 2px 6px #0000000d}form input,form textarea,form button{padding:8px;font-size:1rem;border-radius:4px;border:1px solid #ccc}form button{background:#4f6ef7;color:#fff;border:none;cursor:pointer}form button:hover{background:#3b55c4}ul{list-style:none;padding:0}ul li{background:#fff;margin-bottom:10px;padding:10px;border-radius:6px;box-shadow:0 1px 3px #00000014}.panic{background:#ff4b5c;color:#fff;font-size:1.3rem;padding:1rem 2rem;border:none;border-radius:6px;cursor:pointer}.alert{margin-top:1rem;color:#ff4b5c;font-weight:700}
