/* css/mobile.css — Celular acostado / pantallas táctiles bajas: blancos táctiles de 40 px o más, texto de
   11 px o más y el botón principal de cada pantalla siempre a la vista. Solo agranda lo que en el
   teléfono quedaba chico (auditoría: tools/audit/ui_layout.js); el escritorio no cambia.
   Se carga al final: a igual especificidad, estas reglas mandan sobre las de los otros archivos. */
@media (max-height:500px), (pointer:coarse) and (max-height:760px){

  /* ---------- blancos táctiles (mínimo 40 px) ---------- */
  .btn{ min-height:42px; }
  .btn.small{ padding-top:6px; padding-bottom:6px; }
  .hub-tab, .shop-tab{ min-height:42px; }
  .shop-btn{ min-height:40px; }
  .inv-chip{ min-height:40px; padding:4px 12px; border-radius:20px; }
  .inv-filters select{ min-height:40px; }
  .inv-slot button{ min-height:40px; min-width:72px; }
  .inv-card button{ min-height:40px; }
  .fuse-row button, .vic-item-actions button, .ip-upg-btn{ min-height:40px; }
  .ip-actions button{ min-height:42px; }
  .mastery-plus{ width:40px; height:40px; }
  .net-name input, #title-join-name input{ min-height:40px; }
  .net-code-input{ min-height:42px; }
  .pause-audio input[type=range]{ height:40px; }
  /* "abrir Mi Inventario": vínculo dentro de una línea de texto; más área de toque sin mover el renglón */
  .inv-capacity a{ display:inline-block; padding:14px 6px; margin:-14px -6px; }
  /* HUD: pausa y sonido. Arriba no hay lugar para botones más altos (panel de vida y cartel de la arena):
     el área de toque crece con un borde transparente y el botón se ve igual que antes (mismo lugar y tamaño). */
  #pause-btn, #mute-btn{ border:7px solid transparent; border-width:7px 4px; background-clip:padding-box; border-radius:12px 11px;
    box-shadow:inset 0 0 0 1px var(--panel-b); padding:5px 11px; top:calc(3px + env(safe-area-inset-top,0px)); }
  #pause-btn{ left:calc(166px + env(safe-area-inset-left,0px)); }
  #mute-btn{ left:calc(220px + env(safe-area-inset-left,0px)); }
  /* Códice */
  .cx-back, .cx-crumb, .cx-chip, .cx-link, .cx-group-head{ min-height:40px; }
  .cx-crumb{ min-width:40px; }

  /* ---------- botón principal siempre a mano (pegado abajo al scrollear, como "Comenzar" en la Sala) ---------- */
  #start-btn, #resume-btn, #retry-btn, #victory-next-btn{
    position:sticky; bottom:calc(6px + env(safe-area-inset-bottom,0px)); z-index:6; flex-shrink:0;
    box-shadow:0 -6px 14px rgba(0,0,0,0.65), 4px 4px 0 #000;
  }
  /* Tienda: cabecera más compacta para que el primer "Comprar" entre sin scrollear */
  #shop-screen .arena-title{ margin-bottom:4px; }
  #shop-gold-line{ margin-top:0; margin-bottom:6px; }
  .shop-test-note{ margin:0 auto 6px; }
  /* derrota: el resultado en pixel grande ocupaba media pantalla en dos renglones */
  #go-stats{ font-size:1.1rem; }
  /* ficha del Hechicero y ficha de objeto: la tarjeta scrollea y el botón queda fijo abajo */
  #run-intro .ri-art{ flex-basis:32%; } /* un poco más de ancho para la tarjeta (el título en pixel ya no se parte) */
  #run-intro .ri-go{ position:sticky; bottom:0; z-index:2; box-shadow:0 -8px 12px rgba(14,9,6,0.95); }
  #item-preview .ip-actions{ position:sticky; bottom:-14px; /* el borde pegajoso se mide desde el padding del panel */ z-index:2; margin:12px -14px -14px; padding:8px 14px 10px;
    background:linear-gradient(180deg, rgba(15,8,5,0.85), #0f0805 40%); }

  /* ---------- texto (mínimo 11 px) ---------- */
  /* título, lobby y sala online */
  .build-tag{ font-size:0.7rem; }
  .arena-card-badge, .lobby-tag, .net-hint, .net-link, .net-off, .net-champ, .lobby-skin, .prep-skin-sub,
  .prep-equip-line, #net-chat .nc-chip, #net-chat .nc-notice{ font-size:0.72rem; }
  .starter-lore, .starter-skin-tag{ font-size:0.72rem; line-height:1.2; }
  /* tienda */
  .shop-champ-lore, .shop-skill, .shop-st, .shop-item-sub, .shop-eff, .shop-tier, .shop-set-theme,
  .shop-set-count, .shop-set-skin, .shop-bonus{ font-size:0.72rem; }
  /* inventario, equipo y fichas de objeto */
  .inv-slot, .inv-slot .slot-item-name, .inv-slot button, .inv-slot .slot-lv,
  .inv-card .item-stat, .inv-card .item-desc, .inv-card .item-passives, .inv-card .item-epithet, .inv-card button,
  .inv-capacity, .inv-chip, .inv-filters select, .set-panel .set-thr, .fuse-bar, .fuse-row button,
  .item-compare, .item-compare .compare-col-title{ font-size:0.72rem; }
  .inv-card .item-name{ font-size:0.78rem; }
  .set-badge, .inv-card .item-lv{ font-size:0.7rem; }
  .rc-power, .rc-part, .rc-where, .rc-owned, .col-title, .col-name, .col-hint{ font-size:0.72rem; }
  .ip-epi, .ip-tags, .ip-sec, .ip-h, .ip-sub, .ip-dup, .ip-piece, .ip-bonus, .ip-upg-btn{ font-size:0.72rem; }
  /* habilidades y talentos */
  .mastery-stats, .mastery-use, .evo-lines .evo, .talent-badge, .talent-lock-reason, .mastery-choice-card .mc-desc,
  .mastery-emblem, .tp-note, .tt-desc, .tt-eff, .tt-lock, .tt-syn, .tt-syn-row, .tt-respec, .mastery-syn, .tt-cost, .tt-fork-label, .tt-fork-or, .hub-meta.dim{ font-size:0.72rem; }
  .tt-rank{ font-size:0.7rem; line-height:13px; }
  /* pausa, victoria y cofre */
  .stat-block-title, .vic-party-title, .vic-item-actions button, .loot-card .loot-tier,
  .chest-name, .chest-skip, .loot-summary-note{ font-size:0.72rem; }
  /* Códice (tipografía pixel) */
  .cx-group-num, .cx-phase-n{ font-size:0.7rem; }
  /* el Hechicero */
  #run-intro .ri-who{ font-size:0.7rem; letter-spacing:0; overflow-wrap:break-word; } /* "EL HECHICERO SUPREMO" desbordaba a 667 px */
  #run-intro .ri-k, #buff-story .bs-who{ font-size:0.7rem; letter-spacing:0; }
  #run-intro .ri-go{ font-size:0.9rem; }
  /* historia (story.css): rótulos en pixel de 6-8 px, ilegibles en el teléfono; mínimo 11 px */
  #run-intro .ri-act, .story-vic .sv-k, .story-vic .sv-say b{ font-size:0.7rem; letter-spacing:1px; line-height:1.4; }
  /* casilla "Reducir movimiento" de la pausa: mínimo 40 px en el celular */
  .pause-motion input[type=checkbox]{ width:40px; height:40px; margin:0 0 0 6px; accent-color:var(--ember1); vertical-align:middle; }
  /* Mística (botón dentro del renglón del afijo) y rótulo de quién habla en el Campamento */
  #item-preview .afx-reroll-btn{ min-height:40px; font-size:0.85rem; padding:2px 8px; } /* (loot.css carga después: más específico) */
  #camp .camp-box-who, #camp.act-card .camp-box-who{ font-size:0.6875rem; letter-spacing:1px; }
  /* sinergias y reinicio del árbol (panels.css) y casilla "Pública" de la sala online: mínimos del celular */
  .tt-syn-title, .tt-respec-btn{ font-size:0.7rem; }
  .net-pub-chk{ display:inline-flex; align-items:center; min-height:40px; }
  .net-pub-chk input[type=checkbox]{ width:40px; height:40px; margin:0 6px 0 0; accent-color:var(--ember1); }
}
/* Sala online: los botones de guardián y las frases rápidas del chat salían en la letra del sistema (Arial) */
.net-champ, #net-chat .nc-chip, #net-chat .nc-notice, #net-chat input{ font-family:var(--font-retro); }
@media (max-height:500px), (pointer:coarse) and (max-height:760px){
  .net-champ, #net-chat .nc-chip{ font-size:1rem; }
  /* "Comenzar" pegajoso deshabilitado (invitado esperando): era semitransparente y su texto se mezclaba con el chat */
  #prep-start-btn:disabled{ opacity:1; filter:none; background:#1c120c; color:var(--text-dim); }
}
