/* Juegos de Pajarito · estilos comunes · SPDX-License-Identifier: GPL-2.0-or-later
   Todo está dentro de .pbtc-game. Para ajustar colores, edita solo los tokens (--pg-*) de este bloque. */

.pbtc-game {
  --pg-ink: #17233a;
  --pg-muted: #556176;
  --pg-paper: #ffffff;
  --pg-sky: #f1f5f9;
  --pg-line: #d3dce6;
  --pg-accent: #f2b705;
  --pg-accent-strong: #d99f00;
  --pg-tint: #fff8db;
  --pg-ok: #1b7a4b;
  --pg-ok-bg: #e6f4ec;
  --pg-bad: #b3382f;
  --pg-bad-bg: #fbebe9;
  --pg-mid: #9a6100;
  --pg-mid-bg: #fff3d6;
  --pg-focus: #1857c8;
  --pg-r-lg: 14px;
  --pg-r-md: 10px;
  --pg-r-sm: 6px;

  box-sizing: border-box;
  max-width: 760px;
  margin: 2rem auto;
  padding: 0 1rem;
  color: var(--pg-ink);
  font-family: inherit;
  font-size: 1rem;
  line-height: 1.55;
  text-align: left;
}

.pbtc-game *,
.pbtc-game *::before,
.pbtc-game *::after { box-sizing: inherit; }

.pbtc-game .pbtc-game__stage {
  background: var(--pg-paper);
  border: 1px solid var(--pg-line);
  border-radius: var(--pg-r-lg);
  padding: 1.25rem;
}

@media (min-width: 640px) {
  .pbtc-game .pbtc-game__stage { padding: 2rem; }
}

/* Reinicio de elementos para que el tema no los pise */
.pbtc-game :is(button, summary) {
  -webkit-appearance: none;
  appearance: none;
  margin: 0;
  font: inherit;
  letter-spacing: normal;
  text-transform: none;
  text-shadow: none;
  box-shadow: none;
}

/* Reinicio (especificidad 0,1,1: gana a reglas del tema como .entry-content p). Los componentes van
   prefijados con .pbtc-game (0,2,0), así que fijan sus propios márgenes por encima del reinicio. */
.pbtc-game :is(h2, h3, p, ul, ol, dl) { margin: 0; padding: 0; }

.pbtc-game :is(ul, ol) { list-style: none; }

.pbtc-game :is(a) { color: var(--pg-ink); text-decoration: underline; text-underline-offset: 3px; }
.pbtc-game :is(a):hover { text-decoration-thickness: 2px; }

.pbtc-game :focus-visible {
  outline: 3px solid var(--pg-focus);
  outline-offset: 2px;
}
.pbtc-game [tabindex="-1"]:focus { outline: none; }

.pbtc-game .pbtc-game__sr {
  position: absolute !important;
  width: 1px; height: 1px;
  margin: -1px; padding: 0; border: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

/* ---------- Inicio ---------- */

.pbtc-game .pbtc-game__hero {
  display: block;
  width: 100%;
  aspect-ratio: 1200 / 630;
  object-fit: cover;
  border-radius: var(--pg-r-md);
  background: var(--pg-sky);
  margin-bottom: 1.25rem;
}

.pbtc-game .pbtc-game__title {
  font-size: clamp(1.6rem, 1.2rem + 1.8vw, 2.2rem);
  line-height: 1.15;
  font-weight: 800;
  color: var(--pg-ink);
}

.pbtc-game .pbtc-game__lead {
  margin-top: .6rem;
  max-width: 62ch;
  color: var(--pg-muted);
}

.pbtc-game .pbtc-game__fine {
  margin-top: .75rem;
  font-size: .875rem;
  color: var(--pg-muted);
}

.pbtc-game .pbtc-game__levels {
  display: grid;
  gap: .85rem;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  margin-top: 1.5rem;
}

.pbtc-game .pbtc-game__level {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: 0;
  overflow: hidden;
  text-align: left;
  color: inherit;
  background: var(--pg-paper);
  border: 1.5px solid var(--pg-line);
  border-radius: var(--pg-r-lg);
  cursor: pointer;
}
.pbtc-game .pbtc-game__level:hover { border-color: var(--pg-ink); }

.pbtc-game .pbtc-game__level-img {
  display: block;
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  background: var(--pg-sky);
}

.pbtc-game .pbtc-game__level-body {
  display: flex;
  flex-direction: column;
  gap: .2rem;
  padding: .9rem 1rem 1rem;
}
.pbtc-game .pbtc-game__level-name { font-size: 1.25rem; font-weight: 800; line-height: 1.2; }
.pbtc-game .pbtc-game__level-bird { font-size: .9rem; font-weight: 600; color: var(--pg-muted); }
.pbtc-game .pbtc-game__level-desc { margin-top: .35rem; font-size: .95rem; }
.pbtc-game .pbtc-game__level-best { margin-top: .5rem; font-size: .85rem; font-weight: 600; color: var(--pg-muted); }

/* ---------- Partida ---------- */

.pbtc-game .pbtc-game__bar {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: .25rem 1rem;
  font-size: .95rem;
}
.pbtc-game .pbtc-game__bar-level { font-weight: 700; }
.pbtc-game .pbtc-game__bar-count { color: var(--pg-muted); }
.pbtc-game .pbtc-game__streak { min-width: 5.5rem; text-align: right; font-weight: 700; color: var(--pg-ok); }

.pbtc-game .pbtc-game__progress {
  display: flex;
  gap: 4px;
  margin: .75rem 0 1.25rem;
}
.pbtc-game .pbtc-game__seg {
  position: relative;
  flex: 1 1 0;
  display: grid;
  place-items: center;
  height: 24px;
  font-size: .75rem;
  font-weight: 800;
  line-height: 1;
  color: var(--pg-paper);
  border: 2px solid var(--pg-line);
  border-radius: var(--pg-r-sm);
}
.pbtc-game .pbtc-game__seg.is-current { border-color: var(--pg-ink); }
.pbtc-game .pbtc-game__seg.is-ok { background: var(--pg-ok); border-color: var(--pg-ok); }
.pbtc-game .pbtc-game__seg.is-bad { background: var(--pg-bad); border-color: var(--pg-bad); }

.pbtc-game .pbtc-game__figure-img {
  display: block;
  width: 100%;
  aspect-ratio: 20 / 9;
  object-fit: cover;
  border-radius: var(--pg-r-md);
  background: var(--pg-sky);
  margin-bottom: 1rem;
}

.pbtc-game .pbtc-game__question {
  font-size: clamp(1.2rem, 1.05rem + .9vw, 1.55rem);
  line-height: 1.3;
  font-weight: 800;
  margin-bottom: 1rem;
}

.pbtc-game .pbtc-game__options { display: grid; gap: .6rem; }

.pbtc-game .pbtc-game__option {
  display: flex;
  width: 100%;
  align-items: flex-start;
  gap: .75rem;
  min-height: 52px;
  padding: .7rem .85rem;
  text-align: left;
  color: var(--pg-ink);
  background: var(--pg-paper);
  border: 1.5px solid var(--pg-line);
  border-radius: var(--pg-r-md);
  cursor: pointer;
}
.pbtc-game .pbtc-game__option:hover:not(:disabled) { border-color: var(--pg-ink); background: var(--pg-sky); }
.pbtc-game .pbtc-game__option:disabled { cursor: default; opacity: 1; }

.pbtc-game .pbtc-game__letter {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  font-weight: 800;
  background: var(--pg-sky);
  border-radius: 8px;
}
.pbtc-game .pbtc-game__opt-text { padding-top: 3px; }

.pbtc-game .pbtc-game__option.is-correct { border-color: var(--pg-ok); background: var(--pg-ok-bg); }
.pbtc-game .pbtc-game__option.is-correct .pbtc-game__letter { background: var(--pg-ok); color: #fff; }
.pbtc-game .pbtc-game__option.is-wrong { border-color: var(--pg-bad); background: var(--pg-bad-bg); }
.pbtc-game .pbtc-game__option.is-wrong .pbtc-game__letter { background: var(--pg-bad); color: #fff; }
.pbtc-game .pbtc-game__option.is-dim { color: var(--pg-muted); background: var(--pg-paper); }

.pbtc-game .pbtc-game__hint {
  margin-top: .75rem;
  padding-left: .75rem;
  border-left: 4px solid var(--pg-accent);
  color: var(--pg-muted);
}
.pbtc-game .pbtc-game__hint:empty { display: none; }

.pbtc-game .pbtc-game__feedback {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
  margin-top: 1rem;
  padding: 1rem 1.1rem;
  background: var(--pg-sky);
  border-left: 5px solid var(--pg-line);
  border-radius: var(--pg-r-md);
}
.pbtc-game .pbtc-game__feedback.is-ok { border-left-color: var(--pg-ok); background: var(--pg-ok-bg); }
.pbtc-game .pbtc-game__feedback.is-bad { border-left-color: var(--pg-bad); background: var(--pg-bad-bg); }
.pbtc-game .pbtc-game__feedback-body { flex: 1 1 auto; min-width: 0; }
.pbtc-game .pbtc-game__feedback-body > * + * { margin-top: .6rem; }
.pbtc-game .pbtc-game__feedback-title { font-size: 1.1rem; font-weight: 800; }
.pbtc-game .pbtc-game__feedback.is-ok .pbtc-game__feedback-title { color: var(--pg-ok); }
.pbtc-game .pbtc-game__feedback.is-bad .pbtc-game__feedback-title { color: var(--pg-bad); }
.pbtc-game .pbtc-game__more a { font-weight: 700; }

.pbtc-game .pbtc-game__mascot {
  flex: 0 0 auto;
  width: 84px;
  height: 84px;
  object-fit: contain;
}
@media (max-width: 479px) {
  .pbtc-game .pbtc-game__feedback { flex-direction: column; }
  .pbtc-game .pbtc-game__mascot { width: 64px; height: 64px; }
}

/* ---------- Botones ---------- */

.pbtc-game .pbtc-game__row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .6rem;
  margin-top: 1rem;
}
.pbtc-game .pbtc-game__row--end { justify-content: space-between; }

.pbtc-game .pbtc-game__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .4rem;
  min-height: 46px;
  padding: 0 1.1rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  text-decoration: none !important;
  cursor: pointer;
  color: var(--pg-ink) !important;
  background: var(--pg-paper);
  border: 2px solid var(--pg-ink);
  border-radius: var(--pg-r-md);
}
.pbtc-game .pbtc-game__btn:hover { background: var(--pg-sky); }
.pbtc-game .pbtc-game__btn--primary { background: var(--pg-accent); border-color: var(--pg-accent); }
.pbtc-game .pbtc-game__btn--primary:hover { background: var(--pg-accent-strong); border-color: var(--pg-accent-strong); }
.pbtc-game .pbtc-game__btn--secondary { background: var(--pg-paper); }
.pbtc-game .pbtc-game__btn--ghost { border-color: var(--pg-line); }
.pbtc-game .pbtc-game__btn:disabled { opacity: .45; cursor: not-allowed; }
.pbtc-game .pbtc-game__btn--primary:disabled:hover { background: var(--pg-accent); border-color: var(--pg-accent); }
.pbtc-game .pbtc-game__btn[aria-pressed="true"] { background: var(--pg-ink); color: #fff !important; }

.pbtc-game .pbtc-game__linkbtn {
  padding: .35rem .1rem;
  color: var(--pg-ink);
  background: none;
  border: 0;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.pbtc-game .pbtc-game__linkbtn:disabled { color: var(--pg-muted); cursor: default; text-decoration: none; }

/* ---------- Resultado ---------- */

.pbtc-game .pbtc-game__result-head {
  display: grid;
  gap: 1rem;
  align-items: center;
}
@media (min-width: 640px) {
  .pbtc-game .pbtc-game__result-head { grid-template-columns: 1fr minmax(180px, 36%); }
}
.pbtc-game .pbtc-game__result-img {
  display: block;
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  border-radius: var(--pg-r-md);
  background: var(--pg-sky);
}

.pbtc-game .pbtc-game__score { line-height: 1; }
.pbtc-game .pbtc-game__score-num { font-size: clamp(3rem, 2.2rem + 4vw, 4.5rem); font-weight: 800; }
.pbtc-game .pbtc-game__score-of { font-size: clamp(1.2rem, 1rem + 1vw, 1.7rem); font-weight: 600; color: var(--pg-muted); }
.pbtc-game .pbtc-game__band { margin-top: .5rem; font-size: 1.1rem; font-weight: 700; }

.pbtc-game .pbtc-game__stats { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 1rem; }
.pbtc-game .pbtc-game__stats li {
  padding: .25rem .7rem;
  font-size: .875rem;
  font-weight: 600;
  background: var(--pg-sky);
  border-radius: 999px;
}

.pbtc-game .pbtc-game__box {
  margin-top: 1.5rem;
  padding: 1rem 1.1rem;
  background: var(--pg-sky);
  border-radius: var(--pg-r-md);
}
.pbtc-game .pbtc-game__box h3 { font-size: 1.1rem; font-weight: 800; }
.pbtc-game .pbtc-game__box > * + * { margin-top: .6rem; }

.pbtc-game .pbtc-game__review > li { display: flex; flex-direction: column; gap: .1rem; padding: .5rem 0; border-top: 1px solid var(--pg-line); }
.pbtc-game .pbtc-game__review > li:first-child { border-top: 0; }
.pbtc-game .pbtc-game__review a { font-weight: 700; }
.pbtc-game .pbtc-game__review-q { font-size: .875rem; color: var(--pg-muted); }

.pbtc-game .pbtc-game__details { margin-top: 1rem; }
.pbtc-game .pbtc-game__details summary { cursor: pointer; font-weight: 700; padding: .4rem 0; }
.pbtc-game .pbtc-game__all { counter-reset: pq; }
.pbtc-game .pbtc-game__all li {
  display: flex;
  flex-direction: column;
  gap: .1rem;
  padding: .65rem 0 .65rem .75rem;
  border-left: 4px solid var(--pg-line);
  margin-top: .5rem;
  font-size: .95rem;
}
.pbtc-game .pbtc-game__all li.is-ok { border-left-color: var(--pg-ok); }
.pbtc-game .pbtc-game__all li.is-bad { border-left-color: var(--pg-bad); }
.pbtc-game .pbtc-game__all li span { color: var(--pg-muted); }

/* ---------- ¿Te ha gustado? y propinas ---------- */

.pbtc-game .pbtc-game__like {
  margin-top: 1.75rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--pg-line);
}
.pbtc-game .pbtc-game__like h3 { font-size: 1.1rem; font-weight: 800; }

.pbtc-game .pbtc-game__tips {
  display: grid;
  gap: 1rem;
  align-items: center;
  margin-top: 1rem;
  padding: 1rem;
  background: var(--pg-tint);
  border: 1.5px solid var(--pg-accent);
  border-radius: var(--pg-r-lg);
}
@media (min-width: 640px) {
  .pbtc-game .pbtc-game__tips { grid-template-columns: minmax(150px, 34%) 1fr; }
  .pbtc-game .pbtc-game__tips--plain { grid-template-columns: 1fr; }
}
.pbtc-game .pbtc-game__tips--plain { background: var(--pg-sky); border-color: var(--pg-line); }
.pbtc-game .pbtc-game__tips-img {
  display: block;
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: contain;
}
.pbtc-game .pbtc-game__tips-body > * + * { margin-top: .6rem; }
.pbtc-game .pbtc-game__tips-body h3 { font-size: 1.2rem; font-weight: 800; }
.pbtc-game .pbtc-game__tips code {
  padding: .1rem .4rem;
  font-size: .95em;
  background: var(--pg-paper);
  border: 1px solid var(--pg-line);
  border-radius: var(--pg-r-sm);
  overflow-wrap: anywhere;
}

/* ---------- Movimiento: solo como respuesta a una acción ---------- */

@media (prefers-reduced-motion: no-preference) {
  .pbtc-game .pbtc-game__option,
  .pbtc-game .pbtc-game__level,
  .pbtc-game .pbtc-game__btn,
  .pbtc-game .pbtc-game__seg { transition: background-color .15s ease, border-color .15s ease; }
}

/* ---------- Comunes añadidos en la versión multijuego ---------- */

.pbtc-game .pbtc-game__tagline { margin-bottom: .25rem; font-size: .8rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--pg-muted); }
.pbtc-game .pbtc-game__subtitle { margin-top: 1.5rem; font-size: 1.05rem; font-weight: 800; }
.pbtc-game .pbtc-game__row--between { justify-content: space-between; }
.pbtc-game .pbtc-game__lesson { padding: .6rem .75rem; background: rgba(255,255,255,.75); border-radius: var(--pg-r-sm); }
.pbtc-game .pbtc-game__seg.is-mid { background: var(--pg-mid); border-color: var(--pg-mid); }
.pbtc-game .pbtc-game__option.is-mid { border-color: var(--pg-mid); background: var(--pg-mid-bg); }
.pbtc-game .pbtc-game__option.is-mid .pbtc-game__letter { background: var(--pg-mid); color: #fff; }
.pbtc-game .pbtc-game__feedback.is-mid { border-left-color: var(--pg-mid); background: var(--pg-mid-bg); }
.pbtc-game .pbtc-game__feedback.is-mid .pbtc-game__feedback-title { color: var(--pg-mid); }
.pbtc-game .pbtc-game__chips { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: 1rem; }
.pbtc-game .pbtc-game__chips li { padding: .25rem .7rem; font-size: .875rem; font-weight: 600; background: var(--pg-sky); border-radius: 999px; }
.pbtc-game .pbtc-game__level-desc { color: var(--pg-ink); }

/* ---------- Caso práctico ---------- */

.pbtc-game .pbtc-caso__situation { margin: .25rem 0 1rem; font-size: 1.05rem; max-width: 62ch; }
.pbtc-game .pbtc-caso__context { margin-bottom: .6rem; padding-left: .75rem; font-size: .95rem; color: var(--pg-muted); border-left: 4px solid var(--pg-line); }

/* ---------- Arrastra y suelta ---------- */

.pbtc-game .pbtc-order__slots { display: grid; gap: .5rem; margin-top: 1rem; counter-reset: none; }
.pbtc-game .pbtc-order__slot {
  display: flex; align-items: center; gap: .6rem;
  min-height: 58px; padding: .35rem;
  border: 2px dashed var(--pg-line); border-radius: var(--pg-r-md);
  background: var(--pg-paper);
}
.pbtc-game .pbtc-order__slot.is-over { border-color: var(--pg-ink); background: var(--pg-sky); }
.pbtc-game .pbtc-order__slot.is-ok { border-style: solid; border-color: var(--pg-ok); background: var(--pg-ok-bg); }
.pbtc-game .pbtc-order__slot.is-bad { border-style: solid; border-color: var(--pg-bad); background: var(--pg-bad-bg); }
.pbtc-game .pbtc-order__num {
  flex: 0 0 auto; display: grid; place-items: center;
  width: 32px; height: 32px; font-weight: 800;
  background: var(--pg-sky); border-radius: 8px;
}
.pbtc-game .pbtc-order__placeholder { color: var(--pg-muted); font-size: .9rem; }
.pbtc-game .pbtc-order__pool-title { margin-top: 1.25rem; font-size: .95rem; font-weight: 800; }
.pbtc-game .pbtc-order__pool { display: grid; gap: .5rem; margin-top: .5rem; }
@media (min-width: 640px) { .pbtc-game .pbtc-order__pool { grid-template-columns: 1fr 1fr; } }
.pbtc-game .pbtc-order__card {
  display: flex; flex: 1 1 auto; align-items: center; gap: .6rem; width: 100%;
  min-height: 48px; padding: .55rem .75rem;
  text-align: left; color: var(--pg-ink);
  background: var(--pg-paper); border: 1.5px solid var(--pg-line); border-radius: var(--pg-r-md);
  cursor: grab; touch-action: manipulation;
}
.pbtc-game .pbtc-order__card:hover { border-color: var(--pg-ink); }
.pbtc-game .pbtc-order__card.is-pool { background: var(--pg-tint); border-color: var(--pg-accent); }
.pbtc-game .pbtc-order__card.is-static { cursor: default; border-color: transparent; background: transparent; }
.pbtc-game .pbtc-order__icon { flex: 0 0 auto; font-size: 1.3rem; line-height: 1; }
.pbtc-game .pbtc-order__text { flex: 1 1 auto; font-weight: 600; }
.pbtc-game .pbtc-order__mark { flex: 0 0 auto; font-weight: 800; }
.pbtc-game .pbtc-order__done { padding: .5rem; font-size: .9rem; color: var(--pg-muted); }
.pbtc-game .pbtc-order__msg { margin-top: .75rem; font-weight: 600; }
.pbtc-game .pbtc-order__msg:empty { display: none; }
.pbtc-game .pbtc-order__solution { display: grid; gap: .5rem; padding-left: 1.4rem; list-style: decimal; }
.pbtc-game .pbtc-order__solution li { display: flex; flex-direction: column; gap: .1rem; }
.pbtc-game .pbtc-order__solution li span { color: var(--pg-muted); font-size: .95rem; }

/* ---------- Simulador ---------- */

.pbtc-game .pbtc-sim__form { display: grid; gap: .9rem; margin-top: 1rem; padding: 1rem; background: var(--pg-sky); border-radius: var(--pg-r-md); }
.pbtc-game .pbtc-sim__field { display: grid; gap: .35rem; margin: 0; padding: 0; border: 0; min-width: 0; }
@media (min-width: 640px) { .pbtc-game .pbtc-sim__field { grid-template-columns: 180px 1fr; align-items: start; } }
.pbtc-game .pbtc-sim__label { display: flex; align-items: center; gap: .5rem; padding: 0; font-weight: 700; }
.pbtc-game .pbtc-sim__icon { font-size: 1.2rem; }
.pbtc-game .pbtc-sim__control { min-width: 0; }
.pbtc-game .pbtc-sim__select, .pbtc-game .pbtc-sim__number {
  max-width: 100%; min-height: 44px; padding: .4rem .6rem;
  font: inherit; color: var(--pg-ink); background: var(--pg-paper);
  border: 1.5px solid var(--pg-line); border-radius: var(--pg-r-sm);
}
.pbtc-game .pbtc-sim__select { width: 100%; }
.pbtc-game .pbtc-sim__number { width: 8.5rem; }
.pbtc-game .pbtc-sim__pair { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; }
.pbtc-game .pbtc-sim__range { flex: 1 1 160px; accent-color: var(--pg-accent-strong); }
.pbtc-game .pbtc-sim__unit { font-size: .9rem; color: var(--pg-muted); }
.pbtc-game .pbtc-sim__presets { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .5rem; }
.pbtc-game .pbtc-sim__presets .pbtc-game__btn { min-height: 36px; padding: 0 .7rem; font-size: .9rem; }
.pbtc-game .pbtc-sim__modes { display: flex; flex-wrap: wrap; gap: .4rem 1.2rem; margin-bottom: .5rem; }
.pbtc-game .pbtc-sim__modes label { display: inline-flex; align-items: center; gap: .35rem; cursor: pointer; }
.pbtc-game .pbtc-sim__coin label { display: flex; flex-wrap: wrap; align-items: center; gap: .1rem .35rem; cursor: pointer; }
.pbtc-game .pbtc-sim__coins { display: grid; gap: .3rem; }
.pbtc-game .pbtc-sim__coin { padding: .35rem .5rem; background: var(--pg-paper); border-radius: var(--pg-r-sm); }
.pbtc-game .pbtc-sim__coin.is-disabled { opacity: .7; }
.pbtc-game .pbtc-sim__badge { margin-left: .4rem; padding: 0 .4rem; font-size: .75rem; font-weight: 800; color: #fff; background: var(--pg-bad); border-radius: 4px; }
.pbtc-game .pbtc-sim__out { margin-top: 1.25rem; }
.pbtc-game .pbtc-sim__out:empty { display: none; }
.pbtc-game .pbtc-sim__out-title { font-size: 1.15rem; font-weight: 800; }
.pbtc-game .pbtc-sim__diagram { display: grid; gap: .75rem; margin-top: .75rem; align-items: center; }
@media (min-width: 640px) { .pbtc-game .pbtc-sim__diagram { grid-template-columns: 1fr auto 1fr; } }
.pbtc-game .pbtc-sim__col { padding: .75rem; background: var(--pg-sky); border-radius: var(--pg-r-md); }
.pbtc-game .pbtc-sim__col h3 { font-size: .95rem; font-weight: 800; margin-bottom: .4rem; }
.pbtc-game .pbtc-sim__arrow { font-size: 1.6rem; font-weight: 800; text-align: center; }
.pbtc-game .pbtc-sim__io { display: flex; flex-wrap: wrap; gap: .1rem .5rem; padding: .35rem 0; border-top: 1px solid var(--pg-line); }
.pbtc-game .pbtc-sim__io:first-child { border-top: 0; }
.pbtc-game .pbtc-sim__io-amt { font-weight: 800; }
.pbtc-game .pbtc-sim__io-label { color: var(--pg-muted); }
.pbtc-game .pbtc-sim__io-note { width: 100%; font-size: .8rem; color: var(--pg-muted); }
.pbtc-game .pbtc-sim__insights { display: grid; gap: .5rem; margin-top: 1rem; }
.pbtc-game .pbtc-sim__insights li { padding: .6rem .75rem; border-left: 4px solid var(--pg-line); background: var(--pg-sky); border-radius: var(--pg-r-sm); }
.pbtc-game .pbtc-sim__insights li.is-ok { border-left-color: var(--pg-ok); background: var(--pg-ok-bg); }
.pbtc-game .pbtc-sim__insights li.is-warn { border-left-color: var(--pg-mid); background: var(--pg-mid-bg); }
.pbtc-game .pbtc-sim__insights li.is-bad { border-left-color: var(--pg-bad); background: var(--pg-bad-bg); }
.pbtc-game .pbtc-sim__table-wrap { overflow-x: auto; }
.pbtc-game .pbtc-sim__table { width: 100%; margin-top: .5rem; border-collapse: collapse; font-size: .95rem; }
.pbtc-game .pbtc-sim__table th, .pbtc-game .pbtc-sim__table td { padding: .45rem .5rem; text-align: left; border-bottom: 1px solid var(--pg-line); }
.pbtc-game .pbtc-sim__table tr.is-current td { font-weight: 800; background: var(--pg-tint); }
.pbtc-game .pbtc-sim__mission-list { display: grid; gap: .45rem; }
.pbtc-game .pbtc-sim__mission-list li { display: flex; gap: .6rem; align-items: flex-start; }
.pbtc-game .pbtc-sim__mission-list li.is-done { color: var(--pg-ok); font-weight: 600; }
.pbtc-game .pbtc-sim__mission-list li.is-fresh { animation: none; }
.pbtc-game .pbtc-sim__check { flex: 0 0 auto; width: 1.2rem; font-weight: 800; }
.pbtc-game .pbtc-sim__hint { display: block; font-size: .85rem; font-weight: 400; color: var(--pg-muted); }

/* ---------- Desafío avanzado ---------- */

.pbtc-game .pbtc-dsf__context { margin-bottom: 1rem; padding: .75rem; background: var(--pg-sky); border-radius: var(--pg-r-md); }
.pbtc-game .pbtc-dsf__grid.is-visual { grid-template-columns: 1fr; }
@media (min-width: 760px) { .pbtc-game .pbtc-dsf__grid.is-visual { grid-template-columns: repeat(3, 1fr); } }
.pbtc-game .pbtc-dsf__card {
  display: flex; flex-direction: column; gap: .6rem; height: 100%;
  padding: .85rem; background: var(--pg-paper);
  border: 1.5px solid var(--pg-line); border-radius: var(--pg-r-md);
}
.pbtc-game .pbtc-dsf__card.is-correct { border-color: var(--pg-ok); background: var(--pg-ok-bg); }
.pbtc-game .pbtc-dsf__card.is-wrong { border-color: var(--pg-bad); background: var(--pg-bad-bg); }
.pbtc-game .pbtc-dsf__card.is-dim { opacity: .8; }
.pbtc-game .pbtc-dsf__card.is-correct .pbtc-game__letter { background: var(--pg-ok); color: #fff; }
.pbtc-game .pbtc-dsf__card.is-wrong .pbtc-game__letter { background: var(--pg-bad); color: #fff; }
.pbtc-game .pbtc-dsf__card .pbtc-game__btn { margin-top: auto; }
.pbtc-game .pbtc-dsf__card-head { display: flex; align-items: center; gap: .5rem; font-size: 1rem; font-weight: 800; }
.pbtc-game .pbtc-dsf__tx { display: grid; gap: .4rem; font-size: .9rem; }
.pbtc-game .pbtc-dsf__context .pbtc-dsf__tx { grid-template-columns: 1fr auto 1fr; align-items: center; }
.pbtc-game .pbtc-dsf__col { min-width: 0; }
.pbtc-game .pbtc-dsf__head { display: block; font-size: .75rem; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; color: var(--pg-muted); }
.pbtc-game .pbtc-dsf__arrow { font-weight: 800; text-align: center; }
.pbtc-game .pbtc-dsf__io li { display: flex; flex-wrap: wrap; align-items: baseline; gap: .1rem .4rem; padding: .25rem 0; border-top: 1px solid var(--pg-line); }
.pbtc-game .pbtc-dsf__io li:first-child { border-top: 0; }
.pbtc-game .pbtc-dsf__amt { font-weight: 800; }
.pbtc-game .pbtc-dsf__addr code { font-size: .85em; overflow-wrap: anywhere; }
.pbtc-game .pbtc-dsf__kind { margin-left: .3rem; padding: 0 .35rem; font-size: .7rem; font-weight: 700; background: var(--pg-sky); border-radius: 4px; }
.pbtc-game .pbtc-dsf__label { width: 100%; font-size: .8rem; color: var(--pg-muted); }
.pbtc-game .pbtc-dsf__fee { display: block; margin-top: .25rem; font-size: .8rem; color: var(--pg-muted); }
.pbtc-game .pbtc-dsf__kv { display: grid; grid-template-columns: auto 1fr; gap: .25rem .75rem; margin: 0; font-size: .95rem; }
.pbtc-game .pbtc-dsf__kv dt { font-weight: 700; color: var(--pg-muted); }
.pbtc-game .pbtc-dsf__kv dd { margin: 0; }
.pbtc-game .pbtc-dsf__chan-bar { display: flex; height: 14px; overflow: hidden; border-radius: 999px; background: var(--pg-sky); margin-bottom: .5rem; }
.pbtc-game .pbtc-dsf__chan-local { background: var(--pg-accent); }
.pbtc-game .pbtc-dsf__chan-remote { background: #8fb3e8; }
.pbtc-game .pbtc-dsf__bar { display: grid; gap: .25rem; font-size: .85rem; }
.pbtc-game .pbtc-dsf__bar[hidden] { display: none; }
.pbtc-game .pbtc-dsf__bar-name { font-weight: 700; color: var(--pg-muted); }
.pbtc-game .pbtc-dsf__bar-track { display: block; height: 10px; background: var(--pg-sky); border-radius: 999px; overflow: hidden; }
.pbtc-game .pbtc-dsf__bar-fill { display: block; height: 100%; background: var(--pg-bad); border-radius: 999px; }
.pbtc-game .pbtc-dsf__bar-fill.is-best { background: var(--pg-ok); }
.pbtc-game .pbtc-dsf__bar-val { font-weight: 700; }

/* ---------- Aviso de administración en la página ---------- */

.pbtc-game-admin { max-width: 760px; margin: 1rem auto; padding: .75rem 1rem; font-size: .9rem; background: #fff8db; border: 1.5px solid #f2b705; border-radius: 10px; }
