/* FAC OPS · Cotizador · visual aislado y estable */
body.fac-cotizador-open #panelCotizador,
#panelCotizador.show {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}
body.fac-cotizador-open .main > #panelCotizador {
  position: relative !important;
  z-index: 2 !important;
}

#panelCotizador {
  padding: 22px 18px 38px !important;
  background: #fbf8f8 !important;
  min-height: calc(100vh - 82px) !important;
  font-family: inherit !important;
  color: #201b1c !important;
  box-sizing: border-box !important;
}
#panelCotizador *,
#panelCotizador *::before,
#panelCotizador *::after { box-sizing: border-box !important; }
#panelCotizador button,
#panelCotizador input,
#panelCotizador select { font: inherit !important; }
#panelCotizador .cot-page { width:100% !important; max-width:none !important; margin:0 !important; color:#201b1c !important; }
#panelCotizador .cot-head { display:flex !important; justify-content:space-between !important; align-items:center !important; gap:20px !important; margin-bottom:18px !important; }
#panelCotizador .cot-head h2 { font-size:29px !important; line-height:1.1 !important; margin:4px 0 5px !important; color:#171214 !important; }
#panelCotizador .cot-head p { margin:0 !important; color:#776b6d !important; font-size:13px !important; }
#panelCotizador .cot-kicker { font-size:11px !important; font-weight:900 !important; letter-spacing:.11em !important; color:#9f1f35 !important; text-transform:uppercase !important; }
#panelCotizador .cot-head-actions { display:flex !important; gap:10px !important; flex-wrap:wrap !important; }
#panelCotizador .cot-btn { appearance:none !important; border:1px solid #d8b4bb !important; border-radius:10px !important; padding:11px 16px !important; min-height:42px !important; font-weight:800 !important; cursor:pointer !important; background:#fff !important; color:#8f1830 !important; box-shadow:none !important; }
#panelCotizador .cot-btn.primary { background:#9d1d35 !important; color:#fff !important; border-color:#9d1d35 !important; }
#panelCotizador .cot-btn.full { width:100% !important; }

#panelCotizador .cot-analysis,
#panelCotizador .cot-card { background:#fff !important; border:1px solid #eadfe1 !important; border-radius:16px !important; box-shadow:0 9px 26px rgba(73,24,34,.055) !important; }
#panelCotizador .cot-analysis { padding:17px 18px !important; margin-bottom:17px !important; }
#panelCotizador .cot-analysis-title { display:flex !important; justify-content:space-between !important; align-items:center !important; gap:14px !important; margin-bottom:13px !important; }
#panelCotizador .cot-analysis-title b { display:block !important; color:#9d1d35 !important; text-transform:uppercase !important; font-size:12px !important; letter-spacing:.03em !important; }
#panelCotizador .cot-analysis-title span { font-size:12px !important; color:#8b7e80 !important; }
#panelCotizador .cot-live { background:#f3faf5 !important; color:#27854b !important; padding:7px 10px !important; border-radius:999px !important; white-space:nowrap !important; }
#panelCotizador .cot-kpis { display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:12px !important; }
#panelCotizador .cot-kpis article { padding:14px 15px !important; min-height:88px !important; border-radius:12px !important; background:#fcf9fa !important; border:1px solid #f0e7e9 !important; }
#panelCotizador .cot-kpis small,
#panelCotizador .cot-kpis span { display:block !important; color:#817477 !important; font-size:11px !important; line-height:1.35 !important; }
#panelCotizador .cot-kpis strong { display:block !important; font-size:22px !important; line-height:1.15 !important; margin:5px 0 !important; color:#161214 !important; }

#panelCotizador .cot-grid { display:grid !important; grid-template-columns:minmax(0,1.35fr) minmax(380px,.92fr) minmax(320px,.70fr) !important; gap:16px !important; align-items:start !important; }
#panelCotizador .cot-left { display:grid !important; gap:16px !important; min-width:0 !important; }
#panelCotizador .cot-card { padding:17px !important; min-width:0 !important; }
#panelCotizador .cot-card-head { display:flex !important; justify-content:space-between !important; align-items:center !important; gap:12px !important; margin-bottom:14px !important; }
#panelCotizador .cot-card-head > div { display:flex !important; align-items:center !important; gap:9px !important; min-width:0 !important; }
#panelCotizador .cot-card-head > div > span { width:27px !important; height:27px !important; flex:0 0 27px !important; border-radius:8px !important; background:#9d1d35 !important; color:#fff !important; display:grid !important; place-items:center !important; font-weight:900 !important; font-size:12px !important; }
#panelCotizador .cot-card h3 { margin:0 !important; font-size:16px !important; line-height:1.25 !important; color:#251d20 !important; }
#panelCotizador .cot-card-head em { font-style:normal !important; font-size:11px !important; color:#9d1d35 !important; background:#fbebee !important; padding:6px 9px !important; border-radius:8px !important; white-space:nowrap !important; }

#panelCotizador .cot-days { display:grid !important; grid-template-columns:repeat(6,minmax(0,1fr)) !important; gap:9px !important; }
#panelCotizador .cot-day { border:1px solid #eee3e5 !important; background:#fcfafb !important; border-radius:12px !important; padding:11px 8px !important; text-align:center !important; display:grid !important; grid-template-columns:1fr !important; gap:8px !important; min-width:0 !important; cursor:pointer !important; }
#panelCotizador .cot-day.active { border-color:#d8a1ac !important; background:#fff !important; box-shadow:0 3px 12px rgba(127,24,45,.05) !important; }
#panelCotizador .cot-day b { font-size:11px !important; line-height:1.2 !important; text-transform:uppercase !important; color:#2a2224 !important; }
#panelCotizador .cot-day span { font-size:10px !important; color:#877a7d !important; }
#panelCotizador .cot-day input[type="checkbox"] { width:16px !important; height:16px !important; margin:auto !important; accent-color:#9d1d35 !important; }

#panelCotizador input[type="number"],
#panelCotizador input[type="text"],
#panelCotizador select { width:100% !important; min-width:0 !important; height:38px !important; border:1px solid #e5dadd !important; border-radius:8px !important; padding:8px 10px !important; background:#fff !important; color:#251d20 !important; outline:none !important; box-shadow:none !important; }
#panelCotizador input:focus,
#panelCotizador select:focus { border-color:#b74a60 !important; box-shadow:0 0 0 3px rgba(157,29,53,.08) !important; }
#panelCotizador .cot-day input[type="number"] { text-align:center !important; }

#panelCotizador .cot-summary-row { display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:9px !important; margin-top:12px !important; }
#panelCotizador .cot-summary-row > div { padding:12px !important; border-radius:10px !important; background:#f7f9fc !important; border:1px solid #e7ebf2 !important; }
#panelCotizador .cot-summary-row span { display:block !important; font-size:10px !important; color:#7c7375 !important; margin-bottom:4px !important; }
#panelCotizador .cot-summary-row strong { font-size:16px !important; color:#211a1c !important; }
#panelCotizador .cot-summary-row .highlight { background:#fff8ec !important; border-color:#f0d5a5 !important; }

#panelCotizador .cot-sale-grid { display:grid !important; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) !important; gap:16px !important; }
#panelCotizador .cot-modes { display:grid !important; gap:10px !important; }
#panelCotizador .cot-modes > label { display:grid !important; grid-template-columns:auto minmax(0,1fr) minmax(105px,140px) !important; align-items:center !important; gap:8px !important; font-size:12px !important; min-height:38px !important; }
#panelCotizador .cot-modes > label:first-child,
#panelCotizador .cot-modes > label:last-child { grid-template-columns:auto 1fr !important; }
#panelCotizador .cot-modes input[type="radio"],
#panelCotizador .cot-switch input { width:16px !important; height:16px !important; accent-color:#9d1d35 !important; }
#panelCotizador .cot-price-box { border:1px solid #eadfe1 !important; border-radius:12px !important; overflow:hidden !important; }
#panelCotizador .cot-price-box > div { display:flex !important; justify-content:space-between !important; align-items:center !important; gap:12px !important; padding:10px 12px !important; border-bottom:1px solid #f0e7e9 !important; font-size:12px !important; }
#panelCotizador .cot-price-box > div:last-child { border-bottom:0 !important; }
#panelCotizador .cot-price-box .total { background:#fae8ec !important; color:#8f1830 !important; font-size:13px !important; }
#panelCotizador .cot-units { display:grid !important; grid-template-columns:1fr 1fr !important; margin-top:14px !important; border:1px solid #dbe9df !important; border-radius:12px !important; overflow:hidden !important; }
#panelCotizador .cot-units label,
#panelCotizador .cot-units > div { padding:12px !important; }
#panelCotizador .cot-units label { display:grid !important; gap:7px !important; font-size:11px !important; }
#panelCotizador .cot-units > div { background:#f3faf5 !important; }
#panelCotizador .cot-units span { display:block !important; font-size:11px !important; color:#66736a !important; }
#panelCotizador .cot-units strong { display:block !important; margin-top:7px !important; font-size:19px !important; color:#20894a !important; }

#panelCotizador .cot-cost-list { display:grid !important; gap:8px !important; }
#panelCotizador .cot-cost-list label { display:grid !important; grid-template-columns:minmax(0,1fr) 140px !important; align-items:center !important; gap:12px !important; min-height:39px !important; font-size:12px !important; }
#panelCotizador .cot-cost-list label span { line-height:1.25 !important; color:#403638 !important; }
#panelCotizador .cot-cost-list input { text-align:right !important; }
#panelCotizador .cot-cost-total { display:flex !important; justify-content:space-between !important; align-items:center !important; gap:15px !important; margin-top:14px !important; padding:14px !important; background:#f4f2f3 !important; border-radius:10px !important; text-transform:uppercase !important; font-size:12px !important; }
#panelCotizador .cot-cost-total strong { font-size:18px !important; }

#panelCotizador .cot-side { display:grid !important; gap:16px !important; }
#panelCotizador .cot-result-list > div { display:flex !important; justify-content:space-between !important; align-items:center !important; gap:12px !important; padding:10px 0 !important; border-bottom:1px solid #eee6e8 !important; font-size:12px !important; }
#panelCotizador .cot-result-list .profit { background:#eff9f2 !important; margin:0 -8px !important; padding:11px 8px !important; color:#247c44 !important; }
#panelCotizador .cot-evaluation { margin-top:14px !important; padding:13px !important; border-radius:10px !important; display:grid !important; gap:3px !important; }
#panelCotizador .cot-evaluation.good { background:#eff9f2 !important; color:#217541 !important; }
#panelCotizador .cot-evaluation.warn { background:#fff7e8 !important; color:#966200 !important; }
#panelCotizador .cot-evaluation.bad { background:#fff0f1 !important; color:#a51d32 !important; }
#panelCotizador .cot-evaluation span { font-size:11px !important; }
#panelCotizador .cot-card.save { display:grid !important; gap:10px !important; }
#panelCotizador .cot-card.save label { display:grid !important; gap:6px !important; font-size:11px !important; font-weight:700 !important; }

#panelCotizador .cot-history { margin-top:16px !important; }
#panelCotizador .cot-table { overflow:auto !important; }
#panelCotizador .cot-table > div { display:grid !important; grid-template-columns:100px 1.4fr 1.3fr 90px 130px 80px 90px 30px !important; gap:12px !important; align-items:center !important; padding:10px 7px !important; border-bottom:1px solid #eee6e8 !important; font-size:12px !important; min-width:900px !important; }
#panelCotizador .cot-table .head { font-weight:800 !important; color:#766b6d !important; background:#faf7f8 !important; }
#panelCotizador .cot-table i { font-style:normal !important; background:#fff5df !important; color:#8d6500 !important; padding:5px 8px !important; border-radius:999px !important; }
#panelCotizador .cot-table button { border:0 !important; background:none !important; font-size:18px !important; cursor:pointer !important; color:#9d1d35 !important; }
#panelCotizador .cot-empty,
#panelCotizador .cot-loading { min-height:220px !important; display:grid !important; place-items:center !important; color:#887b7e !important; }
#panelCotizador .cot-loading span { width:28px !important; height:28px !important; border:3px solid #eadfe1 !important; border-top-color:#9d1d35 !important; border-radius:50% !important; animation:cotspin .8s linear infinite !important; }
#panelCotizador .cot-loading { align-content:center !important; gap:10px !important; }
@keyframes cotspin { to { transform:rotate(360deg); } }

@media (max-width:1300px) {
  #panelCotizador .cot-grid { grid-template-columns:1fr 1fr !important; }
  #panelCotizador .cot-side { grid-column:1/-1 !important; grid-template-columns:1fr 1fr !important; }
  #panelCotizador .cot-left { grid-column:1/-1 !important; }
  #panelCotizador .cot-kpis { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width:800px) {
  #panelCotizador { padding:15px !important; }
  #panelCotizador .cot-head { align-items:flex-start !important; flex-direction:column !important; }
  #panelCotizador .cot-head-actions { width:100% !important; }
  #panelCotizador .cot-head-actions button { flex:1 !important; }
  #panelCotizador .cot-grid,
  #panelCotizador .cot-sale-grid,
  #panelCotizador .cot-side { grid-template-columns:1fr !important; }
  #panelCotizador .cot-kpis { grid-template-columns:1fr !important; }
  #panelCotizador .cot-days { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  #panelCotizador .cot-summary-row { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  #panelCotizador .cot-cost-list label { grid-template-columns:minmax(0,1fr) 115px !important; }
}

#panelCotizador .cot-payroll-base { display:grid !important; grid-template-columns:minmax(0,1.4fr) minmax(170px,.8fr) !important; gap:10px !important; padding:12px !important; margin-bottom:10px !important; border:1px solid #eadfe1 !important; border-radius:12px !important; background:#fbf8f9 !important; }
#panelCotizador .cot-payroll-base > div { display:grid !important; gap:2px !important; }
#panelCotizador .cot-payroll-base small { color:#7d7275 !important; font-size:10px !important; }
#panelCotizador .cot-payroll-base b { font-size:18px !important; color:#961c34 !important; }
#panelCotizador .cot-payroll-base span { color:#766c6f !important; font-size:10px !important; }
#panelCotizador .cot-payroll-base label { display:grid !important; gap:5px !important; font-size:10px !important; font-weight:700 !important; }
#panelCotizador .cot-payroll-base .cot-btn { grid-column:1/-1 !important; }
#panelCotizador .cot-rates-note { margin:-1px 0 12px !important; padding:9px 10px !important; border-radius:9px !important; background:#fff7e8 !important; color:#815d16 !important; font-size:10px !important; line-height:1.45 !important; }
#panelCotizador .cot-target { margin-top:12px !important; padding:12px !important; border:1px solid #e7dadd !important; border-radius:11px !important; background:#fcfafb !important; display:grid !important; gap:10px !important; }
#panelCotizador .cot-target > label { display:grid !important; grid-template-columns:1fr 82px 18px !important; gap:7px !important; align-items:center !important; font-size:11px !important; font-weight:800 !important; }
#panelCotizador .cot-target > label input { text-align:right !important; }
#panelCotizador .cot-target > div { display:grid !important; grid-template-columns:1fr auto !important; gap:2px 10px !important; align-items:end !important; }
#panelCotizador .cot-target > div span { font-size:11px !important; color:#6f6568 !important; }
#panelCotizador .cot-target > div b { font-size:17px !important; color:#9d1d35 !important; }
#panelCotizador .cot-target > div small { grid-column:1/-1 !important; color:#807477 !important; }
@media (max-width:800px) {
  #panelCotizador .cot-payroll-base { grid-template-columns:1fr !important; }
  #panelCotizador .cot-payroll-base .cot-btn { grid-column:auto !important; }
}

/* RC3 · Inteligencia comercial */
#panelCotizador .cot-smart{display:grid!important;grid-template-columns:1.2fr 1fr!important;gap:14px!important;margin:14px 0!important}
#panelCotizador .cot-smart-prices,#panelCotizador .cot-similar{background:#fff!important;border:1px solid #eadfe1!important;border-radius:14px!important;padding:14px!important;box-shadow:0 8px 22px rgba(69,32,39,.04)!important}
#panelCotizador .cot-smart-prices{display:grid!important;grid-template-columns:1.15fr repeat(3,1fr)!important;gap:10px!important}
#panelCotizador .cot-smart-title{display:grid!important;align-content:center!important;gap:3px!important}.cot-smart-title b{font-size:13px!important;color:#8f1730!important}.cot-smart-title span{font-size:10px!important;color:#766b6e!important}
#panelCotizador .cot-smart-prices button{border:1px solid #eadfe1!important;background:#fbf8f9!important;border-radius:11px!important;padding:11px!important;text-align:left!important;display:grid!important;gap:3px!important;cursor:pointer!important;color:#231c1e!important}
#panelCotizador .cot-smart-prices button.recommended{background:#fff1f3!important;border-color:#c65066!important}#panelCotizador .cot-smart-prices button:hover{transform:translateY(-1px)!important;box-shadow:0 7px 16px rgba(157,29,53,.09)!important}
#panelCotizador .cot-smart-prices small,#panelCotizador .cot-smart-prices span{font-size:9px!important;color:#786d70!important}#panelCotizador .cot-smart-prices strong{font-size:15px!important;color:#9d1d35!important}
#panelCotizador .cot-similar{display:grid!important;gap:8px!important}#panelCotizador .cot-similar article{display:flex!important;justify-content:space-between!important;gap:12px!important;padding:8px 0!important;border-top:1px solid #f0e8ea!important}#panelCotizador .cot-similar article>div{display:grid!important;gap:2px!important}#panelCotizador .cot-similar article>div:last-child{text-align:right!important}#panelCotizador .cot-similar article b{font-size:11px!important}#panelCotizador .cot-similar article span{font-size:9px!important;color:#776c6f!important}#panelCotizador .cot-similar article strong{color:#25804a!important}
#panelCotizador .cot-row-actions{display:flex!important;gap:3px!important;align-items:center!important}#panelCotizador .cot-row-actions button{width:24px!important;height:24px!important;border:1px solid #eadfe1!important;border-radius:7px!important;background:#fff!important;font-size:12px!important;padding:0!important}
@media(max-width:1100px){#panelCotizador .cot-smart{grid-template-columns:1fr!important}#panelCotizador .cot-smart-prices{grid-template-columns:1fr repeat(3,1fr)!important}}
@media(max-width:700px){#panelCotizador .cot-smart-prices{grid-template-columns:1fr!important}}

/* RC4 · Plantillas, inteligencia comercial e historial de versiones */
#panelCotizador .cot-templates,#panelCotizador .cot-intelligence{background:#fff!important;border:1px solid #eadfe1!important;border-radius:14px!important;padding:14px!important;margin:14px 0!important;box-shadow:0 8px 22px rgba(69,32,39,.04)!important}
#panelCotizador .cot-template-head,#panelCotizador .cot-intelligence-head{display:grid!important;gap:3px!important;margin-bottom:10px!important}
#panelCotizador .cot-template-head b,#panelCotizador .cot-intelligence-head b{font-size:13px!important;color:#8f1730!important;text-transform:uppercase!important;letter-spacing:.02em!important}
#panelCotizador .cot-template-head span,#panelCotizador .cot-intelligence-head span{font-size:10px!important;color:#766b6e!important}
#panelCotizador .cot-template-list{display:grid!important;grid-template-columns:repeat(6,minmax(130px,1fr))!important;gap:9px!important}
#panelCotizador .cot-template-list button{display:grid!important;gap:4px!important;text-align:left!important;padding:12px!important;border:1px solid #eadfe1!important;border-radius:11px!important;background:#fbf8f9!important;color:#241d1f!important;cursor:pointer!important;min-height:62px!important}
#panelCotizador .cot-template-list button:hover{border-color:#b52c47!important;background:#fff1f3!important;transform:translateY(-1px)!important}
#panelCotizador .cot-template-list button b{font-size:11px!important}.cot-template-list button span{font-size:9px!important;color:#776c6f!important;line-height:1.35!important}
#panelCotizador .cot-intelligence-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
#panelCotizador .cot-intelligence-grid article{display:grid!important;gap:4px!important;padding:12px!important;border-radius:10px!important;border:1px solid #ece3e5!important;background:#faf8f9!important}
#panelCotizador .cot-intelligence-grid article b{font-size:11px!important}.cot-intelligence-grid article span{font-size:10px!important;line-height:1.45!important;color:#665c5f!important}
#panelCotizador .cot-intelligence-grid article.good{background:#eff9f2!important;border-color:#ccebd7!important}.cot-intelligence-grid article.good b{color:#247c44!important}
#panelCotizador .cot-intelligence-grid article.warn{background:#fff7e8!important;border-color:#f1ddb2!important}.cot-intelligence-grid article.warn b{color:#946100!important}
#panelCotizador .cot-intelligence-grid article.bad{background:#fff0f1!important;border-color:#f0cdd3!important}.cot-intelligence-grid article.bad b{color:#a51d32!important}
#panelCotizador .cot-intelligence-grid article.info{background:#f2f6ff!important;border-color:#d6e1f6!important}.cot-intelligence-grid article.info b{color:#315f9f!important}
#panelCotizador .cot-version{display:block!important;font-size:9px!important;color:#817579!important;font-weight:500!important;margin-top:2px!important;white-space:normal!important}
@media(max-width:1350px){#panelCotizador .cot-template-list{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:800px){#panelCotizador .cot-template-list,#panelCotizador .cot-intelligence-grid{grid-template-columns:1fr!important}}
