*{box-sizing:border-box}html,body{margin:0;background:#f4f7f5;color:#17211c;font-family:Inter,Arial,sans-serif}
body{min-height:100vh}.topbar{position:sticky;top:0;z-index:10;background:#1f4e3d;color:#fff;padding:18px max(16px,calc((100vw - 1100px)/2));display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 10px #0002}
.topbar h1{font-size:23px;margin:2px 0 0}.top-actions{display:flex;gap:8px;align-items:center}.eyebrow{font-size:11px;letter-spacing:.14em;opacity:.78}.eyebrow.dark{color:#436253;opacity:1}
.shell{max-width:1100px;margin:0 auto;padding:18px 14px 60px}.card{background:#fff;border:1px solid #dfe7e2;border-radius:18px;padding:20px;margin-bottom:16px;box-shadow:0 5px 18px #263d310d}.card.compact{padding:16px 20px}.audit-card{border-color:#c8d9d0}
.sequence-card{background:linear-gradient(135deg,#e7f3ec,#f9fbfa);border:1px solid #bcd5c8;border-radius:18px;padding:20px;margin-bottom:16px;display:flex;justify-content:space-between;gap:20px;align-items:center}
.next-number{font-size:44px;font-weight:900;letter-spacing:.04em;color:#173f31;margin:4px 0}.sequence-note{font-size:13px;color:#607269}.sequence-side{font-size:13px;font-weight:700;color:#315d49;text-align:right}
.section-title{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:18px}.section-title h2,.sync-row h2{margin:0 0 4px;font-size:19px}.section-title p,.sync-row p{margin:0;color:#68776f;font-size:13px}
.grid.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}label span{display:block;font-size:12px;font-weight:700;color:#4b5c53;margin-bottom:6px}
input,select,textarea{width:100%;border:1px solid #cbd9d1;border-radius:11px;padding:12px;background:#fff;font-size:16px;color:#17211c;outline:none;font-family:inherit}input:focus,select:focus,textarea:focus{border-color:#2f6b55;box-shadow:0 0 0 3px #2f6b5519}
.subhead{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:22px 0 10px}.line-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(95px,.8fr) minmax(120px,1fr) 44px;gap:10px;align-items:end;padding:12px;background:#f8faf9;border:1px solid #e6ece8;border-radius:13px;margin-bottom:9px}
button{font:inherit;cursor:pointer;border:0;border-radius:11px;font-weight:700}.primary{padding:14px 18px;background:#1f4e3d;color:#fff;font-size:16px}.full{width:100%}.secondary{padding:11px 15px;background:#eaf2ee;color:#1f4e3d}.secondary.small{padding:8px 11px;font-size:12px}.ghost{padding:8px 11px;background:#eef4f1;color:#1f4e3d}.danger{padding:14px 18px;background:#f8e9e7;color:#9e3026;font-size:15px}.approve{background:#dff4e7;color:#155e37;padding:9px 12px}.reject{background:#fde7e4;color:#9f2c21;padding:9px 12px}
.remove-line{height:44px;width:44px;background:#f7ecea;color:#a13b2f;font-size:23px}.actions{margin-top:16px}.actions.split{display:grid;grid-template-columns:2fr 1fr;gap:10px}.sync-row{display:flex;justify-content:space-between;align-items:center;gap:14px}
.badge,.role-badge{font-size:12px;font-weight:800;padding:7px 10px;border-radius:999px}.badge{background:#ffffff24}.badge.online{background:#dff4e7;color:#155e37}.badge.offline{background:#fde7e4;color:#9f2c21}.role-badge{background:#fff;color:#1f4e3d}
.list{display:grid;gap:9px}.empty{padding:14px;border:1px dashed #ccd8d1;border-radius:12px;color:#6b7972;font-size:13px;text-align:center}.item{border:1px solid #e2e9e5;border-radius:12px;padding:12px;display:flex;justify-content:space-between;gap:14px;align-items:center}.item-main{min-width:0}.item-main b{font-size:15px}.item-main small{display:block;color:#6b7972;margin-top:3px}.pill{font-size:11px;font-weight:800;padding:5px 8px;border-radius:999px;background:#f0f3f1;color:#526158;white-space:nowrap}.item-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.kpis{display:grid;grid-template-columns:repeat(2,minmax(0,180px));gap:10px;margin-bottom:18px}.kpi{border:1px solid #e0e8e3;border-radius:12px;padding:12px;background:#fafcfb}.kpi span{display:block;color:#718078;font-size:12px}.kpi strong{font-size:24px;color:#214f3e}.minor-title{font-size:14px;margin:18px 0 9px;color:#4b5c53}
.audit-item{border-left:4px solid #d0a326}.audit-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.compare-box{background:#f7f9f8;border-radius:10px;padding:10px;font-size:12px}.compare-box strong{display:block;margin-bottom:5px}.changes{margin-top:8px;padding:9px;background:#fff7dd;border-radius:9px;color:#7a5a00;font-size:12px}
.modal{position:fixed;inset:0;background:#0c1712a8;z-index:50;display:flex;align-items:flex-start;justify-content:center;padding:30px 14px;overflow:auto}.modal-card{width:min(760px,100%);background:#fff;border-radius:18px;padding:20px;box-shadow:0 18px 70px #0005}.modal-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:14px}.modal-head h2{margin:3px 0}.icon-btn{height:38px;width:38px;border-radius:999px;background:#edf2ef;font-size:24px;color:#40564b}.before-box{background:#f2f6f4;border-radius:12px;padding:12px;margin-bottom:14px;font-size:13px}.before-box strong{display:block;margin-bottom:5px}.reason-label{display:block;margin-top:15px}
.toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%) translateY(20px);background:#17211c;color:#fff;padding:11px 14px;border-radius:10px;font-size:13px;opacity:0;pointer-events:none;transition:.2s;max-width:calc(100vw - 30px);z-index:99}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
[hidden]{display:none!important}
@media(max-width:700px){.grid.two,.audit-grid{grid-template-columns:1fr}.line-row{grid-template-columns:1fr 1fr 42px}.topbar{padding:15px 14px}.card{padding:16px}.sync-row{align-items:flex-start;flex-direction:column}.secondary{width:100%}.sequence-card{align-items:flex-start;flex-direction:column}.sequence-side{text-align:left}.actions.split{grid-template-columns:1fr}.item{align-items:flex-start;flex-direction:column}.item-actions{width:100%;justify-content:flex-start}.kpis{grid-template-columns:1fr 1fr}.modal{padding:12px}}
@media(max-width:460px){.line-row{grid-template-columns:1fr}.remove-line{width:100%;height:38px}.subhead{align-items:flex-start;flex-direction:column}.ghost{width:100%}.next-number{font-size:38px}.top-actions{flex-direction:column;align-items:flex-end}.kpis{grid-template-columns:1fr}}

.catalog-status{margin-top:4px!important;font-size:11px!important;color:#7a8981!important}
@media(max-width:700px){
  input,select,textarea{min-height:48px}
  .primary,.danger{min-height:50px}
  .section-title{gap:10px}
}


.field-help{display:block;margin-top:6px;color:#7a8981;font-size:11px;line-height:1.35}

.owner-info{margin-bottom:12px;padding:11px 12px;border-radius:12px;background:#f3f7f5;color:#385447;font-size:13px}
.device-owner{border-left:4px solid #1f6a50}
.device-role{display:inline-block;margin-top:4px;font-size:10px;font-weight:900;letter-spacing:.06em;padding:4px 7px;border-radius:999px;background:#edf3f0;color:#426052}

/* V9.10 · ajuste móvil y desplegables visibles */
.grid.two>*{min-width:0}
label{min-width:0}
input,select,textarea{max-width:100%;min-width:0}
input[type="date"]{display:block;width:100%;min-width:0;text-align:center}
.combo-field{position:relative;width:100%;min-width:0}
.combo-field>input{padding-right:52px}
.combo-toggle{position:absolute;right:5px;top:5px;width:42px;height:calc(100% - 10px);background:transparent;color:#1f4e3d;font-size:25px;line-height:1;border-radius:9px;display:flex;align-items:center;justify-content:center}
.combo-toggle:active{background:#edf4f0}
.combo-menu{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 6px);max-height:240px;overflow:auto;background:#fff;border:1px solid #bfd0c7;border-radius:12px;box-shadow:0 12px 30px #173f3126;padding:6px}
.combo-option{display:block;width:100%;text-align:left;background:#fff;color:#1e352b;padding:12px 13px;border-radius:9px;font-size:15px;font-weight:600}
.combo-option:hover,.combo-option:active{background:#edf5f1}
.combo-empty{padding:12px;color:#708078;font-size:13px}
.sequence-card{overflow:hidden}

@media(max-width:700px){
  .shell{padding:18px 14px 48px;overflow-x:hidden}
  .sequence-card{padding:20px 18px;align-items:center;text-align:center;gap:8px}
  .sequence-card>div:first-child{width:100%}
  .sequence-side{width:100%;text-align:center;font-size:14px;line-height:1.4}
  .next-number{margin:8px 0 10px}
  .sequence-note{line-height:1.35}
  .card{width:100%;max-width:100%;overflow:visible}
  .grid.two{width:100%;min-width:0}
  label{width:100%;max-width:100%}
  input[type="date"]{height:56px;padding-left:12px;padding-right:12px}
}


/* V9.11 · interfaz móvil alineada con la maqueta aprobada */
.device-summary{display:flex;align-items:center;gap:14px;background:linear-gradient(135deg,#e8f5ed,#f4faf6);border-radius:16px;padding:15px 18px;margin-bottom:12px;border:1px solid #d6eadf}
.device-check{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#169553;color:white;font-size:28px;font-weight:900;flex:0 0 auto}
.device-summary strong{display:block;font-size:16px}.device-summary span{display:block;margin-top:3px;color:#456457;font-size:13px}
.mobile-nav{display:none}
button:disabled{opacity:.48;cursor:not-allowed}

@media(max-width:700px){
  body{padding-bottom:76px}
  .topbar{padding:16px 18px;min-height:92px}
  .topbar h1{font-size:27px;line-height:1.05}.eyebrow{font-size:12px;letter-spacing:.18em}
  .shell{padding:12px 14px 28px}
  .device-summary{margin:0 0 10px;padding:14px 16px}
  .sequence-card{border-radius:16px;padding:18px 16px;margin-bottom:12px;background:linear-gradient(135deg,#edf7f1,#e6f1eb);border-color:#d5e7dc}
  .sequence-card .eyebrow.dark{font-size:14px;text-transform:none;letter-spacing:0;color:#214b3b}
  .next-number{font-size:38px;margin:4px 0 5px}
  .sequence-note{display:none}
  .sequence-side{font-size:15px;max-width:430px}
  .card{border-radius:17px;padding:18px;margin-bottom:12px;box-shadow:none}
  .section-title{margin-bottom:16px}.section-title h2{font-size:25px;line-height:1.05}.section-title p{font-size:14px;margin-top:5px}
  #remisionForm .grid.two{display:block}
  #remisionForm .grid.two>label{display:block;margin-bottom:15px}
  label span{font-size:14px;margin-bottom:7px;color:#244c3c}
  input,select,textarea{border-radius:10px;font-size:16px;min-height:54px;padding:13px 15px}
  input[type="date"]{height:54px;min-height:54px;text-align:left;padding:12px 15px}
  .combo-field>input{padding-right:48px}
  .combo-toggle{right:4px;top:4px;width:44px;height:46px;font-size:26px}
  .field-help{font-size:12px;margin-top:6px}
  .subhead{margin-top:18px}
  .line-row{border-radius:12px}
  .primary{border-radius:10px;min-height:54px}
  .mobile-nav{position:fixed;display:grid;grid-template-columns:repeat(3,1fr);left:0;right:0;bottom:0;z-index:40;background:#fff;border-top:1px solid #dfe8e3;padding:7px 8px calc(7px + env(safe-area-inset-bottom));box-shadow:0 -5px 18px #173f3110}
  .mobile-nav button{background:transparent;color:#52685e;border-radius:12px;padding:5px 3px;font-size:11px;display:flex;flex-direction:column;align-items:center;gap:2px}
  .mobile-nav button:first-child,.mobile-nav button.active{background:#e9f5ee;color:#14633f}
  .mobile-nav b{font-size:23px;line-height:1}.mobile-nav span{font-weight:700}
}


/* V9.13 · coincidencia visual móvil: fecha compacta y formulario limpio */
.date-field{position:relative;width:100%;height:54px;border:1px solid #cbd9d1;border-radius:11px;background:#fff;display:flex;align-items:center;padding:0 48px 0 48px;overflow:hidden}
.date-field .date-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#45675a;font-size:21px;line-height:1}
.date-field .date-value{width:100%;font-size:16px;color:#17211c;line-height:1;text-align:left;white-space:nowrap}
.date-field .date-arrow{position:absolute;right:16px;top:50%;transform:translateY(-54%);color:#174d3a;font-size:24px;font-weight:800;line-height:1}
.date-field input[type="date"]{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;opacity:0!important;cursor:pointer;z-index:2;-webkit-appearance:none;appearance:none}
@media(max-width:700px){
  .topbar{min-height:88px}
  .device-summary{padding:12px 14px;min-height:70px}
  .device-check{width:40px;height:40px;font-size:25px}
  .sequence-card{padding:14px 16px;min-height:138px;justify-content:center}
  .sequence-card .eyebrow.dark{font-size:15px;font-weight:500}
  .next-number{font-size:34px;line-height:1;margin:7px 0 6px}
  .sequence-side{font-size:14px;line-height:1.35}
  .card{padding:16px 18px}
  .section-title h2{font-size:24px}
  .section-title p{font-size:13px}
  #remisionForm .grid.two>label{margin-bottom:13px}
  label span{font-size:13px}
  .date-field{height:54px;border-radius:10px}
  .combo-field>input{height:54px;min-height:54px}
  .field-help{font-size:11px;line-height:1.25}
  #destino + .combo-toggle + .combo-menu + *{} /* keep selector parsing stable */
}


/* V9.14 · pantallas independientes */
.app-view{width:100%}
.device-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.device-detail-grid>div{background:#f4f8f6;border:1px solid #dfe9e4;border-radius:12px;padding:13px}
.device-detail-grid span{display:block;color:#6c7d74;font-size:12px;margin-bottom:4px}
.device-detail-grid strong{display:block;color:#214d3b;font-size:15px}
@media(max-width:700px){
  .app-view{animation:viewIn .16s ease-out}
  #syncCard{margin-top:0}
  #pendingCard{margin-bottom:10px}
  #historialView .card,#dispositivoView .card{margin-top:0}
  .device-detail-grid{grid-template-columns:1fr 1fr}
  .mobile-nav button:first-child{background:transparent;color:#52685e}
  .mobile-nav button.active{background:#e9f5ee;color:#14633f}
}
@keyframes viewIn{from{opacity:.35;transform:translateY(3px)}to{opacity:1;transform:none}}


/* V9.15 · identidad Agrollanos */
.brand-lockup{display:flex;align-items:center;gap:12px}
.brand-logo{width:46px;height:46px;border-radius:12px;object-fit:contain;background:#fff;padding:4px;box-shadow:0 1px 5px #0002}
@media(max-width:700px){.brand-lockup{gap:10px}.brand-logo{width:43px;height:43px;border-radius:11px}.topbar h1{margin-top:1px}}

/* V9.16 · navegación de escritorio para Administrador / Auditor */
.desktop-admin-nav{position:sticky;top:0;z-index:35;display:flex;justify-content:center;gap:8px;background:#fff;border-bottom:1px solid #dce8e1;padding:9px 18px;box-shadow:0 3px 12px #173f3108}
.desktop-admin-nav[hidden]{display:none!important}
.desktop-admin-nav button{border:0;background:transparent;color:#536a60;padding:9px 18px;border-radius:10px;font-weight:750;font-size:14px;cursor:pointer}
.desktop-admin-nav button:hover{background:#f0f6f3;color:#1f5b44}
.desktop-admin-nav button.active{background:#e5f2ea;color:#14563b}
@media(max-width:700px){.desktop-admin-nav{display:none!important}}

.line-totals{display:flex;justify-content:space-between;align-items:center;margin-top:10px;padding:12px 14px;border-radius:12px;background:#edf5f1;border:1px solid #d8e8df;color:#365247;font-size:13px}.line-totals strong{font-size:17px;color:#174f37}
@media(max-width:640px){.line-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px;gap:8px;padding:11px}.line-row label:first-child{grid-column:1/-1}.line-row .bags-field{grid-column:1}.line-row .kg-field{grid-column:2}.line-row .remove-line{grid-column:3;align-self:end}.line-row input,.line-row select{font-size:16px;padding:11px}.line-totals{position:sticky;bottom:72px;z-index:5;box-shadow:0 4px 14px #173f3112}}

/* V9.33 - buscador local de historial */
.history-search-wrap{position:relative;display:flex;align-items:center;margin:0 0 8px}.history-search{width:100%;height:46px;border:1px solid #d9e3dd;border-radius:12px;background:#fff;padding:0 42px 0 42px;font:inherit;font-size:14px;outline:none;transition:border-color .15s,box-shadow .15s}.history-search:focus{border-color:#8da99a;box-shadow:0 0 0 3px rgba(53,95,72,.08)}.history-search-icon{position:absolute;left:14px;font-size:21px;line-height:1;color:#64766c;pointer-events:none;transform:rotate(-15deg)}.history-search-clear{position:absolute;right:8px;width:32px;height:32px;border:0;border-radius:9px;background:#eef3f0;color:#526158;font-size:22px;line-height:1;cursor:pointer}.history-search-count{margin:0 0 10px;color:#68776f;font-size:12px}
@media(max-width:700px){.history-search{height:48px;font-size:16px;border-radius:13px}.history-search-wrap{margin-top:-2px;margin-bottom:10px}}

/* V9.34 · módulo Maquilas — primera pantalla funcional */
.mq-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;background:linear-gradient(135deg,#e7f3ec,#f9fbfa);border:1px solid #c8ddd1;border-radius:18px;padding:22px;margin-bottom:14px}.mq-hero h2{margin:3px 0 4px;font-size:27px;color:#173f31}.mq-hero p{margin:0;color:#607269;font-size:13px}.mq-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.mq-kpi{background:#fff;border:1px solid #dfe7e2;border-radius:15px;padding:15px}.mq-kpi span,.mq-kpi small{display:block;color:#6b7972;font-size:11px}.mq-kpi strong{display:block;color:#174f37;font-size:25px;margin:5px 0}.mq-table-wrap{overflow:auto}.mq-table{width:100%;border-collapse:collapse;min-width:650px}.mq-table th{text-align:left;color:#607269;font-size:11px;padding:10px;border-bottom:1px solid #dfe7e2}.mq-table td{padding:12px 10px;border-bottom:1px solid #edf1ef;font-size:13px}.mq-empty-cell{text-align:center!important;color:#7a8981;padding:22px!important}.mq-state{display:inline-block;border-radius:999px;padding:5px 8px;background:#edf5f1;color:#285d47;font-size:11px;font-weight:800}.mq-state.warn{background:#fff2d5;color:#845d00}.mq-modal-help{margin:4px 0 0;color:#68776f;font-size:13px}.mq-rule{margin-top:12px;padding:11px 12px;border-radius:11px;background:#fff6dc;color:#765700;font-size:12px;border:1px solid #f0dda5}.mq-recent-meta{font-size:12px;color:#6b7972;margin-top:4px}
@media(max-width:800px){.mq-kpis{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.mq-hero{align-items:flex-start;flex-direction:column;padding:18px}.mq-hero .primary{width:100%}.mq-kpis{grid-template-columns:1fr 1fr}.mq-kpi strong{font-size:21px}.mq-modal-card{padding:17px}}

/* V9.35 · Arquitectura por módulos */
.platform-hero{background:linear-gradient(135deg,#e7f3ec,#fbfcfb);border:1px solid #c8ddd1;border-radius:20px;padding:26px;margin-bottom:18px}.platform-hero h2{font-size:32px;color:#173f31;margin:3px 0 5px}.platform-hero p{margin:0;color:#607269}.module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.module-card{min-height:190px;border:1px solid #dce7e1;border-radius:20px;background:#fff;padding:22px;text-align:left;display:flex;gap:18px;align-items:flex-start}.module-card-live{cursor:pointer;transition:.18s ease;box-shadow:0 8px 24px #173f3108}.module-card-live:hover{transform:translateY(-2px);border-color:#a9cbbb;box-shadow:0 12px 30px #173f3114}.module-icon{width:50px;height:50px;min-width:50px;border-radius:15px;background:#e6f2eb;color:#18543c;display:grid;place-items:center;font-size:25px;font-weight:900}.module-card-copy h3{margin:7px 0 7px;color:#173f31;font-size:21px}.module-card-copy p{margin:0 0 17px;color:#68776f;line-height:1.45;font-size:13px}.module-card-copy strong{color:#14563b;font-size:13px}.module-status{display:inline-block;font-size:9px;letter-spacing:.08em;font-weight:900;color:#35634f;background:#edf6f1;border-radius:999px;padding:5px 8px}.module-card-soon{opacity:.58}.module-card-soon .module-status{background:#f1f2f1;color:#707a75}.module-nav-divider{width:1px;height:24px;background:#dbe6e0;margin:0 4px}.module-home-btn{color:#1f5b44!important;font-weight:850!important}
@media(max-width:800px){.module-grid{grid-template-columns:1fr}.platform-hero{padding:20px}.platform-hero h2{font-size:27px}.module-card{min-height:auto;padding:18px}}

/* V9.36 · navegación aislada por módulo */
.desktop-admin-nav.nav-force-hidden{display:none!important}

/* V9.41 · Administración separada de operación + vista previa de roles */
.admin-control-strip{display:flex;justify-content:space-between;gap:24px;align-items:center;background:#fff;border:1px solid #dce7e1;border-radius:18px;padding:20px 22px;margin-bottom:16px}.admin-control-strip h3{margin:4px 0 4px;color:#173f31;font-size:20px}.admin-control-strip p{margin:0;color:#68776f;font-size:13px;max-width:650px}.preview-control{display:grid;grid-template-columns:auto auto;gap:7px 8px;min-width:390px}.preview-control label{grid-column:1/-1;color:#607269;font-size:11px;font-weight:800}.preview-control select{min-width:245px;border:1px solid #d4e1da;border-radius:11px;padding:10px 12px;background:#fff;font:inherit;color:#29463a}.preview-bar{position:sticky;top:0;z-index:60;background:#173f31;color:#fff;display:flex;align-items:center;justify-content:center;gap:26px;padding:10px 18px;box-shadow:0 4px 14px #0002}.preview-bar[hidden]{display:none!important}.preview-bar div{display:flex;gap:10px;align-items:center}.preview-bar strong{font-size:11px;letter-spacing:.1em;background:#fff2;border-radius:999px;padding:5px 8px}.preview-bar span{font-size:13px}.preview-bar button{border:1px solid #ffffff55;background:#fff;color:#174f37;border-radius:9px;padding:7px 11px;font-weight:800;cursor:pointer}.admin-module-hero{background:linear-gradient(135deg,#e7f3ec,#fbfcfb);border:1px solid #c8ddd1;border-radius:18px;padding:22px;margin-bottom:14px}.admin-module-hero h2{margin:3px 0 4px;color:#173f31}.admin-module-hero p{margin:0;color:#607269;font-size:13px}.admin-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-action-card{display:flex;gap:14px;align-items:center;text-align:left;background:#fff;border:1px solid #dce7e1;border-radius:16px;padding:18px;cursor:pointer}.admin-action-card:hover{border-color:#a9cbbb;background:#fbfdfc}.admin-action-card>span{width:42px;height:42px;min-width:42px;border-radius:12px;background:#e7f3ec;display:grid;place-items:center;color:#174f37;font-size:19px}.admin-action-card strong,.admin-action-card small{display:block}.admin-action-card strong{color:#173f31;font-size:15px;margin-bottom:4px}.admin-action-card small{color:#68776f;line-height:1.35}.role-preview-card{display:flex;gap:18px;align-items:center;background:#fff;border:1px solid #dce7e1;border-radius:18px;padding:26px}.role-preview-card h2{margin:4px 0;color:#173f31}.role-preview-card p{margin:0;color:#68776f}.role-preview-icon{width:58px;height:58px;border-radius:16px;background:#e7f3ec;display:grid;place-items:center;color:#174f37;font-size:28px}
@media(max-width:800px){.admin-control-strip{align-items:stretch;flex-direction:column}.preview-control{min-width:0;grid-template-columns:1fr}.preview-control label{grid-column:auto}.preview-control select{min-width:0;width:100%}.admin-action-grid{grid-template-columns:1fr}.preview-bar{justify-content:space-between}.preview-bar div{display:block}.preview-bar strong,.preview-bar span{display:block}.preview-bar span{margin-top:3px}}


/* V9.42 · cierre de sesión por dispositivo */
.logout-btn{border:1px solid #d7e2dc;background:#fff;color:#365247;border-radius:10px;padding:8px 11px;font-weight:800;font-size:12px;cursor:pointer;white-space:nowrap}.logout-btn:hover{background:#f6f9f7;color:#174f37}.logout-btn[hidden]{display:none!important}
@media(max-width:700px){.top-actions{gap:6px;flex-wrap:wrap;justify-content:flex-end}.logout-btn{padding:7px 9px;font-size:11px}.role-badge{max-width:145px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}

/* V9.43 · Menú de cuenta compacto: administración sin ocupar el dashboard */
.account-menu{position:relative}.account-menu[hidden]{display:none!important}.account-menu-btn{display:flex;align-items:center;gap:9px;background:#fff;color:#173f31;border:1px solid #ffffff80;border-radius:13px;padding:7px 10px 7px 8px;min-width:180px;text-align:left;box-shadow:0 2px 8px #00000012}.account-menu-btn:hover{background:#f8fbf9}.account-avatar{width:31px;height:31px;min-width:31px;border-radius:9px;background:#e5f1ea;color:#18543c;display:grid;place-items:center;font-size:13px;font-weight:900}.account-avatar.large{width:40px;height:40px;min-width:40px;border-radius:11px}.account-btn-copy{display:flex;flex-direction:column;min-width:0;flex:1}.account-btn-copy small{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#708179;line-height:1.1}.account-btn-copy strong{font-size:12px;color:#173f31;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-chevron{font-size:16px;color:#6d7f76;transition:.15s}.account-menu.open .account-chevron{transform:rotate(180deg)}
.account-dropdown{position:absolute;right:0;top:calc(100% + 10px);width:330px;background:#fff;color:#17211c;border:1px solid #dbe6e0;border-radius:16px;box-shadow:0 18px 45px #10271d2e;padding:12px;z-index:100}.account-dropdown[hidden]{display:none!important}.account-summary{display:flex;gap:11px;align-items:center;padding:5px 5px 12px}.account-summary>div{min-width:0}.account-summary strong,.account-summary small{display:block}.account-summary strong{font-size:13px;color:#173f31}.account-summary small{font-size:11px;color:#718078;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-section-label{font-size:9px;letter-spacing:.1em;font-weight:900;color:#809087;padding:9px 6px 6px}.account-tools{border-top:1px solid #edf1ef}.account-tools[hidden]{display:none!important}.account-link{width:100%;display:flex;align-items:center;gap:10px;text-align:left;background:transparent;padding:9px 7px;border-radius:10px;color:#173f31}.account-link:hover{background:#f2f7f4}.account-link>span{width:31px;height:31px;border-radius:9px;background:#e9f3ed;display:grid;place-items:center;color:#18543c}.account-link strong,.account-link small{display:block}.account-link strong{font-size:12px}.account-link small{font-size:10px;color:#74837b;margin-top:1px}.account-preview-box{background:#f6f9f7;border:1px solid #e4ece7;border-radius:12px;padding:10px;margin-top:6px}.account-preview-box label{display:block;font-size:10px;font-weight:850;color:#53685e;margin-bottom:6px}.account-preview-box select{font-size:13px;padding:9px 10px;border-radius:9px}.account-preview-btn{width:100%;margin-top:7px;padding:9px 10px;background:#1f4e3d;color:#fff;border-radius:9px;font-size:12px}.account-divider{height:1px;background:#edf1ef;margin:10px 0 5px}.account-logout{width:100%;display:flex;align-items:center;gap:9px;background:transparent;color:#6f2f2a;padding:9px 8px;border-radius:10px;text-align:left}.account-logout:hover{background:#fff4f2}.account-logout span{font-size:16px}.account-logout strong{font-size:12px}.top-actions>.role-badge{display:none!important}
@media(max-width:700px){.topbar{gap:10px}.top-actions{flex-direction:row!important;align-items:center!important;flex-wrap:nowrap!important}.account-menu-btn{min-width:0;padding:7px}.account-btn-copy{display:none}.account-chevron{font-size:14px}.account-dropdown{position:fixed;top:72px;right:12px;left:12px;width:auto;max-height:calc(100vh - 90px);overflow:auto}.badge{font-size:10px;padding:6px 8px}.platform-hero{margin-bottom:14px}.module-grid{gap:12px}}

/* V9.50 · Estado de conexión móvil: centrado, compacto y sin saltos de línea */
#netBadge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  white-space:nowrap;
  flex:0 0 auto;
  line-height:1;
}
@media(max-width:700px){
  #netBadge{
    min-width:72px;
    height:44px;
    padding:0 11px;
    box-sizing:border-box;
    font-size:11px;
    line-height:1;
    border-radius:999px;
  }
  .top-actions{flex:0 0 auto;gap:8px}
  .brand-lockup{min-width:0;flex:1 1 auto}
  .brand-lockup>div{min-width:0}
}

/* V9.51 · Acceso por cuenta + dispositivos asociados */
.auth-shell{display:grid;gap:18px;max-width:760px;margin:0 auto}
.auth-account-head{display:flex;align-items:center;gap:14px;margin-bottom:22px}
.auth-account-head h2{margin:2px 0 4px}
.auth-account-head p{margin:0;color:#66776f}
.auth-field{display:block;margin-bottom:16px}
.auth-note{margin:14px 0 0;text-align:center;color:#6b7c74;font-size:.92rem}
.operative-pair-card{padding:0;overflow:hidden}
.operative-pair-card summary{list-style:none;cursor:pointer;padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.operative-pair-card summary::-webkit-details-marker{display:none}
.operative-pair-card summary div{display:flex;flex-direction:column;gap:3px}
.operative-pair-card summary small{color:#73827b;font-weight:500}
.operative-pair-body{padding:0 22px 22px;border-top:1px solid #e2ebe6}
.operative-pair-body>p{color:#66776f;margin:18px 0}
@media(max-width:640px){
  .auth-shell{gap:14px}
  .admin-login-card{padding:22px 20px}
  .auth-account-head{align-items:flex-start}
  .auth-account-head h2{font-size:1.55rem}
  .operative-pair-card summary{padding:18px 20px}
}

/* V9.52 · Navegación operativa completa también en vista previa ADMIN */
@media (min-width: 761px){
  body.preview-operative #mobileNav, body.real-operative #mobileNav{
    display:grid; position:sticky; top:0; bottom:auto; grid-template-columns:repeat(3,minmax(150px,220px));
    justify-content:center; width:100%; padding:8px 16px; border-top:0; border-bottom:1px solid #dfe8e3; box-shadow:none;
  }
  body.preview-operative #mobileNav button, body.real-operative #mobileNav button{
    flex-direction:row; justify-content:center; gap:8px; font-size:14px; padding:9px 14px;
  }
  body.preview-operative #mobileNav b, body.real-operative #mobileNav b{font-size:18px}
}

/* V9.53 · UX responsive operativa: navegación según dispositivo */
/* El mismo menú operativo se reutiliza: arriba en escritorio/tablet grande, abajo en móvil. */
@media (min-width: 769px){
  body.preview-operative #mobileNav,
  body.real-operative #mobileNav{
    display:grid !important;
    position:sticky;
    top:0;
    bottom:auto;
    z-index:36;
    grid-template-columns:repeat(3,minmax(150px,220px));
    justify-content:center;
    align-items:center;
    width:100%;
    padding:8px 16px;
    margin:0;
    background:#fff;
    border-top:0;
    border-bottom:1px solid #dfe8e3;
    box-shadow:0 3px 12px #173f3108;
  }
  body.preview-operative #mobileNav button,
  body.real-operative #mobileNav button{
    min-height:42px;
    flex-direction:row;
    justify-content:center;
    gap:8px;
    padding:9px 14px;
    font-size:14px;
  }
  body.preview-operative #mobileNav b,
  body.real-operative #mobileNav b{font-size:18px}
  body.preview-operative,
  body.real-operative{padding-bottom:0}
}
@media (max-width: 768px){
  body.preview-operative #mobileNav,
  body.real-operative #mobileNav{
    display:grid !important;
    position:fixed;
    left:0;right:0;bottom:0;top:auto;
    z-index:40;
    grid-template-columns:repeat(3,1fr);
    width:100%;
    padding:7px 8px calc(7px + env(safe-area-inset-bottom));
    margin:0;
    background:#fff;
    border-top:1px solid #dfe8e3;
    border-bottom:0;
    box-shadow:0 -5px 18px #173f3110;
  }
  body.preview-operative #mobileNav button,
  body.real-operative #mobileNav button{
    min-height:52px;
    flex-direction:column;
    justify-content:center;
    gap:2px;
    padding:5px 3px;
    font-size:11px;
  }
  body.preview-operative #mobileNav b,
  body.real-operative #mobileNav b{font-size:23px;line-height:1}
  body.preview-operative,
  body.real-operative{padding-bottom:76px}
}

/* V9.54 · Navegación operativa de escritorio pulida */
@media (min-width:769px){
  body.preview-operative #mobileNav,
  body.real-operative #mobileNav{
    grid-template-columns:repeat(3,minmax(170px,1fr));
    gap:10px;
    width:min(760px,calc(100% - 32px));
    margin:12px auto 14px;
    padding:7px;
    background:#f7faf8;
    border:1px solid #dce7e1;
    border-radius:16px;
    box-shadow:0 4px 14px #173f310a;
    overflow:hidden;
  }
  body.preview-operative #mobileNav button,
  body.real-operative #mobileNav button{
    min-height:44px;
    padding:10px 18px;
    border:1px solid transparent;
    border-radius:11px;
    background:transparent;
    color:#53685e;
    font-size:14px;
    font-weight:800;
    transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease;
  }
  body.preview-operative #mobileNav button:hover,
  body.real-operative #mobileNav button:hover{
    background:#fff;
    border-color:#dce7e1;
    color:#174f37;
  }
  body.preview-operative #mobileNav button.active,
  body.real-operative #mobileNav button.active{
    background:#e5f2ea;
    border-color:#c8ded1;
    color:#14563b;
    box-shadow:0 2px 7px #173f310d;
  }
  body.preview-operative #mobileNav b,
  body.real-operative #mobileNav b{
    width:20px;
    min-width:20px;
    display:inline-grid;
    place-items:center;
    font-size:17px;
    line-height:1;
  }
  body.preview-operative #mobileNav span,
  body.real-operative #mobileNav span{white-space:nowrap}
}

/* V9.56 · Acceso limpio y neutro */
.login-only-shell{max-width:520px;margin:clamp(28px,7vh,76px) auto 0}
.login-card-clean{padding:34px 34px 30px;display:grid;gap:20px;box-shadow:0 18px 45px rgba(19,69,52,.08)}
.login-brand-mark{width:54px;height:54px;border-radius:16px;background:#e7f3ec;color:#15563f;display:grid;place-items:center;font-size:25px;font-weight:900}
.login-heading{margin-bottom:2px}
.login-heading h2{font-size:clamp(30px,4vw,40px);line-height:1.05;margin:5px 0 8px;color:#13241d}
.login-heading p{margin:0;color:#6d7e76;font-size:17px}
.login-card-clean .auth-field{margin:0}
.login-card-clean .auth-field span{font-size:15px;font-weight:800;color:#214f3e;margin-bottom:8px}
.login-card-clean .auth-field input{min-height:56px;border-radius:14px;font-size:17px;padding:0 16px}
.login-submit{min-height:56px;border-radius:14px;font-size:17px;margin-top:2px}
@media(max-width:640px){.login-only-shell{margin:24px auto 0}.login-card-clean{padding:26px 22px 24px;gap:18px}.login-brand-mark{width:50px;height:50px;border-radius:15px}.login-heading h2{font-size:34px}.login-heading p{font-size:16px}}
.account-admin-block{padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid var(--line,#dbe7e1)}
.account-admin-help{margin:-4px 0 16px;color:#687b72}.user-create-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:12px;margin-bottom:12px}.user-create-grid label{display:grid;gap:6px}.user-create-grid label span{font-size:12px;font-weight:800;color:#315848}.user-create-grid input,.user-create-grid select{width:100%;min-height:44px;border:1px solid #cbded5;border-radius:12px;padding:0 12px;background:#fff;font:inherit}.users-list{margin-top:16px}.devices-subtitle{margin-top:4px}@media(max-width:800px){.user-create-grid{grid-template-columns:1fr}.account-admin-block .primary{width:100%}}

/* V9.58 · Usuarios y seguridad */
.principal-security-block{border:1px solid rgba(21,94,59,.18);background:linear-gradient(180deg,#f7fcf8,#fff);}
.principal-password-grid{max-width:760px;}
.user-security-item{align-items:center;gap:18px;}
.user-security-item .item-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
@media(max-width:720px){.user-security-item{align-items:flex-start}.user-security-item .item-actions{width:100%;justify-content:flex-start}.user-security-item .item-actions button{flex:1 1 145px}.principal-password-grid{grid-template-columns:1fr}}

.principal-password-actions{display:flex;gap:10px;align-items:center;margin-top:14px;flex-wrap:wrap;}
#showPrincipalPasswordBtn{margin-top:4px;}

/* V9.60 · Usuarios y seguridad — acabado visual */
#deviceAdminCard{padding:28px;border-radius:22px}
#deviceAdminCard>.section-title{align-items:center;margin-bottom:22px}
#deviceAdminCard>.section-title h2{font-size:25px;letter-spacing:-.35px;margin-bottom:5px}
#deviceAdminCard>.section-title p{margin:0;color:#657a70}
.security-panel{border:1px solid #d5e4dc;border-radius:18px;background:#fff;padding:24px;margin:0 0 18px;box-shadow:0 1px 2px rgba(18,63,46,.02)}
.principal-security-block{display:grid;grid-template-columns:76px minmax(0,1fr) auto;gap:18px;align-items:center;background:linear-gradient(110deg,#f5fbf8 0%,#fbfdfc 100%);padding:28px 26px}
.security-avatar{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:#e1f1e9;color:#15543f;font-size:28px;font-weight:800}
.security-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:5px}.security-title-row h3{margin:0;font-size:20px;color:#102f25}.security-role-pill{background:#dcefe6;color:#15543f;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:800}
.security-account-copy .account-admin-help{margin:0 0 16px;color:#687c73;font-size:15px;line-height:1.45}
.security-meta{display:flex;align-items:center;gap:0}.security-meta>div{display:flex;align-items:center;gap:10px;padding-right:28px;margin-right:28px;border-right:1px solid #d6e4dd}.security-meta>div:last-child{border-right:0}.security-meta-icon{width:34px;height:34px;border-radius:10px;background:#fff;display:grid;place-items:center;font-weight:800;color:#174d3b}.security-meta p{margin:0;display:grid;gap:1px}.security-meta small{font-size:12px;color:#6f8179}.security-meta strong{font-size:14px;color:#15372b}.security-meta .security-active{color:#1b8a50}
.security-password-btn{min-height:48px;padding:0 22px;border-radius:13px;white-space:nowrap;font-size:14px}.security-password-form{grid-column:2/-1;margin-top:6px;padding-top:20px;border-top:1px solid #dce8e2}.principal-password-grid{max-width:720px}
.security-section-heading{display:flex;align-items:center;gap:14px;margin-bottom:20px}.security-section-icon{width:48px;height:48px;border-radius:13px;background:#e2f2ea;color:#15543f;display:grid;place-items:center;font-size:18px;font-weight:900}.security-section-heading h3{margin:0 0 3px;font-size:19px;color:#102f25}.security-section-heading p{margin:0;color:#6a7d74;font-size:14px}
.create-account-panel .user-create-grid{margin-bottom:16px}.create-account-panel .user-create-grid label span{font-size:13px;color:#173d30}.create-account-panel .user-create-grid input,.create-account-panel .user-create-grid select{min-height:48px;border-radius:12px;padding:0 14px}.create-account-btn{min-height:46px;padding:0 20px;border-radius:12px}
.registered-accounts-panel{padding-bottom:20px}.registered-accounts-panel .security-section-heading{margin-bottom:12px}.registered-accounts-panel .users-list{margin-top:0}.registered-accounts-panel .user-security-item{border:1px solid #e0ebe5;border-radius:14px;padding:15px 16px;margin-top:10px;background:#fbfdfc}
.devices-subtitle{margin:24px 0 10px!important;padding-top:6px}
@media(max-width:800px){#deviceAdminCard{padding:18px;border-radius:18px}.principal-security-block{grid-template-columns:54px 1fr;padding:20px 18px;gap:14px}.security-avatar{width:52px;height:52px;font-size:23px}.security-account-copy{min-width:0}.security-password-btn{grid-column:1/-1;width:100%;margin-top:2px}.security-password-form{grid-column:1/-1}.security-meta>div{padding-right:15px;margin-right:15px}.security-panel{padding:19px 16px}.security-section-heading{align-items:flex-start}.security-section-icon{width:42px;height:42px;flex:0 0 42px}.security-title-row h3{font-size:18px}}
/* V9.62 · menú coherente en vista previa + ayuda contextual */
.preview-operative .account-dropdown{z-index:140}
.help-shell{max-width:1120px;margin:0 auto}.help-title{align-items:center}.help-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.help-card{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid #dce7e1;border-radius:17px;padding:20px;box-shadow:0 8px 24px #173f3108}.help-card h3{margin:1px 0 6px;color:#173f31;font-size:16px}.help-card p{margin:0;color:#68776f;font-size:13px;line-height:1.5}.help-icon{width:40px;height:40px;min-width:40px;border-radius:12px;background:#e7f3ec;display:grid;place-items:center;color:#18543c;font-weight:900;font-size:18px}.help-action{margin-top:14px}.help-preview-notice{display:flex;gap:12px;align-items:flex-start;margin-top:14px;padding:14px 16px;border:1px solid #c9ddd2;background:#f2f8f4;border-radius:14px;color:#315a49}.help-preview-notice strong{white-space:nowrap}.help-preview-notice span{font-size:13px;line-height:1.45}.preview-operative .account-summary{padding:10px 7px 14px}.preview-operative .account-dropdown{width:350px}.preview-operative #userAccountTools{padding-top:6px}.preview-operative .account-link{padding:11px 8px}.preview-operative .account-link>span{width:36px;height:36px;border-radius:10px}.preview-operative .account-link strong{font-size:13px}.preview-operative .account-link small{font-size:11px}
@media(max-width:800px){.help-grid{grid-template-columns:1fr}.help-preview-notice{display:block}.help-preview-notice strong,.help-preview-notice span{display:block}.help-preview-notice span{margin-top:4px}}

/* V9.63 · capas globales: el menú de cuenta siempre queda por encima de la navegación */
.topbar{z-index:200}
.account-menu{z-index:210}
.account-dropdown,
.preview-operative .account-dropdown,
.real-operative .account-dropdown{z-index:220}
.preview-bar{z-index:60}
.desktop-admin-nav{z-index:35}
@media (min-width:769px){
  body.preview-operative #mobileNav,
  body.real-operative #mobileNav{z-index:36}
}
@media (max-width:768px){
  body.preview-operative #mobileNav,
  body.real-operative #mobileNav{z-index:40}
}
/* V9.64 · Vista previa segura de cuenta */
.self-security-meta{margin-top:16px;display:flex;gap:14px;flex-wrap:wrap}.self-security-meta>div{min-width:190px}.user-self-security-card .help-preview-notice{margin:16px 0 4px}.preview-operative #logoutBtn{display:none!important}


/* V9.65 · Navegación operativa separada de cuenta/seguridad */
@media (min-width:769px){
  body.preview-operative #mobileNav,
  body.real-operative #mobileNav{
    grid-template-columns:repeat(2,minmax(210px,1fr));
    width:min(760px,calc(100% - 32px));
  }
}
@media (max-width:768px){
  body.preview-operative #mobileNav,
  body.real-operative #mobileNav{grid-template-columns:repeat(2,1fr)}
}

/* Icono Usuarios y seguridad: persona + candado, sin caracteres dependientes de fuente */
.account-link.security-menu-link>.user-lock-icon{
  position:relative;display:block;width:36px;height:36px;min-width:36px;border-radius:10px;background:#e9f3ed;color:#18543c;
}
.user-lock-icon .user-lock-head{position:absolute;left:13px;top:7px;width:8px;height:8px;border:2px solid currentColor;border-radius:50%;box-sizing:border-box}
.user-lock-icon .user-lock-body{position:absolute;left:9px;top:16px;width:16px;height:12px;border:2px solid currentColor;border-radius:8px 8px 4px 4px;box-sizing:border-box}
.user-lock-icon .user-lock-padlock{position:absolute;left:18px;top:19px;width:10px;height:9px;background:#e9f3ed;border:2px solid currentColor;border-radius:2px;box-sizing:border-box}
.user-lock-icon .user-lock-padlock:before{content:"";position:absolute;left:1px;top:-7px;width:4px;height:6px;border:2px solid currentColor;border-bottom:0;border-radius:5px 5px 0 0;box-sizing:border-box}
.preview-operative .account-link.security-menu-link>.user-lock-icon{width:36px;height:36px;min-width:36px}

/* V9.68 · Móvil limpio en vista operativa / vista previa
   En móvil el encabezado y la franja de vista previa forman parte del flujo normal.
   Al desplazarse desaparecen juntos y nunca se superponen al contenido. */
@media (max-width:768px){
  body.preview-operative .topbar,
  body.real-operative .topbar{
    position:relative !important;
    top:auto !important;
  }
  body.preview-operative .preview-bar{
    position:relative !important;
    top:auto !important;
    z-index:30;
    gap:12px;
    padding:10px 14px;
    align-items:center;
  }
  body.preview-operative .preview-bar > div{
    min-width:0;
    flex:1 1 auto;
  }
  body.preview-operative .preview-bar span{
    line-height:1.3;
  }
  body.preview-operative .preview-bar button{
    flex:0 0 auto;
    max-width:48%;
    white-space:normal;
    line-height:1.15;
    text-align:center;
  }
}
/* V9.69 · Maquilas · confirmación del maquilador */
.maquilador-hero{align-items:center}.maquilador-kpis{grid-template-columns:repeat(2,minmax(0,1fr));max-width:760px}.mq-confirm-list{display:grid;gap:12px}.mq-confirm-card{border:1px solid #d9e6df;border-radius:16px;padding:18px;background:#fff;display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center}.mq-confirm-card h3{margin:0 0 6px;color:#123f31}.mq-confirm-card p{margin:2px 0;color:#65766f}.mq-confirm-card .mq-confirm-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.mq-confirm-card .mq-confirm-meta span{background:#f1f6f3;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:700;color:#36584d}.mq-confirm-summary{background:#f3f8f5;border:1px solid #d9e6df;border-radius:14px;padding:14px 16px;margin-bottom:16px;display:grid;gap:5px}.mq-difference-box{margin:12px 0;padding:12px 14px;border-radius:12px;background:#f3f8f5;color:#315247;font-weight:700}.mq-difference-box.warn{background:#fff4e7;color:#855113}.mq-difference-box.ok{background:#eaf7ef;color:#17633c}
@media(max-width:768px){.maquilador-kpis{grid-template-columns:1fr 1fr}.mq-confirm-card{grid-template-columns:1fr}.mq-confirm-card .primary{width:100%}.maquilador-hero{align-items:flex-start}.maquilador-hero .pill{margin-top:8px}}
@media(max-width:430px){.maquilador-kpis{grid-template-columns:1fr}.mq-confirm-card{padding:15px}}

/* V9.72 · Estados visuales consistentes en Maquilas */
.status-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:900;letter-spacing:.02em;white-space:nowrap;border:1px solid transparent}
.status-success,.mq-state-ok{background:#e4f5e9!important;color:#126638!important;border:1px solid #bfe4ca!important}
.status-danger{background:#fde8e8!important;color:#a32929!important;border:1px solid #f2c3c3!important}
.status-pending{background:#f0f3f1!important;color:#59675f!important;border:1px solid #dfe6e2!important}
@media(max-width:768px){.status-badge{white-space:normal;text-align:center;line-height:1.15}}

/* V9.75 · Producción maquilador + FIFO */
.mq-production-panel{margin-top:18px}.mq-fifo-preview{margin-top:14px;display:grid;gap:8px}.mq-fifo-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid var(--line,#e4e7ec);border-radius:12px;background:#fff}.mq-fifo-row div{min-width:0}.mq-fifo-row strong{display:block}.mq-fifo-row small{display:block;margin-top:3px;color:var(--muted,#667085)}.mq-fifo-count{font-weight:800;white-space:nowrap}.mq-production-panel .primary:disabled{opacity:.5;cursor:not-allowed}@media(max-width:700px){.mq-production-panel .section-title{align-items:stretch}.mq-production-panel .section-title>.primary{width:100%}.mq-fifo-row{align-items:flex-start}.mq-fifo-count{font-size:14px}}

/* V9.76 · Modales operativos estables en PC y móvil */
.modal{
  z-index:10000!important;
  padding:max(20px,env(safe-area-inset-top)) 14px max(20px,env(safe-area-inset-bottom))!important;
  overscroll-behavior:contain;
}
.modal-card{position:relative;max-height:calc(100dvh - 40px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
body.modal-open{overflow:hidden!important;touch-action:none}
body.modal-open .modal{touch-action:pan-y}
#mqProductionForm,#mqProductionForm .grid,#mqProductionForm label{min-width:0}
#mqProductionForm input,#mqProductionForm textarea{min-width:0;max-width:100%}
#mqProductionDate{display:block;width:100%;max-width:100%;min-width:0}
@media(max-width:700px){
  .modal{inset:0!important;align-items:flex-start!important;padding:max(12px,env(safe-area-inset-top)) 10px max(12px,env(safe-area-inset-bottom))!important;overflow:hidden!important}
  .modal-card{width:100%!important;max-width:100%!important;max-height:calc(100dvh - max(24px,env(safe-area-inset-top) + env(safe-area-inset-bottom)))!important;border-radius:18px!important;padding:18px 16px!important;overflow-x:hidden!important;overflow-y:auto!important}
  .modal-head{position:relative;z-index:1}
  .modal-head>div{min-width:0;flex:1}
  .modal-head h2{font-size:28px;line-height:1.08}
  #mqProductionForm .grid.two{display:block!important}
  #mqProductionForm .grid.two label{display:block;width:100%;margin-bottom:12px}
  #mqProductionDate{font-size:16px!important;height:52px!important;padding:0 14px!important;-webkit-appearance:none;appearance:none}
  #mqProductionBags{height:52px!important}
  #mqProductionObs{width:100%!important;resize:vertical}
  #mqProductionModal .actions.split{position:static!important;background:#fff;padding-bottom:2px}
}

/* V9.78 · Ocampo */
#mqOcampoWorkspace .mq-confirm-card{align-items:center}
#mqOcampoSelected{display:flex;flex-direction:column;gap:5px;margin:10px 0 16px;padding:14px 16px;border:1px solid #dfe7e1;border-radius:14px;background:#f8fbf9}
#mqOcampoSelected span{font-size:13px;color:#5d6b62;line-height:1.45}
.mq-yield-low{background:#feeceb!important;color:#a51d1d!important;border-color:#f3c3c0!important}
.mq-low-warning{display:flex;flex-direction:column;gap:4px;margin-top:10px;padding:12px 14px;border-radius:12px;background:#fff1f0;color:#9e2424;border:1px solid #f2c5c2}
.mq-low-warning span{font-size:13px;line-height:1.4}
#mqOcampoLowYield label{display:block;margin-top:12px}
@media(max-width:700px){#mqOcampoWorkspace .mq-confirm-card{align-items:stretch}#mqOcampoWorkspace .mq-open-ocampo{width:100%}}

/* V9.79 · Maquilas ADMIN orientado a control, no acumulados históricos */
.compact-card{padding:14px 16px}.mq-period-bar{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.mq-period-bar>div:first-child{display:flex;flex-direction:column;gap:2px}.mq-period-bar small{color:var(--muted)}.mq-period-actions{display:flex;gap:8px;flex-wrap:wrap;margin-left:auto}.mq-custom-range{width:100%;display:flex;gap:10px;align-items:end;justify-content:flex-end}.mq-custom-range[hidden]{display:none!important}.mq-custom-range label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:700}.mq-custom-range input{min-height:40px;padding:7px 10px}.mq-admin-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}.mq-kpi-attention{border-color:#e7d9b5}.mq-admin-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:14px}.mq-control-files{display:grid;gap:10px}.mq-file-link{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:13px 14px;border:1px solid var(--line);border-radius:14px;text-decoration:none;color:inherit;background:#fff}.mq-file-link span{font-size:12px;color:var(--muted);text-align:right}.mq-alert-item{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--line)}.mq-alert-item:last-child{border-bottom:0}.mq-alert-dot{width:10px;height:10px;border-radius:50%;margin-top:5px;background:#b88316;flex:0 0 auto}.mq-alert-dot.danger{background:#b42318}.mq-alert-dot.info{background:#47735f}.mq-admin-summary td,.mq-admin-summary th{white-space:nowrap}.mq-ocampo-history-card{margin-top:14px}.mq-history-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px}.mq-history-metrics{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.mq-history-metrics span{padding:5px 8px;border-radius:999px;background:#eef4f0;font-size:12px;font-weight:700}.mq-history-metrics .bad{background:#feeceb;color:#b42318}.mq-trace-line{font-size:12px;color:var(--muted);margin-top:6px}.mq-readonly-average{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eef4f0;font-weight:700;color:#214d3e}
@media(max-width:1000px){.mq-admin-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.mq-admin-grid{grid-template-columns:1fr}}
@media(max-width:700px){.mq-period-actions{margin-left:0;width:100%}.mq-period-actions button{flex:1 1 calc(50% - 8px)}.mq-custom-range{justify-content:stretch;align-items:stretch;flex-direction:column}.mq-custom-range button{width:100%}.mq-admin-kpis{grid-template-columns:1fr 1fr}.mq-admin-kpis .mq-kpi:last-child{grid-column:1/-1}.mq-file-link{align-items:flex-start;flex-direction:column}.mq-file-link span{text-align:left}.mq-history-card{grid-template-columns:1fr}}
/* V9.80 · espacios operativos simples; auditoría reservada al ADMIN */
#mqGerardoWorkspace .section-title .actions{display:flex;gap:10px;flex-wrap:wrap}
#mqGerardoWorkspace .mq-confirm-card{align-items:center}
@media(max-width:700px){#mqGerardoWorkspace .section-title .actions{width:100%}#mqGerardoWorkspace .section-title .actions button{flex:1 1 100%}}

/* V9.81 · Ingreso por cargamento de Gerardo */
.mq-batch-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:16px 0 10px}.mq-batch-head p{margin:4px 0 0;color:var(--muted);font-size:13px}.mq-batch-lines{display:grid;gap:12px}.mq-batch-line{border:1px solid var(--border);border-radius:16px;padding:14px;background:#fff}.mq-batch-line-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.mq-batch-line-head strong{font-size:14px}.mq-batch-remove{border:0;background:transparent;color:#8b2d2d;font-weight:700;cursor:pointer}.mq-batch-line .grid{margin-bottom:10px}.mq-batch-total{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 16px;margin:14px 0;padding:14px 16px;border-radius:14px;background:#f2f8f5;border:1px solid #cfe1d8}.mq-batch-total span{font-size:13px}.mq-batch-total strong{font-size:20px}.mq-batch-total small{grid-column:2;color:var(--muted);text-align:right}.mq-batch-santa{font-size:12px;color:var(--muted);margin-top:-3px}
@media(max-width:700px){.mq-batch-head{align-items:stretch;flex-direction:column}.mq-batch-head button{width:100%}.mq-batch-line{padding:12px}.mq-batch-total{grid-template-columns:1fr}.mq-batch-total small{grid-column:1;text-align:left}.mq-batch-line .grid.two{display:grid;grid-template-columns:1fr!important}}
/* V9.82 · Gerardo: ingreso/entrega separados + historial mensual */
.mq-gerardo-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.mq-action-card{position:relative;display:grid;grid-template-columns:auto 1fr;gap:14px;background:#fff;border:1px solid #dce8e1;border-radius:18px;padding:20px;box-shadow:0 10px 28px rgba(28,69,53,.05)}.mq-action-card .primary{grid-column:1/-1;width:100%;margin-top:4px}.mq-action-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:#e8f4ed;color:#1f6648;font-size:25px;font-weight:900}.mq-action-kicker{display:block;font-size:10px;letter-spacing:.14em;font-weight:900;color:#5d756a}.mq-action-card h2{margin:3px 0 5px;color:#123f31;font-size:20px}.mq-action-card p{margin:0 0 10px;color:#687970;font-size:13px;line-height:1.45}.mq-action-card strong{font-size:13px;color:#245540}.mq-action-entrega .mq-action-icon{background:#eef3f0}.mq-history-tools{display:flex;align-items:end;gap:8px}.mq-history-tools label{font-size:11px;font-weight:800;color:#5d6e66}.mq-history-tools input{display:block;margin-top:4px;min-height:36px;padding:6px 9px}.mq-gerardo-table{min-width:980px}.mq-gerardo-table td,.mq-gerardo-table th{white-space:nowrap}.mq-movement{display:inline-block;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:900;letter-spacing:.04em}.mq-movement.in{background:#e9f7ef;color:#17643d}.mq-movement.out{background:#edf3f0;color:#31594a}.mq-delivery-source{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:8px;margin:10px 0 16px;padding:13px;border:1px solid #d9e6df;border-radius:14px;background:#f6faf8}.mq-delivery-source>div{display:flex;flex-direction:column;gap:3px}.mq-delivery-source span{font-size:11px;color:#6a7a72}.mq-delivery-source strong{color:#214c3c}.mq-delivery-source .empty{grid-column:1/-1;color:#74847c}
@media(max-width:760px){.mq-gerardo-actions{grid-template-columns:1fr}.mq-action-card{padding:17px}.mq-history-tools{width:100%;align-items:end}.mq-history-tools label{flex:1}.mq-history-tools input{width:100%}.mq-delivery-source{grid-template-columns:1fr 1fr}.mq-delivery-source>div:first-child{grid-column:1/-1}}

/* V9.85 · Gerardo: saldo visible dentro de Entrega */
.mq-delivery-balance{border:1px solid #cfe1d8;background:#f5faf7;border-radius:16px;padding:14px;margin:4px 0 14px}.mq-delivery-balance-total{display:grid;grid-template-columns:1fr auto;gap:2px 14px;align-items:center}.mq-delivery-balance-total>span{font-size:13px;color:#4d665b;font-weight:700}.mq-delivery-balance-total strong{grid-row:1/3;grid-column:2;font-size:24px;color:#0d4d37}.mq-delivery-balance-total small{font-size:12px;color:#6b7d75}.mq-delivery-balance-detail{margin-top:12px;display:grid;gap:7px}.mq-balance-row{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(90px,.7fr) auto;gap:10px;align-items:center;padding:9px 10px;background:#fff;border:1px solid #dce9e2;border-radius:11px}.mq-balance-row div{min-width:0}.mq-balance-row strong,.mq-balance-row span{display:block}.mq-balance-row .mq-balance-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#163f31}.mq-balance-row .mq-balance-meta{font-size:11px;color:#708078;margin-top:2px}.mq-balance-row .mq-balance-qty{text-align:right;font-size:16px;color:#0d4d37}.mq-balance-after{margin-top:8px;padding:9px 11px;border-radius:10px;background:#edf7f1;color:#245441;font-size:13px;font-weight:700}.mq-balance-empty{font-size:13px;color:#6b7d75;padding:6px 2px}@media(max-width:700px){.mq-delivery-balance-total{grid-template-columns:1fr}.mq-delivery-balance-total strong{grid-row:auto;grid-column:auto;font-size:22px}.mq-balance-row{grid-template-columns:1fr auto}.mq-balance-row>div:nth-child(2){display:none}}
/* V9.86 · Reparto múltiple de Gerardo */
.mq-reparto-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:6px 0 14px}.mq-reparto-summary>div{border:1px solid #d7e5dd;background:#f6faf8;border-radius:14px;padding:12px 14px}.mq-reparto-summary span,.mq-reparto-summary strong{display:block}.mq-reparto-summary span{font-size:12px;color:#65786f}.mq-reparto-summary strong{font-size:21px;color:#124c38;margin-top:2px}.mq-reparto-grid{grid-template-columns:minmax(150px,.8fr) minmax(280px,1.7fr) minmax(100px,.55fr)!important}.mq-reparto-line-meta{font-size:12px;color:#65786f;margin-top:3px}.mq-reparto-line-meta.error{color:#9b2c2c;font-weight:700}
@media(max-width:700px){.mq-reparto-summary{grid-template-columns:1fr 1fr}.mq-reparto-summary>div:first-child{grid-column:1/-1}.mq-reparto-grid{grid-template-columns:1fr!important}.mq-reparto-summary strong{font-size:19px}}
/* V9.88 · Gerardo: entrega múltiple clean tipo tabla */
#mqGerardoModal .mq-modal-card{width:min(1180px,calc(100vw - 34px));max-height:94vh;padding:26px 28px;overflow:auto}
#mqGerardoModal .modal-head{margin-bottom:18px}#mqGerardoModal .modal-head h2{font-size:28px;margin:2px 0 4px}#mqGerardoModal .mq-modal-help{font-size:14px;margin:0;color:var(--muted)}
.mq-entrega-top{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(600px,1.5fr);gap:18px;align-items:end;margin-bottom:22px}.mq-entrega-top>label{margin:0}.mq-entrega-top input{min-height:56px;font-size:17px}
#mqGerardoModal .mq-reparto-summary{margin:0;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid #d7e5dd;background:#f5faf7;border-radius:16px;padding:0}.mq-reparto-summary>div{border:0;background:transparent;border-radius:0;padding:16px 20px;position:relative}.mq-reparto-summary>div+div:before{content:"";position:absolute;left:0;top:16px;bottom:16px;width:1px;background:#cadbd2}.mq-reparto-summary span{font-size:12px}.mq-reparto-summary strong{font-size:30px;line-height:1.05;margin-top:5px}.mq-reparto-summary small{display:block;color:#315c4c;font-size:13px;margin-top:2px}
.mq-entrega-section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:10px}.mq-entrega-section-head h3{font-size:21px;margin:0;color:#16251f}.mq-entrega-section-head p{margin:3px 0 0;color:var(--muted);font-size:13px}
.mq-reparto-table-wrap{border:1px solid #dbe7e0;border-radius:15px;overflow:hidden;background:#fff}.mq-reparto-table-head,.mq-reparto-row{display:grid;grid-template-columns:44px minmax(170px,.9fr) minmax(290px,1.35fr) 110px 125px 72px;gap:12px;align-items:center}.mq-reparto-table-head{padding:12px 14px;background:#f2f8f5;color:#315c4c;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.mq-reparto-row{padding:10px 14px;border-top:1px solid #e4ece7;position:relative}.mq-reparto-row label{margin:0}.mq-reparto-row select,.mq-reparto-row input{min-height:46px;padding:9px 12px}.mq-row-number{font-weight:800;text-align:center;color:#2d4038}.mq-row-kg{font-weight:800;color:#244f3f;text-align:center}.mq-row-remove{width:44px;height:44px;border:1px solid #e3e9e5;border-radius:11px;background:#fff;color:#c43d3d;font-size:19px;cursor:pointer}.mq-row-remove:hover{background:#fff6f6}.mq-mobile-label{display:none}.mq-reparto-line-meta{grid-column:3/6;margin-top:-5px;min-height:0;font-size:11px}.mq-reparto-line-meta:empty{display:none}.mq-add-delivery{margin:12px 0 18px;padding:10px 15px}
.mq-availability-box{background:#f4faf7;border:1px solid #dbe9e1;border-radius:15px;padding:14px 16px;margin:0 0 14px}.mq-availability-title{display:flex;gap:7px;align-items:baseline;margin-bottom:9px}.mq-availability-title strong{color:#18553e}.mq-availability-title span{font-size:12px;color:var(--muted)}.mq-availability-table{background:#fff;border:1px solid #e0e9e4;border-radius:11px;overflow:hidden}.mq-availability-head,.mq-availability-row{display:grid;grid-template-columns:2fr .8fr .8fr .8fr;gap:12px;padding:9px 14px;align-items:center}.mq-availability-head{font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:#37614f;background:#fbfdfc}.mq-availability-row{border-top:1px solid #e8eeeb;font-size:12px}.mq-availability-head>span:nth-child(1),.mq-availability-head>span:nth-child(2),.mq-availability-row>strong:first-child,.mq-availability-row>span:nth-child(2){text-align:left}.mq-availability-head>span:nth-child(3),.mq-availability-head>span:nth-child(4),.mq-availability-row>span:nth-child(3),.mq-availability-row>strong:last-child{text-align:right}.mq-availability-row>span:nth-child(3),.mq-availability-row>strong:last-child{font-variant-numeric:tabular-nums}.mq-availability-empty{padding:14px;color:var(--muted);font-size:13px}
.mq-entrega-observation{margin:0 0 14px}.mq-entrega-observation textarea{min-height:62px}.mq-entrega-footer{display:grid;grid-template-columns:1fr minmax(430px,.85fr);gap:14px;align-items:stretch}.mq-entrega-note{display:flex;align-items:center;padding:12px 15px;border:1px solid #dbe8e1;background:#f6faf8;border-radius:13px;color:#60736a;font-size:12px}.mq-entrega-footer .actions{margin:0}.mq-entrega-footer .actions button{min-height:50px}
@media(max-width:900px){.mq-entrega-top{grid-template-columns:1fr}.mq-reparto-table-head{display:none}.mq-reparto-row{grid-template-columns:32px 1fr 1fr 80px;gap:8px}.mq-reparto-row label:nth-of-type(2){grid-column:2/5}.mq-row-kg{grid-column:2/4;text-align:left;font-size:12px}.mq-row-remove{grid-column:4}.mq-mobile-label{display:block;font-size:10px;font-weight:800;color:var(--muted);margin-bottom:4px}.mq-reparto-line-meta{grid-column:2/5}.mq-entrega-footer{grid-template-columns:1fr}.mq-availability-head,.mq-availability-row{grid-template-columns:1.6fr .7fr .7fr .7fr}}
@media(max-width:620px){#mqGerardoModal .mq-modal-card{width:calc(100vw - 16px);padding:20px 16px}#mqGerardoModal .modal-head h2{font-size:23px}.mq-reparto-summary{grid-template-columns:1fr!important}.mq-reparto-summary>div+div:before{left:14px;right:14px;top:0;bottom:auto;width:auto;height:1px}.mq-reparto-summary strong{font-size:24px}.mq-reparto-row{grid-template-columns:28px 1fr 46px}.mq-reparto-row label,.mq-reparto-row label:nth-of-type(2){grid-column:2/4}.mq-reparto-row label:nth-of-type(3){grid-column:2}.mq-row-kg{grid-column:2}.mq-row-remove{grid-column:3;grid-row:4}.mq-reparto-line-meta{grid-column:2/4}.mq-availability-box{padding:12px}.mq-availability-head{display:none}.mq-availability-row{grid-template-columns:1fr auto;gap:5px 10px}.mq-availability-row>strong:first-child{grid-column:1/-1}.mq-availability-row>span:nth-child(2),.mq-availability-row>span:nth-child(3),.mq-availability-row>strong:last-child{text-align:left}.mq-entrega-footer .actions{grid-template-columns:1fr}.mq-entrega-footer .actions button{width:100%}}
\n/* V9.89 · Entrega Gerardo: selección en dos pasos */
.mq-source-pair{display:grid;grid-template-columns:1fr;gap:6px}.mq-source-pair label{display:block}.mq-source-pair select:disabled{background:#f5f7f6;color:#89968f;cursor:not-allowed}.mq-source-pair select+select{margin-top:4px}
@media(max-width:900px){.mq-reparto-row .mq-source-pair{grid-column:auto}.mq-reparto-row .mq-source-pair label{grid-column:auto!important}}
@media(max-width:620px){.mq-reparto-row .mq-source-pair{grid-column:2/4}.mq-reparto-row .mq-source-pair label{grid-column:auto!important}}

/* V9.91 · Entrega Gerardo: 4 maquilas fijas, saldo protagonista y guardado siempre visible */
#mqGerardoModal .mq-modal-card{max-height:94vh;display:flex;flex-direction:column;overflow:hidden}
#mqGerardoForm{overflow:auto;padding-bottom:86px}
#mqGerardoModal .mq-main-stock{background:#edf7f1}
#mqGerardoModal .mq-main-stock strong{font-size:42px;letter-spacing:-.03em;color:#0b5b3d;display:flex;align-items:baseline;gap:7px}
#mqGerardoModal .mq-main-stock strong small{font-size:15px;font-weight:800;margin:0}
#mqGerardoModal .mq-main-stock em{display:block;font-style:normal;font-size:11px;color:#668076;margin-top:4px}
.mq-fixed-maquila{min-height:46px;display:flex;align-items:center;padding:9px 12px;border:1px solid #d7e3dc;border-radius:11px;background:#f8fbf9;color:#173f31}
.mq-row-status{font-size:11px;font-weight:800;color:#708078;text-align:center}.mq-row-status:not(:empty){white-space:nowrap}
.mq-observation-choice{margin:12px 0}.mq-observation-choice>label{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:#315c4c;cursor:pointer}.mq-observation-choice input[type=checkbox]{width:18px;height:18px}.mq-observation-choice textarea{width:100%;margin-top:10px}
#mqGerardoModal .mq-sticky-save{position:sticky;bottom:0;z-index:8;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);border-top:1px solid #dbe7e0;margin:14px -24px -24px;padding:12px 24px;box-shadow:0 -10px 24px rgba(24,63,48,.08)}
#mqGerardoModal .mq-sticky-save .actions{margin:0}
@media(max-width:900px){.mq-fixed-maquila{grid-column:auto}.mq-row-status{grid-column:4}.mq-reparto-row{grid-template-columns:32px 1fr 1fr 80px}.mq-reparto-row label:nth-of-type(1){grid-column:2/5}.mq-row-kg{grid-column:2/4}}
@media(max-width:620px){#mqGerardoModal .mq-main-stock strong{font-size:34px}.mq-fixed-maquila{grid-column:2/4}.mq-row-status{grid-column:3;grid-row:4}.mq-reparto-row label:nth-of-type(1){grid-column:2/4}#mqGerardoModal .mq-sticky-save{margin:12px -16px -20px;padding:10px 16px}}
/* V9.93 · Entrega Gerardo: flujo progresivo, resumen limpio y footer siempre visible */
#mqGerardoModal .mq-modal-card{height:min(820px,calc(100vh - 28px));max-height:calc(100vh - 28px);overflow:hidden;display:flex;flex-direction:column}
#mqGerardoModal .modal-head{flex:0 0 auto}
#mqGerardoModal .mq-gerardo-delivery-form{min-height:0;flex:1;display:flex;flex-direction:column}
#mqGerardoModal .mq-delivery-scroll{min-height:0;overflow:auto;padding:0 4px 12px 0;scrollbar-gutter:stable}
#mqGerardoModal .mq-entrega-footer{flex:0 0 auto;position:relative;z-index:2;background:#fff;border-top:1px solid #dbe7e0;margin:0 -24px -24px;padding:12px 24px 14px;box-shadow:0 -8px 20px rgba(24,63,48,.06)}
#mqGerardoModal .mq-reparto-summary{min-height:84px;align-items:stretch}
#mqGerardoModal .mq-reparto-summary>div{display:flex;flex-direction:column;justify-content:center;padding:14px 20px}
#mqGerardoModal .mq-main-stock{background:#eef8f2}
#mqGerardoModal .mq-main-stock span{font-size:12px;color:#587166}
#mqGerardoModal .mq-main-stock strong{font-size:44px!important;line-height:1;font-weight:850;color:#0b5b3d!important;margin:4px 0 3px;display:block!important}
#mqGerardoModal .mq-main-stock em{font-size:12px!important;color:#587166!important}
#mqGerardoModal .mq-reparto-summary>div:not(.mq-main-stock) strong{font-size:28px;line-height:1.05;margin:4px 0}
#mqGerardoModal .mq-entrega-section-head{align-items:center;margin-top:2px}
#mqGerardoModal #mqAddEntrega{white-space:nowrap}
#mqGerardoModal .mq-reparto-table-head,#mqGerardoModal .mq-reparto-row{grid-template-columns:38px 1.05fr 1.55fr .55fr .62fr 54px}
#mqGerardoModal .mq-row-remove{width:40px;height:40px;border:1px solid #e1e9e5;border-radius:11px;background:#fff;color:#b33;font-size:22px;line-height:1;cursor:pointer}
#mqGerardoModal .mq-observation-select{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:12px;align-items:end;margin:12px 0 2px}
#mqGerardoModal .mq-observation-select label{margin:0}
#mqGerardoModal .mq-observation-select textarea{min-height:64px}
@media(max-width:900px){#mqGerardoModal .mq-entrega-section-head{align-items:flex-start;gap:10px}#mqGerardoModal .mq-reparto-row{grid-template-columns:32px 1fr 1fr 70px}#mqGerardoModal .mq-row-remove{grid-column:4}.mq-observation-select{grid-template-columns:1fr!important}}
@media(max-width:620px){#mqGerardoModal .mq-modal-card{height:calc(100vh - 10px);max-height:calc(100vh - 10px)}#mqGerardoModal .mq-entrega-footer{margin:0 -16px -20px;padding:10px 16px 12px}#mqGerardoModal .mq-main-stock strong{font-size:38px!important}#mqGerardoModal .mq-entrega-section-head{display:grid;grid-template-columns:1fr}#mqGerardoModal #mqAddEntrega{width:100%}}
/* V9.95 · Observación funcional de Gerardo */
.mq-obs-detail{margin-top:10px;display:grid;gap:10px;padding:12px;border:1px solid #d9e7df;border-radius:14px;background:#f8fbf9}.mq-obs-detail[hidden]{display:none!important}.mq-obs-detail label>span:first-child{display:block;font-weight:700;color:#274c3d;margin-bottom:6px}.mq-obs-text textarea{width:100%;min-height:82px;resize:vertical}.mq-photo-picker input{position:absolute;opacity:0;pointer-events:none}.mq-photo-action{display:flex!important;align-items:center;justify-content:center;min-height:44px;border:1px dashed #9ab8aa;border-radius:11px;background:#fff;color:#175a42!important;font-weight:700!important;cursor:pointer;padding:10px}.mq-photo-preview{display:flex;gap:10px;align-items:center;padding:9px;border-radius:11px;background:#fff;border:1px solid #dce8e2}.mq-photo-preview[hidden]{display:none!important}.mq-photo-preview img{width:68px;height:68px;object-fit:cover;border-radius:9px}.mq-photo-preview>div{display:grid;gap:6px;min-width:0}.mq-photo-preview strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:240px}

/* V9.97 · observación funcional y visible */
.mq-obs-toggle{width:100%;min-height:44px;text-align:left;font-weight:700;margin-top:8px}
.mq-obs-detail{margin-top:10px;padding:14px;border:1px solid #cfe1d8;border-radius:14px;background:#f7fbf9}
.mq-obs-detail-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.mq-obs-detail textarea{width:100%;min-height:88px}
.mq-photo-picker{display:block;margin-top:10px}
.mq-photo-picker input[type=file]{display:block;width:100%;margin-top:6px}
@media(max-width:720px){.mq-obs-detail-head{align-items:flex-start;flex-direction:column}.mq-obs-detail-head .small{width:100%}}
.mq-comparison-note{margin:12px 0 0;color:#68776f;font-size:12px;line-height:1.5}
.mq-comparison-table{min-width:920px}
.mq-comparison-table td{vertical-align:top}
@media(max-width:640px){
  .mq-comparison-table,.mq-production-history .mq-table{min-width:0;display:block}
  .mq-comparison-table thead,.mq-production-history thead{display:none}
  .mq-comparison-table tbody,.mq-production-history tbody{display:block}
  .mq-comparison-table tr,.mq-production-history tr{display:block;border:1px solid #dfe7e2;border-radius:12px;margin:0 0 12px;padding:7px 10px}
  .mq-comparison-table td,.mq-production-history td{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:9px 0;min-width:0;text-align:right}
  .mq-comparison-table td:before,.mq-production-history td:before{content:attr(data-label);text-align:left;color:#607269;font-size:12px;flex:0 0 46%}
  .mq-comparison-table td:last-child,.mq-production-history td:last-child{border-bottom:0}
  .mq-comparison-table td .status-badge,.mq-production-history td .pill{white-space:normal;max-width:52%;text-align:right;line-height:1.5}
  .mq-comparison-table td.mq-empty-cell,.mq-production-history td.mq-empty-cell{display:block}
  .mq-comparison-table td.mq-empty-cell:before,.mq-production-history td.mq-empty-cell:before{display:none}
}

.mq-load-notice{padding:12px 14px;border:1px solid #cfe1d8;border-radius:12px;background:#edf5f1;color:#285d47;margin:0 0 14px;font-size:13px;line-height:1.5}
.mq-load-notice.error{background:#fff6e7;border-color:#ead5a7;color:#795612}

/* V9.105 · Resumen de entrega Gerardo más protagonista */
#mqGerardoModal .mq-reparto-summary{
  min-height:112px;
  border-radius:18px;
  border:1px solid #cfe0d7;
  background:#f3f9f6;
  box-shadow:0 4px 14px rgba(24,63,48,.05);
}
#mqGerardoModal .mq-reparto-summary>div{
  padding:18px 24px;
  justify-content:center;
}
#mqGerardoModal .mq-reparto-summary>div+div:before{
  top:18px;
  bottom:18px;
  background:#c7d9d0;
}
#mqGerardoModal .mq-reparto-summary span,
#mqGerardoModal .mq-reparto-summary em,
#mqGerardoModal .mq-reparto-summary small{
  color:#4f695e;
}
#mqGerardoModal .mq-reparto-summary span{
  font-size:14px;
  font-weight:700;
  letter-spacing:.01em;
}
#mqGerardoModal .mq-main-stock strong{
  font-size:52px!important;
  line-height:.98;
  margin:6px 0 4px;
}
#mqGerardoModal .mq-main-stock em{
  font-size:15px!important;
  font-weight:600;
}
#mqGerardoModal .mq-reparto-summary>div:not(.mq-main-stock) strong{
  font-size:34px;
  line-height:1;
  margin:6px 0 4px;
  font-weight:850;
  color:#173f31;
}
#mqGerardoModal .mq-reparto-summary small{
  font-size:15px;
  font-weight:600;
}
@media(max-width:620px){
  #mqGerardoModal .mq-reparto-summary{
    min-height:auto;
  }
  #mqGerardoModal .mq-reparto-summary>div{
    padding:16px 18px;
  }
  #mqGerardoModal .mq-main-stock strong{
    font-size:42px!important;
  }
  #mqGerardoModal .mq-reparto-summary>div:not(.mq-main-stock) strong{
    font-size:30px;
  }
  #mqGerardoModal .mq-reparto-summary span,
  #mqGerardoModal .mq-main-stock em,
  #mqGerardoModal .mq-reparto-summary small{
    font-size:14px!important;
  }
}

/* V9.109 · Planta Granada */
.pg-hero{background:linear-gradient(135deg,#eef7f2,#f8fbf9)}
.pg-toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap}
.pg-toolbar label{display:grid;gap:5px;min-width:190px}.pg-toolbar label span{font-size:12px;font-weight:800;color:#4f695e;text-transform:uppercase;letter-spacing:.04em}.pg-toolbar input{min-height:42px}
.pg-toolbar-actions{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}
.pg-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}.pg-inventory-kpi{background:#eef8f2!important;border-color:#bfd8cb!important}.pg-inventory-kpi strong{font-size:26px!important}
.pg-daily-table{min-width:1320px}.pg-daily-table th,.pg-daily-table td{text-align:right;white-space:nowrap}.pg-daily-table th:first-child,.pg-daily-table td:first-child{text-align:left}.pg-daily-table tfoot td{font-weight:850;background:#f3f8f5;border-top:2px solid #c9dbd1}.pg-daily-table .pg-saldo{font-weight:850;color:#0c583d}.pg-zero{color:#9aa8a1}.pg-admin-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.pg-close-summary{display:grid;gap:10px}.pg-close-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.pg-close-metrics>div{border:1px solid #dce7e1;border-radius:12px;padding:12px;background:#f8fbf9}.pg-close-metrics span,.pg-close-preview span{display:block;font-size:12px;color:#607269}.pg-close-metrics strong,.pg-close-preview strong{display:block;font-size:22px;margin-top:4px;color:#173f31}.pg-close-result{padding:12px 14px;border-radius:12px;font-weight:800}.pg-close-result.ok{background:#eaf7ef;color:#175a3d;border:1px solid #bee0ca}.pg-close-result.warn{background:#fff5e4;color:#805b10;border:1px solid #ecd3a0}.pg-movement-item{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.pg-movement-item small{display:block;color:#6c7d75;margin-top:3px}.pg-movement-kg{font-weight:850;white-space:nowrap}.pg-movement-kg.in{color:#17623f}.pg-movement-kg.out{color:#8a4b18}.pg-ocampo-panel{margin-top:16px}.pg-ocampo-actions{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.pg-ocampo-actions button{min-width:210px}.pg-ocampo-list{margin-top:8px}.pg-modal-card{max-width:760px}.pg-close-preview{padding:14px 16px;border:1px solid #cfe1d8;border-radius:14px;background:#f3f9f6;margin-bottom:14px}.pg-close-preview strong{font-size:30px}.pg-close-preview small{display:block;color:#607269;margin-top:4px}.pg-base-warning{display:flex;align-items:center;justify-content:space-between;gap:12px}.pg-base-warning button{white-space:nowrap}
@media(max-width:1100px){.pg-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.pg-kpis>div:last-child{grid-column:1/-1}.pg-admin-grid{grid-template-columns:1fr}}
@media(max-width:700px){.pg-toolbar{align-items:stretch}.pg-toolbar label,.pg-toolbar-actions{width:100%;margin-left:0}.pg-toolbar-actions{display:grid;grid-template-columns:1fr}.pg-toolbar-actions button{width:100%}.pg-kpis{grid-template-columns:1fr}.pg-kpis>div:last-child{grid-column:auto}.pg-close-metrics{grid-template-columns:1fr}.pg-ocampo-actions{display:grid}.pg-ocampo-actions button{width:100%;min-width:0}.pg-base-warning{align-items:flex-start;flex-direction:column}}

/* V9.110 · Auditoría de maquilas: alertas accionables y una sola tabla operativa */
.mq-audit-alerts-card{padding-bottom:18px}
.mq-alerts-heading{align-items:center}
.mq-alert-count{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 11px;border-radius:999px;background:#173f31;color:#fff;font-size:16px;font-weight:850}
.mq-alert-list{display:grid;gap:10px}
.mq-audit-alert{appearance:none;width:100%;border:1px solid #dbe5df;background:#fff;border-radius:16px;padding:15px 16px;text-align:left;color:inherit;font:inherit;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;position:relative}
.mq-audit-alert:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(26,63,48,.08);border-color:#b9d0c4}
.mq-audit-alert.danger{border-left:5px solid #c83227}
.mq-audit-alert.warn{border-left:5px solid #c69218}
.mq-audit-alert.info{border-left:5px solid #3b7862}
.mq-audit-alert-top{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:7px}
.mq-audit-alert-kind{font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:850;color:#6b7b73}
.mq-audit-alert-date{font-size:12px;color:#617169;white-space:nowrap}
.mq-audit-alert-title{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.mq-audit-alert-title strong{font-size:17px;color:#163f31}.mq-audit-alert-title span{font-size:14px;font-weight:750;color:#4f6259}
.mq-audit-alert p{margin:5px 0 11px;color:#4f6259;line-height:1.45}
.mq-alert-metrics{display:flex;gap:8px;flex-wrap:wrap}
.mq-alert-metric{min-width:108px;border-radius:11px;background:#f4f8f6;padding:8px 10px;display:grid;gap:2px}.mq-alert-metric span{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:#708078;font-weight:700}.mq-alert-metric strong{font-size:14px;color:#173f31}.mq-alert-metric.emphasis{background:#fff0ed}.mq-alert-metric.emphasis strong{color:#a9271f}
.mq-alert-open{display:block;margin-top:11px;font-size:12px;font-weight:850;color:#175a42}
.mq-alerts-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:110px;border:1px dashed #cddbd4;border-radius:14px;color:#5e7167;background:#f8fbf9}.mq-alerts-empty strong{color:#1b503b;font-size:17px}
.mq-control-files-card{padding:0;overflow:hidden}.mq-control-files-card>summary{list-style:none;cursor:pointer;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}.mq-control-files-card>summary::-webkit-details-marker{display:none}.mq-control-files-card>summary:after{content:'+';font-size:22px;font-weight:700;color:#416859}.mq-control-files-card[open]>summary:after{content:'−'}.mq-control-files-card>summary span{font-size:12px;color:#6e7d76;font-weight:500}.mq-control-files-collapsed{padding:0 20px 18px}
.mq-alert-modal-card{width:min(760px,calc(100vw - 28px));max-height:calc(100vh - 34px);overflow:auto}
.mq-alert-detail{display:grid;gap:14px}.mq-alert-key{border-radius:16px;padding:16px 18px;display:grid;gap:4px}.mq-alert-key span{font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:850}.mq-alert-key strong{font-size:28px;line-height:1.05}.mq-alert-key small{font-size:13px;line-height:1.4}.mq-alert-key.danger{background:#fff1ef;border:1px solid #f0c0bb;color:#8e211b}.mq-alert-key.warn{background:#fff8e7;border:1px solid #ead5a2;color:#76530c}
.mq-alert-detail-section{border:1px solid #dfe8e3;border-radius:15px;padding:14px 15px}.mq-alert-detail-section h3{margin:0 0 10px;font-size:14px;color:#234d3d}.mq-alert-detail-grid{display:flex;gap:8px;flex-wrap:wrap}.mq-alert-detail-grid .mq-alert-metric{flex:1;min-width:145px}
.mq-audit-flow{display:grid;gap:10px}.mq-audit-flow>div{display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:start}.mq-audit-flow>div>span{width:28px;height:28px;border-radius:50%;background:#e8f2ed;color:#18553e;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:850}.mq-audit-flow>div.pending>span{background:#fff0cf;color:#7b590d}.mq-audit-flow p{margin:0;display:grid;gap:2px}.mq-audit-flow p strong{font-size:14px}.mq-audit-flow p small{font-size:13px;color:#5f7068;line-height:1.4}
.mq-alert-trace{display:grid;gap:8px}.mq-trace-item{display:flex;justify-content:space-between;gap:16px;padding:10px 12px;background:#f6f9f7;border-radius:11px}.mq-trace-item>div{display:grid;gap:2px}.mq-trace-item>div:last-child{text-align:right}.mq-trace-item span,.mq-alert-trace-empty{font-size:12px;color:#687970}.mq-alert-review{padding:14px 16px;border-radius:14px;background:#edf5f1;color:#244f3e}.mq-alert-review strong{display:block;margin-bottom:4px}.mq-alert-review p{margin:0;line-height:1.5;font-size:13px}
.mq-production-history-table{min-width:1120px}
@media(max-width:720px){.mq-alerts-heading{align-items:flex-start}.mq-audit-alert-top{align-items:flex-start}.mq-alert-metrics{display:grid;grid-template-columns:1fr 1fr}.mq-alert-metric{min-width:0}.mq-alert-modal-card{width:calc(100vw - 14px);max-height:calc(100vh - 14px)}.mq-trace-item{display:grid}.mq-trace-item>div:last-child{text-align:left}.mq-control-files-card>summary{align-items:flex-start;flex-direction:column}.mq-control-files-card>summary:after{align-self:flex-end}.mq-alert-detail-grid{display:grid;grid-template-columns:1fr 1fr}}

/* V9.115 · Operación e historial separados en vistas operativas */
.mq-role-switch{display:inline-flex;align-items:center;gap:4px;padding:4px;margin:0 0 14px;background:#e9f1ed;border:1px solid #d7e4dd;border-radius:14px}
.mq-role-switch button{appearance:none;border:0;background:transparent;color:#52675e;font:inherit;font-size:13px;font-weight:850;padding:9px 18px;border-radius:10px;cursor:pointer;min-width:112px}
.mq-role-switch button:hover{background:#f6faf8;color:#184d39}
.mq-role-switch button.active{background:#fff;color:#174f37;box-shadow:0 2px 8px rgba(22,72,51,.10)}
[data-mq-role-panel][hidden]{display:none!important}
[data-mq-role-panel]>.card:first-child{margin-top:0}
@media(max-width:640px){.mq-role-switch{display:grid;grid-template-columns:1fr 1fr;width:100%;box-sizing:border-box}.mq-role-switch button{min-width:0;width:100%;padding:10px 12px}.mq-role-switch+div .mq-kpis{margin-top:0}}


/* V9.116 · bandeja auditoría con historial de casos + estados operativos claros */
.mq-audit-tabs{display:inline-flex;gap:4px;padding:4px;margin:0 0 15px;border-radius:13px;background:#eaf2ed;border:1px solid #d8e5dc}
.mq-audit-tabs button{border:0;border-radius:10px;padding:10px 15px;color:#456257;background:transparent;font-weight:750;cursor:pointer}
.mq-audit-tabs button.active{background:#fff;color:#173f31;box-shadow:0 2px 6px rgba(28,63,48,.11)}
.mq-audit-tabs button span{display:inline-grid;place-items:center;min-width:21px;padding:2px 5px;border-radius:100px;background:#dae8df;font-size:11px}
.mq-audit-alert.resolved{border-left:5px solid #287651;background:#f8fcf9}
.mq-audit-alert.resolved .mq-audit-alert-kind{color:#287651}
.mq-audit-alert .mq-alert-open{margin-top:12px}
.mq-audit-case-actions{border-top:1px solid #dce7df;margin-top:16px;padding-top:18px;display:grid;gap:15px}
.mq-audit-resolution-form{display:grid;gap:10px;border:1px solid #dbe7df;border-radius:14px;padding:16px;background:#f8fbf9}
.mq-audit-resolution-form h3{margin:0;color:#234d3b;font-size:17px}
.mq-audit-resolution-form p{margin:0 0 4px;color:#5c7066;font-size:13px;line-height:1.5}
.mq-audit-resolution-form label{font-size:13px;font-weight:750;color:#254a3b}
.mq-audit-resolution-form textarea,.mq-audit-resolution-form select{width:100%;box-sizing:border-box;border-radius:10px;border:1px solid #c9dcd0;background:#fff;padding:11px;font:inherit;color:#193f30}
.mq-audit-resolution-form button{justify-self:start;margin-top:4px}
.mq-audit-resolution-badge{border:1px solid #b9dbca;border-radius:12px;padding:12px;background:#ecf8f1;color:#176140;font-weight:800}
.mq-audit-log{border:1px solid #dfe7e0;border-radius:14px;padding:14px}
.mq-audit-log h3{margin:0 0 12px;font-size:15px;color:#234d3b}
.mq-audit-log-entry{border-left:2px solid #b8d4c2;padding:0 0 13px 14px;margin-left:7px;display:grid;gap:4px}
.mq-audit-log-entry:last-child{padding-bottom:0}
.mq-audit-log-entry small{color:#6b7b73;font-size:12px}
.mq-audit-log-entry span{color:#275440;font-size:13px}
.mq-audit-log-entry p{margin:0;color:#455e50;font-size:13px;line-height:1.5}
.mq-history-substate{display:block;margin-top:4px;font-size:11px;color:#73837a}
.mq-history-done{background:#e7f4ec;color:#195d3b}
.mq-history-wait{background:#f2f4f2;color:#3c6050}
.mq-history-review{background:#fff3d7;color:#84540e}
/* hidden always wins, including grid and flex display rules */
.mq-audit-case-actions[hidden],.mq-audit-resolution-form[hidden],.mq-audit-log[hidden],.mq-audit-resolution-badge[hidden],#mqOpenReopen[hidden],.mq-alert-list[hidden]{display:none!important}
@media(max-width:650px){.mq-audit-tabs{display:flex;width:100%}.mq-audit-tabs button{flex:1}.mq-audit-resolution-form button{width:100%}}

/* V9.117 · liquidaciones sin corte fijo, visual limpio en móvil */
.mq-liquidacion-admin{margin:22px 0}.mq-liquidacion-admin>summary{cursor:pointer;display:flex;gap:8px;flex-direction:column;padding:4px 0}.mq-liquidacion-admin>summary>strong{font-size:1.12rem}.mq-liquidacion-admin>summary>span{color:var(--muted,#65706a);font-size:.86rem;font-weight:400}
.mq-pay-widget{padding:12px 0}.mq-pay-chooser{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin:12px 0 18px}.mq-pay-chooser label,.mq-pay-tariff-form label,.mq-pay-activation-fields label{display:flex;flex-direction:column;gap:6px;font-size:.88rem;font-weight:650;min-width:155px}.mq-pay-chooser input,.mq-pay-tariff-form input,.mq-pay-tariff-form select,.mq-pay-activation-fields input,.mq-pay-paid-form input,.mq-pay-paid-form textarea{max-width:100%;min-width:0;padding:10px;border:1px solid #d5ded9;border-radius:9px;background:#fff;color:#183c2d}.mq-pay-days{padding:10px 14px;border-radius:10px;background:#f0f6f2;font-size:.91rem}.mq-pay-info{border-left:4px solid #76a48c;padding:11px 13px;background:#f3f7f4;border-radius:7px;margin:14px 0}.mq-pay-info.warn{border-color:#d8a841;background:#fff8e8}.mq-pay-info strong{display:block;margin-bottom:4px}.mq-pay-info p{margin:3px 0;font-size:.87rem}.mq-pay-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;margin:15px 0}.mq-pay-kpis>div{border-radius:12px;padding:15px;background:#f5f8f5}.mq-pay-kpis small{display:block;color:#587568}.mq-pay-kpis strong{display:block;margin-top:6px;font-size:1.4rem;color:#174b32}.mq-pay-table{width:100%;border-collapse:collapse;font-size:.88rem}.mq-pay-table th,.mq-pay-table td{padding:11px 9px;text-align:left;border-bottom:1px solid #e5eee8}.mq-pay-table th{color:#566b5f;font-size:.78rem}.mq-pay-table td.money{text-align:right;white-space:nowrap}.mq-pay-panel-title{margin:24px 0 8px;font-size:1.06rem}.mq-pay-strong{font-weight:750;color:#164b34}.mq-pay-flag{display:inline-block;border-radius:20px;background:#fff0ce;padding:3px 8px;font-size:.74rem}.mq-pay-success{display:inline-block;border-radius:20px;background:#e4f5e8;padding:4px 9px;color:#19613b;font-size:.78rem}.mq-pay-history{display:grid;gap:10px}.mq-pay-history-row{border:1px solid #e1e9e2;border-radius:12px;padding:14px}.mq-pay-history-top{display:flex;justify-content:space-between;gap:8px;align-items:start}.mq-pay-history-meta{color:#5f7465;font-size:.85rem;margin:5px 0}.mq-pay-history-actions{display:flex;justify-content:space-between;gap:8px;align-items:center;flex-wrap:wrap}.mq-pay-paid-form{display:grid;gap:10px;border-top:1px solid #e5ece6;margin-top:12px;padding-top:13px}.mq-pay-paid-form label{display:grid;gap:5px}.mq-pay-admin-config{border:1px solid #e3ebe4;padding:16px;border-radius:14px;margin:15px 0}.mq-pay-admin-config h3{margin:0 0 7px}.mq-pay-activation-fields,.mq-pay-tariff-form{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:12px 0}.mq-pay-tariffs{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:9px}.mq-pay-tariffs>div{padding:13px;background:#f4f8f5;border-radius:10px}.mq-pay-tariffs span,.mq-pay-tariffs small{display:block;font-size:.8rem;color:#5e7468}.mq-pay-tariffs strong{display:block;font-size:1.2rem;margin:4px 0}.mq-pay-actions{display:flex;justify-content:flex-end;margin:14px 0}.mq-pay-error{color:#ad3835;background:#fff0ef;border-radius:8px;padding:12px}.mq-pay-muted{font-size:.85rem;color:#5c7467}.mq-pay-cases{margin:4px 0;padding-left:20px;font-size:.84rem}
@media(max-width:670px){.mq-pay-chooser label,.mq-pay-activation-fields label,.mq-pay-tariff-form label{flex:1 1 140px}.mq-pay-chooser button{width:100%}.mq-pay-table{min-width:560px}.mq-pay-table-wrap{overflow-x:auto}.mq-pay-widget{padding:6px 0}.mq-pay-admin-config{padding:12px}}

.mq-pay-activation-fields[hidden],#mqWendyWorkspace[hidden]{display:none!important}

/* V9.118 · Liquidaciones on a dedicated administrative tab */
.mq-admin-page-tabs{display:flex;gap:6px;align-items:center;border-bottom:1px solid #dce8e1;margin:0 0 15px;padding:0 3px 9px}
.mq-admin-page-tabs button{border:0;border-radius:10px;background:#f4f7f5;color:#486457;padding:11px 16px;font:inherit;font-size:14px;font-weight:750;cursor:pointer;min-height:44px}
.mq-admin-page-tabs button.active,.mq-admin-page-tabs button[aria-current=page]{background:#e1f0e6;color:#18553b}
.mq-admin-page-tabs button:focus-visible{outline:2px solid #196a46;outline-offset:2px}
.mq-pay-tariff-panel{margin:16px 0}.mq-pay-tariff-panel>summary{cursor:pointer;display:flex;flex-direction:column;gap:5px;list-style-position:inside}
.mq-pay-tariff-panel>summary>strong{font-size:1.06rem;color:#173f31}.mq-pay-tariff-panel>summary>span{font-weight:400;font-size:.85rem;color:#65766b}
.mq-pay-tariff-panel .mq-pay-admin-config{margin:15px 0 0;border:0;padding:0}
@media(min-width:701px){.mq-admin-page-tabs{display:none}}
@media(max-width:700px){.mq-admin-page-tabs{display:grid;grid-template-columns:1fr 1fr}.mq-admin-page-tabs button{font-size:13px;padding:10px 5px}}

/* V9.123: retroalimentación persistente en el cuadro de auditoría. */
.mq-audit-save-status { margin: 0; padding: 11px 13px; border-radius: 10px; font-size: .93rem; line-height: 1.4; background: #fff1e8; border: 1px solid #ecb399; color: #813514; }
.mq-audit-save-status.info { background: #eef6f2; border-color: #b5d6c5; color: #23503f; }
.mq-audit-save-status[hidden] { display: none; }

/* V9.125 · piloto maquilas / Leby / instalación */
.app-install-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px}.app-install-row small{color:var(--muted,#667085)}
.mq-leby-form{display:grid;gap:16px}.mq-leby-form textarea{min-height:84px}
.mq-compras-admin-card .mq-table td:last-child,.mq-compras-admin-card .mq-table th:last-child{font-weight:800}
@media(max-width:720px){.app-install-row{align-items:stretch;flex-direction:column}.app-install-row button{width:100%}.mq-leby-form .grid.two{grid-template-columns:1fr}}

/* V9.126 · Actualizaciones controladas */
.app-update-banner{position:sticky;top:0;z-index:9999;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 18px;background:#173f33;color:#fff;box-shadow:0 4px 14px rgba(0,0,0,.16)}
.app-update-banner[hidden]{display:none!important}.app-update-copy{display:flex;flex-direction:column;gap:2px}.app-update-copy strong{font-size:14px}.app-update-copy span{font-size:12px;opacity:.9}.app-update-btn{border:0;border-radius:10px;padding:10px 14px;background:#fff;color:#173f33;font-weight:800;cursor:pointer;white-space:nowrap}.app-update-btn:disabled{opacity:.65;cursor:wait}@media(max-width:640px){.app-update-banner{align-items:flex-start;padding:10px 12px}.app-update-copy span{font-size:11px}.app-update-btn{padding:9px 10px;font-size:12px}}


/* V9.127 · Remisiones descargables para Mauricio Olmos y José Mechas */
.remision-actions{display:flex!important;align-items:stretch;gap:10px}.remision-actions #saveBtn{flex:2 1 260px}.remision-actions #downloadSpecialBtn{flex:1.35 1 210px}.remision-actions #voidBtn{flex:1 1 180px}.special-remission-download{border:1px solid #8fb7a4;background:#edf6f1;color:#174f3b;font-weight:800}.special-remission-download:hover{background:#e1f0e8}.remission-download-btn{border-color:#9cc0ae!important;background:#edf6f1!important;color:#174f3b!important;font-weight:800!important}@media(max-width:700px){.remision-actions{flex-direction:column}.remision-actions button{width:100%!important;flex:1 1 auto!important}}

/* V9.128 · Destinatario y flete para despachos Corabastos */
.special-dispatch-panel{margin:18px 0 8px;padding:20px;border:1px solid #cfe0d7;border-radius:18px;background:linear-gradient(180deg,#f7fbf9,#eef6f2)}
.special-dispatch-head h3{margin:5px 0 5px;color:#173f31}.special-dispatch-head p{margin:0 0 16px;color:#60736a;max-width:760px}
.special-dispatch-grid{align-items:start}.special-dispatch-grid select,.special-dispatch-grid input{width:100%}
.special-freight-summary{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-top:12px;padding:16px 18px;border-radius:14px;background:#174f3b;color:#fff}
.special-freight-summary div{display:flex;flex-direction:column;gap:2px}.special-freight-summary span{font-size:13px;font-weight:700;opacity:.82;text-transform:uppercase;letter-spacing:.04em}.special-freight-summary strong{font-size:28px;line-height:1.1}.special-freight-summary small{color:#d9e9e1;text-align:right}
@media(max-width:700px){.special-dispatch-panel{padding:16px}.special-freight-summary{align-items:flex-start;flex-direction:column}.special-freight-summary small{text-align:left}}

/* V9.129 · Remisión simplificada: recibe junto a destino y flete para todas */
#specialRecipientWrap[hidden]{display:none!important}
.remission-freight-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(260px,1fr);gap:12px;align-items:stretch;margin:14px 0}
.remission-freight-row>label{margin:0}
.remission-freight-total{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px;border:1px solid #d4e3db;border-radius:12px;background:#f3f8f5}
.remission-freight-total>span{font-size:12px;font-weight:800;color:#5b7468;text-transform:uppercase;letter-spacing:.03em}
.remission-freight-total>strong{font-size:23px;color:#174f3b;margin-left:auto}
.remission-freight-total>small{font-size:11px;color:#6a7f74;white-space:nowrap}
@media(max-width:700px){.remission-freight-row{grid-template-columns:1fr}.remission-freight-total{align-items:flex-start;flex-direction:column}.remission-freight-total>strong{margin-left:0}.remission-freight-total>small{white-space:normal}}


/* V9.130 · Guardado separado de descarga e indicación clara de consecutivo */
.remision-actions{display:grid!important;grid-template-columns:minmax(240px,2fr) minmax(180px,1fr);gap:10px}
.remision-actions #saveBtn,.remision-actions #voidBtn{width:100%;flex:none}
.remision-action-status{margin:10px 0 0;padding:10px 12px;border:1px solid #e1c985;border-radius:10px;background:#fff8df;color:#6b5313;font-size:13px;line-height:1.4}
.remision-action-status[hidden]{display:none!important}
@media(max-width:700px){.remision-actions{grid-template-columns:1fr}.remision-actions button{width:100%!important}}
/* V9.131 · detalle completo de remisiones */
.remission-freight-row.single{grid-template-columns:minmax(240px,520px)}
.remission-detail-overlay{position:fixed;inset:0;z-index:9999;background:rgba(12,35,27,.56);display:flex;align-items:center;justify-content:center;padding:20px}.remission-detail-overlay[hidden]{display:none!important}.remission-detail-card{position:relative;width:min(760px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:22px;padding:26px;box-shadow:0 30px 80px rgba(0,0,0,.24)}.remission-detail-close{position:absolute;right:16px;top:14px;width:38px;height:38px;border:0;border-radius:50%;background:#edf3ef;color:#315748;font-size:26px;cursor:pointer}.remission-detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding-right:44px}.remission-detail-head h2{margin:4px 0 0;font-size:30px;color:#123f31}.remission-detail-grid,.remission-detail-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}.remission-detail-grid>div,.remission-detail-meta>div{padding:13px 14px;border:1px solid #dce7e1;border-radius:13px;background:#f8fbf9}.remission-detail-grid small,.remission-detail-meta small{display:block;color:#6c7b74;font-size:11px;margin-bottom:4px}.remission-detail-grid strong,.remission-detail-meta strong{color:#173f31}.remission-detail-lines{margin-top:18px;border:1px solid #dce7e1;border-radius:15px;overflow:hidden}.remission-detail-line,.remission-detail-total{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(90px,.7fr) minmax(100px,.8fr);gap:12px;padding:13px 15px;align-items:center;border-bottom:1px solid #e6eee9}.remission-detail-line span,.remission-detail-total span{text-align:right}.remission-detail-total{background:#174f3b;color:#fff;border-bottom:0}.remission-detail-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.modal-open{overflow:hidden}
@media(max-width:650px){.remission-detail-overlay{padding:8px}.remission-detail-card{border-radius:18px;padding:20px 16px;max-height:94vh}.remission-detail-head h2{font-size:25px}.remission-detail-grid,.remission-detail-meta{grid-template-columns:1fr 1fr}.remission-detail-line,.remission-detail-total{grid-template-columns:1fr auto}.remission-detail-line strong,.remission-detail-total strong{grid-column:1/-1}.remission-detail-actions{flex-direction:column}.remission-detail-actions button{width:100%}}

/* V9.132 · Remisión empresarial: misma composición en vista y descarga */
.remission-detail-overlay{padding:18px;background:rgba(8,34,25,.62)}
.remission-detail-card{width:min(940px,100%);max-height:94vh;padding:18px;background:#eef3f0;border-radius:20px}
.remission-detail-close{z-index:4;background:#fff;box-shadow:0 4px 16px rgba(0,0,0,.12)}
.remission-preview-sheet{position:relative;overflow:hidden;background:#fff;border:1px solid #d9e4de;border-radius:20px;padding:30px 34px 110px;color:#18251f;box-shadow:0 10px 30px rgba(25,70,52,.08)}
.remission-preview-head{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:150px}
.remission-preview-brand{display:flex;align-items:center;gap:18px;min-width:0}
.remission-preview-brand img{width:118px;height:118px;object-fit:contain;flex:0 0 auto}
.remission-preview-brand>div{display:flex;flex-direction:column;line-height:1}
.remission-preview-brand strong{font-size:48px;letter-spacing:-1.8px;color:#40312d;font-weight:750}
.remission-preview-brand small{align-self:flex-end;margin-top:8px;font-size:18px;font-weight:800;letter-spacing:.18em;color:#40312d}
.remission-preview-number{border-left:2px solid #2f6e57;padding-left:34px;text-align:right;min-width:280px}
.remission-preview-number strong{display:block;color:#075a3e;font-size:48px;line-height:1;font-weight:900;letter-spacing:-.02em}
.remission-preview-number strong:after{content:"";display:block;width:82px;height:4px;background:#e5b720;margin:13px 0 8px auto}
.remission-preview-number span{display:block;color:#075a3e;font-size:56px;line-height:1;font-weight:800}
.remission-preview-topline{height:3px;background:#075a3e;margin:8px 0 26px}
.remission-preview-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#f1f6f3;border-radius:13px;padding:14px 0;margin-bottom:26px}
.remission-preview-meta>div{padding:7px 22px;min-width:0;border-right:1px solid #9fb8ab}
.remission-preview-meta>div:last-child{border-right:0}
.remission-preview-meta small{display:block;font-size:16px;color:#3c5147;margin-bottom:5px}
.remission-preview-meta strong{display:block;font-size:22px;line-height:1.12;color:#17231e;overflow-wrap:anywhere}
.remission-preview-section{border:1px solid #0b694a;border-radius:11px;overflow:hidden;background:#fff;margin-top:0}
.remission-preview-section-title{position:relative;background:#075a3e;color:#fff;text-align:center;font-size:31px;font-weight:900;letter-spacing:.01em;padding:15px 18px 17px}
.remission-preview-section-title:after{content:"";position:absolute;left:50%;bottom:9px;transform:translateX(-50%);width:135px;height:3px;background:#e5b720}
.remission-preview-table{display:grid}
.remission-preview-tr{display:grid;grid-template-columns:1.2fr .85fr 1fr;min-height:62px;align-items:center;border-top:1px solid #b7cbc0}
.remission-preview-tr>*{height:100%;display:flex;align-items:center;justify-content:center;padding:12px 14px;border-right:1px solid #b7cbc0;font-size:21px}
.remission-preview-tr>*:last-child{border-right:0}
.remission-preview-th{background:#eef5f1;border-top:0;min-height:58px}
.remission-preview-th span{font-weight:850;font-size:20px}
.remission-preview-tr strong{font-weight:800}
.remission-preview-totals{display:grid;grid-template-columns:1fr 1fr;background:#f1f6f3;border-radius:12px;margin:18px 0 22px;min-height:92px}
.remission-preview-totals>div{display:flex;align-items:center;justify-content:center;gap:22px;padding:16px 24px}
.remission-preview-totals>div+div{border-left:1px solid #8fae9e}
.remission-preview-totals span{font-size:22px;color:#263e33}
.remission-preview-totals strong{font-size:40px;color:#075a3e;line-height:1;font-weight:900}
.remission-preview-section.freight{border-color:#b8cec2}
.remission-preview-freight{display:grid;grid-template-columns:1fr 1fr;background:#f1f6f3}
.remission-preview-freight>div{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:23px 20px 27px;min-height:130px}
.remission-preview-freight>div+div{border-left:1px solid #9fb8ab}
.remission-preview-freight span{font-size:21px;color:#384b42}
.remission-preview-freight strong{font-size:45px;line-height:1;color:#075a3e;font-weight:900}
.remission-preview-swoosh{position:absolute;left:0;right:0;bottom:0;height:95px;overflow:hidden;pointer-events:none;background:linear-gradient(164deg,transparent 0 54%,#e5b720 54% 58%,#087049 58% 73%,#075a3e 73% 100%)}
.remission-preview-swoosh:before{content:"";position:absolute;left:-2%;right:34%;bottom:0;height:88px;background:#e1ece6;clip-path:polygon(0 36%,100% 100%,0 100%)}
.remission-preview-swoosh i{position:absolute;left:0;right:0;bottom:34px;height:2px;background:#fff;transform:skewY(-6deg)}
.remission-preview-swoosh b{display:none}
.remission-detail-actions{padding:0 4px 2px}
@media(max-width:760px){
  .remission-detail-overlay{padding:5px}.remission-detail-card{padding:10px;border-radius:14px;max-height:98vh}.remission-preview-sheet{padding:20px 16px 78px;border-radius:14px}
  .remission-preview-head{min-height:100px;gap:12px}.remission-preview-brand{gap:9px}.remission-preview-brand img{width:68px;height:68px}.remission-preview-brand strong{font-size:28px;letter-spacing:-1px}.remission-preview-brand small{font-size:10px;margin-top:4px}
  .remission-preview-number{min-width:128px;padding-left:15px}.remission-preview-number strong{font-size:25px}.remission-preview-number strong:after{width:45px;height:3px;margin:7px 0 5px auto}.remission-preview-number span{font-size:32px}
  .remission-preview-topline{margin:6px 0 15px;height:2px}.remission-preview-meta{grid-template-columns:1fr 1fr;padding:4px 0;margin-bottom:15px}.remission-preview-meta>div{padding:10px 13px}.remission-preview-meta>div:nth-child(2){border-right:0}.remission-preview-meta>div:nth-child(-n+2){border-bottom:1px solid #c9d8d0}.remission-preview-meta small{font-size:12px}.remission-preview-meta strong{font-size:16px}
  .remission-preview-section-title{font-size:22px;padding:12px 12px 14px}.remission-preview-section-title:after{width:84px;height:2px;bottom:7px}.remission-preview-tr{grid-template-columns:1.05fr .75fr 1fr;min-height:50px}.remission-preview-tr>*{font-size:15px;padding:9px 6px}.remission-preview-th span{font-size:14px}
  .remission-preview-totals{min-height:72px;margin:12px 0 14px}.remission-preview-totals>div{gap:9px;padding:10px 8px;flex-direction:column}.remission-preview-totals span{font-size:13px}.remission-preview-totals strong{font-size:27px}
  .remission-preview-freight>div{min-height:100px;padding:15px 8px 18px}.remission-preview-freight span{font-size:13px;text-align:center}.remission-preview-freight strong{font-size:28px}.remission-preview-swoosh{height:65px}
}

/* V9.133 · visor 1:1 con la descarga, ajustado siempre a la pantalla */
.remission-detail-overlay{padding:10px;background:rgba(8,28,22,.68);overflow:hidden}
.remission-detail-card{width:min(1120px,calc(100vw - 20px));height:calc(100dvh - 20px);max-height:none;overflow:hidden;border-radius:18px;padding:12px;background:#eef3f0;display:flex;flex-direction:column;box-sizing:border-box}
#remissionDetailBody{min-height:0;flex:1;display:flex;flex-direction:column;overflow:hidden}
.remission-preview-stage{min-height:0;flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:2px 42px 2px 2px;box-sizing:border-box}
.remission-preview-image{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;box-shadow:0 10px 34px rgba(0,0,0,.16);background:#fff}
.remission-preview-loading{margin:auto;padding:20px;color:#456257;font-weight:800;text-align:center}.remission-preview-loading.error{color:#922}
.remission-detail-actions{flex:0 0 auto;margin:8px 40px 0 0;padding:0;display:flex;justify-content:flex-end;gap:10px}
.remission-detail-actions button{min-width:150px}
.remission-detail-close{right:14px;top:14px}
@media(max-width:700px){
  .remission-detail-overlay{padding:4px}
  .remission-detail-card{width:calc(100vw - 8px);height:calc(100dvh - 8px);padding:7px;border-radius:12px}
  .remission-preview-stage{padding:1px 34px 1px 1px}
  .remission-detail-actions{margin:6px 34px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:7px}
  .remission-detail-actions button{min-width:0;width:100%;padding:10px 8px}
  .remission-detail-close{right:8px;top:8px;width:34px;height:34px;font-size:23px}
}
\n\n/* V9.134 · Pulido visual final de remisión (sin cambiar contenido ni flujo) */\n.remission-preview-meta small{font-size:16px;font-weight:500;line-height:1.2}\n.remission-preview-meta strong{font-size:22px;font-weight:800;line-height:1.15}\n.remission-preview-totals>div{flex-direction:column;gap:8px;text-align:center}\n.remission-preview-totals span{font-size:20px;line-height:1.15}\n.remission-preview-totals strong{font-size:40px;line-height:1}\n@media(max-width:760px){\n  .remission-preview-meta small{font-size:12px}.remission-preview-meta strong{font-size:16px}\n  .remission-preview-totals>div{gap:5px}.remission-preview-totals span{font-size:12px}.remission-preview-totals strong{font-size:25px}\n}\n
/* V9.144 · Compras de Leby simplificadas */
.mq-leby-lines-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:2px}
.mq-leby-lines{display:grid;gap:12px}
.mq-leby-line{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(150px,.8fr) minmax(180px,1fr) minmax(180px,1fr) 42px;gap:10px;align-items:end;padding:14px;border:1px solid #d6e4dc;border-radius:14px;background:#f8fbf9}
.mq-leby-line label{margin:0}
.mq-leby-remove{width:42px;height:42px;border:0;border-radius:10px;background:#faece8;color:#b74331;font-size:24px;font-weight:800;cursor:pointer}
.mq-leby-remove[hidden]{visibility:hidden;display:block!important}
@media(max-width:900px){.mq-leby-line{grid-template-columns:1fr 1fr 42px}.mq-leby-line label:nth-child(3),.mq-leby-line label:nth-child(4){grid-column:auto}.mq-leby-remove{grid-column:3;grid-row:1}}
@media(max-width:620px){.mq-leby-lines-head{align-items:stretch;flex-direction:column}.mq-leby-lines-head button{width:100%}.mq-leby-line{grid-template-columns:1fr 42px}.mq-leby-line label{grid-column:1/-1}.mq-leby-remove{grid-column:2;grid-row:1;justify-self:end}.mq-leby-line label:first-child{grid-column:1}}

/* V9.146 · Textos dinámicos seguros en historial de remisiones */
#sentList .item{
  overflow:hidden;
}
#sentList .item-main{
  flex:1 1 auto;
  min-width:0;
  max-width:100%;
  overflow:hidden;
}
#sentList .item-main b,
#sentList .item-main small{
  display:block;
  max-width:100%;
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:normal;
  hyphens:auto;
  line-height:1.35;
}
#sentList .item-actions{
  flex:0 0 auto;
  max-width:42%;
}
/* Evita que nombres largos crucen divisores en otros bloques de remisiones. */
.remission-preview-meta strong,
.remission-detail-grid strong,
.remission-detail-meta strong{
  min-width:0;
  max-width:100%;
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:normal;
  line-height:1.15;
}
@media(max-width:760px){
  #sentList .item-actions{max-width:none;width:100%}
  #sentList .item-main{width:100%}
}


/* V9.147 · Flete por kilo + campos numéricos estrictos */
.remission-freight-row{grid-template-columns:minmax(220px,1fr) minmax(260px,1fr)}
.remission-freight-total{min-height:46px}
.remission-freight-total strong{font-variant-numeric:tabular-nums}
input[inputmode="numeric"],input[inputmode="decimal"],input[type="number"]{font-variant-numeric:tabular-nums}


/* V9.149 · Instalación antes del login */
.prelogin-install-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 17px;border:1px solid #c8ddd2;border-radius:15px;background:#eff7f3}
.prelogin-install-card>div{min-width:0;display:grid;gap:3px}.prelogin-install-card strong{color:#174f3b;font-size:17px}.prelogin-install-card small{color:#61736a;font-size:13px;line-height:1.35}.prelogin-install-card button{flex:0 0 auto;min-width:120px}
.prelogin-install-card.is-installed{background:#f5f8f6}.prelogin-install-card.is-installed button{display:none}.prelogin-install-card.is-installed strong:before{content:'✓ ';color:#176544}
.login-divider{display:flex;align-items:center;gap:12px;color:#809088;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.login-divider:before,.login-divider:after{content:'';height:1px;background:#dce7e1;flex:1}.login-divider span{white-space:nowrap}
@media(max-width:640px){.prelogin-install-card{align-items:stretch;flex-direction:column}.prelogin-install-card button{width:100%}.login-divider span{font-size:11px}}
