.home{width:100%}.hero{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:80px 20px;text-align:center;border-radius:10px;margin-bottom:50px}.hero h1{font-size:48px;margin-bottom:15px}.hero p{font-size:20px;margin-bottom:30px}.cta-button{display:inline-block;padding:15px 40px;background-color:#f39c12;color:#fff;text-decoration:none;border-radius:50px;font-size:18px;font-weight:700;transition:all .3s}.cta-button:hover{background-color:#e67e22;transform:translateY(-3px);box-shadow:0 5px 15px #0000004d}.services{margin-bottom:50px}.services h2{font-size:36px;margin-bottom:30px;text-align:center;color:#2c3e50}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.service-card{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 8px #0000001a;transition:transform .3s}.service-card:hover{transform:translateY(-5px);box-shadow:0 5px 15px #00000026}.service-card h3{color:#667eea;margin-bottom:15px}.service-card ul{list-style:none;padding:0}.service-card li{padding:8px 0;color:#555;border-bottom:1px solid #eee}.service-card li:last-child{border-bottom:none}.why-us{background:#f5f5f5;padding:40px 20px;border-radius:10px}.why-us h2{font-size:36px;margin-bottom:40px;text-align:center;color:#2c3e50}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:25px}.feature{text-align:center}.feature h3{font-size:24px;margin-bottom:10px}.feature p{color:#666;line-height:1.6}@media (max-width: 768px){.hero h1{font-size:32px}.hero p{font-size:16px}.services h2,.why-us h2{font-size:28px}.cta-button{padding:12px 30px;font-size:16px}}.booking{max-width:600px;margin:0 auto}.booking h1{text-align:center;margin-bottom:30px;color:#2c3e50}.booking-form{background:#fff;padding:30px;border-radius:8px;box-shadow:0 2px 10px #0000001a}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.form-row.full{grid-template-columns:1fr}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:8px;font-weight:600;color:#2c3e50}.form-group input,.form-group select{padding:12px;border:1px solid #ddd;border-radius:4px;font-size:14px;transition:border-color .3s}.form-group input:focus,.form-group select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group select:disabled{background-color:#f5f5f5;cursor:not-allowed;color:#999}.form-actions{display:flex;gap:10px;margin-top:30px}.btn-submit{flex:1;padding:12px 20px;background-color:#667eea;color:#fff;border:none;border-radius:4px;font-size:16px;font-weight:600;cursor:pointer;transition:background-color .3s}.btn-submit:hover:not(:disabled){background-color:#5568d3}.btn-submit:disabled{background-color:#ccc;cursor:not-allowed}.success-message{background-color:#d4edda;color:#155724;padding:12px;border-radius:4px;margin-bottom:20px;border:1px solid #c3e6cb}@media (max-width: 768px){.form-row{grid-template-columns:1fr}.booking-form{padding:20px}.booking h1{font-size:24px}}.confirmation{display:flex;justify-content:center;align-items:center;min-height:80vh;padding:20px}.confirmation-card{background:#fff;border-radius:8px;box-shadow:0 4px 20px #0000001a;max-width:600px;width:100%;padding:40px}.confirmation-header{text-align:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #ddd}.confirmation-header h1{color:#27ae60;font-size:32px;margin-bottom:10px}.confirmation-header p{color:#666;font-size:16px}.confirmation-details h2{color:#2c3e50;margin-bottom:20px;font-size:20px}.details-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:30px}.detail-item{padding:12px;background-color:#f9f9f9;border-radius:4px}.detail-item label{display:block;font-weight:600;color:#667eea;margin-bottom:5px;font-size:12px;text-transform:uppercase}.detail-item p{color:#333;font-size:14px;margin:0}.appointment-id{font-family:monospace;font-weight:700;color:#2c3e50}.status{display:inline-block;padding:4px 8px;background-color:#d4edda;color:#155724;border-radius:4px;font-weight:600}.confirmation-message{background-color:#e7f3ff;border-left:4px solid #667eea;padding:15px;border-radius:4px;margin-bottom:30px}.confirmation-message p{margin:8px 0;color:#333;line-height:1.6}.confirmation-actions{display:flex;gap:10px;justify-content:center}.btn-home,.btn-print{padding:12px 30px;border-radius:4px;font-size:14px;font-weight:600;border:none;cursor:pointer;transition:all .3s}.btn-home{background-color:#667eea;color:#fff;text-decoration:none;display:inline-block}.btn-home:hover{background-color:#5568d3;transform:translateY(-2px)}.btn-print{background-color:#fff;color:#667eea;border:2px solid #667eea}.btn-print:hover{background-color:#f0f0f0}.error-container{display:flex;justify-content:center;align-items:center}.error-container p{color:#d32f2f;font-size:18px;text-align:center}@media (max-width: 768px){.confirmation-card{padding:25px}.details-grid{grid-template-columns:1fr;gap:15px}.confirmation-header h1{font-size:24px}.confirmation-actions{flex-direction:column}.btn-home,.btn-print{width:100%}}@media print{.confirmation-actions{display:none}.confirmation-card{box-shadow:none;border:1px solid #ddd}}.admin-login{display:flex;justify-content:center;align-items:center;min-height:80vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.login-container{width:100%;max-width:400px}.login-card{background:#fff;border-radius:8px;box-shadow:0 10px 40px #0003;padding:40px;text-align:center}.login-card h1{color:#2c3e50;margin-bottom:10px;font-size:28px}.subtitle{color:#666;margin-bottom:30px;font-size:14px}.login-card form{margin-bottom:30px}.form-group{margin-bottom:20px;text-align:left}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#2c3e50}.form-group input{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:14px;transition:border-color .3s}.form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.btn-login{width:100%;padding:12px;background-color:#667eea;color:#fff;border:none;border-radius:4px;font-size:16px;font-weight:600;cursor:pointer;transition:background-color .3s}.btn-login:hover:not(:disabled){background-color:#5568d3}.btn-login:disabled{background-color:#ccc;cursor:not-allowed}.error-message{background-color:#f8d7da;color:#721c24;padding:12px;border-radius:4px;margin-bottom:20px;border:1px solid #f5c6cb;text-align:left}.login-footer{border-top:1px solid #eee;padding-top:20px;text-align:center;color:#666}.login-footer p{margin:8px 0;font-size:13px}.demo-text{color:#999;font-style:italic}@media (max-width: 480px){.login-card{padding:25px}.login-card h1{font-size:24px}}.admin-dashboard{width:100%}.dashboard-header{background-color:#2c3e50;color:#fff;padding:20px 0;box-shadow:0 2px 5px #0000001a;margin-bottom:30px}.header-content{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center}.dashboard-header h1{font-size:28px;margin:0}.user-info{display:flex;align-items:center;gap:20px}.btn-logout{padding:8px 16px;background-color:#e74c3c;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background-color .3s}.btn-logout:hover{background-color:#c0392b}.dashboard-container{max-width:1200px;margin:0 auto;padding:0 20px}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:40px}.stat-card{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 8px #0000001a;text-align:center}.stat-card h3{font-size:32px;color:#667eea;margin:0 0 10px}.stat-card p{color:#666;margin:0;font-size:14px}.appointments-section{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:30px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:20px}.section-header h2{color:#2c3e50;margin:0;font-size:24px}.filter-buttons{display:flex;gap:10px;flex-wrap:wrap}.filter-btn{padding:8px 16px;background-color:#f0f0f0;color:#333;border:2px solid transparent;border-radius:20px;cursor:pointer;transition:all .3s;font-size:13px;font-weight:600}.filter-btn:hover{background-color:#e0e0e0}.filter-btn.active{background-color:#667eea;color:#fff;border-color:#667eea}.error-message{background-color:#f8d7da;color:#721c24;padding:12px;border-radius:4px;margin-bottom:20px;border:1px solid #f5c6cb}.no-appointments{text-align:center;color:#999;padding:40px 20px}.appointments-list{display:grid;gap:20px}.appointment-card{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:20px;transition:all .3s}.appointment-card:hover{box-shadow:0 4px 12px #0000001a;border-color:#667eea}.appointment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:15px;border-bottom:2px solid #e0e0e0}.appointment-header h3{margin:0;color:#2c3e50;font-size:18px}.status-badge{display:inline-block;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase}.status-badge.confirmed{background-color:#d4edda;color:#155724}.status-badge.completed{background-color:#cfe2ff;color:#084298}.status-badge.cancelled{background-color:#f8d7da;color:#721c24}.appointment-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-bottom:15px}.detail{display:flex;flex-direction:column}.detail .label{font-weight:600;color:#667eea;font-size:12px;text-transform:uppercase;margin-bottom:3px}.detail .value{color:#333;font-size:14px}.appointment-actions{display:flex;gap:10px;margin-top:15px}.status-select{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:13px;cursor:pointer;flex:1;max-width:200px}.status-select:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}@media (max-width: 768px){.header-content{flex-direction:column;gap:15px;align-items:flex-start}.user-info{width:100%;justify-content:space-between}.section-header{flex-direction:column;align-items:flex-start}.filter-buttons{width:100%}.appointment-details{grid-template-columns:1fr}.dashboard-stats{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.dashboard-container{padding:0 15px}.appointments-section{padding:20px}.stat-card h3{font-size:24px}.dashboard-stats{grid-template-columns:1fr}.appointment-header{flex-direction:column;align-items:flex-start;gap:10px}}.header{background-color:#2c3e50;color:#fff;padding:15px 0;box-shadow:0 2px 5px #0000001a}.header-container{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center}.logo h1{font-size:28px;margin:0}.nav{display:flex;gap:30px}.nav a{color:#fff;text-decoration:none;font-size:16px;transition:color .3s}.nav a:hover{color:#f39c12}@media (max-width: 768px){.header-container{flex-direction:column;gap:15px}.nav{gap:15px}.logo h1{font-size:24px}}.footer{background-color:#2c3e50;color:#fff;margin-top:auto;padding:40px 20px 20px}.footer-content{max-width:1200px;margin:0 auto 30px;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px}.footer-section h4{margin-bottom:15px;color:#f39c12;font-size:18px}.footer-section p{margin-bottom:10px;line-height:1.6}.footer-bottom{max-width:1200px;margin:0 auto;text-align:center;padding-top:20px;border-top:1px solid #444;color:#aaa}@media (max-width: 768px){.footer-content{grid-template-columns:1fr;gap:20px}.footer{padding:30px 20px 15px}}.app{display:flex;flex-direction:column;min-height:100vh;background-color:#f5f5f5}.main-content{flex:1;width:100%}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:#f5f5f5;color:#333}.app{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1;max-width:1200px;width:100%;margin:0 auto;padding:20px}button{padding:10px 20px;font-size:16px;border:none;border-radius:4px;cursor:pointer;background-color:#007bff;color:#fff;transition:background-color .3s}button:hover{background-color:#0056b3}input,select,textarea{padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px}input:focus,select:focus,textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 5px #007bff4d}.form-group{margin-bottom:15px}label{display:block;margin-bottom:5px;font-weight:500}
