.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:#f5f4f1;color:#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:#3c2c63;font-size:28px;cursor:pointer}
#academy-login-title{font-size:12px;color:#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:#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:#211a2d;font-size:16px}
.academy-login-dialog input:focus{outline:2px solid #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:#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:#3c2c63;color:white;border:1px solid #3c2c63;border-radius:2px;font-weight:600;cursor:pointer}
.academy-login-dialog .access-secondary{background:transparent;color:#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:#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:#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}}
