.modal-content{background:var(--bg-elevated);border:1px solid var(--border);color:var(--ink)}.modal-header{border-bottom:1px solid var(--border)}.modal-footer{border-top:1px solid var(--border)}[data-theme=dark] .btn-close{filter:invert(1) grayscale(100%) brightness(200%)}.swal-theme{background:var(--bg-elevated)!important;color:var(--ink)!important}.swal-theme .swal2-title,.swal-theme .swal2-html-container{color:var(--ink)!important}.swal-theme .swal2-actions .btn{margin:0 .35rem}div:where(.swal2-container) .swal2-popup.swal-theme{border:1px solid var(--border)}.modal-form .form-label{font-weight:600;font-size:.9rem}.modal-form .form-control,.modal-form .form-select{background:var(--bg);border:1px solid var(--border);color:var(--ink)}.modal-form .form-control:focus,.modal-form .form-select:focus{background:var(--bg);color:var(--ink);border-color:var(--ink);box-shadow:0 0 0 .2rem var(--shadow)}.dashboard-hero{padding:3rem 0 1rem}.dashboard-hero h1{font-weight:800;font-size:1.85rem;letter-spacing:-.01em;margin-bottom:.35rem}.dashboard-hero p{color:var(--muted);margin:0}.module-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:1.25rem;padding-bottom:3rem}.module-card{display:block;padding:1.5rem;border:1px solid var(--border);border-radius:1rem;background:var(--bg-elevated);color:var(--ink);text-decoration:none;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.module-card:hover{color:var(--ink);transform:translateY(-4px);border-color:var(--ink);box-shadow:0 16px 32px var(--shadow)}.module-card-icon{width:2.5rem;height:2.5rem;border-radius:.6rem;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#8b5cf6,#06b6d4);color:#fff;margin-bottom:1rem}.module-card-icon svg{width:1.3rem;height:1.3rem}.module-card h2{font-size:1.05rem;font-weight:700;margin-bottom:.25rem}.module-card p{font-size:.85rem;color:var(--muted);margin:0}.module-card.is-disabled{opacity:.55;cursor:default;pointer-events:none}.module-card.is-disabled .module-card-icon{background:var(--border);color:var(--muted)}.module-card-tag{display:inline-block;margin-top:.75rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.admin-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.admin-header h1{font-weight:800;font-size:1.5rem;letter-spacing:-.01em;margin:0}.admin-table-wrap{border:1px solid var(--border);border-radius:1rem;overflow-x:auto;background:var(--bg-elevated);box-shadow:0 12px 28px var(--shadow)}.admin-table{width:100%;margin:0;color:var(--ink);background-color:transparent;border-color:var(--border);font-size:.85rem}.admin-table>:not(caption)>*>*{background-color:transparent;color:inherit}.admin-table thead th{border-bottom:1px solid var(--border);color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;font-weight:700;padding:.65rem .85rem;white-space:nowrap}.admin-table tbody td{padding:.6rem .85rem;border-top:1px solid var(--border);vertical-align:middle}.admin-table tbody tr:hover{background:var(--bg)}.admin-table tbody td:last-child{white-space:nowrap}.admin-table tbody td:last-child form{display:inline-block}.badge-estado{display:inline-block;padding:.25rem .6rem;border-radius:999px;font-size:.75rem;font-weight:700;border:1px solid var(--border)}.badge-estado-activo{color:#22c55e;border-color:#22c55e}.badge-estado-anulado{color:#ef4444;border-color:#ef4444}.badge-pendiente{color:#f59e0b;border-color:#f59e0b;cursor:help}.admin-search{background:var(--bg);border:1px solid var(--border);color:var(--ink);max-width:20rem;flex:1 1 14rem}select.admin-search{max-width:12rem;flex:1 1 9rem}.admin-search:focus{background:var(--bg);color:var(--ink);border-color:var(--ink);box-shadow:0 0 0 .2rem var(--shadow)}.admin-empty{padding:3rem 1.25rem;text-align:center;color:var(--muted)}.btn-sm.btn-dark-outline,.btn-sm.btn-primary-custom{padding:.3rem .75rem;font-size:.85rem}.pagination .page-link{background:var(--bg-elevated);border-color:var(--border);color:var(--ink)}.pagination .page-item.active .page-link{background:var(--ink);border-color:var(--ink);color:var(--bg)}.pagination .page-item.disabled .page-link{background:var(--bg-elevated);border-color:var(--border);color:var(--muted)}
