/* La ventana de acceso de la landing (2026-10-14): vidrio oscuro sobre la
   pagina, Apple en blanco con texto oscuro y Google en linea, como el acceso
   de la app. En el telefono sube desde abajo como una hoja. */
.acc-ov{--acc-bg:rgba(17,18,22,.94);--acc-borde:rgba(255,255,255,.09);--acc-t1:#f4f5f7;--acc-t2:#a3a8b1;--acc-t3:#757b85;--acc-mal:#ff8a65;--acc-ease:cubic-bezier(.23,1,.32,1);
  position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;
  background:rgba(4,4,6,.6);-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2);
  opacity:0;transition:opacity .2s var(--acc-ease)}
.acc-ov.on{opacity:1}
.acc-ov[hidden]{display:none}
.acc-card{position:relative;width:min(400px,100%);padding:36px 28px 24px;border-radius:28px;background:var(--acc-bg);border:1px solid var(--acc-borde);
  box-shadow:0 30px 80px rgba(0,0,0,.55);color:var(--acc-t1);text-align:center;
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue","Segoe UI",Roboto,Arial,sans-serif;
  transform:translateY(10px) scale(.98);transition:transform .24s var(--acc-ease)}
.acc-ov.on .acc-card{transform:none}
.acc-x{position:absolute;top:14px;right:14px;width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:50%;background:rgba(255,255,255,.07);color:#c9ccd2;cursor:pointer;transition:background .15s}
.acc-x:hover{background:rgba(255,255,255,.12)}
.acc-x svg{width:18px;height:18px}
.acc-marca{display:flex;justify-content:center;margin:2px 0 18px;color:#fff}
.acc-marca svg{width:92px;height:auto}
.acc-t{margin:0 0 6px;font-size:24px;line-height:1.15;font-weight:700;letter-spacing:-.01em;text-wrap:balance}
.acc-p{margin:0 0 22px;color:var(--acc-t2);font-size:15px;line-height:1.45}
.acc-botones{display:grid;gap:10px}
.acc-b{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:52px;padding:0 16px;border-radius:16px;border:1px solid rgba(255,255,255,.18);
  background:transparent;color:var(--acc-t1);font-family:inherit;font-size:16px;font-weight:600;cursor:pointer;
  transition:transform .16s var(--acc-ease),background .15s,opacity .15s}
.acc-b svg{width:20px;height:20px;flex:none}
.acc-b:hover{background:rgba(255,255,255,.06)}
.acc-b:active{transform:scale(.97)}
.acc-b-p{background:#fff;border-color:#fff;color:#08090b}
.acc-b-p:hover{background:#eceef1}
.acc-b:disabled{opacity:.55;cursor:default;transform:none}
.acc-x:focus-visible,.acc-b:focus-visible,.acc-legal a:focus-visible{outline:2px solid #fff;outline-offset:3px}
.acc-estado{min-height:20px;margin:14px 0 0;font-size:14px;line-height:1.4;color:#c9ccd2}
.acc-estado.mal{color:var(--acc-mal)}
.acc-estado:empty{min-height:0;margin:8px 0 0}
.acc-legal{margin:12px 0 0;font-size:13px;line-height:1.5;color:var(--acc-t3)}
.acc-legal a{color:#e9ebee;text-decoration:underline;text-underline-offset:2px}
.acc-privy{margin:14px 0 0;font-size:12px;color:#5f656f}
html.acc-abierto{overflow:hidden}
/* Mientras entra: una linea que recorre el borde de arriba de la tarjeta */
.acc-card::before{content:"";position:absolute;top:0;left:28px;right:28px;height:2px;border-radius:2px;background:linear-gradient(90deg,transparent,#fff,transparent);background-size:40% 100%;background-repeat:no-repeat;opacity:0;transition:opacity .2s}
.acc-card.acc-entrando::before{opacity:1;animation:acc-barra 1.2s ease-in-out infinite}
@keyframes acc-barra{from{background-position:-40% 0}to{background-position:140% 0}}
/* La pagina de vuelta del login: solo la tarjeta sobre negro */
body.acc-vuelta .acc-ov{background:#080808;-webkit-backdrop-filter:none;backdrop-filter:none}
html.acc-puente body{opacity:0}
@media (max-width:480px){
  .acc-ov{align-items:flex-end;padding:0}
  .acc-card{width:100%;border-radius:28px 28px 0 0;padding:32px 20px calc(22px + env(safe-area-inset-bottom));transform:translateY(24px)}
}
@media (prefers-reduced-motion:reduce){.acc-ov,.acc-card,.acc-b{transition:none}.acc-card.acc-entrando::before{animation:none;opacity:.5;background-size:100% 100%}}
/* El aviso de cuenta borrada (2026-10-28, acceso.js): una pastilla de vidrio abajo, 6 s */
.acc-aviso{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));z-index:1001;width:max-content;max-width:calc(100vw - 32px);box-sizing:border-box;
  padding:12px 18px;border-radius:999px;background:rgba(17,18,22,.94);border:1px solid rgba(255,255,255,.12);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 18px 50px rgba(0,0,0,.5);
  color:#f4f5f7;font:600 15px/1.35 -apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue","Segoe UI",Roboto,Arial,sans-serif;text-align:center;
  opacity:0;transform:translate(-50%,12px);transition:opacity .2s cubic-bezier(.23,1,.32,1),transform .24s cubic-bezier(.23,1,.32,1)}
.acc-aviso.on{opacity:1;transform:translate(-50%,0)}
@media (prefers-reduced-motion:reduce){.acc-aviso{transition:none}}
/* La app de iOS y Android (2026-10-28): puente.js pone html.app solo dentro de la app. Alli no se
   ensenan las insignias "COMING SOON App Store / Google Play" de la cabecera ni el aviso que sale al
   tocarlas: ya estas en la app. En un navegador no casa nada y la landing sigue igual. */
html.app .store-badge,html.app [data-app-placeholder],html.app .app-download-note{display:none !important}
/* La app con Privy nativo (tanda 5, revision del 2026-10-28, puente.js W7): html.acc-nativo solo dentro de la
   app que pasa onMessage. Alli la landing nunca se ensena ni se toca: entrar es nativo y sus botones cargarian
   la isla web de Privy dentro del WebView. opacity (acc-puente, arriba) la dejaba invisible pero tocable y
   leible por VoiceOver; visibility la saca de los toques, del foco y del lector. acceso.js ademas no arranca.
   La unica linea visible es .acc-atasco, si la app no la cambia en 20 s: por eso opacity vuelve a 1 (con 0,
   la de acc-puente, ningun hijo se veria). En un navegador no casa nada. */
html.acc-nativo body{visibility:hidden;pointer-events:none;opacity:1}
html.acc-nativo .acc-atasco{visibility:visible;position:fixed;left:16px;right:16px;top:50%;transform:translateY(-50%);margin:0;
  text-align:center;color:#c9ccd2;font:600 17px/1.4 -apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue","Segoe UI",Roboto,Arial,sans-serif}
