/* Actualizo Core – componentes. Usa las variables del tema Actualizo con valores de respaldo. */
.act-quick,.act-toc,.act-verdict,.act-source,.act-faq,.act-comp,.act-game-card,.act-ranking,.act-form,.act-alert{--a:var(--act-accent,#0b6bcb);--a2:var(--act-accent-2,#00a37a);--ink:var(--act-ink,#0f172a);--muted:var(--act-muted,#5b6475);--line:var(--act-line,#e3e7ee);--soft:var(--act-soft,#f4f7fb);--card:var(--act-card,#fff);--r:var(--act-radius,14px)}

/* Respuesta rápida */
.act-quick{border:1px solid var(--line);border-left:4px solid var(--a2);background:var(--soft);border-radius:var(--r);padding:1.1rem 1.25rem;margin:0 0 1.75rem}
.act-quick__answer{margin:0;font-size:1.06rem;line-height:1.6;color:var(--ink)}
.act-quick__label{display:block;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--a2);margin-bottom:.35rem}
.act-quick__meta{list-style:none;margin:.85rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}
.act-quick__meta li{margin:0;font-size:.85rem;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:.25rem .7rem;color:var(--muted)}
.act-needs{margin-top:.85rem}
.act-needs summary{cursor:pointer;font-weight:600;font-size:.92rem}
.act-needs ul{margin:.5rem 0 0 1.1rem;padding:0}
.act-needs li{margin:.2rem 0;font-size:.95rem}

/* Índice */
.act-toc{border:1px solid var(--line);border-radius:var(--r);padding:.9rem 1.2rem;margin:0 0 2rem;background:var(--card)}
.act-toc summary{cursor:pointer;font-weight:700;font-size:.95rem}
.act-toc ol{margin:.6rem 0 0 1.2rem;padding:0;columns:2 240px;column-gap:2rem}
.act-toc li{margin:.25rem 0;font-size:.93rem;break-inside:avoid}
.act-toc a{text-decoration:none;color:var(--ink)}
.act-toc a:hover{color:var(--a);text-decoration:underline}

/* FAQ */
.act-faq{margin:2.5rem 0 1.5rem}
.act-faq details{border:1px solid var(--line);border-radius:var(--r);padding:.85rem 1.1rem;margin:.6rem 0;background:var(--card)}
.act-faq summary{cursor:pointer;font-weight:600;list-style:none;position:relative;padding-right:1.5rem}
.act-faq summary::-webkit-details-marker{display:none}
.act-faq summary::after{content:"+";position:absolute;right:0;top:-.1rem;font-size:1.3rem;color:var(--a);transition:transform .2s}
.act-faq details[open] summary::after{transform:rotate(45deg)}
.act-faq details p{margin:.6rem 0 0;color:var(--muted)}

/* Fuente y verificación */
.act-source{margin:2rem 0 0;padding:1rem 1.2rem;border-radius:var(--r);background:var(--soft);font-size:.92rem;color:var(--muted)}
.act-source p{margin:.3rem 0}
.act-check{display:inline-grid;place-items:center;width:1.25rem;height:1.25rem;border-radius:50%;background:var(--a2);color:#fff;font-size:.75rem;font-weight:700}

/* Comparativas */
.act-comp{margin:0 0 2rem}
.act-comp__cards{display:grid;grid-template-columns:repeat(var(--cols,2),minmax(0,1fr));gap:.9rem;margin-bottom:1rem}
.act-comp__card{position:relative;border:1px solid var(--line);border-radius:var(--r);padding:1.1rem;background:var(--card)}
.act-comp__card.is-winner{border-color:var(--a2);box-shadow:0 0 0 2px color-mix(in srgb,var(--a2) 25%,transparent)}
.act-comp__card h3{margin:0 0 .5rem;font-size:1.05rem}
.act-comp__card p{margin:.5rem 0 0;font-size:.88rem;color:var(--muted);line-height:1.45}
.act-badge{position:absolute;top:-.6rem;right:.8rem;background:var(--a2);color:#fff;font-size:.7rem;font-weight:700;padding:.2rem .55rem;border-radius:999px;letter-spacing:.03em}
.act-score{display:flex;align-items:baseline;gap:.15rem;flex-wrap:wrap}
.act-score strong{font-size:1.6rem;line-height:1;color:var(--ink)}
.act-score span{color:var(--muted);font-size:.85rem}
.act-score__bar{flex-basis:100%;height:6px;border-radius:6px;background:var(--line);margin-top:.45rem;overflow:hidden}
.act-score__bar i{display:block;height:100%;background:linear-gradient(90deg,var(--a),var(--a2));border-radius:6px}
.act-verdict{border-radius:var(--r);padding:1rem 1.2rem;margin:0 0 1rem;background:color-mix(in srgb,var(--a) 8%,var(--card));border:1px solid color-mix(in srgb,var(--a) 25%,var(--line));line-height:1.55}
.act-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);margin:0 0 1rem;-webkit-overflow-scrolling:touch}
.act-table{width:100%;border-collapse:collapse;font-size:.92rem;min-width:520px;margin:0}
.act-table th,.act-table td{padding:.7rem .85rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.act-table thead th{background:var(--soft);font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);position:sticky;top:0}
.act-table tbody th{font-weight:600;color:var(--ink);background:var(--card);position:sticky;left:0;min-width:130px}
.act-table tbody tr:last-child th,.act-table tbody tr:last-child td{border-bottom:0}
.act-table tbody tr:nth-child(even) td{background:color-mix(in srgb,var(--soft) 55%,transparent)}

/* Ficha de juego */
.act-game-card{display:grid;grid-template-columns:auto 1fr;gap:1.2rem;align-items:start;border:1px solid var(--line);border-radius:var(--r);padding:1.2rem;margin:0 0 2rem;background:var(--card)}
.act-game-card__score{display:grid;place-items:center;text-align:center;width:88px;height:88px;border-radius:18px;background:linear-gradient(135deg,var(--a),var(--a2));color:#fff}
.act-game-card__score strong{font-size:1.9rem;line-height:1}
.act-game-card__score span{font-size:.62rem;text-transform:uppercase;letter-spacing:.06em;opacity:.9}
.act-game-card dl{margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.6rem 1rem}
.act-game-card dl div{min-width:0}
.act-game-card dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.act-game-card dd{margin:0;font-weight:600;font-size:.95rem}
.act-game-card .act-btn{grid-column:1/-1;justify-self:start}

/* Ranking */
.act-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1.2rem}
.act-chip{font:inherit;font-size:.88rem;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:999px;padding:.4rem .9rem;cursor:pointer;transition:all .15s}
.act-chip:hover{border-color:var(--a)}
.act-chip.is-active{background:var(--ink);color:var(--card);border-color:var(--ink)}
.act-ranking__list{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.act-ranking__item{display:grid;grid-template-columns:2.4rem 56px 1fr auto;align-items:center;gap:.9rem;padding:.7rem .9rem;border:1px solid var(--line);border-radius:var(--r);background:var(--card);margin:0;transition:border-color .15s,transform .15s}
.act-ranking__item:hover{border-color:var(--a);transform:translateY(-1px)}
.act-ranking__item[hidden]{display:none}
.act-ranking__pos{font-size:1.35rem;font-weight:800;color:var(--muted);text-align:center;font-variant-numeric:tabular-nums}
.act-ranking__item:nth-child(-n+3) .act-ranking__pos{color:var(--a)}
.act-ranking__thumb{width:56px;height:56px;border-radius:12px;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,color-mix(in srgb,var(--a) 85%,#000),var(--a2));color:#fff;font-weight:800;font-size:1.4rem;text-decoration:none}
.act-ranking__thumb img{width:100%;height:100%;object-fit:cover}
.act-ranking__title{font-weight:700;color:var(--ink);text-decoration:none;font-size:1.02rem}
.act-ranking__title:hover{color:var(--a)}
.act-ranking__meta{font-size:.82rem;color:var(--muted);display:flex;gap:.6rem;flex-wrap:wrap;margin-top:.1rem}
.act-ranking__meta span+span::before{content:"·";margin-right:.6rem}
.act-tags{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.35rem}
.act-tags span{font-size:.7rem;padding:.1rem .45rem;border-radius:6px;background:var(--soft);color:var(--muted);border:1px solid var(--line)}
.act-ranking__score{font-weight:800;font-size:1rem;color:var(--a2);font-variant-numeric:tabular-nums}

/* Anuncios: espacio reservado para evitar saltos (CLS) */
.act-ad{margin:2rem auto;text-align:center;min-height:280px;clear:both;contain:layout}
.act-ad--articulo_1,.act-ad--articulo_2{min-height:250px}
.act-ad--lateral{min-height:600px;margin:0}
.act-ad__label{display:block;font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--act-muted,#8a93a3);margin-bottom:.35rem}
.act-ad__ph{display:grid;place-items:center;min-height:250px;border:2px dashed var(--act-line,#d5dbe5);border-radius:12px;color:var(--act-muted,#8a93a3);font-size:.85rem;padding:1rem;line-height:1.5}
.act-ad--lateral .act-ad__ph{min-height:600px}

/* Formulario */
.act-form{display:grid;gap:1rem;max-width:640px}
.act-form label{display:grid;gap:.35rem;font-weight:600;font-size:.92rem}
.act-form input[type=text],.act-form input[type=email],.act-form select,.act-form textarea{font:inherit;font-weight:400;width:100%;padding:.7rem .85rem;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink)}
.act-form input:focus,.act-form select:focus,.act-form textarea:focus{outline:2px solid var(--a);outline-offset:1px;border-color:var(--a)}
.act-form__row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.act-form__check{display:flex!important;grid-template-columns:none;gap:.6rem!important;align-items:flex-start;font-weight:400!important;font-size:.88rem!important}
.act-form__check input{margin-top:.2rem}
.act-form__hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.act-form__note{font-size:.82rem;color:var(--muted);margin:0}
.act-alert{padding:.9rem 1.1rem;border-radius:10px;margin:0 0 1.2rem}
.act-alert--ok{background:#e7f8f1;color:#05603a;border:1px solid #a6e4c9}
.act-alert--error{background:#fdecec;color:#8a1c1c;border:1px solid #f3b5b5}

.act-btn{display:inline-flex;align-items:center;gap:.4rem;font:inherit;font-weight:700;font-size:.95rem;background:var(--act-accent,#0b6bcb);color:#fff!important;border:0;border-radius:10px;padding:.75rem 1.2rem;cursor:pointer;text-decoration:none!important;transition:filter .15s}
.act-btn:hover{filter:brightness(1.1)}

@media (max-width:640px){
	.act-comp__cards{grid-template-columns:1fr}
	.act-form__row{grid-template-columns:1fr}
	.act-game-card{grid-template-columns:1fr}
	.act-ranking__item{grid-template-columns:2rem 44px 1fr auto;gap:.6rem;padding:.6rem}
	.act-ranking__thumb{width:44px;height:44px}
	.act-toc ol{columns:1}
}

/* Portada de tarjeta (sin imagen propia) */
.act-card__cover{position:relative;display:flex;align-items:center;gap:.8rem;height:100%;padding:1.2rem 1.4rem;color:#fff;background:linear-gradient(135deg,var(--c1),var(--c2));overflow:hidden}
.act-card__cover::before{content:"";position:absolute;width:75%;aspect-ratio:1;right:-20%;top:-45%;border-radius:50%;background:rgba(255,255,255,.12)}
.act-card__cover::after{content:"";position:absolute;width:40%;aspect-ratio:1;right:4%;bottom:-30%;border-radius:50%;border:10px solid rgba(255,255,255,.14)}
.act-card__cover-icon{position:relative;z-index:1;display:grid;place-items:center;flex-shrink:0;width:56px;height:56px;border-radius:16px;background:rgba(255,255,255,.18);backdrop-filter:blur(2px)}
.act-card__cover-icon svg{width:30px;height:30px}
.act-card__cover-name{position:relative;z-index:1;font-weight:800;font-size:1.3rem;line-height:1.15;letter-spacing:-.015em}
.act-card__cover-name::first-letter,.act-cat__name::first-letter{text-transform:uppercase}
