/* Piezas propias de la web pública de WoW: Forever (sobre melones.css y melones-extra.css). */

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--ember-bright);outline-offset:2px;}

/* ---------- Cabecera ---------- */
.web-topbar{gap:20px;padding:12px 32px;position:sticky;top:0;z-index:1500;}
.web-topbar .brand{flex:none;}
.web-nav{display:flex;gap:4px;flex:1;min-width:0;}
.web-nav a{padding:7px 12px;border-radius:2px;font-size:13.5px;color:var(--bone-dim);font-weight:500;white-space:nowrap;}
.web-nav a:hover{color:var(--bone);background:var(--panel-2);}
.web-nav a.active{color:var(--ember-bright);}
.web-buscar{flex:0 1 260px;min-width:140px;}
.web-buscar input{width:100%;background:var(--void);border:1px solid var(--line);color:var(--bone);padding:8px 12px;border-radius:2px;font:inherit;font-size:13px;}
.web-buscar input:focus{outline:none;border-color:var(--ember);}
.web-panel-link{flex:none;font-size:12.5px;color:var(--ember-bright);border:1px solid var(--line);padding:6px 10px;border-radius:2px;}
.web-panel-link:hover{border-color:var(--ember);}
@media (max-width:900px){
  .web-topbar{flex-wrap:wrap;padding:10px 16px;gap:10px;}
  .web-nav{order:3;flex-basis:100%;overflow-x:auto;scrollbar-width:none;}
  .web-nav::-webkit-scrollbar{display:none;}
  .web-buscar{flex:1 1 140px;}
}

/* ---------- Pie ---------- */
.web-footer{flex-direction:column;gap:8px;text-align:center;}
.web-footer .wf-linea{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center;}
.web-footer a{color:var(--bone-dim);text-decoration:underline;text-underline-offset:2px;}
.web-footer a:hover{color:var(--ember-bright);}
.wf-aviso{max-width:70ch;margin:0;font-size:11px;line-height:1.5;color:var(--bone-dim);opacity:.8;}

/* ---------- Portada ---------- */
.inicio-accesos{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;margin:22px 0 8px;}
.acceso{display:flex;flex-direction:column;gap:4px;padding:14px 16px;background:var(--panel);border:1px solid var(--line);border-radius:2px;transition:border-color .15s;}
.acceso:hover{border-color:var(--ember);}
.acceso b{font-family:'Big Shoulders Display',sans-serif;font-size:17px;text-transform:uppercase;letter-spacing:.02em;color:var(--bone);}
.acceso span{font-size:12.5px;color:var(--bone-dim);}
.inicio-bloque{margin-top:34px;}
.ver-todo{font-size:12.5px;color:var(--ember-bright);}
.ver-todo:hover{text-decoration:underline;}
.hitos-mini{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:2px;background:var(--panel);}
.hitos-mini li{display:flex;gap:14px;align-items:baseline;padding:10px 14px;border-bottom:1px solid var(--line);}
.hitos-mini li:last-child{border-bottom:0;}
.hm-fecha{flex:none;min-width:92px;font-family:'JetBrains Mono',monospace;font-size:12.5px;color:var(--ember-bright);}
.hm-tit{font-size:14px;}
.hm-sin{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--bone-dim);border:1px dashed var(--line);padding:1px 6px;border-radius:2px;}

/* ---------- Calendario ---------- */
.cal-lista{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-direction:column;gap:12px;}
.cal-hito{display:grid;grid-template-columns:130px 1fr;gap:18px;padding:16px 18px;background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--ember);border-radius:2px;}
.cal-hito.cal-lanzamiento{border-left-color:var(--ember-bright);}
.cal-hito.cal-banda{border-left-color:var(--blood);}
.cal-hito.cal-pvp{border-left-color:#5b8fd6;}
.cal-hito.cal-contenido{border-left-color:var(--moss-bright);}
.cal-hito.es-pasado{opacity:.6;}
.cal-fecha{display:flex;flex-direction:column;gap:2px;}
.cal-fecha b{font-family:'Big Shoulders Display',sans-serif;font-size:22px;text-transform:uppercase;line-height:1.1;}
.cal-fecha span{font-size:12px;color:var(--bone-dim);font-family:'JetBrains Mono',monospace;}
.cal-cuerpo{min-width:0;}
.cal-tit{font-size:17px;margin:6px 0 4px;font-weight:600;}
.cal-tit a{color:var(--bone);text-decoration:underline;text-underline-offset:3px;}
.cal-cuerpo p{margin:0;font-size:13.5px;line-height:1.55;color:var(--bone-dim);max-width:70ch;}
@media (max-width:600px){.cal-hito{grid-template-columns:1fr;gap:8px;}}

/* ---------- Jefes ---------- */
.jefes-instancia{font-family:'Big Shoulders Display',sans-serif;font-size:19px;text-transform:uppercase;letter-spacing:.02em;margin:24px 0 8px;padding-bottom:6px;border-bottom:1px solid var(--line);}
.jefes-columnas{list-style:none;margin:0;padding:0;columns:3 200px;column-gap:24px;}
.jefes-columnas li{break-inside:avoid;padding:4px 0;font-size:14px;}
.jefes-columnas a:hover{color:var(--ember-bright);text-decoration:underline;}

/* ---------- Buscar, avisos, legales, login ---------- */
.buscar-grande{display:flex;gap:10px;margin:8px 0 24px;flex-wrap:wrap;}
.buscar-grande input{flex:1 1 260px;min-width:0;background:var(--void);border:1px solid var(--line);color:var(--bone);padding:12px 14px;border-radius:2px;font:inherit;font-size:15px;}
.buscar-grande input:focus{outline:none;border-color:var(--ember);}
.buscar-fichas{margin-bottom:28px;}
.aviso-borrador{background:rgba(201,121,58,.12);border:1px solid var(--ember);color:var(--ember-bright);padding:10px 14px;border-radius:2px;margin-bottom:18px;font-size:13.5px;}
.texto-legal{max-width:75ch;}
.login-wrap{display:flex;justify-content:center;padding:40px 0;}
.login-card .title{margin:12px 0 26px;}
.login-card .mz-check{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--bone-dim);margin-bottom:16px;}
.login-card .btn-primary{width:100%;}
