/* =====================================================================
   Fierro y Lámina · Sistema Integral — estilo único para todos los módulos
   Se carga al final de cada página: unifica botones, filtros, pestañas,
   campos, encabezados y tarjetas para que todo se vea igual y sobrio.
   ===================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

:root{
  --ui-ink:#16181A; --ui-ink2:#3D434B; --ui-muted:#6B727B; --ui-muted2:#9AA1A9;
  --ui-line:#E3E6EA; --ui-line2:#D4D9DF; --ui-hover:#F5F6F8; --ui-bg:#F4F5F7;
  --ui-dark:#1F2328; --ui-accent:#EE6E0C;
  --ui-h:34px; --ui-r:8px; --ui-fs:13px;
  --ui-shadow:0 1px 2px rgba(16,24,40,.05);
}
html body{font-family:'Inter',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;-webkit-font-smoothing:antialiased;}

/* ---------- 1. Botones de acción: todos iguales ---------- */
html body :is(.btn,.btn-primary,.mm-btn,.report-btn,#cmpBootSkip){
  display:inline-flex !important;align-items:center;justify-content:center;gap:7px;
  height:var(--ui-h) !important;min-height:var(--ui-h);padding:0 14px !important;
  font:600 var(--ui-fs)/1 'Inter',system-ui,sans-serif !important;letter-spacing:0 !important;text-transform:none !important;
  border:1px solid var(--ui-line2) !important;border-radius:var(--ui-r) !important;
  background:#fff !important;color:var(--ui-ink) !important;box-shadow:var(--ui-shadow) !important;
  white-space:nowrap;cursor:pointer;opacity:1;filter:none !important;
  transition:background .12s,border-color .12s,color .12s;vertical-align:middle;
}
html body :is(.btn,.btn-primary,.mm-btn,.report-btn,#cmpBootSkip):hover:not(:disabled){background:var(--ui-hover) !important;border-color:#BFC5CD !important;}
html body :is(.btn.primary,.btn.pri,.btn-primary,.mm-btn.primary){
  background:var(--ui-dark) !important;border-color:var(--ui-dark) !important;color:#fff !important;
}
html body :is(.btn.primary,.btn.pri,.btn-primary,.mm-btn.primary):hover:not(:disabled){background:#000 !important;border-color:#000 !important;}
html body .btn.bad{color:#B42318 !important;}
html body .btn.bad:hover{background:#FEF3F2 !important;border-color:#F4B4AE !important;}
html body :is(.btn,.btn-primary,.mm-btn,.report-btn):disabled{opacity:.5 !important;cursor:not-allowed;}
html body :is(.btn,.btn-primary,.mm-btn,.report-btn,button):focus-visible{outline:2px solid var(--ui-accent);outline-offset:2px;}
/* Íconos de línea (los pone ui.js) */
.ui-ic{width:15px;height:15px;flex:none;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;margin-left:-2px;}
/* Botones chicos dentro de tablas y desgloses: misma forma, un poco más bajos */
html body :is(td,.det-acts,.cot-actions,.row-actions) :is(.btn,.mm-btn){height:28px !important;min-height:28px;padding:0 10px !important;font-size:12px !important;}

/* ---------- 2. Filtros (segmentados, pastillas y chips): un solo diseño ---------- */
html body .seg{background:#EDEFF2 !important;border-radius:var(--ui-r) !important;padding:3px !important;gap:2px !important;}
html body .seg button{height:28px;padding:0 12px !important;border-radius:6px !important;font:600 12.5px/1 'Inter',sans-serif !important;color:var(--ui-muted) !important;background:transparent !important;border:0 !important;}
html body .seg button.active{background:#fff !important;color:var(--ui-ink) !important;box-shadow:0 1px 2px rgba(16,24,40,.12) !important;}
html body .seg button:hover:not(.active){color:var(--ui-ink) !important;}
html body :is(.pill,.anz-chip,.cat-chip,.chip):is(button){
  display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 12px !important;
  font:600 12.5px/1 'Inter',sans-serif !important;border-radius:7px !important;
  background:#fff !important;border:1px solid var(--ui-line) !important;color:var(--ui-muted) !important;
  opacity:1 !important;box-shadow:none !important;cursor:pointer;transition:all .12s;
}
html body :is(.pill,.anz-chip,.cat-chip,.chip):is(button):hover{color:var(--ui-ink) !important;border-color:#BFC5CD !important;}
html body :is(.pill.active,.anz-chip.active,.cat-chip.on,.chip.on):is(button){background:var(--ui-dark) !important;border-color:var(--ui-dark) !important;color:#fff !important;}
/* Colores que sí significan algo (empresa A/B en comparativos): se conservan */
html body .pill.sel-b.active,html body .pill-emp-occidente.active{background:var(--ui-accent) !important;border-color:var(--ui-accent) !important;color:#fff !important;}
html body .pill-emp-ambas.active{background:linear-gradient(90deg,var(--ui-dark) 50%,var(--ui-accent) 50%) !important;border-color:transparent !important;color:#fff !important;}
/* Sección 6 de Cartera (Ambas / Construcción / Occidente) = filtro, no acción */
html body #cartAcumEmp .btn,html body :is(#fpTb1,#fpTb2){height:30px !important;font-size:12.5px !important;box-shadow:none !important;}
html body #cartAcumEmp .btn:not(.primary),html body :is(#fpTb1,#fpTb2):not(.primary){color:var(--ui-muted) !important;}

/* ---------- 3. Pestañas: subrayado discreto, igual en todos los módulos ---------- */
html body .tabs{background:#fff !important;border-bottom:1px solid var(--ui-line) !important;gap:4px !important;box-shadow:none !important;}
html body .tab-btn{
  background:transparent !important;border:0 !important;border-bottom:2px solid transparent !important;border-radius:0 !important;
  color:var(--ui-muted) !important;font:600 13.5px/1 'Inter',sans-serif !important;padding:14px 12px 12px !important;margin-bottom:-1px;
}
html body .tab-btn:hover{color:var(--ui-ink) !important;}
html body .tab-btn.active{color:var(--ui-ink) !important;border-bottom-color:var(--ui-accent) !important;}
/* Pestañas de Cartera (eran botones) */
html body #cartSubTabs{display:flex !important;gap:4px !important;border-bottom:1px solid var(--ui-line);margin:4px 0 16px !important;padding:0 !important;background:none !important;}
html body #cartSubTabs .btn{background:transparent !important;border:0 !important;border-bottom:2px solid transparent !important;border-radius:0 !important;box-shadow:none !important;color:var(--ui-muted) !important;height:auto !important;padding:12px 12px 11px !important;font-size:13.5px !important;margin-bottom:-1px;}
html body #cartSubTabs .btn:hover{background:transparent !important;color:var(--ui-ink) !important;}
html body #cartSubTabs .btn.primary{color:var(--ui-ink) !important;border-bottom-color:var(--ui-accent) !important;}

/* ---------- 4. Campos y listas desplegables ---------- */
html body :is(input[type=text],input[type=search],input[type=date],input[type=number],input[type=email],input[type=password],select):not(table *):not(.numbox){
  height:var(--ui-h);padding:0 11px;font:500 var(--ui-fs) 'Inter',sans-serif;color:var(--ui-ink);
  border:1px solid var(--ui-line2);border-radius:var(--ui-r);background-color:#fff;box-shadow:var(--ui-shadow);box-sizing:border-box;
}
html body select:not(table *){padding-right:30px !important;appearance:none;-webkit-appearance:none;cursor:pointer;
  background:#fff url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6'><path d='M1 1l4 4 4-4' stroke='%236B727B' stroke-width='1.5' fill='none' stroke-linecap='round'/></svg>") no-repeat right 11px center !important;}
html body :is(input,select,textarea):focus{outline:none;border-color:var(--ui-accent) !important;box-shadow:0 0 0 3px rgba(238,110,12,.15) !important;}
html body .multiselect-btn{height:var(--ui-h) !important;border-radius:var(--ui-r) !important;border:1px solid var(--ui-line2) !important;background-color:#fff !important;font:500 var(--ui-fs) 'Inter',sans-serif !important;box-shadow:var(--ui-shadow);}
html body .toolbar{gap:8px !important;}

/* ---------- 5. Encabezados de módulo: claros, sin logo repetido ---------- */
/* Ventas */
html body .topbar{background:#fff !important;color:var(--ui-ink) !important;box-shadow:none !important;border-bottom:1px solid var(--ui-line);position:relative !important;padding:16px 24px !important;}
html body .topbar .brand-mark{display:none !important;}
html body .topbar .brand-text .name{font:700 17px/1.2 'Inter',sans-serif !important;letter-spacing:-.01em !important;color:var(--ui-ink);}
html body .topbar .brand-text .sub{color:var(--ui-muted) !important;font-size:12px !important;}
html body .topbar .kpi-strip .item .v{color:var(--ui-ink) !important;font:700 15px 'Inter',sans-serif !important;}
html body .topbar .kpi-strip .item .l{color:var(--ui-muted2) !important;}
html body #tabs.tabs{top:0 !important;padding:0 20px !important;}
/* Cartera */
html body > header{background:#fff !important;color:var(--ui-ink) !important;border-bottom:1px solid var(--ui-line);padding:16px 24px !important;}
html body > header h1{font:700 17px/1.2 'Inter',sans-serif !important;letter-spacing:-.01em;text-transform:none;}
html body > header .sub{color:var(--ui-muted) !important;}
/* Compras */
html body #purchaseLogo{display:none !important;}
html body .header h1{font:700 17px/1.2 'Inter',sans-serif !important;letter-spacing:-.01em !important;}

/* ---------- 6. Tarjetas, avisos y tablas ---------- */
html body :is(.card,.kpi,.filterbar){border-color:var(--ui-line) !important;border-radius:10px !important;box-shadow:var(--ui-shadow) !important;}
html body .card h3{font-family:'Inter',sans-serif !important;letter-spacing:-.005em;}
html body .hint{font-size:12px;line-height:1.5;border-radius:var(--ui-r);}
html body th{font-family:'Inter',sans-serif;letter-spacing:.03em;}
/* Noticias */
html body .top{padding:16px 24px 12px !important;}
html body .top h1{font:700 17px/1.2 'Inter',sans-serif !important;letter-spacing:-.01em;}
/* Buscadores con ícono (Cotizaciones): la caja es el campo */
html body .cot-search-box{display:flex;align-items:center;gap:8px;height:var(--ui-h);padding:0 11px !important;border:1px solid var(--ui-line2) !important;border-radius:var(--ui-r) !important;background:#fff !important;box-shadow:var(--ui-shadow);}
html body .cot-search-box input{border:0 !important;box-shadow:none !important;height:30px !important;padding:0 !important;background:transparent !important;flex:1;min-width:0;}
html body .cot-search-ico{font-size:0 !important;width:14px;height:14px;flex:none;opacity:.55;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2316181A' stroke-width='2.2' stroke-linecap='round'><circle cx='11' cy='11' r='7'/><path d='m21 21-4.3-4.3'/></svg>") no-repeat center/14px;}
html body .cot-search-box:focus-within{border-color:var(--ui-accent) !important;box-shadow:0 0 0 3px rgba(238,110,12,.15);}
/* Avisos informativos: neutros y discretos */
html body .hint{background:#F6F7F9;color:var(--ui-ink2);border:1px solid var(--ui-line);}
/* Botones de solo ícono */
html body .ui-solo{padding:0 !important;width:var(--ui-h);}
html body td .ui-solo{width:28px;}
html body .ui-solo .ui-ic{margin:0;}
/* Menú de usuario: íconos alineados */
html body :is(#umUsers,#umPw,#umOut){display:flex !important;align-items:center;gap:9px;}
/* Entrar / cambiar contraseña */
html body :is(#bLogin,#bChange){height:40px !important;border-radius:var(--ui-r) !important;background:var(--ui-dark) !important;border:1px solid var(--ui-dark) !important;color:#fff !important;font:600 14px/1 'Inter',sans-serif !important;box-shadow:var(--ui-shadow) !important;}
html body :is(#bLogin,#bChange):hover:not(:disabled){background:#000 !important;}
