*{margin:0;padding:0;box-sizing:border-box}.app{font-family:Arial,sans-serif;min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#c3cfe2)}.header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:2rem 1.5rem;text-align:center}.header h1{font-size:1.8rem;margin-bottom:.5rem}.header p{font-size:1rem;opacity:.9}.main-content{max-width:1200px;margin:0 auto;padding:1.5rem}.department-selector{background:#fff;padding:1.2rem;border-radius:12px;box-shadow:0 4px 12px #0000001a;margin-bottom:1.5rem;text-align:center}.department-selector label{display:block;margin-bottom:.5rem;font-size:.95rem;color:#333;font-weight:500}.department-select{width:100%;max-width:400px;padding:.7rem;font-size:.9rem;border:2px solid #e0e0e0;border-radius:8px;background:#fff;cursor:pointer}.service-selector{background:#fff;padding:1.2rem;border-radius:12px;box-shadow:0 4px 12px #0000001a;margin-bottom:1.5rem}.service-selector h3{color:#333;margin-bottom:.8rem;font-size:1.1rem}.service-filters{display:grid;grid-template-columns:2fr 1fr;gap:.8rem;margin-bottom:1rem}.service-search{padding:.6rem;border:2px solid #e0e0e0;border-radius:6px;font-size:.85rem}.category-select{padding:.6rem;border:2px solid #e0e0e0;border-radius:6px;font-size:.85rem;background:#fff;cursor:pointer}.services-list{max-height:350px;overflow-y:auto;border:1px solid #e0e0e0;border-radius:6px;margin-bottom:.8rem}.service-item{display:grid;grid-template-columns:1fr 80px;gap:.8rem;padding:.6rem;border-bottom:1px solid #e0e0e0;cursor:pointer;transition:background-color .3s ease;align-items:center}.service-item:hover{background-color:#f5f5f5}.service-item.selected{background:linear-gradient(135deg,#667eea20,#764ba220);border-left:4px solid #667eea}.service-name{color:#333;font-size:.8rem;line-height:1.3}.service-price{font-weight:700;color:#28a745;text-align:right;font-size:.85rem}.selected-service-info{background:#f0f4ff;padding:.7rem;border-radius:6px;margin-top:.8rem}.selected-service-info h4{color:#333;margin-bottom:.3rem;font-size:.9rem}.selected-service-price{font-size:.95rem;font-weight:700;color:#28a745;margin-top:.3rem}.appointment-section{text-align:center;background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 4px 12px #0000001a}.appointment-section h2{color:#333;margin-bottom:1rem;font-size:1.4rem}.appointment-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.8rem 2rem;font-size:.95rem;border-radius:40px;cursor:pointer;transition:transform .3s ease}.appointment-button:disabled{opacity:.5;cursor:not-allowed}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;padding:1.2rem;border-radius:16px;max-width:750px;width:95%;max-height:90vh;overflow-y:auto;position:relative}.modal-close{position:absolute;top:.6rem;right:.8rem;background:none;border:none;font-size:1.6rem;cursor:pointer;color:#666}.form-section{margin-bottom:1.2rem;padding:1rem;background:#f8f9fa;border-radius:8px}.form-section h3{color:#667eea;margin-bottom:.8rem;font-size:.95rem;border-bottom:2px solid #e0e0e0;padding-bottom:.3rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-bottom:.6rem}.form-group{margin-bottom:.6rem}.form-group label{display:block;margin-bottom:.2rem;color:#555;font-weight:500;font-size:.8rem}.form-group input,.form-group select{width:100%;padding:.6rem;border:2px solid #e0e0e0;border-radius:6px;font-size:.85rem}.form-group input.error,.form-group select.error{border-color:#f44}.error-message{color:#f44;font-size:.7rem;margin-top:.15rem;display:block}.submit-button{width:100%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.8rem;font-size:.95rem;border-radius:8px;cursor:pointer;margin-top:.6rem}.selected-department-info,.selected-service-modal{background:#f0f4ff;padding:.6rem;border-radius:8px;margin-bottom:1rem;border-left:4px solid #667eea}@media (max-width: 768px){.header h1{font-size:1.4rem}.form-row{grid-template-columns:1fr;gap:0}.service-filters,.service-item{grid-template-columns:1fr}.service-price{text-align:left}}
