body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}#root,body,html{height:100%;width:100%}body{background:#fff;color:#333;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.App{display:flex;flex-direction:column;min-height:100vh;width:100%}html{scroll-behavior:smooth}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#1abc9c;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#16a085}.city-autocomplete{position:relative;width:100%;z-index:10}.city-input-wrapper{align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:8px;display:flex;padding:0 12px;position:relative;transition:border-color .3s ease}.city-input-wrapper:focus-within{border-color:#1abc9c;box-shadow:0 0 0 3px #1abc9c26}.city-icon{font-size:18px;margin-right:8px}.city-input{background:#0000;border:none;flex:1 1;font-size:16px;outline:none;padding:12px 0;width:100%}.city-input::placeholder{color:#999}.city-clear-btn{background:none;border:none;color:#999;cursor:pointer;font-size:18px;padding:4px 8px;transition:color .2s ease}.city-clear-btn:hover{color:#333}.city-dropdown{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 8px 24px #0000001f;color:#333;left:0;max-height:280px;min-width:100%;overflow-x:hidden;overflow-y:auto;position:absolute;right:0;top:calc(100% + 4px);z-index:9999}.city-option{align-items:center;border-bottom:1px solid #f5f5f5;color:#333;cursor:pointer;display:flex;gap:8px;justify-content:flex-start;padding:9px 14px;transition:background-color .15s ease}.city-option span{color:#333;font-size:14px;text-align:left}.city-option span:last-child{flex:1 1;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.city-option:last-child{border-bottom:none}.city-option:hover{background:#f0fdf8;color:#333}.city-no-results{background:#fff;color:#666;font-size:14px;padding:16px;text-align:center}.city-dropdown::-webkit-scrollbar{width:8px}.city-dropdown::-webkit-scrollbar-track{background:#f1f1f1}.city-dropdown::-webkit-scrollbar-thumb{background:#1abc9c;border-radius:4px}.city-dropdown::-webkit-scrollbar-thumb:hover{background:#17a589}@media (max-width:768px){.city-input-wrapper{padding:0 10px}.city-input{padding:10px 0}.city-dropdown{max-height:250px}.city-option{font-size:14px;padding:10px 12px}}.navbar{background:linear-gradient(135deg,#1abc9c,#16a085);box-shadow:0 2px 10px #0000001a;padding:0;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.navbar-container{height:70px;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 20px}.navbar-container,.navbar-logo{align-items:center;display:flex}.navbar-logo{color:#fff;font-size:24px;font-weight:700;gap:10px;text-decoration:none;transition:opacity .3s ease}.navbar-logo:hover{opacity:.8}.navbar-logo-icon{align-items:center;display:flex;font-size:28px;justify-content:center}.navbar-search{align-items:center;background:#fff;border-radius:40px;box-shadow:0 4px 16px #0000001a,0 1px 3px #0000000f;display:flex;flex:1 1;height:48px;margin:0 24px;max-width:820px;overflow:visible;position:relative;transition:box-shadow .25s}.navbar-search:focus-within{box-shadow:0 4px 20px #00000024,0 0 0 2px #1abc9c40}.nb-field{align-items:center;border-radius:40px;display:flex;height:100%;padding:0 4px 0 12px;position:relative;transition:background .15s}.nb-field:hover{background:#f0faf8}.nb-field--specialty{max-width:190px;min-width:155px}.nb-field--city{flex:1 1;min-width:110px;padding:0}.nb-field--name{flex:1.2 1;min-width:120px;padding-right:2px}.nb-field-icon{color:#16a085;flex-shrink:0;font-size:18px!important;margin-right:4px;opacity:.7}.nb-search-select{-webkit-appearance:none;appearance:none;background:#0000;border:none;color:#333;cursor:pointer;font-size:13.5px;font-weight:500;height:100%;outline:none;overflow:hidden;padding:0 4px;text-overflow:ellipsis;white-space:nowrap;width:100%}.nb-search-select option{font-size:13px}.nb-field--city .city-autocomplete-wrapper{width:100%}.nb-field--city input{border:none!important;box-shadow:none!important;height:48px!important;outline:none!important;padding:0 12px!important;width:100%}.nb-field--city input,.nb-search-name{background:#0000;font-size:13.5px;font-weight:500}.nb-search-name{border:none;color:#333;flex:1 1;height:100%;min-width:60px;outline:none;padding:0 6px}.nb-search-name::placeholder,.nb-search-select option:first-child{color:#a0aab0;font-weight:400}.nb-clear-btn{align-items:center;background:none;border:none;border-radius:50%;color:#a0aab0;cursor:pointer;display:flex;margin-right:2px;padding:2px;transition:all .15s}.nb-clear-btn:hover{background:#fee;color:#e53e3e}.nb-search-sep{background:linear-gradient(180deg,#0000,#d4dde0 20%,#d4dde0 80%,#0000);flex-shrink:0;height:22px;width:1px}.nb-search-btn{align-items:center;background:linear-gradient(135deg,#1abc9c,#16a085);border:none;border-radius:50%;box-shadow:0 2px 8px #16a0854d;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:20px;height:42px;justify-content:center;margin:3px;transition:all .2s;width:42px}.nb-search-btn:hover{background:linear-gradient(135deg,#1dd1a9,#1abc9c);box-shadow:0 4px 12px #16a08566;transform:scale(1.06)}.btn{border-radius:25px;display:inline-block;font-size:14px;padding:8px 20px;text-align:center;text-decoration:none}.btn-primary{background:#fff;color:#1abc9c}.btn-primary:hover{background:#f0f0f0}.btn-secondary{background:#fff3;border:2px solid #fff}.btn-secondary:hover{background:#ffffff4d}.btn-logout{background:#ff4949cc;border:2px solid #ff4949cc;color:#fff}.btn-logout:hover{background:#ff4949}.navbar-auth{align-items:center;display:flex;gap:12px}@media (max-width:768px){.navbar-container{flex-wrap:nowrap;height:70px}.navbar-search{height:42px;margin:0 10px}.nb-field--name,.nb-field--specialty,.nb-search-sep{display:none}.nb-search-btn{height:36px;width:36px}}@media (max-width:480px){.navbar-logo{font-size:18px}.navbar-logo-icon{font-size:22px}.navbar-search{margin:0 8px;max-width:none}}.navbar-account{position:relative}.navbar-account-btn{align-items:center;background:#ffffff26;border:2px solid #fff9;border-radius:25px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:6px 14px 6px 8px;transition:background .2s}.navbar-account-btn:hover{background:#ffffff40}.navbar-account-avatar{align-items:center;background:#fff;border-radius:50%;color:#16a085;display:flex;flex-shrink:0;font-size:13px;font-weight:700;height:28px;justify-content:center;width:28px}.navbar-account-chevron{align-items:center;display:flex;transition:transform .2s}.navbar-account-chevron.open{transform:rotate(180deg)}.navbar-dropdown{animation:dropdown-in .15s ease;background:#fff;border:1px solid #e8e8e8;border-radius:12px;box-shadow:0 8px 30px #00000026;min-width:230px;overflow:hidden;position:absolute;right:0;top:calc(100% + 10px);z-index:2000}@keyframes dropdown-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.navbar-dropdown-header{display:flex;flex-direction:column;gap:2px;padding:14px 16px 12px}.navbar-dropdown-name{color:#1a1a2e;font-size:14px;font-weight:700}.navbar-dropdown-email{color:#888;font-size:12px}.navbar-dropdown-divider{background:#f0f0f0;height:1px;margin:2px 0}.navbar-dropdown-item{align-items:center;background:none;border:none;color:#333;cursor:pointer;display:flex;font-size:14px;gap:10px;padding:11px 16px;text-align:left;text-decoration:none;transition:background .15s;width:100%}.navbar-dropdown-item:hover{background:#f5fdf9;color:#16a085}.ndi-icon{color:#16a085;flex-shrink:0;font-size:18px!important;height:20px;width:20px}.navbar-dropdown-logout,.navbar-dropdown-logout .ndi-icon{color:#e53935}.navbar-dropdown-logout:hover{background:#fff5f5;color:#c62828}.footer{background-color:#2c3e50;border-top:1px solid #34495e;color:#ecf0f1;margin-top:80px;padding:50px 20px 20px}.footer-content{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:0 auto 40px;max-width:1200px}.footer-section h3{color:#ecf0f1;font-size:22px;font-weight:700;margin-bottom:16px}.footer-section h4{color:#bdc3c7;font-size:14px;font-weight:700;letter-spacing:1px;margin-bottom:16px;text-transform:uppercase}.footer-section p{color:#95a5a6;font-size:13px;line-height:1.8;margin-bottom:8px}.footer-section ul{list-style:none;padding:0}.footer-section ul li{margin-bottom:10px}.footer-section ul li a{color:#95a5a6;font-size:13px;text-decoration:none;transition:color .2s}.footer-section ul li a:hover{color:#3498db}.social-links{display:flex;flex-wrap:wrap;gap:12px}.social-link{align-items:center;background-color:#34495e;border:1px solid #475569;border-radius:6px;color:#95a5a6;cursor:pointer;display:inline-flex;height:40px;justify-content:center;text-decoration:none;transition:all .2s;width:40px}.social-link:hover{background-color:#3498db;border-color:#3498db;color:#fff;transform:translateY(-2px)}.social-icon{align-items:center;display:inline-flex;font-size:18px;justify-content:center}.footer-bottom{border-top:1px solid #34495e;color:#7f8c8d;font-size:12px;margin:0 auto;max-width:1200px;padding-top:20px;text-align:center}@media (max-width:768px){.footer-content{gap:30px;grid-template-columns:1fr}.footer-section h3{font-size:18px}.footer{margin-top:60px;padding:40px 15px 20px}.social-link{height:38px;width:38px}.social-icon{font-size:16px}}@media (max-width:480px){.footer-content{gap:24px}.footer-section h3{font-size:16px}.footer-section h4{font-size:12px}.social-links{gap:10px}.social-link{height:36px;width:36px}.social-icon{font-size:15px}}.home{min-height:calc(100vh - 70px);width:100%}.hero{background:linear-gradient(135deg,#1abc9cd9,#16a085d9),url(/static/media/img_body_up.3be0da2a1fa2d6abe25f.jpg) 50%/cover no-repeat;color:#fff;padding:60px 20px;position:relative;text-align:center}.hero-content{grid-gap:40px;align-items:center;display:grid;gap:40px;grid-template-columns:1fr 1fr;margin:0 auto 40px;max-width:1200px}.hero-text{text-align:left}.hero-text h1{font-size:48px;font-weight:700;line-height:1.2;margin:0 0 20px}.hero-text p{font-size:20px;margin:0;opacity:.95}.hero-image{align-items:center;display:flex;justify-content:center}.doctors-illustration{animation:float 3s ease-in-out infinite;font-size:120px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.search-container{margin:0 auto;max-width:1200px;overflow:visible;position:relative}.search-form{background:#0000}.appointment-type-btn{display:flex;gap:15px;justify-content:center;margin-bottom:25px}.type-btn{align-items:center;background:#fff3;border:2px solid #fff;border-radius:30px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:6px;line-height:1;padding:12px 30px;transition:all .3s ease}.type-btn:hover{background:#ffffff4d}.type-btn.active{background:#fff;border-color:#fff;color:#1abc9c}.search-inputs{align-items:stretch;display:flex;gap:12px;margin:0 auto;max-width:900px;padding:0 10px;position:relative}.search-inputs .city-autocomplete,.search-inputs .search-input{flex:1 1;min-width:0}.search-inputs--virtual .search-input{flex:2 1}.search-input{border:none;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:14px;height:50px;padding:14px 16px}.search-input:focus{box-shadow:0 0 0 3px #ffffff4d;outline:none}.search-btn{align-items:center;background:#0e7c59;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:50px;padding:14px 28px;transition:background .3s ease;white-space:nowrap}.search-btn:hover{background:#0a5f47}.online-info-row{display:flex;justify-content:center;margin-top:12px}.online-info-link{align-items:center;background:none;border:none;border-radius:6px;color:#ffffffe6;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:4px;padding:4px 8px;text-decoration:underline;text-underline-offset:3px;transition:background .2s ease,color .2s ease}.online-info-link:hover{background:#ffffff26;color:#fff}.online-info-overlay{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.online-info-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;max-width:440px;padding:28px 32px 32px;position:relative;width:90%}.online-info-modal h3{color:#1a1a1a;font-size:20px;font-weight:700;margin:0 0 16px;padding-right:32px}.online-info-divider{border:none;border-top:1px solid #e5e7eb;margin:0 0 16px}.online-info-modal p{color:#444;font-size:15px;line-height:1.6;margin:0}.online-info-close{align-items:center;background:#f3f4f6;border:none;border-radius:50%;color:#555;cursor:pointer;display:flex;height:32px;justify-content:center;position:absolute;right:16px;top:16px;transition:background .2s ease;width:32px}.online-info-close:hover{background:#e5e7eb}.search-inputs .city-input-wrapper{align-items:center;background:#fff;border:none;border-radius:8px;box-shadow:none;display:flex;height:50px;padding:0 12px}.search-inputs .city-input-wrapper:focus-within{border:none;box-shadow:0 0 0 3px #ffffff4d}.search-inputs .city-input{font-size:14px;height:100%;padding:0}.features{background:#f8f9fa;padding:80px 20px}.features-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:0 auto;max-width:1200px}.feature-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:30px;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.feature-card:hover{box-shadow:0 8px 16px #0000001a;transform:translateY(-5px)}.feature-icon{font-size:48px;margin-bottom:15px}.feature-card h3{color:#333;font-size:18px;font-weight:600;margin:15px 0}.feature-card p{color:#666;font-size:14px;line-height:1.6;margin:0}.specialties{background:#fff;padding:80px 20px}.specialties h2{color:#333;font-size:36px;font-weight:700;margin-bottom:50px;text-align:center}.specialties-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:0 auto;max-width:1200px}.specialty-link{background:#f8f9fa;border:2px solid #0000;border-radius:8px;color:#333;font-weight:500;padding:16px;text-align:center;text-decoration:none;transition:all .3s ease}.specialty-link:hover{background:#1abc9c;border-color:#1abc9c;color:#fff;transform:translateY(-3px)}.cta-section{background:linear-gradient(135deg,#1abc9c,#16a085);color:#fff;padding:80px 20px;text-align:center}.cta-content h2{font-size:36px;font-weight:700;margin-bottom:15px}.cta-content p{font-size:18px;margin-bottom:30px;opacity:.95}.cta-btn{background:#fff;border-radius:30px;color:#1abc9c;display:inline-block;font-size:16px;font-weight:600;padding:14px 40px;text-decoration:none;transition:all .3s ease}.cta-btn:hover{box-shadow:0 8px 20px #0003;transform:translateY(-2px)}@media (max-width:920px){.search-inputs{flex-wrap:wrap}.search-inputs .city-autocomplete,.search-inputs .search-input{flex-basis:calc(50% - 6px);flex-grow:1;flex-shrink:1;min-width:0}.search-btn{flex:1 1 100%;justify-content:center}}@media (max-width:768px){.hero{padding:40px 15px}.hero-content{gap:20px;grid-template-columns:1fr;margin-bottom:30px}.hero-text h1{font-size:28px;margin-bottom:10px}.hero-text p{font-size:14px}.doctors-illustration{font-size:70px}.search-inputs{flex-direction:column;gap:10px;padding:0}.search-btn,.search-inputs .city-autocomplete,.search-inputs .search-input{flex:1 1 100%}.search-btn{justify-content:center;padding:12px 20px}.appointment-type{flex-wrap:wrap;gap:10px;margin-bottom:20px}.type-btn{font-size:13px;padding:10px 20px}.features-grid{grid-template-columns:1fr}.specialties-grid{grid-template-columns:repeat(2,1fr)}.cta-content h2,.specialties h2{font-size:28px}}@media (max-width:480px){.hero{padding:40px 15px}.hero-text h1{font-size:24px}.hero-text p,.type-btn{font-size:14px}.type-btn{padding:10px 20px}.search-btn,.search-input{font-size:12px;padding:10px 12px}.cta-section,.features,.specialties{padding:40px 15px}}.dl-page{background:#f4f5f7;display:flex;flex-direction:column;min-height:100vh}.dl-filterbar{background:#fff;border-bottom:1px solid #e8e8e8;padding:0}.dl-filterbar-inner{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin:0 auto;max-width:1300px;padding:12px 20px}.dl-pills{display:flex;flex-wrap:wrap;gap:8px}.dl-pill{align-items:center;background:#fff;border:1.5px solid #dde1e7;border-radius:20px;color:#555;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:7px 16px;transition:all .15s}.dl-pill:hover{border-color:#1abc9c;color:#1abc9c}.dl-pill--active{background:#1abc9c;border-color:#1abc9c;color:#fff}.dl-result-count{color:#888;font-size:13px;font-weight:500;white-space:nowrap}.dl-body{align-items:flex-start;display:flex;flex:1 1;gap:20px;margin:0 auto;max-width:1300px;padding:20px 20px 40px;width:100%}.dl-list-panel{display:flex;flex:1 1;flex-direction:column;gap:12px;min-width:0}.dl-empty,.dl-loading{color:#aaa;font-size:15px;padding:80px 20px;text-align:center}.dl-card{align-items:flex-start;background:#fff;border:2px solid #0000;border-radius:12px;box-shadow:0 2px 8px #00000012;cursor:pointer;display:flex;gap:16px;padding:20px;transition:box-shadow .2s,border-color .2s}.dl-card:hover{border-color:#1abc9c;box-shadow:0 6px 20px #0000001c}.dl-card--selected{border-color:#1abc9c;box-shadow:0 6px 20px #1abc9c26}.dl-card-photo{background:#e8f8f5;border-radius:50%;flex-shrink:0;height:72px;overflow:hidden;width:72px}.dl-card-photo img{height:100%;object-fit:cover;width:100%}.dl-card-avatar{align-items:center;background:#e8f8f5;color:#1abc9c;display:flex;font-size:26px;font-weight:700;height:100%;justify-content:center;width:100%}.dl-card-info{flex:1 1;min-width:0}.dl-card-name{align-items:center;color:#1a1a2e;display:flex;font-size:16px;font-weight:700;gap:6px;margin-bottom:3px}.dl-verified{color:#1abc9c!important;font-size:16px!important}.dl-card-specialty{color:#1abc9c;font-size:13px;font-weight:600;margin-bottom:5px}.dl-stars{align-items:center;display:flex;gap:2px;margin-bottom:6px}.dl-star{font-size:14px;line-height:1}.dl-star--on{color:#f5a623}.dl-star--off{color:#ddd}.dl-rating-val{color:#888;font-size:12px;margin-left:4px}.dl-card-bio{color:#666;font-size:13px;line-height:1.45;margin:4px 0 8px}.dl-card-address{align-items:flex-start;color:#999;display:flex;font-size:12px;gap:0}.dl-card-address svg{color:#ccc;margin-top:1px}.dl-card-slots{border-left:1px solid #f0f0f0;display:flex;flex-direction:column;flex-shrink:0;gap:8px;padding-left:16px;width:320px}.dl-slot-tabs{border-bottom:1px solid #e8e8e8;display:flex;gap:0}.dl-slot-tab{align-items:center;background:none;border:none;border-bottom:2px solid #0000;color:#999;cursor:pointer;display:flex;font-size:12px;font-weight:600;gap:4px;margin-bottom:-1px;padding:6px 12px;transition:color .15s,border-color .15s}.dl-slot-tab.active{border-bottom-color:#16a085;color:#16a085}.dl-slot-nav{align-items:flex-start;display:flex;gap:2px}.dl-slot-nav-btn{align-items:center;background:none;border:none;border-radius:50%;color:#16a085;cursor:pointer;display:flex;justify-content:center;margin-top:8px;padding:4px 2px;transition:background .15s}.dl-slot-nav-btn:hover:not(:disabled){background:#e8f5f2}.dl-slot-nav-btn:disabled{color:#ddd;cursor:default}.dl-slot-days{display:flex;flex:1 1;gap:4px}.dl-slot-day{flex:1 1;min-width:0}.dl-slot-day-header{align-items:center;display:flex;flex-direction:column;margin-bottom:6px}.dl-slot-day-label{color:#333;font-size:12px;font-weight:700}.dl-slot-day-date{color:#aaa;font-size:10px}.dl-slot-times{align-items:center;display:flex;flex-direction:column;gap:4px}.dl-slot-chip{background:#e8f5f2;border-radius:6px;color:#16a085;display:block;font-size:12px;font-weight:600;padding:5px 4px;text-align:center;text-decoration:none;transition:background .15s,color .15s;width:100%}.dl-slot-chip:hover{background:#1abc9c;color:#fff}.dl-slot-booked{background:#fed7d7!important;color:#c53030!important;cursor:not-allowed;opacity:.7;pointer-events:none;text-decoration:line-through}.dl-slot-none{color:#ccc;display:block;font-size:18px;padding:8px 0;text-align:center}.dl-slots-loading{color:#ccc;font-size:20px;padding:16px 0;text-align:center}.dl-slots-more{align-items:center;background:none;border:none;color:#16a085;cursor:pointer;display:flex;font-size:12px;font-weight:600;gap:2px;justify-content:center;padding:4px 0;text-align:center}.dl-slots-more:hover{text-decoration:underline}.dl-map-panel{border-radius:12px;box-shadow:0 2px 12px #0000001a;flex-shrink:0;height:calc(100vh - 110px);overflow:hidden;position:-webkit-sticky;position:sticky;top:70px;width:400px}.dl-map{height:100%;width:100%}.dl-map-hint{background:#ffffffeb;border-radius:8px;bottom:16px;color:#888;font-size:12px;left:50%;padding:8px 16px;pointer-events:none;position:absolute;text-align:center;transform:translateX(-50%);white-space:nowrap}@media (max-width:900px){.dl-body{flex-direction:column}.dl-map-panel{height:320px;position:static;width:100%}}@media (max-width:600px){.dl-card{flex-wrap:wrap}.dl-card-slots{border-left:none;border-top:1px solid #f0f0f0;padding-left:0;padding-top:12px;width:100%}}.doctor-list__header{margin-bottom:50px;text-align:center}.doctor-list__header h1{color:#2c3e50;font-size:2.5rem;font-weight:700;margin-bottom:8px}.doctor-list__header p{color:#7f8c8d;font-size:1rem}.doctor-list__container{display:flex;gap:30px;margin:0 auto;max-width:1400px}.doctor-list__sidebar{background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014;height:-webkit-fit-content;height:fit-content;padding:24px;position:-webkit-sticky;position:sticky;top:100px;width:250px}.filter-group{margin-bottom:24px}.filter-label{color:#2c3e50;display:block;font-size:.9rem;font-weight:600;margin-bottom:8px}.filter-input,.filter-select{border:1px solid #ddd;border-radius:6px;font-size:.9rem;padding:10px 12px;transition:border-color .2s;width:100%}.filter-input:hover,.filter-select:hover{border-color:#bdc3c7}.filter-input:focus,.filter-select:focus{border-color:#3498db;outline:none}.doctor-list__content{flex:1 1}.loading{color:#7f8c8d;font-size:1rem;padding:100px 20px}.doctors-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.doctor-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014;overflow:hidden;transition:box-shadow .3s,transform .3s}.doctor-card:hover{box-shadow:0 8px 16px #0000001f;transform:translateY(-4px)}.doctor-card__image{align-items:center;background-color:#3498db;display:flex;height:200px;justify-content:center;overflow:hidden;width:100%}.doctor-card__image img{height:100%;object-fit:cover;width:100%}.placeholder-avatar{font-size:4rem}.doctor-card__content{padding:20px}.doctor-card__name{color:#2c3e50;font-size:1.15rem;font-weight:700;margin-bottom:6px}.doctor-card__specialty{color:#7f8c8d;font-size:.9rem;margin-bottom:12px}.doctor-card__fee{color:#27ae60;font-weight:600;margin-bottom:8px}.doctor-card__rating{color:#f39c12;font-weight:600;margin-bottom:12px}.doctor-card__bio{color:#7f8c8d;font-size:.85rem;line-height:1.5;margin-bottom:16px;min-height:2.55em}.doctor-card__btn{background-color:#3498db;border-radius:6px;box-sizing:border-box;color:#fff;display:inline-block;font-weight:600;padding:11px 20px;text-align:center;text-decoration:none;transition:background-color .2s;width:100%}.doctor-card__btn:hover{background-color:#2980b9}.no-results{color:#bdc3c7;font-size:1rem;padding:60px 20px;text-align:center}@media (max-width:768px){.doctor-list__container{flex-direction:column}.doctor-list__sidebar{position:static;width:100%}.doctors-grid{grid-template-columns:1fr}.doctor-list__header h1{font-size:1.8rem;margin-bottom:8px}.doctor-list__header{margin-bottom:30px}}.pac-page{background:#f4f5f7;display:flex;flex-direction:column;min-height:100vh}.pac-topbar{background:#fff;border-bottom:1px solid #e8e8e8;position:-webkit-sticky;position:sticky;top:0;z-index:100}.pac-topbar-inner{align-items:center;display:flex;height:64px;justify-content:space-between;margin:0 auto;max-width:1100px;padding:0 24px}.pac-topbar-brand{align-items:center;display:flex;gap:12px}.pac-topbar-logo{color:#1abc9c;font-size:32px!important}.pac-topbar-title{color:#1a1a2e;font-size:16px;font-weight:700}.pac-topbar-email{color:#888;font-size:12px}.pac-topbar-close{align-items:center;background:#f0f0f0;border:none;border-radius:20px;color:#555;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;padding:8px 16px;transition:background .2s}.pac-topbar-close:hover{background:#e0e0e0}.pac-body{display:flex;flex:1 1;gap:28px;margin:0 auto;max-width:1100px;padding:32px 24px 60px;width:100%}.pac-sidebar{flex-shrink:0;width:220px}.pac-sidebar-section{display:flex;flex-direction:column;gap:2px}.pac-sidebar-label{color:#aaa;font-size:11px;font-weight:700;letter-spacing:.06em;padding:8px 10px 4px;text-transform:uppercase}.pac-sidebar-item{align-items:center;border-radius:8px;color:#444;display:flex;font-size:14px;gap:10px;padding:10px 12px;text-decoration:none;transition:background .15s,color .15s}.pac-sidebar-item svg{color:#aaa;flex-shrink:0}.pac-sidebar-item:hover{background:#eaf7f4;color:#16a085}.pac-sidebar-item:hover svg{color:#16a085}.pac-sidebar-item--active{background:#e8f8f5;color:#16a085;font-weight:600}.pac-sidebar-item--active svg{color:#16a085}.pac-sidebar-divider{background:#e8e8e8;height:1px;margin:12px 8px}.pac-main{flex:1 1;min-width:0}.pac-loading{color:#888;font-size:15px;padding:80px 0;text-align:center}.pac-form{background:#fff;border-radius:14px;box-shadow:0 2px 12px #0000000f;padding:32px 36px 36px}.pac-form-title{color:#1a1a2e;font-size:1.3rem;font-weight:700;margin:0 0 4px}.pac-form-hint{color:#aaa;font-size:12px;margin:0 0 28px}.pac-error-banner{background:#fff0f0;border:1px solid #f5c6c6;border-radius:8px;color:#c0392b}.pac-error-banner,.pac-success-banner{font-size:13px;margin-bottom:20px;padding:10px 14px}.pac-success-banner{align-items:center;background:#eaf7f4;border:1px solid #b2dfdb;border-radius:8px;color:#16a085;display:flex;gap:8px}.pac-field-row{grid-gap:16px;align-items:center;display:grid;gap:16px;grid-template-columns:200px 1fr;padding:14px 0}.pac-field-row--top{align-items:flex-start;padding-top:16px}.pac-field-label{color:#333;font-size:14px;font-weight:500}.pac-field-inputs{display:flex;flex-direction:column;gap:6px}.pac-input{background:#fafbfc;border:1.5px solid #dde1e7;border-radius:8px;box-sizing:border-box;color:#1a1a2e;font-size:14px;outline:none;padding:10px 14px;transition:border-color .2s;width:100%}.pac-input:focus{background:#fff;border-color:#1abc9c}.pac-textarea{font-family:inherit;min-height:80px;resize:vertical}.pac-field-email{gap:4px}.pac-email-value{color:#333;font-size:14px;font-weight:500}.pac-email-verified{color:#16a085;font-size:12px;font-weight:500}.pac-divider{background:#f0f0f0;height:1px}.pac-actions{border-top:1px solid #f0f0f0;gap:12px;margin-top:32px;padding-top:24px}.pac-actions,.pac-btn-save{align-items:center;display:flex}.pac-btn-save{background:#1abc9c;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:700;gap:8px;padding:11px 28px;transition:background .2s}.pac-btn-save:hover:not(:disabled){background:#16a085}.pac-btn-save:disabled{cursor:not-allowed;opacity:.6}.pac-btn-cancel{background:none;border:none;color:#666;cursor:pointer;font-size:14px;font-weight:500;padding:11px 12px;transition:color .2s}.pac-btn-cancel:hover{color:#333}@media (max-width:768px){.pac-body{flex-direction:column;gap:16px;padding:16px 12px 48px}.pac-sidebar{display:flex;flex-wrap:wrap;gap:4px;width:100%}.pac-sidebar-section{flex-direction:row;flex-wrap:wrap}.pac-sidebar-label{width:100%}.pac-sidebar-divider{margin:4px 0;width:100%}.pac-form{padding:20px 16px 24px}.pac-field-row{gap:6px;grid-template-columns:1fr}}.appointments{background:#0000;margin-top:0;min-height:0;padding:0}.appointments__header{margin-bottom:40px;text-align:center}.appointments__header h1{color:#1abc9c;font-size:2.5rem;margin-bottom:10px;text-shadow:2px 2px 4px #0000001a}.appointments__header p{color:#555;font-size:1.1rem}.appointments__container{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;margin:0 auto;max-width:900px;overflow:hidden}.appointments__tabs{border-bottom:2px solid #e0e0e0;display:flex}.appointments__tab{background:none;border:none;border-bottom:3px solid #0000;color:#999;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;margin-bottom:-2px;padding:20px;transition:all .3s ease}.appointments__tab:hover{background:#f9f9f9;color:#1abc9c}.appointments__tab.active{border-bottom-color:#1abc9c;color:#1abc9c}.appointments__content{padding:30px}.no-appointments{color:#bbb;font-size:1.1rem;padding:60px 20px;text-align:center}.appointments__list{display:flex;flex-direction:column;gap:20px}.appointment-card{background:#f9f9f9;border-left:5px solid #1abc9c;padding:20px}.appointment-card:hover{background:#fff;box-shadow:0 4px 12px #1abc9c33}.appointment-card__header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:15px}.appointment-card__header h3{color:#1abc9c;font-size:1.2rem;margin:0}.appointment-card__status{border-radius:20px;font-size:.85rem;font-weight:600;padding:6px 12px;text-transform:capitalize}.appointment-card__details{line-height:1.8;margin-bottom:15px}.appointment-card__details p{color:#555;margin:8px 0}.meeting-link{align-items:center;display:flex;gap:10px}.btn-link{border:1px solid #1abc9c;border-radius:4px;color:#1abc9c;display:inline-block;font-weight:600;margin-left:auto;padding:6px 12px;text-decoration:none;transition:all .3s ease}.btn-link:hover{background:#1abc9c;color:#fff}.appointment-card__actions{display:flex;flex-wrap:wrap;gap:10px}.btn{padding:10px 20px}.btn-success:hover{box-shadow:0 4px 8px #4caf504d;transform:translateY(-2px)}.btn-danger:hover{box-shadow:0 4px 8px #f443364d;transform:translateY(-2px)}.btn-secondary{background:#9c27b0}.btn-secondary:hover{background:#7b1fa2;box-shadow:0 4px 8px #9c27b04d}@media (max-width:600px){.appointments{padding:20px 10px}.appointments__header h1{font-size:1.8rem}.appointments__content{padding:20px}.appointment-card__header{align-items:flex-start;flex-direction:column;gap:10px}.appointment-card__actions{flex-direction:column}.btn{width:100%}.btn,.btn-link{text-align:center}.btn-link{display:block}}.auth-form__container{align-items:center;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);display:flex;justify-content:center;min-height:calc(100vh - 70px);padding:20px}.auth-form__card{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000001a;max-width:400px;padding:40px;width:100%}.auth-form__card h2{color:#1abc9c;font-size:28px;margin-bottom:30px;text-align:center}.form-group{margin-bottom:20px}.form-label{color:#333;display:block;margin-bottom:8px}.form-input{border:2px solid #e0e0e0;border-radius:8px;transition:border-color .3s ease;width:100%}.form-input:focus{border-color:#1abc9c;box-shadow:0 0 0 3px #1abc9c1a}.form-input::placeholder{color:#999}.radio-group{display:flex;gap:20px;margin:10px 0}.radio-label{align-items:center;color:#333;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px}.radio-label input[type=radio]{accent-color:#1abc9c;cursor:pointer;height:18px;width:18px}.form-row{grid-gap:15px;gap:15px}.error-message{background:#fee;border-radius:8px;color:#c33;font-size:14px;margin-bottom:20px;padding:12px}.field-error{display:block;margin-top:4px}.btn-submit{background:linear-gradient(135deg,#1abc9c,#16a085);border-radius:8px;font-weight:600;margin-top:10px;padding:14px;transition:all .3s ease}.btn-submit:hover:not(:disabled){box-shadow:0 8px 16px #1abc9c4d;transform:translateY(-2px)}.btn-submit:disabled{opacity:.6}.google-login-section{margin-top:20px}.google-divider{align-items:center;color:#aaa;display:flex;font-size:13px;margin-bottom:16px;text-align:center}.google-divider:after,.google-divider:before{border-bottom:1px solid #e0e0e0;content:"";flex:1 1}.google-divider span{padding:0 10px}.google-btn-wrapper{display:flex;justify-content:center}.auth-footer{color:#666;font-size:14px;margin-top:20px;text-align:center}.auth-footer p{margin:0}.auth-footer a{color:#1abc9c;font-weight:600;text-decoration:none}.auth-footer a:hover{text-decoration:underline}@media (max-width:480px){.auth-form__card{padding:25px}.auth-form__card h2{font-size:22px;margin-bottom:25px}.form-row{grid-template-columns:1fr}.radio-group{flex-direction:column;gap:12px}}.select-user-type{align-items:center;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);display:flex;justify-content:center;margin-top:60px;min-height:100vh;padding:60px 20px}.select-user-type__container{max-width:1000px;width:100%}.select-user-type__header{margin-bottom:60px;text-align:center}.select-user-type__header h1{color:#333;font-size:2.5rem;font-weight:700;margin:0}.user-types-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:40px}.user-type-card{background:#fff;border:2px solid #e0e0e0;border-radius:12px;color:inherit;cursor:pointer;padding:40px 30px;text-align:center;text-decoration:none;transition:all .3s ease}.user-type-card:hover{border-color:#1abc9c;box-shadow:0 8px 24px #1abc9c33;transform:translateY(-8px)}.user-type-card__icon{display:block;font-size:4rem;margin-bottom:20px}.user-type-card__title{color:#1abc9c;font-size:1.3rem;font-weight:700;margin:0 0 15px}.user-type-card__description{color:#666;font-size:.95rem;line-height:1.6;margin:0}.select-user-type__footer{border-top:1px solid #e0e0e0;color:#666;font-size:.95rem;padding-top:30px;text-align:center}.login-link{color:#1abc9c;font-weight:600;text-decoration:none;transition:color .3s ease}.login-link:hover{color:#16a085;text-decoration:underline}@media (max-width:768px){.select-user-type{margin-top:0;padding:40px 15px}.select-user-type__header h1{font-size:1.8rem}.user-types-grid{gap:20px;grid-template-columns:1fr;margin-bottom:30px}.user-type-card{padding:30px 20px}.user-type-card__icon{font-size:3rem;margin-bottom:15px}.user-type-card__title{font-size:1.1rem}}.register{align-items:center;background:linear-gradient(135deg,#1abc9c,#16a085);display:flex;justify-content:center;margin-top:60px;min-height:100vh;padding:20px}.register__container{max-width:400px;width:100%}.register__card{animation:slideUp .5s ease;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;padding:40px}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.register__title{color:#1abc9c;font-size:2rem;font-weight:700;margin-bottom:10px;text-align:center}.register__subtitle{color:#666;font-size:.95rem;margin-bottom:30px;text-align:center}.register__error{background:#fee;border-left:4px solid #c33;border-radius:6px;color:#c33;font-size:.9rem;margin-bottom:20px;padding:12px}@media (max-width:480px){.register__card{padding:30px 20px}.register__title{font-size:1.5rem}}.loc-ac{position:relative;width:100%}.loc-ac__input-wrap{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:8px;display:flex;padding:0 10px;transition:border-color .2s,box-shadow .2s}.loc-ac__input-wrap:focus-within{border-color:#667eea;box-shadow:0 0 0 3px #667eea26}.loc-ac--error .loc-ac__input-wrap{border-color:#e53e3e}.loc-ac__icon{color:#9ca3af;flex-shrink:0;font-size:18px!important;margin-right:6px}.loc-ac__input{background:#0000;border:none;color:#1a202c;flex:1 1;font-size:14px;outline:none;padding:10px 0}.loc-ac__input::placeholder{color:#9ca3af}.loc-ac__spinner{animation:loc-spin .7s linear infinite;border:2px solid #e2e8f0;border-radius:50%;border-top-color:#667eea;flex-shrink:0;height:16px;width:16px}@keyframes loc-spin{to{transform:rotate(1turn)}}.loc-ac__clear{background:none;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;flex-shrink:0;font-size:13px;padding:2px 4px;transition:color .15s}.loc-ac__clear:hover{color:#4a5568}.loc-ac__dropdown{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 8px 24px #0000001f;left:0;list-style:none;margin:0;max-height:280px;overflow-y:auto;padding:4px 0;position:absolute;right:0;top:calc(100% + 4px);z-index:1000}.loc-ac__option{align-items:flex-start;cursor:pointer;display:flex;gap:8px;padding:10px 12px;transition:background .15s}.loc-ac__option:hover{background:#f7f8ff}.loc-ac__option-icon{color:#667eea;flex-shrink:0;font-size:16px!important;margin-top:2px}.loc-ac__option-text{display:flex;flex-direction:column;gap:2px;min-width:0}.loc-ac__option-main{color:#1a202c;font-size:14px;font-weight:500}.loc-ac__option-main,.loc-ac__option-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.loc-ac__option-sub{color:#718096;font-size:12px}.loc-ac__no-results{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 12px #00000014;color:#718096;font-size:13px;left:0;padding:12px 14px;position:absolute;right:0;top:calc(100% + 4px);z-index:1000}.doctor-register-form{display:flex;flex-direction:column;gap:0}.form-section{border-bottom:1px solid #e5e5e5;padding:24px 0}.form-section:last-child{border-bottom:none}.form-section h3{color:#2c3e50;font-size:16px;font-weight:700;margin-bottom:20px}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.form-group{gap:8px}.form-label{color:#2c3e50;font-size:14px;font-weight:600}.form-input{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;padding:12px 14px;transition:border-color .2s,box-shadow .2s}.form-input:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.form-input.error{background-color:#fadbd8;border-color:#e74c3c}.form-input.error:focus{box-shadow:0 0 0 3px #e74c3c1a}.form-select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;cursor:pointer;padding-right:40px}.form-hint{color:#7f8c8d;font-size:12px;margin-top:6px}.field-error{color:#e74c3c;font-size:12px;font-weight:500}.phone-input-container{grid-gap:8px;align-items:center;display:grid;gap:8px;grid-template-columns:80px 1fr}.phone-code{background-color:#f8f9fa;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:13px;padding:12px 8px}.phone-code:focus{border-color:#3498db;outline:none}.form-group.checkbox{align-items:flex-start;flex-direction:row;gap:10px}.form-group.checkbox input[type=checkbox]{accent-color:#3498db;border:1px solid #ddd;border-radius:4px;cursor:pointer;height:20px;margin-top:4px;width:20px}.checkbox-label{color:#555;cursor:pointer;font-size:13px;line-height:1.5}.checkbox-label a{color:#3498db;font-weight:500;text-decoration:none}.checkbox-label a:hover{text-decoration:underline}.btn-submit{background-color:#16a085;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;margin-top:28px;padding:14px 24px;transition:background-color .3s;width:100%}.btn-submit:hover:not(:disabled){background-color:#138a76}.btn-submit:disabled{background-color:#bdc3c7;cursor:not-allowed}@media (max-width:768px){.form-row{grid-template-columns:1fr}.phone-input-container{grid-template-columns:70px 1fr}.form-section{padding:16px 0}.form-section h3{font-size:15px}.form-input{font-size:16px}}.doctor-profile-preview{background:#f8f9fa;border-radius:8px;height:-webkit-fit-content;height:fit-content;padding:24px;position:-webkit-sticky;position:sticky;top:100px}.preview-header{align-items:center;display:flex;gap:12px;margin-bottom:20px}.preview-logo{font-size:24px}.preview-search{background-color:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;flex:1 1;font-size:13px;padding:10px 14px}.preview-search:focus{border-color:#3498db;outline:none}.preview-card{background:#fff;border:2px solid #16a085;border-radius:8px;display:flex;flex-direction:column;gap:16px;padding:20px}.avatar-placeholder,.preview-card__avatar{display:flex;justify-content:center}.avatar-placeholder{align-items:center;background:linear-gradient(135deg,#3498db,#2980b9);border-radius:50%;color:#fff;font-size:36px;font-weight:700;height:80px;width:80px}.avatar-placeholder.empty{background:#bdc3c7;font-size:40px}.preview-card__content{display:flex;flex-direction:column;gap:12px}.preview-name-section{text-align:center}.preview-name{color:#2c3e50;font-size:18px;font-weight:700;margin:0 0 4px}.preview-specialty{color:#7f8c8d;font-size:13px;margin:0 0 8px}.preview-rating{display:flex;gap:4px;justify-content:center}.star{font-size:14px;opacity:.8}.preview-info-section{border-top:1px solid #ecf0f1;display:flex;flex-direction:column;gap:8px;padding:12px 0}.info-item{align-items:center;display:flex;font-size:12px;gap:8px}.info-icon{font-size:14px;min-width:16px}.info-text{color:#555;line-height:1.4}.preview-bio{border-top:1px solid #ecf0f1;color:#7f8c8d;font-size:12px;line-height:1.6;margin:8px 0 0;padding:12px 0}.preview-btn{background-color:#16a085;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;margin-top:4px;padding:10px 16px;transition:background-color .2s}.preview-btn:hover{background-color:#138a76}.preview-footer{border-top:1px solid #e5e5e5;margin-top:16px;padding-top:12px;text-align:center}.preview-footer-text{color:#95a5a6;font-size:12px;margin:0}@media (max-width:1024px){.doctor-profile-preview{margin-top:24px;position:static}}@media (max-width:768px){.doctor-profile-preview{background:#0000;border-radius:0;padding:0}.preview-card{border:none;box-shadow:0 2px 8px #0000001a}}.doctor-register{background-color:#f8f9fa;margin-top:70px;min-height:calc(100vh - 70px);padding:40px 20px}.doctor-register__container{margin:0 auto;max-width:1400px}.doctor-register__header{background:linear-gradient(135deg,#2c3e50,#34495e);border-radius:8px;color:#fff;margin-bottom:40px;padding:40px;text-align:center}.doctor-register__header h1{font-size:32px;font-weight:700;line-height:1.3;margin:0 0 16px}.doctor-register__header p{color:#ecf0f1;font-size:16px;line-height:1.6;margin:0 auto;max-width:800px}.doctor-register__error{background-color:#fadbd8;border:1px solid #e74c3c;border-radius:6px;font-size:14px;justify-content:space-between;margin-bottom:24px;padding:16px 20px}.doctor-register__error,.error-close{align-items:center;color:#c0392b;display:flex}.error-close{background:none;border:none;cursor:pointer;font-size:24px;height:24px;justify-content:center;padding:0;width:24px}.error-close:hover{opacity:.8}.doctor-register__content{grid-gap:40px;display:grid;gap:40px;grid-template-columns:1fr 350px}.form-column{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d;padding:40px}@media (max-width:1200px){.doctor-register__content{gap:30px;grid-template-columns:1fr 300px}.form-column{padding:30px}}@media (max-width:1024px){.doctor-register__content{gap:0;grid-template-columns:1fr}.preview-column{margin-top:40px}}@media (max-width:768px){.doctor-register{padding:20px 16px}.doctor-register__container{max-width:100%}.doctor-register__header{margin-bottom:24px;padding:24px}.doctor-register__header h1{font-size:24px;margin-bottom:12px}.doctor-register__header p{font-size:14px}.form-column{border-radius:6px;padding:20px}}@media (max-width:480px){.doctor-register{padding:16px 12px}.doctor-register__header{margin-bottom:16px;padding:16px}.doctor-register__header h1{font-size:20px}.form-column{padding:16px}}.admin{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);margin-top:80px;min-height:100vh;padding:40px 20px}.admin__header{margin-bottom:40px;text-align:center}.admin__header h1{color:#1abc9c;font-size:2.5rem;margin-bottom:10px;text-shadow:2px 2px 4px #0000001a}.admin__header p{color:#555;font-size:1.1rem}.admin__container{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;margin:0 auto;max-width:1200px;overflow:hidden}.admin__tabs{border-bottom:2px solid #e0e0e0;display:flex;flex-wrap:wrap}.admin__tab{background:none;border:none;border-bottom:3px solid #0000;color:#999;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;margin-bottom:-2px;min-width:150px;padding:20px;transition:all .3s ease}.admin__tab:hover{background:#f9f9f9;color:#1abc9c}.admin__tab.active{border-bottom-color:#1abc9c;color:#1abc9c}.admin__content{padding:30px}.loading{color:#999;font-size:1.1rem;padding:60px 20px;text-align:center}.specialty-form{display:flex;gap:10px;margin-bottom:30px}.specialty-input{border:2px solid #e0e0e0;border-radius:6px;flex:1 1;font-size:.95rem;padding:12px;transition:all .3s ease}.specialty-input:focus{border-color:#1abc9c;box-shadow:0 0 0 3px #1abc9c1a;outline:none}.btn{border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-primary{background:#1abc9c}.btn-primary:hover{background:#16a085;box-shadow:0 4px 8px #1abc9c4d;transform:translateY(-2px)}.btn-success{background:#4caf50;color:#fff}.btn-success:hover{background:#45a049}.btn-danger{background:#f44336;color:#fff}.btn-danger:hover{background:#da190b}.btn-small{font-size:.8rem;margin-right:5px;padding:6px 12px}.specialties-list{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.specialty-item{background:#f9f9f9;border-left:4px solid #1abc9c;border-radius:6px;padding:15px;transition:all .3s ease}.specialty-item:hover{background:#fff;box-shadow:0 4px 8px #1abc9c33}.admin-table{border-collapse:collapse;margin-top:20px;width:100%}.admin-table thead{background:#f5f5f5;border-bottom:2px solid #e0e0e0}.admin-table th{color:#1abc9c;font-weight:600;padding:15px;text-align:left}.admin-table td{border-bottom:1px solid #e0e0e0;color:#555;padding:15px}.admin-table tbody tr:hover{background:#f9f9f9}.status{border-radius:4px;display:inline-block;font-size:.85rem;font-weight:600;padding:6px 12px}.status.verified{background:#e8f5e9;color:#4caf50}.status-pending,.status.pending{background:#fff9e6;color:#ff9800}.status-confirmed{background:#e8f5e9;color:#4caf50}.status-completed{background:#e3f2fd;color:#2196f3}.status-cancelled{background:#ffebee;color:#f44336}@media (max-width:768px){.admin{padding:20px 10px}.admin__header h1{font-size:1.8rem}.admin__content{padding:20px}.admin-table{font-size:.85rem}.admin-table td,.admin-table th{padding:10px}.btn-small{display:block;margin-bottom:5px;width:100%}.specialty-form{flex-direction:column}.specialty-input{width:100%}}.doctor-dashboard{-webkit-font-smoothing:antialiased;background-color:#f0f4f9;display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;height:100vh}.dashboard-sidebar{background:linear-gradient(180deg,#0f1b2d,#162032 60%,#1b2a44);box-shadow:4px 0 24px #00000038;color:#cbd5e1;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:width .3s cubic-bezier(.4,0,.2,1);width:272px;z-index:10}.dashboard-sidebar.closed{width:72px}.sidebar-header{border-bottom:1px solid #ffffff0f;justify-content:space-between;padding:22px 18px 18px}.logo,.sidebar-header{align-items:center;display:flex}.logo{color:#f1f5f9;flex:1 1;font-size:18px;font-weight:700;gap:10px;letter-spacing:-.3px;overflow:hidden}.dashboard-logo-icon{align-items:center;display:flex;filter:drop-shadow(0 0 6px rgba(14,165,233,.6));flex-shrink:0;font-size:26px;justify-content:center}.logo-text{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#f1f5f9,#0ea5e9);-webkit-background-clip:text;background-clip:text;overflow:hidden;white-space:nowrap}.sidebar-toggle{background:none;border:none;border-radius:6px;color:#94a3b8;cursor:pointer;flex-shrink:0;font-size:18px;padding:6px;transition:background-color .2s,color .2s}.sidebar-toggle:hover{background-color:#ffffff14;color:#f1f5f9}.sidebar-user{background:#0000001f;border-bottom:1px solid #ffffff0f;gap:12px;padding:18px}.sidebar-user,.user-avatar{align-items:center;display:flex}.user-avatar{background:linear-gradient(135deg,#0ea5e9,#0284c7);border-radius:12px;box-shadow:0 2px 8px #0ea5e959;flex-shrink:0;font-size:22px;height:44px;justify-content:center;width:44px}.user-info{flex:1 1;overflow:hidden}.user-name{color:#f1f5f9;font-size:13.5px;font-weight:600;margin:0}.user-name,.user-specialty{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-specialty{color:#64748b;font-size:11.5px;margin:3px 0 0}.sidebar-menu{flex:1 1;list-style:none;margin:0;overflow-x:hidden;overflow-y:auto;padding:12px 10px}.menu-item{align-items:center;background:none;border:none;border-left:3px solid #0000;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;font-size:13.5px;gap:12px;margin:2px 0;padding:11px 12px;position:relative;text-align:left;transition:background .18s ease,color .18s ease,border-color .18s ease;width:100%}.menu-item:hover{background-color:#0ea5e91a;border-left-color:#0ea5e966;color:#e2e8f0}.menu-item.active{background-color:#0ea5e92e;border-left-color:#0ea5e9;box-shadow:inset 0 0 0 1px #0ea5e926;color:#f1f5f9}.menu-item.active .menu-label{color:#f1f5f9}.menu-item.active .menu-description{color:#94a3b8}.dashboard-menu-icon{align-items:center;display:flex;flex-shrink:0;font-size:17px;justify-content:center;min-width:22px}.menu-text{display:flex;flex:1 1;flex-direction:column;gap:1px;min-width:0;overflow:hidden}.menu-label{font-weight:600}.menu-description,.menu-label{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-description{color:#475569;font-size:11px}.menu-badge{align-items:center;background-color:#f43f5e;border-radius:20px;color:#fff;display:flex;flex-shrink:0;font-size:10.5px;font-weight:700;height:20px;justify-content:center;min-width:20px;padding:0 6px}.sidebar-footer{border-top:1px solid #ffffff0f;padding:16px 10px}.logout-btn{align-items:center;background:#f43f5e14;border:1px solid #f43f5e33;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;font-size:13.5px;font-weight:600;gap:10px;padding:10px 12px;text-align:left;transition:background .2s,border-color .2s,color .2s;width:100%}.logout-btn:hover{background-color:#f43f5e2e;border-color:#f43f5e80;color:#fda4af}.dashboard-logout-icon{align-items:center;display:flex;flex-shrink:0;font-size:16px;justify-content:center}.dashboard-main{display:flex;flex:1 1;flex-direction:column;min-width:0;overflow:hidden}.dashboard-header{background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 4px #0000000f;flex-shrink:0;justify-content:space-between;padding:18px 32px}.dashboard-header,.header-left{align-items:center;display:flex}.header-left{gap:16px}.header-left h1{color:#0f172a;font-size:20px;font-weight:700;letter-spacing:-.4px;margin:0}.mobile-toggle{background:none;border:none;color:#0ea5e9;cursor:pointer;display:none;font-size:22px;padding:4px}.header-right{align-items:center;display:flex;gap:20px}.notification-bell{color:#64748b;cursor:pointer;font-size:20px;position:relative;transition:transform .2s}.notification-bell:hover{color:#0ea5e9;transform:scale(1.12)}.notification-count{align-items:center;background-color:#f43f5e;border:2px solid #fff;border-radius:50%;color:#fff;display:flex;font-size:10px;font-weight:700;height:18px;justify-content:center;position:absolute;right:-7px;top:-7px;width:18px}.header-user{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:20px;color:#475569;font-size:13.5px;font-weight:500;padding:6px 14px}.dashboard-content{background:#f0f4f9;flex:1 1;overflow-y:auto;padding:32px}.dashboard-content::-webkit-scrollbar,.sidebar-menu::-webkit-scrollbar{width:5px}.dashboard-content::-webkit-scrollbar-track,.sidebar-menu::-webkit-scrollbar-track{background:#0000}.dashboard-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.dashboard-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}.sidebar-menu::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:10px}.sidebar-menu::-webkit-scrollbar-thumb:hover{background:#ffffff38}@media (max-width:768px){.doctor-dashboard{flex-direction:column}.dashboard-sidebar{height:100%;position:fixed;transform:translateX(-100%);transition:transform .3s ease;width:100%!important;z-index:1000}.dashboard-sidebar.open{transform:translateX(0)}.dashboard-sidebar.closed{transform:translateX(-100%)}.dashboard-main{width:100%}.mobile-toggle{display:block}.dashboard-header{padding:14px 18px}.dashboard-content{padding:16px}.header-left h1{font-size:17px}.sidebar-header{padding:16px 14px}.sidebar-user{padding:14px}.menu-item{padding:11px 12px}}@media (max-width:480px){.dashboard-header{align-items:flex-start;flex-direction:column;gap:12px}.header-right{justify-content:space-between;width:100%}.header-left h1{font-size:15px}.dashboard-content{padding:10px}}.dashboard-overview{display:flex;flex-direction:column;gap:25px}.overview-header{margin-bottom:10px}.overview-header h2{color:#1a202c;font-size:28px;font-weight:700;margin:0 0 5px}.overview-date{color:#718096;font-size:14px;margin:0;text-transform:capitalize}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:10px}.stat-card{align-items:center;background:#fff;border:1px solid #0000;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;gap:15px;padding:20px;transition:all .3s ease}.stat-card:hover{box-shadow:0 8px 16px #0000001f;transform:translateY(-5px)}.stat-icon{font-size:32px;transition:transform .3s ease}.stat-card:hover .stat-icon{transform:scale(1.1)}.stat-content{flex:1 1}.stat-label{color:#718096;font-size:13px;font-weight:500;letter-spacing:.5px;margin:0;text-transform:uppercase}.stat-value{color:#1a202c;font-size:28px;font-weight:700;margin:5px 0 0}.stat-primary{border-left:4px solid #667eea}.stat-primary:hover{background:linear-gradient(135deg,#667eea15,#667eea05)}.stat-secondary{border-left:4px solid #764ba2}.stat-secondary:hover{background:linear-gradient(135deg,#764ba215,#764ba205)}.stat-tertiary{border-left:4px solid #f093fb}.stat-tertiary:hover{background:linear-gradient(135deg,#f093fb15,#f093fb05)}.stat-quaternary{border-left:4px solid #4facfe}.stat-quaternary:hover{background:linear-gradient(135deg,#4facfe15,#4facfe05)}.overview-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:25px}.overview-section h3{align-items:center;color:#1a202c;display:flex;font-size:18px;font-weight:700;gap:10px;margin:0 0 20px}.appointments-list{display:flex;flex-direction:column;gap:12px}.appointment-item{align-items:center;background:#f7fafc;border-left:3px solid #667eea;border-radius:8px;display:flex;gap:15px;padding:15px;transition:all .3s ease}.appointment-item:hover{background:#edf2f7;transform:translateX(5px)}.appointment-time{align-items:center;display:flex;gap:8px;min-width:80px}.appointment-icon{font-size:18px}.appointment-hour{color:#667eea;font-size:14px;font-weight:600}.appointment-details{flex:1 1}.appointment-patient{color:#1a202c;font-size:15px;font-weight:600;margin:0}.appointment-type{color:#718096;font-size:12px;margin:3px 0 0}.appointment-action{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:8px 16px;transition:all .3s ease}.appointment-action:hover{box-shadow:0 4px 12px #667eea66;transform:scale(1.05)}.empty-state{color:#a0aec0;margin:0;padding:30px 20px;text-align:center}.overview-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.activity-list{display:flex;flex-direction:column;gap:15px}.activity-item{background:#f7fafc;border-radius:8px;display:flex;gap:12px;padding:12px;transition:all .3s ease}.activity-item:hover{background:#edf2f7;transform:translateX(5px)}.activity-icon{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:16px;height:36px;justify-content:center;width:36px}.activity-title{color:#1a202c;font-size:14px;font-weight:600;margin:0}.activity-description{color:#718096;font-size:13px;margin:3px 0 0}.activity-time{color:#a0aec0;font-size:12px;margin:3px 0 0}.reminders-list{display:flex;flex-direction:column;gap:12px}.reminder-item{border-left:3px solid;border-radius:8px;display:flex;gap:12px;padding:12px;transition:all .3s ease}.reminder-item:hover{transform:translateX(5px)}.reminder-icon{flex-shrink:0;font-size:18px}.reminder-high{background:#fff5f5;border-left-color:#f56565}.reminder-high:hover{background:#fed7d7}.reminder-medium{background:#fffaf0;border-left-color:#ed8936}.reminder-medium:hover{background:#feebc8}.reminder-low{background:#f0fdf4;border-left-color:#48bb78}.reminder-low:hover{background:#dcfce7}.reminder-title{color:#1a202c;font-size:14px;font-weight:600;margin:0}.reminder-description{color:#718096;font-size:13px;margin:3px 0 0}.appointment-status{border-radius:12px;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 10px;text-transform:uppercase;white-space:nowrap}.status-pending{background:#fefcbf;color:#b7791f}.status-confirmed{background:#c6f6d5;color:#276749}.status-completed{background:#bee3f8;color:#2b6cb0}.status-cancelled{background:#fed7d7;color:#c53030}.quick-actions-section{margin-top:5px}.quick-actions{display:flex;flex-wrap:wrap;gap:12px}.quick-action-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .3s ease}.quick-action-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}@media (max-width:768px){.stats-grid{grid-template-columns:repeat(2,1fr)}.overview-header h2{font-size:22px}.overview-grid{grid-template-columns:1fr}.quick-actions{flex-direction:column}}@media (max-width:480px){.stats-grid{grid-template-columns:1fr}.appointment-item{flex-wrap:wrap}.stat-card{padding:15px}.stat-icon{font-size:24px}.stat-value{font-size:22px}}.doctor-calendar{grid-gap:25px;display:grid;gap:25px;grid-template-columns:1fr 350px}.calendar-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:25px}.calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:25px}.calendar-header h3{color:#1a202c;font-size:20px;font-weight:700;margin:0;min-width:200px;text-align:center}.nav-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;height:36px;transition:all .3s ease;width:36px}.nav-button:hover{box-shadow:0 4px 12px #667eea66;transform:scale(1.1)}.calendar-weekdays{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(7,1fr);margin-bottom:10px}.weekday{color:#667eea;font-size:13px;font-weight:600;padding:10px;text-align:center;text-transform:uppercase}.calendar-days{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(7,1fr)}.calendar-day{align-items:center;aspect-ratio:1/1;background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:4px;justify-content:center;padding:8px;position:relative;text-align:center;transition:all .3s ease}.calendar-day.empty{background:none;border:none;cursor:default}.calendar-day:not(.empty):hover{background:#edf2f7;border-color:#667eea;transform:translateY(-2px)}.calendar-day.today{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff;font-weight:700}.calendar-day.has-appointments{border-color:#4facfe;border-width:2px}.day-number{color:#1a202c;font-size:14px;font-weight:600}.calendar-day.today .day-number{color:#fff}.day-appointments{display:flex;gap:3px}.appointment-dot{background:#667eea;border-radius:50%;height:4px;width:4px}.calendar-day.today .appointment-dot{background:#fff}.calendar-legend{border-top:1px solid #e2e8f0;display:flex;gap:20px;margin-top:20px;padding-top:20px}.legend-item{align-items:center;color:#718096;display:flex;font-size:13px;gap:8px}.legend-dot{border-radius:50%;height:12px;width:12px}.today-dot{background:linear-gradient(135deg,#667eea,#764ba2)}.appointments-sidebar{display:flex;flex-direction:column;gap:20px}.sidebar-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px}.sidebar-section h4{color:#1a202c;font-size:15px;font-weight:700;letter-spacing:.5px;margin:0 0 15px;text-transform:uppercase}.appointments-today{display:flex;flex-direction:column;gap:12px}.appointment-card{background:linear-gradient(135deg,#667eea15,#764ba215);border-left:3px solid #667eea;border-radius:8px;padding:12px;transition:all .3s ease}.appointment-card:hover{box-shadow:0 4px 12px #667eea26;transform:translateX(5px)}.appointment-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.appointment-time{color:#667eea;font-size:14px;font-weight:700}.appointment-badge{background:#667eea;border-radius:4px;font-size:10px;padding:3px 8px;text-transform:uppercase}.appointment-body{display:flex;flex-direction:column;gap:8px}.appointment-patient-name{color:#1a202c;font-size:13px;font-weight:600;margin:0}.btn-appointment-action{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:8px 12px;transition:all .3s ease}.btn-appointment-action:hover{background:#764ba2;transform:scale(1.05)}.empty-appointments{color:#a0aec0;font-size:13px;margin:20px 0;text-align:center}.upcoming-appointments{display:flex;flex-direction:column;gap:10px}.upcoming-item{align-items:center;background:#f7fafc;border-radius:6px;display:flex;font-size:12px;justify-content:space-between;padding:10px;transition:all .3s ease}.upcoming-item:hover{background:#edf2f7;transform:translateX(3px)}.upcoming-date{background:#667eea;border-radius:4px;color:#fff;font-weight:600;padding:2px 6px}.upcoming-time{color:#667eea;font-weight:600}.upcoming-patient{color:#718096;flex:1 1;margin:0 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-new-appointment{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:700;padding:12px;transition:all .3s ease}.btn-new-appointment:hover{box-shadow:0 8px 16px #667eea66;transform:translateY(-2px)}@media (max-width:1024px){.doctor-calendar{grid-template-columns:1fr}.appointments-sidebar{display:grid;grid-template-columns:repeat(2,1fr)}.btn-new-appointment{grid-column:1/-1}}@media (max-width:768px){.calendar-container{padding:15px}.calendar-day{gap:2px}.day-number{font-size:12px}.appointments-sidebar{grid-template-columns:1fr}}@media (max-width:480px){.calendar-header{flex-direction:column;gap:10px}.calendar-header h3{min-width:auto}.calendar-days,.calendar-weekdays{gap:5px}.calendar-day{padding:4px}.weekday{font-size:11px;padding:5px}}.calendar-day.selected,.calendar-day:not(.empty){cursor:pointer}.appointment-reason{font-style:italic}.appointment-badge{border-radius:10px;color:#fff;font-size:11px;font-weight:600;padding:2px 8px}.calendar-day.selected{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff}.calendar-day.selected .day-number{color:#fff}.appointment-reason{color:#718096;font-size:12px;margin:4px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appointment-type-badge{background:#edf2f7;border-radius:10px;color:#4a5568;display:inline-block;font-size:10px;font-weight:600;margin-top:4px;padding:2px 8px;text-transform:capitalize}.appointment-actions{border-top:1px solid #f0f0f0;display:flex;gap:6px;margin-top:8px;padding-top:8px}.action-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:12px;font-weight:600;gap:4px;padding:5px 10px;transition:all .2s}.action-btn:disabled{cursor:not-allowed;opacity:.6}.action-btn.confirm{background:#c6f6d5;color:#22543d}.action-btn.confirm:hover:not(:disabled){background:#48bb78;color:#fff}.action-btn.complete{background:#e9d8fd;color:#44337a}.action-btn.complete:hover:not(:disabled){background:#667eea;color:#fff}.action-btn.cancel{background:#fed7d7;color:#742a2a}.action-btn.cancel:hover:not(:disabled){background:#f56565;color:#fff}.upcoming-status-dot{border-radius:50%;flex-shrink:0;height:8px;margin-left:auto;width:8px}.calendar-toast{animation:slideInToast .3s ease;background:#1a202c;border-radius:8px;bottom:24px;box-shadow:0 4px 16px #0003;color:#fff;font-size:14px;font-weight:500;padding:12px 20px;position:fixed;right:24px;z-index:9999}@keyframes slideInToast{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-overlay{align-items:center;background:#0000008c;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:9000}.modal-card{animation:modalIn .25s ease;background:#fff;border-radius:16px;box-shadow:0 20px 60px #00000040;max-width:520px;padding:28px;width:100%}@keyframes modalIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.modal-header h3{color:#1a202c;font-size:20px;font-weight:700;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:6px;color:#718096;cursor:pointer;display:flex;padding:4px;transition:background .2s}.modal-close:hover{background:#f0f0f0}.modal-form .form-group{margin-bottom:16px}.modal-form .form-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-bottom:16px}.modal-form label{color:#4a5568;display:block;font-size:13px;font-weight:600;margin-bottom:6px}.modal-form input,.modal-form select,.modal-form textarea{border:1.5px solid #e2e8f0;border-radius:8px;box-sizing:border-box;color:#2d3748;font-size:14px;padding:10px 12px;transition:border-color .2s;width:100%}.modal-form input:focus,.modal-form select:focus,.modal-form textarea:focus{border-color:#667eea;outline:none}.modal-form textarea{resize:vertical}.patient-search-wrapper{position:relative}.patient-search-wrapper .search-icon{color:#a0aec0;left:10px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.patient-search-wrapper input{padding-left:34px}.patient-dropdown{background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 16px #0000001a;left:0;list-style:none;margin:0;max-height:200px;overflow-y:auto;padding:4px;position:absolute;right:0;top:calc(100% + 4px);z-index:100}.patient-dropdown li{align-items:center;border-radius:6px;color:#2d3748;cursor:pointer;display:flex;font-size:13px;gap:8px;padding:8px 10px}.patient-dropdown li:hover{background:#f7fafc}.patient-dropdown .patient-email{color:#a0aec0;font-size:11px;margin-left:auto}.patient-dropdown .no-results{color:#a0aec0;cursor:default;font-size:13px}.selected-patient-info{background:#f0fff4;border-radius:6px;color:#22543d;font-size:12px;margin:6px 0 0;padding:4px 10px}.form-error{background:#fff5f5;border-radius:6px;color:#e53e3e;font-size:13px;margin:0 0 8px;padding:8px 12px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:4px}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 22px;transition:opacity .2s}.btn-primary:disabled{cursor:not-allowed;opacity:.7}.btn-primary:hover:not(:disabled){opacity:.9}.btn-secondary{background:#f7fafc;border:1.5px solid #e2e8f0;border-radius:8px;color:#4a5568;font-size:14px;padding:10px 22px;transition:background .2s}.btn-secondary:hover{background:#edf2f7}.doctor-messages{grid-gap:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:grid;gap:20px;grid-template-columns:320px 1fr;height:600px;overflow:hidden}.messages-list{background:#f7fafc;border-right:1px solid #e2e8f0;display:flex;flex-direction:column}.messages-header{border-bottom:1px solid #e2e8f0;padding:20px}.messages-header h3{color:#1a202c;font-size:16px;font-weight:700;margin:0 0 12px}.messages-search{background:#fff;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;padding:10px;transition:all .2s;width:100%}.messages-search:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.messages-conversations{flex:1 1;overflow-y:auto;padding:10px}.message-item{background:#fff;border-left:3px solid #0000;border-radius:8px;cursor:pointer;display:flex;gap:10px;margin-bottom:5px;padding:12px;transition:all .3s ease}.message-item:hover{background:#edf2f7;transform:translateX(3px)}.message-item.active{background:linear-gradient(135deg,#667eea15,#764ba215);border-left-color:#667eea;box-shadow:0 2px 8px #667eea26}.message-item.unread{font-weight:600}.message-avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;display:flex;flex-shrink:0;font-size:20px;height:40px;justify-content:center;width:40px}.message-info{flex:1 1;min-width:0}.message-patient{color:#1a202c;font-size:13px;font-weight:600;margin:0}.message-preview{color:#718096;font-size:12px;margin:4px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-meta{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:5px}.message-time{color:#a0aec0;font-size:11px}.unread-badge{background:#667eea;border-radius:50%;height:8px;width:8px}.messages-chat{background:#fff;display:flex;flex-direction:column;position:relative}.chat-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;padding:20px}.chat-header,.chat-header-info{align-items:center;display:flex}.chat-header-info{flex:1 1;gap:12px}.chat-avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;display:flex;font-size:20px;height:40px;justify-content:center;width:40px}.chat-header-info h3{color:#1a202c;font-size:15px;font-weight:700;margin:0}.chat-header-info p{color:#48bb78;font-size:12px;margin:3px 0 0}.chat-actions{display:flex;gap:10px}.chat-actions button{background:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;font-size:16px;padding:8px 12px;transition:all .2s}.chat-actions button:hover{background:#edf2f7;border-color:#667eea}.chat-messages{flex:1 1;gap:12px;overflow-y:auto;padding:20px}.chat-message,.chat-messages{display:flex;flex-direction:column}.chat-message{gap:4px;max-width:60%}.chat-message.received{align-self:flex-start;background:#f0f4f8;border-radius:12px;border-top-left-radius:4px;padding:12px 15px}.chat-message.sent{align-self:flex-end;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;border-bottom-right-radius:4px;color:#fff;padding:12px 15px}.chat-message p{word-wrap:break-word;font-size:14px;line-height:1.4;margin:0}.message-timestamp{font-size:11px;margin-top:4px;opacity:.7}.chat-message.received .message-timestamp{color:#a0aec0}.chat-message.sent .message-timestamp{color:#fffc}.chat-input-area{background:#fff;border-top:1px solid #e2e8f0;padding:15px 20px}.chat-form{display:flex;gap:10px}.chat-input{border:1px solid #e2e8f0;border-radius:6px;flex:1 1;font-size:14px;padding:10px 15px;transition:all .2s}.chat-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.chat-send-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s}.chat-send-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.empty-chat{align-items:center;color:#a0aec0;display:flex;flex-direction:column;height:100%;justify-content:center}.empty-icon{font-size:48px;margin-bottom:10px;opacity:.5}.empty-chat p{font-size:14px;margin:0}@media (max-width:1024px){.doctor-messages{grid-template-columns:1fr;height:auto;max-height:600px}.messages-list{border-bottom:1px solid #e2e8f0;border-right:none;max-height:200px}.messages-conversations{display:flex;gap:10px;overflow-x:auto;overflow-y:hidden;padding:10px 20px}.message-item{flex-shrink:0;width:250px}}@media (max-width:768px){.doctor-messages{height:500px}.chat-message{max-width:80%}.chat-header-info h3{font-size:14px}.chat-input{font-size:13px}}@media (max-width:480px){.doctor-messages{height:400px}.messages-list{max-height:150px}.messages-header{padding:10px}.messages-search{font-size:12px}.chat-message{max-width:90%}.chat-header,.chat-input-area,.chat-messages{padding:10px}.chat-message p{font-size:13px}}.patient-history{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 350px}.patients-list-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;padding:25px}.list-controls{display:flex;gap:12px;margin-bottom:20px}.filter-select,.search-input{border:1px solid #e2e8f0;border-radius:6px;font-size:14px;padding:10px 15px;transition:all .2s}.search-input{background:#fff;flex:1 1}.filter-select:focus,.search-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.filter-select{background:#fff;cursor:pointer;min-width:120px}.patients-table-wrapper{flex:1 1;overflow-x:auto}.patients-table{border-collapse:collapse;width:100%}.patients-table thead{background:#f7fafc;border-bottom:2px solid #e2e8f0}.patients-table th{color:#718096;font-size:13px;font-weight:700;letter-spacing:.5px;padding:12px 15px;text-align:left;text-transform:uppercase}.patients-table tbody tr{border-bottom:1px solid #e2e8f0;cursor:pointer;transition:all .3s ease}.patients-table tbody tr:hover{background:#f7fafc;transform:scale(1.01);transform-origin:left}.patient-row.selected{background:linear-gradient(135deg,#667eea15,#764ba215)}.patients-table td{color:#1a202c;font-size:14px;padding:15px}.patient-name{font-weight:600;gap:10px}.patient-initial,.patient-name{align-items:center;display:flex}.patient-initial{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;flex-shrink:0;font-size:13px;font-weight:700;height:32px;justify-content:center;width:32px}.status-badge{border-radius:20px;display:inline-block;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.status-activo{background:#c6f6d5;color:#22543d}.status-inactivo{background:#fed7d7;color:#742a2a}.btn-row-action{background:none;border:none;border-radius:4px;color:#667eea;cursor:pointer;font-size:12px;font-weight:600;margin-right:5px;padding:4px 8px;transition:all .2s}.btn-row-action:hover{background:#edf2f7;transform:scale(1.1)}.view-btn{color:#667eea}.edit-btn{color:#764ba2}.empty-state-table{color:#a0aec0;padding:40px 20px;text-align:center}.patient-detail{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;height:-webkit-fit-content;height:fit-content;padding:0;position:-webkit-sticky;position:sticky;top:20px}.detail-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:20px}.detail-header h3{color:#1a202c;font-size:16px;font-weight:700;margin:0}.close-btn{background:none;border:none;color:#a0aec0;cursor:pointer;font-size:20px;transition:all .2s}.close-btn:hover{color:#1a202c}.detail-content{max-height:500px;overflow-y:auto;padding:20px}.patient-header-info{border-bottom:1px solid #e2e8f0;display:flex;gap:15px;margin-bottom:20px;padding-bottom:20px}.patient-avatar{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;flex-shrink:0;height:60px;width:60px}.patient-main-info h4{color:#1a202c;font-size:15px;font-weight:700;margin:0 0 5px}.patient-main-info p{color:#718096;font-size:13px;margin:0}.detail-section{margin-bottom:20px}.detail-section h5{color:#667eea;font-size:13px;font-weight:700;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.info-row{align-items:center;border-bottom:1px solid #f0f4f8;display:flex;justify-content:space-between;padding:8px 0}.info-row label{color:#718096;font-size:12px;font-weight:600}.info-row p{color:#1a202c;font-size:13px;font-weight:500;margin:0}.appointments-history{display:flex;flex-direction:column;gap:8px}.history-item{align-items:center;background:#f7fafc;border-radius:6px;display:flex;font-size:12px;justify-content:space-between;padding:8px 10px}.history-date{color:#667eea;font-weight:600}.history-reason{color:#718096;flex:1 1;margin:0 10px;text-align:right}.detail-actions{border-top:1px solid #e2e8f0;display:flex;flex-direction:column;gap:8px;padding-top:15px}.btn-action{border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:600;padding:10px 12px;transition:all .3s ease;width:100%}.btn-action.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-action.primary:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.btn-action.secondary{background:#edf2f7;color:#667eea}.btn-action.secondary:hover{background:#dde5ef}.btn-action.danger{background:#fed7d7;color:#742a2a}.btn-action.danger:hover{background:#fc8181}@media (max-width:1024px){.patient-history{grid-template-columns:1fr}.patient-detail{max-height:none;position:static}}@media (max-width:768px){.list-controls{flex-direction:column}.filter-select,.search-input{width:100%}.patients-table td{font-size:12px;padding:10px 8px}.patients-table th{font-size:11px;padding:8px}.btn-row-action{font-size:10px;padding:2px 4px}.patient-name{font-size:13px}.patient-initial{font-size:11px;height:28px;width:28px}}@media (max-width:480px){.patients-table-wrapper{font-size:12px}.patients-table td,.patients-table th{padding:8px 5px}.patient-name{gap:5px}.patient-initial{height:24px;width:24px}.detail-content{max-height:400px}}.search-wrapper{flex:1 1;position:relative}.search-icon-inner{color:#a0aec0;font-size:18px!important;left:10px;position:absolute;top:50%;transform:translateY(-50%)}.search-wrapper .search-input{padding-left:36px;width:100%}.history-status{border-radius:8px;font-size:11px;font-weight:600;padding:2px 8px;text-transform:uppercase}.history-status.status-completed,span.status-completed{background:#bee3f8;color:#2b6cb0}.history-status.status-pending,span.status-pending{background:#fefcbf;color:#b7791f}.history-status.status-confirmed,span.status-confirmed{background:#c6f6d5;color:#276749}.history-status.status-cancelled,span.status-cancelled{background:#fed7d7;color:#c53030}.doctor-profile{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.profile-header{position:relative}.profile-cover{background:linear-gradient(135deg,#667eea,#764ba2);height:200px}.profile-info{align-items:flex-start;gap:25px;margin-top:-60px;padding:30px;z-index:10}.profile-avatar,.profile-info{display:flex;position:relative}.profile-avatar{align-items:center;background:#fff;border:4px solid #667eea;border-radius:50%;box-shadow:0 4px 12px #0000001a;flex-shrink:0;font-size:60px;height:120px;justify-content:center;overflow:hidden;width:120px}.profile-avatar.uploading .avatar-overlay,.profile-avatar:hover .avatar-overlay{opacity:1}.avatar-overlay{align-items:center;background:#00000073;border-radius:50%;display:flex;inset:0;justify-content:center;opacity:0;pointer-events:none;position:absolute;transition:opacity .2s ease}.profile-name-section{flex:1 1;padding-top:20px}.profile-name-section h2{color:#1a202c;font-size:28px;font-weight:700;margin:0 0 5px}.profile-specialty{color:#667eea;font-size:16px;font-weight:600;margin:0 0 5px}.profile-id{color:#718096;font-size:14px;margin:0}.btn-edit-profile{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:700;height:-webkit-fit-content;height:fit-content;padding:12px 24px;transition:all .3s ease}.btn-edit-profile:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.btn-edit-profile.editing{background:#f56565}.profile-content{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(2,1fr);padding:30px}.profile-section{grid-column:span 1}.profile-section:nth-child(3),.profile-section:nth-child(4){grid-column:span 2}.profile-section h3{border-bottom:2px solid #e2e8f0;color:#1a202c;font-size:18px;font-weight:700;margin:0 0 20px;padding-bottom:12px}.info-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr);margin-bottom:20px}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:span 2}.form-group label{color:#667eea;font-size:13px;font-weight:700;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.form-input,.form-textarea{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#1a202c;font-family:inherit;font-size:14px;padding:12px 15px;transition:all .2s}.form-input:disabled,.form-textarea:disabled{background:#f7fafc;color:#718096}.form-input:not(:disabled):focus,.form-textarea:not(:disabled):focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-textarea{min-height:80px;resize:vertical}.edit-actions{border-top:1px solid #e2e8f0;display:flex;gap:12px;margin-top:15px;padding-top:15px}.btn-cancel,.btn-save{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:12px;transition:all .3s ease}.btn-save{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff}.btn-save:hover{box-shadow:0 4px 12px #48bb7866;transform:translateY(-2px)}.btn-cancel{background:#fed7d7;color:#742a2a}.btn-cancel:hover{background:#fc8181}.education-item{background:#f7fafc;border-left:3px solid #667eea;border-radius:8px;margin-bottom:20px;padding:15px}.education-item h4{color:#1a202c;font-size:14px;font-weight:700;margin:0 0 8px}.education-item p{color:#718096;font-size:13px;margin:0}.certifications-list{display:flex;flex-direction:column;gap:15px}.certifications-list h4{color:#1a202c;font-size:14px;font-weight:700;margin:0}.certification-item{background:#f0fdf4;border-left:3px solid #48bb78;border-radius:8px;display:flex;gap:12px;padding:12px;transition:all .3s ease}.certification-item:hover{box-shadow:0 2px 8px #48bb7826;transform:translateX(5px)}.cert-icon{flex-shrink:0;font-size:20px}.cert-content{flex:1 1}.cert-title{color:#1a202c;font-size:13px;font-weight:600;margin:0 0 3px}.cert-year{color:#718096;font-size:12px;margin:0}.stats-grid.small-stats{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(4,1fr)}.stat-card.small-stat{background:linear-gradient(135deg,#667eea15,#764ba215);border:1px solid #667eea30;border-radius:8px;padding:15px;text-align:center;transition:all .3s ease}.stat-card.small-stat:hover{background:linear-gradient(135deg,#667eea25,#764ba225);transform:translateY(-5px)}.stat-card.small-stat .stat-value{color:#667eea;font-size:24px;font-weight:700;margin:0 0 5px}.stat-card.small-stat .stat-label{color:#718096;font-size:12px;font-weight:600;margin:0}.security-items{display:flex;flex-direction:column;gap:15px}.security-item{align-items:center;background:#f7fafc;border-left:3px solid #4facfe;border-radius:8px;display:flex;justify-content:space-between;padding:15px}.security-info{flex:1 1}.security-title{color:#1a202c;font-size:14px;font-weight:700;margin:0 0 4px}.security-description{color:#718096;font-size:12px;margin:0}.btn-secondary{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;margin-left:15px;padding:8px 16px;transition:all .3s ease;white-space:nowrap}.btn-secondary:hover{background:#764ba2;transform:translateY(-2px)}@media (max-width:1024px){.profile-content{grid-template-columns:1fr}.profile-section:nth-child(3),.profile-section:nth-child(4){grid-column:span 1}.stats-grid.small-stats{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.profile-info{align-items:center;flex-direction:column;gap:15px;margin-top:-50px;padding:20px;text-align:center}.profile-avatar{font-size:50px;height:100px;width:100px}.profile-name-section{padding-top:0}.profile-name-section h2{font-size:22px}.btn-edit-profile{width:100%}.info-grid{grid-template-columns:1fr}.form-group.full-width{grid-column:span 1}.stats-grid.small-stats{gap:10px;grid-template-columns:repeat(2,1fr)}.security-item{align-items:flex-start;flex-direction:column}.btn-secondary{margin-left:0;margin-top:10px;width:100%}}@media (max-width:480px){.profile-cover{height:120px}.profile-info{margin-top:-40px;padding:15px}.profile-avatar{font-size:40px;height:80px;width:80px}.profile-name-section h2{font-size:18px}.profile-content{gap:20px;padding:15px}.stats-grid.small-stats{grid-template-columns:repeat(2,1fr)}}.profile-verified{align-items:center;color:#276749;display:flex;font-size:13px;font-weight:500;gap:5px;margin:4px 0 0}.doctor-availability{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 300px}.availability-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:25px}.availability-section{margin-bottom:30px}.availability-section h3{color:#1a202c;font-size:18px;font-weight:700;margin:0 0 5px}.section-description{color:#718096;font-size:13px;margin:0 0 20px}.avail-type-tabs{border-bottom:2px solid #e2e8f0;display:flex;gap:8px;margin-bottom:20px;padding-bottom:0}.avail-type-tab{align-items:center;background:none;border:none;border-bottom:3px solid #0000;border-radius:0;color:#718096;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;margin-bottom:-2px;padding:9px 20px;transition:color .2s,border-color .2s}.avail-type-tab:hover{color:#16a085}.avail-type-tab.active{border-bottom-color:#16a085;color:#16a085}.schedule-grid-flex{display:flex;flex-direction:column;gap:12px}.schedule-day-card{background:#f7fafc;border:1px solid #e2e8f0;border-radius:10px;padding:14px 16px;transition:all .2s}.schedule-day-card.enabled{background:linear-gradient(135deg,#667eea08,#764ba208);border-color:#667eea}.schedule-day-card.disabled{opacity:.5}.schedule-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.schedule-item{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;padding:15px;transition:all .3s ease}.schedule-item.enabled{background:linear-gradient(135deg,#667eea15,#764ba215);border-color:#667eea}.schedule-item.disabled{opacity:.6}.schedule-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:10px}.schedule-day{color:#1a202c;font-size:14px;font-weight:700}.toggle-switch{height:24px;width:44px}.slider{border-radius:24px}.slider:before{height:18px;width:18px}input:checked+.slider:before{transform:translateX(20px)}.schedule-times{gap:10px}.schedule-times,.time-input-group{display:flex;flex-direction:column}.time-input-group{gap:4px}.time-input-group label{color:#667eea;font-size:12px;font-weight:600;text-transform:uppercase}.time-input-group input{background:#fff;border:1px solid #e2e8f0;border-radius:4px;color:#1a202c;font-size:13px;padding:8px 10px}.time-input-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.not-available{color:#a0aec0;font-size:12px;font-style:italic;margin:0}.special-days-list{margin-bottom:15px}.special-day-item{align-items:center;background:#f7fafc;border-left:3px solid;border-radius:6px;display:flex;justify-content:space-between;margin-bottom:10px;padding:12px;transition:all .3s ease}.special-day-item.status-no-disponible{background:#fff5f5;border-left-color:#f56565}.special-day-item.status-limitado{background:#fffaf0;border-left-color:#ed8936}.special-day-item:hover{transform:translateX(3px)}.special-day-info{flex:1 1}.special-date{color:#1a202c;font-size:13px;font-weight:700;margin:0}.special-reason{color:#718096;font-size:12px;margin:3px 0 0}.special-status{border-radius:4px;font-size:11px;font-weight:700;margin-left:10px;padding:4px 8px;text-transform:uppercase}.special-status.no-disponible{background:#fed7d7;color:#742a2a}.special-status.limitado{background:#feebc8;color:#7c2d12}.btn-add-special-day{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:10px 16px;transition:all .3s ease;width:100%}.btn-add-special-day:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.availability-actions{border-top:1px solid #e2e8f0;display:flex;gap:10px;padding-top:20px}.btn-reset-time,.btn-save-schedule,.btn-set-break{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:13px;font-weight:600;padding:12px;transition:all .3s ease}.btn-save-schedule{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff}.btn-save-schedule:hover{box-shadow:0 4px 12px #48bb7866;transform:translateY(-2px)}.btn-set-break{background:#edf2f7;color:#667eea}.btn-set-break:hover{background:#dde5ef}.btn-reset-time{background:#fed7d7;color:#742a2a}.btn-reset-time:hover{background:#fc8181}.availability-info{display:flex;flex-direction:column;gap:15px}.info-box{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:15px}.info-box h4{color:#1a202c;font-size:13px;font-weight:700;margin:0 0 10px}.info-box p{color:#718096;font-size:12px;line-height:1.4;margin:0}.duration-settings{display:flex;flex-direction:column;gap:8px}.duration-settings label{color:#667eea;font-size:12px;font-weight:600}.duration-select{background:#fff;border:1px solid #e2e8f0;border-radius:4px;color:#1a202c;cursor:pointer;font-size:13px;padding:8px 10px}.duration-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.summary-stats{display:flex;flex-direction:column;gap:8px}.summary-item{border-bottom:1px solid #e2e8f0;color:#718096;display:flex;font-size:12px;justify-content:space-between;padding:6px 0}.summary-item:last-child{border-bottom:none}.summary-item strong{color:#667eea;font-weight:700}.hour-quick-actions{align-items:center;display:flex;gap:6px;margin-bottom:8px}.hour-quick-btn{background:#edf2f7;border:1px solid #e2e8f0;border-radius:4px;color:#667eea;cursor:pointer;font-size:11px;font-weight:600;padding:3px 10px;transition:all .15s}.hour-quick-btn:hover{background:#667eea;border-color:#667eea;color:#fff}.hour-count{color:#16a085;font-size:11px;font-weight:700;margin-left:auto}.hour-grid{display:flex;flex-wrap:wrap;gap:5px}.hour-chip{background:#fff;border:1.5px solid #e2e8f0;border-radius:6px;color:#a0aec0;cursor:pointer;font-size:12px;font-weight:600;min-width:52px;padding:5px 10px;text-align:center;transition:all .15s}.hour-chip:hover{background:#ebf4ff;border-color:#667eea;color:#667eea}.hour-chip.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;box-shadow:0 2px 6px #667eea40;color:#fff}.hour-chip.active:hover{opacity:.85}@media (max-width:1024px){.doctor-availability{grid-template-columns:1fr}}@media (max-width:768px){.schedule-grid{grid-template-columns:repeat(2,1fr)}.availability-actions{flex-direction:column}.btn-reset-time,.btn-save-schedule,.btn-set-break{width:100%}}@media (max-width:480px){.schedule-grid{grid-template-columns:1fr}.schedule-header{align-items:flex-start;gap:10px}.availability-actions,.schedule-header{flex-direction:column}.info-box{padding:12px}}.alert{border-radius:8px;font-size:14px;font-weight:500;margin:10px 0;padding:12px 16px}.alert-success{background:#c6f6d5;border-left:4px solid #48bb78;color:#276749}.alert-error{background:#fed7d7;border-left:4px solid #f56565;color:#c53030}.dct-page{padding:8px 0}.dct-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.dct-title{align-items:center;color:#1a202c;display:flex;font-size:20px;font-weight:700;gap:8px;margin:0 0 4px}.dct-subtitle{color:#718096;font-size:13px;margin:0;max-width:500px}.dct-add-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:10px 20px;transition:all .15s;white-space:nowrap}.dct-add-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.dct-error{background:#fff5f5;border:1px solid #fc8181;border-radius:10px;color:#c53030;font-size:13px;margin-bottom:16px;padding:12px 16px}.dct-form-card{background:#fff;border:1.5px solid #667eea;border-radius:14px;box-shadow:0 4px 16px #667eea1f;margin-bottom:24px;padding:24px}.dct-form-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.dct-form-header h3{color:#2d3748;font-size:16px;font-weight:700;margin:0}.dct-form-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:20px}.dct-field{display:flex;flex-direction:column;gap:6px}.dct-field--full{grid-column:1/-1}.dct-field label{color:#2d3748;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.dct-optional{color:#718096;font-weight:400;text-transform:none}.dct-input{border:1.5px solid #e2e8f0;border-radius:8px;color:#2d3748;font-family:inherit;font-size:14px;padding:10px 12px;transition:border-color .15s}.dct-input:focus{border-color:#667eea;outline:none}.dct-textarea{border:1.5px solid #e2e8f0;border-radius:8px;color:#2d3748;font-family:inherit;font-size:14px;padding:10px 12px;resize:vertical;transition:border-color .15s}.dct-textarea:focus{border-color:#667eea;outline:none}.dct-form-actions{display:flex;gap:12px;justify-content:flex-end}.dct-cancel-btn{background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;color:#718096;cursor:pointer;font-size:14px;font-weight:600;padding:9px 20px}.dct-cancel-btn:hover{border-color:#cbd5e0;color:#4a5568}.dct-save-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:9px 20px}.dct-save-btn:disabled{cursor:not-allowed;opacity:.6}.dct-empty,.dct-loading{color:#718096;font-size:14px;padding:40px 20px;text-align:center}.dct-empty{align-items:center;display:flex;flex-direction:column;gap:12px}.dct-empty p{line-height:1.6;margin:0}.dct-list{display:flex;flex-direction:column;gap:10px}.dct-item{align-items:center;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;display:flex;gap:16px;justify-content:space-between;padding:16px 20px;transition:border-color .15s}.dct-item:hover{border-color:#667eea}.dct-item--inactive{opacity:.55}.dct-item-info{flex:1 1}.dct-item-name{color:#2d3748;font-size:15px;font-weight:600;margin-bottom:3px}.dct-item-desc{color:#718096;font-size:12px;margin-bottom:8px}.dct-item-meta{align-items:center;display:flex;gap:12px}.dct-price{color:#276749;font-size:14px;font-weight:700}.dct-duration{color:#718096;font-size:12px}.dct-status{background:#f0f0f0;border-radius:10px;color:#718096;font-size:11px;font-weight:700;letter-spacing:.04em;padding:2px 8px;text-transform:uppercase}.dct-status.active{background:#c6f6d5;color:#276749}.dct-item-actions{align-items:center;display:flex;gap:8px}.dct-toggle-btn{background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;color:#718096;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;white-space:nowrap}.dct-toggle-btn:hover{border-color:#667eea;color:#667eea}.dct-icon-btn{align-items:center;background:none;border:1.5px solid #e2e8f0;border-radius:8px;color:#718096;cursor:pointer;display:flex;padding:6px;transition:all .15s}.dct-icon-btn:hover{border-color:#667eea;color:#667eea}.dct-icon-btn--danger:hover{border-color:#fc8181;color:#e53e3e}@media (max-width:600px){.dct-form-grid{grid-template-columns:1fr}.dct-item{align-items:flex-start;flex-direction:column}.dct-item-actions{justify-content:flex-end;width:100%}}.blocked-dates-container{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 280px}.blocked-dates-main{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:25px}.blocked-dates-main h3{align-items:center;color:#1a202c;display:flex;font-size:18px;font-weight:700;gap:8px;margin:0 0 5px}.blocked-dates-desc{color:#718096;font-size:13px;margin:0 0 16px}.blocked-reason-input{align-items:center;display:flex;gap:10px;margin-bottom:16px}.blocked-reason-input label{color:#4a5568;font-size:13px;font-weight:600;white-space:nowrap}.blocked-reason-input input{border:1px solid #e2e8f0;border-radius:8px;flex:1 1;font-size:13px;outline:none;padding:8px 12px;transition:border-color .2s}.blocked-reason-input input:focus{border-color:#16a085}.blocked-cal-nav{align-items:center;display:flex;gap:16px;justify-content:center;margin-bottom:12px}.blocked-cal-title{color:#1a202c;font-size:16px;font-weight:700;min-width:180px;text-align:center}.blocked-nav-btn{align-items:center;background:none;border:1px solid #e2e8f0;border-radius:8px;color:#4a5568;cursor:pointer;display:flex;padding:4px;transition:all .2s}.blocked-nav-btn:hover:not(:disabled){background:#f7fafc;border-color:#16a085;color:#16a085}.blocked-month-toggle{background:#f7fafc;border:2px dashed #e2e8f0;border-radius:8px;color:#4a5568;cursor:pointer;display:block;font-size:13px;font-weight:600;margin-bottom:16px;padding:10px;transition:all .2s;width:100%}.blocked-month-toggle:hover:not(:disabled){background:#fff5f5;border-color:#e53e3e;color:#e53e3e}.blocked-month-toggle.active{background:#fed7d7;border-color:#e53e3e;color:#c53030}.blocked-calendar{margin-top:8px}.blocked-cal-headers{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px;text-align:center}.blocked-cal-hdr{color:#a0aec0;font-size:11px;font-weight:700;padding:4px 0;text-transform:uppercase}.blocked-cal-grid{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,1fr)}.blocked-cal-empty{aspect-ratio:1}.blocked-cal-day{align-items:center;aspect-ratio:1;background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;color:#2d3748;cursor:pointer;display:flex;font-size:13px;font-weight:600;justify-content:center;transition:all .15s}.blocked-cal-day:hover:not(:disabled){background:#fff5f5;border-color:#e53e3e}.blocked-cal-day.blocked{background:#fed7d7;border-color:#fc8181;color:#c53030}.blocked-cal-day.today{border-color:#16a085;box-shadow:0 0 0 2px #16a08533}.blocked-cal-day.past{cursor:default;opacity:.4}.blocked-cal-day:disabled{cursor:default}.blocked-dates-sidebar{display:flex;flex-direction:column;gap:16px}.blocked-list-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:16px}.blocked-list-section h4{align-items:center;color:#1a202c;display:flex;font-size:14px;font-weight:700;gap:6px;margin:0 0 10px}.blocked-empty{color:#a0aec0;font-size:12px;margin:0}.blocked-list{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.blocked-list li{align-items:center;background:#fff5f5;border-radius:6px;color:#c53030;display:flex;font-size:12px;font-weight:600;gap:6px;padding:6px 8px}.blocked-list li small{color:#a0aec0;flex:1 1;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.blocked-list li span{white-space:nowrap}.blocked-delete-btn{background:none;border:none;border-radius:4px;color:#a0aec0;cursor:pointer;display:flex;margin-left:auto;padding:2px;transition:all .15s}.blocked-delete-btn:hover{background:#fed7d7;color:#e53e3e}@media (max-width:768px){.blocked-dates-container{grid-template-columns:1fr}}.doctor-prescriptions{display:flex;flex-direction:column;gap:24px}.rx-page-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.rx-page-header h1{color:#0f172a;font-size:22px;font-weight:700;letter-spacing:-.4px;margin:0 0 4px}.rx-page-header p{color:#64748b;font-size:13.5px;margin:0}.rx-count-badge{align-self:center;background:linear-gradient(135deg,#0ea5e9,#0284c7);border-radius:20px;color:#fff;font-size:12px;font-weight:700;padding:6px 14px;white-space:nowrap}.rx-toolbar{display:flex;flex-wrap:wrap;gap:12px}.rx-search{background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;color:#0f172a;flex:1 1;font-size:13.5px;min-width:200px;outline:none;padding:10px 14px;transition:border-color .2s}.rx-search:focus{border-color:#0ea5e9}.rx-btn{align-items:center;border:none;border-radius:10px;cursor:pointer;display:inline-flex;font-size:13.5px;font-weight:600;gap:6px;padding:10px 18px;transition:all .2s;white-space:nowrap}.rx-btn--primary{background:linear-gradient(135deg,#0ea5e9,#0284c7);color:#fff}.rx-btn--primary:hover{box-shadow:0 4px 14px #0ea5e966;transform:translateY(-1px)}.rx-btn--primary:disabled{cursor:not-allowed;opacity:.65;transform:none}.rx-btn--outline{background:#fff;border:1.5px solid #0ea5e9;color:#0ea5e9}.rx-btn--outline:hover{background:#f0f9ff}.rx-btn--ghost{background:#0000;border:1.5px solid #e2e8f0;color:#64748b}.rx-btn--ghost:hover{background:#f8fafc}.rx-btn--danger{background:#fef2f2;border:1.5px solid #fecaca;color:#dc2626}.rx-btn--danger:hover{background:#fee2e2}.rx-btn--sm{font-size:12px;padding:7px 12px}.rx-empty{align-items:center;color:#94a3b8;display:flex;flex-direction:column;gap:12px;padding:60px 20px;text-align:center}.rx-empty-icon{font-size:48px}.rx-empty p{font-size:15px;margin:0}.rx-spinner{animation:spin .7s linear infinite;border:3px solid #e2e8f0;border-radius:50%;border-top-color:#0ea5e9;display:inline-block;height:28px;width:28px}@keyframes spin{to{transform:rotate(1turn)}}.rx-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.rx-card{background:#fff;border:1px solid #f1f5f9;border-radius:14px;box-shadow:0 1px 4px #0000000d;cursor:pointer;display:flex;flex-direction:column;gap:12px;padding:18px;transition:box-shadow .22s,transform .22s}.rx-card:hover{box-shadow:0 6px 20px #0ea5e924;transform:translateY(-2px)}.rx-card-top{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.rx-card-patient{gap:10px}.rx-avatar,.rx-card-patient{align-items:center;display:flex}.rx-avatar{background:linear-gradient(135deg,#0ea5e9,#0284c7);border-radius:50%;color:#fff;flex-shrink:0;font-size:16px;font-weight:700;height:38px;justify-content:center;width:38px}.rx-card-name{color:#0f172a;font-size:14px;font-weight:700;margin:0}.rx-card-date{color:#94a3b8;font-size:11.5px;margin:2px 0 0}.rx-card-diagnosis{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#475569;display:-webkit-box;font-size:13px;margin:0;overflow:hidden}.rx-card-footer{align-items:center;border-top:1px solid #f1f5f9;display:flex;justify-content:space-between;padding-top:10px}.rx-med-count{color:#64748b;font-size:12px;font-weight:500}.rx-card-actions{display:flex;gap:4px}.rx-icon-btn{background:none;border:none;border-radius:6px;cursor:pointer;font-size:15px;padding:5px 7px;transition:background .18s}.rx-icon-btn:hover{background:#f1f5f9}.rx-icon-btn--danger:hover{background:#fee2e2}.rx-status{border-radius:20px;display:inline-block;flex-shrink:0;font-size:10.5px;font-weight:700;letter-spacing:.4px;padding:3px 9px;text-transform:uppercase;white-space:nowrap}.rx-status--active{background:#dcfce7;color:#14532d}.rx-status--expired{background:#fef9c3;color:#713f12}.rx-status--cancelled{background:#fee2e2;color:#991b1b}.rx-detail-view,.rx-form-view{display:flex;flex-direction:column;gap:20px}.rx-form-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.rx-form-header h2{color:#0f172a;font-size:20px;font-weight:700;margin:0}.rx-back-btn{background:none;border:none;color:#64748b;cursor:pointer;font-size:14px;font-weight:600;padding:6px 0;transition:color .18s}.rx-back-btn:hover{color:#0ea5e9}.rx-detail-actions{display:flex;flex-wrap:wrap;gap:8px}.rx-error{background:#fff1f2;border:1px solid #fecdd3;border-radius:10px;color:#be123c;font-size:13.5px;padding:12px 16px}.rx-form{background:#fff;border:1px solid #f1f5f9;border-radius:16px;box-shadow:0 1px 4px #0000000d;display:flex;flex-direction:column;gap:20px;padding:28px}.rx-form-row{display:flex;flex-wrap:wrap;gap:16px}.rx-field{display:flex;flex-direction:column;gap:6px}.rx-field--grow{flex:1 1;min-width:180px}.rx-field label{color:#64748b;font-size:12.5px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.rx-field input,.rx-field select,.rx-field textarea{background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;color:#0f172a;font-family:inherit;font-size:13.5px;outline:none;padding:10px 12px;resize:vertical;transition:border-color .2s}.rx-field input:focus,.rx-field select:focus,.rx-field textarea:focus{border-color:#0ea5e9}.rx-section-title{align-items:center;border-bottom:2px solid #f1f5f9;color:#0f172a;display:flex;font-size:14px;font-weight:700;justify-content:space-between;padding-bottom:8px}.rx-med-table-wrap{border:1px solid #e2e8f0;border-radius:10px;overflow-x:auto}.rx-med-table{border-collapse:collapse;font-size:13px;width:100%}.rx-med-table th{background:#f8fafc;color:#64748b;font-size:11.5px;font-weight:600;letter-spacing:.4px;padding:10px 12px;text-align:left;text-transform:uppercase;white-space:nowrap}.rx-med-table td{border-top:1px solid #f1f5f9;padding:8px 6px;vertical-align:middle}.rx-med-table input{background:#fff;border:1.5px solid #e2e8f0;border-radius:6px;box-sizing:border-box;color:#0f172a;font-size:12.5px;min-width:80px;outline:none;padding:7px 9px;transition:border-color .18s;width:100%}.rx-med-table input:focus{border-color:#0ea5e9}.rx-remove-med{background:none;border:none;border-radius:6px;color:#94a3b8;cursor:pointer;font-size:14px;padding:5px 8px;transition:background .18s,color .18s}.rx-remove-med:hover{background:#fee2e2;color:#dc2626}.rx-form-actions{border-top:1px solid #f1f5f9;display:flex;gap:10px;justify-content:flex-end;padding-top:8px}.rx-paper{background:#fff;border:1px solid #f1f5f9;border-radius:16px;box-shadow:0 2px 12px #00000012;display:flex;flex-direction:column;gap:22px;max-width:760px;padding:36px}.rx-paper-header{align-items:flex-start;border-bottom:3px solid #0ea5e9;display:flex;gap:20px;justify-content:space-between;padding-bottom:20px}.rx-paper-clinic{color:#0ea5e9;font-size:22px;font-weight:800;letter-spacing:-.5px;margin:0 0 4px}.rx-paper-doctor{color:#0f172a;font-size:15px;font-weight:700;margin:0}.rx-paper-lic,.rx-paper-spec{color:#64748b;font-size:12.5px;margin:2px 0 0}.rx-paper-meta{align-items:flex-end;color:#475569;display:flex;flex-direction:column;font-size:13px;gap:3px;text-align:right}.rx-paper-meta p{margin:0}.rx-paper-patient{background:#f0f9ff;border:1px solid #bae6fd;border-radius:10px;color:#0f172a;font-size:14px;padding:14px 18px}.rx-paper-patient label{color:#64748b;margin-right:8px}.rx-paper-diagnosis{background:#f8fafc;border-left:4px solid #0ea5e9;border-radius:0 8px 8px 0;padding:12px 16px}.rx-paper-diagnosis label{color:#64748b;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.rx-paper-diagnosis p{color:#0f172a;font-size:14px;margin:6px 0 0}.rx-paper-rx-symbol{color:#0ea5e9;font-size:34px;font-weight:800;line-height:1}.rx-paper-meds{border:1px solid #e2e8f0;border-collapse:collapse;border-radius:10px;font-size:13px;overflow:hidden;width:100%}.rx-paper-meds th{background:#0ea5e9;color:#fff;font-size:12px;font-weight:600;letter-spacing:.3px;padding:10px 12px;text-align:left}.rx-paper-meds td{border-bottom:1px solid #f1f5f9;color:#1e293b;padding:10px 12px;vertical-align:top}.rx-paper-meds tr:last-child td{border-bottom:none}.rx-paper-meds tr:nth-child(2n) td{background:#f8fafc}.rx-paper-notes{background:#fffbeb;border:1px solid #fde68a;border-radius:10px;font-size:13.5px;padding:14px 16px}.rx-paper-notes label{color:#92400e;font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.rx-paper-notes p{color:#78350f;margin:6px 0 0}.rx-paper-footer{border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;padding-top:20px}.rx-sign-block{align-items:center;color:#64748b;display:flex;flex-direction:column;font-size:12px;gap:6px}.rx-sign-line{border-bottom:1.5px solid #0f172a;width:180px}.rx-verify-badge{align-items:flex-start;background:#f0fdf4;border:1.5px solid #86efac;border-radius:10px;display:flex;gap:12px;margin-top:20px;padding:14px 18px}.rx-verify-icon{flex-shrink:0;font-size:22px}.rx-verify-label{color:#166534;font-size:13px;font-weight:600;margin:0 0 4px}.rx-verify-link{color:#0ea5e9;font-size:11px;text-decoration:none;word-break:break-all}.rx-verify-link:hover{text-decoration:underline}.rx-verify-hash{color:#94a3b8;font-family:monospace;font-size:10px;margin:4px 0 0}@media (max-width:640px){.rx-cards{grid-template-columns:1fr}.rx-form{padding:18px}.rx-paper{padding:20px}.rx-paper-header{flex-direction:column}.rx-paper-meta{align-items:flex-start;text-align:left}.rx-form-actions{flex-direction:column-reverse}}.reports{display:flex;flex-direction:column;gap:25px}.reports-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;justify-content:space-between;padding:25px}.reports-header h2{color:#1a202c;font-size:24px;font-weight:700;margin:0}.report-filters{display:flex;gap:12px}.report-filters select{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#1a202c;cursor:pointer;font-size:14px;padding:10px 15px}.report-filters select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.btn-export{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:10px 20px;transition:all .3s ease}.btn-export:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.reports-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.report-card{align-items:flex-start;background:#fff;border-bottom:3px solid #0000;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;gap:15px;padding:20px;transition:all .3s ease}.report-card:first-child{border-bottom-color:#667eea}.report-card:nth-child(2){border-bottom-color:#764ba2}.report-card:nth-child(3){border-bottom-color:#f093fb}.report-card:nth-child(4){border-bottom-color:#4facfe}.report-card:nth-child(5){border-bottom-color:#fbbf24}.report-card:nth-child(6){border-bottom-color:#10b981}.report-card:hover{box-shadow:0 8px 16px #0000001f;transform:translateY(-5px)}.report-icon{align-items:center;display:flex;font-size:32px;justify-content:center;min-width:50px}.report-content{flex:1 1}.report-label{color:#718096;font-size:12px;font-weight:600;letter-spacing:.5px;margin:0;text-transform:uppercase}.report-value{color:#1a202c;font-size:26px;font-weight:700;margin:8px 0 4px}.report-detail{color:#667eea;font-size:12px;font-weight:600;margin:0}.reports-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:25px}.reports-section h3{border-bottom:2px solid #e2e8f0;color:#1a202c;font-size:18px;font-weight:700;margin:0 0 20px;padding-bottom:12px}.reports-list{display:flex;flex-direction:column;gap:12px}.report-item{align-items:center;background:#f7fafc;border-left:4px solid;border-radius:8px;display:flex;justify-content:space-between;padding:15px;transition:all .3s ease}.report-item.report-appointments{border-left-color:#667eea}.report-item.report-patients{border-left-color:#764ba2}.report-item.report-income{border-left-color:#4facfe}.report-item:hover{background:#edf2f7;transform:translateX(5px)}.report-item-content{flex:1 1}.report-item-content h4{color:#1a202c;font-size:14px;font-weight:700;margin:0 0 4px}.report-item-date{color:#718096;font-size:12px;margin:0 0 8px}.report-item-stats{display:flex;flex-wrap:wrap;gap:8px}.stat-tag{background:#fff;border:1px solid #667eea;border-radius:4px;color:#667eea;font-size:11px;font-weight:600;padding:3px 8px}.report-item-actions{display:flex;gap:8px;margin-left:15px}.btn-download,.btn-view{background:#fff;border:1px solid #e2e8f0;border-radius:4px;color:#667eea;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:all .2s}.btn-download:hover,.btn-view:hover{background:#667eea;border-color:#667eea;color:#fff}.activity-chart{margin-top:20px}.chart-placeholder{background:#f7fafc;border:2px dashed #e2e8f0;border-radius:8px;color:#a0aec0;padding:40px 20px;text-align:center}.chart-placeholder p{color:#718096;font-size:14px;font-weight:600;margin:0}@media (max-width:1024px){.reports-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.reports-header{align-items:flex-start;flex-direction:column;gap:15px}.reports-header h2{font-size:20px}.report-filters{width:100%}.btn-export,.report-filters select{flex:1 1}.reports-grid{grid-template-columns:repeat(2,1fr)}.report-item{align-items:flex-start;flex-direction:column}.report-item-actions{margin-left:0;margin-top:10px;width:100%}.btn-download,.btn-view{flex:1 1}}@media (max-width:480px){.reports-grid{grid-template-columns:1fr}.report-card{align-items:center;flex-direction:column;text-align:center}.report-icon{font-size:28px}.reports-header,.reports-section{padding:15px}.report-item-stats{justify-content:center}.report-item-actions{flex-direction:column}.btn-download,.btn-view{width:100%}}.bar-chart{align-items:flex-end;display:flex;gap:16px;height:140px;padding:0 10px 10px}.bar-item{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:4px;height:100%}.bar-container{align-items:flex-end;display:flex;flex:1 1;width:100%}.bar{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:4px 4px 0 0;min-height:4px;transition:height .3s ease;width:100%}.bar-label{color:#718096;font-size:12px;text-transform:capitalize}.bar-value{color:#667eea;font-size:11px;font-weight:600}.type-breakdown{display:flex;flex-direction:column;gap:10px}.type-item{align-items:center;display:flex;gap:12px}.type-name{color:#1a202c;font-size:14px;font-weight:500;min-width:120px}.type-bar-wrapper{background:#edf2f7;border-radius:5px;flex:1 1;height:10px;overflow:hidden}.type-bar{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:5px;height:100%;min-width:4px;transition:width .4s ease}.type-count{color:#667eea;font-size:13px;font-weight:600;min-width:30px;text-align:right}.settings{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 300px}.settings-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.settings-section{border-bottom:1px solid #e2e8f0;padding:25px}.settings-section:last-of-type{border-bottom:none}.settings-section h3{border-bottom:2px solid #f0f4f8;color:#1a202c;font-size:18px;font-weight:700;margin:0 0 20px;padding-bottom:12px}.setting-item{align-items:center;border-bottom:1px solid #f0f4f8;display:flex;justify-content:space-between;padding:15px 0;transition:all .3s ease}.setting-item:last-child{border-bottom:none}.setting-item:hover{background:#f7fafc;margin:0 -25px;padding:15px 15px 15px 40px}.setting-header{flex:1 1}.setting-title{color:#1a202c;font-size:14px;font-weight:700;margin:0}.setting-description{color:#718096;font-size:12px;margin:4px 0 0}.toggle-switch{cursor:pointer;display:inline-block;height:28px;margin-left:15px;margin-right:5px;position:relative;width:50px}.toggle-switch input{height:0;opacity:0;width:0}.slider{background-color:#cbd5e0;border-radius:28px;bottom:0;cursor:pointer;left:0;right:0;top:0}.slider,.slider:before{position:absolute;transition:.3s}.slider:before{background-color:#fff;border-radius:50%;bottom:3px;box-shadow:0 2px 4px #0000001a;content:"";height:22px;left:3px;width:22px}input:checked+.slider{background-color:#667eea}input:checked+.slider:before{transform:translateX(22px)}.setting-select{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#1a202c;cursor:pointer;font-size:14px;min-width:150px;padding:10px 15px;transition:all .2s}.setting-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.settings-actions{display:flex;flex-wrap:wrap;gap:12px}.settings-actions.danger{border-top:1px solid #e2e8f0;margin-top:20px;padding-top:20px}.btn-setting-action{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#1a202c;cursor:pointer;flex:1 1;font-size:13px;font-weight:600;min-width:150px;padding:12px 20px;transition:all .3s ease}.btn-setting-action.primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff}.btn-setting-action.primary:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.btn-setting-action.secondary{background:#fff;border-color:#667eea;color:#667eea}.btn-setting-action.secondary:hover{background:#edf2f7}.btn-setting-action.danger{background:#fed7d7;border-color:#f56565;color:#742a2a}.btn-setting-action.danger:hover{background:#fc8181}.btn-setting-action.danger-delete{background:#f56565;border-color:#f56565;color:#fff}.btn-setting-action.danger-delete:hover{background:#e53e3e;box-shadow:0 4px 12px #f5656566}.settings-footer{align-items:center;background:#f7fafc;border-top:1px solid #e2e8f0;display:flex;flex-direction:column;gap:10px;padding:20px 25px;text-align:center}.settings-saved-msg{background:#c6f6d5;border-left:3px solid #48bb78;border-radius:6px;color:#276749;font-size:14px;font-weight:600;padding:8px 20px}.btn-save-settings{background:linear-gradient(135deg,#48bb78,#38a169);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:700;margin-bottom:10px;padding:12px 30px;transition:all .3s ease}.btn-save-settings:hover{box-shadow:0 4px 12px #48bb7866;transform:translateY(-2px)}.settings-info{color:#a0aec0;font-size:12px;margin:0}.settings-info-box{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;height:-webkit-fit-content;height:fit-content;padding:20px;position:-webkit-sticky;position:sticky;top:20px}.settings-info-box h4{color:#1a202c;font-size:14px;font-weight:700;margin:0 0 15px}.help-links{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}.help-links li{margin:0}.help-links a{border-radius:4px;color:#667eea;display:block;font-size:13px;font-weight:600;padding:8px 12px;text-decoration:none;transition:all .2s}.help-links a:hover{background:#edf2f7;color:#764ba2;padding-left:20px}.version-info{border-top:1px solid #e2e8f0;color:#a0aec0;font-size:11px;margin:15px 0 0;padding-top:15px;text-align:center}@media (max-width:1024px){.settings{grid-template-columns:1fr}.settings-info-box{position:static}}@media (max-width:768px){.settings-section{padding:15px}.setting-item:hover{margin:0 -15px;padding:15px 15px 15px 30px}.settings-actions{flex-direction:column}.btn-setting-action{min-width:auto;width:100%}.setting-select{width:100%}.toggle-switch{margin-left:10px}.settings-info-box{padding:15px}.help-links{gap:8px}.help-links a{padding:6px 10px}}@media (max-width:480px){.settings-section h3{font-size:15px;margin-bottom:15px;padding-bottom:10px}.setting-item{align-items:flex-start;flex-direction:column;gap:10px;padding:12px 0}.toggle-switch{margin-left:0;margin-right:0}.settings-footer{padding:15px}.btn-save-settings{width:100%}.settings-info-box{padding:12px}.help-links a{font-size:12px;padding:6px 8px}}.pr-page{align-items:center;background:#f7f8fa;display:flex;justify-content:center;min-height:calc(100vh - 70px);padding:40px 20px}.pr-card{background:#fff;border-radius:12px;box-shadow:0 2px 20px #00000014;max-width:440px;padding:40px 40px 32px;width:100%}.pr-title{color:#1a1a2e;font-size:1.75rem;font-weight:700;line-height:1.2;margin:0 0 24px}.pr-social-btn{align-items:center;background:#fff;border:1.5px solid #d5d9e0;border-radius:8px;color:#1a1a2e;cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:12px;justify-content:center;margin-bottom:12px;padding:13px 20px;transition:background .18s,border-color .18s;width:100%}.pr-social-btn:hover{background:#f5f6f8;border-color:#bbbfc8}.pr-social-btn:disabled{cursor:not-allowed;opacity:.55}.pr-social-btn svg{flex-shrink:0}.pr-divider{align-items:center;color:#9ba3af;display:flex;font-size:.9rem;gap:12px;margin:20px 0}.pr-divider:after,.pr-divider:before{background:#e4e7ec;content:"";flex:1 1;height:1px}.pr-field{margin-bottom:14px;position:relative}.pr-input{background:#fff;border:1.5px solid #d5d9e0;border-radius:8px;box-sizing:border-box;color:#1a1a2e;font-size:.95rem;outline:none;padding:14px 16px;transition:border-color .18s;width:100%}.pr-input::placeholder{color:#a0a9b5}.pr-input:focus{border-color:#1abc9c}.pr-input.error{border-color:#e74c3c}.pr-eye-btn{align-items:center;background:none;border:none;color:#9ba3af;cursor:pointer;display:flex;padding:4px;position:absolute;right:14px;top:50%;transform:translateY(-50%)}.pr-eye-btn:hover{color:#1abc9c}.pr-field-error{color:#e74c3c;display:block;font-size:.8rem;margin-top:4px}.pr-error-banner{background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;color:#b91c1c;font-size:.875rem;margin-bottom:16px;padding:12px 14px}.pr-checkbox-row{align-items:flex-start;display:flex;gap:10px;margin:16px 0 20px}.pr-checkbox-row input[type=checkbox]{accent-color:#1abc9c;cursor:pointer;flex-shrink:0;height:17px;margin-top:2px;width:17px}.pr-checkbox-label{color:#566070;font-size:.825rem;line-height:1.4}.pr-checkbox-label a{color:#1abc9c;text-decoration:none}.pr-checkbox-label a:hover{text-decoration:underline}.pr-submit-btn{background:#1abc9c;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-bottom:18px;padding:15px;transition:background .2s,transform .15s;width:100%}.pr-submit-btn:hover:not(:disabled){background:#16a085;transform:translateY(-1px)}.pr-submit-btn:disabled{cursor:not-allowed;opacity:.6}.pr-terms{color:#878f9a;font-size:.78rem;line-height:1.5;text-align:center}.pr-terms a{color:#1abc9c;text-decoration:none}.pr-terms a:hover{text-decoration:underline}.pr-footer-link{color:#566070;font-size:.875rem;margin-top:20px;text-align:center}.pr-footer-link a{color:#1abc9c;font-weight:600;text-decoration:none}.pr-footer-link a:hover{text-decoration:underline}@media (max-width:480px){.pr-card{padding:28px 20px 24px}.pr-title{font-size:1.5rem}}.pmm-container{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:2rem;padding:2rem}.pmm-title{color:#333;font-size:1.4rem;font-weight:600;margin:0 0 .5rem}.pmm-subtitle{color:#666;font-size:.9rem;margin:0 0 1.5rem}.pmm-error{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24}.pmm-error,.pmm-success{font-size:.9rem;margin-bottom:1rem;padding:1rem}.pmm-success{background-color:#d4edda;border:1px solid #c3e6cb;border-radius:4px;color:#155724}.pmm-btn-add,.pmm-success{align-items:center;display:flex;gap:.5rem}.pmm-btn-add{background:linear-gradient(135deg,#007bff,#0056b3);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;margin-bottom:1.5rem;padding:.8rem 1.5rem;transition:all .3s ease}.pmm-btn-add:hover{background:linear-gradient(135deg,#0056b3,#004085);box-shadow:0 4px 12px #007bff4d;transform:translateY(-2px)}.pmm-btn-add:active{transform:translateY(0)}.pmm-form-container{background:#fff;border:1px solid #dee2e6;border-radius:6px;margin-bottom:1.5rem;padding:1.5rem}.pmm-form{gap:1rem}.pmm-form,.pmm-form-group{display:flex;flex-direction:column}.pmm-form-group{gap:.4rem}.pmm-form-group label{color:#333;font-size:.9rem;font-weight:500}.pmm-form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.pmm-input,.pmm-select{border:1px solid #dee2e6;border-radius:4px;font-family:inherit;font-size:.9rem;padding:.7rem;transition:border-color .3s ease}.pmm-input:focus,.pmm-select:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.pmm-form-note{background:#e7f3ff;border-left:4px solid #007bff;border-radius:4px;color:#004085;font-size:.85rem;margin:.5rem 0;padding:.8rem}.pmm-form-actions{border-top:1px solid #dee2e6;display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem;padding-top:1rem}.pmm-btn-save{background:linear-gradient(135deg,#28a745,#1e7e34);border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:.8rem 1.5rem;transition:all .3s ease}.pmm-btn-save:hover:not(:disabled){background:linear-gradient(135deg,#1e7e34,#155724);box-shadow:0 4px 12px #28a7454d;transform:translateY(-2px)}.pmm-btn-save:disabled{cursor:not-allowed;opacity:.6}.pmm-btn-cancel{background:#e9ecef;border:1px solid #ccc;border-radius:4px;color:#495057;cursor:pointer;font-weight:500;padding:.8rem 1.5rem;transition:all .3s ease}.pmm-btn-cancel:hover:not(:disabled){background:#dee2e6}.pmm-btn-cancel:disabled{cursor:not-allowed;opacity:.6}.pmm-list{margin-bottom:1.5rem}.pmm-list-title{color:#333;font-size:1rem;font-weight:600;margin-bottom:1rem}.pmm-cards{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.pmm-card{background:#fff;border:1px solid #dee2e6;border-radius:6px;padding:1.2rem;position:relative;transition:all .3s ease}.pmm-card:hover{border-color:#007bff;box-shadow:0 4px 12px #0000001a}.pmm-default{background:#f0fdf4;border:2px solid #28a745}.pmm-card-header{align-items:flex-start;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:1rem}.pmm-card-info{display:flex;flex:1 1;flex-direction:column;gap:.4rem}.pmm-card-type{color:#666;font-size:.85rem;font-weight:500}.pmm-card-display{color:#333;font-size:.95rem;font-weight:600;word-break:break-word}.pmm-badge-default{background:linear-gradient(135deg,#28a745,#1e7e34);border-radius:20px;color:#fff;font-size:.75rem;font-weight:600;padding:.3rem .8rem;white-space:nowrap}.pmm-card-actions{border-top:1px solid #e9ecef;display:flex;gap:.5rem;justify-content:flex-end;padding-top:1rem}.pmm-btn-default{background:#0000;border:1px solid #007bff;border-radius:4px;color:#007bff;cursor:pointer;font-size:.8rem;padding:.5rem 1rem;transition:all .3s ease;white-space:nowrap}.pmm-btn-default:hover{background:#007bff;color:#fff}.pmm-btn-delete{align-items:center;background:#0000;border:1px solid #dc3545;border-radius:4px;color:#dc3545;cursor:pointer;display:flex;justify-content:center;min-height:38px;min-width:38px;padding:.5rem;transition:all .3s ease}.pmm-btn-delete:hover{background:#dc3545;color:#fff}.pmm-empty{background:#fff;border:2px dashed #dee2e6;border-radius:6px;color:#666;padding:2rem;text-align:center}.pmm-empty p{font-size:.95rem;margin:.5rem 0}.pmm-empty-hint{color:#999;font-size:.85rem}.pmm-security-note{background:#f0f7ff;border-left:4px solid #007bff;border-radius:4px;color:#004085;font-size:.85rem;margin-top:1.5rem;padding:.8rem}.pmm-loading{color:#666;font-size:.95rem;padding:2rem;text-align:center}@media (max-width:768px){.pmm-container{padding:1.5rem}.pmm-cards,.pmm-form-row{grid-template-columns:1fr}.pmm-form-actions{flex-direction:column-reverse}.pmm-btn-cancel,.pmm-btn-save{width:100%}.pmm-card-actions{flex-wrap:wrap}.pmm-btn-delete{flex:1 1}}.patient-page{background:#0000;min-height:0;padding:0}.patient-page-header{align-items:center;background:#fff;border-radius:14px;box-shadow:0 2px 12px #0000000f;display:flex;gap:20px;margin:0 0 32px;max-width:100%;padding:28px 32px;text-align:left}.patient-page-icon{display:block;flex-shrink:0;font-size:40px;line-height:1}.patient-page-header h1{color:#1a1a2e;font-size:1.5rem;font-weight:700;margin:0 0 6px}.patient-page-header p{color:#666;font-size:.9rem;margin:0}.patient-page-card{background:#fff;border-radius:14px;box-shadow:0 2px 12px #0000000f;margin:0;max-width:100%;padding:48px 32px;text-align:center}.patient-page-card.coming-soon span{display:block;font-size:48px;margin-bottom:16px}.patient-page-card.coming-soon h2{color:#1abc9c;font-size:1.4rem;font-weight:700;margin:0 0 10px}.patient-page-card.coming-soon p{color:#888;font-size:.95rem;margin:0}.pp-spinner{animation:pp-spin .7s linear infinite;border:3px solid #e2e8f0;border-radius:50%;border-top-color:#0ea5e9;display:inline-block;height:28px;width:28px}@keyframes pp-spin{to{transform:rotate(1turn)}}.pp-list{display:flex;flex-direction:column;gap:14px}.pp-rx-card{background:#fff;border:1.5px solid #e2e8f0;border-radius:14px;overflow:hidden;transition:border-color .22s,box-shadow .22s}.pp-rx-card--open{border-color:#0ea5e9;box-shadow:0 4px 20px #0ea5e91f}.pp-rx-header{align-items:center;cursor:pointer;display:flex;gap:12px;justify-content:space-between;padding:16px 20px;-webkit-user-select:none;user-select:none}.pp-rx-header:hover{background:#f8fafc}.pp-rx-left{gap:14px}.pp-rx-icon,.pp-rx-left{align-items:center;display:flex}.pp-rx-icon{background:linear-gradient(135deg,#0ea5e9,#0284c7);border-radius:10px;color:#fff;flex-shrink:0;font-size:18px;font-weight:800;height:42px;justify-content:center;width:42px}.pp-rx-title{color:#0f172a;font-size:15px;font-weight:700;margin:0}.pp-rx-sub{color:#64748b;font-size:12.5px;margin:3px 0 0}.pp-rx-right{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.pp-rx-date{color:#94a3b8;font-size:12px;margin:0}.pp-chevron{color:#94a3b8;font-size:10px}.pp-status{border-radius:20px;font-size:10.5px;font-weight:700;letter-spacing:.4px;padding:3px 9px;text-transform:uppercase;white-space:nowrap}.pp-status--active{background:#dcfce7;color:#14532d}.pp-status--expired{background:#fef9c3;color:#713f12}.pp-status--cancelled{background:#fee2e2;color:#991b1b}.pp-rx-body{border-top:1px solid #f1f5f9;padding:24px 20px}.pp-rx-body,.pp-rx-paper{display:flex;flex-direction:column;gap:16px}.pp-rx-paper{background:#fafcff;border:1px solid #e2e8f0;border-radius:12px;padding:24px}.pp-paper-top{align-items:flex-start;border-bottom:3px solid #0ea5e9;display:flex;gap:12px;justify-content:space-between;padding-bottom:16px}.pp-letter-clinic{color:#0ea5e9;font-size:20px;font-weight:800;margin:0 0 4px}.pp-letter-doctor{color:#0f172a;font-size:14px;font-weight:700;margin:0}.pp-letter-lic,.pp-letter-spec{color:#64748b;font-size:12px;margin:2px 0 0}.pp-paper-meta{color:#475569;display:flex;flex-direction:column;font-size:12.5px;gap:2px;text-align:right}.pp-paper-meta p{margin:0}.pp-paper-patient{background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;color:#0f172a;font-size:14px;padding:12px 16px}.pp-paper-patient label{color:#64748b;margin-right:8px}.pp-paper-diagnosis{background:#f8fafc;border-left:4px solid #0ea5e9;border-radius:0 8px 8px 0;padding:10px 14px}.pp-paper-diagnosis label{color:#64748b;display:block;font-size:11px;font-weight:700;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.pp-paper-diagnosis p{color:#0f172a;font-size:14px;margin:0}.pp-rx-sym{color:#0ea5e9;font-size:30px;font-weight:800;line-height:1}.pp-meds-list{display:flex;flex-direction:column;gap:10px}.pp-med-row{align-items:flex-start;background:#fff;border:1px solid #e2e8f0;border-radius:10px;display:flex;gap:12px;padding:12px 14px}.pp-med-num{align-items:center;background:#0ea5e9;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:11px;font-weight:700;height:26px;justify-content:center;margin-top:1px;width:26px}.pp-med-info{flex:1 1}.pp-med-name{color:#0f172a;font-size:14px;font-weight:700;margin:0}.pp-med-dosage{color:#0ea5e9;font-size:13px;font-weight:400;margin-left:6px}.pp-med-details{color:#475569;font-size:12.5px;margin:3px 0 0}.pp-med-instructions{color:#94a3b8;font-size:12px;font-style:italic;margin:3px 0 0}.pp-paper-notes{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:12px 16px}.pp-paper-notes label{color:#92400e;display:block;font-size:11px;font-weight:700;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.pp-paper-notes p{color:#78350f;font-size:13.5px;margin:0}.pp-rx-actions{display:flex;justify-content:flex-end}.pp-print-btn{align-items:center;background:linear-gradient(135deg,#0ea5e9,#0284c7);border:none;border-radius:10px;color:#fff;cursor:pointer;display:inline-flex;font-size:13.5px;font-weight:600;gap:7px;padding:10px 20px;transition:box-shadow .2s,transform .2s}.pp-print-btn:hover{box-shadow:0 4px 14px #0ea5e966;transform:translateY(-1px)}@media (max-width:560px){.pp-rx-header{align-items:flex-start;flex-direction:column}.pp-rx-right{justify-content:flex-start}.pp-paper-top{flex-direction:column}.pp-paper-meta{text-align:left}}.ba-page{background:#f4f5f7;min-height:100vh;padding:100px 20px 60px}.ba-loading{color:#667eea;font-size:16px;padding:120px 20px;text-align:center}.ba-container{margin:0 auto;max-width:1050px}.ba-back{align-items:center;background:none;border:none;color:#667eea;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;margin-bottom:24px;padding:0}.ba-back:hover{text-decoration:underline}.ba-layout{grid-gap:28px;align-items:start;display:grid;gap:28px;grid-template-columns:1fr 320px}.ba-left{background:#fff;border-radius:16px;box-shadow:0 2px 12px #00000012;padding:36px}.ba-title{color:#1a202c;font-size:22px;font-weight:700;margin:0 0 28px}.ba-error{background:#fff5f5;border:1px solid #fc8181;border-radius:10px;color:#c53030;font-size:14px;margin-bottom:20px;padding:12px 16px}.ba-field{margin-bottom:24px}.ba-label{color:#2d3748;display:block;font-size:13px;font-weight:700;letter-spacing:.04em;margin-bottom:10px;text-transform:uppercase}.ba-optional{color:#718096;font-size:12px;font-weight:400;text-transform:none}.ba-reason-row{align-items:center;background:#f7fafc;border:1.5px solid #e2e8f0;border-radius:10px;display:flex;gap:12px;justify-content:space-between;padding:14px 16px}.ba-reason-text{color:#2d3748;font-size:15px;font-weight:500}.ba-change-btn{background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;color:#667eea;cursor:pointer;font-size:13px;font-weight:600;padding:6px 16px;transition:all .15s;white-space:nowrap}.ba-change-btn:hover{background:#667eea;border-color:#667eea;color:#fff}.ba-textarea{border:1.5px solid #e2e8f0;border-radius:10px;box-sizing:border-box;color:#2d3748;font-family:inherit;font-size:14px;padding:12px 14px;resize:vertical;transition:border-color .15s;width:100%}.ba-textarea:focus{border-color:#667eea;outline:none}.ba-radio-group{display:flex;gap:24px}.ba-radio{align-items:center;color:#2d3748;cursor:pointer;display:flex;font-size:15px;gap:8px}.ba-radio input{accent-color:#667eea;height:16px;width:16px}.ba-change-date-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.ba-link-btn{background:none;border:none;color:#667eea;cursor:pointer;font-size:13px;font-weight:600;padding:0;text-decoration:underline}.ba-link-btn:hover{color:#5a67d8}.ba-selected-slot{align-items:center;background:#f7fafc;border:1.5px solid #e2e8f0;border-radius:10px;color:#2d3748;display:flex;font-size:15px;font-weight:500;gap:10px;padding:12px 16px}.ba-no-slot{color:#a0aec0;font-weight:400}.ba-type-badge{align-items:center;background:#ebf4ff;border-radius:20px;color:#3182ce;display:flex;font-size:12px;font-weight:600;gap:4px;margin-left:auto;padding:4px 10px}.ba-type-badge.virtual{background:#e9d8fd;color:#6b46c1}.ba-slot-picker-wrap{background:#fafafa;border:1.5px solid #e2e8f0;border-radius:12px;margin-top:16px;padding:16px}.ba-slots-empty,.ba-slots-loading{color:#718096;font-size:14px;padding:20px;text-align:center}.ba-slot-grid{display:flex;gap:12px;overflow-x:auto;padding-bottom:4px}.ba-slot-day{align-items:center;display:flex;flex:0 0 90px;flex-direction:column;gap:6px}.ba-slot-day-label{color:#2d3748;font-size:13px;font-weight:700}.ba-slot-day-date{color:#718096;font-size:11px;margin-bottom:2px}.ba-slot-empty-day{color:#cbd5e0;font-size:13px;margin-top:4px}.ba-slot-btn{background:#f0fff4;border:1.5px solid #c6f6d5;border-radius:8px;color:#276749;cursor:pointer;font-size:13px;font-weight:600;padding:7px 0;transition:all .15s;width:80px}.ba-slot-btn:hover{background:#c6f6d5}.ba-slot-btn.selected{background:#667eea;border-color:#667eea;color:#fff}.ba-slot-btn.booked{background:#fed7d7;border-color:#feb2b2;color:#c53030;cursor:not-allowed;opacity:.7;pointer-events:none;text-decoration:line-through}.ba-confirm-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;margin-top:8px;padding:16px;transition:all .2s;width:100%}.ba-confirm-btn:hover:not(:disabled){box-shadow:0 6px 20px #667eea66;transform:translateY(-1px)}.ba-confirm-btn:disabled{cursor:not-allowed;opacity:.6}.ba-login-hint{color:#718096;font-size:13px;margin-top:12px;text-align:center}.ba-login-hint a{color:#667eea;font-weight:600}.ba-right{position:-webkit-sticky;position:sticky;top:100px}.ba-doctor-card{background:#fff;border-radius:16px;box-shadow:0 2px 12px #00000012;display:flex;flex-direction:column;gap:16px;padding:24px}.ba-doctor-avatar{align-items:center;background:#ebf4ff;border-radius:50%;display:flex;flex-shrink:0;height:56px;justify-content:center;overflow:hidden;width:56px}.ba-doctor-avatar img{height:100%;object-fit:cover;width:100%}.ba-doctor-info{display:flex;flex-direction:column;gap:2px}.ba-doctor-name{color:#1a202c;font-size:16px;font-weight:700}.ba-doctor-specialty{color:#667eea;font-size:13px;font-weight:500}.ba-card-row{align-items:flex-start;color:#4a5568;display:flex;font-size:13px;gap:10px}.ba-card-row svg{color:#667eea;flex-shrink:0;margin-top:2px}.ba-card-date{color:#2d3748;font-weight:600;margin-bottom:2px}.ba-card-fee{background:#f0fff4;border-radius:8px;color:#276749;font-size:13px;padding:10px 14px}.ba-card-fee strong{font-size:15px}.ba-modal-overlay{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.ba-modal{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0003;display:flex;flex-direction:column;max-height:80vh;max-width:560px;overflow:hidden;width:100%}.ba-modal-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:20px 24px}.ba-modal-header h3{color:#1a202c;font-size:17px;font-weight:700;margin:0}.ba-modal-close{background:none;border:none;border-radius:50%;color:#718096;cursor:pointer;display:flex;padding:4px}.ba-modal-close:hover{background:#f7fafc}.ba-modal-subtitle{color:#718096;font-size:12px;font-weight:700;letter-spacing:.05em;padding:12px 24px 4px;text-transform:uppercase}.ba-modal-list{overflow-y:auto;padding:0 24px 24px}.ba-modal-option{align-items:center;border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;gap:16px;justify-content:space-between;padding:16px 0}.ba-modal-option:last-child{border-bottom:none}.ba-modal-option:hover .ba-modal-btn{background:#667eea;color:#fff}.ba-modal-option-info{display:flex;flex:1 1;flex-direction:column;gap:3px}.ba-modal-option-name{color:#2d3748;font-size:15px;font-weight:500}.ba-modal-option-desc{color:#718096;font-size:12px}.ba-modal-option-price{color:#2d3748;font-size:14px;font-weight:500}.ba-modal-btn{background:#fff;border:2px solid #667eea;border-radius:20px;cursor:pointer;padding:7px 18px;transition:all .15s}.ba-modal-btn,.ba-modal-selected{color:#667eea;font-size:13px;font-weight:700;white-space:nowrap}.ba-success{align-items:center;display:flex;flex-direction:column;gap:16px;margin:0 auto;max-width:480px;padding:60px 20px;text-align:center}.ba-success h2{color:#276749;font-size:28px;font-weight:800;margin:0}.ba-success p{color:#4a5568;font-size:15px;line-height:1.6;margin:0}.ba-success-detail{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000012;display:flex;flex-direction:column;gap:6px;padding:16px 24px;width:100%}.ba-success-detail strong{color:#2d3748;font-size:16px}.ba-success-detail span{color:#667eea;font-size:13px}.ba-success-btn{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;display:block;font-size:15px;font-weight:700;margin-top:8px;padding:14px 32px;text-decoration:none}.ba-success-link{color:#667eea;font-size:14px;font-weight:500;text-decoration:none}.ba-success-link:hover{text-decoration:underline}@media (max-width:768px){.ba-layout{grid-template-columns:1fr}.ba-right{position:static}.ba-left{padding:24px 20px}}.rxv-page{align-items:flex-start;background:linear-gradient(135deg,#0f1b2d,#1b2a44);display:flex;justify-content:center;min-height:100vh;padding:40px 16px 60px}.rxv-card{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:860px;overflow:hidden;width:100%}.rxv-card--invalid{text-align:center}.rxv-card--invalid,.rxv-loading{align-items:center;display:flex;flex-direction:column;padding:60px 40px}.rxv-loading{color:#64748b;font-size:15px;gap:16px}.rxv-spinner{animation:rxv-spin .7s linear infinite;border:3px solid #e2e8f0;border-radius:50%;border-top-color:#0ea5e9;height:40px;width:40px}@keyframes rxv-spin{to{transform:rotate(1turn)}}.rxv-header{background:#0f1b2d;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:24px 32px}.rxv-brand,.rxv-header{align-items:center;display:flex}.rxv-brand{gap:12px}.rxv-brand-icon{font-size:28px}.rxv-brand-name{color:#fff;font-size:20px;font-weight:700;margin:0}.rxv-brand-sub{color:#94a3b8;font-size:12px;margin:2px 0 0}.rxv-status-badge{align-items:center;border-radius:100px;display:flex;font-size:13px;font-weight:700;gap:8px;letter-spacing:.5px;padding:10px 20px}.rxv-status-badge--valid{background:#dcfce7;color:#166534}.rxv-status-badge--invalid{background:#fee2e2;color:#991b1b}.rxv-status-check{font-size:16px;font-weight:900}.rxv-status-icon{align-items:center;border-radius:50%;display:flex;font-size:36px;font-weight:900;height:72px;justify-content:center;margin-bottom:20px;width:72px}.rxv-status-icon--invalid{background:#fee2e2;color:#991b1b}.rxv-status-title{font-size:22px;font-weight:700;margin:0 0 10px}.rxv-status-title--invalid{color:#991b1b}.rxv-status-msg{color:#64748b;font-size:14px;margin:0}.rxv-integrity{font-size:12px;font-weight:600;padding:10px 32px}.rxv-integrity--ok{background:#f0fdf4;color:#166534}.rxv-integrity--fail{background:#fefce8;color:#92400e}.rxv-dates{border-bottom:1px solid #e2e8f0;display:flex;gap:0}.rxv-date-item{border-right:1px solid #e2e8f0;display:flex;flex:1 1;flex-direction:column;gap:4px;padding:16px 32px}.rxv-date-item:last-child{border-right:none}.rxv-date-label{color:#94a3b8;font-size:11px;letter-spacing:.5px;text-transform:uppercase}.rxv-date-item strong{color:#0f1b2d;font-size:14px}.rxv-grid{grid-gap:0;display:grid;gap:0;grid-template-columns:1fr 1fr}.rxv-grid,.rxv-section{border-bottom:1px solid #e2e8f0}.rxv-section{padding:20px 32px}.rxv-grid .rxv-section{border-bottom:none;border-right:1px solid #e2e8f0}.rxv-grid .rxv-section:last-child{border-right:none}.rxv-section-title{color:#0ea5e9;font-size:12px;font-weight:700;letter-spacing:.6px;margin:0 0 12px;text-transform:uppercase}.rxv-table{border-collapse:collapse;font-size:13px;width:100%}.rxv-table--info td{color:#475569;padding:5px 8px}.rxv-table--info td:first-child{color:#94a3b8;font-size:11px;letter-spacing:.4px;padding-top:6px;text-transform:uppercase;vertical-align:top;width:110px}.rxv-table-wrap{overflow-x:auto}.rxv-table--meds th{background:#0f1b2d;color:#fff;font-size:11px;font-weight:600;letter-spacing:.4px;padding:9px 12px;text-align:left;text-transform:uppercase}.rxv-table--meds td{border-bottom:1px solid #e2e8f0;color:#334155;font-size:13px;padding:9px 12px}.rxv-table--meds tr:nth-child(2n) td{background:#f8fafc}.rxv-diagnosis{background:#f0f9ff;border-left:4px solid #0ea5e9;border-radius:0 6px 6px 0;color:#0f1b2d;font-size:14px;line-height:1.5;padding:12px 16px}.rxv-cie10{color:#64748b;font-size:12px;font-style:italic}.rxv-hash-section{background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;flex-direction:column;gap:4px;padding:16px 32px}.rxv-hash-label{color:#94a3b8;font-size:10px;letter-spacing:.5px;text-transform:uppercase}.rxv-hash{color:#475569;font-family:Courier New,Courier,monospace;font-size:11px;word-break:break-all}.rxv-footer-note{color:#94a3b8;font-size:11px;line-height:1.6;margin:0;padding:16px 32px 24px;text-align:center}@media (max-width:640px){.rxv-header{padding:20px}.rxv-section{padding:16px 20px}.rxv-dates{flex-direction:column}.rxv-date-item{border-bottom:1px solid #e2e8f0;border-right:none}.rxv-grid{grid-template-columns:1fr}.rxv-grid .rxv-section{border-bottom:1px solid #e2e8f0;border-right:none}.rxv-hash-section{padding:16px 20px}.rxv-footer-note{padding:16px 20px 24px}}
/*# sourceMappingURL=main.968c8486.css.map*/