/* ============================================================
   POWERTECH COMPARADOR — CSS Ultra Premium v2.0
   Fondo superior: #FFFFFF | Fondo inferior: #DEDEDE
   ============================================================ */

.pt-comparador-wrap {
  --pt-white:   #ffffff;
  --pt-gray:    #dedede;
  --pt-dark:    #0f172a;
  --pt-mid:     #475569;
  --pt-light:   #94a3b8;
  --pt-nvidia:  #76b900;
  --pt-amd:     #ed1c24;
  --pt-intel:   #0068b5;
  --pt-gold:    #f59e0b;
  --pt-win:     #16a34a;
  --pt-win-bg:  #f0fdf4;
  --pt-radius:  16px;
  --pt-shadow:  0 2px 12px rgba(0,0,0,.08);
  --pt-border:  1px solid rgba(0,0,0,.08);
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  max-width: 960px;
  margin: 32px auto;
  border-radius: var(--pt-radius);
  box-shadow: 0 4px 32px rgba(0,0,0,.10);
  overflow: hidden;
  border: var(--pt-border);
}

/* ── BLOQUE SUPERIOR blanco ─────────────────────────────────── */
.pt-top-block {
  background: var(--pt-white);
  display: grid;
  grid-template-columns: 1fr 80px 1fr;
  padding: 28px 24px 24px;
  border-bottom: 2px solid var(--pt-gray);
}

.pt-top-col { display:flex; flex-direction:column; align-items:center; gap:10px; }

.pt-brand-label {
  font-size:11px; font-weight:600; letter-spacing:.08em;
  text-transform:uppercase; color:var(--pt-light); min-height:16px;
}

/* Buscador */
.pt-search-wrap { width:100%; position:relative; z-index:20; }

.pt-search-wrap input[type="text"] {
  width:100%; padding:10px 14px;
  border:1.5px solid rgba(0,0,0,.12); border-radius:10px;
  font-size:14px; color:var(--pt-dark); background:#fff;
  outline:none; transition:border-color .2s,box-shadow .2s; box-sizing:border-box;
}

.pt-search-wrap input:focus {
  border-color:rgba(0,0,0,.3);
  box-shadow:0 0 0 3px rgba(0,0,0,.05);
}

.pt-autocomplete {
  position:absolute; top:calc(100% + 4px); left:0; right:0;
  background:#fff; border:1.5px solid rgba(0,0,0,.1);
  border-radius:10px; box-shadow:0 8px 24px rgba(0,0,0,.12);
  max-height:240px; overflow-y:auto; display:none; z-index:100;
}
.pt-autocomplete.open { display:block; }

.pt-ac-item {
  display:flex; align-items:center; gap:10px;
  padding:10px 14px; cursor:pointer; transition:background .12s;
  border-bottom:1px solid rgba(0,0,0,.04);
}
.pt-ac-item:last-child { border-bottom:none; }
.pt-ac-item:hover { background:#f8fafc; }
.pt-ac-item-name { font-size:13px; font-weight:500; color:var(--pt-dark); flex:1; }
.pt-ac-item-price { font-size:12px; color:var(--pt-mid); }
.pt-ac-item-score {
  font-size:11px; font-weight:600;
  background:var(--pt-dark); color:#fff;
  padding:2px 7px; border-radius:20px;
}

/* Display producto */
.pt-product-display { width:100%; display:flex; flex-direction:column; align-items:center; gap:8px; }

/* Flechas ranking */
.pt-rank-arrows { display:flex; flex-direction:column; align-items:center; }
.pt-rank-num {
  font-size:56px; font-weight:700; line-height:1;
  color:var(--pt-dark); letter-spacing:-3px; min-width:70px; text-align:center;
}
.pt-arrow {
  background:none; border:none; cursor:pointer;
  color:var(--pt-light); font-size:14px; padding:4px 8px;
  transition:color .15s; line-height:1;
}
.pt-arrow:hover { color:var(--pt-dark); }

/* Imagen producto */
.pt-product-img-wrap {
  position:relative; width:220px; height:170px;
  display:flex; align-items:center; justify-content:center;
}
.pt-product-img {
  max-width:100%; max-height:100%; object-fit:contain;
  filter:drop-shadow(0 4px 14px rgba(0,0,0,.15));
  transition:transform .2s;
}
.pt-product-img:hover { transform:scale(1.04); }

/* Brand logo */
.pt-brand-logo {
  position:absolute; top:6px; left:6px;
  display:flex; align-items:center; justify-content:center;
}
.pt-brand-logo svg { height:22px; width:auto; }

/* Placeholder imagen */
.pt-img-placeholder {
  width:220px; height:170px;
  background:linear-gradient(135deg,#f1f5f9 0%,#e2e8f0 100%);
  border-radius:14px;
  display:flex; align-items:center; justify-content:center;
  flex-direction:column; gap:6px;
}
.pt-ph-logo { font-size:30px; font-weight:800; letter-spacing:-1px; }
.pt-ph-name { font-size:12px; color:var(--pt-mid); font-weight:600; text-align:center; }
.pt-ph-sub  { font-size:10px; color:var(--pt-light); }

/* Nombre */
.pt-product-name {
  font-size:16px; font-weight:600; color:var(--pt-dark);
  text-align:center; line-height:1.3; min-height:20px;
}
.pt-score-big { font-size:12px; color:var(--pt-light); min-height:16px; }

/* Botón comprar */
.pt-buy-btn {
  display:inline-block; background:var(--pt-gold); color:#1a1a1a;
  font-size:13px; font-weight:700; padding:10px 22px;
  border-radius:8px; text-decoration:none; letter-spacing:.03em;
  transition:background .15s,transform .1s; white-space:nowrap;
}
.pt-buy-btn:hover { background:#d97706; transform:translateY(-1px); color:#1a1a1a; text-decoration:none; }

/* Specs cortas */
.pt-specs-short { font-size:12px; color:var(--pt-mid); text-align:center; line-height:1.6; min-height:16px; }

/* Badge ganador */
.pt-winner-badge {
  display:none; background:#1d4ed8; color:#fff;
  font-size:11px; font-weight:700; padding:6px 18px;
  border-radius:20px; letter-spacing:.04em; text-transform:uppercase;
}
.pt-winner-badge.visible { display:inline-block; }

/* ── Centro VS ─────────────────────────────────────────────── */
.pt-vs-center {
  display:flex; flex-direction:column; align-items:center;
  justify-content:center; gap:6px; padding-top:80px;
}
.pt-vs-icon {
  font-size:20px; font-weight:700; color:var(--pt-dark);
  width:50px; height:50px; border:2px solid var(--pt-dark);
  border-radius:50%; display:flex; align-items:center; justify-content:center;
}
.pt-vs-sub {
  font-size:10px; color:var(--pt-light); text-align:center;
  text-transform:uppercase; letter-spacing:.05em; line-height:1.4;
}

/* ── BLOQUE INFERIOR gris ───────────────────────────────────── */
.pt-bottom-block { background:var(--pt-gray); }

.pt-tabs {
  display:flex; border-bottom:1px solid rgba(0,0,0,.1);
  background:rgba(255,255,255,.6);
}
.pt-tab {
  padding:14px 22px; font-size:13px; font-weight:500;
  color:var(--pt-mid); background:none; border:none; cursor:pointer;
  border-bottom:2px solid transparent; margin-bottom:-1px;
  transition:color .15s,border-color .15s;
}
.pt-tab:hover { color:var(--pt-dark); }
.pt-tab.active { color:var(--pt-dark); border-bottom-color:var(--pt-dark); font-weight:600; }

.pt-tab-content { display:none; padding:20px; }
.pt-tab-content.active { display:block; }

/* Tabla */
.pt-specs-table {
  width:100%; border-collapse:separate; border-spacing:0;
  background:#fff; border-radius:12px; overflow:hidden;
  box-shadow:var(--pt-shadow); font-size:13px;
}
.pt-specs-table thead tr { background:var(--pt-dark); color:#fff; }
.pt-specs-table thead th {
  padding:12px 16px; font-weight:600; font-size:12px;
  letter-spacing:.03em; text-align:left;
}
.pt-specs-table thead th:not(:first-child) { text-align:center; width:28%; }
.pt-specs-table tbody tr { border-top:1px solid rgba(0,0,0,.05); transition:background .1s; }
.pt-specs-table tbody tr:nth-child(even) { background:#f9fafb; }
.pt-specs-table tbody tr:hover { background:#f0f9ff; }
.pt-specs-table td { padding:11px 16px; color:var(--pt-mid); text-align:center; }
.pt-specs-table td:first-child { text-align:left; color:var(--pt-dark); font-weight:500; }
.pt-win-cell { background:var(--pt-win-bg) !important; color:var(--pt-win) !important; font-weight:700 !important; }

/* Scores */
.pt-scores-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:12px; }
.pt-score-card { background:#fff; border-radius:12px; padding:16px; box-shadow:var(--pt-shadow); }
.pt-score-card-title {
  font-size:11px; font-weight:600; text-transform:uppercase;
  letter-spacing:.06em; color:var(--pt-light); margin-bottom:12px;
}
.pt-score-row-item { display:flex; flex-direction:column; gap:4px; margin-bottom:10px; }
.pt-score-row-meta { font-size:12px; color:var(--pt-mid); display:flex; justify-content:space-between; }
.pt-score-bar-wrap { height:7px; background:#f1f5f9; border-radius:4px; overflow:hidden; }
.pt-score-bar-inner { height:100%; border-radius:4px; transition:width .5s ease; }

/* Veredicto */
.pt-veredicto { background:#fff; padding:20px 24px; border-top:2px solid var(--pt-gray); }
.pt-veredicto-title {
  font-size:13px; font-weight:700; color:var(--pt-dark);
  margin:0 0 8px; text-transform:uppercase; letter-spacing:.05em;
}
#pt-veredicto-text { font-size:14px; color:var(--pt-mid); line-height:1.7; margin:0; }
#pt-veredicto-text strong { color:var(--pt-dark); }

.pt-affiliate-note {
  background:var(--pt-gray); font-size:11px; color:var(--pt-light);
  padding:12px 24px; margin:0; border-top:1px solid rgba(0,0,0,.06); line-height:1.5;
}

/* ── RESPONSIVE ────────────────────────────────────────────── */
@media (max-width:700px) {
  .pt-top-block { grid-template-columns:1fr; gap:20px; padding:20px 16px; }
  .pt-vs-center { padding-top:0; flex-direction:row; gap:16px; }
  .pt-rank-num { font-size:36px; }
  .pt-product-img-wrap { width:160px; height:130px; }
  .pt-tab { padding:11px 12px; font-size:12px; }
  .pt-specs-table { font-size:12px; }
  .pt-specs-table td,
  .pt-specs-table th { padding:8px 10px; }
}
