/* ============================================================
   RUVO v24 — Pulido visual del panel admin
   (se carga DESPUÉS de app.css para no romper nada existente)
   ============================================================ */

/* --- Fix: los SVG inline de las guías no tenían tamaño y se veían
       gigantes (300x150 por defecto). Ahora todos los títulos de guía
       usan un icono compacto de 16px. --- */
.guide-box .gb-title svg{
  width:16px;height:16px;flex-shrink:0;color:var(--accent);
  display:inline-block;vertical-align:middle;
}
.guide-box .gb-title{line-height:1.35}
.guide-box .gb-num{width:24px;height:24px;font-size:11.5px}

/* ============================================================
   1) PANEL DE ADMINISTRACIÓN — hero + métricas + accesos
   ============================================================ */
.admin-hero{
  position:relative;overflow:hidden;
  border:1px solid var(--border);border-radius:18px;
  padding:26px 26px 24px;margin-bottom:18px;
  background:
    radial-gradient(900px 320px at 8% -20%, rgba(108,140,255,.20), transparent 60%),
    radial-gradient(700px 300px at 100% 0%, rgba(33,212,180,.13), transparent 55%),
    linear-gradient(145deg, #151a29 0%, #111624 55%, #0f1420 100%);
  box-shadow:var(--shadow-soft);
}
.admin-hero::after{
  content:"";position:absolute;right:-70px;bottom:-90px;width:240px;height:240px;
  border-radius:50%;background:radial-gradient(circle,rgba(168,85,247,.18),transparent 68%);
  pointer-events:none;
}
.ah-eyebrow{
  display:inline-flex;align-items:center;gap:7px;
  font-size:10.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;
  color:var(--accent);background:rgba(33,212,180,.10);
  border:1px solid rgba(33,212,180,.22);border-radius:999px;padding:4px 10px;margin-bottom:12px;
}
.ah-title{font-size:clamp(20px,3vw,27px);font-weight:800;letter-spacing:-.02em;line-height:1.15;margin-bottom:6px}
.ah-sub{font-size:13px;line-height:1.6;color:var(--text-dim);max-width:640px}
.ah-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px;position:relative;z-index:1}
.ah-actions .btn{display:inline-flex;align-items:center;gap:7px}
.ah-actions .btn svg{width:15px;height:15px}

.admin-stats{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
  gap:12px;margin-bottom:24px;
}
.astat{
  position:relative;overflow:hidden;
  background:linear-gradient(160deg,var(--bg-card),#141927);
  border:1px solid var(--border);border-radius:14px;padding:15px 15px 14px;
  display:flex;flex-direction:column;gap:3px;min-width:0;
  transition:border-color .15s,transform .15s,box-shadow .15s;
}
.astat:hover{border-color:#33405f;transform:translateY(-1px);box-shadow:var(--shadow-soft)}
.astat::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:3px;
  background:var(--primary);opacity:.75;
}
.astat.ok::before{background:var(--ok)}
.astat.accent::before{background:var(--accent)}
.astat.danger::before{background:var(--danger)}
.astat.warn::before{background:var(--warning)}
.astat-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.astat-lbl{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-mute);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.astat-ic{
  width:28px;height:28px;border-radius:8px;display:grid;place-items:center;flex-shrink:0;
  background:var(--bg-elev);color:var(--text-dim);border:1px solid var(--border);
}
.astat-ic svg{width:15px;height:15px}
.astat.accent .astat-ic{background:var(--accent-soft);color:var(--accent);border-color:rgba(33,212,180,.28)}
.astat.ok .astat-ic{background:#163a26;color:var(--ok);border-color:rgba(67,209,127,.28)}
.astat.danger .astat-ic{background:var(--danger-soft);color:var(--danger);border-color:rgba(255,107,107,.28)}
.astat.warn .astat-ic{background:var(--warning-soft);color:var(--warning);border-color:rgba(255,200,87,.28)}
.astat-val{font-size:clamp(21px,2.4vw,27px);font-weight:800;line-height:1.15;margin-top:4px;word-break:break-word}
.astat-val.accent{color:var(--accent)}
.astat-val.ok{color:var(--ok)}
.astat-val.danger{color:var(--danger)}
.astat-sub{font-size:11px;color:var(--text-mute);line-height:1.4}

.admin-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 12px}
.admin-section-head h3{font-size:15px;font-weight:700}
.admin-section-head p{font-size:12px;color:var(--text-mute);margin-top:2px}

.quick-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(225px,1fr));gap:11px}
.quick-card{
  display:flex;align-items:center;gap:13px;text-align:left;width:100%;
  background:linear-gradient(160deg,var(--bg-card),#141927);
  border:1px solid var(--border);border-radius:14px;padding:14px;
  transition:border-color .15s,transform .15s,background .15s,box-shadow .15s;
  min-width:0;
}
.quick-card:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:var(--shadow-soft)}
.qc-ic{
  width:42px;height:42px;border-radius:11px;flex-shrink:0;display:grid;place-items:center;
  background:var(--primary-soft);color:var(--primary-hover);border:1px solid rgba(108,140,255,.22);
}
.qc-ic svg{width:21px;height:21px}
.quick-card.accent .qc-ic{background:var(--accent-soft);color:var(--accent);border-color:rgba(33,212,180,.24)}
.quick-card.warn .qc-ic{background:var(--warning-soft);color:var(--warning);border-color:rgba(255,200,87,.24)}
.qc-body{min-width:0;flex:1}
.qc-title{font-size:13.5px;font-weight:700;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qc-desc{font-size:11.5px;color:var(--text-mute);line-height:1.4;margin-top:2px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.qc-arrow{color:var(--text-mute);flex-shrink:0;font-size:18px;line-height:1;transition:transform .15s,color .15s}
.quick-card:hover .qc-arrow{color:var(--primary-hover);transform:translateX(3px)}

@media(max-width:700px){
  .admin-hero{padding:20px 18px;border-radius:15px}
  .admin-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .astat{padding:12px}
  .astat-lbl{font-size:9.5px;letter-spacing:.05em}
  .astat-ic{width:24px;height:24px;border-radius:7px}
  .astat-ic svg{width:13px;height:13px}
  .quick-grid{grid-template-columns:1fr;gap:9px}
  .quick-card{padding:12px}
}
@media(max-width:380px){
  .admin-stats{grid-template-columns:1fr}
}

/* ============================================================
   2) IMPORTAR DESDE FAL.AI — pestañas + más económicos
   ============================================================ */
.fc-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px;border-bottom:1px solid var(--border);padding-bottom:0}
.fc-tab{
  appearance:none;border:none;background:transparent;color:var(--text-mute);
  font-family:inherit;font-size:13px;font-weight:700;padding:9px 13px 10px;cursor:pointer;
  border-radius:9px 9px 0 0;border-bottom:2px solid transparent;margin-bottom:-1px;
  display:inline-flex;align-items:center;gap:7px;transition:color .15s,background .15s;
}
.fc-tab svg{width:15px;height:15px}
.fc-tab:hover{color:var(--text);background:var(--bg-elev)}
.fc-tab.active{color:var(--primary-hover);border-bottom-color:var(--primary)}
.fc-pane{display:none}
.fc-pane.active{display:block;animation:fadeIn .18s ease}

.fc-cheap-intro{
  display:flex;align-items:flex-start;gap:10px;
  background:var(--accent-soft);border:1px solid rgba(33,212,180,.28);
  border-radius:12px;padding:11px 13px;margin-bottom:12px;
}
.fc-cheap-intro .ico{color:var(--accent);flex-shrink:0;margin-top:1px}
.fc-cheap-intro .ico svg{width:17px;height:17px}
.fc-cheap-intro .txt{font-size:12px;line-height:1.5;color:var(--text-dim);min-width:0}
.fc-cheap-intro .txt strong{color:var(--text)}

.fc-cheap-bar{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:end;
  margin-bottom:12px;
}
.fc-cheap-bar .field{margin-bottom:0;min-width:0}
.fc-cheap-meta{font-size:11.5px;color:var(--text-mute);margin:0 0 10px;line-height:1.5}
.fc-cheap-meta strong{color:var(--text-dim)}

.fc-cheap-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:11px}
.fc-cheap-card{
  position:relative;display:flex;flex-direction:column;gap:9px;
  background:linear-gradient(160deg,var(--bg-card),#141927);
  border:1px solid var(--border);border-radius:13px;padding:12px;
  transition:border-color .15s,transform .15s,box-shadow .15s;min-width:0;
}
.fc-cheap-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow-soft)}
.fc-cheap-card.top{border-color:rgba(33,212,180,.5);background:linear-gradient(160deg,#15251f,#121a24)}
.fc-cheap-rank{
  position:absolute;top:10px;right:10px;z-index:1;
  font-size:10px;font-weight:800;letter-spacing:.04em;
  background:var(--bg-elev);border:1px solid var(--border);color:var(--text-mute);
  border-radius:999px;padding:2px 8px;
}
.fc-cheap-card.top .fc-cheap-rank{background:var(--accent);border-color:var(--accent);color:#06231c}
.fc-cheap-top{display:flex;align-items:center;gap:10px;min-width:0;padding-right:44px}
.fc-cheap-thumb{
  width:46px;height:46px;border-radius:10px;overflow:hidden;flex-shrink:0;
  background:var(--bg-elev);border:1px solid var(--border);display:grid;place-items:center;color:var(--text-mute);
}
.fc-cheap-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.fc-cheap-thumb svg{width:20px;height:20px}
.fc-cheap-name{font-size:13px;font-weight:700;line-height:1.25;min-width:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.fc-cheap-vendor{font-size:10.5px;color:var(--text-mute);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fc-cheap-price{
  display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap;
  background:var(--bg-soft);border:1px solid var(--border);border-radius:10px;padding:8px 10px;
}
.fc-cheap-price .usd{font-family:var(--mono);font-size:13.5px;font-weight:800;color:var(--accent)}
.fc-cheap-price .ars{font-size:10.5px;color:var(--text-mute);text-align:right}
.fc-cheap-price .unit{font-size:10px;color:var(--text-mute);margin-top:1px}
.fc-cheap-actions{display:flex;gap:7px;align-items:center;margin-top:auto}
.fc-cheap-actions .btn{flex:1;justify-content:center}
.fc-cheap-empty{padding:26px 14px;text-align:center;color:var(--text-mute);font-size:13px;line-height:1.6}

@media(max-width:560px){
  .fc-cheap-bar{grid-template-columns:1fr}
  .fc-cheap-bar .btn{width:100%}
  .fc-cheap-grid{grid-template-columns:1fr}
  .fc-tab{font-size:12px;padding:8px 10px 9px}
}

/* ============================================================
   3) AUDITORÍA — explicación + filtros + tabla legible
   ============================================================ */
.audit-hero{
  display:flex;gap:14px;align-items:flex-start;
  background:
    radial-gradient(600px 220px at 0% 0%, rgba(108,140,255,.16), transparent 60%),
    linear-gradient(150deg,#151a29,#111624);
  border:1px solid var(--border);border-radius:16px;padding:18px 18px 16px;margin-bottom:14px;
}
.audit-hero .ah-ic{
  width:44px;height:44px;border-radius:12px;flex-shrink:0;display:grid;place-items:center;
  background:var(--primary-soft);color:var(--primary-hover);border:1px solid rgba(108,140,255,.28);
}
.audit-hero .ah-ic svg{width:22px;height:22px}
.audit-hero h3{font-size:15px;font-weight:700;margin-bottom:4px}
.audit-hero p{font-size:12.5px;line-height:1.6;color:var(--text-dim);max-width:820px}
.audit-hero p+p{margin-top:6px}
.audit-hero .tag{font-size:10.5px;margin-top:8px;margin-right:5px}

.audit-stats{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.audit-chip{
  display:inline-flex;align-items:center;gap:7px;
  background:var(--bg-card);border:1px solid var(--border);border-radius:999px;
  padding:6px 12px;font-size:11.5px;color:var(--text-dim);
}
.audit-chip b{color:var(--text);font-size:12.5px}
.audit-chip .dot{width:7px;height:7px;border-radius:50%;background:var(--primary)}

.audit-filters{
  display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,.9fr) minmax(0,.9fr) auto;
  gap:9px;align-items:end;margin-bottom:12px;
}
.audit-filters .field{margin-bottom:0;min-width:0}
.audit-filters .btn{white-space:nowrap}
@media(max-width:900px){
  .audit-filters{grid-template-columns:1fr 1fr}
  .audit-filters .field:first-child{grid-column:1/-1}
  .audit-filters .btn{width:100%}
}
@media(max-width:480px){
  .audit-filters{grid-template-columns:1fr}
  .audit-hero{flex-direction:column;gap:10px}
}

.audit-action{
  display:inline-flex;align-items:center;gap:6px;
  font-family:var(--mono);font-size:11px;font-weight:700;
  border-radius:6px;padding:3px 8px;white-space:nowrap;
  background:var(--bg-elev);border:1px solid var(--border);color:var(--text-dim);
}
.audit-action.act-danger{background:var(--danger-soft);border-color:rgba(255,107,107,.28);color:#ff9a9a}
.audit-action.act-warn{background:var(--warning-soft);border-color:rgba(255,200,87,.28);color:#ffd98a}
.audit-action.act-ok{background:#163a26;border-color:rgba(67,209,127,.28);color:#6ee7a0}
.audit-action.act-info{background:var(--primary-soft);border-color:rgba(108,140,255,.28);color:var(--primary-hover)}
.audit-details{
  font-family:var(--mono);font-size:11px;color:var(--text-mute);
  max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.audit-empty-note{font-size:12.5px;line-height:1.6;color:var(--text-dim);margin-top:10px}

/* ============================================================
   4) CONFIGURACIÓN → INTEGRACIÓN IA (más compacto y responsive)
   ============================================================ */
.ia-hero{
  display:flex;align-items:flex-start;gap:13px;
  background:linear-gradient(150deg,#151a29,#111624);
  border:1px solid var(--border);border-radius:16px;padding:17px 18px;margin-bottom:14px;
}
.ia-hero .ia-hero-ic{
  width:42px;height:42px;border-radius:11px;flex-shrink:0;display:grid;place-items:center;
  background:var(--accent-soft);color:var(--accent);border:1px solid rgba(33,212,180,.28);
}
.ia-hero .ia-hero-ic svg{width:21px;height:21px}
.ia-hero h3{font-size:15px;font-weight:700;margin-bottom:3px}
.ia-hero p{font-size:12.5px;line-height:1.55;color:var(--text-dim);max-width:760px}

.ia-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:9px;margin-top:12px}
.ia-step{
  display:flex;gap:9px;align-items:flex-start;
  background:var(--bg-soft);border:1px solid var(--border-soft);border-radius:11px;padding:11px 12px;
  min-width:0;
}
.ia-step .n{
  width:22px;height:22px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;
  background:var(--primary-soft);color:var(--primary-hover);font-size:10.5px;font-weight:800;
}
.ia-step .t{font-size:12px;line-height:1.5;color:var(--text-dim);min-width:0}
.ia-step .t strong{color:var(--text)}
.ia-step .t code{font-family:var(--mono);font-size:10.5px;background:var(--bg-elev);padding:1px 5px;border-radius:4px;color:var(--neon-cyan);word-break:break-all}
.ia-step .t a{color:var(--primary);text-decoration:underline}

.ia-keys-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.ia-key{
  background:var(--bg-soft);border:1px solid var(--border);border-radius:12px;padding:13px;min-width:0;
}
.ia-key .k-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}
.ia-key .k-lbl{font-size:12px;font-weight:700}
.ia-key .k-tag{font-size:9.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;border-radius:999px;padding:2px 7px;background:var(--primary-soft);color:var(--primary-hover)}
.ia-key .k-row{display:flex;gap:7px;align-items:center;min-width:0}
.ia-key .k-row .input{flex:1;min-width:0}
.ia-key .k-row .btn{flex-shrink:0}
.ia-key .hint{margin-top:6px}

@media(max-width:560px){
  .ia-hero{padding:14px}
  .ia-steps{grid-template-columns:1fr}
  .ia-key .k-row{flex-wrap:wrap}
  .ia-key .k-row .btn{width:100%;justify-content:center}
}
