/* SiempreContesta - piezas de "app" (barra de abajo, aviso para instalar, bloque esencial) */
html{ scroll-padding-top:84px; }
.appbar{ display:none; }
.install-card{ display:none; }

/* Bloque "lo esencial" debajo de la portada (todas las pantallas) */
.esencial{ padding:8px 0 36px; }
.esencial-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.esencial-item{ display:flex; gap:12px; align-items:flex-start; background:var(--surface); border:1px solid var(--border); border-radius:16px; padding:16px; }
.esencial-item .ico{ font-size:26px; line-height:1; flex:none; }
.esencial-item p{ margin:0; font-size:15px; color:var(--ink-soft); }
.esencial-item b{ display:block; color:var(--ink); font-family:'Rubik',system-ui,sans-serif; font-size:16.5px; margin-bottom:2px; }
@media (max-width:760px){ .esencial-grid{ grid-template-columns:1fr; gap:10px; } }

/* Barra de acciones de abajo: en celulares y cuando se abre como app */
@media (max-width:760px){
  .appbar{ display:grid; }
  body{ padding-bottom:calc(74px + env(safe-area-inset-bottom)); }
}
.is-app .appbar{ display:grid; }
.is-app body{ padding-bottom:calc(74px + env(safe-area-inset-bottom)); }
.appbar{
  position:fixed; left:0; right:0; bottom:0; z-index:50;
  grid-template-columns:repeat(4,1fr);
  background:var(--dark); color:var(--on-dark);
  padding:6px 6px calc(6px + env(safe-area-inset-bottom));
  box-shadow:0 -6px 20px rgba(0,0,0,.18);
}
.appbar a{
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px;
  min-height:58px; border-radius:12px; text-decoration:none;
  color:var(--on-dark); font-family:'Nunito Sans',system-ui,sans-serif; font-weight:700; font-size:12px; text-align:center; line-height:1.15;
}
.appbar a .ico{ font-size:22px; line-height:1; }
.appbar a.main{ background:var(--accent); color:#fff; }
.appbar a:focus-visible{ outline:3px solid var(--accent); outline-offset:-3px; }

/* Aviso para instalar la app */
.install-card.show{
  display:flex; position:fixed; left:12px; right:12px; z-index:51;
  bottom:calc(84px + env(safe-area-inset-bottom));
  gap:12px; align-items:center;
  background:var(--surface); color:var(--ink); border:1px solid var(--border); border-radius:16px;
  padding:12px 12px 12px 14px; box-shadow:0 10px 30px rgba(0,0,0,.18);
}
@media (min-width:761px){ .install-card.show{ left:auto; right:20px; bottom:20px; max-width:380px; } }
.install-card img{ width:44px; height:44px; border-radius:11px; flex:none; }
.install-card .txt{ flex:1; font-size:14px; line-height:1.35; }
.install-card .txt b{ display:block; font-family:'Rubik',system-ui,sans-serif; font-size:15px; }
.install-card button{ font:inherit; cursor:pointer; }
.install-card .go{ background:var(--accent); color:#fff; border:0; border-radius:10px; padding:10px 14px; font-weight:700; }
.install-card .x{ background:none; border:0; color:var(--muted); font-size:22px; padding:4px 6px; line-height:1; }
