/* Visible trainer behind a mandatory, non-dismissible login dialog. */
body:not(.afu-access-ready) .app { visibility:visible; }
#afu-access-gate[hidden] { display:none !important; }
#afu-access-gate { position:fixed;inset:0;z-index:9000;display:grid;place-items:center;overflow:auto;padding:24px;background:rgba(17,36,55,.55);color:#172b41;font:inherit; }
#afu-access-gate .afu-gate-card { width:min(100%,560px);padding:clamp(24px,5vw,42px);border:1px solid #d9e2eb;border-radius:20px;background:white;box-shadow:0 18px 70px rgba(10,23,37,.32); }
#afu-access-gate h1 {font-size:clamp(1.5rem,3.2vw,2.15rem);line-height:1.2;margin:0 0 18px;}
#afu-access-gate p {line-height:1.6;margin:0 0 20px;}
#afu-access-gate .afu-gate-actions {display:flex;flex-wrap:wrap;gap:12px;}
#afu-access-gate button {font:inherit;cursor:pointer;border-radius:9px;padding:11px 16px;border:1px solid #256e57;background:#fff;color:#164d3e;font-weight:650;}
#afu-access-gate button:first-child {background:#17684c;color:white;}
#afu-access-gate .afu-gate-small {font-size:.9rem;color:#536574;margin:22px 0 0;}
#afu-access-gate strong u { text-underline-offset: 3px; }
/* Authentication modal must always be above the mandatory welcome dialog. */
.afu-account-modal:not([hidden]) {z-index:10000 !important;}
