/* VC Pasajes 3.0.2 — lenguaje visual uniforme para ABM, listados y editores. */
main{max-width:1320px;padding:0 24px;margin:28px auto;color:#11274a}
main>h1,main>.heading h1{font-size:clamp(25px,2.3vw,34px);letter-spacing:-.025em;color:#10274b;margin:0 0 15px;font-weight:750}
main>p:not(.success):not(.error){color:#52647c;font-size:14px;line-height:1.65}
main .panel,main .stats article{background:#fff;border:1px solid #dce5f0;border-radius:14px;box-shadow:0 4px 15px rgba(18,47,83,.06);padding:26px 28px;margin:20px 0}
main .panel h2,main .panel h3{color:#10274b;letter-spacing:-.015em}
main .panel h2{font-size:20px;margin:0 0 18px}
main .panel h3{font-size:17px;margin:0 0 14px}
main label{color:#243c5d;font-size:14px;font-weight:650}
main input:not([type=checkbox]):not([type=radio]):not([type=hidden]),main select,main textarea{border:1px solid #b9c9dd;border-radius:7px;background:#fff;color:#10274b;min-width:0;min-height:43px;padding:10px 13px;box-shadow:none}
main input:focus-visible,main select:focus-visible,main textarea:focus-visible{outline:2px solid #9ec0eb;outline-offset:1px}
main button,main .button{background:#103766;color:#fff;border:1px solid #103766;border-radius:7px;font-weight:600;min-height:40px;transition:background .15s ease}
main button:hover,main .button:hover{background:#1a4d87}
main .ghost,main button.ghost{background:#fff;color:#103766;border:1px solid #b9c9dd}
main .ghost:hover,main button.ghost:hover{background:#eef3f9}
main .heading{margin-bottom:18px;gap:16px}
main .filters{display:flex;align-items:end;gap:12px;padding:20px 24px;background:#fff;border:1px solid #dce5f0;border-radius:14px;box-shadow:0 4px 15px rgba(18,47,83,.06);margin-bottom:20px}
main .filters input,main .filters select{margin:0;min-height:43px}
main .filters button{min-height:43px}
main .panel:has(>table){overflow-x:auto}
main .panel>table{border-collapse:collapse;width:100%;font-size:14px}
main .panel>table thead th{background:#eef3f9;color:#243c5d;font-weight:700;padding:13px 12px;white-space:nowrap;border-bottom:0}
main .panel>table thead th:first-child{border-radius:7px 0 0 7px}
main .panel>table thead th:last-child{border-radius:0 7px 7px 0}
main .panel>table tbody td{border-bottom:1px solid #e0e8f1;padding:12px;vertical-align:middle}
main .panel>table tbody tr:hover{background:#f8fbff}
main .panel>table tbody tr:last-child td{border-bottom:0}
main .panel>table td a{color:#103766;font-weight:650;text-decoration:none}
main .panel>table td a:hover{text-decoration:underline}
main .grid{gap:16px 20px}
main .vc-record-panel{margin-top:18px}
main .vc-record-panel>.grid,main .vc-record-panel form>.grid{margin-bottom:18px}
main details{border-radius:10px}
main .stats article b{color:#103766}
main .success{border:1px solid #b7e4ca}
main .error{border:1px solid #fecdd3}
/* Los editores específicos mantienen su composición; se normalizan controles y tarjetas. */
@media(max-width:800px){main{padding:0 15px;margin:20px auto}main .panel,main .stats article{padding:19px 16px}main .filters{padding:16px;flex-wrap:wrap}main .filters>*{flex:1 1 180px}main .panel>table{min-width:620px}}
@media(max-width:550px){main .heading{align-items:stretch}main .heading .button{width:100%;text-align:center}main .filters{flex-direction:column;align-items:stretch}main .filters>*{width:100%}}
