/* Base local de los controles y utilidades usados por las vistas de referencia. */
* { box-sizing: border-box; }
body { margin:0; line-height:1.5; background:#fff; }
button,input,select { font:inherit; margin:0; }
button,summary { cursor:pointer; } button:disabled { cursor:wait; opacity:.65; }
a { color:#0d6efd; } svg { vertical-align:middle; }
p { margin:0 0 1rem; } h1 { margin:0 0 .5rem; font-size:1.6rem; }
[hidden] { display:none!important; }
.d-flex { display:flex!important; }.flex-column { flex-direction:column!important; }.align-items-center { align-items:center!important; }.justify-content-between { justify-content:space-between!important; }.justify-content-center { justify-content:center!important; }.justify-content-start { justify-content:flex-start!important; }
.w-100 { width:100%!important; }.h-100 { height:100%!important; }.p-3 { padding:1rem!important; }.ps-2 { padding-left:.5rem!important; }.pe-2 { padding-right:.5rem!important; }.mt-2 { margin-top:.5rem!important; }.mt-3 { margin-top:1rem!important; }.mx-3 { margin-left:1rem!important;margin-right:1rem!important; }.gap-2 { gap:.5rem!important; }.text-start { text-align:left!important; }.text-light { color:#f8f9fa!important; }.text-muted { color:#6c757d; }
.btn { display:inline-block; padding:.375rem .75rem; font-size:1rem; font-weight:400; line-height:1.5; color:#212529; text-align:center; vertical-align:middle; text-decoration:none; border:1px solid transparent; border-radius:.375rem; background:transparent; cursor:pointer; }
.btn-primary { color:white;background:#0d6efd;border-color:#0d6efd; }.btn-primary:hover { background:#0b5ed7; }.btn-secondary { color:white;background:#6c757d;border-color:#6c757d; }.btn-danger { color:white;background:#cb3246;border-color:#cb3246; }.btn-link { color:#0d6efd; text-decoration:underline; }
.table { border-collapse:collapse; margin-bottom:1rem; color:inherit; vertical-align:top; border-color:#dee2e6; }.table th { font-weight:700; }.table th,.table td { padding:.5rem; border-bottom:1px solid #dee2e6; }.table-hover tbody tr:hover td { background:rgba(0,0,0,.075); }.align-middle th,.align-middle td { vertical-align:middle; }
.col-form-label { display:block; padding:.375rem 0; line-height:1.5; }.form-control,.form-select { display:block; width:100%;padding:.375rem .75rem;font-size:1rem;line-height:1.5;color:#212529;background-color:#fff;border:1px solid #dee2e6;border-radius:.375rem; }
.form-select { padding-right:2.25rem; appearance:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px; }
.form-control:focus,.form-select:focus { border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25); }
.alert { padding:1rem; border:1px solid transparent;border-radius:.375rem; }.alert-success { color:#0a3622;background:#d1e7dd;border-color:#a3cfbb; }.alert-danger { color:#58151c;background:#f8d7da;border-color:#f1aeb5; }
.visually-hidden { position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important; }
.pagination { display:flex;list-style:none;padding-left:0;margin:0 0 1rem; }.page-link { display:block;padding:.375rem .75rem;color:#0d6efd;text-decoration:none;background:#fff;border:1px solid #dee2e6; }.page-item.active .page-link { color:#fff;background:#0d6efd;border-color:#0d6efd; }.page-item.disabled .page-link { color:#6c757d;background:#e9ecef; }.page-item:first-child .page-link { border-radius:6px 0 0 6px; }.page-item:last-child .page-link { border-radius:0 6px 6px 0; }.small { font-size:.875em; }.fw-semibold { font-weight:600; }.d-none { display:none!important; }.mb-0 { margin-bottom:0!important; }.flex-fill { flex:1 1 auto!important; }
@media(min-width:576px) { .d-sm-none { display:none!important; }.d-sm-flex { display:flex!important; } }

.table tbody td { color:#000;background:#fff; }.table tbody,.table thead,.table tr,.table th,.table td { border-color:inherit; }.table tbody,.table thead,.table tr { border-style:solid;border-width:0; }.table tbody { vertical-align:inherit; }.table thead { vertical-align:bottom; }
@media(min-width:576px) { .flex-sm-fill { flex:1 1 auto!important; }.align-items-sm-center { align-items:center!important; }.justify-content-sm-between { justify-content:space-between!important; } }
