.logo-container{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.logo-icon{display:flex;align-items:center;justify-content:center}.logo-icon svg{width:100%;height:100%}.logo-large .logo-icon{width:120px;height:120px}.logo-medium .logo-icon{width:80px;height:80px}.logo-small .logo-icon{width:40px;height:40px}.logo-text{text-align:center}.logo-title{font-size:2rem;font-weight:600;color:var(--accent-gold);letter-spacing:.1em;margin:0}.logo-medium .logo-title{font-size:1.5rem}.logo-small .logo-title{font-size:1rem}.logo-est{font-size:.875rem;color:var(--accent-gold);margin:var(--spacing-xs) 0 0 0;opacity:.9}.logo-small .logo-est{font-size:.75rem}.btn{padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-md);border:2px solid var(--accent-gold);font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;font-family:var(--font-primary);text-transform:uppercase;letter-spacing:.05em}.btn-primary{background-color:var(--accent-gold);color:var(--white);border-color:var(--accent-gold)}.btn-primary:hover:not(:disabled){background-color:#3557c7;border-color:#3557c7;transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background-color:transparent;color:var(--accent-gold);border-color:var(--accent-gold)}.btn-secondary:hover:not(:disabled){background-color:var(--accent-gold);color:var(--white)}.btn-danger{background-color:transparent;color:var(--error);border-color:var(--error)}.btn-danger:hover:not(:disabled){background-color:var(--error);color:var(--white)}.btn-success{background-color:transparent;color:var(--success);border-color:var(--success)}.btn-success:hover:not(:disabled){background-color:var(--success);color:var(--white)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-full-width{width:100%}.btn-small{padding:var(--spacing-sm) var(--spacing-md);font-size:.875rem}.input-container{display:flex;flex-direction:column;gap:var(--spacing-xs);width:100%}.input-label{font-size:.875rem;color:var(--accent-gold);font-weight:500;margin-bottom:var(--spacing-xs)}.required{color:var(--error);margin-left:2px}.input-field{width:100%;padding:var(--spacing-md);background-color:var(--white);border:2px solid rgba(65,105,225,.2);border-radius:var(--radius-md);font-size:1rem;color:var(--text-dark);font-family:var(--font-primary);transition:all .3s ease}.input-field:focus{outline:none;border-color:var(--accent-gold);background-color:var(--white);box-shadow:0 0 0 3px #4169e11a}.input-field::placeholder{color:#999}.input-error{border-color:var(--error)}.input-error-message{font-size:.75rem;color:var(--error);margin-top:var(--spacing-xs)}.input-field[type=date]{position:relative}.input-field[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.7}.input-field[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}.install-prompt{position:fixed;bottom:20px;left:50%;transform:translate(-50%);z-index:10000;width:90%;max-width:500px;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translate(-50%) translateY(100px);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}.install-prompt-content{background:#fff;border-radius:16px;padding:16px;box-shadow:0 10px 40px #0003;display:flex;align-items:center;gap:12px}.install-prompt-icon{font-size:32px;flex-shrink:0}.install-prompt-text{flex:1}.install-prompt-text h3{margin:0 0 4px;font-size:16px;font-weight:600;color:#1a1a1a}.install-prompt-text p{margin:0;font-size:13px;color:#666}.install-prompt-actions{display:flex;gap:8px;align-items:center}.install-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s ease}.install-btn:hover{transform:scale(1.05)}.install-btn:active{transform:scale(.95)}.dismiss-btn{background:#f3f4f6;color:#666;border:none;width:32px;height:32px;border-radius:50%;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.dismiss-btn:hover{background:#e5e7eb}@media (max-width: 600px){.install-prompt{bottom:10px;width:95%}.install-prompt-content{padding:12px}.install-prompt-icon{font-size:28px}.install-prompt-text h3{font-size:14px}.install-prompt-text p{font-size:12px}.install-btn{padding:8px 16px;font-size:13px}}.welcome-container{min-height:100vh;background:linear-gradient(135deg,#f0f8ff,#e6f2ff,#f0f8ff);display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);position:relative;overflow:hidden}.welcome-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 50%,rgba(65,105,225,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(65,105,225,.05) 0%,transparent 50%);pointer-events:none}.welcome-content{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-2xl);z-index:1;width:100%;max-width:400px}.welcome-buttons{display:flex;flex-direction:column;gap:var(--spacing-md);width:100%;max-width:300px}.welcome-tagline{text-align:center;color:var(--accent-gold);font-size:1rem;font-style:italic;margin-top:var(--spacing-lg);opacity:.9;line-height:1.6}.signin-container{min-height:100vh;background:linear-gradient(135deg,#f0f8ff,#e6f2ff,#f0f8ff);display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl)}.signin-content{width:100%;max-width:400px;display:flex;flex-direction:column;gap:var(--spacing-xl)}.signin-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.signin-links{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}.signup-container{min-height:100vh;background:linear-gradient(135deg,#f0f8ff,#e6f2ff,#f0f8ff);display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl) var(--spacing-md);overflow-y:auto}.signup-content{width:100%;max-width:500px;display:flex;flex-direction:column;gap:var(--spacing-xl)}.signup-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.error-message{color:var(--error);font-size:.875rem;text-align:center;padding:var(--spacing-sm);background-color:#ff6b6b1a;border-radius:var(--radius-sm)}.signup-footer{text-align:center}.link-text{color:var(--accent-gold);text-decoration:none;font-size:.875rem;transition:opacity .3s ease}.link-text:hover{opacity:.8;text-decoration:underline}.dashboard-container{min-height:100vh;background:linear-gradient(135deg,#f0f8ff,#e6f2ff,#f0f8ff);padding-bottom:var(--spacing-xl)}.dashboard-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);background-color:var(--primary-light);border-bottom:1px solid rgba(65,105,225,.2)}.dashboard-content{max-width:1200px;margin:0 auto;padding:var(--spacing-xl) var(--spacing-lg)}.dashboard-title{color:var(--accent-gold);font-size:2rem;margin-bottom:var(--spacing-xl)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-lg)}.stat-card{background-color:var(--white);border-radius:var(--radius-lg);padding:var(--spacing-lg);display:flex;align-items:flex-start;gap:var(--spacing-md);border:1px solid rgba(65,105,225,.2);transition:transform .3s ease,box-shadow .3s ease;box-shadow:var(--shadow-sm)}.stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--accent-gold)}.stat-icon{width:60px;height:60px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.users-icon{background-color:#51cf6633;color:var(--success)}.providers-icon{background-color:#4169e133;color:var(--accent-gold)}.jobs-icon{background-color:#ffa72633;color:var(--warning)}.bookings-icon{background-color:#6a5acd33;color:#6a5acd}.stat-info{flex:1}.stat-label{color:var(--accent-gold);font-size:.875rem;font-weight:500;margin:0 0 var(--spacing-xs) 0;text-transform:uppercase;letter-spacing:.05em}.stat-value{color:var(--text-dark);font-size:2rem;font-weight:700;margin:0 0 var(--spacing-xs) 0}.stat-subtext{color:var(--text-muted);font-size:.75rem;margin:0;opacity:.8}.stat-details{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-top:var(--spacing-sm)}.stat-details span{color:var(--text-muted);font-size:.75rem;opacity:.8}.loading,.error-state{text-align:center;padding:var(--spacing-2xl);color:var(--accent-gold)}@media (max-width: 768px){.stats-grid{grid-template-columns:1fr}.dashboard-header{flex-direction:column;gap:var(--spacing-md);align-items:flex-start}}.users-container{min-height:100vh;background:linear-gradient(135deg,#f0f8ff,#e6f2ff,#f0f8ff);padding-bottom:var(--spacing-xl)}.users-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);background-color:var(--primary-light);border-bottom:1px solid rgba(65,105,225,.2)}.users-content{max-width:1400px;margin:0 auto;padding:var(--spacing-xl) var(--spacing-lg)}.users-table{width:100%;border-collapse:collapse}.users-table thead{background-color:var(--primary-medium)}.users-table th{padding:var(--spacing-md);text-align:left;color:var(--accent-gold);font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid rgba(65,105,225,.2)}.users-table td{padding:var(--spacing-md);color:var(--text-dark);border-bottom:1px solid rgba(65,105,225,.1)}.users-table tbody tr:hover{background-color:#4169e10d}.role-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase}.role-customer{background-color:#51cf6633;color:var(--success)}.role-provider{background-color:#4169e133;color:var(--accent-gold)}.role-admin{background-color:#6a5acd33;color:#6a5acd}.status-badge.active{background-color:#51cf6633;color:var(--success)}.status-badge.suspended{background-color:#ff6b6b33;color:var(--error)}.action-buttons{display:flex;gap:var(--spacing-sm)}@media (max-width: 768px){.users-table{font-size:.75rem}.users-table th,.users-table td{padding:var(--spacing-sm)}}.providers-container{min-height:100vh;background:linear-gradient(135deg,#f0f8ff,#e6f2ff,#f0f8ff);padding-bottom:var(--spacing-xl)}.providers-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);background-color:var(--primary-light);border-bottom:1px solid rgba(65,105,225,.2)}.providers-content{max-width:1400px;margin:0 auto;padding:var(--spacing-xl) var(--spacing-lg)}.page-title{color:var(--accent-gold);font-size:2rem;margin-bottom:var(--spacing-xl)}.providers-table{width:100%;border-collapse:collapse}.providers-table thead{background-color:var(--primary-medium)}.providers-table th{padding:var(--spacing-md);text-align:left;color:var(--accent-gold);font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid rgba(65,105,225,.2)}.providers-table td{padding:var(--spacing-md);color:var(--text-dark);border-bottom:1px solid rgba(65,105,225,.1)}.providers-table tbody tr:hover{background-color:#4169e10d}.rating{color:var(--accent-gold);font-weight:600}.status-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600}.status-badge.verified{background-color:#51cf6633;color:var(--success)}.status-badge.unverified{background-color:#ffa72633;color:var(--warning)}.jobs-container{min-height:100vh;background-color:var(--primary-dark);background:linear-gradient(135deg,#f0f8ff,#e6f2ff,#f0f8ff);padding-bottom:var(--spacing-xl)}.jobs-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);background-color:var(--primary-light);border-bottom:1px solid rgba(65,105,225,.2)}.jobs-content{max-width:1400px;margin:0 auto;padding:var(--spacing-xl) var(--spacing-lg)}.filters{display:flex;gap:var(--spacing-md)}.filter-select{padding:var(--spacing-sm) var(--spacing-md);background-color:var(--white);border:1px solid var(--accent-gold);border-radius:var(--radius-sm);color:var(--accent-gold);font-size:.875rem;cursor:pointer}.jobs-table{width:100%;border-collapse:collapse}.jobs-table thead{background-color:var(--primary-medium)}.jobs-table th{padding:var(--spacing-md);text-align:left;color:var(--accent-gold);font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid rgba(65,105,225,.2)}.jobs-table td{padding:var(--spacing-md);color:var(--text-dark);border-bottom:1px solid rgba(65,105,225,.1)}.jobs-table tbody tr:hover{background-color:#4169e10d}.status-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:capitalize}.status-pending{background-color:#ffa72633;color:var(--warning)}.status-in_progress{background-color:#6a5acd33;color:#6a5acd}.status-completed{background-color:#51cf6633;color:var(--success)}.status-cancelled{background-color:#ff6b6b33;color:var(--error)}.chats-container{min-height:100vh;background:linear-gradient(135deg,#f0f8ff,#e6f2ff,#f0f8ff);padding-bottom:var(--spacing-xl)}.chats-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);background-color:var(--primary-light);border-bottom:1px solid rgba(65,105,225,.2)}.dashboard-nav{display:flex;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background-color:var(--primary-light);border-bottom:1px solid rgba(65,105,225,.2);overflow-x:auto}.chats-content{max-width:1400px;margin:0 auto;padding:var(--spacing-xl) var(--spacing-lg)}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);flex-wrap:wrap;gap:var(--spacing-md)}.page-title{color:var(--accent-gold);font-size:2rem;margin:0}.filters{display:flex;gap:var(--spacing-md);align-items:center}.filter-input{padding:var(--spacing-sm) var(--spacing-md);background-color:var(--white);border:1px solid var(--accent-gold);border-radius:var(--radius-sm);color:var(--text-dark);font-size:.875rem;width:200px}.filter-input::placeholder{color:var(--text-muted);opacity:.6}.table-container{overflow-x:auto;background-color:var(--white);border-radius:var(--radius-lg);border:1px solid rgba(65,105,225,.2);box-shadow:var(--shadow-sm)}.chats-table{width:100%;border-collapse:collapse}.chats-table thead{background-color:var(--primary-medium)}.chats-table th{padding:var(--spacing-md);text-align:left;color:var(--accent-gold);font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid rgba(65,105,225,.2)}.chats-table td{padding:var(--spacing-md);color:var(--text-dark);border-bottom:1px solid rgba(65,105,225,.1)}.chats-table tbody tr:hover{background-color:#4169e10d}.sender-info{display:flex;flex-direction:column;gap:var(--spacing-xs)}.sender-name{font-weight:600;color:var(--accent-gold)}.sender-role{font-size:.75rem;opacity:.7;text-transform:capitalize}.message-cell{max-width:400px}.message-content{word-wrap:break-word;max-height:100px;overflow-y:auto}.empty-state{text-align:center;padding:var(--spacing-xl);color:var(--text-muted);opacity:.7}.pagination{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-xl)}.page-info{color:var(--accent-gold);font-size:.875rem}.loading{text-align:center;padding:var(--spacing-2xl);color:var(--accent-gold)}.statistics-container{min-height:100vh;background:linear-gradient(135deg,#f0f8ff,#e6f2ff,#f0f8ff);padding-bottom:var(--spacing-xl)}.statistics-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);background-color:var(--primary-light);border-bottom:1px solid rgba(65,105,225,.2)}.header-actions{display:flex;align-items:center;gap:var(--spacing-md)}.admin-name{color:var(--accent-gold);font-size:.875rem}.statistics-nav{display:flex;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background-color:var(--primary-light);border-bottom:1px solid rgba(65,105,225,.2);overflow-x:auto}.nav-btn{padding:var(--spacing-sm) var(--spacing-lg);background:none;border:none;color:var(--text-dark);cursor:pointer;font-size:.875rem;border-radius:var(--radius-sm);transition:all .3s ease;white-space:nowrap}.nav-btn:hover{background-color:#4169e11a;color:var(--accent-gold)}.nav-btn.active{background-color:var(--accent-gold);color:var(--white);font-weight:600}.statistics-content{max-width:1400px;margin:0 auto;padding:var(--spacing-xl) var(--spacing-lg)}.statistics-header-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);flex-wrap:wrap;gap:var(--spacing-md)}.statistics-title{color:var(--accent-gold);font-size:2rem;margin:0}.time-filter{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.filter-btn{padding:var(--spacing-sm) var(--spacing-lg);background-color:var(--white);border:2px solid rgba(65,105,225,.3);color:var(--text-dark);cursor:pointer;font-size:.875rem;border-radius:var(--radius-sm);transition:all .3s ease;font-weight:500}.filter-btn:hover{background-color:#4169e11a;border-color:var(--accent-gold)}.filter-btn.active{background-color:var(--accent-gold);color:var(--white);border-color:var(--accent-gold);font-weight:600}.charts-container{display:flex;flex-direction:column;gap:var(--spacing-xl)}.chart-card{background-color:var(--white);border-radius:var(--radius-lg);padding:var(--spacing-xl);border:1px solid rgba(65,105,225,.2);box-shadow:var(--shadow-sm);transition:transform .3s ease,box-shadow .3s ease}.chart-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--accent-gold)}.chart-title{color:var(--accent-gold);font-size:1.5rem;margin:0 0 var(--spacing-xs) 0;font-weight:600}.chart-subtitle{color:var(--text-muted);font-size:.875rem;margin:0 0 var(--spacing-lg) 0;opacity:.8}.no-data{text-align:center;padding:var(--spacing-2xl);color:var(--text-muted);font-style:italic}.verification-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid rgba(65,105,225,.2)}.stat-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.stat-label{color:var(--text-muted);font-size:.875rem;font-weight:500}.stat-value{color:var(--text-dark);font-size:1.5rem;font-weight:700}.stat-value.verified{color:var(--success)}.stat-value.unverified{color:#ff6b6b}.loading{text-align:center;padding:var(--spacing-2xl);color:var(--accent-gold);font-size:1.125rem}@media (max-width: 768px){.statistics-header-section{flex-direction:column;align-items:flex-start}.time-filter{width:100%}.filter-btn{flex:1;min-width:0}.chart-card{padding:var(--spacing-lg)}.verification-stats{grid-template-columns:1fr}}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-dark: #F0F8FF;--primary-medium: #E6F2FF;--primary-light: #D6E9FF;--accent-gold: #4169E1;--accent-light: #E8F4FF;--accent-silver: #87CEEB;--input-bg: #FFFFFF;--white: #FFFFFF;--text-dark: #1E3A5F;--text-light: #2C3E50;--text-muted: #5A7BA7;--error: #ef4444;--success: #10b981;--warning: #f59e0b;--info: #3b82f6;--font-primary: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1)}body{font-family:var(--font-primary);background:linear-gradient(135deg,#f0f8ff,#e6f2ff,#f0f8ff);color:var(--text-dark);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}#root{min-height:100vh}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--primary-medium)}::-webkit-scrollbar-thumb{background:var(--accent-silver);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--accent-gold)}
