:root{--color-primario: #1f7a8c;--color-primario-contraste: #ffffff;--color-primario-hover: #1a6675;--color-fondo: #f4f6f8;--color-superficie: #ffffff;--color-texto: #1f2933;--color-texto-suave: #616e7c;--color-borde: #e1e6ea;--color-hover: #f0f3f5;--color-peligro: #dd5e57;--color-peligro-hover: #c03d36;--color-aviso: #8a5a00;--color-aviso-suave: #fff5e0;--color-exito: #2f9e44;--color-info: #1f7a8c;--espacio-xs: .25rem;--espacio-s: .5rem;--espacio-m: 1rem;--espacio-l: 1.5rem;--espacio-xl: 2rem;--radio: .5rem;--radio-chico: .25rem;--radio-grande: .625rem;--sombra: 0 1px 3px rgb(0 0 0 / 8%);--sombra-alta: 0 4px 16px rgb(0 0 0 / 10%);--fuente: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Helvetica Neue", sans-serif}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--fuente);font-size:1rem;line-height:1.5;color:var(--color-texto);background-color:var(--color-fondo);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--color-primario);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;cursor:pointer;border:none;background:none;color:inherit}img{max-width:100%;display:block}input,select,textarea{width:100%;min-height:2.75rem;padding:var(--espacio-s) var(--espacio-m);font:inherit;color:var(--color-texto);background-color:var(--color-superficie);border:1px solid var(--color-borde);border-radius:var(--radio)}input::placeholder,textarea::placeholder{color:var(--color-texto-suave)}textarea{min-height:6rem;resize:vertical}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%23616e7c' d='M4.47 6.47a.75.75 0 0 1 1.06 0L8 8.94l2.47-2.47a.75.75 0 1 1 1.06 1.06l-3 3a.75.75 0 0 1-1.06 0l-3-3a.75.75 0 0 1 0-1.06Z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2.25rem}input[type=checkbox]{width:1rem;height:1rem;min-height:auto;padding:0;accent-color:var(--color-primario)}label{display:flex;flex-direction:column;gap:var(--espacio-xs)}label>span:first-child{font-size:.875rem;font-weight:600;color:var(--color-texto)}:focus-visible{outline:2px solid var(--color-primario);outline-offset:2px}.boton,.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--espacio-s);min-height:2.75rem;padding:var(--espacio-s) var(--espacio-l);font-size:1rem;font-weight:600;color:var(--color-primario-contraste)!important;background-color:var(--color-primario)!important;border:none!important;border-radius:var(--radio);text-decoration:none!important;transition:background-color .15s ease-in-out;white-space:nowrap}.boton:hover:not(:disabled),.btn:hover:not(:disabled){background-color:var(--color-primario-hover)!important;text-decoration:none!important}.boton:disabled,.btn:disabled{opacity:.6;cursor:not-allowed}.boton--secundario,.btn-sec,.boton-secundario{display:inline-flex;align-items:center;justify-content:center;gap:var(--espacio-s);min-height:2.75rem;padding:var(--espacio-s) var(--espacio-l);font-size:1rem;font-weight:600;color:var(--color-texto)!important;background-color:#f8f9fa!important;border:1px solid var(--color-borde)!important;border-radius:var(--radio)!important;text-decoration:none!important;transition:background-color .15s ease-in-out;white-space:nowrap}.boton--secundario:hover:not(:disabled),.btn-sec:hover:not(:disabled),.boton-secundario:hover:not(:disabled){background-color:var(--color-hover)!important;text-decoration:none!important}.boton--chico{min-height:2.25rem!important;padding:var(--espacio-xs) var(--espacio-m)!important;font-size:.9375rem!important;border-radius:var(--radio-chico)!important}.boton--texto,.btn-ghost{color:var(--color-primario)!important;background-color:transparent!important;border:none!important;padding-inline:var(--espacio-s)}.boton--texto:hover:not(:disabled),.btn-ghost:hover:not(:disabled){background-color:var(--color-hover)!important;text-decoration:none!important}.boton--peligro,.btn-danger{color:var(--color-primario-contraste)!important;background-color:var(--color-peligro)!important;border:none!important}.boton--peligro:hover:not(:disabled),.btn-danger:hover:not(:disabled){background-color:var(--color-peligro-hover)!important}.boton--chico,.btn-sm{min-height:2.25rem!important;padding:var(--espacio-xs) var(--espacio-m)!important;font-size:.9375rem!important;border-radius:var(--radio-chico)!important}.panel{display:flex;flex-direction:column;gap:var(--espacio-l);max-width:90rem;margin:0 auto}.cabecera{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--espacio-m);flex-wrap:wrap}.cabecera-info{display:flex;flex-direction:column;gap:var(--espacio-xs)}.cabecera h1{margin:0;font-size:1.75rem;font-weight:700}.subtitulo{margin:0;color:var(--color-texto-suave)}.acciones-cabecera{display:flex;align-items:center;gap:var(--espacio-s);flex-wrap:wrap}.filtros{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--espacio-m);padding:var(--espacio-m) var(--espacio-l);background-color:var(--color-superficie);border:1px solid var(--color-borde);border-radius:var(--radio);box-shadow:var(--sombra)}.filtros .campo,.filtros label{display:flex;flex-direction:column;gap:var(--espacio-xs);min-width:220px;flex:1 1 220px}.filtros .acciones{display:flex;align-items:center;gap:var(--espacio-s);flex:0 0 auto;padding-bottom:.125rem}.tabla-contenedor{overflow-x:auto;background-color:var(--color-superficie);border:1px solid var(--color-borde);border-radius:var(--radio);box-shadow:var(--sombra)}.table,.tabla{width:100%;border-collapse:collapse;min-width:720px}.table th,.tabla th{text-align:left;font-weight:600;font-size:.875rem;color:var(--color-texto-suave);background-color:var(--color-hover);padding:var(--espacio-s) var(--espacio-m);border-bottom:1px solid var(--color-borde);white-space:nowrap}.table td,.tabla td{padding:var(--espacio-s) var(--espacio-m);border-bottom:1px solid var(--color-borde);vertical-align:middle}.table tbody tr:last-child td,.tabla tbody tr:last-child td{border-bottom:none}.table tbody tr:hover,.tabla tbody tr:hover{background-color:var(--color-hover)}.table td.acciones,.tabla td.acciones{text-align:right;white-space:nowrap}.table td.acciones a,.table td.acciones button,.tabla td.acciones a,.tabla td.acciones button{display:inline-flex;align-items:center;justify-content:center;min-height:2.25rem;padding:var(--espacio-xs) var(--espacio-m);border-radius:var(--radio-chico);border:1px solid var(--color-borde);background-color:var(--color-superficie);color:var(--color-texto);font-weight:600;text-decoration:none;margin-left:var(--espacio-xs)}.table td.acciones a:first-child,.table td.acciones button:first-child,.tabla td.acciones a:first-child,.tabla td.acciones button:first-child{margin-left:0}.table td.acciones a:hover,.table td.acciones button:hover,.tabla td.acciones a:hover,.tabla td.acciones button:hover{background-color:var(--color-hover);text-decoration:none}.table td.acciones a.boton,.table td.acciones button.boton,.tabla td.acciones a.boton,.tabla td.acciones button.boton{background-color:var(--color-primario);color:var(--color-primario-contraste);border-color:transparent}.table td.acciones a.boton:hover,.table td.acciones button.boton:hover,.tabla td.acciones a.boton:hover,.tabla td.acciones button.boton:hover{background-color:var(--color-primario-hover)}.badge{display:inline-flex;align-items:center;padding:0 var(--espacio-s);min-height:1.75rem;border-radius:999px;font-size:.875rem;font-weight:600;background-color:var(--color-hover);color:var(--color-texto-suave);border:1px solid var(--color-borde)}.badge-ok{background-color:#f1f8f3;color:var(--color-exito);border-color:#c6e6cc}.badge-warn{background-color:var(--color-aviso-suave);color:var(--color-aviso);border-color:#f5d9a6}.badge-bad{background-color:#fdecea;color:var(--color-peligro);border-color:#f5c6c2}.badge-info{background-color:#f0f7f9;color:var(--color-info);border-color:#c9e3ea}.tarjetas{display:none;flex-direction:column;gap:var(--espacio-m)}.tarjeta{display:flex;flex-direction:column;gap:var(--espacio-s);padding:var(--espacio-m);background-color:var(--color-superficie);border:1px solid var(--color-borde);border-radius:var(--radio);box-shadow:var(--sombra)}.tarjeta header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--espacio-m)}.tarjeta-titulo{display:flex;flex-direction:column;gap:var(--espacio-xs)}.tarjeta-nombre{font-weight:600}.tarjeta-sub,.tarjeta-codigo{color:var(--color-texto-suave);font-size:.9375rem}.tarjeta-fila{display:flex;align-items:center;justify-content:space-between;color:var(--color-texto-suave)}.tarjeta-fila strong{color:var(--color-texto)}.tarjeta-acciones{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--espacio-s)}.estado-lista{color:var(--color-texto-suave);padding:var(--espacio-m)}.aviso-error{color:var(--color-peligro)}.formulario{display:flex;flex-direction:column;gap:var(--espacio-m);max-width:560px;padding:var(--espacio-l);background-color:var(--color-superficie);border:1px solid var(--color-borde);border-radius:var(--radio);box-shadow:var(--sombra)}.campo{display:flex;flex-direction:column;gap:var(--espacio-xs)}.acciones,.form-actions{display:flex;flex-wrap:wrap;gap:var(--espacio-s)}@media(max-width:720px){.tabla-contenedor{display:none}.tarjetas{display:flex}.filtros{padding:var(--espacio-m)}.filtros .campo,.filtros label{flex:1 1 100%;min-width:100%}.filtros .acciones{width:100%;justify-content:flex-start}}
