.masthead .academy-entry{display:flex;align-items:center;gap:16px;flex-shrink:0}
.masthead .nav-login{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 22px;border:1px solid #ffffff80;border-radius:2px;font-size:14px;font-weight:600;white-space:nowrap}
.masthead .nav-login:hover{background:#fff;color:var(--purple)}
.academy-login-open{overflow:hidden}
.academy-login-dialog{box-sizing:border-box;width:min(460px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:36px;border:1px solid #3c2c6333;border-radius:2px;background:var(--login-paper,#f5f4f1);color:var(--login-ink,#211a2d);overflow:auto;font-family:Fira,sans-serif}
.academy-login-dialog::backdrop{background:#211a2d99;backdrop-filter:blur(3px)}
.academy-login-close{position:absolute;top:12px;right:12px;width:40px;height:40px;border:0;background:transparent;color:var(--login-accent,#3c2c63);font-size:28px;cursor:pointer}
#academy-login-title{font-size:12px;color:var(--login-muted,#6a5d7e);padding-right:32px;margin:0 0 22px}
.academy-login-dialog .access-story,.academy-login-dialog .access-icon,.academy-login-dialog .access-kicker{display:none}
.academy-login-dialog h2{font-size:30px;line-height:1.4;margin:0 0 12px}
.academy-login-dialog .access-description{font-size:14px;line-height:1.7;color:var(--login-muted,#6a5d7e);margin:0 0 24px}
.academy-login-dialog .access-form{display:grid;gap:18px}
.academy-login-dialog .access-field{display:grid;gap:9px;font-size:14px;font-weight:600}
.academy-login-dialog input{width:100%;min-width:0;min-height:48px;border:1px solid #3c2c6340;border-radius:2px;padding:12px;background:#fff;color:var(--login-ink,#211a2d);font-size:16px}
.academy-login-dialog input:focus{outline:2px solid var(--login-accent,#3c2c63);outline-offset:2px}
.academy-login-dialog .access-password{position:relative;display:block}
.academy-login-dialog .access-password input{padding-right:48px}
.academy-login-dialog .access-eye{position:absolute;right:2px;top:2px;width:44px;height:44px;display:grid;place-items:center;background:transparent;border:0;color:var(--login-accent,#3c2c63);cursor:pointer}
.academy-login-dialog .access-primary,.academy-login-dialog .access-secondary{display:flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:12px 18px;background:var(--login-accent,#3c2c63);color:white;border:1px solid var(--login-accent,#3c2c63);border-radius:2px;font-weight:600;cursor:pointer}
.academy-login-dialog .access-secondary{background:transparent;color:var(--login-accent,#3c2c63)}
.academy-login-dialog button:disabled{opacity:.6;cursor:wait}
.academy-login-dialog .access-link{display:inline-block;background:transparent;border:0;padding:0;margin-top:18px;color:var(--login-accent,#3c2c63);text-decoration:underline;text-underline-offset:4px;font-size:13px;cursor:pointer}
.academy-login-dialog .access-telegram{margin-top:24px;border-top:1px solid #3c2c6325;padding-top:18px;font-size:13px}
.academy-login-dialog .access-telegram summary{cursor:pointer}
.academy-login-dialog .access-telegram p{margin:12px 0}
.academy-login-dialog .access-telegram form{display:grid;gap:16px}
.academy-login-dialog .access-help{font-size:12px;line-height:1.7;color:var(--login-muted,#6a5d7e);margin-top:22px}
.academy-login-dialog .access-error{font-size:13px;color:#a52d35;background:#fbecef;border:1px solid #a52d3530;padding:12px;line-height:1.6}
.academy-login-dialog [hidden]{display:none!important}
@media(max-width:1100px){.masthead{gap:18px}.masthead nav{gap:18px}}
@media(max-width:720px){.masthead .academy-entry{gap:10px}.masthead .nav-login{padding:10px 13px;font-size:13px}.academy-login-dialog{padding:32px 24px}.academy-login-dialog h2{font-size:26px}}

@media(max-width:380px){.masthead>a img{width:135px}.masthead{gap:10px}.masthead .nav-login{padding:10px}.masthead .academy-entry{gap:8px}}

/* Account entry belongs to the same restrained interface as the learning space. */
.academy-login-dialog{border-radius:20px;box-shadow:0 18px 56px #211a2d35;padding:36px}.academy-login-close{width:44px;height:44px;border-radius:10px}.academy-login-dialog .access-form input,.academy-login-dialog .access-primary,.academy-login-dialog .access-secondary{border-radius:10px;min-height:50px;font-size:16px}.academy-login-dialog .access-link{min-height:44px;display:inline-flex;align-items:center;margin-top:8px}.academy-login-dialog .access-help{font-size:13px}.academy-login-dialog .access-support{border-top:1px solid #3c2c6322;padding-top:16px}.academy-login-dialog .access-support a{color:var(--login-accent,#3c2c63)}.academy-login-dialog .access-error{border-radius:10px}.academy-login-dialog :is(a,button,input):focus-visible{outline:3px solid var(--login-accent,#3c2c63);outline-offset:3px}.academy-login-dialog .access-primary:disabled{cursor:wait;opacity:.7}@media(max-width:480px){.academy-login-dialog{padding:30px 22px;border-radius:18px}.academy-login-dialog h2{font-size:27px}}
