*{box-sizing:border-box}body{margin:0}.app{color:#1f2937;background:#f5f6f8;min-height:100vh;font-family:Arial,sans-serif;display:flex}.sidebar{box-sizing:border-box;background:#fff;border-right:1px solid #e5e7eb;flex-direction:column;width:240px;min-height:100vh;padding:28px 18px;display:flex}.sidebar-header{background:linear-gradient(90deg,#33507e,#4c73b3);border-radius:10px;padding:16px 14px}.sidebar-header h2{color:#fff;margin:0;font-size:22px;font-weight:700}.sidebar-header span{color:#dbe4f3;margin-top:4px;font-size:13px;display:block}.sidebar-nav{margin-top:24px}.sidebar-grupo{margin-bottom:20px}.sidebar-grupo:last-child{margin-bottom:0}.sidebar-grupo-titulo{letter-spacing:.05em;text-transform:uppercase;color:#111827;margin:0 0 6px;padding:0 12px;font-size:11px;font-weight:700}.sidebar-icono{vertical-align:-2px;margin-right:6px}.sidebar-nav ul{margin:0;padding:0;list-style:none}.sidebar-nav li{color:#4b5563;cursor:pointer;border-radius:8px;margin-bottom:4px;padding:11px 12px;font-size:14px;transition:background .2s,color .2s}.sidebar-nav li a{color:inherit;text-decoration:none;display:block}.sidebar-nav li:hover{color:#111827;background:#f3f4f6}.sidebar-footer{margin-top:auto;padding-top:30px}.sidebar-footer button{color:#4b5563;cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:8px;width:100%;padding:10px}.sidebar-footer button:hover{background:#f3f4f6}.main-content{flex:1;padding:40px}.main-content h1{font-size:28px}.main-content p{color:#5c5859}.page-header{justify-content:space-between;align-items:center;margin-bottom:30px;display:flex}.page-header h1{margin-bottom:6px}.page-header p{margin:0}.primary-button{color:#fff;cursor:pointer;background:#4c5f88;border:none;border-radius:8px;padding:10px 16px;font-size:14px}.content-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden}.table-header{color:#6b7280;border-bottom:1px solid #e5e7eb;grid-template-columns:1.5fr 1.2fr 1fr 1.5fr 1.2fr .8fr;padding:16px 20px;font-size:13px;font-weight:600;display:grid}.empty-state{text-align:center;padding:60px 20px}.empty-state h3{margin-bottom:8px;font-size:16px}.empty-state p{color:#6b7280;margin:0;font-size:14px}.table-row{border-bottom:1px solid #f0f0f0;grid-template-columns:1.5fr 1.2fr 1fr 1.5fr 1.2fr .8fr;align-items:center;padding:16px 20px;font-size:14px;display:grid}.table-row:last-child{border-bottom:none}.action-button{color:#374151;cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:7px 12px}.action-button:hover{background:#f3f4f6}.form-card{background:#e9ebef;border:1px solid #d5d9df;border-radius:10px;flex-direction:column;gap:18px;max-width:560px;padding:28px;display:flex}.form-field{flex-direction:column;gap:6px;display:flex}.form-field label{color:#374151;font-size:13px;font-weight:600}.form-field input,.form-field select,.form-field textarea{color:#1f2937;background:#fff;border:1px solid #cfd4db;border-radius:8px;padding:10px 12px;font-size:14px}.form-field textarea{resize:vertical;font-family:inherit}.form-field input:disabled{color:#6b7280;background:#f3f4f6}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#4c5f88;outline:none}.form-actions{gap:10px;margin-top:6px;display:flex}.danger-button{color:#b91c1c;cursor:pointer;background:#fff;border:1px solid #b91c1c;border-radius:8px;padding:10px 16px;font-size:14px}.danger-button:hover{background:#fee2e2}.danger-button:disabled{opacity:.6;cursor:default}.zona-peligro{border-top:1px solid #e5e7eb;margin-top:40px;padding-top:24px}.peligro-card{background:#fef2f2;border:1px solid #fca5a5;border-radius:10px;max-width:560px;padding:20px 28px}.peligro-card>p{margin:0 0 14px}.buscador-barra{align-items:center;gap:14px;margin-bottom:16px;display:flex}.buscador{flex:1;max-width:460px;position:relative}.buscador-input{color:#1f2937;background:#fff;border:1px solid #d5d9df;border-radius:8px;width:100%;padding:10px 34px 10px 12px;font-size:14px}.buscador-input:focus{border-color:#4c5f88;outline:none}.buscador-input::-webkit-search-cancel-button{display:none}.buscador-limpiar{color:#6b7280;cursor:pointer;background:0 0;border:none;font-size:20px;line-height:1;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.buscador-limpiar:hover{color:#1f2937}.buscador-resultados{color:#6b7280;font-size:13px}.tabla-casos{grid-template-columns:1.4fr 1.7fr 1.6fr 1fr .9fr .7fr;column-gap:12px}.tabla-documentos{grid-template-columns:1.5fr 1.3fr 1.8fr .9fr .7fr;column-gap:12px}.tabla-pagos{grid-template-columns:.9fr 1.4fr .9fr 1fr 1.2fr .7fr;column-gap:12px}.tabla-empleados{grid-template-columns:1.5fr 1.7fr 1fr .8fr .7fr .7fr;column-gap:12px}.tabla-usuarios{grid-template-columns:1.6fr 1.4fr 1.3fr .7fr;column-gap:12px}.main-content .form-hint{color:#6b7280;margin:0;font-size:12px}.form-check{color:#374151;cursor:pointer;align-items:center;gap:8px;font-size:14px;display:flex}.tabla-notas{grid-template-columns:1fr 1.3fr 1.1fr 2.6fr .7fr;column-gap:12px}.tabla-conversaciones{grid-template-columns:1.3fr 1fr 1fr 1.3fr .7fr;column-gap:12px}.tabla-formularios{grid-template-columns:.8fr 1.2fr 1.7fr 1.1fr 1fr .7fr;column-gap:12px}.marca-nuevo{color:#2563eb}.texto-multilinea{white-space:pre-wrap;overflow-wrap:anywhere}.back-button{color:#4b5563;cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:16px;padding:7px 12px;font-size:14px}.back-button:hover{background:#f3f4f6}.detail-card{background:#e9ebef;border:1px solid #d5d9df;border-radius:10px;max-width:560px;padding:12px 28px 28px}.detail-row{color:#1f2937;overflow-wrap:anywhere;border-bottom:1px solid #d5d9df;grid-template-columns:1fr 2fr;gap:12px;padding:14px 0;font-size:14px;display:grid}.detail-label{color:#4b5563;font-weight:600}.detail-actions{margin-top:20px}.detail-card-simple{padding-bottom:0}.detail-card-simple .detail-row:last-child{border-bottom:none}.detail-link{color:#4c5f88;text-decoration:underline}.main-content .section-title{margin:32px 0 12px;font-size:18px}.section-header{justify-content:space-between;align-items:center;max-width:560px;margin:32px 0 12px;display:flex}.main-content .section-header .section-title{margin:0}.section-header+.form-error{margin-bottom:10px}.detail-row-con-accion{grid-template-columns:1fr 2fr auto;align-items:center}.row-button{color:#b91c1c;cursor:pointer;background:#fff;border:1px solid #e5b4b4;border-radius:6px;padding:4px 10px;font-size:12px}.row-button:hover{background:#fee2e2}.form-card-inline{margin-top:12px}.main-content .form-error{color:#b91c1c;margin:0;font-size:14px}.dashboard-header{background:linear-gradient(90deg,#33507e,#4c73b3);border-radius:10px;align-items:center;gap:18px;margin-bottom:24px;padding:22px 28px;display:flex}.dashboard-header-texto{flex:1}.dashboard-header h1{color:#fff;margin:0;font-size:22px}.dashboard-header p{color:#dbe4f3;margin:4px 0 0;font-size:14px}.dashboard-avatar{color:#fff;background:#ffffff2e;border:2px solid #ffffff80;border-radius:50%;justify-content:center;align-items:center;width:56px;min-width:56px;height:56px;font-size:20px;font-weight:700;display:flex}.dashboard-imagen{background:#ffffffd9;border:2px solid #ffffff80;border-radius:50%;justify-content:center;align-items:flex-end;width:64px;min-width:64px;height:64px;display:flex;overflow:hidden}.dashboard-stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;display:grid}.dashboard-stat-card{color:inherit;background:#fff;border:1px solid #e5e7eb;border-radius:10px;flex-direction:column;gap:4px;padding:18px;text-decoration:none;transition:box-shadow .15s,border-color .15s;display:flex}.dashboard-stat-card:hover{border-color:#d5d9df;box-shadow:0 2px 8px #0000000f}.dashboard-stat-numero{color:#1f2937;font-size:28px;font-weight:700}.dashboard-stat-etiqueta{color:#6b7280;font-size:13px}.dashboard-widgets{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:20px;display:grid}.dashboard-widget{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:16px}.dashboard-widget-titulo{color:#1f2937;margin:0 0 8px;font-size:15px;font-weight:700}.dashboard-widget-lista{flex-direction:column;max-height:123px;display:flex;overflow-y:auto}.dashboard-widget-item{color:#1f2937;border-bottom:1px solid #f0f1f3;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;font-size:13px;text-decoration:none;display:flex}.dashboard-widget-item:last-child{border-bottom:none}.dashboard-widget-item:hover{color:#4c5f88}.dashboard-widget-item span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-widget-item-fecha{color:#6b7280;flex-shrink:0;font-size:12px}.dashboard-widget-vacio{color:#6b7280;margin:0;padding:10px 0;font-size:13px}.dashboard-imagen svg{width:130%;height:130%;display:block}.paginador{flex-wrap:wrap;justify-content:center;gap:6px;padding:16px;display:flex}.paginador-boton{color:#4b5563;cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:6px;min-width:34px;padding:6px 10px;font-size:13px}.paginador-boton:hover:not(:disabled){background:#f3f4f6}.paginador-boton:disabled{color:#d1d5db;cursor:not-allowed}.paginador-boton-activo{color:#fff;background:#4c5f88;border-color:#4c5f88}.sidebar-toggle-movil,.sidebar-cerrar-movil,.sidebar-fondo{display:none}.sidebar-header{position:relative}@media (width<=768px){.sidebar-toggle-movil{z-index:1100;cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;line-height:1;display:flex;position:fixed;top:12px;left:12px;box-shadow:0 1px 4px #0000001f}.sidebar-fondo{z-index:1050;background:#0006;display:block;position:fixed;inset:0}.sidebar{z-index:1060;width:260px;max-width:82vw;height:100vh;transition:transform .25s;position:fixed;top:0;left:0;transform:translate(-100%);box-shadow:2px 0 10px #00000026}.sidebar.abierto{transform:translate(0)}.sidebar-cerrar-movil{cursor:pointer;color:#fff;background:0 0;border:none;width:32px;height:32px;font-size:18px;display:block;position:absolute;top:0;right:0}.main-content{padding:72px 16px 24px}.page-header{flex-direction:column;align-items:flex-start;gap:12px}.buscador-barra{flex-wrap:wrap}.form-card,.detail-card{padding:16px}.section-header{flex-direction:column;align-items:flex-start;gap:8px}.content-card{overflow-x:auto}.table-header,.table-row{min-width:640px}}@media (width<=480px){.detail-row{grid-template-columns:1fr;gap:4px}}
