/* REGLAS 96: ANCHO DISPONIBLE, CONTROLES SOBRIOS Y TEXTO LEGIBLE. */
body [hidden]{display:none!important}
body.logged-in :is(#content,dialog){text-transform:uppercase}
body.logged-in :is(#content,dialog) :is(input[type=password],input[type=email],input[type=url],.preview-body96){text-transform:none}
body.logged-in :is(main,#content,#content>*,dialog,dialog form,.dialog-body,.form-grid,.table-wrap28,.table-wrap,.toolbar){min-width:0!important;box-sizing:border-box!important;max-width:100%!important}
body.logged-in #content{width:100%!important}
body.logged-in #content :is(table,.expense-sheet63 table,.expenses-list93 table,.expense-history94 table),body.logged-in dialog table{width:100%!important;min-width:0!important;max-width:100%!important;table-layout:fixed!important;border-collapse:collapse}
body.logged-in #content#content table :is(th,td),body.logged-in dialog table :is(th,td){min-width:0!important;width:auto!important;max-width:none!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important;padding:6px!important;font-size:12px!important;line-height:1.35!important;vertical-align:top!important}
body.logged-in #content#content table :is(input,select,textarea,button),body.logged-in dialog :is(input,select,textarea,button){min-width:0!important;max-width:100%!important;font-size:12px!important;min-height:31px!important;line-height:1.3!important;box-sizing:border-box!important}
body.logged-in #content#content :is(input,select,button),body.logged-in dialog :is(input,select,button){padding:6px 9px!important}
body.logged-in #content#content table :is(input,select,textarea){width:100%!important}
body.logged-in :is(#content,dialog) textarea{min-height:32px!important;max-height:160px;resize:vertical}
body.logged-in :is(#content,dialog) button{width:auto!important;min-height:31px!important;font-size:12px!important;border-radius:5px!important;transition:background-color .15s,border-color .15s,box-shadow .15s}
body.logged-in :is(#content,dialog) button:hover{filter:brightness(.97);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand-primary,#392b96) 12%,transparent)}
body.logged-in #content :is(.toolbar,.filters66,.table-controls28){display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important}
body.logged-in #content .filters66>label{flex:1 1 140px!important;max-width:235px!important}
body.logged-in #content .table-controls28 input{flex:1 1 160px!important;width:auto!important}
body.logged-in #content :is(.table-wrap28,.expense-sheet63,.expenses-list93){overflow:visible!important;width:100%!important;min-width:0!important;max-width:100%!important}
body.logged-in :is(#content,dialog) :is(pre,.full-cell95){white-space:pre-wrap!important;max-width:100%!important}
body.logged-in dialog.compact95{max-width:calc(100vw - 24px)!important;max-height:calc(100dvh - 24px)!important}
body.logged-in dialog.compact95 :is(.dialog-head,.dialog-body,.dialog-actions){padding:14px 18px!important}
body.logged-in dialog.compact95 .dialog-head :is(h2,h3){font-size:17px!important;margin:0!important}
body.logged-in dialog.compact95 .form-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px 16px!important}
body.logged-in dialog.compact95 label{font-size:12px!important;line-height:1.4!important}
body.logged-in dialog.compact95 .dialog-actions{gap:8px!important;justify-content:flex-end!important}
body.logged-in dialog.compact95 .attachment95{padding:10px!important;margin:0 0 9px!important;display:flex!important;flex-wrap:wrap;align-items:center;gap:8px}
body.logged-in dialog.compact95 .attachment95 h4{font-size:12px!important;margin:0!important;width:100%}
body.logged-in dialog.compact95 .attachment95 input[type=file]{width:250px!important;min-height:29px!important;padding:3px!important}
body.logged-in dialog.compact95 .attachment95 small{width:100%;font-size:10px!important}
.profile-heading96{display:flex;align-items:center;gap:16px;border-bottom:1px solid #e1e5ed;padding-bottom:12px;margin-bottom:8px}
body.logged-in dialog .profile-heading96 .personal-photo95{display:flex!important;flex-wrap:wrap;align-items:center;gap:7px;width:210px!important;max-width:45%!important;padding:0!important;margin:0!important;border:0!important}
body.logged-in dialog .profile-heading96 .personal-photo95 input{width:140px!important;font-size:10px!important}
.profile-heading96>label{flex:1}.profile-heading96 .portrait45{width:52px!important;height:52px!important}.profile-heading96 .personal-photo95>button{font-size:10px!important}
.change-reason96{border:0!important;border-top:1px solid #e3e6ee!important;min-width:0;padding:12px 0 0!important;margin:10px 0!important;grid-column:1/-1}
.change-reason96 legend{font-size:11px;font-weight:650;padding:0 8px 0 0}.reason-options96{display:flex;gap:22px;align-items:center}.reason-options96 label{display:flex!important;flex-direction:row!important;align-items:center;gap:7px}
body.logged-in :is(#content,dialog) .reason-options96 input{width:15px!important;height:15px!important;min-height:15px!important;padding:0!important;accent-color:var(--brand-primary,#392b96)}
.change-reason96>label{display:flex;flex-direction:column;gap:6px;max-width:560px;margin-top:10px}.commission-read96{padding:8px 0;border-top:1px solid #e3e6ee}.commission-read96 p{font-size:11px}
body.logged-in dialog.document-view96{width:min(950px,calc(100vw - 24px))!important;max-width:950px!important}
.preview-body96{display:block!important;min-height:160px;overflow:auto;max-height:65dvh}.preview-body96 iframe{border:0;width:100%;height:60dvh}.preview-body96 img{display:block;max-width:100%;max-height:60dvh;object-fit:contain;margin:auto}.preview-body96 pre{overflow-wrap:anywhere}.preview-body96 p{font-size:13px}
.expense-dashboard96{display:flex;gap:12px;flex-wrap:wrap;margin:12px 0}.expense-dashboard96 article{border:1px solid #e0e5ed;padding:12px 16px;background:#fff;border-radius:7px;flex:1}.expense-dashboard96 strong{display:block;font-size:20px;margin-top:5px}.expense-dashboard96>small{width:100%;font-size:10px;color:#6a7887}
body.logged-in #content.expense-view96 .fuel-controls91{display:grid!important;grid-template-columns:auto minmax(100px,150px) minmax(100px,150px)!important;align-items:center;gap:9px 14px!important;width:fit-content!important;max-width:100%!important;padding:10px 12px!important;margin:12px 0!important}
body.logged-in #content.expense-view96 .fuel-controls91 strong{font-size:12px}.fuel-controls91 label{font-size:11px!important}.fuel-controls91 p{grid-column:1/-1;font-size:10px!important;margin:0!important}
body.logged-in #content.expense-view96 .expense-summary91{max-width:410px!important;margin:12px 0 5px auto!important;padding:10px 14px!important;width:100%!important}
body.logged-in #content.expense-view96 .expense-summary-line91{font-size:12px;padding:6px 0!important}.expense-total91{display:block;text-align:right;margin:10px 0!important;font-size:16px!important}
body.logged-in #content .expense-metrics91{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0!important}body.logged-in #content .expense-metrics91 .metric56{padding:10px 12px!important;flex:1}.expense-metrics91 h3{font-size:11px!important;margin:0!important}.expense-metrics91 strong{font-size:15px!important}
body.logged-in #content .expense-sheet63 table td :is(input,select,textarea){font-size:11px!important;padding:4px!important;min-height:28px!important;margin:2px 0!important}
body.logged-in #content .expense-sheet63 table :is(th,td){font-size:11px!important;padding:5px!important}
body.logged-in #content .expense-sheet63 input[name=nit],body.logged-in #content .expense-sheet63 input[name=documento]{color:#687684!important;font-size:10px!important}
.pay-inline96{display:block!important;font-size:10px!important;color:#51489a}.primary96{background:var(--brand-primary,#392b96)!important;color:white!important}
body.logged-in dialog.history96{width:min(900px,calc(100vw - 24px))!important;max-width:900px!important}
/* En pantallas estrechas cada registro se reorganiza en una tarjeta con etiquetas. No se recorta ni se ocultan columnas. */
@media(max-width:1150px){body.logged-in #content table.table96{display:block!important}body.logged-in #content table.table96>thead{display:none!important}body.logged-in #content table.table96>tbody{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}body.logged-in #content table.table96>tbody>tr{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid #dfe4ee;border-radius:7px;padding:7px;background:var(--brand-surface,#fff)!important}body.logged-in #content table.table96>tbody>tr>td{display:block;width:auto!important;white-space:normal!important;border:0!important}body.logged-in #content table.table96>tbody>tr>td:before{content:attr(data-label96);display:block;font-size:9px;color:#6a7887;font-weight:650;margin-bottom:4px}body.logged-in #content table.table96>tbody>tr>td[style*="display: none"]{display:none!important}}
@media(max-width:700px){body.logged-in #content table.table96>tbody{grid-template-columns:1fr!important}body.logged-in dialog.compact95 .form-grid{grid-template-columns:minmax(0,1fr)!important}body.logged-in #content.expense-view96 .fuel-controls91{grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important}.fuel-controls91>strong{grid-column:1/-1}.profile-heading96{flex-wrap:wrap}.profile-heading96>label{min-width:160px}body.logged-in dialog :is(table,tbody){max-width:100%!important}body.logged-in dialog table :is(th,td){font-size:10px!important;padding:4px!important}}

body.logged-in :is(#content,dialog) :is(button,select,option,label,legend,h1,h2,h3,h4,summary){text-transform:uppercase!important}
body.logged-in :is(#content,dialog) :is(input[type=text],input[type=search],input[type=tel],textarea){text-transform:uppercase}
body.logged-in #content.expense-view96 .fuel-controls91>strong{grid-column:auto!important}
body.logged-in #content.expense-view96 .fuel-controls91>label{display:flex!important;flex-direction:column!important;justify-content:flex-end!important;gap:5px!important;min-width:0!important;min-height:60px!important;margin:0!important}
body.logged-in #content.expense-view96 .fuel-controls91>label>input{width:100%!important;min-width:0!important;margin:0!important}
body.logged-in #content#content .primary96{background:var(--brand-primary,#392b96)!important;color:#fff!important;border-color:var(--brand-primary,#392b96)!important}
@media(max-width:700px){body.logged-in #content.expense-view96 .fuel-controls91>strong{grid-column:1/-1!important}}

.profile-heading96{grid-column:1/-1}
body.logged-in #content img{max-width:100%}
@media(max-width:700px){body.logged-in dialog table.table96,body.logged-in dialog table.table96>tbody{display:block!important}body.logged-in dialog table.table96>thead{display:none!important}body.logged-in dialog table.table96>tbody>tr{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid #e1e5ed;border-radius:5px;margin:6px 0;padding:6px}body.logged-in dialog table.table96>tbody>tr>td{display:block!important;width:auto!important;border:0!important}body.logged-in dialog table.table96>tbody>tr>td:before{content:attr(data-label96);display:block;font-size:9px;color:#6a7887;margin-bottom:4px}body.logged-in dialog table.table96>tbody>tr>td[style*="display: none"]{display:none!important}}

body.logged-in :is(#content,dialog) :is(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),select){height:32px!important}
body.logged-in :is(#content,dialog) button{height:auto!important}
body.logged-in :is(#content,dialog) button svg{width:16px!important;height:16px!important;flex:0 0 16px}
body.logged-in #content h2{font-size:20px!important;line-height:1.3;margin-top:14px;margin-bottom:12px}
body.logged-in #content h3{font-size:15px!important}

.profile-heading96 .avatar45{width:52px!important;height:52px!important;display:flex!important;align-items:center;justify-content:center;flex:0 0 52px;border-radius:50%;overflow:hidden;background:#eeecf8;color:#493b94;font-size:18px;font-weight:650}
.profile-heading96 .avatar45 img{width:100%!important;height:100%!important;object-fit:cover}
body.logged-in dialog.employee94 .tabs94{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:3px!important}
body.logged-in dialog.employee94 .tabs94 button{width:100%!important;white-space:normal!important;font-size:11px!important;padding:6px!important;word-break:normal!important}
@media(max-width:600px){body.logged-in dialog.employee94 .tabs94{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
