*,*:before,*:after{box-sizing:border-box}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh;color:#333;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;overflow-x:hidden;box-sizing:border-box;width:100%;background-image:url(/dentalback.webp);background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed;position:relative}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-color:#ffffffd9;z-index:-1}h1{font-size:2.5em;line-height:1.1;color:#1a1a1a}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}#root{width:100%;max-width:1200px;margin:0 auto;padding:2rem 0;text-align:center}.auth-card{background-color:#ebf5fff5;padding:35px;border-radius:12px;border:1px solid rgba(0,86,179,.3);box-shadow:0 5px 15px #0056b326;max-width:420px;margin:60px auto;text-align:left}.auth-card h2{text-align:center;margin-bottom:30px;color:#004085;font-weight:600}.auth-card label{display:block;margin-bottom:6px;font-weight:500;color:#34495e}.auth-card input,.auth-card select{width:100%;padding:12px 15px;margin-bottom:18px;border:1px solid #b0cfff;border-radius:6px;box-sizing:border-box;font-size:1em;background-color:#fff;color:#333}.auth-card input:focus,.auth-card select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.auth-card button[type=submit]{width:100%;padding:14px;background-color:#007bff;color:#fff;border:none;border-radius:6px;font-size:1.15em;font-weight:500;cursor:pointer;transition:background-color .2s ease}.auth-card button[type=submit]:hover{background-color:#0056b3}.auth-card button[type=submit]:disabled{background-color:#aaa;cursor:not-allowed}.auth-card .error-message{color:#dc3545;font-size:.9em;margin-top:-10px;margin-bottom:15px}.toggle-auth{text-align:center;margin-top:25px}.toggle-auth button{background:none;border:none;color:#0056b3;text-decoration:underline;cursor:pointer;font-size:.95em}.toggle-auth button:hover{color:#003d80}@media (max-width: 600px){.auth-card{margin:20px auto;padding:20px}}.navbar{background-color:#0056b3cc;padding:10px 20px;border-radius:10px;display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;position:sticky;top:10px;z-index:1000;width:calc(100% - 40px);box-sizing:border-box}.navbar a{color:#fff;text-decoration:none;margin:0 10px;font-weight:500}.navbar a:hover{color:#e0e0e0}.logout-button{background-color:#dc3545;color:#fff;border:none;padding:8px 15px;border-radius:5px;cursor:pointer;font-weight:500;transition:background-color .2s ease;display:inline-flex;align-items:center}.logout-button:hover{background-color:#c82333;border-color:#c82333}.add-appointment-button{position:absolute;top:0;left:0;height:45px;background-color:#e7f1ff;color:#0056b3;border:1px solid #007bff;border-radius:8px;cursor:pointer;display:flex;align-items:center;padding:0 18px;font-weight:500;font-size:1.05em;transition:background-color .2s ease,border-color .2s ease,transform .1s ease}.add-appointment-button img{height:24px;margin-right:10px}.add-appointment-button span{line-height:1}.add-appointment-button:hover{background-color:#d0e3ff;border-color:#0056b3}.add-appointment-button:active{transform:scale(.98);background-color:#b9d7ff}.add-appointment-form{margin-bottom:30px;padding:25px;border:1px solid #b0cfff;border-radius:10px;background-color:#e7f1ffeb;box-shadow:0 2px 5px #0000001a}.add-appointment-form h4{margin-top:0;margin-bottom:20px;color:#004085;text-align:center}.navbar-links-desktop,.navbar-right{display:flex;align-items:center}.navbar-links-desktop a.active-link{border-bottom:2px solid white}.menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:10px;order:-1}.menu-toggle span{display:block;width:25px;height:3px;background-color:#fff;margin:5px 0;transition:transform .3s ease,opacity .3s ease}.mobile-menu{display:none;position:absolute;top:100%;left:0;background-color:#fffffffa;border:1px solid #ddd;border-radius:0 0 8px;box-shadow:0 4px 8px #0000001a;width:200px;z-index:999;overflow:hidden}.mobile-menu a.active-link{background-color:#eee;font-weight:700}.logout-button-mobile{display:block;width:calc(100% - 40px);margin:10px 20px;padding:10px;background-color:#dc3545;color:#fff;border:none;border-radius:5px;text-align:center;font-weight:500}@media (max-width: 768px){.navbar-links-desktop{display:none}.menu-toggle{display:block;order:-1;margin-left:0;margin-right:10px}.logout-button{display:none}.mobile-menu{display:block}.navbar{justify-content:flex-start}.patient-list-table{border:0}.patient-list-table thead{display:none}.patient-list-table tr{display:block;margin-bottom:.8em;border:1px solid #ddd;border-radius:5px;background-color:#fffffff2;box-shadow:0 1px 3px #0000000d;padding:10px;cursor:pointer;transition:background-color .2s ease}.patient-list-table tr:hover{background-color:#f8f8f8f2}.patient-list-table td{display:none}.patient-list-table td:nth-child(1),.patient-list-table td:nth-child(2){display:inline;font-weight:700;padding:0 5px 0 0;border:none;text-align:left}.patient-list-table td:nth-child(1):before,.patient-list-table td:nth-child(2):before{content:none}.patient-list-table tr.expanded{padding-bottom:0;background-color:#f0f5fffa}.patient-list-table tr.expanded td{display:block;text-align:right;font-size:.95em;border-bottom:1px dotted #eee;padding:10px 10px 10px 50%;position:relative;font-weight:400}.patient-list-table tr.expanded td:before{content:attr(data-label);position:absolute;left:10px;width:45%;padding-right:10px;white-space:nowrap;text-align:left;font-weight:700;color:#555}.patient-list-table tr.expanded td:last-child{border-bottom:0}.patient-list-table tr.expanded td .action-buttons{text-align:right;padding-top:5px}.patient-list-table tr.expanded td .action-buttons button{padding:5px 10px;font-size:.9em}.patient-list-table tr.expanded td .action-buttons .icon-button{padding:8px;font-size:1.2em}.patient-list-table tr.expanded td[data-label=Teléfono] .whatsapp-button{width:22px;height:22px;padding:4px;margin-left:6px}.patient-list-table tr.expanded td[data-label=Teléfono] .whatsapp-button svg{font-size:12px}.patient-list-table tr.expanded td[data-label=Teléfono] span{display:inline-block;vertical-align:middle}.calendar-container .fc-header-toolbar{font-size:.85em;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px}.calendar-container .fc-header-toolbar .fc-toolbar-chunk{margin-bottom:0}.appointment-form-fields .form-group.half-width,.service-product-form .form-group.half-width{flex-basis:100%;min-width:auto}.page-header-actions{margin-bottom:15px}.page-header-actions .add-appointment-button{padding:0 12px;height:40px;font-size:1em}.page-header-actions .add-appointment-button img{height:20px;margin-right:8px}}.page-header-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;position:relative;flex-wrap:wrap}.page-header-actions h3{margin:0;flex-grow:1}.page-header-actions .add-appointment-button{position:static;margin-left:15px}.whatsapp-button{display:inline-flex;align-items:center;justify-content:center;padding:5px;margin-left:8px;background-color:#25d366;color:#fff;border-radius:50%;width:26px;height:26px;text-decoration:none;vertical-align:middle;transition:background-color .2s ease,transform .1s ease;line-height:0}.whatsapp-button:hover{background-color:#1dae54;color:#fff;transform:scale(1.1)}.appointment-form-fields{display:flex;flex-wrap:wrap;gap:15px}.appointment-form-fields .form-group{display:flex;flex-direction:column}.appointment-form-fields .form-group label{margin-bottom:5px;font-weight:500;color:#333}.appointment-form-fields input,.appointment-form-fields select,.appointment-form-fields textarea{width:100%;padding:10px;border:1px solid #ccc;border-radius:4px;font-size:1em;box-sizing:border-box}.appointment-form-fields textarea{min-height:80px}.appointment-form-fields .form-group.full-width{flex:1 1 100%}.appointment-form-fields .form-group.half-width{flex:1 1 45%;min-width:200px}.appointment-form-fields .form-error{color:#dc3545;flex-basis:100%;margin-top:0}.appointment-form-fields .form-actions{flex-basis:100%;margin-top:10px;display:flex;gap:10px}.appointment-form-fields .cancel-button{background-color:#6c757d;color:#fff}.appointment-form-fields .cancel-button:hover{background-color:#5a6268}.icon-button{background:none;border:none;padding:5px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:#555;transition:color .2s ease,transform .1s ease}.icon-button:hover{color:#007bff;transform:scale(1.1)}.icon-button:disabled{color:#ccc;cursor:not-allowed;transform:none}.icon-button.edit-button:hover{color:#ffc107}.icon-button.delete-button:hover{color:#dc3545}.services-table,.products-table{width:100%;border-collapse:collapse;margin-top:20px;background-color:#fff;box-shadow:0 2px 4px #0000001a;border-radius:8px;overflow:hidden}.services-table th,.services-table td,.products-table th,.products-table td{padding:12px 15px;text-align:left;border-bottom:1px solid #eee}.services-table th,.products-table th{background-color:#f8f9fa;font-weight:600;color:#333}.services-table tbody tr:last-child td,.products-table tbody tr:last-child td{border-bottom:none}.services-table tbody tr:hover,.products-table tbody tr:hover{background-color:#f1f1f1}.services-table td:last-child,.products-table td:last-child{text-align:right}.services-table .action-buttons,.products-table .action-buttons{display:flex;gap:10px;justify-content:flex-end}.service-product-form-page{max-width:700px;margin:20px auto;padding:25px;background:#fff;border-radius:8px;box-shadow:0 2px 5px #0000001a}.service-product-form-page h2{margin-top:0;margin-bottom:20px;color:#333;text-align:center}.service-product-form .form-group{margin-bottom:15px}.service-product-form .form-group label{display:block;margin-bottom:6px;font-weight:500;color:#444}.service-product-form input[type=text],.service-product-form input[type=number],.service-product-form textarea,.service-product-form select{width:100%;padding:10px;border:1px solid #ccc;border-radius:4px;box-sizing:border-box}.service-product-form textarea{min-height:100px;resize:vertical}.service-product-form .form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:15px;border-top:1px solid #eee}.service-product-form .form-actions button{padding:10px 20px}.modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background-color:#fff;padding:30px;border-radius:8px;box-shadow:0 5px 15px #0003;width:90%;max-width:550px;position:relative;max-height:85vh;overflow-y:auto}.modal-close-button{position:absolute;top:10px;right:10px;background:none;border:none;font-size:1.8em;cursor:pointer;color:#aaa;line-height:1;padding:5px;transition:color .2s ease}.modal-close-button:hover{color:#333}.modal-content h3{margin-top:0;margin-bottom:20px;color:#333;text-align:center}.patient-detail-modal .detail-section{margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #eee}.patient-detail-modal .detail-section:last-child{margin-bottom:0;border-bottom:none}.patient-detail-modal .detail-item{margin-bottom:10px}.patient-detail-modal .detail-label{font-weight:600;color:#555;margin-right:8px;display:inline-block}.patient-detail-modal .detail-value{color:#333}.patient-detail-modal .detail-item.history{margin-top:15px}.patient-detail-modal .detail-item.history .detail-label{display:block;margin-bottom:5px}.patient-detail-modal .detail-item.history .detail-value{display:block;white-space:pre-wrap;background-color:#f9f9f9;padding:10px;border-radius:4px;max-height:150px;overflow-y:auto}.confirmation-modal .modal-content{max-width:400px}.confirmation-modal p{margin-bottom:25px;font-size:1.1em;text-align:center;color:#444}.confirmation-modal .confirmation-buttons{display:flex;justify-content:center;gap:15px}.confirmation-modal .cancel-button{background-color:#6c757d;color:#fff}.confirmation-modal .cancel-button:hover{background-color:#5a6268}body{font-family:Poppins,Montserrat,Lato,sans-serif;margin:0;padding:0;box-sizing:border-box;color:#333}.landing-page{display:flex;flex-direction:column;min-height:100vh;overflow-x:hidden;width:100%}h1,h2,h3,h4{color:#005a9c}section{padding:40px 20px;max-width:1200px;margin:0 auto;width:90%}.hero-section{display:flex;flex-direction:column;align-items:center;padding:40px 20px;text-align:center;background:linear-gradient(135deg,#f0f8ff,#e6f2ff);border-radius:0 0 20px 20px;margin-bottom:20px}.hero-content{width:100%;max-width:500px;margin-bottom:30px}.hero-content h1{font-size:2.2em;margin-bottom:15px;line-height:1.2;color:#005a9c}.hero-content p{font-size:1.1em;margin-bottom:25px;color:#555}.hero-image{width:100%;max-width:400px;margin:0 auto}.hero-image img{width:100%;height:auto;border-radius:12px;box-shadow:0 4px 15px #0000001a}.cta-button{display:inline-block;background-color:#007bff;color:#fff;padding:14px 30px;border-radius:8px;text-decoration:none;font-weight:700;font-size:1.1em;transition:all .3s ease;box-shadow:0 4px 6px #007bff33}.cta-button:hover{background-color:#0056b3;transform:translateY(-2px);box-shadow:0 6px 8px #007bff4d}.benefits-section{text-align:center;padding:40px 20px;background-color:#fff}.benefits-section h2{margin-bottom:30px;font-size:1.8em}.benefits-grid{display:grid;grid-template-columns:1fr;gap:20px}.benefit-item{background-color:#fff;padding:25px;border-radius:12px;box-shadow:0 4px 12px #0000000d;transition:transform .3s ease}.benefit-item:hover{transform:translateY(-5px)}.benefit-item .icon{font-size:2.5em;margin-bottom:15px;color:#007bff}.benefit-item h3{margin-bottom:10px;font-size:1.2em}.benefit-item p{font-size:.95em;color:#666;line-height:1.5}.how-it-works-section{background-color:#f8f9fa;padding:40px 20px;text-align:center}.how-it-works-section h2{margin-bottom:30px;font-size:1.8em}.steps-container{display:flex;flex-direction:column;gap:25px}.step{background-color:#fff;padding:25px;border-radius:12px;box-shadow:0 4px 12px #0000000d}.step-icon{display:inline-block;width:50px;height:50px;line-height:50px;border-radius:50%;background-color:#007bff;color:#fff;font-weight:700;font-size:1.5em;margin-bottom:15px}.step h4{margin-bottom:10px;font-size:1.2em}.step p{font-size:.95em;color:#555;line-height:1.5}.testimonials-section{padding:40px 20px;text-align:center;background-color:#fff}.testimonials-section h2{margin-bottom:30px;font-size:1.8em}.testimonial-cards{display:flex;flex-direction:column;gap:25px}.testimonial-card{background-color:#fff;padding:25px;border-radius:12px;box-shadow:0 4px 12px #0000000d}.testimonial-avatar{width:60px;height:60px;border-radius:50%;margin-bottom:15px;object-fit:cover}.testimonial-card p{font-style:italic;margin-bottom:15px;color:#444;line-height:1.5}.testimonial-card h4{font-size:1.1em;color:#005a9c}.pricing-section{padding:40px 20px;text-align:center;background-color:#f8f9fa}.pricing-section h2{margin-bottom:30px;font-size:1.8em}.pricing-toggle{margin-bottom:30px;display:flex;justify-content:center;gap:10px}.toggle-button{padding:10px 20px;border:none;background-color:#e9ecef;color:#555;cursor:pointer;font-size:.9em;font-weight:500;border-radius:8px;transition:all .3s ease}.toggle-button.active{background-color:#007bff;color:#fff}.pricing-container{display:flex;flex-direction:column;gap:25px}.pricing-card{background-color:#fff;border-radius:12px;padding:30px;box-shadow:0 4px 12px #0000000d}.pricing-header{margin-bottom:25px}.pricing-header h3{margin-bottom:10px;font-size:1.5em}.pricing-price{font-size:2.2em;font-weight:700;color:#005a9c;margin:5px 0}.pricing-features{list-style:none;padding:0;margin-bottom:30px;text-align:left}.feature-item{margin-bottom:12px;font-size:.95em;color:#333;display:flex;align-items:center;gap:10px}.feature-item:before{content:"✔";color:#28a745;font-weight:700}.landing-footer{background-color:#343a40;color:#f8f9fa;padding:40px 20px;text-align:center}.footer-links{display:flex;flex-direction:column;gap:15px;margin-bottom:25px}.footer-links a{color:#adb5bd;text-decoration:none;transition:color .3s ease}.footer-links a:hover{color:#fff}.footer-social{display:flex;justify-content:center;gap:20px;margin-bottom:25px}.footer-social a{color:#f8f9fa;font-size:1.5em;transition:color .3s ease}.footer-social a:hover{color:#007bff}.footer-contact p{margin-bottom:15px;color:#ced4da}.footer-legal{margin-top:25px;font-size:.9em;color:#adb5bd}.footer-legal a{color:#adb5bd;text-decoration:none;transition:color .3s ease}.footer-legal a:hover{color:#fff}@media (min-width: 768px){.hero-section{flex-direction:row;text-align:left;padding:60px 40px}.hero-content{margin-bottom:0;padding-right:40px}.benefits-grid{grid-template-columns:repeat(2,1fr)}.steps-container{flex-direction:row;flex-wrap:wrap;justify-content:center}.step{flex:1;min-width:250px;max-width:300px}.testimonial-cards{flex-direction:row;flex-wrap:wrap;justify-content:center}.testimonial-card{flex:1;min-width:300px;max-width:400px}.pricing-container{flex-direction:row;justify-content:center}.pricing-card{flex:1;max-width:350px}.footer-links{flex-direction:row;justify-content:center}}@media (min-width: 1024px){.benefits-grid{grid-template-columns:repeat(4,1fr)}}#root{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.main-content{padding:20px;background-color:#fffc;border-radius:8px;margin-top:20px;min-height:calc(100vh - 100px)}.navbar{background-color:#007bff;padding:10px 20px;color:#fff;display:flex;justify-content:space-between;align-items:center;border-radius:8px;box-shadow:0 2px 4px #0000001a}.navbar-links-desktop{display:flex;align-items:center}.navbar-link{color:#fff;text-decoration:none;margin:0 15px;padding:8px 0;position:relative;transition:color .2s ease}.navbar-link:hover{color:#e0e0e0}.navbar-link.active-link{font-weight:700;border-bottom:2px solid white}.navbar-right{display:flex;align-items:center}.logout-button{background-color:#dc3545;color:#fff;border:none;padding:8px 15px;border-radius:5px;cursor:pointer;font-size:.9em;margin-left:20px;transition:background-color .2s ease}.logout-button:hover{background-color:#c82333}.menu-toggle{display:none;background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:5px}.menu-toggle span{display:block;width:25px;height:3px;background-color:#fff;margin:5px 0;transition:all .3s ease}.mobile-menu{position:absolute;top:100%;left:0;right:0;background-color:#fff;border:1px solid #eee;box-shadow:0 4px 8px #0000001a;z-index:1000;border-radius:0 0 8px 8px;overflow:hidden}.navbar .mobile-menu .mobile-link{display:block;padding:12px 20px;color:#000;text-decoration:none;border-bottom:1px solid #f0f0f0;transition:background-color .2s ease}.navbar .mobile-menu .mobile-link:hover{background-color:#f8f9fa}.navbar .mobile-menu .mobile-link.active-link{background-color:#e9ecef;font-weight:700;color:#0056b3}.navbar .mobile-menu .mobile-link:last-of-type{border-bottom:none}.logout-button-mobile{display:block;width:calc(100% - 40px);margin:10px 20px;padding:10px 15px;background-color:#dc3545;color:#fff;border:none;border-radius:5px;cursor:pointer;font-size:1em;text-align:center}.logout-button-mobile:hover{background-color:#c82333}@media (max-width: 768px){.navbar-links-desktop{display:none}.menu-toggle{display:block}.logout-button{display:none}}.styled-dashboard-table{width:100%;border-collapse:separate;border-spacing:0;margin-top:15px;margin-bottom:20px;background-color:#ffffffd9;border-radius:8px;overflow:hidden;box-shadow:0 2px 5px #0000001a;border:1px solid rgba(0,123,255,.2)}.styled-dashboard-table thead th{background-color:#007bff;color:#fff;padding:12px 15px;text-align:left;font-weight:600;border-bottom:2px solid #0056b3}.styled-dashboard-table thead th:first-child{border-top-left-radius:8px}.styled-dashboard-table thead th:last-child{border-top-right-radius:8px}.styled-dashboard-table tbody td{padding:12px 15px;border-bottom:1px solid #e0e0e0;vertical-align:middle;color:#333}.styled-dashboard-table tbody tr:hover{background-color:#007bff0d}.styled-dashboard-table tbody tr:last-child td{border-bottom:none}.styled-dashboard-table tbody tr:last-child td:first-child{border-bottom-left-radius:8px}.styled-dashboard-table tbody tr:last-child td:last-child{border-bottom-right-radius:8px}.styled-dashboard-table .action-buttons button{margin-right:5px}.styled-dashboard-table .action-buttons .icon-button{background:none;border:none;cursor:pointer;padding:5px;font-size:1.1em;transition:color .2s ease}.styled-dashboard-table .action-buttons .edit-button{color:#007bff}.styled-dashboard-table .action-buttons .edit-button:hover{color:#0056b3}.styled-dashboard-table .action-buttons .delete-button{color:#dc3545}.styled-dashboard-table .action-buttons .delete-button:hover{color:#a71d2a}.create-clinic-section input{background-color:#fff!important;color:#333!important;border:1px solid #ccc!important}.create-clinic-section input:focus{background-color:#fff!important;color:#333!important;border-color:#007bff!important}@media screen and (max-width: 768px){.create-clinic-section input{background-color:#fff!important;color:#333!important;border:1px solid #ccc!important}}@media screen and (max-width: 768px){.styled-dashboard-table{border:none;box-shadow:none;background-color:transparent}.styled-dashboard-table thead{display:none}.styled-dashboard-table tr{display:block;margin-bottom:15px;border-radius:8px;border:1px solid #ddd;background-color:#fff;box-shadow:0 1px 3px #0000001a;overflow:hidden}.styled-dashboard-table td{display:block;text-align:left;padding:15px;position:relative;border-bottom:1px solid #eee;overflow-wrap:break-word;word-wrap:break-word}.styled-dashboard-table td:last-child{border-bottom:0}.styled-dashboard-table td:before{content:attr(data-label);display:block;margin-bottom:5px;text-align:left;font-weight:700;color:#333}.styled-dashboard-table td[data-label=Acciones] .action-buttons{justify-content:flex-end;padding-top:5px;padding-bottom:5px}.styled-dashboard-table tbody tr:last-child td:first-child,.styled-dashboard-table tbody tr:last-child td:last-child{border-radius:0}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background-color:#fff;padding:25px 30px;border-radius:8px;box-shadow:0 5px 15px #0003;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;position:relative}.modal-content h4{margin-top:0;color:#007bff;margin-bottom:20px;text-align:center}.confirmation-modal{max-width:450px;text-align:center}.confirmation-modal p{margin-bottom:25px;color:#555;line-height:1.5}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.confirmation-actions{justify-content:center;gap:15px}.modal-actions button{padding:10px 20px;border:none;border-radius:5px;cursor:pointer;font-weight:700;transition:background-color .2s ease,box-shadow .2s ease}.modal-actions .confirm-button{background-color:#28a745;color:#fff}.modal-actions .confirm-button:hover:not(:disabled){background-color:#218838;box-shadow:0 2px 4px #0000001a}.modal-actions .cancel-button{background-color:#6c757d;color:#fff}.modal-actions .cancel-button:hover:not(:disabled){background-color:#5a6268}.modal-actions button:disabled{background-color:#ccc;cursor:not-allowed;opacity:.7}.searchable-product-list{max-height:200px}.patient-history-row td{background-color:#f8f9fa;padding:15px 20px!important}.patient-main-row.expanded{background-color:#007bff08}.patient-history-row .styled-dashboard-table{margin-top:10px}.styled-form{padding:20px 25px;border:1px solid #e0e0e0;border-radius:8px;background-color:#fff;box-shadow:0 1px 4px #00000012;margin-top:15px;display:flex;flex-wrap:wrap;gap:15px 20px}.styled-form h4{flex-basis:100%;margin-bottom:10px;text-align:left;color:#333}.form-group{display:flex;flex-direction:column;margin-bottom:10px;flex:1;min-width:180px}.form-group.full-width{flex-basis:100%;min-width:unset}.form-group.half-width{min-width:calc(50% - 10px)}.form-group label{margin-bottom:6px;font-weight:600;color:#555;font-size:.9em}.form-group input[type=text],.form-group input[type=email],.form-group input[type=password],.form-group input[type=number],.form-group input[type=date],.form-group input[type=datetime-local],.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:1px solid #ccc;border-radius:5px;font-size:1em;box-sizing:border-box;transition:border-color .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#007bff;outline:none;box-shadow:0 0 0 2px #007bff33}.form-group textarea{min-height:80px;resize:vertical}.form-actions{flex-basis:100%;display:flex;justify-content:flex-end;gap:10px;margin-top:15px;padding-top:15px;border-top:1px solid #eee}.form-actions button{padding:10px 20px;border:none;border-radius:5px;cursor:pointer;font-weight:700;font-size:.95em;transition:background-color .2s ease,box-shadow .2s ease}.form-actions button[type=submit]{background-color:#007bff;color:#fff}.form-actions button[type=submit]:hover:not(:disabled){background-color:#0056b3;box-shadow:0 2px 4px #0000001a}.form-actions .cancel-button{background-color:#6c757d;color:#fff}.form-actions .cancel-button:hover:not(:disabled){background-color:#5a6268}.form-actions button:disabled{background-color:#ccc;cursor:not-allowed;opacity:.7}.patient-history-row td{background-color:#f8f9fa}input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=datetime-local],input[type=search],input[type=tel],select,textarea{background-color:#fff!important;color:#333!important;border:1px solid #ccc!important}input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,input[type=number]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=search]:focus,input[type=tel]:focus,select:focus,textarea:focus{background-color:#fff!important;color:#333!important;border-color:#007bff!important;outline:none!important}.search-container input,.patient-form input,.patient-form select,.patient-form textarea,.appointment-form-fields input,.appointment-form-fields select,.appointment-form-fields textarea{background-color:#fff!important;color:#333!important;border:1px solid #ccc!important}@media screen and (max-width: 768px){input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=datetime-local],input[type=search],input[type=tel],select,textarea{background-color:#fff!important;color:#333!important;border:1px solid #ccc!important}}
