#speakclinic-auth-container{max-width:500px;margin:0 auto;padding:20px;border:1px solid #ddd;border-radius:8px;background:#f9f9f9;font-family:Arial,sans-serif}.auth-tabs{display:flex;margin-bottom:20px}.tab-button{flex:1;padding:12px;background:#eee;border:1px solid #ddd;border-bottom:none;cursor:pointer;transition:all 0.3s;font-size:14px;font-weight:700}.tab-button:first-child{border-radius:5px 0 0 0}.tab-button:last-child{border-radius:0 5px 0 0}.tab-button.active{background:#007cba;color:#fff;border-color:#007cba}.tab-button:hover:not(.active){background:#ddd}.tab-content{display:none;background:#fff;padding:20px;border:1px solid #ddd;border-radius:0 0 5px 5px}.tab-content.active{display:block}.auth-method{margin-bottom:30px;padding:20px;background:#f8f9fa;border:1px solid #e9ecef;border-radius:5px}.auth-method h4{margin-top:0;margin-bottom:15px;color:#333;font-size:16px}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;font-weight:700;color:#333}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#007cba;box-shadow:0 0 0 2px rgb(0 124 186 / .2)}.phone-input{display:flex;gap:10px}.phone-input select{flex:0 0 120px}.phone-input input{flex:1}.btn{display:inline-block;padding:10px 20px;margin:5px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:700;text-decoration:none;transition:all 0.3s;background:#007cba;color:#fff}.btn:hover{background:#005a87;transform:translateY(-1px)}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#5a6268}.btn-primary{background:#28a745;color:#fff}.btn-primary:hover{background:#218838}.role-selection{text-align:center;padding:30px;background:#fff;border:1px solid #ddd;border-radius:5px}.role-buttons{display:flex;gap:15px;justify-content:center;margin-top:20px}.role-btn{padding:15px 25px;background:#007cba;color:#fff;border:none;border-radius:5px;cursor:pointer;font-size:16px;font-weight:700;transition:all 0.3s;min-width:150px}.role-btn:hover{background:#005a87;transform:translateY(-2px);box-shadow:0 4px 8px rgb(0 0 0 / .2)}#speakclinic-profile{max-width:600px;margin:0 auto;padding:20px;background:#fff;border:1px solid #ddd;border-radius:8px}.profile-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:15px;border-bottom:2px solid #eee}.profile-header h2{margin:0;color:#333}.profile-info{background:#f8f9fa;padding:20px;border-radius:5px;margin-bottom:20px}.profile-info h3{margin-top:0;color:#007cba;border-bottom:1px solid #ddd;padding-bottom:10px}.profile-info p{margin:10px 0;line-height:1.5}.form-section{margin-bottom:30px;padding:20px;background:#f8f9fa;border:1px solid #e9ecef;border-radius:5px}.form-section h4{margin-top:0;margin-bottom:20px;color:#007cba;border-bottom:1px solid #ddd;padding-bottom:10px}#doctor-registration-form,#patient-registration-form{max-width:700px;margin:20px auto;padding:30px;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 2px 4px rgb(0 0 0 / .1)}#doctor-registration-form h3,#patient-registration-form h3{margin-top:0;color:#333;text-align:center;border-bottom:2px solid #007cba;padding-bottom:15px}#loading{text-align:center;padding:20px;font-size:16px;color:#666}#message{margin:15px 0;padding:10px;border-radius:4px;font-weight:700}#message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}#message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}#google-signin-button,#google-register-button{text-align:center;margin:15px 0}@media (max-width:768px){#speakclinic-auth-container,#speakclinic-profile,#doctor-registration-form,#patient-registration-form{max-width:100%;margin:10px;padding:15px}.role-buttons{flex-direction:column;align-items:center}.role-btn{width:100%;max-width:250px}.profile-header{flex-direction:column;gap:15px;text-align:center}.phone-input{flex-direction:column}.phone-input select{flex:none}}.fade-in{animation:fadeIn 0.3s ease-in}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#dc3545;box-shadow:0 0 0 2px rgb(220 53 69 / .2)}.error-message{color:#dc3545;font-size:12px;margin-top:5px;display:block}