*,body{padding:0}.text-content,body{font-family:var(--font-main)}:root{--primary:#3498db;--primary-dark:#2980b9;--secondary:#6c757d;--success:#28a745;--warning:#ffc107;--danger:#e74c3c;--light:#f8f9fa;--dark:#2c3e50;--border:#ddd;--shadow:0 2px 10px rgba(0,0,0,0.1);--shadow-hover:0 8px 15px rgba(0,0,0,0.2);--radius:10px;--radius-sm:5px;--font-main:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;--font-size:16px;--line-height:1.6;--transition:all 0.3s ease}*{box-sizing:border-box;margin:0}html{font-size:100%;scroll-behavior:smooth}body{line-height:var(--line-height);color:#333;background-color:var(--light);font-size:var(--font-size);overflow-x:hidden}.page-wrapper{min-height:100vh;display:flex;flex-direction:column}.main-container{width:100%;max-width:1200px;margin:20px auto;padding:20px;background:#fff;box-shadow:var(--shadow);border-radius:var(--radius);flex:1}.form-group,.form-row,.form-section h2{margin-bottom:15px}h1,h2,h3{color:var(--dark);margin-bottom:20px;font-weight:600}h1{border-bottom:2px solid var(--primary);padding-bottom:10px;font-size:1.8rem}h2{font-size:1.5rem;color:var(--primary);border-bottom:1px solid var(--border);padding-bottom:8px;margin-top:20px}label{display:block;margin-bottom:5px;font-weight:700;color:#555;font-size:.95em}input[list],input[type=date],input[type=email],input[type=number],input[type=password],input[type=text],input[type=time],select,textarea{width:100%;padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:16px;transition:var(--transition)}input:focus,select:focus,textarea:focus{outline:0;border-color:var(--primary);box-shadow:0 0 0 3px rgba(52,152,219,.2)}.form-row{display:flex;gap:15px;flex-wrap:wrap}.form-row .form-group{flex:1;min-width:200px}.info-item,.user-info{justify-content:space-between}.form-section{background:var(--light);padding:20px;border-radius:var(--radius-sm);margin-bottom:20px;border-left:4px solid var(--primary)}.form-section h2{color:var(--dark);padding-bottom:8px;border-bottom:1px solid var(--border)}.persona-form{border:1px solid var(--border);padding:15px;margin-bottom:20px;border-radius:var(--radius-sm);background-color:#f9f9f9}.btn,.btn-pdf,.btn-primary,.btn-secondary,.btn-warning,button{background-color:var(--primary);color:#fff;padding:12px 20px;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:16px;text-decoration:none;display:inline-block;transition:var(--transition);min-height:44px}.error,.mensaje{padding:10px;margin-bottom:15px}.action-card,.btn-badge{text-decoration:none;transition:.3s;text-align:center}.btn-pdf:hover,.btn-primary:hover,.btn-secondary:hover,.btn-warning:hover,.btn:hover,button:hover{background-color:var(--primary-dark)}.btn-secondary,.btn-secundario{background-color:var(--secondary)}.btn-secondary:hover,.btn-secundario:hover{background-color:#5a6268}.btn-warning,.estado-borrador,.estado-pendiente{background-color:var(--warning);color:#000}.btn-warning:hover{background-color:#e0a800}.btn-pdf{background-color:var(--danger)}.btn-pdf:hover{background-color:#c0392b}.error{color:var(--danger);border:1px solid var(--danger);border-radius:var(--radius-sm);background-color:#fadbd8}.mensaje{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb;border-radius:var(--radius-sm)}.info-card,.solicitud-info{background-color:var(--light);padding:20px;border-radius:var(--radius-sm);margin-bottom:20px;border-left:4px solid var(--primary)}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:15px;margin-top:15px}.info-item{display:flex;padding:10px;background:#fff;border-radius:var(--radius-sm);border:1px solid var(--border)}.estado-badge{padding:4px 12px;border-radius:20px;font-size:.9em;font-weight:700;text-transform:capitalize}.estado-citada{background-color:#17a2b8;color:#fff}.estado-final,.estado-realizada{background-color:var(--success);color:#fff}.estado-concluida{background-color:var(--secondary);color:#fff}.estado-no-asistencia{background-color:var(--danger);color:#fff}.conciliacion-info,.persons-section{margin:20px 0}.persons-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:20px;margin-top:15px}.person-card,.persona-detalle{background:#fff;border:1px solid var(--border);border-radius:var(--radius-sm);padding:20px;margin-bottom:15px}.person-details p{margin-bottom:8px;padding:5px 0;border-bottom:1px solid #f0f0f0}.checkbox-item:last-child,.person-details p:last-child{border-bottom:none}.info-section{background:#fff;border:1px solid var(--border);border-radius:var(--radius-sm);padding:20px;margin-bottom:20px}.text-content{background:var(--light);padding:15px;border-radius:var(--radius-sm);margin-top:10px;line-height:1.6}.acciones,.acciones-documento,.actions-section{background:var(--light);padding:20px;border-radius:var(--radius-sm);margin:20px 0}.acciones-botones,.actions-grid,.nav-buttons{display:flex;gap:15px;margin:15px 0;flex-wrap:wrap}.accion-form,.action-form{margin:0}.checkbox-group{border:1px solid var(--border);padding:15px;border-radius:var(--radius-sm);background-color:#f9f9f9;max-height:300px;overflow-y:auto}.checkbox-item{margin-bottom:10px;padding:8px;border-bottom:1px solid #eee;display:flex;align-items:center;gap:10px}.header-with-action,.user-info{display:flex;margin-bottom:20px}.checkbox-item input[type=checkbox]{margin:0;transform:scale(1.2)}.checkbox-item label{font-weight:400;cursor:pointer;display:inline-block;width:calc(100% - 30px);vertical-align:middle}input[type=checkbox]:checked+label{background-color:#e8f4f8;padding:5px;border-radius:3px}.user-info{background-color:#587d89;padding:10px;border-radius:4px;align-items:center}.header-with-action{justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px}.navegacion,.navigation-section{text-align:center;margin-top:20px}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch;position:relative;margin:15px 0}.table-responsive::after{content:'Desliza →';position:absolute;right:5px;bottom:5px;background:rgba(0,0,0,.7);color:#fff;padding:2px 6px;border-radius:3px;font-size:.7em;pointer-events:none;opacity:0;transition:opacity .3s}.table-responsive:hover::after{opacity:1}.tabla-datos{width:100%;border-collapse:collapse;margin-top:15px;font-size:.95em;background:#fff;border-radius:var(--radius-sm);overflow:hidden;box-shadow:0 1px 5px rgba(0,0,0,.1)}.tabla-datos td,.tabla-datos th{padding:12px 10px;text-align:left;border-bottom:1px solid var(--border)}.tabla-datos th{background-color:var(--primary);color:#fff;font-weight:700}.tabla-datos tr:hover{background-color:#f5f5f5}.text-muted{color:#6c757d!important}.welcome-message{background:linear-gradient(135deg,#c1c3cd 0,#3179ab 100%);color:#fff;padding:20px;border-radius:10px;margin-bottom:30px}.welcome-message h2{color:#fff;border:none;padding-bottom:0;font-size:1.6rem}.quick-actions{margin-top:30px}.action-grid,.menu{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:20px}.action-grid{gap:20px}.action-card{background:#fff;border:1px solid var(--border);border-radius:10px;padding:30px 20px;color:#333;box-shadow:0 4px 6px rgba(0,0,0,.1)}.action-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-hover);color:var(--primary)}.action-card i{margin-bottom:15px;display:block;font-size:2em}.action-card span{font-weight:700;font-size:1.1em}.menu{gap:15px}.menu .btn{text-align:center;padding:15px}.btn-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;font-size:.85em;font-weight:700;border-radius:20px;color:#fff!important;background-color:var(--warning);min-width:80px}.btn-badge:hover{background-color:#e0a800;transform:translateY(-1px)}.btn-badge i{font-size:.9em}.btn-badge.gestionar{background-color:#ff9800}.btn-badge.gestionar:hover{background-color:#e68a00}.acciones-links{display:flex;flex-direction:column;gap:6px;align-items:start}.main-footer{background-color:#f8f9fa;border-top:1px solid #dee2e6;padding:15px 0;text-align:center;color:#6c757d;font-size:.85em;margin-top:auto;line-height:1.4}.footer-content p{margin:0;padding:0 15px;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;font-size:.85em}.footer-divider{color:#ccc;margin:0 4px}.footer-copyright,.footer-location{white-space:nowrap}.mensaje-busqueda-persona{padding:8px 12px;border-radius:4px;margin-top:5px;font-size:.9em;display:flex;align-items:center;gap:5px;background:#e8f4f8;border:1px solid #b6e0f7}.mensaje-busqueda-persona .cargar-datos-btn{padding:4px 8px;font-size:.85em;background:var(--primary);color:#fff;border:none;border-radius:4px;cursor:pointer}@media (max-width:768px){.acciones-botones,.actions-grid,.form-row,.nav-buttons{flex-direction:column}.main-container{padding:15px;margin:10px auto}h1{font-size:1.5rem}h2{font-size:1.3rem}.form-row{gap:10px}.form-row .form-group{min-width:100%}.info-grid,.persons-grid{grid-template-columns:1fr}.header-with-action{flex-direction:column;align-items:flex-start}.detail-item,.info-item{flex-direction:column;gap:5px}.tabla-datos{font-size:.9em}.persona-form{padding:10px}.user-info{flex-direction:column;gap:10px;text-align:center}.btn-badge{font-size:.8em;padding:4px 8px}.form-section h2{font-size:1.2em;margin-top:15px}.form-section h3{font-size:1.1em}.main-footer{padding:15px 0;font-size:.85em}.footer-content p{margin:4px 0;padding:0 10px}}@media (max-width:480px){.main-container{padding:10px;margin:5px auto}h1{font-size:1.3rem}h2{font-size:1.1rem}.form-section h2{font-size:1.1em}input[type=email],input[type=password],input[type=text],select,textarea{font-size:14px;padding:8px}.btn,button{padding:10px 16px;font-size:14px;min-height:40px}.action-grid,.info-grid,.menu,.persons-grid{grid-template-columns:1fr}.acciones-botones,.actions-grid,.nav-buttons{flex-direction:column;gap:8px}.btn-badge{font-size:.75em;padding:3px 6px;min-width:70px}.tabla-datos{font-size:.85em}.tabla-datos td,.tabla-datos th{padding:8px 6px}.info-section,.person-card,.persona-form{padding:12px}.user-info{padding:8px;font-size:.9em}.main-footer{padding:10px 0;font-size:.8em}.footer-content p{font-size:.8em;gap:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 10px}.footer-content p br{display:none}.footer-content p::after{content:" • "}.footer-content p::before{content:""}}