:root{
    --ink:#101826; --ink-2:#1B2436; --paper:#F7F8FA; --card:#FFFFFF;
    --text:#111827; --muted:#64748B; --line:#E4E7EC;
    --accent:#0F766E; --accent-soft:#E4F3F1;
    --warn:#B45309; --warn-soft:#FDF3E7;
    --danger:#B42318; --danger-soft:#FDF0EF;
    --serif:'Source Serif 4',Georgia,serif; --sans:'Inter',Arial,sans-serif; --mono:'IBM Plex Mono',monospace;
  }
  *{box-sizing:border-box}
  body{margin:0;font-family:var(--sans);background:var(--paper);color:var(--text);-webkit-font-smoothing:antialiased}
  a{color:inherit}

  /* ── Shell ── */
  .shell{min-height:100vh;display:flex;flex-direction:column}
  .topbar{background:var(--ink);color:#fff;padding:16px 28px;display:flex;align-items:center;justify-content:space-between;gap:16px}
  .brand{display:flex;align-items:center;gap:10px}
  .brand-mark{width:30px;height:30px;border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-weight:700;font-size:15px;color:#fff;overflow:hidden}
  .brand-mark img{width:24px;height:24px;object-fit:contain;display:block}
  .brand-text{font-family:var(--serif);font-size:16px;font-weight:600;letter-spacing:.01em}
  .brand-sub{font-size:11px;color:#9AA6B8;margin-top:1px}
  .topbar-right{display:flex;align-items:center;gap:14px;font-size:13px;color:#B7C0D1}
  .status-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);display:inline-block;box-shadow:0 0 0 3px rgba(15,118,110,.25)}
  .breadcrumb{display:flex;align-items:center;gap:8px;padding:14px 28px;font-size:13px;color:var(--muted);border-bottom:1px solid var(--line);background:var(--card)}
  .breadcrumb button{background:none;border:none;color:var(--accent);font-weight:600;cursor:pointer;padding:0;font-size:13px;font-family:var(--sans)}
  .breadcrumb .sep{color:#C7CDD6}

  .main{flex:1;padding:40px 28px 60px}
  .wrap{max-width:1180px;margin:0 auto}

  /* ── Home: selector de área ── */
  .home-head{text-align:center;max-width:640px;margin:0 auto 40px}
  .kicker{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:10px}
  .home-head h1{font-family:var(--serif);font-size:32px;font-weight:600;margin:0 0 10px;color:var(--ink)}
  .home-head p{margin:0;color:var(--muted);font-size:15px;line-height:1.6}

  .area-grid{display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));gap:22px;max-width:960px;margin:0 auto}
  .area-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:28px;cursor:pointer;text-align:left;transition:transform .16s ease,box-shadow .16s ease;display:flex;flex-direction:column;gap:18px;position:relative;overflow:hidden}
  .area-card:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(16,24,38,.08)}
  .area-card-head{display:flex;justify-content:space-between;align-items:flex-start}
  .area-title{font-family:var(--serif);font-size:23px;font-weight:600;color:var(--ink);margin:0 0 4px}
  .area-desc{font-size:13px;color:var(--muted);margin:0;line-height:1.5;max-width:260px}
  .area-icon{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-weight:700;font-size:18px;flex-shrink:0;overflow:hidden}
  .area-icon img{width:32px;height:32px;object-fit:contain;display:block}
  .area-card.marbueno .area-icon{background:var(--accent-soft);color:var(--accent)}
  .area-card.holding .area-icon{background:#EEF1F5;color:#344054}

  /* barra de saldo — elemento de firma */
  .balance-row{display:flex;flex-direction:column;gap:6px}
  .balance-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
  .balance-figure{font-family:var(--mono);font-size:22px;font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}
  .balance-track{height:4px;border-radius:2px;background:var(--line);overflow:hidden;margin-top:2px}
  .balance-fill{height:100%;border-radius:2px;background:var(--accent);transition:width .6s ease}
  .area-card.holding .balance-fill{background:#475467}

  .area-enter{display:flex;align-items:center;justify-content:space-between;font-size:12.5px;font-weight:600;color:var(--accent);margin-top:auto;padding-top:2px}
  .area-card.holding .area-enter{color:#344054}

  .home-foot-note{text-align:center;font-size:12px;color:var(--muted);margin-top:34px}

  /* ── Subnav de pestañas dentro de un área ── */
  .subnav{display:flex;gap:4px;margin-bottom:24px;border-bottom:1px solid var(--line);flex-wrap:wrap}
  .subnav-btn{background:none;border:none;border-bottom:2px solid transparent;padding:10px 4px;margin-right:22px;font-family:var(--sans);font-size:13.5px;font-weight:600;color:var(--muted);cursor:pointer}
  .subnav-btn:hover{color:var(--text)}
  .subnav-btn.active{color:var(--accent);border-bottom-color:var(--accent)}
  .sub-panel.hidden{display:none}

  /* ── Resumen FX: tira de KPIs pequeños ── */
  .stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:22px}
  .stat-card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 16px}
  .stat-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700;margin-bottom:6px}
  .stat-value{font-family:var(--mono);font-size:18px;font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}
  .stat-value.pos{color:var(--accent)}
  .stat-value.neg{color:var(--danger)}
  .fx-live-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--ink);color:#fff;border-radius:12px;padding:14px 18px;margin-bottom:22px;flex-wrap:wrap}
  .fx-live-bar .fx-rate{font-family:var(--mono);font-size:20px;font-weight:600}
  .fx-live-bar .fx-meta{font-size:12px;color:#B7C0D1}
  .pill-vence{background:var(--warn-soft);color:var(--warn)}
  .pill-vencido{background:var(--danger-soft);color:var(--danger)}

  /* ── Banca conectada: configuración, avisos y estados ── */
  .config-box{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px 20px;margin-bottom:22px}
  .config-row{display:flex;justify-content:space-between;align-items:center;padding:7px 0;border-bottom:1px solid var(--line);font-size:13px}
  .config-row:last-child{border-bottom:none}
  .config-row .k{color:var(--muted)}
  .config-row .v{font-family:var(--mono);font-weight:600;color:var(--text)}
  .warn-banner{background:var(--warn-soft);color:var(--warn);border-radius:10px;padding:12px 16px;font-size:12.5px;line-height:1.5;margin-top:10px}
  .pill-pending{background:#EEF1F5;color:#475467}
  .pill-authorized{background:var(--accent-soft);color:var(--accent)}
  .pill-error{background:var(--danger-soft);color:var(--danger)}
  .pill-expired{background:var(--warn-soft);color:var(--warn)}
  .pill-revoked{background:#F1F2F4;color:var(--muted)}
  .inline-form-row{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;padding:16px 20px;border-top:1px solid var(--line);background:#FBFBFC}
  .inline-form-row .field{display:flex;flex-direction:column;gap:6px;min-width:160px}
  .inline-form-row label{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
  .inline-form-row select,.inline-form-row input{border:1px solid var(--line);border-radius:8px;padding:9px 11px;font-family:var(--sans);font-size:13.5px;background:#fff}
  details.config-toggle summary{cursor:pointer;font-weight:600;font-size:13.5px;color:var(--accent);list-style:none}
  details.config-toggle summary::-webkit-details-marker{display:none}

  /* ── Holding: tarjetas de entidad y pills adicionales ── */
  .entidad-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin-bottom:22px}
  .entidad-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 18px}
  .entidad-card .ent-nombre{font-family:var(--serif);font-size:16px;font-weight:600;color:var(--ink);margin-bottom:2px}
  .entidad-card .ent-codigo{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px}
  .entidad-card .ent-row{display:flex;justify-content:space-between;font-size:12.5px;padding:4px 0;border-top:1px solid var(--line)}
  .entidad-card .ent-row .k{color:var(--muted)}
  .entidad-card .ent-row .v{font-family:var(--mono);font-weight:600}
  .pill-parcial{background:var(--warn-soft);color:var(--warn)}
  .pill-saldada{background:var(--accent-soft);color:var(--accent)}
  .pill-cancelada{background:#F1F2F4;color:var(--muted)}
  .pill-cobrado{background:var(--accent-soft);color:var(--accent)}
  .pill-pagado{background:var(--accent-soft);color:var(--accent)}
  .pill-impagada{background:var(--danger-soft);color:var(--danger)}
  .pill-cobrada{background:var(--accent-soft);color:var(--accent)}

  /* ── Módulo genérico: cabecera + tabla + formulario ── */
  .module-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:22px;flex-wrap:wrap;gap:12px}
  .module-head h1{font-family:var(--serif);font-size:26px;font-weight:600;margin:0 0 4px;color:var(--ink)}
  .module-head p{margin:0;color:var(--muted);font-size:13.5px}
  .btn{border:none;border-radius:9px;padding:10px 18px;font-weight:600;font-size:13.5px;cursor:pointer;font-family:var(--sans)}
  .btn-primary{background:var(--accent);color:#fff}
  .btn-ghost{background:#fff;border:1px solid var(--line);color:var(--text)}
  .btn-danger-text{background:none;border:none;color:var(--danger);font-size:12.5px;font-weight:600;cursor:pointer;padding:4px 6px}
  .btn-edit-text{background:none;border:none;color:var(--accent);font-size:12.5px;font-weight:600;cursor:pointer;padding:4px 6px}

  .panel{background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-bottom:22px}
  .panel-title{padding:16px 20px;border-bottom:1px solid var(--line);font-weight:600;font-size:14px;color:var(--ink);display:flex;justify-content:space-between;align-items:center}

  table.data-table{width:100%;border-collapse:collapse;font-size:13.5px}
  table.data-table th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700;padding:10px 20px;border-bottom:1px solid var(--line);background:#FBFBFC}
  table.data-table td{padding:12px 20px;border-bottom:1px solid var(--line);color:var(--text)}
  table.data-table tr:last-child td{border-bottom:none}
  table.data-table td.num{font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:right}
  .pill{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11.5px;font-weight:600}
  .pill-ok{background:var(--accent-soft);color:var(--accent)}
  .pill-off{background:#F1F2F4;color:var(--muted)}
  .empty-row td{text-align:center;color:var(--muted);padding:28px;font-style:italic}

  .form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;padding:20px}
  .form-grid .field{display:flex;flex-direction:column;gap:6px}
  .form-grid label{font-size:11.5px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
  .form-grid input,.form-grid select,.form-grid textarea{border:1px solid var(--line);border-radius:8px;padding:9px 11px;font-family:var(--sans);font-size:13.5px;background:#fff}
  .form-actions{padding:0 20px 20px;display:flex;gap:10px}

  .loading-note{padding:20px;color:var(--muted);font-size:13px;text-align:center}
  .toast{position:fixed;bottom:24px;right:24px;background:var(--ink);color:#fff;padding:12px 18px;border-radius:10px;font-size:13.5px;box-shadow:0 8px 24px rgba(0,0,0,.2);opacity:0;transform:translateY(8px);transition:.25s;pointer-events:none;z-index:50}
  .toast.show{opacity:1;transform:translateY(0)}
  .toast.err{background:var(--danger)}

  /* ── Login (placeholder mínimo) ── */
  .login-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--ink)}
  .login-card{background:var(--card);border-radius:16px;padding:36px 34px;width:340px}
  .login-card .brand{justify-content:center;margin-bottom:22px}
  .login-card label{display:block;font-size:12px;color:var(--muted);margin:14px 0 6px;font-weight:600}
  .login-card input{width:100%;border:1px solid var(--line);border-radius:9px;padding:10px 12px;font-family:var(--sans);font-size:14px}
  .login-card button{width:100%;margin-top:20px;background:var(--accent);color:#fff;border:none;border-radius:9px;padding:11px;font-weight:600;font-size:14px;cursor:pointer}
  .login-err{color:var(--danger);font-size:12.5px;margin-top:10px;display:none}

  .hidden{display:none !important}

  @media(max-width:640px){
    .area-grid{grid-template-columns:1fr}
    .main{padding:28px 16px 48px}
    .home-head h1{font-size:26px}
  }

/* ═══════════════════════════════════════════════════════════════
   DS-08C · Finanzas / cobros ERP — dashboard compacto
   ═══════════════════════════════════════════════════════════════ */
.datos-module-head{margin-bottom:14px}
.datos-status-strip{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--ink);color:#fff;border-radius:12px;padding:12px 16px;margin-bottom:14px;min-height:58px;flex-wrap:wrap}
.datos-status-strip .loading-note{padding:4px;color:#C9D2DF;text-align:left}
.datos-status-main{display:flex;align-items:center;gap:10px}
.datos-status-main>div{display:flex;flex-direction:column;gap:2px}
.datos-status-main strong{font-size:13.5px}
.datos-status-main span{font-size:11.5px;color:#B7C0D1}
.datos-status-dot{width:9px;height:9px;border-radius:50%;background:#94A3B8;box-shadow:0 0 0 4px rgba(148,163,184,.15);flex:0 0 auto}
.datos-status-dot.ok{background:#34D399;box-shadow:0 0 0 4px rgba(52,211,153,.14)}
.datos-status-dot.warn{background:#F59E0B;box-shadow:0 0 0 4px rgba(245,158,11,.14)}
.datos-status-facts{display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:11.5px;color:#D4DBE5}
.datos-status-facts b{font-weight:600;color:#fff;margin-right:3px}

.datos-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:14px}
.datos-kpi-card{background:var(--card);border:1px solid var(--line);border-top:3px solid #CBD5E1;border-radius:11px;padding:12px 13px;min-width:0}
.datos-kpi-card.mercancia{border-top-color:#475467}
.datos-kpi-card.cartera{border-top-color:#0F766E}
.datos-kpi-card.pendiente{border-top-color:#2563EB}
.datos-kpi-card.riesgo{border-top-color:#B42318;background:#FFFBFA}
.datos-kpi-card.principal{border-top-color:#047857;background:#F7FCFA}
.datos-kpi-card.total{border-top-color:#6D28D9;background:#FBFAFF}
.datos-kpi-label{font-size:10px;line-height:1.25;text-transform:uppercase;letter-spacing:.055em;color:var(--muted);font-weight:750;min-height:25px}
.datos-kpi-value{font-family:var(--mono);font-size:18px;line-height:1.2;font-weight:650;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;margin-top:4px}
.datos-kpi-card.riesgo .datos-kpi-value{color:var(--danger)}
.datos-kpi-card.principal .datos-kpi-value{color:var(--accent)}
.datos-kpi-meta{font-size:10.5px;color:var(--muted);margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.datos-loading-wide{grid-column:1/-1}

.datos-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:14px;margin-bottom:14px}
.datos-panel{margin-bottom:14px}
.datos-dashboard-grid .datos-panel{margin-bottom:0}
.datos-panel .panel-title{padding:13px 16px;font-size:13.5px}
.datos-panel-body{padding:14px 16px}
.datos-panel-body .loading-note{padding:10px}
.datos-implant-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.datos-implant-item{border:1px solid var(--line);border-radius:9px;padding:9px 10px;display:flex;flex-direction:column;gap:3px;min-width:0}
.datos-implant-item span{font-size:10px;text-transform:uppercase;letter-spacing:.045em;color:var(--muted);font-weight:700}
.datos-implant-item strong{font-family:var(--mono);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.datos-ok-text{color:var(--accent)}
.datos-mapping{display:flex;gap:7px;flex-wrap:wrap;margin-top:11px}
.datos-mapping span{background:var(--accent-soft);color:var(--accent);border-radius:20px;padding:5px 9px;font-size:10.5px;font-weight:650}
.datos-mapping span.danger{background:var(--danger-soft);color:var(--danger)}
.datos-mapping b{font-family:var(--mono);margin-right:3px}
.datos-rule-note{margin-top:11px;padding:9px 10px;border-left:3px solid var(--accent);background:#F8FAFC;border-radius:0 8px 8px 0;font-size:11.5px;color:var(--muted);line-height:1.45}
.datos-rule-note strong{color:var(--text)}

.datos-composicion-wrap{border-top:1px solid var(--line);padding-top:12px}
.datos-composicion-head{display:flex;justify-content:space-between;gap:10px;font-size:11.5px;color:var(--muted);margin-bottom:7px}
.datos-composicion-head strong{font-family:var(--mono);color:var(--ink)}
.datos-composicion-bar{height:9px;border-radius:999px;background:#E5E7EB;display:flex;overflow:hidden}
.datos-composicion-bar span{height:100%;display:block;min-width:0}
.datos-composicion-bar .cartera{background:#0F766E}
.datos-composicion-bar .pendiente{background:#2563EB}
.datos-composicion-bar .impagado{background:#B42318}
.datos-composicion-legend{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px;font-size:10.5px;color:var(--muted)}
.datos-composicion-legend span{display:flex;align-items:center;gap:5px}
.datos-composicion-legend i{width:7px;height:7px;border-radius:50%;display:inline-block}
.datos-composicion-legend i.cartera{background:#0F766E}
.datos-composicion-legend i.pendiente{background:#2563EB}
.datos-composicion-legend i.impagado{background:#B42318}

.datos-summary-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:6px 0;font-size:11.5px;border-bottom:1px solid var(--line)}
.datos-summary-row:last-child{border-bottom:none}
.datos-summary-row span{color:var(--muted)}
.datos-summary-row strong{font-family:var(--mono);font-size:12px;text-align:right}
.datos-summary-row.emphasis{padding:9px 0}
.datos-summary-row.emphasis strong{font-size:16px;color:var(--accent)}
.datos-meta-divider{height:5px}
.datos-warning-list{display:flex;flex-direction:column;gap:5px;margin-top:9px}
.datos-warning-list span{font-size:10.5px;background:var(--warn-soft);color:var(--warn);border-radius:7px;padding:6px 8px}
.datos-ok-note{font-size:10.5px;color:var(--accent);margin-top:9px}
.datos-param-form{border-top:1px solid var(--line);padding:13px 16px;background:#FBFBFC}
.datos-param-form label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.045em;color:var(--muted);font-weight:700;margin-bottom:6px}
.datos-input-inline{display:flex;gap:8px}
.datos-input-inline input{width:115px;border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-family:var(--mono);font-size:13px}
.datos-input-inline .btn{padding:8px 14px}
.datos-help{font-size:10.5px;color:var(--muted);margin-top:7px;line-height:1.4}
.datos-table-note{font-size:10.5px;color:var(--muted);font-weight:400}
.datos-table-scroll{overflow-x:auto}
.datos-history-table th,.datos-history-table td{padding-top:9px!important;padding-bottom:9px!important;font-size:11.5px!important}
.datos-error-note{padding:12px;color:var(--danger);font-size:12px}

@media(max-width:1180px){
  .datos-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:820px){
  .datos-dashboard-grid{grid-template-columns:1fr}
  .datos-status-strip{align-items:flex-start}
}
@media(max-width:640px){
  .datos-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .datos-kpi-value{font-size:15px}
  .datos-implant-grid{grid-template-columns:1fr}
  .datos-status-facts{gap:8px;flex-direction:column;align-items:flex-start}
  .datos-table-note{display:none}
}


/* DS-COMERCIAL-ANCHO: no añadir dos veces */
/* ERP · Comercial — ensancha SOLO este panel (full-bleed respecto al viewport,
   no al .wrap general de 1180px) para que quepan más columnas de la tabla
   comparativa multi-ejercicio antes de necesitar scroll horizontal. */
#erpcom-panel-tabla{
  width:100vw;
  position:relative;
  left:50%;
  transform:translateX(-50%);
  max-width:1700px;
  box-sizing:border-box;
}
#erpcom-panel-tabla .datos-table-scroll{overflow-x:auto}

/* Tabla "compacta": se usa en el modo comparativa (2+ ejercicios) para que
   quepan más columnas antes de tener que hacer scroll. */
table.data-table.compacta th{padding:8px 10px;font-size:10px}
table.data-table.compacta td{padding:8px 10px;font-size:12.5px}

@media(max-width:900px){
  #erpcom-panel-tabla{ width:100%; left:0; transform:none; max-width:100%; }
}

/* =========================================================
   MARBUENO DATA STATION
   ERP PEDIDOS PENDIENTES · FULL WIDTH RESPONSIVE V1
   ========================================================= */

/*
 * El módulo ERP debe utilizar todo el ancho disponible
 * dentro del área de trabajo de Data Station.
 */
#erp-pedidos,
#erp-pedidos-panel,
.erp-pedidos,
.erp-pedidos-panel,
[data-module="erp-pedidos"]{
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  box-sizing:border-box !important;
}

/*
 * Neutralizar contenedores interiores que puedan
 * estar limitando el ancho del módulo.
 */
#erp-pedidos .panel,
#erp-pedidos-panel .panel,
.erp-pedidos .panel,
.erp-pedidos-panel .panel{
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  box-sizing:border-box !important;
}

/*
 * Contenido real de Pedidos Pendientes.
 */
#erpped-contenido{
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  box-sizing:border-box !important;
  overflow-x:auto !important;
  -webkit-overflow-scrolling:touch;
}

/*
 * La tabla ocupa siempre todo el espacio disponible.
 */
#erpped-contenido table{
  width:100% !important;
  max-width:none !important;
  border-collapse:collapse !important;
}

/*
 * En escritorio dejamos crecer la tabla de forma natural.
 */
@media (min-width:1200px){

  #erpped-contenido table{
    table-layout:auto !important;
    min-width:100% !important;
  }

  #erpped-contenido th,
  #erpped-contenido td{
    padding-left:8px !important;
    padding-right:8px !important;
  }
}

/*
 * Portátiles y tablets:
 * conservar toda la información y hacer scroll
 * horizontal únicamente cuando sea necesario.
 */
@media (max-width:1199px){

  #erpped-contenido{
    overflow-x:auto !important;
  }

  #erpped-contenido table{
    width:max-content !important;
    min-width:100% !important;
  }

  #erpped-contenido th,
  #erpped-contenido td{
    white-space:nowrap;
  }
}

/*
 * Filtros ERP a todo el ancho.
 */
#erp-pedidos .filters,
#erp-pedidos-panel .filters,
.erp-pedidos .filters,
#erpped-filtros{
  width:100% !important;
  max-width:none !important;
  box-sizing:border-box !important;
}

/*
 * KPIs: distribuir automáticamente según
 * el ancho disponible.
 */
#erpped-kpi-grid{
  width:100% !important;
  max-width:none !important;
  display:grid !important;
  grid-template-columns:
    repeat(auto-fit,minmax(145px,1fr)) !important;
  gap:10px !important;
}

/*
 * Pantallas estrechas.
 */
@media (max-width:700px){

  #erpped-kpi-grid{
    grid-template-columns:
      repeat(2,minmax(0,1fr)) !important;
    gap:7px !important;
  }

  #erpped-contenido table{
    font-size:11px !important;
  }

  #erpped-contenido th,
  #erpped-contenido td{
    padding:6px 7px !important;
  }
}

/*
 * Muy estrecho: KPI a una columna si hace falta.
 */
@media (max-width:420px){

  #erpped-kpi-grid{
    grid-template-columns:1fr !important;
  }
}



/* ERP_CARPETAS_CSS_V2 */

.erp-folders-home-v2{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(2,minmax(280px,1fr));
  gap:22px;
  width:100%;
}

.erp-folder-card-v2{
  min-height:175px;
}

.erp-folder-card-v2.ventas{
  border-top:4px solid #2563EB;
}

.erp-folder-card-v2.compras{
  border-top:4px solid #D97706;
}

.erp-folder-card-v2.logistica{
  border-top:4px solid #047857;
}

.erp-folder-card-v2 .erp-folder-icon-v2{
  font-weight:800;
}

.erp-folder-card-v2.ventas .erp-folder-icon-v2{
  background:#EFF6FF;
  color:#2563EB;
}

.erp-folder-card-v2.compras .erp-folder-icon-v2{
  background:#FFF7ED;
  color:#C2410C;
}

.erp-folder-card-v2.logistica .erp-folder-icon-v2{
  background:#ECFDF3;
  color:#047857;
}

.erp-folder-panel-v2{
  grid-column:1 / -1;
  width:100%;
}

.erp-folder-head-v2{
  display:flex;
  align-items:center;
  gap:18px;
  margin:0 0 24px;
}

.erp-folder-head-v2 h2{
  margin:3px 0 0;
  font-family:var(--serif);
  font-size:27px;
  color:var(--ink);
}

.erp-folder-grid-v2{
  display:grid;
  grid-template-columns:repeat(2,minmax(280px,1fr));
  gap:22px;
}

@media(max-width:700px){

  .erp-folders-home-v2,
  .erp-folder-grid-v2{
    grid-template-columns:1fr;
  }

  .erp-folder-head-v2{
    align-items:flex-start;
    flex-direction:column;
    gap:12px;
  }
}
