*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;color:#333;background-color:#f8f9fa;width:100%;overflow-x:hidden}.container{max-width:100%;margin:0 auto;padding:0 2rem;width:100%;border-color:red solid 3px}.container-fluid{width:100%;padding:0 1rem;border-color:red solid 3px}.app{min-height:100vh;display:flex;flex-direction:column;width:100%}.app-header{background:#fff;box-shadow:0 2px 4px #0000001a;position:sticky;top:0;z-index:100;width:100%}.app-header .container{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;max-width:none;width:100%}.app-title a{font-size:1.8rem;font-weight:700;color:#007bff;text-decoration:none}.app-nav{display:flex;gap:2rem}.app-nav a{text-decoration:none;color:#666;font-weight:500;transition:color .3s}.app-nav a:hover{color:#007bff}.app-main{flex:1;padding:0;width:100%}.app-footer{background:#333;color:#fff;text-align:center;padding:1rem 0;margin-top:auto;width:100%}h1,h2,h3,h4,h5,h6{margin-bottom:1rem;font-weight:600}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}p{margin-bottom:1rem}.btn{display:inline-block;padding:.75rem 1.5rem;border:none;border-radius:5px;cursor:pointer;text-decoration:none;font-size:1rem;font-weight:500;transition:all .3s}.btn-primary{background:#007bff;color:#fff}.btn-primary:hover{background:#0056b3}.btn:disabled{background:#ccc;cursor:not-allowed}input,select,textarea{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:5px;font-size:1rem}input:focus,select:focus,textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#555}.error{border-color:#dc3545!important}.error-message{color:#dc3545;font-size:.875rem;margin-top:.25rem;display:block}.info-message{color:#6c757d;font-size:.875rem;margin-top:.25rem;display:block}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.container{max-width:100%!important;width:100%!important}.hero-section{text-align:center;padding:4rem 0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;margin-bottom:3rem;width:100%}.hero-section .container{max-width:none!important;padding:0 2rem;width:100%}.hero-section h1{font-size:3rem;margin-bottom:1rem}.hero-section p{font-size:1.2rem;margin-bottom:2rem;opacity:.9}.search-bar{position:relative;max-width:600px;margin:0 auto;width:100%}.search-input{width:100%;padding:1rem 3rem 1rem 1rem;border:none;border-radius:25px;font-size:1rem;box-shadow:0 4px 6px #0000001a}.search-icon{position:absolute;right:1rem;top:50%;transform:translateY(-50%);font-size:1.2rem;color:#666}.doctors-section{padding:0;width:100%}.doctors-section .container{max-width:none!important;padding:0 2rem;width:100%}.doctors-section h2{text-align:center;margin-bottom:3rem;color:#333}.doctor-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem;padding:0;width:100%;max-width:none!important}.doctor-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 6px #0000001a;cursor:pointer;transition:all .3s;width:100%;margin-bottom:45px}.doctor-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #00000026}.doctor-image-container{position:relative;margin-bottom:1rem}.doctor-image{width:100%;height:220px;object-fit:cover;border-radius:8px}.availability-badge{position:absolute;top:10px;right:10px;padding:.25rem .75rem;border-radius:15px;font-size:.75rem;font-weight:700;text-transform:uppercase}.availability-badge.available{background:#28a745;color:#fff}.availability-badge.fully-booked{background:#ffc107;color:#212529}.availability-badge.on-leave{background:#dc3545;color:#fff}.doctor-name{font-size:1.4rem;margin-bottom:.5rem;color:#333}.doctor-specialization{color:#666;margin-bottom:1rem;font-size:1.1rem}.doctor-meta{display:flex;justify-content:space-between;align-items:center;font-size:1rem}.rating{color:#ffc107;font-weight:700}.experience{color:#666}.fees{font-weight:700;color:#007bff}.doctor-profile{max-width:none;margin:0 auto;padding:0 2rem;width:100%}.profile-header{display:flex;gap:3rem;margin-bottom:2rem;background:#fff;padding:3rem;border-radius:12px;box-shadow:0 4px 6px #0000001a;width:100%}.profile-image{width:250px;height:250px;object-fit:cover;border-radius:12px}.profile-info{flex:1}.profile-name{font-size:2.5rem;margin-bottom:.5rem;color:#333}.profile-specialization{font-size:1.3rem;color:#666;margin-bottom:1rem}.profile-meta{display:flex;flex-wrap:wrap;gap:2rem}.profile-meta span{display:flex;align-items:center;gap:.5rem;font-weight:500;font-size:1.1rem}.profile-content{margin-bottom:2rem}.profile-section{background:#fff;padding:2rem;margin-bottom:1.5rem;border-radius:12px;box-shadow:0 4px 6px #0000001a;width:100%}.profile-section h3{color:#007bff;border-bottom:2px solid #f8f9fa;padding-bottom:.5rem;margin-bottom:1rem;font-size:1.4rem}.schedule-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;width:100%}.schedule-day{border:1px solid #e9ecef;border-radius:8px;padding:1.5rem}.schedule-day h4{margin-bottom:.75rem;color:#495057;font-size:1.2rem}.time-slots{display:flex;flex-wrap:wrap;gap:.5rem}.time-slot{padding:.4rem 1rem;background:#e7f3ff;color:#0056b3;border-radius:15px;font-size:.9rem;font-weight:500}.no-slots{color:#6c757d;font-style:italic;font-size:1rem}.profile-actions{text-align:center;width:100%}.book-appointment-btn{background:#28a745;color:#fff;padding:1.2rem 4rem;border:none;border-radius:25px;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .3s;margin-bottom:15px}.book-appointment-btn:hover:not(:disabled){background:#218838;transform:translateY(-2px)}.book-appointment-btn:disabled{background:#6c757d;cursor:not-allowed;transform:none}.appointment-form-container{max-width:800px;margin:0 auto;background:#fff;padding:3rem;border-radius:12px;box-shadow:0 4px 6px #0000001a;width:calc(100% - 4rem)}.form-header{text-align:center;margin-bottom:2rem}.form-header h2{color:#333;margin-bottom:.5rem;font-size:2rem}.doctor-info{color:#666;font-size:1.2rem}.appointment-form{margin-top:2rem}.submit-btn{width:100%;background:#007bff;color:#fff;padding:1.2rem;border:none;border-radius:8px;font-size:1.2rem;font-weight:700;cursor:pointer;transition:background .3s}.submit-btn:hover{background:#0056b3}.appointment-confirmation{display:flex;justify-content:center;align-items:center;min-height:60vh;padding:0 2rem;width:100%}.confirmation-card{background:#fff;padding:4rem 3rem;border-radius:12px;box-shadow:0 4px 6px #0000001a;text-align:center;max-width:600px;width:100%}.success-icon{font-size:5rem;margin-bottom:1rem}.confirmation-card h2{color:#28a745;margin-bottom:2rem;font-size:2.2rem}.appointment-details{background:#f8f9fa;padding:2rem;border-radius:8px;margin:1.5rem 0;text-align:left}.appointment-details p{margin-bottom:.7rem;font-size:1.1rem}.confirmation-message{color:#666;margin-bottom:2rem;font-size:1.1rem}.back-home-btn{background:#007bff;color:#fff;padding:1rem 3rem;border:none;border-radius:25px;font-weight:700;cursor:pointer;transition:background .3s;font-size:1.1rem}.back-home-btn:hover{background:#0056b3}.no-results{text-align:center;padding:4rem;color:#666;width:100%}.no-results p{font-size:1.3rem}.home-page{width:100%}@media (min-width: 1400px){.container{max-width:100%!important;padding:0 3rem}.doctor-list{grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:3rem}.hero-section h1{font-size:4rem}.search-bar{max-width:800px}}@media (min-width: 1200px){.container{max-width:100%!important;padding:0 2rem}.doctor-list{grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:2.5rem}.profile-header{padding:4rem}.profile-image{width:300px;height:300px}.schedule-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}@media (max-width: 1024px){.container{padding:0 2rem;max-width:100%!important}.doctor-list{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem}.profile-header{padding:2rem}}@media (max-width: 768px){.container{padding:0 1.5rem;max-width:100%!important}.app-header .container{flex-direction:column;gap:1rem;padding:1rem 1.5rem}.app-nav{gap:1rem}.hero-section{padding:2rem 0}.hero-section h1{font-size:2.5rem}.doctor-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.profile-header{flex-direction:column;text-align:center;padding:2rem}.profile-image{width:200px;height:200px;margin:0 auto}.profile-name{font-size:2rem}.profile-meta{justify-content:center}.schedule-grid{grid-template-columns:1fr}.appointment-form-container{margin:0 1.5rem;padding:2rem}}@media (max-width: 480px){.container{padding:0 1rem;max-width:100%!important}.hero-section h1{font-size:2rem}.hero-section p{font-size:1rem}.search-input{padding:.75rem 2.5rem .75rem 1rem}.doctor-list{grid-template-columns:1fr;gap:1rem;padding:0 1rem}.doctor-card{padding:1rem}.doctor-image{height:180px}.doctor-meta{flex-direction:column;gap:.5rem;text-align:center}.profile-header,.profile-section{padding:1.5rem}.profile-name{font-size:1.8rem}.profile-meta{flex-direction:column;gap:.75rem}.time-slots{justify-content:center}.book-appointment-btn{padding:1rem 2rem;font-size:1rem}.appointment-form-container{padding:1.5rem;margin:0 1rem;width:calc(100% - 2rem)}.confirmation-card{padding:2rem 1.5rem}.success-icon{font-size:3rem}.appointment-details{padding:1rem}}@media (min-width: 320px){body,html{width:100%;overflow-x:hidden}.container,.container-fluid,.hero-section,.doctors-section,.doctor-list,.home-page{width:100%!important;max-width:none!important}}
