:root{--navy:#0A2341;--navy2:#0D1634;--navy3:#152F52;--blue:#11729D;--green:#107C10;--red:#C00000;--ink:#16202D;--paper:#F8F9FC;--line:#DCE3EA;--muted:#596978}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Segoe UI",Arial,sans-serif;font-size:16px}button,input,select,textarea{font:inherit}button{cursor:pointer}[hidden]{display:none!important}h1{font-size:2.2rem;letter-spacing:-.035em;margin:.2rem 0 .7rem}h2{font-size:1.65rem}h3{font-size:1.1rem;margin:1.6rem 0 .8rem}p{line-height:1.5}label{display:flex;flex-direction:column;gap:.45rem;font-size:.9rem;font-weight:600;margin-bottom:1rem}input,select,textarea{width:100%;padding:.7rem;border:1px solid #b8c5d1;border-radius:6px;background:white;color:var(--ink)}input:focus,select:focus,textarea:focus,button:focus-visible{outline:3px solid #75bedd;outline-offset:2px}textarea{min-height:75px;resize:vertical}.btn{display:inline-flex;justify-content:center;align-items:center;background:var(--blue);color:white;border:1px solid var(--blue);border-radius:6px;padding:.65rem 1rem;gap:.5rem;text-decoration:none}.btn.secondary{background:white;color:var(--blue)}.btn:disabled{opacity:.6;cursor:wait}.wide{width:100%}.muted{color:var(--muted);font-size:.9rem}.eyebrow{font-size:.8rem;letter-spacing:.15em;font-weight:700;color:var(--blue)}.login-page{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr}.login-brand{background:var(--navy);padding:clamp(2rem,7vw,7rem);display:flex;flex-direction:column;justify-content:center;color:white}.login-brand h1{font-size:clamp(2.7rem,5vw,4.4rem);line-height:1.04;margin:1rem 0}.login-brand p{color:#bdd9e9;max-width:28rem}.login-brand .eyebrow{margin-top:2.5rem}.brand-line{height:4px;width:80px;background:#56bcdf;margin:2rem 0}.login-form{background:white;display:grid;place-items:center;padding:2rem}.login-card{width:min(380px,100%)}.login-card label{margin-top:1.5rem}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border:1px solid #6c8ba8;border-radius:8px;background:var(--navy3);font-size:1.5rem;color:white}.topbar{height:72px;background:var(--navy);color:white;display:flex;align-items:center;justify-content:space-between;padding:0 1.6rem;position:fixed;inset:0 0 auto;z-index:5}.brand{display:flex;align-items:center;gap:12px;color:white;text-decoration:none;font-size:1.1rem;font-weight:700}.brand small{display:block;font-size:.75rem;color:#a7cadb;letter-spacing:.12em;margin-top:3px}.userbox{display:flex;align-items:center;gap:1.4rem;font-size:.9rem}.sidebar{position:fixed;left:0;top:72px;bottom:0;width:225px;background:var(--navy2);padding:1.5rem .9rem;display:flex;flex-direction:column}.nav-label{color:#a0c4d8;font-size:.75rem;letter-spacing:.1em;padding:0 .6rem}.nav-item{background:transparent;border:0;text-align:left;padding:.9rem .8rem;color:#dbe8f1;border-radius:6px;margin:.2rem 0;font-size:.95rem}.nav-item:hover,.nav-item.active{background:var(--navy3);color:white}.sidebar-note{margin-top:auto;padding:1rem .6rem;color:#a8bfd0;font-size:.85rem;border-top:1px solid #29435f;line-height:1.7}.sidebar-note strong{color:white}.content{margin-left:225px;padding:106px 2rem 3rem}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.7rem}.summary-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:1.8rem}.summary-card{background:white;border:1px solid var(--line);border-top:3px solid var(--blue);padding:1.1rem;border-radius:7px}.summary-card b{display:block;font-size:1.85rem}.summary-card span{font-size:.9rem;color:var(--muted)}.summary-card.OK{border-top-color:var(--green)}.summary-card.Desvio{border-top-color:var(--red)}.summary-card.Vencido{border-top-color:#b07100}.toolbar{display:flex;gap:1rem;align-items:end;flex-wrap:wrap}.toolbar label{min-width:145px}.search-label{flex:1}.table-wrap{overflow:auto;background:white;border:1px solid var(--line);border-radius:8px}table{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums;font-size:.9rem}th{background:var(--navy);color:white;text-align:left;font-size:.8rem;padding:1rem;white-space:nowrap}td{padding:1rem;border-bottom:1px solid var(--line)}td small{display:block;color:var(--muted);font-size:.8rem;margin-top:.35rem}td.numeric{text-align:right;white-space:nowrap}tbody tr:last-child td{border:0}.badge,.tag{display:inline-block;border-radius:20px;padding:.3rem .6rem;font-size:.8rem;font-weight:600;white-space:nowrap;background:#e9f1f8;color:var(--navy)}.badge.OK{background:#e8f5e9;color:#176b1b}.badge.Desvio{background:#fde7e7;color:#a00000}.badge.Vencido{background:#fff3d6;color:#805100}.badge.Pendiente{background:#edf1f5;color:#4c5d6e}.empty{text-align:center;padding:3rem;color:var(--muted)}.card{background:white;padding:1.5rem;border:1px solid var(--line);border-radius:8px}.narrow{max-width:520px}.client-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.client-card h2{font-size:1.15rem;margin-top:0}.client-card p{margin:.5rem 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}.full{grid-column:1/-1}dialog{border:1px solid var(--line);border-radius:10px;padding:1.8rem;width:min(700px,calc(100vw - 2rem));max-height:90vh;color:var(--ink)}dialog::backdrop{background:#061829a6}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}.dialog-heading h2{margin:.1rem 0 1rem}.close{font-size:1.8rem;border:0;background:transparent;color:var(--muted)}.currency-line,.tax-line{display:flex;gap:1rem;align-items:center}.currency-line label,.tax-line label{flex:1}.remove{border:0;background:transparent;color:var(--red);padding:.6rem}.check{flex-direction:row;align-items:center}.check input{width:auto}.error{color:var(--red);font-size:.9rem}#notice{padding:1rem;background:#e8f5e9;border-left:4px solid var(--green);margin-bottom:1rem;border-radius:6px}#notice.error{background:#fde7e7;border-color:var(--red)}td:last-child{overflow-wrap:anywhere;max-width:350px}@media(max-width:1100px){.summary-grid{grid-template-columns:repeat(3,1fr)}.content{padding-left:1rem;padding-right:1rem}.sidebar{width:190px}.content{margin-left:190px}}@media(max-width:750px){.login-page{grid-template-columns:1fr}.login-brand{min-height:300px;padding:2rem}.login-brand h1{font-size:2.6rem}.login-brand .eyebrow{margin-top:1rem}.brand-line{margin:1rem 0}.sidebar{position:static;width:auto;margin-top:72px;flex-direction:row;overflow:auto;padding:.5rem}.nav-label,.sidebar-note{display:none}.nav-item{white-space:nowrap}.content{margin:0;padding:1.5rem 1rem}.summary-grid{grid-template-columns:repeat(2,1fr)}.topbar{padding:0 1rem}.userbox span{display:none}.page-heading{align-items:start}h1{font-size:1.8rem}.form-grid{grid-template-columns:1fr}.currency-line,.tax-line{gap:.5rem}}
.http-mode{position:fixed;bottom:0;left:0;right:0;z-index:50;padding:8px 16px;background:#fff3d6;color:#805100;text-align:center;font-size:14px;border-top:1px solid #d8b77a}

.brand-logo{width:150px;height:45px;object-fit:contain;background:white;border-radius:4px;padding:5px}.department-logo{height:45px;width:36px;object-fit:contain;background:white;border-radius:4px}.login-logo{max-width:300px;width:100%;object-fit:contain;margin:12px 0}.lacc-login{background:white;padding:10px;border-radius:6px;max-width:180px}.unit-label{margin:0 16px;min-width:220px;color:white;font-size:.75rem}.unit-label select{padding:.4rem;font-size:.85rem}.topbar .brand{font-size:.85rem;max-width:48%}.topbar{gap:12px}.topbar .userbox{gap:10px}#key-result{white-space:pre-wrap;overflow-wrap:anywhere;max-width:650px}.card .btn,td .btn{margin:3px}.summary-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}body[data-brand="lacc"]{--navy:#0B183E;--navy2:#003750;--navy3:#0B4692;--blue:#2083C5}dialog{max-height:90vh;overflow:auto}button:disabled{cursor:not-allowed}.check{flex-direction:row;align-items:center}.check input{width:auto}#ad-results p{border-bottom:1px solid var(--line);padding:8px}#ad-units,#user-units{display:grid;grid-template-columns:1fr 1fr;gap:6px}#unit-brand{max-width:180px}#department-logo[hidden]{display:none}
@media(max-width:900px){#unit-brand{display:none}.topbar .brand{max-width:25%}.brand-logo{width:100px}.unit-label{min-width:170px;margin:0}.topbar{padding:0 8px}.userbox span{display:none}}@media(max-width:500px){.department-logo{display:none}.brand-logo{width:75px}.unit-label{min-width:145px}.topbar .userbox .btn{padding:.4rem}}

img[src$="/aeropuertos.png"] { background: #0a2341; }

.login-logos{display:flex;align-items:center;gap:24px;width:100%;margin-bottom:32px}.login-logos .login-logo{width:52%;max-width:300px;margin:0;min-width:0}.login-logos .lacc-login{width:32%;max-width:180px}#main-login{margin:22px 0}#main-login p{font-size:.85rem;margin:10px 0 20px}.login-separator{padding-top:20px;border-top:1px solid #d6deea;color:#4d6078;font-size:.9rem}.login-card [type=submit]{margin-top:12px}.login-link{display:block;width:100%;border:0;background:transparent;color:var(--blue);padding:10px;text-align:center;text-decoration:underline;text-underline-offset:3px}.login-link:hover{color:var(--navy)}#company-login label{margin-top:1.25rem}

.password-page{min-height:100vh;display:grid;place-items:center;background:#f5f7fa}.password-page[hidden]{display:none}.password-page form{width:min(500px,95vw)}.pagination,.selection-actions{display:flex;align-items:center;gap:12px;margin:18px 0}.selection-actions{flex-wrap:wrap}.selection-actions button{font-size:.8rem}#users-list,#bcu-list{margin-top:24px}#ad-user-dialog form,#local-user-dialog form{max-width:none;border:0;padding:0}#edit-user-units{display:grid;grid-template-columns:1fr 1fr}#present-declaration{margin-right:10px}
#currencies .remove:disabled,#edit-currencies .remove:disabled{color:#667687;opacity:.55;cursor:not-allowed}
.dialog-notice{padding:12px;border:1px solid currentColor;border-radius:6px}
.period-preview{grid-column:1/-1}
#detail-dialog{width:min(960px,calc(100vw - 2rem))}
#detail-dialog .table-wrap{max-height:65vh}
#detail-dialog .detail-date{white-space:nowrap}
#detail-dialog .detail-receipt{overflow-wrap:anywhere;min-width:190px}

.reconciliation-table th:not(:first-child),.reconciliation-table td:not(:first-child){text-align:center}
.reconciliation-table td.numeric{ text-align:center }
.table-actions{text-align:center;white-space:normal}
.toolbar-action{display:flex;align-items:center;justify-content:center;margin-bottom:1rem}
.filter-note{display:inline-block;margin:.1rem 0 1rem;padding:.35rem .7rem;border-radius:20px;background:#e9f1f8;color:var(--navy);font-size:.85rem}
.summary-card[data-status]{cursor:pointer}
.support-link{color:white;font-weight:700}.support-link:hover{text-decoration:none}
.alerts{position:relative}.alerts-button{position:relative;border:1px solid #6c8ba8;background:#fff;color:var(--navy);border-radius:50%;width:42px;height:42px;font-size:1.15rem}.alerts-button span{position:absolute;right:-7px;top:-7px;min-width:22px;height:22px;padding:2px 5px;border-radius:12px;background:var(--red);color:white;font-size:.72rem;font-weight:700}.alerts-panel{position:absolute;right:0;top:50px;width:310px;background:white;color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:1rem;box-shadow:0 12px 35px #0003}.alerts-panel>strong{display:block;margin-bottom:.6rem}.alerts-panel #alerts-list button{display:flex;width:100%;justify-content:space-between;border:0;background:#f3f6f9;padding:.65rem;margin:.35rem 0;border-radius:5px;color:var(--ink)}
#view-reportes table th,#view-reportes table td{text-align:center;vertical-align:middle}#view-reportes .transaction-items{text-align:left}.report-transactions-heading{margin:2rem 0 .5rem}.report-pagination{display:flex;align-items:center;justify-content:space-between;margin-top:.75rem}.report-transactions{min-width:1100px}
.commerce-list{display:flex;flex-direction:column;gap:1rem}
.airport-group{background:white;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.airport-group>summary{display:flex;justify-content:space-between;align-items:center;padding:1.15rem 1.35rem;background:var(--navy);color:white;font-weight:700;cursor:pointer}
.airport-group>summary small{font-weight:400;color:#c6d9e7}
.airport-group .commerce-wrap{border:0;border-radius:0}
.commerce-table .company-row th{background:#e9f1f8;color:var(--navy);font-size:1rem;text-align:left;padding:.8rem 1rem}
.token-mass{display:flex;align-items:end;gap:1rem;margin-bottom:1rem}.token-mass label{margin:0;min-width:300px}.token-table th,.token-table td{text-align:center;vertical-align:middle}.token-table input{min-width:120px;text-align:center}
.commerce-table .company-row small{font-weight:400;color:var(--muted);margin-left:.6rem}
.commerce-table td:nth-child(2),.commerce-table td:last-child,.commerce-table th:nth-child(2),.commerce-table th:last-child{text-align:center}
@media(max-width:750px){.toolbar-action{width:100%}.toolbar-action .btn{width:100%}.airport-group>summary{padding:1rem}.commerce-table{min-width:850px}}

.transaction-items details{margin-top:.45rem}.transaction-items summary{cursor:pointer;color:var(--blue);font-weight:700}
#view-ventas table th,#view-ventas table td{text-align:center;vertical-align:middle}
#view-ventas .transaction-items details{margin:0;text-align:left}
#view-ventas .transaction-items details>div{padding:.5rem 0;border-bottom:1px solid #dbe4ee}
#view-ventas .report-pagination{gap:1rem;flex-wrap:wrap}
