/* Específico: lista de temas con el estilo del temario de bombero
   (iconos naranjas, títulos en Roboto Slab, recuadro a la izquierda). */
:root{ --esp-naranja: #f07611; --esp-titulo: #ffa037; --esp-borde: var(--line); --esp-verde: #6cb33f; --esp-tipo: var(--muted); --esp-test: var(--text); }
:root[data-theme="light"]{ --esp-borde: #e5e5e5; --esp-tipo: #555; --esp-test: #333; }

/* Logo del recuadro de Estudio: el dibujo del bombero en naranja (máscara
   incrustada para que se vea también sin conexión y en cualquier origen) */
:root{ --esp-logo: url("data:image/png;base64,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"); }
.esp-logo{ display:block; width:52px; height:52px; background: var(--esp-naranja);
  -webkit-mask: var(--esp-logo) center / contain no-repeat; mask: var(--esp-logo) center / contain no-repeat; }

.esp-lista{ list-style:none; margin:30px 0 0; padding:0; }
.esp-tema{ margin:0 0 15px; }
.esp-cab{ position:relative; display:flex; align-items:center; width:100%; min-height:50px; padding:10px 0 10px 70px;
  background:none; border:none; text-align:left; cursor:pointer; color: var(--text); font:inherit; }
.esp-caja{ position:absolute; left:0; top:50%; transform:translateY(-50%); width:50px; height:50px; border:1px solid var(--esp-borde);
  display:flex; align-items:center; justify-content:center; transition: border-color .15s; }
.esp-caja::before, .esp-caja::after{ content:""; position:absolute; width:16px; height:2px; background: var(--muted); }
.esp-caja::after{ transform: rotate(90deg); transition: transform .2s; }
.esp-tema.abierto .esp-caja::after{ transform: rotate(0deg); }
.esp-cab:hover .esp-caja{ border-color: var(--esp-naranja); }
.esp-ico{ width:40px; flex-shrink:0; margin-right:10px; display:flex; justify-content:center; color: var(--esp-naranja); }
.esp-ico svg{ width:22px; height:22px; }
.esp-titulo{ font-family:'Roboto Slab', serif; font-weight:700; font-size:20px; line-height:1.4; color: var(--esp-titulo); }
.esp-cuerpo{ margin:8px 0 0; padding-left:14px; border-left:3px solid var(--esp-naranja); }
.esp-tests{ display:flex; flex-direction:column; }
/* Fila de test: como en el temario de la academia (tick verde, «Test -» y el nombre en negrita) */
.esp-test{ display:flex; align-items:center; gap:14px; padding:14px 16px; background: var(--card); border:1px solid var(--esp-borde); cursor:pointer; transition: background .15s; }
.esp-test + .esp-test{ border-top:none; }
.esp-test:hover{ background: var(--card-hi); }
:root[data-theme="light"] .esp-test{ background:#fff; }
:root[data-theme="light"] .esp-test:hover{ background:#fafafa; }
.esp-tick{ width:30px; height:30px; flex-shrink:0; color: var(--esp-verde); }
.esp-test-txt{ flex:1; min-width:0; font-size:16px; line-height:1.4; color: var(--esp-tipo); }
.esp-test-txt b{ font-weight:700; color: var(--esp-test); }
.esp-vacio{ padding:12px 2px; font-size:14px; color: var(--muted); }
@media (max-width:640px){
  .esp-cab{ padding-left:60px; }
  .esp-caja{ width:44px; height:44px; }
  .esp-ico{ width:30px; margin-right:8px; }
  .esp-titulo{ font-size:17px; }
  .esp-cuerpo{ padding-left:10px; }
  .esp-test{ padding:12px; gap:10px; }
  .esp-tick{ width:26px; height:26px; }
  .esp-test-txt{ font-size:14.5px; }
}

/* Importar preguntas (js/importar-especifico.js) */
.imp-bg{ position:fixed; inset:0; z-index:200; background:rgba(0,0,0,.55); display:flex; align-items:center; justify-content:center; padding:16px; }
.imp-panel{ width:100%; max-width:520px; max-height:90vh; overflow:auto; background: var(--bg); color: var(--text); border:1px solid var(--line); border-radius:18px; padding:20px; }
.imp-panel h2{ font-family: var(--title); font-weight:400; font-size:22px; margin:0 0 12px; }
.imp-cuerpo p{ font-size:14.5px; line-height:1.5; margin:0 0 12px; }
.imp-aviso{ color: var(--coral); font-weight:600; }
.imp-label{ display:block; font-size:13px; color: var(--muted); margin:4px 0 6px; }
.imp-cuerpo select{ width:100%; padding:11px 12px; border-radius:10px; border:1px solid var(--line); background: var(--card); color: var(--text); font:inherit; font-size:14.5px; }
.imp-check{ display:flex; gap:8px; align-items:flex-start; margin-top:12px; font-size:14px; line-height:1.4; }
.imp-check.hidden{ display:none; }
.imp-botones{ display:flex; gap:10px; justify-content:flex-end; margin-top:18px; }
.imp-btn{ padding:11px 16px; border-radius:10px; border:1px solid var(--line); background:none; color: var(--text); font:inherit; font-size:14.5px; font-weight:600; cursor:pointer; }
.imp-btn.primario{ background: var(--esp-naranja); border-color: var(--esp-naranja); color:#fff; }
.imp-btn:disabled{ opacity:.6; }

/* Hacer un test (js/especifico-test.js): diseño del aula virtual de tutorbomberos */
:root{ --espt-card: #1b1b1b; --espt-borde: #333; --espt-texto: #e8e8e8; --espt-preg: #f0f0f0; --espt-exp-bg: #111; --espt-campo: #2a2a2a; --espt-campo-txt: #eee; }
:root[data-theme="light"]{ --espt-card: #f5f5f5; --espt-borde: #c8c8c8; --espt-texto: #333; --espt-preg: #444; --espt-exp-bg: #fff; --espt-campo: #e8ebf0; --espt-campo-txt: #222; }
.espt-migas{ font-size:15px; margin-bottom:22px; color: var(--esp-naranja); }
.espt-migas button{ background:none; border:none; padding:0; font:inherit; color: var(--text); text-decoration:underline; cursor:pointer; }
.espt-migas span{ color: var(--text); margin:0 2px; }
.espt-migas b{ font-weight:400; }
.espt-h{ font-family:'Roboto Slab', serif; font-weight:700; font-size:22px; text-align:center; margin:0 0 26px; position:relative; padding-bottom:14px; }
.espt-h::after{ content:""; position:absolute; left:50%; bottom:0; width:44px; height:2px; margin-left:-22px; background: var(--esp-naranja); }
.espt-cab{ background:#ff9533; border-radius:4px; padding:16px 18px 18px; margin-bottom:40px; }
.espt-etiqueta{ color:#fff; font-weight:700; font-size:15px; margin:0 0 5px; }
.espt-etiqueta + .espt-campo + .espt-etiqueta{ margin-top:12px; }
.espt-campo{ background: var(--espt-campo); color: var(--espt-campo-txt); border:1px solid rgba(0,0,0,.25); border-radius:2px; padding:7px 9px; font-size:14.5px; max-width:560px; }
.espt-lista{ display:flex; flex-direction:column; gap:42px; }
.espt-preg{ position:relative; background: var(--espt-card); border:1px solid var(--espt-borde); border-left:5px solid #9e9e9e; padding:14px 14px 14px 12px; color: var(--espt-texto);
  font-family: Helvetica, Arial, sans-serif; }
/* Franja izquierda = dificultad de la pregunta */
.espt-preg.dif-facil{ border-left-color:#5cb85c; }
.espt-preg.dif-media{ border-left-color:#f5d10f; }
.espt-preg.dif-dificil{ border-left-color:#e0261b; }
.espt-estrella{ position:absolute; left:6px; top:5px; width:15px; height:15px; }
.espt-estrella svg{ width:100%; height:100%; display:block; }
.espt-iconos{ float:right; display:flex; gap:5px; margin:-6px -6px 4px 8px; }
.espt-iconos button{ width:22px; height:22px; padding:0; border:none; background:none; cursor:pointer; }
.espt-iconos svg{ width:100%; height:100%; display:block; }
.espt-enunciado{ font-weight:700; font-size:16px; line-height:1.45; color: var(--espt-preg); margin:6px 0 12px; }
.espt-enunciado b{ font-weight:700; }
.espt-ops{ display:flex; flex-direction:column; clear:both; }
.espt-op{ display:flex; align-items:flex-start; gap:6px; width:100%; text-align:left; padding:8px 4px; border:none; background:none; color: var(--espt-texto);
  font-family: Helvetica, Arial, sans-serif; font-size:15.5px; line-height:1.45; cursor:pointer; border-radius:6px; }
.espt-op:hover:not(:disabled){ background: rgba(255,149,51,.10); }
.espt-op:disabled{ cursor:default; }
.espt-tick{ width:16px; flex-shrink:0; font-weight:900; font-size:17px; line-height:22px; text-align:center; }
.espt-tick.bien{ color:#3c9a2e; }
.espt-tick.mal{ color:#e0261b; }
.espt-letra{ flex-shrink:0; width:20px; height:20px; margin-top:1px; border-radius:50%; background:#f7d78f; color:#5a4310; font-weight:700; font-size:13px; line-height:20px; text-align:center; }
.espt-op-txt{ flex:1; min-width:0; }
.espt-op.acierto .espt-op-txt, .espt-op.era .espt-op-txt{ font-weight:700; }
.espt-op.era .espt-op-txt{ color:#3c9a2e; }
.espt-op.fallo .espt-op-txt{ color:#e0261b; text-decoration: line-through; text-decoration-thickness:1px; }
.espt-correcta{ margin:8px 0 0 26px; font-size:14.5px; color:#3c9a2e; }
.espt-cab-txt{ color:#fff; font-size:14.5px; line-height:1.45; }
.espt-grupo{ margin-bottom:-24px; }
.espt-grupo-tema{ font-family:'Roboto Slab', serif; font-weight:700; font-size:19px; line-height:1.3; color: var(--esp-titulo); margin:0 0 6px; }
.espt-grupo-test{ font-size:15px; color: var(--muted); }
.espt-grupo-test b{ color: var(--text); }
.espt-exp{ margin-top:10px; background: var(--espt-exp-bg); border:1px solid var(--espt-borde); padding:12px 10px; font-size:15px; line-height:1.6; color: var(--espt-texto); }
.espt-preg img{ max-width:100%; height:auto; margin:8px 0; background:#fff; }
.espt-pie{ display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:10px; margin:30px 0 10px; font-size:14px; color: var(--muted); }
.espt-pie button{ background:none; border:1px solid var(--line); border-radius:8px; padding:8px 12px; color: var(--text); font:inherit; font-size:13.5px; cursor:pointer; }
.espt-pie .espm-finalizar{ background:#ff9533; border-color:#ff9533; color:#fff; font-weight:700; }
@media (max-width:640px){
  .espt-cab{ margin-bottom:28px; }
  .espt-lista{ gap:28px; }
  .espt-enunciado{ font-size:15.5px; }
  .espt-op{ font-size:15px; }
}

/* Acceso a Preguntas marcadas (lista de temas) */
.esp-marcadas{ display:flex; align-items:center; gap:14px; width:100%; margin:6px 0 4px; padding:14px 16px; text-align:left; font:inherit; color: var(--text);
  background: var(--card); border:1px solid var(--esp-borde); border-radius:4px; cursor:pointer; }
.esp-marcadas:hover{ background: var(--card-hi); }
.esp-marcadas-ico{ display:flex; color:#f5c518; }
.esp-marcadas-ico svg{ width:24px; height:24px; }
.esp-marcadas-txt{ flex:1; display:flex; flex-direction:column; gap:2px; }
.esp-marcadas-txt b{ font-family:'Roboto Slab', serif; font-size:18px; color: var(--esp-titulo); }
.esp-marcadas-txt span{ font-size:13px; color: var(--muted); }
.esp-marcadas-flecha{ font-size:24px; color: var(--muted); }
.imp-resumen{ margin:0 0 12px; padding-left:20px; font-size:14px; line-height:1.55; }
.imp-nuevo{ color: var(--esp-naranja); font-weight:600; }
.imp-nota{ color: var(--muted); font-size:13px !important; }
.imp-barra{ height:8px; border-radius:4px; background: var(--line); overflow:hidden; margin:4px 0 12px; }
.imp-barra span{ display:block; height:100%; background: var(--esp-naranja); transition: width .3s; }
.imp-detalles{ margin:0 0 12px; font-size:14px; }
.imp-detalles summary{ cursor:pointer; color: var(--coral); font-weight:600; margin-bottom:6px; }
.espt-preg sub, .espt-preg sup{ font-size:.75em; line-height:0; }
.imp-ok{ color:#43a047; font-weight:600; }
.imp-detalles summary .imp-nuevo{ color: var(--esp-naranja); }
.espt-cargando{ color: var(--muted); font-style: italic; }

/* Preguntas marcadas: elegir todas juntas o un tema */
.espm-todas{ display:flex; align-items:center; gap:14px; width:100%; padding:16px 18px; text-align:left; font:inherit; color:#fff; cursor:pointer;
  background: var(--esp-naranja); border:0; border-radius:4px; }
.espm-todas:hover{ filter: brightness(1.06); }
.espm-todas-txt{ flex:1; display:flex; flex-direction:column; gap:3px; }
.espm-todas-txt b{ font-family:'Roboto Slab', serif; font-size:18px; }
.espm-todas-txt span{ font-size:13.5px; opacity:.9; }
.espm-todas .espm-flecha{ color:#fff; }
.espm-sub{ font-family:'Roboto Slab', serif; font-weight:700; font-size:17px; color: var(--esp-titulo); margin:30px 0 12px; }
.espm-lista{ display:flex; flex-direction:column; }
.espm-fila{ display:flex; align-items:center; gap:14px; width:100%; padding:13px 16px; text-align:left; font:inherit; color: var(--text); cursor:pointer;
  background: var(--card); border:1px solid var(--esp-borde); transition: background .15s; }
.espm-fila + .espm-fila{ border-top:none; }
.espm-fila:hover{ background: var(--card-hi); }
.espm-ico{ display:flex; flex-shrink:0; color: var(--esp-naranja); }
.espm-ico svg{ width:22px; height:22px; }
.espm-txt{ flex:1; min-width:0; display:flex; flex-direction:column; gap:2px; }
.espm-txt b{ font-size:15px; font-weight:600; line-height:1.35; }
.espm-txt span{ font-size:12.5px; color: var(--muted); }
.espm-n{ flex-shrink:0; min-width:28px; padding:3px 8px; border-radius:99px; background: var(--card-hi); border:1px solid var(--esp-borde); text-align:center; font-size:13px; font-weight:700; font-variant-numeric: tabular-nums; }
.espm-flecha{ flex-shrink:0; font-size:22px; color: var(--muted); line-height:1; }

/* Diseño de tutorbomberos dentro de las pruebas del panel pj.fire (js/pruebas.js) */
.pru-tb{ max-width:820px; margin:0 auto; padding-bottom:20px; }
.espt-op.elegida{ background: rgba(255,149,51,.16); }
.espt-op.elegida .espt-letra{ background: var(--esp-naranja); color:#fff; }
.espt-op.elegida .espt-op-txt{ font-weight:700; }
.pru-tb-fin{ background: var(--esp-naranja) !important; border-color: var(--esp-naranja) !important; color:#fff !important; font-weight:700; padding:10px 18px !important; }

/* Nota propia de una pregunta del Específico (texto e imágenes) */
.espn-nota{ margin-top:10px; padding:10px 12px; border-radius:6px; background: rgba(58,142,230,.08); border:1px solid rgba(58,142,230,.35); color: var(--text); font-family: var(--sans); }
.espn-nota-cab{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:6px; }
.espn-nota-cab span{ font-size:12px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:#3a8ee6; }
.espn-nota-cab button{ border:0; background:none; padding:2px 0; font:inherit; font-size:13px; font-weight:600; color:#3a8ee6; cursor:pointer; }
.espn-nota-txt{ font-size:14.5px; line-height:1.5; white-space:pre-line; overflow-wrap:anywhere; }
.espn-nota-imgs{ display:flex; flex-wrap:wrap; gap:8px; margin-top:8px; }
.espn-nota-imgs img{ width:96px; height:96px; object-fit:cover; border-radius:6px; background:#fff; cursor:zoom-in; }

.espn-bg{ position:fixed; inset:0; z-index:1000; display:flex; align-items:flex-end; justify-content:center; background: rgba(0,0,0,.6); }
@media (min-width: 700px){ .espn-bg{ align-items:center; } }
.espn-hoja{ width:100%; max-width:540px; max-height: calc(100dvh - 24px); overflow-y:auto; display:flex; flex-direction:column; gap:12px; padding:18px 18px calc(16px + env(safe-area-inset-bottom));
  background: var(--bg); border:1px solid var(--line); border-radius:22px 22px 0 0; }
@media (min-width: 700px){ .espn-hoja{ border-radius:22px; } }
.espn-cab{ display:flex; align-items:center; justify-content:space-between; }
.espn-cab h3{ margin:0; font-size:20px; }
.espn-x{ width:34px; height:34px; border-radius:50%; border:0; background: var(--card); color: var(--muted); cursor:pointer; }
.espn-sub{ font-size:13px; color: var(--muted); margin-top:-6px; }
.espn-texto{ width:100%; min-height:120px; padding:12px 14px; border-radius:14px; border:1px solid var(--line); background: var(--card); color: var(--text); font:inherit; font-size:15px; line-height:1.5; resize:vertical; }
.espn-texto:focus{ outline:none; border-color:#3a8ee6; }
.espn-imgs{ display:flex; flex-wrap:wrap; gap:8px; }
.espn-imgs:empty{ display:none; }
.espn-img{ position:relative; width:84px; height:84px; }
.espn-img img{ width:100%; height:100%; object-fit:cover; border-radius:10px; background:#fff; }
.espn-img button{ position:absolute; top:-6px; right:-6px; width:24px; height:24px; border-radius:50%; border:0; background: var(--text); color: var(--bg); font-size:11px; cursor:pointer; }
.espn-anadir{ align-self:flex-start; padding:9px 14px; border-radius:99px; border:1.5px dashed var(--line); color: var(--muted); font-size:14px; font-weight:600; cursor:pointer; }
.espn-anadir.hidden{ display:none; }
.espn-estado{ font-size:13px; color: var(--muted); min-height:0; }
.espn-estado:empty{ display:none; }
.espn-pie{ display:flex; gap:8px; }
.espn-btn{ flex:1; padding:13px 16px; border-radius:14px; border:1px solid var(--line); background: var(--card); color: var(--text); font:inherit; font-size:15px; font-weight:700; cursor:pointer; }
.espn-btn.primario{ background:#3a8ee6; border-color:#3a8ee6; color:#fff; }
.espn-btn.peligro{ color: var(--coral); }
.espn-btn:disabled{ opacity:.6; cursor:default; }
.espt-iconos{ gap:5px; }

/* Importar: tests de Legislación de tutorbomberos (cada tema a una ley; cada test a un título) */
.imp-legis-sec{ margin:14px 0 6px; padding-top:12px; border-top:1px solid var(--line); }
.imp-legis-sec h3{ font-size:15px; margin:0 0 6px; }
.imp-legis{ display:flex; flex-direction:column; gap:8px; padding:10px 12px; margin:8px 0; border:1px solid var(--line); border-radius:12px; background: var(--card); }
.imp-legis-cab{ display:flex; justify-content:space-between; gap:10px; font-size:14px; }
.imp-legis-cab span{ color: var(--muted); font-size:12.5px; white-space:nowrap; }
.imp-legis select{ width:100%; }
.imp-legis-test{ display:flex; flex-direction:column; gap:4px; margin:8px 0; font-size:13px; }
.imp-legis-test small{ color: var(--muted); }

/* Administración › Temario: dónde va cada pregunta de tutorbomberos (js/colocar-tb.js) */
.imp-panel.col-panel{ max-width:760px; }
.col-cab{ position:sticky; top:-20px; z-index:1; background: var(--bg); padding:4px 0 10px; border-bottom:1px solid var(--line); }
.col-cab .imp-nota{ margin:10px 0; font-size:13.5px; color: var(--muted); }
.col-acciones{ display:flex; flex-wrap:wrap; gap:8px; }
.col-lista{ list-style:none; margin:12px 0 0; padding:0; display:flex; flex-direction:column; gap:10px; }
.col-q{ border:1px solid var(--line); border-radius:12px; padding:12px; background: var(--card); }
.col-q.cambiada{ border-color: var(--esp-naranja); box-shadow: inset 3px 0 0 var(--esp-naranja); }
.col-texto{ font-size:14.5px; line-height:1.45; white-space:pre-line; }
.col-exp{ margin-top:6px; font-size:12.5px; line-height:1.4; color: var(--muted); }
.col-sitio{ margin-top:10px; display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.imp-cuerpo .col-sitio select{ flex:1 1 260px; width:auto; min-width:0; max-width:100%; text-overflow:ellipsis; padding:8px 10px; font-size:13.5px; }
.col-motivo{ font-size:12px; padding:3px 8px; border-radius:999px; background: var(--card-hi); color: var(--muted); }
.col-pie{ position:sticky; bottom:-20px; background: var(--bg); padding:10px 0; border-top:1px solid var(--line); }

/* Un test a medias: se sigue donde se dejó (aquí o en otro dispositivo) */
.espt-sigue{ margin:-24px 0 28px; padding:10px 14px; border-radius:4px; background: rgba(255,149,51,.12); border:1px solid rgba(255,149,51,.45); font-size:14px; line-height:1.4; }
.espt-sigue button{ margin-left:6px; padding:4px 10px; border-radius:4px; border:1px solid currentColor; background:none; color:inherit; font: inherit; font-size:13px; font-weight:700; cursor:pointer; }

/* Marcadas de hoy: el repaso de cada día, con escalones */
.espm-hoy{ background: var(--esp-azul, #3a8ee6); margin-bottom:6px; }
.espm-hoy:disabled{ opacity:.6; cursor:default; filter:none; }
.espm-sabidas{ display:flex; align-items:center; justify-content:space-between; width:100%; margin-top:18px; padding:13px 16px; font:inherit; font-size:15px; font-weight:600;
  color: var(--text); background: var(--card); border:1px dashed var(--esp-borde); border-radius:4px; cursor:pointer; }
.espm-escalon{ display:flex; align-items:center; gap:10px; margin-top:10px; font-size:13px; color: var(--muted); }
.espm-puntos{ display:inline-flex; gap:4px; }
.espm-puntos i{ width:9px; height:9px; border-radius:99px; border:1.5px solid var(--esp-naranja); }
.espm-puntos i.on{ background: var(--esp-naranja); }
.espm-dude{ margin-top:10px; padding:7px 14px; border-radius:99px; border:1px dashed var(--muted); background:none; color: var(--text); font:inherit; font-size:13.5px; font-weight:600; cursor:pointer; }
.espm-dude.on{ border-style:solid; border-color:#e0a106; color:#e0a106; background: rgba(224,161,6,.1); }
.espm-res{ margin-top:8px; font-size:13px; font-weight:600; color: var(--muted); }
.espm-res.bien{ color:#3fae5a; }
.espm-res.dude{ color:#e0a106; }
.espm-res.mal{ color:#e8574b; }
.espm-res.sabida{ color:#3fae5a; font-size:14px; }
.espm-pie{ flex-direction:column; align-items:stretch; gap:10px; }
.espm-fin{ font-weight:600; }
.espm-fin button, .espm-link{ margin:6px 6px 0 0; padding:6px 12px; border-radius:4px; border:1px solid var(--esp-naranja); background:none; color: var(--esp-naranja); font:inherit; font-size:13.5px; font-weight:700; cursor:pointer; }
.espm-paso{ display:flex; flex-direction:column; gap:8px; margin:0 0 16px; font-size:14px; font-weight:700; color: var(--muted); }
.espm-paso-barra{ height:6px; border-radius:99px; background: var(--line); overflow:hidden; }
.espm-paso-barra i{ display:block; height:100%; background:#3a8ee6; border-radius:99px; }
.espm-sig{ display:block; width:100%; margin-top:14px; padding:12px; border-radius:6px; border:0; background:#3a8ee6; color:#fff; font:inherit; font-size:16px; font-weight:800; cursor:pointer; }
.espm-pie.fin{ font-size:15px; color: var(--text); }
