/* ---------- BANNER DE JUEGO (ficha de detalle de objeto) ---------- */
.game-banner{
  position:relative;height:220px;display:flex;align-items:flex-end;
  background-color:var(--panel-2);background-size:cover;background-position:center;overflow:hidden;
}
.game-banner::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(0deg, rgba(21,18,15,0.95) 0%, rgba(21,18,15,0.45) 55%, rgba(21,18,15,0.05) 100%);
}
.game-banner-inner{position:relative;z-index:1;padding:24px 32px;max-width:1100px;margin:0 auto;width:100%;}
.game-banner .g-breadcrumb{font-size:11.5px;color:var(--bone-dim);margin-bottom:8px;}
.game-banner .g-breadcrumb a:hover{color:var(--ember-bright);}
.game-banner .g-breadcrumb .sep{margin:0 6px;color:rgba(255,255,255,0.25);}
.game-banner h1{
  font-size:36px;font-weight:800;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,0.5);
  font-family:'Big Shoulders Display',sans-serif;text-transform:uppercase;letter-spacing:0.01em;
}
.game-banner .g-count{font-size:12px;color:rgba(236,228,208,0.85);margin-top:4px;}
.game-banner .g-count b{color:var(--ember-bright);}

/* ---------- SOBRE EL JUEGO (reservado, sin usar por ahora) ---------- */
.about-panel{
  background:var(--panel);border:1px solid var(--line);border-radius:3px;
  padding:16px 24px;margin:24px 0;
}
.about-panel summary{
  font-size:11.5px;text-transform:uppercase;letter-spacing:0.07em;color:var(--bone-dim);
  cursor:pointer;padding:4px 0;
}
.about-panel .about-body{font-size:14px;line-height:1.65;color:var(--bone);margin-top:12px;}
.about-panel .about-body p{margin-bottom:10px;}
.about-panel .about-body strong{color:var(--ember-bright);}
.about-panel .about-body ul,.about-panel .about-body ol{margin:0 0 10px 20px;}

/* ---------- GRUPOS DE RELACIÓN (invocaciones, recetas...) ---------- */
.relation-group{
  background:var(--void);border:1px solid var(--line);border-radius:3px;
  padding:12px 14px;margin-bottom:10px;
}
.relation-group .rg-title{
  font-size:12.5px;font-weight:600;color:var(--ember-bright);margin-bottom:8px;
}
.relation-group .related-item{background:var(--panel);}
.qty-chip{
  font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--moss-bright);
  background:rgba(74,107,79,0.15);border:1px solid rgba(74,107,79,0.35);
  padding:2px 7px;border-radius:2px;margin-right:8px;
}

/* ---------- ICONO DE ÍTEM EN RELACIONES ---------- */
.r-icon{
    width:28px;height:28px;object-fit:cover;border-radius:3px;
    border:1px solid var(--line);vertical-align:middle;margin-right:8px;
}

/* ---------- BANNER COMPACTO DE JUEGO (con sidebar) ---------- */
.game-banner-mini{
  position:relative;height:250px;display:flex;align-items:flex-end;
  background-color:var(--panel-2);background-size:cover;background-position:center;overflow:hidden;
}
.game-banner-mini::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(0deg, rgba(21,18,15,0.95) 0%, rgba(21,18,15,0.4) 60%, rgba(21,18,15,0.05) 100%);
}
.game-banner-mini-inner{position:relative;z-index:1;padding:18px 24px;width:100%;max-width:1320px;margin:0 auto;}
.game-banner-mini .g-breadcrumb{font-size:11px;color:var(--bone-dim);margin-bottom:4px;}
.game-banner-mini .g-breadcrumb .sep{margin:0 6px;color:rgba(255,255,255,0.25);}
.game-banner-mini h1{
  font-size:30px;font-weight:800;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,0.5);
  font-family:'Big Shoulders Display',sans-serif;text-transform:uppercase;
}

/* ---------- LAYOUT: SIDEBAR + BLOG (FULL WIDTH) ---------- */
.game-shell{
  display:grid;grid-template-columns:240px 1fr;width:100%;max-width:1320px;margin:0 auto;flex:1;min-width:0;
}
@media (max-width:880px){.game-shell{grid-template-columns:1fr;}}

.game-sidebar{
  border-right:1px solid var(--line);background:var(--panel);padding:22px 18px;
}
@media (min-width:1321px){.game-sidebar{border-left:1px solid var(--line);}}
.sidebar-sentinel{height:1px;}
.game-sidebar-inner{position:sticky;top:16px;}
@media (max-width:880px){
  .game-sidebar-inner{position:static;}
}
.sb-game-title{
  display:none;
  font-family:'Big Shoulders Display',sans-serif;font-size:20px;font-weight:800;
  color:#fff;text-transform:uppercase;letter-spacing:0.01em;line-height:1.15;
  margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--line);
}
.game-sidebar-inner.is-stuck .sb-game-title{display:block;}

/* ---------- MENÚ DESPLEGABLE EN MÓVIL ---------- */
.sb-mobile-bar,.sb-backdrop{display:none;}
@media (max-width:880px){
  .sb-mobile-bar{
    display:flex;align-items:center;gap:12px;position:sticky;top:0;z-index:70;
    padding:10px 16px;background:var(--panel);border-bottom:1px solid var(--line);
  }
  .sb-mobile-title{
    font-family:'Big Shoulders Display',sans-serif;font-size:18px;font-weight:800;color:var(--bone);
    text-transform:uppercase;letter-spacing:0.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  }
  .sb-toggle{
    flex-shrink:0;width:40px;height:40px;border:1px solid var(--line);border-radius:4px;background:transparent;
    cursor:pointer;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:0;
  }
  .sb-toggle span{display:block;width:20px;height:2px;border-radius:2px;background:var(--bone);transition:transform .3s ease,opacity .2s ease;}
  .sb-open .sb-toggle{border-color:var(--ember);}
  .sb-open .sb-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .sb-open .sb-toggle span:nth-child(2){opacity:0;}
  .sb-open .sb-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

  .game-sidebar{
    position:fixed;top:var(--sb-top,0);left:0;bottom:0;z-index:60;width:280px;max-width:85vw;overflow-y:auto;
    border-left:none;box-shadow:6px 0 24px rgba(0,0,0,0.5);
    transform:translateX(-100%);visibility:hidden;
    transition:transform .3s ease,visibility 0s linear .3s;
  }
  .sb-open .game-sidebar{transform:translateX(0);visibility:visible;transition:transform .3s ease,visibility 0s;}
  .sb-backdrop{
    display:block;position:fixed;top:var(--sb-top,0);left:0;right:0;bottom:0;z-index:50;
    background:rgba(0,0,0,0.55);opacity:0;pointer-events:none;transition:opacity .3s ease;
  }
  .sb-open .sb-backdrop{opacity:1;pointer-events:auto;}
  body.sb-open{overflow:hidden;}
  .game-sidebar-inner.is-stuck .sb-game-title{display:none;}
}
@media (max-width:880px) and (prefers-reduced-motion:reduce){
  .game-sidebar,.sb-backdrop,.sb-toggle span{transition:none;}
}
.sb-group{margin-bottom:26px;}
.sb-label{font-size:10px;text-transform:uppercase;letter-spacing:0.1em;color:var(--bone-dim);margin-bottom:10px;padding-left:4px;}
.sb-link{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:3px;font-size:13.5px;color:var(--bone-dim);cursor:pointer;transition:.12s;margin-bottom:2px;text-decoration:none;}
.sb-link:hover{color:var(--bone);background:rgba(255,255,255,0.03);}
.sb-link.active{color:var(--bone);background:rgba(201,121,58,0.12);}
.sb-link .count{margin-left:auto;font-size:10.5px;color:var(--bone-dim);font-family:'JetBrains Mono',monospace;}
.rune{width:15px;height:15px;flex-shrink:0;}
.rune path,.rune circle,.rune rect,.rune line{stroke:var(--bone-dim);stroke-width:1.5;fill:none;}
.rune.moss path,.rune.moss circle{stroke:var(--moss-bright);}
.rune.blood path,.rune.blood circle{stroke:var(--blood);}
.rune.sky path,.rune.sky circle{stroke:var(--sky);}
.rune.ember path,.rune.ember circle{stroke:var(--ember-bright);}

.game-main{padding:28px 36px 60px;width:100%;min-width:0;}

.feed-section-title{font-size:11px;text-transform:uppercase;letter-spacing:0.09em;color:var(--bone-dim);margin:30px 0 14px;padding-bottom:8px;border-bottom:1px solid var(--line);}
.feed-section-title.section-title-lg{
  font-size:22px;letter-spacing:0.01em;color:var(--bone);font-weight:800;
  font-family:'Big Shoulders Display',sans-serif;
}

.feed-featured{display:grid;grid-template-columns:1.1fr 1fr;gap:0;background:var(--panel);border:1px solid var(--line);border-radius:4px;overflow:hidden;margin-bottom:10px;cursor:pointer;transition:.15s;text-decoration:none;color:inherit;}
.feed-featured:hover{border-color:var(--ember);}
@media (max-width:700px){.feed-featured{grid-template-columns:1fr;}}
.ff-media{background:linear-gradient(135deg,#3a2f1f,#7a4f28);min-height:200px;position:relative;display:flex;align-items:flex-end;padding:14px;}
.ff-media .rune{width:34px;height:34px;opacity:0.85;}
.ff-media .rune path,.ff-media .rune circle{stroke:rgba(255,255,255,0.75);}
.ff-body{padding:24px 26px;}
.ff-title{font-size:22px;font-weight:700;margin-bottom:8px;line-height:1.25;}
.ff-excerpt{font-size:13.5px;color:var(--bone-dim);line-height:1.55;margin-bottom:14px;}
.ff-meta{font-size:11px;color:var(--bone-dim);display:flex;gap:10px;align-items:center;}
.ff-meta .dot{color:var(--line);}

/* ---------- PAGINACIÓN ---------- */
.paginacion{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:28px;flex-wrap:wrap;}
.pag-nums{display:flex;align-items:center;gap:6px;}
.pag-btn,.pag-num{
  display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 12px;
  border:1px solid var(--line);border-radius:3px;background:var(--panel);color:var(--bone-dim);
  font-size:13px;text-decoration:none;transition:.12s;
}
.pag-btn:hover,.pag-num:hover{border-color:var(--ember);color:var(--bone);}
.pag-num.is-active{background:rgba(201,121,58,0.15);border-color:var(--ember);color:var(--ember-bright);font-weight:600;}
.pag-btn.is-disabled{opacity:.35;pointer-events:none;}
.pag-dots{color:var(--bone-dim);padding:0 2px;}
@media (max-width:520px){.pag-btn{padding:0 10px;font-size:12px;}}

.pill{display:inline-flex;align-items:center;gap:5px;font-size:10px;text-transform:uppercase;letter-spacing:0.06em;padding:3px 9px;border-radius:20px;font-weight:600;}
.pill.guia{background:rgba(201,121,58,0.16);color:var(--ember-bright);border:1px solid rgba(201,121,58,0.4);}
.pill.eyebrow{background:transparent;border:1px solid var(--line);color:var(--bone-dim);font-weight:500;}

/* rejilla de guías/vídeos/imágenes: se adapta al ancho disponible */
.post-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;}
.post-card{
  display:block;background:var(--panel);border:1px solid var(--line);border-radius:4px;overflow:hidden;
  text-decoration:none;color:inherit;transition:.15s;
}
.post-card:hover{border-color:var(--moss-bright);transform:translateY(-2px);}
.pc-media{height:120px;background:linear-gradient(135deg,#3a2f1f,#7a4f28);display:flex;align-items:center;justify-content:center;}
.pc-media .rune{width:26px;height:26px;}
.pc-media .rune path,.pc-media .rune circle{stroke:rgba(255,255,255,0.8);}
.pc-body{padding:14px 16px;}
.pc-title{font-size:14.5px;font-weight:600;margin:6px 0 6px;line-height:1.35;}
.pc-excerpt{font-size:12.5px;color:var(--bone-dim);line-height:1.5;margin-bottom:8px;}

/* ---------- GUÍA — DETALLE ---------- */
.guide-shell{display:grid;grid-template-columns:1fr 280px;gap:40px;}
.guide-shell.guide-shell-solo{grid-template-columns:1fr;max-width:880px;margin:0 auto;}
@media (max-width:880px){.guide-shell{grid-template-columns:1fr;}}
.guide-hero{height:340px;border-radius:4px;margin-bottom:20px;background:linear-gradient(135deg,#3a2f1f,#7a4f28);position:relative;}
.guide-title{font-size:32px;font-weight:800;margin-bottom:8px;font-family:'Big Shoulders Display',sans-serif;text-transform:uppercase;}
.guide-meta{font-size:12px;color:var(--bone-dim);margin-bottom:22px;display:flex;gap:10px;align-items:center;}
.guide-body{font-size:15.5px;}
.guide-body p{font-size:15.5px;line-height:1.8;color:var(--bone);margin-bottom:18px;}
.guide-body h1,.guide-body h2{font-size:21px;margin:32px 0 14px;color:var(--bone);font-weight:800;font-family:'Big Shoulders Display',sans-serif;text-transform:uppercase;letter-spacing:0.01em;border-bottom:1px solid var(--line);padding-bottom:8px;}
.guide-body h3{font-size:17px;margin:26px 0 10px;color:var(--ember-bright);font-weight:700;}
.guide-body strong{color:var(--ember-bright);font-weight:700;}
.guide-body em{color:var(--bone);font-style:italic;opacity:0.9;}
.guide-body ul,.guide-body ol{margin:0 0 18px;padding-left:4px;list-style:none;}
.guide-body ul li,.guide-body ol li{position:relative;padding-left:22px;margin-bottom:10px;line-height:1.7;color:var(--bone);}
.guide-body ul li::before{content:"";position:absolute;left:2px;top:9px;width:6px;height:6px;border-radius:50%;background:var(--ember);}
.guide-body ol{counter-reset:guide-ol;}
.guide-body ol li{counter-increment:guide-ol;}
.guide-body ol li::before{content:counter(guide-ol);left:0;top:0;width:16px;height:16px;border-radius:50%;background:none;color:var(--ember-bright);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;}
.guide-body li strong{color:var(--ember-bright);}
.guide-body img{max-width:100%;height:auto;border-radius:4px;margin:8px auto 22px;display:block;border:1px solid var(--line);}
.guide-body figure{margin:8px 0 22px;}
.guide-body figcaption{font-size:11.5px;color:var(--bone-dim);margin-top:6px;text-align:center;}
.entry-chip{display:inline-flex;align-items:center;gap:6px;background:var(--panel);border:1px solid var(--moss);color:var(--bone);padding:2px 10px 2px 4px;border-radius:20px;font-size:13px;font-weight:500;cursor:pointer;vertical-align:middle;text-decoration:none;}
.entry-chip:hover{border-color:var(--moss-bright);}
.entry-chip .r-icon-mini,.entry-chip img.r-icon-mini{width:20px;height:20px;border-radius:50%;background:linear-gradient(135deg,#2f4a35,#5a8a63);object-fit:cover;}

.guide-side-box{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:16px 18px;margin-bottom:16px;}
.guide-side-box h4{font-size:11px;text-transform:uppercase;letter-spacing:0.07em;color:var(--bone-dim);margin-bottom:12px;}
.rel-fichas{display:flex;flex-direction:column;gap:8px;}
.rel-ficha-item{display:flex;align-items:center;gap:10px;font-size:13px;cursor:pointer;text-decoration:none;color:inherit;}
.rel-ficha-item .r-icon-mini,.rel-ficha-item img.r-icon-mini{width:26px;height:26px;border-radius:4px;background:linear-gradient(135deg,#3a2f1f,#7a4f28);object-fit:cover;}

/* ---------- LOGROS DE STEAM ---------- */
.achv-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px;}
.achv-search{
  background:var(--void);border:1px solid var(--line);color:var(--bone);
  padding:9px 14px;border-radius:20px;font-size:13px;font-family:'Work Sans',sans-serif;
  min-width:200px;flex:1 1 200px;
}
.achv-search::placeholder{color:var(--bone-dim);}
.achv-search:focus{outline:none;border-color:var(--ember);}
.achv-sort{
  background:var(--void);border:1px solid var(--line);color:var(--bone);
  padding:9px 14px;border-radius:20px;font-size:12.5px;font-family:'Work Sans',sans-serif;
  cursor:pointer;
}
.achv-sort:focus{outline:none;border-color:var(--ember);}
.achv-filter-pills{display:flex;gap:8px;flex-wrap:wrap;}
.achv-filter-pills button{font-family:'Work Sans',sans-serif;}

.achv-list{display:flex;flex-direction:column;gap:10px;}
.achv-item{
  display:grid;grid-template-columns:52px 1fr auto;gap:16px;align-items:center;
  background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:14px 18px;
  transition:.15s;
}
.achv-item:hover{border-color:var(--ember);}
.achv-icon{width:52px;height:52px;border-radius:4px;object-fit:cover;border:1px solid var(--line);background:var(--void);}
.achv-icon-bloqueado{opacity:.55;}

.achv-body .achv-name{font-size:14.5px;font-weight:600;margin-bottom:3px;}
.achv-body .achv-desc{font-size:12.5px;color:var(--bone-dim);line-height:1.5;}
.achv-global{display:flex;align-items:center;gap:8px;margin-top:8px;}
.achv-global .mono{font-size:10.5px;color:var(--bone-dim);white-space:nowrap;}
.achv-global .bar-bg{width:90px;height:4px;background:var(--void);border-radius:2px;overflow:hidden;flex-shrink:0;}
.achv-global .bar-fill{height:100%;background:var(--moss-bright);}

.achv-users{display:flex;gap:20px;flex-shrink:0;}
@media (max-width:700px){.achv-item{grid-template-columns:44px 1fr;}.achv-users{grid-column:1 / -1;justify-content:flex-start;margin-top:4px;}.achv-icon{width:44px;height:44px;}}
.achv-user{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:10.5px;color:var(--bone-dim);min-width:64px;}
.achv-user .u-icon{width:18px;height:18px;}
.achv-user .u-icon path,.achv-user .u-icon rect{stroke:var(--bone-dim);stroke-width:1.6;fill:none;}
.achv-user .u-name{font-weight:600;}
.achv-user .u-date{font-size:9.5px;color:var(--bone-dim);}
.achv-user.done{color:var(--moss-bright);}
.achv-user.done .u-icon path{stroke:var(--moss-bright);stroke-width:2;}
.achv-user.done .u-date{color:var(--moss-bright);}
.rel-ficha-item:hover{color:var(--ember-bright);}
/* ---------- REVIEWS: nota ---------- */
.score-badge{
  display:inline-flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;
  min-width:64px;padding:8px 12px 7px;line-height:1;
  border:1px solid var(--line);border-radius:4px;background:var(--void);
}
.score-badge .score-num{font-family:'Big Shoulders Display',sans-serif;font-size:28px;font-weight:800;}
.score-badge .score-max{font-family:'JetBrains Mono',monospace;font-size:9.5px;margin-top:3px;color:var(--bone-dim);}
.score-alta{border-color:rgba(108,148,114,0.65);}
.score-alta .score-num{color:var(--moss-bright);}
.score-media{border-color:rgba(230,155,82,0.6);}
.score-media .score-num{color:var(--ember-bright);}
.score-baja{border-color:rgba(217,112,90,0.65);}
.score-baja .score-num{color:var(--blood);}
.score-lg{min-width:92px;padding:12px 16px 10px;}
.score-lg .score-num{font-size:44px;}
.score-lg .score-max{font-size:11px;}
.score-sm{min-width:46px;padding:5px 8px 4px;background:rgba(21,18,15,0.85);}
.score-sm .score-num{font-size:20px;}

/* ---------- REVIEWS: blog de la portada ---------- */
.reviews-blog{margin-top:56px;padding-top:32px;border-top:1px solid var(--line);}
.reviews-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:22px;}
.reviews-title{font-family:'Big Shoulders Display',sans-serif;font-size:26px;font-weight:800;text-transform:uppercase;letter-spacing:0.02em;}
.reviews-sub{font-size:12px;color:var(--bone-dim);}

.review-featured{
  display:grid;grid-template-columns:1.15fr 1fr;margin-bottom:18px;
  background:var(--panel);border:1px solid var(--line);border-radius:4px;overflow:hidden;transition:.15s;
}
.review-featured:hover{border-color:var(--ember);}
.rf-media{
  min-height:260px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#3a2f1f,#7a4f28);background-size:cover;background-position:center;
}
.rf-media .rune{width:34px;height:34px;}
.rf-media .rune path{stroke:rgba(255,255,255,0.75);}
.rf-body{padding:26px 28px;display:flex;flex-direction:column;min-width:0;}
.rf-eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:12px;flex-wrap:wrap;}
.rf-date{font-size:11px;color:var(--bone-dim);font-family:'JetBrains Mono',monospace;}
.rf-title{font-family:'Big Shoulders Display',sans-serif;font-size:30px;font-weight:800;line-height:1.1;text-transform:uppercase;margin-bottom:10px;}
.rf-excerpt{
  font-size:13.5px;color:var(--bone-dim);line-height:1.6;margin-bottom:18px;
  display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;
}
.rf-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;}
.rf-cta{font-size:12px;color:var(--ember-bright);letter-spacing:0.04em;}
@media (max-width:700px){.review-featured{grid-template-columns:1fr;}.rf-media{min-height:180px;}.rf-title{font-size:26px;}}

.review-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;}
.review-card{
  display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--line);
  border-radius:4px;overflow:hidden;transition:.15s;
}
.review-card:hover{border-color:var(--moss-bright);transform:translateY(-2px);}
.rc-media{
  position:relative;height:130px;
  background:linear-gradient(135deg,#3a2f1f,#7a4f28);background-size:cover;background-position:center;
}
.rc-media .score-badge{position:absolute;top:10px;right:10px;}
.rc-body{padding:14px 16px 16px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;flex:1;}
.rc-title{font-size:15px;font-weight:600;line-height:1.3;}
.rc-excerpt{
  font-size:12.5px;color:var(--bone-dim);line-height:1.5;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}
.rc-date{margin-top:auto;font-size:11px;color:var(--bone-dim);font-family:'JetBrains Mono',monospace;}

/* ---------- REVIEWS: página de la review ---------- */
.review-article{max-width:820px;}
.review-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:22px;}
.review-header-text{min-width:0;flex:1;}
.review-title{margin:10px 0 8px;}
.review-header .guide-meta{margin-bottom:0;}
.review-header .guide-meta a:hover{color:var(--ember-bright);}
.review-lede{font-size:15px;line-height:1.6;color:var(--bone-dim);margin-top:14px;}
.review-hero{
  height:340px;margin-bottom:24px;border:1px solid var(--line);border-radius:4px;
  background:linear-gradient(135deg,#3a2f1f,#7a4f28);background-size:cover;background-position:center;
}
.review-video{
  position:relative;aspect-ratio:16/9;margin:0 0 24px;
  border:1px solid var(--line);border-radius:4px;overflow:hidden;background:#000;
}
.review-video iframe,.review-video video{position:absolute;inset:0;width:100%;height:100%;border:0;}
.review-body{font-size:15px;line-height:1.75;color:var(--bone);overflow-wrap:anywhere;}
.review-body h1,.review-body h2,.review-body h3{
  font-family:'Big Shoulders Display',sans-serif;font-size:24px;font-weight:800;
  text-transform:uppercase;color:var(--ember-bright);margin:30px 0 12px;line-height:1.15;
}
.review-body p{margin-bottom:16px;}
.review-body strong{color:#fff;}
.review-body em{color:var(--bone);}
.review-body code{font-family:'JetBrains Mono',monospace;font-size:0.9em;background:var(--panel-2);border:1px solid var(--line);border-radius:3px;padding:1px 6px;}
.review-body hr{border:0;border-top:1px solid var(--line);margin:26px 0;}
.review-body a{color:var(--ember-bright);text-decoration:underline;}
.review-body ul,.review-body ol{margin:0 0 16px 22px;}
.review-body blockquote{border-left:3px solid var(--ember);margin:18px 0;padding:4px 18px;color:var(--bone-dim);}
.review-body img{display:block;max-width:100%;height:auto;margin:20px auto;border:1px solid var(--line);border-radius:4px;}
.review-body figure{margin:20px 0;}
.review-body figcaption{margin-top:6px;font-size:12px;color:var(--bone-dim);text-align:center;}
.review-body .review-video{margin:22px 0;}
@media (max-width:600px){
  .review-header{flex-direction:column-reverse;gap:16px;}
  .review-hero{height:220px;}
}

/* ---------- LEGADO (WoW: Forever) ---------- */
.legado-tabs{margin:16px 0 18px;}
.legado-resumen{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-bottom:18px;}
.legado-user{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:12px 14px;}
.legado-user.es-yo{border-color:rgba(201,121,58,0.5);}
.legado-user .lu-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px;gap:10px;}
.legado-user .lu-name{font-weight:600;color:var(--bone);}
.legado-user .lu-pts{font-size:12px;color:var(--bone-dim);}
.legado-user .lu-pts b{color:var(--ember-bright);font-size:15px;}
.legado-user .lu-sub{font-size:11.5px;color:var(--bone-dim);margin-top:8px;}
.legado-user .lu-sub b{color:var(--bone);}
.legado-nota{font-size:13px;color:var(--bone-dim);line-height:1.6;margin:0 0 14px;}
.legado-beta{display:block;margin-top:4px;color:var(--ember);font-size:12px;}
.legado-grupo{margin-bottom:8px;}
.legado-grupo-titulo{display:flex;justify-content:space-between;align-items:center;}
.legado-grupo-titulo .mono{font-size:11px;color:var(--ember-bright);letter-spacing:0;}
.legado-pt{font-size:11px;color:var(--ember-bright);font-family:'JetBrains Mono',monospace;margin-left:6px;}
.legado-item.es-mio{border-color:rgba(201,121,58,0.35);}
.legado-criterios{margin-top:6px;font-size:12px;color:var(--bone-dim);}
.legado-criterios summary{cursor:pointer;color:var(--ember);}
.legado-criterios ul{margin:6px 0 0 18px;columns:2;column-gap:20px;}
.legado-criterios li{margin-bottom:2px;break-inside:avoid;}
@media (max-width:600px){.legado-criterios ul{columns:1;}}
button.legado-toggle{cursor:pointer;font:inherit;background:transparent;}
.legado-toggle:hover{border-color:var(--ember);}
.legado-toggle .ic-ok{display:none;}
.legado-toggle.done .ic-ok{display:inline;}
.legado-toggle.done .ic-no{display:none;}
.legado-plan-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;position:sticky;top:8px;z-index:5;background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:10px 14px;margin-bottom:16px;font-size:13px;color:var(--bone-dim);}
.legado-plan-bar b{color:var(--ember-bright);font-size:15px;}
.legado-plan-msg{flex:1;color:var(--ember-bright);font-size:12.5px;}
@media (max-width:880px){.legado-plan-bar{top:70px;}}
.pag-btn.legado-guardar{background:rgba(201,121,58,0.15);border-color:var(--ember);color:var(--bone);cursor:pointer;}
button.pag-btn{cursor:pointer;font:inherit;}
.legado-arboles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
@media (max-width:1100px){.legado-arboles{grid-template-columns:1fr;}}
.legado-perk{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:10px 12px;margin-bottom:10px;transition:.15s;}
.legado-perk.activa{border-color:var(--ember);background:rgba(201,121,58,0.07);}
.legado-perk.bloqueada{opacity:.55;}
.lp-head{display:flex;align-items:center;gap:10px;}
.lp-icon{width:34px;height:34px;border-radius:4px;border:1px solid var(--line);flex-shrink:0;}
.legado-perk.bloqueada .lp-icon{filter:grayscale(1);}
.lp-titulo{flex:1;min-width:0;}
.lp-nombre{font-weight:600;color:var(--bone);font-size:13.5px;}
.lp-req{font-size:11px;color:var(--bone-dim);margin-top:2px;}
.lp-ctrl{display:flex;align-items:center;gap:6px;flex-shrink:0;}
.lp-btn{width:26px;height:26px;border:1px solid var(--line);border-radius:3px;background:var(--panel-2);color:var(--bone);cursor:pointer;font-size:15px;line-height:1;}
.lp-btn:hover:not(:disabled){border-color:var(--ember);}
.lp-btn:disabled{opacity:.3;cursor:default;}
.lp-rango{font-size:12px;color:var(--bone-dim);min-width:30px;text-align:center;}
.lp-rango b{color:var(--ember-bright);}
.lp-desc{font-size:12.5px;line-height:1.55;color:var(--bone);margin-top:8px;}
.lp-otros{font-size:11px;color:var(--bone-dim);margin-top:6px;}
.lp-otros .tiene{color:var(--moss-bright);}
.legado-recompensas{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;}
.legado-rec{display:flex;align-items:center;gap:12px;background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:12px 14px;}
.lr-icon{width:44px;height:44px;border-radius:4px;border:2px solid var(--line);}
.lr-icon.q4{border-color:#a335ee;}.lr-icon.q3{border-color:#0070dd;}
.lr-nombre{font-weight:600;font-size:14px;text-decoration:none;color:var(--bone);}
.lr-nombre.q4{color:#c070ff;}.lr-nombre.q3{color:#3d9bff;}
.lr-sub{font-size:12px;color:var(--bone-dim);margin-top:3px;}
.wh-link{font-weight:600;}

/* ---------- CALCULADORA DE LEGADO ---------- */
.lc-top{display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:end;background:var(--panel);border:1px solid rgba(201,121,58,0.45);border-radius:4px;padding:16px 18px;margin-bottom:6px;}
@media (max-width:1000px){.lc-top{grid-template-columns:1fr;}}
.lc-label{font-size:10.5px;text-transform:uppercase;letter-spacing:0.09em;color:var(--bone-dim);margin-bottom:6px;display:block;}
.lc-total-num{font-family:'Big Shoulders Display',sans-serif;font-size:30px;font-weight:800;color:var(--bone);line-height:1;}
.lc-total-num b{color:var(--ember-bright);}
.lc-sub{font-size:11.5px;color:var(--bone-dim);margin-top:4px;}
.lc-nombre input{width:100%;background:var(--void,#110e0b);border:1px solid var(--line);border-radius:3px;color:var(--bone);padding:9px 11px;font:inherit;font-size:13.5px;}
.lc-nombre input:focus{outline:none;border-color:var(--ember);}
.lc-acciones{display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.lc-acciones select{background:var(--panel-2);border:1px solid var(--line);color:var(--bone);border-radius:3px;padding:8px 10px;font:inherit;font-size:13px;}
.lc-btn{background:var(--panel-2);border:1px solid var(--line);color:var(--bone);border-radius:3px;padding:8px 14px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;}
.lc-btn:hover{border-color:var(--ember);}
.lc-btn-primario{background:linear-gradient(180deg,#d9a35a,#b9783a);border-color:#d9a35a;color:#1b130c;}
.lc-btn-primario:hover{filter:brightness(1.08);}
.lc-estado{min-height:20px;font-size:12.5px;color:var(--bone-dim);margin:4px 2px 10px;}
.lc-estado.ok{color:var(--moss-bright);} .lc-estado.aviso{color:var(--ember-bright);} .lc-estado.error{color:#e06a5a;}
.lc-solo-lectura .lc-btn[data-lc-reset],.lc-solo-lectura .lc-btn[data-lc-guardar],.lc-solo-lectura .lc-reset-arbol{opacity:.35;pointer-events:none;}
.lc-arboles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
@media (max-width:1100px){.lc-arboles{grid-template-columns:1fr;max-width:460px;margin:0 auto;}}
.lc-arbol{background:var(--panel);border:1px solid var(--line);border-radius:4px;overflow:hidden;display:flex;flex-direction:column;}
.lc-arbol-head{display:flex;align-items:center;gap:10px;padding:12px 14px 6px;}
.lc-arbol-icono{width:34px;height:34px;border-radius:50%;border:1px solid rgba(201,121,58,0.5);}
.lc-arbol-tit{flex:1;min-width:0;}
.lc-arbol-nombre{font-family:'Big Shoulders Display',sans-serif;font-size:20px;font-weight:800;color:var(--bone);text-transform:uppercase;letter-spacing:0.01em;}
.lc-arbol-desc{font-size:11.5px;color:var(--bone-dim);}
.lc-arbol-pts{font-size:12px;color:var(--bone-dim);white-space:nowrap;}
.lc-arbol-pts b{color:var(--ember-bright);font-size:16px;}
.lc-umbrales{display:flex;gap:6px;padding:0 14px 10px;}
.lc-umbrales span{font-size:10px;font-family:'JetBrains Mono',monospace;border:1px solid var(--line);border-radius:2px;padding:1px 6px;color:var(--bone-dim);}
.lc-umbrales span.on{color:#8fe08f;border-color:rgba(120,200,120,0.6);background:rgba(90,160,90,0.12);}
.lc-grid{position:relative;display:grid;grid-template-columns:repeat(4,58px);grid-template-rows:repeat(var(--filas,4),58px);gap:26px 30px;justify-content:center;padding:22px 12px 26px;
  background:radial-gradient(ellipse at 50% 30%,rgba(201,121,58,0.08),transparent 70%),linear-gradient(180deg,#1d1610,#140f0b);border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex:1;}
@media (max-width:420px){.lc-grid{grid-template-columns:repeat(4,50px);grid-template-rows:repeat(var(--filas,4),50px);gap:20px 18px;}}
.lc-lineas{position:absolute;inset:0;pointer-events:none;overflow:visible;}
.lc-linea{stroke:#5a4a3a;stroke-width:3;}
.lc-linea.on{stroke:#d9a35a;}
.lc-linea.oculta{stroke:#3a322a;}
.lc-flecha-punta{fill:#7a6650;}
.lc-nodo{position:relative;z-index:1;width:100%;height:100%;padding:0;border:2px solid #6b5a46;border-radius:6px;background:#0d0a07;cursor:pointer;
  box-shadow:0 2px 6px rgba(0,0,0,0.6),inset 0 0 0 1px rgba(0,0,0,0.6);transition:border-color .12s,box-shadow .12s,filter .12s;}
.lc-nodo img{width:100%;height:100%;border-radius:4px;display:block;user-select:none;}
.lc-nodo:focus-visible{outline:2px solid var(--ember-bright);outline-offset:2px;}
.lc-nodo.bloqueada img{filter:grayscale(1) brightness(0.55);}
.lc-nodo.bloqueada{border-color:#3d3328;cursor:default;}
.lc-nodo.disponible{border-color:#e9d9b8;}
.lc-nodo.disponible:hover{box-shadow:0 0 10px rgba(233,217,184,0.45);}
.lc-nodo.activa{border-color:#7fd27f;box-shadow:0 0 8px rgba(127,210,127,0.45);}
.lc-nodo.maxima{border-color:#f0a13a;box-shadow:0 0 12px rgba(240,161,58,0.6);}
.lc-rango{position:absolute;right:-8px;bottom:-9px;min-width:30px;padding:1px 5px;border-radius:9px;background:#0d0a07;border:1px solid #6b5a46;
  font-family:'JetBrains Mono',monospace;font-size:10.5px;font-weight:700;color:#e9d9b8;text-align:center;line-height:1.4;}
.lc-nodo.bloqueada .lc-rango{color:#7a6c5c;border-color:#3d3328;}
.lc-nodo.activa .lc-rango{color:#8fe08f;border-color:#5aa05a;}
.lc-nodo.maxima .lc-rango{color:#f0a13a;border-color:#f0a13a;}
.lc-nodo.oculta{border-color:#2e2720;background:linear-gradient(180deg,#14100c,#0a0806);cursor:help;}
.lc-q{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-family:'Big Shoulders Display',sans-serif;font-size:30px;font-weight:800;color:#4a3f33;}
.lc-solo-lectura .lc-nodo{cursor:default;}
.lc-reset-arbol{background:transparent;border:none;border-top:1px solid var(--line);color:var(--bone-dim);font:inherit;font-size:12.5px;padding:10px;cursor:pointer;}
.lc-reset-arbol:hover{color:var(--ember-bright);background:rgba(255,255,255,0.02);}
.lc-tooltip{position:fixed;z-index:200;max-width:300px;background:linear-gradient(180deg,#0f0c09,#080605);border:1px solid #c9793a;border-radius:4px;padding:10px 12px;
  box-shadow:0 6px 18px rgba(0,0,0,0.7);pointer-events:none;font-size:12.5px;line-height:1.5;color:#e9e2d0;}
.lt-nombre{font-family:'Big Shoulders Display',sans-serif;font-size:17px;font-weight:800;color:#f0c27a;}
.lt-rango{font-size:11px;color:var(--bone-dim);margin-bottom:6px;}
.lt-desc{color:#f2ecdc;}
.lt-req{list-style:none;margin:8px 0 0;padding:0;font-size:11.5px;}
.lt-req .ok{color:#8fe08f;} .lt-req .no{color:#e06a5a;}
.lt-ayuda{margin-top:8px;font-size:10.5px;color:var(--bone-dim);border-top:1px solid #2e2720;padding-top:6px;}

/* ---------- RACIALES (WoW: Forever) ---------- */
.rc-filtro{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 20px;}
.rc-pill{display:inline-flex;align-items:center;gap:6px;background:var(--panel);border:1px solid var(--line);border-radius:999px;color:var(--bone-dim);font:inherit;font-size:12.5px;padding:4px 11px 4px 5px;cursor:pointer;}
.rc-pill:first-child{padding-left:11px;}
.rc-pill img{width:20px;height:20px;border-radius:50%;}
.rc-pill:hover{color:var(--bone);border-color:var(--bone-dim);}
.rc-pill.active{color:var(--bone);border-color:var(--ember);background:rgba(201,121,58,0.14);}
.rc-faccion{margin-bottom:28px;}
.rc-faccion-head{position:relative;height:110px;border-radius:4px;background-size:cover;background-position:center 30%;display:flex;align-items:flex-end;padding:12px 16px;margin-bottom:14px;overflow:hidden;border:1px solid var(--line);}
.rc-faccion-head::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,12,9,0.88),rgba(15,12,9,0.15));}
.rc-faccion-head h2{position:relative;margin:0;font-size:24px;color:var(--bone);letter-spacing:0.04em;}
.rc-alianza .rc-faccion-head{box-shadow:inset 4px 0 0 #3f6fb5;}
.rc-horda .rc-faccion-head{box-shadow:inset 4px 0 0 #b53f3f;}
.rc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;}
.rc-card{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:14px;display:flex;flex-direction:column;gap:12px;}
.rc-card[hidden]{display:none;}
.rc-card-head{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none;}
.rc-raza-icono{width:48px;height:48px;border-radius:4px;border:1px solid var(--line);}
.rc-raza-nombre{display:block;font-size:17px;font-weight:600;color:var(--bone);}
.rc-card-head:hover .rc-raza-nombre{color:var(--ember-bright);}
.rc-raza-sub{display:block;font-size:12px;color:var(--bone-dim);}
.rc-clases{display:flex;flex-wrap:wrap;gap:5px;}
.rc-clase{position:relative;display:inline-block;width:28px;height:28px;border-radius:4px;border:1px solid var(--line);}
.rc-clase img{width:100%;height:100%;border-radius:3px;display:block;}
.rc-clase.es-nueva{border-color:var(--ember-bright);}
.rc-clase.es-nueva::after{content:"";position:absolute;top:-3px;right:-3px;width:8px;height:8px;border-radius:50%;background:var(--ember-bright);border:1px solid var(--void);}
.rc-clase.resaltada{outline:2px solid var(--moss-bright);outline-offset:1px;}
.rc-muestra{width:14px;height:14px;vertical-align:-2px;margin-right:4px;}
.rc-rasgos{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.rc-rasgos li{display:flex;gap:10px;align-items:flex-start;}
.rc-rasgo-icono{width:36px;height:36px;border-radius:4px;border:1px solid var(--line);flex:none;}
.rc-rasgo-nombre{font-weight:600;font-size:14px;}
.rc-rasgos p{margin:2px 0 0;font-size:12.5px;line-height:1.5;color:var(--bone-dim);}
.rc-tipo{font-size:10.5px;text-transform:uppercase;letter-spacing:0.06em;margin-left:6px;color:var(--bone-dim);}
.rc-tipo-activa{color:var(--ember);}
.rc-rasgo-nombre .iconsmall,.rc-rasgo-nombre .icontinyl,.rc-raciales-entrada .rc-rasgo-nombre .iconsmall{display:none !important;}
.rc-sacerdote{border-top:1px solid var(--line);padding-top:10px;display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;font-size:13px;}
.rc-sac-tit{width:100%;font-size:11px;text-transform:uppercase;letter-spacing:0.06em;color:var(--bone-dim);}
.rc-sac{display:inline-flex;align-items:center;gap:6px;}
.rc-sac img{width:18px;height:18px;border-radius:3px;}
.rc-sac .iconsmall{display:none !important;}
@media (max-width:600px){.rc-grid{grid-template-columns:1fr;}.rc-faccion-head{height:84px;}}
.rc-chip-nueva{margin-left:6px;color:var(--ember-bright);}
.rc-raciales-entrada .rg-title{margin:14px 0 8px;}.rc-raciales-entrada .rg-title:first-of-type{margin-top:4px;}
.rc-tooltip{max-width:260px;}
.rc-tt-cab{display:flex;align-items:center;gap:10px;}
.rc-tt-cab img{width:36px;height:36px;border-radius:4px;border:1px solid #5a4630;}
.rc-tt-cab .lt-rango{margin-bottom:0;}
.rc-tt-nueva{margin-top:8px;font-size:12px;color:var(--ember-bright);}
.rc-tt-nueva::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--ember-bright);margin-right:6px;vertical-align:1px;}

/* Títulos de bloque en las fichas: más grandes para separar secciones. */
.detail-block h3{font-family:'Big Shoulders Display',sans-serif;font-size:20px;font-weight:800;text-transform:uppercase;letter-spacing:0.04em;color:var(--ember-bright);
  margin-bottom:14px;padding-bottom:8px;border-bottom:1px solid var(--line);}
.detail-block{margin-bottom:30px;}
.rc-raciales-entrada .rg-title{font-size:13px;font-weight:600;color:var(--bone);}
.rc-raciales-entrada .rc-sacerdote{margin-top:14px;}

/* ---------- CALCULADORA DE TALENTOS (WoW: Forever) ---------- */
.tc-clases{margin-bottom:16px;}
.tc-clases .rc-pill{text-decoration:none;}
.tc-fondo{position:relative;flex:1;background-size:cover;background-position:center top;}
.tc-fondo::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,10,7,0.55),rgba(13,10,7,0.78));}
.tc-grid{grid-template-columns:repeat(4,50px);grid-template-rows:repeat(7,50px);gap:18px 22px;}
@media (max-width:420px){.tc-grid{grid-template-columns:repeat(4,46px);grid-template-rows:repeat(7,46px);gap:16px 16px;}}
.lc-nodo.agotada img{filter:grayscale(0.6) brightness(0.7);}
.tc-tooltip{max-width:330px;}
.tc-req{margin:0 0 6px;}
.tc-siguiente{margin-top:8px;font-size:11px;color:var(--bone-dim);}
.lt-desc b{color:#fff;}
.lt-rojo{color:#e06a5a;}
.tc-grid{background:transparent;border:none;z-index:1;}
.tc-enlace{display:inline-flex;align-items:center;gap:10px;}

/* Tablas dentro de guías y noticias */
.guide-body table{width:100%;border-collapse:collapse;margin:6px 0 22px;font-size:13.5px;display:block;overflow-x:auto;}
.guide-body thead th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:0.07em;color:var(--bone-dim);font-weight:600;padding:8px 10px;border-bottom:1px solid rgba(201,121,58,0.45);white-space:nowrap;}
.guide-body tbody td{padding:8px 10px;border-bottom:1px solid var(--line);color:var(--bone);vertical-align:top;line-height:1.5;}
.guide-body tbody tr:nth-child(even) td{background:rgba(255,255,255,0.02);}
.guide-body tbody tr:hover td{background:rgba(201,121,58,0.06);}
.guide-body td{white-space:normal;}
.guide-body .tabla-campamento td:nth-child(3){min-width:190px;}
.guide-body .tabla-campamento td:nth-child(4){min-width:120px;}
.guide-body td:last-child{white-space:normal;}
.guide-body em{color:var(--bone-dim);}
.guide-body .fuente{font-size:13px;color:var(--bone-dim);border-top:1px solid var(--line);padding-top:12px;margin-top:28px;}
.guide-shell{grid-template-columns:minmax(0,1fr) 280px;}
.guide-shell.guide-shell-solo{grid-template-columns:minmax(0,1fr);}
@media (max-width:880px){.guide-shell{grid-template-columns:minmax(0,1fr);}}
.guide-shell > *{min-width:0;}
.guide-body table{display:table;}
.guide-body .tabla-scroll{width:100%;overflow-x:auto;margin:6px 0 22px;}
.guide-body .tabla-scroll table{display:table;width:100%;min-width:560px;margin:0;}
.guide-body table{table-layout:auto;}

/* Mapas en las fichas (zonas) */
.entry-mapa{margin:0 0 14px;}
.entry-mapa img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:4px;transition:border-color .15s;}
.entry-mapa a:hover img{border-color:var(--ember);}
.entry-mapa figcaption{font-size:12px;color:var(--bone-dim);margin-top:6px;}
.visor-modal{z-index:300;}
.entry-mapa a{cursor:zoom-in;}
.guide-body img{cursor:zoom-in;}
.guide-body .r-icon-mini,.guide-body a img{cursor:pointer;}

/* Guías a todo el ancho; las fichas relacionadas van bajo el título */
.guide-shell.guide-shell-ancha{max-width:none;}
.guide-fichas{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin:4px 0 22px;}
.guide-fichas-tit{font-size:11px;text-transform:uppercase;letter-spacing:0.07em;color:var(--bone-dim);margin-right:4px;}
/* Chips de fichas dentro del texto: compactos, sin el estilo de las imágenes grandes */
.guide-body .entry-chip{padding:1px 9px 1px 3px;line-height:1.5;vertical-align:baseline;}
.guide-body .entry-chip img.r-icon-mini{display:inline-block;width:18px;height:18px;margin:0;border:0;border-radius:50%;box-shadow:none;max-width:none;}

/* ---------- SUMINISTROS (WoW: Forever) ---------- */
.su-pasos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:6px 0 24px;}
@media (max-width:900px){.su-pasos{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:480px){.su-pasos{grid-template-columns:1fr;}}
.su-paso{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:14px;position:relative;}
.su-paso b{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;border:1px solid var(--ember);color:var(--ember-bright);font-size:13px;margin-bottom:8px;}
.su-paso h4{margin:0 0 4px;font-size:14px;color:var(--bone);}
.su-paso p{margin:0;font-size:12.5px;line-height:1.5;color:var(--bone-dim);}
.su-tit{font-family:'Big Shoulders Display',sans-serif;font-size:21px;font-weight:800;text-transform:uppercase;color:var(--bone);margin:30px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--line);}
.su-campos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
@media (max-width:700px){.su-campos{grid-template-columns:1fr;}}
.su-campo{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:14px 16px;}
.su-alianza{box-shadow:inset 4px 0 0 #3f6fb5;} .su-horda{box-shadow:inset 4px 0 0 #b53f3f;}
.su-fac{font-size:11px;text-transform:uppercase;letter-spacing:0.08em;color:var(--bone-dim);}
.su-campo-nombre{font-size:17px;font-weight:600;color:var(--bone);margin:2px 0 4px;}
.su-campo-donde{font-size:13px;color:var(--bone-dim);}
.su-tabla{font-size:14px;}
.su-tabla p{font-size:14px;margin-bottom:12px;}
.su-profs{margin-bottom:12px;}
.su-n{font-size:11px;color:var(--bone-dim);margin-left:2px;}
.su-tabla[hidden]{display:none;}

/* ---------- MAPA DE MAZMORRAS Y BANDAS ---------- */
.mz-barra{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;}
.mz-filtro{margin:0;}
.mz-check{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--bone-dim);cursor:pointer;}
.mz-check input{accent-color:#7fd27f;}
.mz-lienzo{border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#0e161c;}
.mz-svg{display:block;width:100%;height:auto;}
.mz-cont{font-family:'Big Shoulders Display',sans-serif;font-size:15px;font-weight:800;letter-spacing:0.3em;fill:rgba(233,217,184,0.28);text-anchor:middle;}
.mz-zona rect{fill:#2a2218;stroke:#55462f;stroke-width:1;}
.mz-cont-k rect{fill:#2d2417;}
.mz-cont-e rect{fill:#26221a;}
.mz-zona text{fill:rgba(233,217,184,0.62);text-anchor:middle;font-family:inherit;font-weight:600;pointer-events:none;}
.mz-zona.mz-nueva rect{fill:#1f2c20;stroke:#6c9472;stroke-dasharray:4 3;}
.mz-zona.mz-nueva text{fill:#a9d3ac;}
.mz-zona-link:hover rect{stroke:var(--ember-bright);}
.mz-pin{cursor:pointer;}
.mz-pin .mz-halo{fill:transparent;}
.mz-pin .mz-marca{stroke:#0d0a07;stroke-width:1.6;transition:transform .12s;}
.mz-mazmorra .mz-marca{fill:#e69b52;}
.mz-banda .mz-marca{fill:#b07ae6;}
.mz-pin-nueva .mz-marca{stroke:#7fd27f;stroke-width:2.2;}
.mz-pin:hover .mz-marca,.mz-pin.activo .mz-marca,.mz-pin:focus-visible .mz-marca{transform:scale(1.35);}
.mz-mazmorra:hover .mz-halo,.mz-mazmorra.activo .mz-halo{fill:rgba(230,155,82,0.25);}
.mz-banda:hover .mz-halo,.mz-banda.activo .mz-halo{fill:rgba(176,122,230,0.28);}
.mz-pin.oculto{display:none;}
.mz-pin:focus{outline:none;}
.mz-leyenda{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:12px;color:var(--bone-dim);margin-top:10px;}
.mz-leyenda > span{display:inline-flex;align-items:center;gap:6px;}
.mz-ley{display:inline-block;width:11px;height:11px;border-radius:50%;background:#e69b52;border:1.5px solid #0d0a07;}
.mz-ley-banda{background:#b07ae6;border-radius:2px;transform:rotate(45deg);width:10px;height:10px;}
.mz-ley-nueva{border:2px solid #7fd27f;}
.mz-ley-zona{display:inline-block;width:18px;height:11px;border-radius:3px;background:#1f2c20;border:1px dashed #6c9472;}
.mz-tooltip{max-width:280px;}
.mz-tt-zona{font-size:12px;color:#e9e2d0;margin-bottom:4px;}
.mz-tt-tag{display:inline-block;font-size:10px;text-transform:uppercase;letter-spacing:0.06em;border:1px solid #6b5a46;border-radius:9px;padding:0 6px;margin-left:4px;color:var(--bone-dim);}
.mz-tt-tag.nueva{border-color:#5aa05a;color:#8fe08f;}
.mz-tt-det{font-size:11.5px;color:var(--bone-dim);margin-bottom:4px;}
.mz-tt-desc{margin-top:4px;}
@media (max-width:700px){.mz-lienzo{overflow-x:auto;-webkit-overflow-scrolling:touch;}.mz-svg{width:780px;max-width:none;}}
.mz-ver-mapa{display:inline-flex;align-items:center;gap:8px;margin:0 0 16px;padding:7px 13px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--bone);font-size:13px;text-decoration:none;}
.mz-ver-mapa:hover{border-color:var(--ember);color:var(--ember-bright);}
.mz-ver-mapa svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;}
/* Mazmorras en rojo para que destaquen sobre el pergamino del mapa */
.mz-mazmorra .mz-marca{fill:#e0362f;}
.mz-mazmorra:hover .mz-halo,.mz-mazmorra.activo .mz-halo{fill:rgba(224,54,47,0.3);}
.mz-ley{background:#e0362f;}
.mz-ley-banda{background:#b07ae6;}

/* Filtros de zonas */
.zf-barra{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:0 0 10px;}
.zf-tipos{margin:0;}
.zf-nivel{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--bone);background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:3px 6px 3px 13px;}
.zf-nivel input{width:58px;background:var(--void,#110e0b);border:1px solid var(--line);border-radius:999px;color:var(--bone);font:inherit;font-size:13px;padding:4px 8px;text-align:center;}
.zf-nivel input:focus{outline:none;border-color:var(--ember);}
.zf-limpiar{background:transparent;border:none;color:var(--bone-dim);font-size:16px;line-height:1;cursor:pointer;padding:0 4px;}
.zf-limpiar:hover{color:var(--ember-bright);}
.zf-cuenta{font-size:12.5px;color:var(--bone-dim);margin-left:auto;}
.zf-ayuda{font-size:12.5px;color:var(--bone-dim);margin:-2px 0 14px;}
.entry-card[hidden]{display:none;}
.entry-icon-mapa{object-fit:cover;}
/* Sin flechas en el campo «Tu nivel» */
.zf-nivel input{-moz-appearance:textfield;appearance:textfield;}
.zf-nivel input::-webkit-outer-spin-button,.zf-nivel input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}

/* ---------- MAPA DEL MUNDO (Leaflet) ---------- */
.mm{--mm-z:1;}
.mm-barra{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-bottom:10px;min-height:36px;}
.mm-mundo-ctrl,.mm-zona-ctrl{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;width:100%;}
.mm-mundo-ctrl[hidden],.mm-zona-ctrl[hidden]{display:none;}
.mm-check{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--bone-dim);cursor:pointer;}
.mm-check input{accent-color:var(--ember);}
.mm-ir{margin-left:auto;background:var(--panel);border:1px solid var(--line);color:var(--bone);border-radius:999px;padding:6px 12px;font:inherit;font-size:13px;max-width:100%;}
.mm-zona-tit{font-family:'Big Shoulders Display',sans-serif;font-size:20px;font-weight:800;text-transform:uppercase;color:var(--bone);}
.mm-cuerpo{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;}
.mm.en-zona .mm-cuerpo{grid-template-columns:minmax(0,1fr) 300px;}
@media (max-width:1000px){.mm.en-zona .mm-cuerpo{grid-template-columns:minmax(0,1fr);}}
.mm-lienzo{height:min(68vh,720px);min-height:380px;border:1px solid var(--line);border-radius:6px;background:#1b1a14;overflow:hidden;}
.mm-lienzo.leaflet-container{background:#232017;font-family:inherit;}
.mm .leaflet-control-zoom a{background:var(--panel);color:var(--bone);border-color:var(--line);}
.mm .leaflet-control-zoom a:hover{background:var(--panel-2);color:var(--ember-bright);}
.mm .leaflet-bar{border:1px solid var(--line);box-shadow:none;}
.mm-zona,.mm-ciudad{background:none;border:none;}
.mm-et{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;white-space:nowrap;cursor:pointer;
  text-shadow:0 0 3px #000,0 0 6px #000,0 1px 2px #000;line-height:1.1;}
.mm-et b{font-size:calc(9.5px * var(--mm-z));font-weight:700;color:#f4e9cf;letter-spacing:0.02em;}
.mm-et i{font-style:normal;font-size:calc(8px * var(--mm-z));color:#e9c27a;}
.mm-et.nueva b{color:#a8f0ac;}
.mm-et:hover b{color:var(--ember-bright);}
.mm-c{position:absolute;transform:translate(-6px,-50%);display:inline-flex;align-items:center;gap:4px;white-space:nowrap;cursor:pointer;
  font-size:calc(9px * var(--mm-z));font-weight:700;color:#ffe2a8;text-shadow:0 0 3px #000,0 0 6px #000;}
.mm-c i{display:inline-block;width:calc(7px * var(--mm-z));height:calc(7px * var(--mm-z));background:#e0362f;border:1.5px solid #1a0f08;transform:rotate(45deg);}
.mm-c:hover{color:var(--ember-bright);}
.mm-panel{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:16px;align-self:start;}
.mm-panel[hidden]{display:none;}
.mm-p-nombre{font-family:'Big Shoulders Display',sans-serif;font-size:22px;font-weight:800;text-transform:uppercase;color:var(--bone);margin-bottom:10px;}
.mm-p-datos{display:flex;gap:16px;margin-bottom:10px;}
.mm-p-datos small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:0.08em;color:var(--bone-dim);}
.mm-p-datos b{font-size:15px;color:var(--bone);}
.mm-p-desc{font-size:13.5px;line-height:1.6;color:var(--bone);margin:12px 0;}
.mm-p-sub{font-size:11px;text-transform:uppercase;letter-spacing:0.08em;color:var(--bone-dim);margin:14px 0 6px;border-top:1px solid var(--line);padding-top:12px;}
.mm-p-lista{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px;}
.mm-inst{display:inline-flex;align-items:center;gap:7px;color:var(--bone);text-decoration:none;font-size:13.5px;font-weight:600;}
.mm-inst:hover{color:var(--ember-bright);}
.mm-inst-m{width:9px;height:9px;border-radius:50%;background:#e0362f;border:1.5px solid #0d0a07;flex:none;}
.mm-inst.banda .mm-inst-m{background:#b07ae6;border-radius:2px;transform:rotate(45deg);}
.mm-inst.nueva .mm-inst-m{border-color:#7fd27f;}
.mm-inst-n{display:block;font-size:11.5px;color:var(--bone-dim);margin-left:16px;}
.mm-p-pie{font-size:11.5px;color:var(--bone-dim);margin:12px 0 0;}
.mm-p-ficha{display:block;text-align:center;margin-top:14px;text-decoration:none;}
.mm-tooltip{max-width:260px;}
.mm-et i{display:none;}
.mm.mm-cerca .mm-et i{display:block;}
.mm-et b{font-size:calc(9px * var(--mm-z));}
@media (max-width:700px){.mm-lienzo{height:min(60vh,460px);min-height:320px;}}
.mm-fac{margin-left:0;}
.mm-mundo-ctrl .mm-ir:not(.mm-fac){margin-left:auto;}
.mm-puerto,.mm-vuelo{background:none;border:none;}
.mm-pt{position:absolute;transform:translate(-50%,-50%);width:calc(9px * var(--mm-z));height:calc(9px * var(--mm-z));border-radius:50%;background:#fff;border:2px solid #2f7fe0;box-shadow:0 0 0 1px #000;cursor:pointer;}
.mm-pt-zepelin{border-color:#e8862a;border-radius:2px;}
.mm-pt-tranvia{border-color:#888;background:#d8d2c4;}
.mm-v{position:absolute;transform:translate(-50%,-50%) rotate(45deg);width:calc(7px * var(--mm-z));height:calc(7px * var(--mm-z));background:var(--c);border:1.5px solid #0d0a07;cursor:pointer;}
.mm-v-gr{width:12px;height:12px;}
.mm-v-nombre{position:absolute;transform:translate(10px,-50%);white-space:nowrap;font-size:11px;font-weight:700;color:#fff;text-shadow:0 0 3px #000,0 0 5px #000;}
.mm-leyenda{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:12px;color:var(--bone-dim);margin-top:10px;}
.mm-leyenda span{display:inline-flex;align-items:center;gap:7px;}
.mm-leyenda .mm-v{position:static;transform:rotate(45deg);width:8px;height:8px;}
.mm-ley-l{display:inline-block;width:22px;height:0;border-top:3px solid var(--c);}
.mm-ley-d{border-top-style:dashed;}
.mm-ley-p{border-top-style:dotted;}
.mm-ley-n{border-top-width:3px;box-shadow:0 0 6px 2px rgba(127,224,138,0.5);}
/* Mapa del mundo: tooltip por encima de las capas de Leaflet y barra de filtros en una línea */
.mm-tooltip,.mz-tooltip{z-index:2000;}
.mm-mundo-ctrl{flex-wrap:wrap;gap:8px 14px;}
.mm-mundo-ctrl .mm-ir{margin-left:0;font-size:12.5px;padding:5px 10px;}
.mm-mundo-ctrl .mm-ir:not(.mm-fac){margin-left:auto;max-width:175px;}
.mm-check{font-size:12.5px;gap:6px;}
/* Imagen vertical de diseño en fichas de razas y clases */
.entry-retrato{margin:0;max-width:420px;}
.entry-retrato img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:6px;background:var(--panel);}
.entry-retrato a{cursor:zoom-in;}
.entry-retrato a:hover img{border-color:var(--ember);}
@media (max-width:820px){.entry-retrato{max-width:none;}}
.mz-nivel input{-moz-appearance:textfield;appearance:textfield;}
.mz-nivel input::-webkit-outer-spin-button,.mz-nivel input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.mz-barra .zf-cuenta{margin-left:0;}
/* Jefes de mazmorra */
.jefes-lista{margin:0;padding:0 0 0 22px;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px 18px;}
.jefes-lista li{font-size:14px;color:var(--bone-dim);padding-left:2px;}
.jefes-lista li::marker{color:var(--ember);font-weight:700;font-size:12px;}
.jefes-lista a{color:var(--bone);font-weight:600;text-decoration:none;}
.jefes-lista a:hover{color:var(--ember-bright);}
.jefes-vacio{font-size:13.5px;color:var(--bone-dim);}
.jefes-lista{display:block;columns:2 200px;column-gap:24px;}
.jefes-lista li{break-inside:avoid;margin-bottom:6px;}
/* Botín de jefes */
.botin-tabla{width:100%;border-collapse:collapse;font-size:13.5px;}
.botin-tabla th{text-align:left;font-size:10.5px;text-transform:uppercase;letter-spacing:0.07em;color:var(--bone-dim);font-weight:600;padding:6px 8px;border-bottom:1px solid rgba(201,121,58,0.45);}
.botin-tabla td{padding:7px 8px;border-bottom:1px solid var(--line);color:var(--bone);vertical-align:middle;}
.botin-tabla td:nth-child(2),.botin-tabla td:nth-child(3){white-space:nowrap;color:var(--bone-dim);width:1%;}
.botin-tabla a{text-decoration:none;font-weight:600;}
.botin-tabla a.q0{color:#9d9d9d;} .botin-tabla a.q1{color:#f2ecdc;} .botin-tabla a.q2{color:#1eff00;}
.botin-tabla a.q3{color:#0070dd;} .botin-tabla a.q4{color:#a335ee;} .botin-tabla a.q5{color:#ff8000;}
.botin-tabla a:hover{text-decoration:underline;}
.botin-mision{font-size:10px;text-transform:uppercase;letter-spacing:0.06em;border:1px solid #6b5a46;border-radius:9px;padding:0 6px;margin-left:6px;color:#e8c25a;}
.botin-nota{font-size:12px;color:var(--bone-dim);margin-top:10px;}
.foto-pendiente{display:flex;align-items:center;justify-content:center;max-width:420px;aspect-ratio:2/3;border:1px dashed var(--line);border-radius:6px;background:repeating-linear-gradient(135deg,rgba(255,255,255,0.015) 0 12px,transparent 12px 24px),var(--panel);}
.foto-pendiente span{font-size:13px;color:var(--bone-dim);}
@media (max-width:820px){.foto-pendiente{max-width:none;aspect-ratio:3/2;}}

/* Cuenta atrás de lanzamiento en el banner del juego */
.game-banner-mini-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"miga ca" "tit ca";align-items:end;column-gap:20px;}
.game-banner-mini-inner > .g-breadcrumb{grid-area:miga;}
.game-banner-mini-inner > h1{grid-area:tit;min-width:0;}
.cuenta-atras{grid-area:ca;justify-self:end;display:flex;flex-direction:column;align-items:flex-end;gap:5px;}
.ca-tit{font-size:10.5px;text-transform:uppercase;letter-spacing:0.14em;color:var(--ember-bright);font-weight:700;text-shadow:0 1px 4px #000;}
.ca-cajas{display:flex;gap:6px;}
.ca-cajas span{display:flex;flex-direction:column;align-items:center;min-width:52px;padding:6px 6px 5px;background:rgba(15,12,9,0.72);border:1px solid rgba(201,121,58,0.55);border-radius:5px;backdrop-filter:blur(3px);}
.ca-cajas b{font-family:'Big Shoulders Display',sans-serif;font-size:24px;font-weight:800;line-height:1;color:#fff;font-variant-numeric:tabular-nums;}
.ca-cajas i{font-style:normal;font-size:9.5px;text-transform:uppercase;letter-spacing:0.08em;color:var(--bone-dim);margin-top:3px;}
.ca-fecha{font-size:11px;color:var(--bone-dim);text-shadow:0 1px 3px #000;}
.cuenta-atras.ca-ya .ca-cajas{display:none;}
@media (max-width:700px){
  .game-banner-mini-inner{grid-template-columns:1fr;grid-template-areas:"miga" "tit" "ca";}
  .cuenta-atras{justify-self:start;align-items:flex-start;margin-top:8px;}
  .ca-cajas span{min-width:44px;padding:4px 4px 3px;}
  .ca-cajas b{font-size:19px;}
}
/* Zona fuera de Azeroth (Isla de Zephras): recuadro discontinuo = ubicación simbólica */
.mm-et.fuera{border:1.5px dashed rgba(168,240,172,0.75);border-radius:6px;padding:calc(3px * var(--mm-z)) calc(7px * var(--mm-z));background:rgba(10,14,20,0.45);}
.mm-et.fuera::after{content:'Plano elemental del aire';font-size:calc(7px * var(--mm-z));font-style:italic;color:#c9d6c9;opacity:0.85;}
/* Calculadora de talentos: raza y sus raciales */
.tc-raza-elegir{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:-4px 0 18px;}
.tc-raza-elegir label{font-size:11px;text-transform:uppercase;letter-spacing:0.08em;color:var(--bone-dim);}
.tc-raza-elegir select{background:var(--panel);border:1px solid var(--line);color:var(--bone);border-radius:6px;padding:7px 12px;font:inherit;font-size:14px;min-width:220px;cursor:pointer;}
.tc-raza-elegir select:focus{outline:none;border-color:var(--ember);}
.tc-raza-ayuda{font-size:12.5px;color:var(--bone-dim);}
.tc-raciales{--tc-fac:201,121,58;margin-top:18px;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--panel);}
.tc-raciales-alianza{--tc-fac:63,120,214;}
.tc-raciales-horda{--tc-fac:196,52,44;}
.tc-raciales-head{position:relative;display:flex;align-items:center;gap:14px;padding:18px 20px 16px;
  background:linear-gradient(180deg, rgba(var(--tc-fac),0.38) 0%, rgba(var(--tc-fac),0.16) 60%, rgba(var(--tc-fac),0.04) 100%);}
.tc-raciales-head::after{content:'';position:absolute;left:20px;right:20px;bottom:0;height:1px;
  background:linear-gradient(90deg, transparent, rgba(var(--tc-fac),0.9) 20%, var(--ember) 50%, rgba(var(--tc-fac),0.9) 80%, transparent);}
.tc-raciales-head .rc-raza-icono{width:52px;height:52px;box-shadow:0 0 0 2px rgba(var(--tc-fac),0.5);}
.tc-raciales-head .lc-arbol-nombre{font-size:18px;}
.tc-raciales-ficha{font-size:12.5px;}
.tc-rasgos{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px 22px;padding:18px 20px 18px;
  background:linear-gradient(180deg, rgba(var(--tc-fac),0.05), transparent 70%);}
.tc-raciales .rc-sacerdote{margin:0 20px 18px;}
.tc-raciales-vacio{margin-top:18px;text-align:center;}
