:root{--ink:#14233f;--muted:#71809a;--green:#123f91;--mint:#eaf2ff;--paper:#f4f7fc;--bs-primary:#123f91}body{background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,sans-serif;font-size:15px}.app-shell{display:flex;min-height:100vh}.sidebar{width:245px;background:#081f58;color:white;padding:32px 22px;display:flex;flex-direction:column;flex-shrink:0}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;font-size:22px;font-weight:750;letter-spacing:2px}.brand small{display:block;font-size:10px;letter-spacing:3.7px;font-weight:500}.brand-mark{display:grid;place-items:center;border:1px solid #74c8eb;border-radius:12px;width:42px;height:48px;color:#dcf5ff;font-size:29px}.sidebar-label{font-size:9px;letter-spacing:1.6px;color:#94b8e6;margin:32px 0 16px}.sidebar nav{display:grid;gap:6px}.sidebar nav a{color:#dce9ff;text-decoration:none;padding:10px 12px;border-radius:8px}.sidebar nav a:hover,.sidebar nav a:focus{background:#173e7a;color:#fff}.sidebar-footer{font-size:12px;color:#c6d9f4;margin-top:auto;padding-top:42px}.sidebar-footer small{color:#95b5df}.main-panel{flex:1;min-width:0}.topbar{display:flex;align-items:center;justify-content:space-between;padding:20px 36px;background:#fff;border-bottom:1px solid #e0e7f1;font-size:13px}.workspace{padding:36px;max-width:1440px;margin:auto}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:750;color:var(--green);margin-bottom:12px}h1{font-size:32px;letter-spacing:-1px;font-weight:650}h2{font-size:21px;letter-spacing:-.4px}h3{font-size:19px}.surface{background:white;border:1px solid #e0e7f1;border-radius:14px;padding:26px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.stat-card{background:white;border:1px solid #e0e7f1;border-radius:14px;padding:24px;display:flex;flex-direction:column}.stat-card span{font-size:13px;color:#61728f}.stat-card strong{font-size:44px;font-weight:600;letter-spacing:-2px;margin:8px 0}.stat-card small{font-size:11px;color:#70809c}.tag{font-size:11px;background:var(--mint);padding:6px 10px;border-radius:20px;white-space:nowrap;color:var(--green)}.accent-surface{background:#eaf4ff}.empty-state{text-align:center;padding:50px 20px;color:#697b96}.empty-state h3{color:var(--ink)}.btn-primary{background:var(--green);border-color:var(--green)}.btn-primary:hover,.btn-primary:focus{background:#092b70;border-color:#092b70}.btn{font-size:13px;border-radius:8px}.form-control,.form-select{border-color:#d4deec;border-radius:8px;padding:11px 13px}.form-control:focus,.form-select:focus{border-color:#009fe3;box-shadow:0 0 0 .2rem #009fe326}.form-label{font-size:13px;font-weight:600}.form-actions{display:flex;gap:12px;margin-top:28px;border-top:1px solid #e9eef6;padding-top:24px}.search-bar{display:flex;gap:12px;margin-bottom:24px}.search-bar .form-control{max-width:420px}.table th{color:#637693;font-size:11px;text-transform:uppercase;letter-spacing:.9px;padding:14px 8px;background:#f7f9fd}.table td{padding:18px 8px;font-size:13px}.status{font-size:10px;font-weight:600;padding:6px 10px;border-radius:20px;display:inline-block;background:#edf1f8;color:#576f90}.status-active{background:#e9f7ed;color:#13752c}.status-suspended,.status-expired{background:#f8e8e6;color:#a34640}.status-pending{background:#fff3d6;color:#956e19}.state-form{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;max-width:360px}.state-form .form-select,.state-form .form-control{font-size:11px;padding:6px;flex:1;min-width:140px}.choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.choice-card{border:1px solid #dce5f1;border-radius:8px;padding:12px;display:block}.choice-card small{display:block;color:#6c7f9d;margin-left:18px}.record-description{max-width:280px;color:#657995;margin:6px 0 0;font-size:12px}.document-row{display:flex;gap:12px;justify-content:space-between;padding:12px 0;border-bottom:1px solid #e6ecf5}.page-footer{padding:24px 36px;font-size:11px;color:#6f809e}.auth-page{background:#f3f7fc}.auth-wrap{max-width:1050px;margin:8vh auto;display:grid;grid-template-columns:1.15fr 1fr;box-shadow:0 25px 70px #08225618;border-radius:22px;overflow:hidden;min-height:620px}.auth-intro{background:#0a286d;color:#edf5ff;padding:54px;display:flex;flex-direction:column;justify-content:center}.auth-intro .eyebrow{color:#8edafa;margin-top:60px}.auth-intro h1{font-size:38px;line-height:1.2}.auth-intro>p:not(.eyebrow){color:#bfd4f5;line-height:1.8;margin-top:20px}.auth-signature{margin-top:auto;padding-top:50px;color:#99bce9;font-size:11px}.auth-card{padding:60px 45px;background:white;display:flex;flex-direction:column;justify-content:center}.auth-card h2{font-size:28px}.auth-card form{margin-top:20px}.auth-link{margin-top:24px;color:var(--green);font-size:13px;text-align:center}@media(max-width:900px){.sidebar{width:200px;padding:25px 15px}.workspace{padding:24px}.topbar{padding:18px 24px}.auth-wrap{margin:30px;min-height:560px}.auth-intro{padding:32px}.auth-card{padding:40px 30px}}@media(max-width:650px){.app-shell{display:block}.sidebar{width:auto;padding:18px}.sidebar-label,.sidebar-footer{display:none}.sidebar nav{display:flex;overflow-x:auto;margin-top:14px;gap:4px}.sidebar nav a{white-space:nowrap;font-size:12px;padding:8px}.brand{font-size:18px}.brand-mark{width:32px;height:36px;font-size:23px}.workspace{padding:20px 14px}h1{font-size:27px}.surface{padding:19px}.topbar{padding:14px;font-size:11px}.section-heading{align-items:flex-start;flex-wrap:wrap}.auth-wrap{display:block;margin:20px;border-radius:16px}.auth-intro{padding:28px}.auth-intro .eyebrow{margin-top:26px}.auth-intro h1{font-size:29px}.auth-signature{display:none}.auth-card{padding:30px}.search-bar{flex-wrap:wrap}}

/* MNW Aguascalientes: navy foundation, cyan emphasis and green success. */
:root{--brand-navy:#082256;--brand-blue:#123f91;--brand-cyan:#009fe3;--brand-green:#11952d;--bs-primary-rgb:18,63,145;--bs-success-rgb:17,149,45}
.brand{display:flex;flex-direction:column;align-items:stretch;gap:10px;letter-spacing:0;width:100%}
.brand-logo-panel{background:#fff;border:1px solid #e0e7f1;border-radius:12px;padding:12px;display:flex;justify-content:center;align-items:center}
.brand-logo{display:block;width:100%;max-width:225px;height:auto;object-fit:contain}
.brand-product{font-size:11px;font-weight:650;letter-spacing:2px;text-transform:uppercase;color:#e6efff;text-align:center}
.sidebar-label{margin-top:24px;line-height:1.8;text-align:center}
.sidebar nav a[aria-current="page"]{background:#173e7a;box-shadow:inset 3px 0 #009fe3;color:#fff}
.auth-intro{background:linear-gradient(145deg,#071a4a 0%,#0e3380 72%,#095b9b 100%)}
.auth-intro .brand{max-width:280px}
.auth-intro .brand-logo-panel{padding:20px}
.auth-intro .brand-logo{max-width:240px}
.auth-intro .eyebrow{margin-top:36px}
.accent-surface{background:linear-gradient(140deg,#eaf3ff,#e7f7fc);border-top:3px solid #009fe3}
.stat-card strong{color:#082256}.stat-card{border-top:3px solid #dce9fa}.stat-card:nth-child(1){border-top-color:#009fe3}
.btn-primary{--bs-btn-color:#fff;--bs-btn-bg:#123f91;--bs-btn-border-color:#123f91;--bs-btn-hover-bg:#092b70;--bs-btn-hover-border-color:#092b70;--bs-btn-active-bg:#082256;--bs-btn-active-border-color:#082256;--bs-btn-disabled-bg:#123f91;--bs-btn-disabled-border-color:#123f91}
.btn-dark{--bs-btn-bg:#082256;--bs-btn-border-color:#082256;--bs-btn-hover-bg:#123f91;--bs-btn-hover-border-color:#123f91}
a{color:#123f91}a:hover{color:#082256}.choice-card input{accent-color:#123f91}
@media(max-width:650px){.sidebar .brand{flex-direction:row;align-items:center;justify-content:space-between;gap:16px}.sidebar .brand-logo-panel{width:166px;flex-shrink:0;padding:8px}.sidebar .brand-product{text-align:right;font-size:10px;letter-spacing:1.5px}.auth-intro .brand{max-width:210px}.auth-intro .brand-logo-panel{padding:12px}.sidebar nav{margin-top:18px}}

/* Display the cleaned logo inside a compact viewport, removing residual white canvas margins. */
.brand-logo-panel{padding:0;overflow:hidden;aspect-ratio:1.39;position:relative;display:block}
.brand-logo{position:absolute;width:154.82%;max-width:none;height:auto;left:-29.63%;top:-11.61%}
.auth-intro .brand-logo-panel{padding:0}.auth-intro .brand-logo{max-width:none}
@media(max-width:650px){.sidebar .brand-logo-panel,.auth-intro .brand-logo-panel{padding:0}.sidebar .brand-logo-panel{width:166px}}
.row .col-md-4:nth-child(2) .stat-card{border-top-color:#11952d}
.row .col-md-4:nth-child(3) .stat-card{border-top-color:#123f91}
