.module-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:1rem}.module-heading h2{margin:0;font-size:1.7rem}.module-heading p:last-child{margin:.35rem 0 0;color:#6b7890}.range-card{margin-top:0}.inline-form{display:grid;grid-template-columns:minmax(180px,290px) minmax(180px,290px) auto;align-items:end;gap:.8rem}.inline-form label,.stack-form label{display:grid;gap:.4rem;font-size:.75rem;font-weight:800}.inline-form input,.stack-form input,.stack-form select,.stack-form textarea,.catalog-filters input,.catalog-filters select{border:1px solid #cdd7e5;border-radius:9px;padding:.75rem .85rem;background:#fff;color:#10254a}.catalog-metrics{grid-template-columns:repeat(3,minmax(160px,240px));margin:1rem 0}.catalog-filters{display:grid;grid-template-columns:minmax(220px,440px) 220px;gap:.7rem;margin-top:1rem}.settings-tabs{display:flex;gap:.55rem;overflow:auto;padding-bottom:.3rem}.settings-tabs button{white-space:nowrap;border:1px solid #cbd7e6;border-radius:999px;background:#fff;padding:.65rem 1rem;color:#17345f;font-weight:800}.settings-tabs button.active{background:#0a376f;color:#fff}.settings-tabs button:disabled{opacity:.55}.settings-grid{display:grid;grid-template-columns:1.55fr .85fr;gap:1rem}.stack-form{display:grid;gap:.8rem;margin-top:1rem}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.check-label{display:flex!important;align-items:center;grid-template-columns:auto 1fr!important}.check-label input{width:18px;height:18px}.settings-grid .content-card{min-width:0}
@media(max-width:1000px){.settings-grid{grid-template-columns:1fr}.inline-form{grid-template-columns:1fr 1fr}.inline-form .primary{grid-column:span 2}.catalog-metrics{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.module-heading h2{font-size:1.35rem}.inline-form,.catalog-filters,.form-pair{grid-template-columns:1fr}.inline-form .primary{grid-column:auto}.catalog-metrics{grid-template-columns:1fr}.settings-tabs{margin-right:-1rem}.settings-grid .content-card{padding:1rem}.catalog-filters select{width:100%}}
.master-status-actions{display:flex;align-items:center;gap:.6rem;margin-top:.45rem}.danger-button{border:1px solid #f0b9bd;border-radius:7px;background:#fff7f7;color:#c52735;padding:.45rem .65rem;font-size:.68rem;font-weight:800}.danger-button:hover{background:#c52735;color:#fff}@media(max-width:620px){.master-status-actions{align-items:flex-start;flex-direction:column}.delete-file{white-space:nowrap}}
.submodule-heading{margin:1.2rem 0 .2rem}.sar-layout{display:grid;grid-template-columns:1.8fr .8fr;gap:1rem}.sar-layout .content-card{margin-top:0}.sar-format{font-size:.75rem;color:#415879}.sar-textarea{width:100%;resize:vertical;border:1px solid #b9c9dd;border-radius:9px;padding:1rem;font:600 .86rem/1.65 Consolas,monospace;color:#10254a}.sar-actions{display:flex;gap:.7rem;margin-top:.8rem}.validation-list{display:grid;gap:.3rem;margin-top:.8rem}.validation-list p{margin:0;padding:.65rem;border-bottom:1px solid #e5ebf2;font-size:.75rem}.validation-list .ok{color:#078650}.validation-list .warning{color:#c46b00}.save-success{background:#0aa143;color:#fff;border-radius:8px;padding:.75rem 1rem;font-weight:900}.sar-choice{display:flex;gap:1.2rem;flex-wrap:wrap;margin:1rem 0;border:1px solid #cbd9e8;border-radius:9px;padding:.8rem 1rem}.sar-choice legend{font-size:.75rem;font-weight:900;padding:0 .3rem}.sar-choice label{font-size:.75rem;font-weight:700}.sar-choice input{margin-right:.35rem}@media(max-width:900px){.sar-layout{grid-template-columns:1fr}}@media(max-width:620px){.sar-actions,.sar-choice{display:grid}.sar-actions button,.save-success{width:100%}#sarPreviewSection .card-heading{align-items:stretch;flex-direction:column}}
.sidebar-close{display:none;margin-left:auto;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:1.7rem;line-height:1}.sidebar-backdrop{display:none;position:fixed;inset:0;background:rgba(3,20,45,.48);z-index:19}.sidebar-backdrop.open{display:block}@media(max-width:760px){body.menu-open{overflow:hidden}.sidebar-close{display:grid;place-items:center}.sidebar{width:min(84vw,320px);box-shadow:12px 0 35px rgba(0,0,0,.3)}.logo-lockup{padding-right:0}}
.sidebar .nav-item{font-size:.78rem;letter-spacing:.01em;padding:.68rem .72rem}.sidebar .nav-item>span{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:rgba(255,255,255,.08);font-size:1rem}.sidebar .nav-item.active>span{background:rgba(255,255,255,.18)}.sidebar .nav-item em{font-size:.5rem}.role-options{display:grid;gap:.6rem;border:1px solid #ccd8e7;border-radius:9px;padding:.8rem}.role-options legend{font-size:.72rem;font-weight:900}.role-options label{display:flex!important;align-items:center;gap:.45rem;margin:0!important}.role-options input{width:17px;height:17px}.users-grid{margin-top:1rem}
.user-role{border:1px solid #c8d5e5;border-radius:7px;padding:.48rem .6rem;background:#fff;color:#17345f;font-size:.72rem;font-weight:700}.open-master-list{padding:.55rem .7rem;font-size:.7rem}
.mobile-bottom-nav{display:none}@media(max-width:760px){.sidebar,.sidebar.open,.sidebar-backdrop,.sidebar-backdrop.open,.menu-button{display:none!important}.workspace{padding-bottom:92px}.mobile-bottom-nav{position:fixed;display:flex;justify-content:space-around;align-items:stretch;left:10px;right:10px;bottom:max(8px,env(safe-area-inset-bottom));min-height:66px;padding:6px;background:rgba(255,255,255,.97);border:1px solid #ced9e7;border-radius:18px;box-shadow:0 10px 35px rgba(8,35,72,.22);z-index:60;backdrop-filter:blur(14px)}.mobile-bottom-nav button{flex:1;display:grid;place-items:center;align-content:center;gap:2px;border-radius:13px;background:transparent;color:#6c7d94}.mobile-bottom-nav button span{font-size:1.15rem;line-height:1}.mobile-bottom-nav button small{font-size:.58rem;font-weight:800}.mobile-bottom-nav button.active{background:#e5f0ff;color:#075fd1}.mobile-bottom-nav button.hidden{display:none!important}}
.password-field{position:relative;display:block}.password-field input{width:100%;padding-right:48px!important}.password-toggle{position:absolute;right:5px;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:8px;background:transparent;color:#23456f;font-size:1rem}.password-toggle:active{background:#e7effa}
.file-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin-top:1rem}.file-type-icon{display:grid;place-items:center;width:42px;height:50px;border-radius:6px;background:#e92735;color:#fff;font-size:.7rem;font-weight:900}.file-actions{grid-column:1/-1;display:flex;gap:.35rem}.file-actions button{flex:1;padding:.5rem .35rem;font-size:.62rem}.urgent-badge{display:inline-flex;background:#e82433;color:#fff;border-radius:5px;padding:.32rem .45rem;text-transform:uppercase;font-size:.6rem;font-weight:900}@media(max-width:1100px){.file-card-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.file-card-grid{grid-template-columns:1fr}}
.lot-form{display:grid;grid-template-columns:1.15fr .7fr 1fr .85fr .85fr auto;align-items:end;gap:.65rem;margin-top:1rem}.lot-form label{display:grid;gap:.35rem;font-size:.7rem;font-weight:800}.lot-form input{min-width:0;border:1px solid #cdd7e5;border-radius:8px;padding:.7rem;background:#fff}@media(max-width:1100px){.lot-form{grid-template-columns:repeat(3,1fr)}.lot-form .primary{height:42px}}@media(max-width:620px){.lot-form{grid-template-columns:1fr}}
.file-actions{flex-wrap:wrap}.file-actions button{flex:1 1 68px}
.catalog-pagination{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0 .2rem;color:#62738c;font-size:.72rem}.catalog-pagination nav{display:flex;align-items:center;gap:.35rem}.catalog-pagination button{min-width:34px;height:34px;border:1px solid #c7d5e6;border-radius:8px;background:#fff;color:#17416f;padding:0 .65rem;font-size:.7rem;font-weight:800}.catalog-pagination button:hover:not(:disabled),.catalog-pagination button.active{border-color:#0b69e3;background:#0b69e3;color:#fff}.catalog-pagination button:disabled{opacity:.4;cursor:not-allowed}.pagination-ellipsis{padding:0 .2rem;color:#8290a3}@media(max-width:700px){.catalog-pagination{align-items:stretch;flex-direction:column}.catalog-pagination nav{display:grid;grid-template-columns:repeat(2,1fr);overflow:visible}.catalog-pagination .pagination-number,.pagination-ellipsis{display:none}.catalog-pagination nav button{width:100%}}
.master-create-actions{display:flex;gap:.55rem;flex-wrap:wrap;justify-content:flex-end}.form-grid textarea{width:100%;resize:vertical;border:1px solid #cdd7e5;border-radius:9px;padding:.8rem;font:700 .86rem/1.55 Consolas,monospace;color:#10254a}.bulk-master-preview{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:1rem;padding:.75rem;border-radius:9px;background:#f2f6fb;color:#53677f;font-size:.72rem}.bulk-master-preview b,.bulk-master-preview span{padding:.35rem .55rem;border-radius:7px;background:#fff}.bulk-master-preview b{color:#087d4d}.bulk-master-preview .danger{color:#bd2230}.bulk-master-preview small{flex-basis:100%;color:#bd2230}@media(max-width:620px){.master-create-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.master-create-actions button{width:100%}}
.manifest-chart-card,.sequence-card{margin:18px 0}
.client-tracking-card{margin:18px 0}.client-tracking-card table{min-width:680px}
.manifest-chart-heading{align-items:flex-end}.dashboard-date-filter{display:grid;gap:5px;min-width:190px;color:#64748b;font-size:11px;font-weight:800;text-transform:uppercase}.dashboard-date-filter input{border:1px solid #c7d5e6;border-radius:9px;background:#fff;color:#17345f;padding:9px 11px;font-size:13px;font-weight:800}
.manifest-distribution{display:grid;grid-template-columns:minmax(280px,420px) 1fr;gap:34px;align-items:center;padding:18px 28px 28px}
.manifest-donut{width:min(360px,82vw);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;margin:auto}
.manifest-donut>div{width:57%;aspect-ratio:1;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.manifest-donut small{font-weight:800;line-height:1.25;color:#172033}.manifest-donut strong{font-size:30px;color:#172033;margin-top:8px}.manifest-donut b{font-size:12px;color:#475569}.manifest-donut em{font-style:normal;font-weight:800;color:#2874c6;margin-top:8px}
.manifest-legend-head,.manifest-legend button{display:grid;grid-template-columns:minmax(170px,1fr) 90px 105px 70px;gap:10px;align-items:center}
.manifest-legend-head{padding:0 12px 9px;color:#64748b;font-size:11px;text-transform:uppercase;font-weight:800;border-bottom:1px solid #e5eaf1}
.manifest-legend button{width:100%;border:0;border-bottom:1px solid #edf0f4;background:transparent;padding:13px 12px;text-align:right;color:#172033}.manifest-legend button:hover{background:#f6f9fd}.manifest-legend button span{text-align:left;font-weight:800}.manifest-legend button i{display:inline-block;width:13px;height:13px;border-radius:50%;margin-right:10px;vertical-align:-1px}
.pedimento-sequence{display:grid;grid-template-columns:repeat(3,minmax(150px,220px)) 1fr;gap:14px;padding:10px 24px 24px}.pedimento-sequence article{background:#f7f9fc;border:1px solid #e3e8ef;border-radius:12px;padding:15px}.pedimento-sequence article small{display:block;color:#64748b}.pedimento-sequence article strong{display:block;font-size:22px;margin-top:5px;color:#172033}
.pedimento-sequence .sequence-warning{background:#fff6ed;border-color:#fdba74}.pedimento-sequence .sequence-warning strong{color:#c2410c}.pedimento-sequence .sequence-ok{background:#effaf3}.sequence-list{max-height:130px;overflow:auto;border-left:1px solid #e5eaf1;padding-left:18px}.sequence-list span{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid #eef1f5}.sequence-list em{font-style:normal;color:#c2410c;font-size:12px}.sequence-clear{color:#15803d!important}
@media(max-width:900px){.manifest-chart-heading{align-items:stretch;flex-direction:column}.dashboard-date-filter{width:100%}.manifest-distribution{grid-template-columns:1fr;padding:12px}.manifest-legend{overflow:auto}.manifest-legend-head,.manifest-legend button{min-width:520px}.pedimento-sequence{grid-template-columns:1fr}.sequence-list{border-left:0;padding-left:0}}

/* v1.16.18: tarjeta compacta para captura y envío por WhatsApp */
.manifest-chart-card{
  width:min(100%,1100px);
  margin:18px auto;
}
.manifest-chart-card .card-heading{
  padding:18px 20px 10px;
}
.manifest-distribution{
  grid-template-columns:300px minmax(0,1fr);
  gap:22px;
  padding:12px 20px 22px;
}
.manifest-donut{
  width:min(280px,76vw);
}
.manifest-donut strong{
  font-size:27px;
}
.manifest-legend-head,.manifest-legend button{
  grid-template-columns:minmax(150px,1fr) 72px 86px 56px;
  gap:7px;
}
.manifest-legend button{
  padding:10px 8px;
}

@media(max-width:760px){
  .manifest-chart-card{
    width:100%;
  }
  .manifest-distribution{
    grid-template-columns:1fr;
    padding:10px 12px 16px;
  }
  .manifest-legend-head,.manifest-legend button{
    min-width:0;
    grid-template-columns:minmax(132px,1fr) 64px 78px 48px;
    font-size:11px;
  }
}

/* v1.16.22: tres donas financieras compactas en una sola fila */
.manifest-chart-card{width:min(100%,1080px)}
.manifest-distribution{display:block;padding:8px 12px 16px}
.finance-donuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.finance-donut-card{min-width:0;border:1px solid #e2e8f0;border-radius:12px;padding:10px;background:#fff}
.finance-donut-card h4{margin:0 0 8px;text-align:center;font-size:11px;color:#17345f;letter-spacing:.03em}
.finance-donut-card .manifest-donut{width:min(190px,100%);margin:0 auto 8px}
.finance-donut-card .manifest-donut strong{font-size:20px;margin-top:0}
.finance-donut-card .manifest-donut b,.finance-donut-card .manifest-donut em,.finance-donut-card .manifest-donut small{font-size:9px;margin-top:3px}
.finance-legend{display:grid;gap:2px}
.finance-legend button{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:5px;align-items:center;width:100%;border:0;border-top:1px solid #eef2f7;background:transparent;padding:5px 2px;color:#172033;font-size:9px;text-align:right}
.finance-legend button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;font-weight:800}
.finance-legend button i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px}
.finance-legend button em{font-style:normal;color:#2874c6;font-weight:900}
.finance-legend button small{grid-column:2/4;color:#64748b}
@media(max-width:820px){.finance-donuts{grid-template-columns:1fr}.finance-donut-card .manifest-donut{width:min(210px,70vw)}}
