/* =========================================================
   Simulador 1571 — Estilos (scoped) — Dark aligned Infinitiv
   Aplica a #inf1571-root y #inf1571-max-root
   BUILD: slider-track-fill v1.3.4  (relleno en el track, no en el input)
========================================================= */

/* =========================
   0) Scope + tokens
========================= */
:is(#inf1571-root, #inf1571-max-root){
  --inf-ink:#F9FAFB;
  --inf-glow:#F9A991;          /* acento salmón (botón y ranges) */
  --inf-glow-2:#F7B79E;        /* acento salmón claro (degradados) */
  --inf-muted:#9CA3AF;
  --inf-card:#101010;
  --inf-line:rgba(255,255,255,.11);

  --inf-radius:18px;
  --inf-radius-sm:12px;
  --inf-elev-1:0 24px 60px rgba(0,0,0,.5), 0 0 0 1px rgba(255,255,255,.02);

  --inf-range-base:#2b2b31;    /* base del track (parte “vacía”) — neutro cálido */

  color:var(--inf-ink);
  font-family:inherit;
}

/* Reset de box-sizing: evita que inputs/campos (width:100% + padding) se
   desborden de su columna del grid y se solapen con la columna vecina. */
:is(#inf1571-root, #inf1571-max-root),
:is(#inf1571-root, #inf1571-max-root) *,
:is(#inf1571-root, #inf1571-max-root) *::before,
:is(#inf1571-root, #inf1571-max-root) *::after{
  box-sizing:border-box;
}

/* =========================
   1) Layout + ancho
========================= */
:is(#inf1571-root, #inf1571-max-root).inf-sim-wrap{
  display:block;
  width:100% !important;
  max-width:1400px;
  margin-inline:auto;
  box-sizing:border-box;
}

@media (max-width:920px){
  :is(#inf1571-root, #inf1571-max-root).inf-sim-wrap{
    padding-inline:1rem;
  }
}

/* Breakout controlado (desktop) */
@media (min-width:1024px){
  #inf1571-root.inf-sim-wrap,
  #inf1571-max-root.inf-sim-wrap{
    width:70vw !important;
    max-width:1400px !important;
    margin-left:calc(50% - 35vw) !important;
    margin-right:calc(50% - 35vw) !important;
  }
}
@media (max-width:1023px){
  #inf1571-root.inf-sim-wrap,
  #inf1571-max-root.inf-sim-wrap{
    width:100% !important;
    max-width:100% !important;
    margin:0 auto !important;
  }
}

/* =========================
   2) Card
========================= */
:is(#inf1571-root, #inf1571-max-root) .inf-card{
  position:relative;
  width:100% !important;
  background:
    radial-gradient(120% 80% at 50% -10%, rgba(249,169,145,.08), transparent 60%),
    linear-gradient(180deg, #151216 0%, #0c0c0e 100%);
  border:1px solid var(--inf-line);
  border-radius:var(--inf-radius);
  box-shadow:var(--inf-elev-1);
  overflow:visible;
}
/* Hairline superior con glow salmón */
:is(#inf1571-root, #inf1571-max-root) .inf-card::before{
  content:"";
  position:absolute;
  left:16px;
  right:16px;
  top:0;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(249,169,145,.55), transparent);
  pointer-events:none;
}

:is(#inf1571-root, #inf1571-max-root) .inf-header{
  position:relative;
  display:flex;
  gap:10px;
  align-items:center;
  padding:16px 20px;
  border-bottom:1px solid var(--inf-line);
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(0,0,0,.35));
  overflow:hidden;
  border-top-left-radius:var(--inf-radius);
  border-top-right-radius:var(--inf-radius);
}

:is(#inf1571-root, #inf1571-max-root) .inf-logo{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  background:var(--inf-glow);
  color:#111827;
  font-weight:800;
  border-radius:10px;
}

:is(#inf1571-root, #inf1571-max-root) .inf-title{
  font-weight:800;
  font-size:1.28rem;
  letter-spacing:.2px;
}

/* =========================
   3) Body + grid + inputs
========================= */
:is(#inf1571-root, #inf1571-max-root) .inf-body{
  padding:24px 22px 22px;
  display:grid;
  gap:22px;
}

:is(#inf1571-root, #inf1571-max-root) .inf-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:22px;
}
@media (max-width:900px){
  :is(#inf1571-root, #inf1571-max-root) .inf-grid{
    grid-template-columns:1fr;
  }
}

:is(#inf1571-root, #inf1571-max-root) .inf-field{
  display:grid;
  gap:6px;
}

:is(#inf1571-root, #inf1571-max-root) .inf-field--span{
  grid-column:1 / -1;
}

:is(#inf1571-root, #inf1571-max-root) .inf-lab{
  font-size:.76rem;
  color:var(--inf-muted);
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

:is(#inf1571-root, #inf1571-max-root) .inf-inp{
  width:100%;
  background:linear-gradient(180deg, #17171a, #121214);
  color:var(--inf-ink);
  border:1px solid var(--inf-line);
  border-radius:12px;
  padding:.95rem 1rem;
  line-height:1.3;
  font-size:1.05rem;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
  transition:border-color .15s ease, box-shadow .15s ease;
}

:is(#inf1571-root, #inf1571-max-root) .inf-inp::placeholder{
  color:#6B7280;
}

:is(#inf1571-root, #inf1571-max-root) .inf-inp:focus{
  outline:none;
  border-color:var(--inf-glow);
  box-shadow:0 0 0 3px rgba(249,169,145,.35), inset 0 1px 0 rgba(255,255,255,.03);
}

/* =========================
   4) Actions / Buttons
========================= */
:is(#inf1571-root, #inf1571-max-root) .inf-actions{
  display:flex;
  gap:.8rem;
}

:is(#inf1571-root, #inf1571-max-root) .inf-btn{
  background:linear-gradient(135deg, var(--inf-glow), var(--inf-glow-2));
  color:#111827;
  border:0;
  border-radius:999px;
  padding:.9rem 1.8rem;
  font-weight:800;
  letter-spacing:.04em;
  cursor:pointer;
  text-transform:uppercase;
  font-size:.85rem;
  box-shadow:0 8px 22px rgba(249,169,145,.28);
  transition:transform .15s ease, filter .15s ease, box-shadow .15s ease;
}
:is(#inf1571-root, #inf1571-max-root) .inf-btn:hover{
  filter:brightness(1.03);
  transform:translateY(-1px);
  box-shadow:0 12px 28px rgba(249,169,145,.4);
}
:is(#inf1571-root, #inf1571-max-root) .inf-btn:active{
  transform:translateY(0);
}
:is(#inf1571-root, #inf1571-max-root) .inf-btn[disabled],
:is(#inf1571-root, #inf1571-max-root) .inf-btn:disabled{
  opacity:.6;
  cursor:progress;
  transform:none;
  filter:saturate(.85);
}

:is(#inf1571-root, #inf1571-max-root) .inf-actions-secondary{
  margin-top:18px;
  text-align:center;
}

:is(#inf1571-root, #inf1571-max-root) .inf-btn-secondary{
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  background:linear-gradient(135deg, var(--inf-glow), var(--inf-glow-2));
  border:none;
  color:#111827;
  text-decoration:none;
  border-radius:999px;
  padding:.85rem 1.5rem;
  font-weight:700;
  font-size:.85rem;
  box-shadow:0 8px 22px rgba(249,169,145,.24);
  transition:transform .15s ease, filter .15s ease, box-shadow .15s ease;
}
:is(#inf1571-root, #inf1571-max-root) .inf-btn-secondary:hover{
  filter:brightness(1.04);
  transform:translateY(-1px);
  box-shadow:0 12px 28px rgba(249,169,145,.36);
}

/* =========================
   5) Results
========================= */
:is(#inf1571-root, #inf1571-max-root) .inf-divider{
  height:1px;
  background:var(--inf-line);
}

:is(#inf1571-root, #inf1571-max-root) .inf-result{
  border:1px solid var(--inf-line);
  background:rgba(0,0,0,.55);
  border-radius:14px;
  padding:14px 16px;
  display:grid;
  gap:10px;
}

:is(#inf1571-root, #inf1571-max-root) .inf-tags{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

:is(#inf1571-root, #inf1571-max-root) .inf-tag{
  display:inline-block;
  padding:.35rem .6rem;
  border-radius:999px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.16);
  font-size:.95rem;
  color:#E5E7EB;
}

:is(#inf1571-root, #inf1571-max-root) .inf-kpis{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
}
@media (max-width:640px){
  :is(#inf1571-root, #inf1571-max-root) .inf-kpis{ grid-template-columns:1fr; }
}

:is(#inf1571-root, #inf1571-max-root) .inf-kpi{
  position:relative;
  background:
    radial-gradient(120% 120% at 0% 0%, rgba(249,169,145,.06), transparent 60%),
    #111111;
  border:1px solid rgba(255,255,255,.16);
  border-radius:12px;
  padding:14px 14px 12px;
  overflow:hidden;
  transition:border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
:is(#inf1571-root, #inf1571-max-root) .inf-kpi::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  background:var(--inf-glow);
  opacity:.55;
}
:is(#inf1571-root, #inf1571-max-root) .inf-kpi:hover{
  border-color:rgba(249,169,145,.4);
  transform:translateY(-2px);
  box-shadow:0 10px 26px rgba(0,0,0,.45);
}

:is(#inf1571-root, #inf1571-max-root) .inf-kpi h4{
  margin:0 0 6px 0;
  font-size:.82rem;
  color:#CBD5E1;
  font-weight:600;
}

:is(#inf1571-root, #inf1571-max-root) .inf-kpi p{
  margin:0;
  font-size:1.3rem;
  font-weight:800;
}

:is(#inf1571-root, #inf1571-max-root) .inf-kpi-sub{
  margin-top:4px;
  font-size:.95rem;
  font-weight:700;
  opacity:.85;
  line-height:1.2;
}

/* Valores */
:is(#inf1571-root, #inf1571-max-root) .inf-price-uf{ color:var(--inf-glow); font-weight:800; }
:is(#inf1571-root, #inf1571-max-root) .inf-uf{ color:#7DD3FC; }
:is(#inf1571-root, #inf1571-max-root) .inf-clp{ color:#86EFAC; }
:is(#inf1571-root, #inf1571-max-root) .inf-err{ color:#ff9b9b; }

/* Notes / warnings / disclaimer */
:is(#inf1571-root, #inf1571-max-root) .inf-note{
  margin-top:10px;
  font-size:.9rem;
  color:#FACC15;
  text-align:justify;
  text-justify:inter-word;
  line-height:1.45;
}

:is(#inf1571-root, #inf1571-max-root) .inf-warns{
  display:grid;
  gap:8px;
}

:is(#inf1571-root, #inf1571-max-root) .inf-warn{
  font-size:.85rem;
  font-weight:500;
  line-height:1.35;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid rgba(255,200,0,.25);
  background:rgba(255,200,0,.08);
  color:#ffd36b;
}

:is(#inf1571-root, #inf1571-max-root) .inf-disclaimer{
  margin-top:6px;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(0,0,0,.35);
  color:#A7B0C9;
  font-size:.9rem;
  line-height:1.45;
  text-align:justify;
  text-justify:inter-word;
}

/* Empty state */
:is(#inf1571-panel, #inf1571-max-panel).inf-result{
  min-height:0;
  height:auto;
}

:is(#inf1571-panel, #inf1571-max-panel) .inf-empty-state{
  padding:14px 18px;
  border-radius:12px;
  border:1px dashed rgba(255,255,255,.14);
  background:rgba(0,0,0,.35);
  width:100%;
  margin:0;
  text-align:center;
  min-height:140px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
}

:is(#inf1571-panel, #inf1571-max-panel) .inf-empty-state p{
  margin:0;
  font-size:.95rem;
  color:#9CA3AF;
  max-width:48ch;
}

/* =========================
   6) Skeleton
========================= */
:is(#inf1571-root, #inf1571-max-root) .inf-skeleton{
  position:relative;
  overflow:hidden;
  background:rgba(255,255,255,.08);
  height:38px;
  border-radius:12px;
}
:is(#inf1571-root, #inf1571-max-root) .inf-skeleton::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.35), transparent);
  background-size:200% 100%;
  animation:inf1571-sh 1.1s infinite;
}
@keyframes inf1571-sh{
  0%{ background-position:200% 0; }
  100%{ background-position:-200% 0; }
}

/* =========================
   7) Switch subsidio
========================= */
:is(#inf1571-root, #inf1571-max-root) .inf-switch{
  display:flex;
  align-items:center;
  gap:10px;
  padding:.65rem .8rem;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.03);
  border-radius:12px;
}

:is(#inf1571-root, #inf1571-max-root) .inf-switch input{
  appearance:none;
  width:44px;
  height:24px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.20);
  background:rgba(255,255,255,.10);
  position:relative;
  outline:none;
  cursor:pointer;
}
:is(#inf1571-root, #inf1571-max-root) .inf-switch input::after{
  content:"";
  position:absolute;
  top:50%;
  left:3px;
  width:18px;
  height:18px;
  border-radius:999px;
  transform:translateY(-50%);
  background:#E5E7EB;
  transition:all .18s ease;
}
:is(#inf1571-root, #inf1571-max-root) .inf-switch input:checked{
  background:rgba(249,169,145,.35);
  border-color:rgba(249,169,145,.65);
}
:is(#inf1571-root, #inf1571-max-root) .inf-switch input:checked::after{
  left:22px;
  background:#111827;
}
:is(#inf1571-root, #inf1571-max-root) .inf-switch-text{
  color:#CBD5E1;
  font-size:.95rem;
  font-weight:600;
}

/* =========================
   8) Range (riel delgado + manija blanca)
   - El relleno se pinta EN EL TRACK vía la variable --inf-fill (la actualiza el JS).
   - El input queda transparente: solo aporta el área clickeable.
========================= */
:is(#inf1571-root, #inf1571-max-root) .inf-range-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
}

:is(#inf1571-root, #inf1571-max-root) .inf-range-value{
  font-size:26px;
  font-weight:800;
  color:#ffffff;
  letter-spacing:.2px;
  line-height:1;
}
:is(#inf1571-root, #inf1571-max-root) .inf-range-value small{
  font-size:12px;
  font-weight:600;
  color:var(--inf-muted);
  margin-left:6px;
}

/* El relleno se pinta en el TRACK (un solo elemento) vía la variable --inf-fill
   que actualiza el JS. El input queda transparente y solo aporta área clickeable. */
:is(#inf1571-root, #inf1571-max-root) input[type="range"].inf-range.inf-inp{
  --inf-fill:0%;
  -webkit-appearance:none;
  appearance:none;

  width:100%;
  padding:0 !important;

  height:24px !important;             /* área clickeable (el riel visible es de 10px) */
  border:0 !important;
  border-radius:999px !important;

  background:transparent !important;  /* nada se pinta en el input */
  box-shadow:none;
}

/* Riel de 10px con relleno + base en un mismo degradado (sin capas) */
:is(#inf1571-root, #inf1571-max-root) input[type="range"].inf-range::-webkit-slider-runnable-track{
  height:10px;
  border-radius:999px;
  background:linear-gradient(to right,
    var(--inf-glow) 0%,
    var(--inf-glow) var(--inf-fill),
    var(--inf-range-base) var(--inf-fill),
    var(--inf-range-base) 100%);
}
:is(#inf1571-root, #inf1571-max-root) input[type="range"].inf-range::-moz-range-track{
  height:10px;
  border-radius:999px;
  background:linear-gradient(to right,
    var(--inf-glow) 0%,
    var(--inf-glow) var(--inf-fill),
    var(--inf-range-base) var(--inf-fill),
    var(--inf-range-base) 100%);
}

/* Manija blanca de 18px sobre el riel de 10px */
:is(#inf1571-root, #inf1571-max-root) input[type="range"].inf-range::-webkit-slider-thumb{
  -webkit-appearance:none;
  appearance:none;
  width:18px;
  height:18px;
  margin-top:-4px;                    /* (10 - 18) / 2 → centra en el riel */
  border-radius:50%;
  background:#ffffff;
  border:0;
  box-shadow:0 2px 6px rgba(0,0,0,.55), 0 0 0 1px rgba(0,0,0,.18);
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease;
}
:is(#inf1571-root, #inf1571-max-root) input[type="range"].inf-range::-webkit-slider-thumb:hover{
  transform:scale(1.12);
  box-shadow:0 3px 9px rgba(0,0,0,.6), 0 0 0 4px rgba(249,169,145,.28);
}

:is(#inf1571-root, #inf1571-max-root) input[type="range"].inf-range::-moz-range-thumb{
  width:18px;
  height:18px;
  border-radius:50%;
  border:0;
  background:#ffffff;
  box-shadow:0 2px 6px rgba(0,0,0,.55), 0 0 0 1px rgba(0,0,0,.18);
  cursor:pointer;
}

:is(#inf1571-root, #inf1571-max-root) .inf-range-limits{
  display:flex;
  justify-content:space-between;
  font-size:11px;
  color:var(--inf-muted);
  margin-top:8px;
}

/* =========================
   9) Responsive tweaks
========================= */
@media (max-width:900px){
  :is(#inf1571-root, #inf1571-max-root) .inf-body{ padding:16px; }
  :is(#inf1571-root, #inf1571-max-root) .inf-title{ font-size:1.15rem; }
  :is(#inf1571-root, #inf1571-max-root) .inf-inp{ font-size:1.05rem; padding:1rem; }
  :is(#inf1571-root, #inf1571-max-root) .inf-actions{ flex-direction:column; }
  :is(#inf1571-root, #inf1571-max-root) .inf-btn{ width:100%; font-size:.9rem; padding:1rem; }
  :is(#inf1571-root, #inf1571-max-root) .inf-kpi p{ font-size:1.35rem; }
}

@media (max-width:480px){
  :is(#inf1571-root, #inf1571-max-root) .inf-header{ padding:12px 14px; }
  :is(#inf1571-root, #inf1571-max-root) .inf-logo{ width:30px; height:30px; font-size:.9rem; }
  :is(#inf1571-root, #inf1571-max-root) .inf-title{ font-size:1.1rem; }
  :is(#inf1571-root, #inf1571-max-root) .inf-lab{ font-size:1rem; }
  :is(#inf1571-root, #inf1571-max-root) .inf-inp{ font-size:1.1rem; padding:1.05rem; }
  :is(#inf1571-root, #inf1571-max-root) .inf-kpi{ padding:14px; }
  :is(#inf1571-root, #inf1571-max-root) .inf-kpi h4{ font-size:.9rem; }
  :is(#inf1571-root, #inf1571-max-root) .inf-kpi p{ font-size:1.55rem; }
}

/* Header: izquierda (titulo) + derecha (switch) */
:is(#inf1571-root, #inf1571-max-root) .inf-header{ justify-content:space-between; }

:is(#inf1571-root, #inf1571-max-root) .inf-header-left{
  display:flex; align-items:center; gap:10px; min-width:0;
}
:is(#inf1571-root, #inf1571-max-root) .inf-header-right{
  display:flex; align-items:center; gap:10px;
}
:is(#inf1571-root, #inf1571-max-root) .inf-switch--compact{
  padding:.45rem .6rem; border-radius:999px;
}

@media (max-width:640px){
  :is(#inf1571-root, #inf1571-max-root) .inf-header{
    flex-direction:column; align-items:flex-start; gap:10px;
  }
  :is(#inf1571-root, #inf1571-max-root) .inf-header-right{
    width:100%; justify-content:flex-start;
  }
}

/* =========================
   10) Accesibilidad (foco por teclado)
========================= */
:is(#inf1571-root, #inf1571-max-root) :is(.inf-btn, .inf-btn-secondary, .inf-range, .inf-switch input):focus-visible{
  outline:2px solid var(--inf-glow);
  outline-offset:2px;
  box-shadow:0 0 0 4px rgba(249,169,145,.25);
}

/* =========================
   11) Revelado de resultados
========================= */
@keyframes inf1571-rise{
  from{ opacity:0; transform:translateY(8px); }
  to{   opacity:1; transform:translateY(0); }
}
:is(#inf1571-panel, #inf1571-max-panel) > *{
  animation:inf1571-rise .32s ease both;
}
:is(#inf1571-root, #inf1571-max-root) .inf-kpis .inf-kpi{
  animation:inf1571-rise .38s ease both;
}
:is(#inf1571-root, #inf1571-max-root) .inf-kpis .inf-kpi:nth-child(2){ animation-delay:.05s; }
:is(#inf1571-root, #inf1571-max-root) .inf-kpis .inf-kpi:nth-child(3){ animation-delay:.10s; }

/* =========================
   12) Skeleton estructurado (loading)
========================= */
:is(#inf1571-root, #inf1571-max-root) .inf-skel{
  display:grid;
  gap:12px;
}
:is(#inf1571-root, #inf1571-max-root) .inf-skel-tags{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
:is(#inf1571-root, #inf1571-max-root) .inf-skel-tag{
  height:26px;
  width:120px;
  border-radius:999px;
}
:is(#inf1571-root, #inf1571-max-root) .inf-skel-cards{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
}
@media (max-width:640px){
  :is(#inf1571-root, #inf1571-max-root) .inf-skel-cards{ grid-template-columns:1fr; }
}
:is(#inf1571-root, #inf1571-max-root) .inf-skel-card{
  height:96px;
  border-radius:12px;
}
:is(#inf1571-root, #inf1571-max-root) .inf-skel-line{
  height:14px;
  border-radius:8px;
}
:is(#inf1571-root, #inf1571-max-root) .inf-skel-line.sm{ width:60%; }
:is(#inf1571-root, #inf1571-max-root) :is(.inf-skel-tag, .inf-skel-card, .inf-skel-line){
  position:relative;
  overflow:hidden;
  background:rgba(255,255,255,.06);
}
:is(#inf1571-root, #inf1571-max-root) :is(.inf-skel-tag, .inf-skel-card, .inf-skel-line)::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.18), transparent);
  background-size:200% 100%;
  animation:inf1571-sh 1.1s infinite;
}

/* =========================
   14) Iconos SVG (Lucide-style)
========================= */
/* Badge del título en el header */
:is(#inf1571-root, #inf1571-max-root) .inf-title-ico{
  display:inline-grid;
  place-items:center;
  width:38px;
  height:38px;
  flex:0 0 auto;
  border-radius:11px;
  color:var(--inf-glow);
  background:linear-gradient(135deg, rgba(249,169,145,.22), rgba(249,169,145,.08));
  border:1px solid rgba(249,169,145,.35);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
:is(#inf1571-root, #inf1571-max-root) .inf-title-ico svg{
  width:21px;
  height:21px;
}

/* Icono del estado vacío */
:is(#inf1571-panel, #inf1571-max-panel) .inf-empty-ico{
  display:inline-grid;
  place-items:center;
  width:56px;
  height:56px;
  border-radius:14px;
  color:var(--inf-glow);
  background:radial-gradient(120% 120% at 50% 20%, rgba(249,169,145,.14), rgba(249,169,145,.04));
  border:1px solid rgba(249,169,145,.22);
}
:is(#inf1571-panel, #inf1571-max-panel) .inf-empty-ico svg{
  width:28px;
  height:28px;
}

/* Icono dentro de botones */
:is(#inf1571-root, #inf1571-max-root) .inf-btn-ico{
  width:18px;
  height:18px;
  flex:0 0 auto;
}

/* =========================
   13) Movimiento reducido
========================= */
@media (prefers-reduced-motion:reduce){
  :is(#inf1571-root, #inf1571-max-root) *,
  :is(#inf1571-panel, #inf1571-max-panel) > *{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }
}