.fvhc-wrap,.fvhc-wrap *{box-sizing:border-box;font-size:12px!important}
.fvhc-wrap{max-width:100%;width:100%;margin:16px auto;padding:14px;background:#0f172a;color:#e5e7eb;border:1px solid #25324a;border-radius:10px}
.fvhc-heading{display:flex;justify-content:space-between;gap:12px;align-items:center}.fvhc-heading h2,.fvhc-wrap h3{margin:0;color:#fff;font-size:12px!important}.fvhc-heading p{margin:4px 0 0;color:#aebbd0}
.fvhc-version{padding:4px 8px;border:1px solid #334155;border-radius:999px;background:#172033;font-weight:700}
.fvhc-inputs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.fvhc-panel{background:#121d30;border:1px solid #2b3a54;border-radius:7px;padding:8px;min-width:0}.fvhc-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
.fvhc-wrap textarea{width:100%;min-height:190px;max-height:420px;padding:8px;background:#0b1220;color:#e5e7eb;border:1px solid #334155;border-radius:6px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;line-height:1.35}
.fvhc-actions{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.fvhc-actions button,.fvhc-mini{appearance:none;border:1px solid #334155;border-radius:5px;background:#142036;color:#e5eefb;padding:6px 10px;min-height:28px;font-weight:700;cursor:pointer}.fvhc-actions .primary{background:#00aeea;color:#06111b;border-color:#00aeea}.fvhc-actions button:hover,.fvhc-mini:hover{filter:brightness(1.08)}
.fvhc-message{min-height:18px;color:#fbbf24;font-weight:700}
.fvhc-summary{display:grid;grid-template-columns:1.1fr 1.2fr .8fr;gap:7px;margin:6px 0}.fvhc-score-card{background:#0d1626;border:1px solid #26364d;border-radius:6px;padding:8px;min-width:0}.fvhc-score-card>span{display:block;color:#91a4bd;font-size:10px!important;margin-bottom:3px}.fvhc-score-card>strong{display:block;margin-bottom:4px}.fvhc-score-card small{display:block;color:#a8b7ca;font-size:10px!important;line-height:1.3}
.fvhc-scorebar{height:5px;background:#1d2b40;border-radius:999px;overflow:hidden;margin:5px 0}.fvhc-scorebar>span{display:block;height:100%;background:#00c2ff;transition:width .2s ease}.fvhc-scorebar>span.good{background:#22c55e}.fvhc-scorebar>span.mid{background:#eab308}.fvhc-scorebar>span.warn{background:#f97316}.fvhc-scorebar>span.bad{background:#ef4444}
.fvhc-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.fvhc-chip{display:inline-flex;padding:2px 6px;border:1px solid #28506a;border-radius:999px;background:#0f1a2a;color:#bdeafe;font-size:10px!important}
.fvhc-overview{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0}.fvhc-overview-card{background:#121d30;border:1px solid #2b3a54;border-radius:6px;padding:7px}.fvhc-overview-card h3{margin-bottom:6px!important}.fvhc-overview-card>div{display:grid;grid-template-columns:90px 1fr;gap:8px;padding:3px 0;border-top:1px solid #223149}.fvhc-overview-card>div:first-of-type{border-top:0}.fvhc-overview-card span{color:#91a4bd}.fvhc-overview-card strong{overflow-wrap:anywhere}
.fvhc-table-scroll{overflow-x:auto;border:1px solid #2b3a54;border-radius:6px;margin:8px 0}.fvhc-table-scroll table{width:100%;min-width:760px;border-collapse:collapse;background:#101827}.fvhc-table-scroll th,.fvhc-table-scroll td{padding:5px 6px;border:1px solid #2a3a52;text-align:left;vertical-align:top;overflow-wrap:anywhere}.fvhc-table-scroll th{background:#172033;color:#fff}.fvhc-same td:last-child{color:#86efac;font-weight:700}.fvhc-diff td:last-child{color:#fde047;font-weight:700}.fvhc-important td:last-child{color:#fca5a5;font-weight:700}.fvhc-important{background:rgba(239,68,68,.05)}
.fvhc-deltas{display:grid;grid-template-columns:1fr 1fr;gap:8px}.fvhc-deltas>div{background:#121d30;border:1px solid #2b3a54;border-radius:6px;padding:7px;min-width:0}.fvhc-deltas h3{margin:0!important}.fvhc-delta-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 5px}.fvhc-delta-count{color:#8193aa;font-size:10px!important;white-space:nowrap}.fvhc-deltas pre{margin:0;padding:7px;background:#0b1220;color:#e5e7eb;border-radius:5px;white-space:pre-wrap;overflow-wrap:anywhere;height:79px;max-height:none;overflow-x:auto;overflow-y:hidden;transition:height .15s ease}
.fvhc-details{margin-top:8px;border:1px solid #2a3a52;border-radius:7px;background:#101827;overflow:hidden}.fvhc-details>summary{cursor:pointer;list-style:none;padding:8px 10px;font-weight:700;color:#e7f5ff;background:#121d30;border-left:3px solid #00c2ff}.fvhc-details>summary::-webkit-details-marker{display:none}.fvhc-details>summary::after{content:'▸';float:right;color:#67d9ff}.fvhc-details[open]>summary::after{transform:rotate(90deg)}
.fvhc-similarity-detail{padding:8px}.fvhc-sim-row{display:grid;grid-template-columns:150px 1fr 52px;gap:8px;align-items:center;padding:4px 0;border-top:1px solid #223149}.fvhc-sim-row:first-child{border-top:0}.fvhc-sim-meter{height:5px;background:#1d2b40;border-radius:999px;overflow:hidden}.fvhc-sim-meter span{display:block;height:100%;background:#00c2ff}.muted{color:#8698ad}
@media(max-width:850px){.fvhc-inputs,.fvhc-summary,.fvhc-overview,.fvhc-deltas{grid-template-columns:1fr}.fvhc-wrap textarea{min-height:150px}}
@media print{.fvhc-actions,.fvhc-inputs{display:none!important}.fvhc-wrap{background:#fff;color:#111;border:0;width:100%;max-width:none}.fvhc-wrap h2,.fvhc-wrap h3{color:#111}.fvhc-score-card,.fvhc-overview-card,.fvhc-deltas>div,.fvhc-table-scroll table,.fvhc-table-scroll th,.fvhc-table-scroll td{background:#fff!important;color:#111!important;border-color:#bbb!important}}
/* v1.1.0 */
.fvhc-head-tools{display:flex;align-items:center;gap:7px}.fvhc-counter{color:#8193aa;font-size:10px!important;white-space:nowrap}
.fvhc-risk-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0}.fvhc-risk-card{background:#0d1626;border:1px solid #26364d;border-radius:6px;padding:8px}.fvhc-risk-card>span{display:block;color:#91a4bd;font-size:10px!important;margin-bottom:3px}.fvhc-risk-card>strong{display:block;margin-bottom:3px}.fvhc-risk-card small{color:#a8b7ca;font-size:10px!important;line-height:1.35}
.fvhc-route-detail{padding:8px;overflow-x:auto}.fvhc-route-table{width:100%;min-width:880px;border-collapse:collapse}.fvhc-route-table th,.fvhc-route-table td{padding:5px 6px;border:1px solid #2a3a52;text-align:left;vertical-align:top;overflow-wrap:anywhere}.fvhc-route-table th{background:#172033;color:#fff}.fvhc-route-table td{background:#0d1626}
@media(max-width:850px){.fvhc-risk-grid{grid-template-columns:1fr}.fvhc-head-tools{gap:4px}.fvhc-counter{display:none}}

/* v1.2.0 */
.fvhc-deltas pre{scrollbar-gutter:stable}.fvhc-delta-head{min-height:18px}
@media(max-width:850px){.fvhc-delta-head{align-items:flex-start;flex-direction:column;gap:2px}.fvhc-delta-count{white-space:normal}}

/* v1.3.0 */
.fvhc-deltas pre{height:auto;min-height:79px;max-height:none;overflow-y:hidden;transition:height .12s ease}
.fvhc-delta-count{font-variant-numeric:tabular-nums}
@media(max-width:850px){.fvhc-deltas pre{height:auto!important;min-height:79px}.fvhc-delta-count{line-height:1.35}}


/* v1.4.0 */
.fvhc-table-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 0 5px}.fvhc-filter-group{display:flex;flex-wrap:wrap;gap:4px}.fvhc-filter{appearance:none;border:1px solid #334155;border-radius:999px;background:#111c2e;color:#cbd5e1;padding:4px 8px;cursor:pointer;font-weight:700}.fvhc-filter span{display:inline-flex;min-width:18px;justify-content:center;margin-left:3px;padding:1px 4px;border-radius:999px;background:#1e2c43;color:#bdeafe;font-size:10px!important}.fvhc-filter.active{border-color:#00bfe9;background:#10334a;color:#e8fbff}.fvhc-filter.active span{background:#00aeea;color:#06111b}.fvhc-table-status{color:#8193aa;font-size:10px!important;white-space:nowrap}.fvhc-row-hidden{display:none!important}
.fvhc-delta-tools{display:flex;align-items:center;gap:6px;min-width:0}.fvhc-copy-delta{appearance:none;border:1px solid #334155;border-radius:4px;background:#142036;color:#dbeafe;padding:2px 7px;min-height:22px;font-weight:700;cursor:pointer;font-size:10px!important}.fvhc-copy-delta:hover{filter:brightness(1.1)}
.fvhc-risk-card strong.risk-low{color:#86efac}.fvhc-risk-card strong.risk-mid{color:#fde047}.fvhc-risk-card strong.risk-high{color:#fca5a5}
@media(max-width:850px){.fvhc-table-tools{align-items:flex-start;flex-direction:column}.fvhc-table-status{white-space:normal}.fvhc-delta-tools{width:100%;justify-content:space-between}}


/* =========================================================
   v1.4.2 — Header/Footer estándar FoxVision Header Analyzer
   ========================================================= */
.fvhc-standard-header{
  display:flex!important;align-items:center!important;gap:14px!important;
  min-height:82px!important;padding:14px 18px!important;margin:0 0 12px!important;
  background:linear-gradient(105deg,#0d1a2b 0%,#0e1d31 70%,#0c2635 100%)!important;
  border:1px solid #29405b!important;border-radius:12px!important;box-shadow:none!important;
  box-sizing:border-box!important
}
.fvhc-standard-icon{
  display:flex!important;align-items:center!important;justify-content:center!important;
  flex:0 0 58px!important;width:58px!important;height:58px!important;
  border:1px solid #31516e!important;border-radius:13px!important;background:#102238!important;
  color:#22d3ee!important;font:800 29px/1 system-ui,sans-serif!important
}
.fvhc-standard-copy{flex:1 1 auto!important;min-width:0!important;text-align:left!important}
.fvhc-standard-eyebrow{
  display:block!important;margin:0 0 4px!important;color:#22d3ee!important;
  font:900 10px/1.3 system-ui,sans-serif!important;letter-spacing:.14em!important
}
.fvhc-standard-copy h2{
  margin:0!important;color:#fff!important;font:800 21px/1.1 system-ui,sans-serif!important;text-align:left!important
}
.fvhc-standard-copy p{
  margin:7px 0 0!important;max-width:850px!important;color:#b9c9dc!important;
  font:400 11px/1.4 system-ui,sans-serif!important;text-align:left!important
}
.fvhc-standard-version{
  flex:0 0 auto!important;padding:4px 8px!important;border:1px solid #245875!important;
  border-radius:999px!important;background:#0c2233!important;color:#a9e9ff!important;
  font:700 11px/1.2 system-ui,sans-serif!important;white-space:nowrap!important
}

/* Oculta encabezados/footers antiguos del propio comparador si existen, sin afectar al estándar nuevo. */
.fvhc-header:not(.fvhc-standard-header),
.header-comparator-header:not(.fvhc-standard-header){display:none!important}

@media(max-width:650px){
 .fvhc-standard-header{align-items:flex-start!important;flex-wrap:wrap!important;padding:14px!important}
 .fvhc-standard-icon{flex-basis:50px!important;width:50px!important;height:50px!important}
 .fvhc-standard-copy{flex:1 1 calc(100% - 66px)!important}
}


/* =========================================================
   v1.4.3 — Corrección completa de maquetación
   ========================================================= */

/* v1.4.4 — icono visible del Comparador */
body.fvhc-has-comparator .fvhc-standard-icon{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  overflow:visible!important;
}
body.fvhc-has-comparator .fvhc-comparator-icon{
  display:block!important;
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  overflow:visible!important;
}
body.fvhc-has-comparator .fvhc-comparator-icon rect,
body.fvhc-has-comparator .fvhc-comparator-icon path{
  fill:none!important;
  stroke:#22d3ee!important;
  stroke-width:2.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  vector-effect:non-scaling-stroke!important;
}
body.fvhc-has-comparator .fvhc-comparator-icon .fvhc-arrow-b{
  stroke:#84e63f!important;
}


/* v1.4.5 — icono original del Comparador de Cabeceras */
body.fvhc-has-comparator .fvhc-standard-icon{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 74px!important;
  width:74px!important;
  height:74px!important;
  padding:4px!important;
  border:1px solid #31516e!important;
  border-radius:14px!important;
  background:#102238!important;
  overflow:hidden!important;
}
body.fvhc-has-comparator .fvhc-comparator-icon-img{
  display:block!important;
  width:66px!important;
  height:66px!important;
  max-width:66px!important;
  max-height:66px!important;
  object-fit:contain!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
@media(max-width:650px){
  body.fvhc-has-comparator .fvhc-standard-icon{
    flex-basis:58px!important;
    width:58px!important;
    height:58px!important;
  }
  body.fvhc-has-comparator .fvhc-comparator-icon-img{
    width:50px!important;
    height:50px!important;
    max-width:50px!important;
    max-height:50px!important;
  }
}


/* v1.4.7 — icono limpio y no interactivo */
body.fvhc-has-comparator .fvhc-standard-icon{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  cursor:default!important;
}
body.fvhc-has-comparator .fvhc-comparator-icon-img{
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  outline:0!important;
  cursor:default!important;
  pointer-events:none!important;
  transform:none!important;
  transition:none!important;
}
body.fvhc-has-comparator .fvhc-standard-icon:hover,
body.fvhc-has-comparator .fvhc-standard-icon:focus,
body.fvhc-has-comparator .fvhc-standard-icon:active,
body.fvhc-has-comparator .fvhc-comparator-icon-img:hover,
body.fvhc-has-comparator .fvhc-comparator-icon-img:focus,
body.fvhc-has-comparator .fvhc-comparator-icon-img:active{
  transform:none!important;
  scale:1!important;
  filter:none!important;
  box-shadow:none!important;
}


/* =========================================================
   v1.4.8 — vista inicial compacta como Header Analyzer
   ========================================================= */

/* Al entrar solo se muestra encabezado + entradas + acciones. */
#fvhc-results[hidden]{
  display:none!important;
}

/* Tras una comparación válida se despliega todo el análisis. */
#fvhc-results.fvhc-results-visible{
  display:block!important;
  animation:fvhcReveal .18s ease-out;
}

@keyframes fvhcReveal{
  from{opacity:0;transform:translateY(6px)}
  to{opacity:1;transform:translateY(0)}
}

