/* Public Figma 262:7403 / 262:13133 (login), 262:7969 / 262:8640 (recovery card).
   Authentication preserves the shared server-side forms; login has its own Figma shell. */
.ams-auth{color:#2d2d2f;font-family:'IBM Plex Sans',Arial,sans-serif;font-size:18px;line-height:1.5;background-color:#fff8cf;background-image:linear-gradient(180deg,#ffffffd9,#ffffff80),url('status/grid.png');background-size:100% 100%,2000px 2000px;background-position:center top;background-repeat:no-repeat;border-radius:24px;padding:72px 60px}
.ams-auth-login{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);align-items:center;gap:clamp(40px,7vw,105px)}
.ams-auth-copy{min-width:0}.ams-auth h1{font-family:Inter,Arial,sans-serif;font-size:clamp(32px,3vw,48px);font-weight:700;line-height:1.18;letter-spacing:-.04em;margin:0 0 24px}
.ams-auth-lead{font-size:20px;line-height:1.5;margin:0 0 36px;max-width:490px}
.ams-auth-form{display:flex;flex-direction:column;gap:12px;min-width:0}
.ams-auth-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ams-auth-form input:not([type=hidden]){background:#fff;color:#2d2d2f;min-width:0;min-height:54px;padding:14px 20px;border:1px solid transparent;border-radius:8px;font:400 18px/1.4 'IBM Plex Sans',Arial,sans-serif}
.ams-auth-form input::placeholder{color:#737379;opacity:1}
.ams-auth-form input[aria-invalid=true]{border-color:#b33232}
.ams-auth-form button{min-height:54px;border:1px solid transparent;border-radius:8px;padding:13px 20px;font:500 18px/1.4 'IBM Plex Sans',Arial,sans-serif;cursor:pointer;background:#ffef68;color:#202020}
.ams-auth-form button:hover{background:#ffe646}
.ams-auth-actions{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:16px;align-items:center}
.ams-auth-actions a{text-align:center;color:#262626;text-decoration:none;font-weight:500;font-size:16px}
.ams-auth a:hover{text-decoration:underline;text-underline-offset:3px}
.ams-auth :focus-visible{outline:3px solid #846300;outline-offset:3px}
.ams-auth-note{margin:18px 0 0;color:#676249;font-size:14px;line-height:1.55}
.ams-auth-benefits{min-width:0;display:flex;flex-direction:column;gap:30px;padding:38px;background:#fff;border-radius:24px}
.ams-auth-benefits h2{font-family:Inter,Arial,sans-serif;font-size:21px;font-weight:700;line-height:1.35;letter-spacing:-.025em;margin:0 0 10px}
.ams-auth-benefits p{font-size:17px;line-height:1.5;margin:0;color:#444}
.ams-auth-recovery{display:grid;place-items:center;min-height:540px}
.ams-auth-card{background:#fff;border-radius:24px;padding:40px;width:100%;max-width:500px;min-width:0}
.ams-auth-card h1{font-size:30px;line-height:1.25;letter-spacing:-.025em;margin-bottom:20px}
.ams-auth-intro{font-size:17px;margin:0 0 24px}
.ams-auth-card .ams-auth-form input:not([type=hidden]){border-color:#d8d8dc}
.ams-auth-card .ams-auth-form input[aria-invalid=true]{border-color:#b33232}
.ams-auth-form .ams-auth-error{margin:0;color:#a52828;font-size:14px;line-height:1.4;overflow-wrap:anywhere}
.ams-auth-back{display:block;text-align:center;color:#555;font-size:15px;padding:6px 0}
@media(max-width:1000px){.ams-auth{padding:48px 32px}.ams-auth-login{gap:32px}.ams-auth-benefits{padding:30px}.ams-auth h1{font-size:36px}.ams-auth-lead{font-size:18px}.ams-auth-card h1{font-size:28px}}
@media(max-width:760px){.ams-auth-login{grid-template-columns:1fr;gap:32px}.ams-auth-copy{max-width:560px;width:100%;margin:auto}.ams-auth-benefits{max-width:560px;width:100%;margin:auto}.ams-auth-recovery{min-height:460px}}
@media(max-width:560px){.ams-auth{padding:32px 20px;border-radius:18px;background-size:100% 100%,1400px 1400px;font-size:16px}.ams-auth h1{font-size:32px;line-height:1.2;margin-bottom:20px}.ams-auth-lead{font-size:18px;margin-bottom:30px}.ams-auth-form input:not([type=hidden]){font-size:16px;min-height:52px;padding:13px 16px}.ams-auth-form button{font-size:16px;min-height:52px}.ams-auth-actions{grid-template-columns:1fr 1fr;gap:12px}.ams-auth-actions a{font-size:15px}.ams-auth-note{font-size:13px}.ams-auth-benefits{padding:26px;gap:28px;border-radius:20px}.ams-auth-benefits h2{font-size:20px}.ams-auth-benefits p{font-size:16px}.ams-auth-recovery{padding:28px 16px;min-height:0}.ams-auth-card{padding:28px 22px;border-radius:20px}.ams-auth-card h1{font-size:25px}.ams-auth-intro{font-size:16px}}
/* Live Figma 262:7403 / 262:13133. D63 keeps certificates outside the portal;
   the three real benefits and first-access guidance intentionally remain. */
.auth-login-shell{position:relative;isolation:isolate;background:linear-gradient(180deg,#fff,#fff498);overflow:clip}
.auth-login-shell::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:url('home-static/hero-grid-live.png') center/cover no-repeat;opacity:.15;mask:url('auth/grid-mask-desktop.svg') center/100% 100% no-repeat}
.auth-login-header{position:relative;z-index:1}
.auth-login-header>div{max-width:1230px;min-height:96px;padding:20px 30px 30px;margin:auto}
.auth-login-header .brand{width:max-content}
.auth-login-header .brand img{width:140.489px;height:46.0029px;display:block}
.public-shell.auth-login-page .main{position:relative;z-index:1;max-width:none;padding:0;margin:0}
.auth-login-page .main>.notice{width:calc(100% - 60px);max-width:1170px;margin:20px auto}
.auth-login-page .ams-auth-login{position:relative;width:calc(100% - 60px);max-width:1170px;min-height:690px;margin:0 auto;padding:64px 0 90px;border-radius:0;background:none;grid-template-columns:minmax(0,570fr) minmax(0,470fr);align-items:start;gap:130px}
.ams-auth-login .ams-auth-copy{padding-top:30px}
.ams-auth-login h1{max-width:480px;font-size:52px;line-height:1.21;margin:0 0 20px;letter-spacing:-.04em}
.ams-auth-login .ams-auth-lead{max-width:570px;font-size:20px;line-height:1.5;margin:0 0 40px}
.ams-auth-login .ams-auth-form{max-width:470px;gap:10px}
.ams-auth-login .ams-auth-form input:not([type=hidden]){height:52px;min-height:52px;border:0;padding:0 20px;font-size:16px;line-height:1.4}
.ams-auth-login .ams-auth-form input::placeholder{color:#6f6f75}
.ams-auth-login .ams-auth-form input[aria-invalid=true]{box-shadow:inset 0 0 0 1px #b33232}
.ams-auth-login .ams-auth-form button{height:52px;min-height:52px;padding:0 25px;border:0;font-size:16px;color:#2d2d2f}
.ams-auth-login .ams-auth-actions{grid-template-columns:minmax(0,1fr) 185px;gap:0}
.ams-auth-login .ams-auth-actions a{display:flex;align-items:center;justify-content:center;min-height:52px;padding:15px 20px;font-size:16px;line-height:1.4;color:#2d2d2f}
.ams-auth-login .ams-auth-note{max-width:470px;margin:10px 0 0;font-size:12px;line-height:1.5;color:#6f6f75}
.ams-auth-benefits-decoration{position:relative;min-width:0}
.ams-auth-benefits-decoration::before{content:"";position:absolute;width:682.43px;height:627.151px;left:calc(50% - 340.208px);top:-80.873px;background:url('auth/ribbon-desktop.svg') center/100% 100% no-repeat;transform:rotate(4.65deg);pointer-events:none}
.ams-auth-login .ams-auth-benefits{position:relative;width:100%;max-width:none;margin:0;padding:40px;gap:40px;border-radius:24px}
.ams-auth-benefit{display:flex;align-items:flex-start;gap:20px;min-width:0}
.ams-auth-benefit>div{min-width:0;flex:1}
.ams-auth-benefit-icon{display:grid;place-items:center;width:70px;height:70px;flex:none;border-radius:8px;background:#ffef68}
.ams-auth-benefit-icon .ams-auth-icon-desktop{display:block}
.ams-auth-benefit-icon .ams-auth-icon-mobile{display:none}
.ams-auth-login .ams-auth-benefits h2{font-size:20px;line-height:1.21;letter-spacing:-.02em;margin:0 0 12px}
.ams-auth-login .ams-auth-benefits p{font-size:16px;line-height:1.5;color:#2d2d2f}
.auth-login-page .site-footer{margin-top:0;border-top:0}
.auth-login-page .site-footer-inner{padding-top:120px}
@media(max-width:1230px){.auth-login-page .ams-auth-login{gap:60px}.ams-auth-login h1{font-size:46px}.ams-auth-login .ams-auth-benefits{padding:30px}.ams-auth-benefit{gap:16px}}
@media(max-width:1000px){.auth-login-page .ams-auth-login{max-width:570px;grid-template-columns:1fr;gap:40px;padding-top:40px;min-height:0}.ams-auth-login .ams-auth-copy{padding-top:0}.ams-auth-login .ams-auth-form,.ams-auth-login .ams-auth-note{max-width:none}.ams-auth-benefits-decoration{width:100%;max-width:470px;margin:auto}}
@media(max-width:760px){
 .auth-login-shell::before{mask-image:url('auth/grid-mask-mobile.svg')}
 .auth-login-header>div{min-height:78px;padding:20px 15px 12px}
 .auth-login-page .main>.notice{width:calc(100% - 30px)}
 .auth-login-page .ams-auth-login{width:calc(100% - 30px);max-width:560px;min-height:0;padding:47px 0 60px;gap:30px}
 .ams-auth-login h1{max-width:336px;font-size:32px;line-height:1.21875;margin-bottom:12px}
 .ams-auth-login .ams-auth-lead{font-size:16px;line-height:1.5;margin-bottom:30px}
 .ams-auth-benefits-decoration{max-width:none}
 .ams-auth-benefits-decoration::before{width:542.008px;height:504.001px;left:calc(50% - 271.004px);top:-17px;background-image:url('auth/ribbon-mobile.svg');transform:none}
 .ams-auth-login .ams-auth-benefits{padding:20px;gap:30px;border-radius:20px}
 .ams-auth-benefit{gap:12px}
 .ams-auth-benefit-icon{width:48px;height:48px}
 .ams-auth-benefit-icon .ams-auth-icon-desktop{display:none}
 .ams-auth-benefit-icon .ams-auth-icon-mobile{display:block}
 .ams-auth-login .ams-auth-benefits p{font-size:14px}
 .auth-login-page .site-footer-inner{padding-top:60px}
}
/* Recovery card from live Figma 262:7969 / 262:8640, adapted to the existing
   standalone route. Its background, return link and truthful copy stay intact. */
.public-shell.auth-recovery-page .main{max-width:1230px;padding-left:30px;padding-right:30px}
.ams-auth-recovery .ams-auth-card{max-width:570px;padding:50px;border-radius:24px}
.ams-auth-recovery .ams-auth-card h1{font-size:32px;line-height:1.21;letter-spacing:-.04em;margin-bottom:20px}
.ams-auth-recovery .ams-auth-intro{max-width:311px;font-size:14px;line-height:1.5;margin-bottom:20px}
.ams-auth-recovery .ams-auth-form{gap:10px}
.ams-auth-recovery .ams-auth-form input:not([type=hidden]){height:52px;min-height:52px;border:1px solid #d9d9d9;padding:0 20px;font-size:16px;line-height:1.4}
.ams-auth-recovery .ams-auth-form input::placeholder{color:#6f6f75}
.ams-auth-recovery .ams-auth-form input[aria-invalid=true]{border-color:#b33232}
.ams-auth-recovery .ams-auth-form button{min-height:52px;border:0;padding:14px 25px;font-size:16px;line-height:1.4;color:#2d2d2f}
.ams-auth-recovery .ams-auth-back{font-size:14px}
@media(max-width:760px){
 .public-shell.auth-recovery-page .main{padding-left:15px;padding-right:15px}
 .ams-auth.ams-auth-recovery{min-height:0;padding:40px 0;background:none}
 .ams-auth-recovery .ams-auth-card{max-width:360px;padding:30px;border-radius:20px}
 .ams-auth-recovery .ams-auth-card h1{font-size:24px;letter-spacing:-.02em}
 .ams-auth-recovery .ams-auth-intro{max-width:300px}
}
