.auth-nav{display:flex;gap:10px;align-items:center;font-size:13px;font-weight:700}.auth-nav a{padding:10px 14px;border-radius:24px}.auth-main{max-width:560px;margin:0 auto;padding:48px 24px 64px;display:flex;justify-content:center;align-items:center;min-height:calc(100svh - 210px)}.auth-card{width:100%;min-width:0;background:#fffdf9;border:1px solid #dedfd4;border-radius:20px;padding:32px;box-shadow:0 15px 40px #30264208}.auth-card h2{font-size:26px;margin:0 0 10px}.auth-sub{font-size:13px;color:#6e736a;line-height:1.7;margin:0 0 26px}.field{margin:0 0 20px}.field label{display:block;font-size:13px;font-weight:700;margin-bottom:8px}.field input{width:100%;min-width:0;padding:13px 14px;border:1px solid #cdd0c3;border-radius:8px;background:white;font:inherit;font-size:15px;color:var(--ink)}.field input:focus{outline:2px solid #bca4e5;outline-offset:2px}.input-row{display:flex;gap:8px}.check-button,.secondary-button{border:1px solid #cbbbe5;background:#f2edf9;color:#65479f;border-radius:8px;white-space:nowrap;padding:10px 13px;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.field-help{margin:7px 0 0;font-size:11px;line-height:1.6;color:#72786a;letter-spacing:0}.check-status{font-size:12px;margin:6px 0 0;min-height:17px}.good{color:#367445}.bad{color:#a63838}.auth-submit{width:100%;justify-content:center;background:var(--purple);color:white;margin-top:10px;cursor:pointer}.auth-submit:hover{background:#6441b3}.form-message{font-size:13px;line-height:1.8;white-space:pre-line;border-radius:8px;padding:12px;background:#f1eee6;margin:18px 0 0;overflow-wrap:anywhere}.form-message:empty{display:none}.auth-links{display:flex;justify-content:center;gap:18px;font-size:12px;margin-top:23px;color:#6747ae}.auth-links a{text-decoration:underline;text-underline-offset:4px}.auth-card details{margin-top:24px;border-top:1px solid var(--line);padding-top:18px}.auth-card summary{cursor:pointer;font-size:13px;font-weight:700;color:#6747ae}.auth-card details .field{margin-top:17px}.captcha-box{min-height:70px;margin:8px 0}.profile-list{margin:22px 0}.profile-list div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:15px 0}.profile-list dt{font-size:13px;color:#70786a}.profile-list dd{margin:0;font-size:14px;font-weight:bold;overflow-wrap:anywhere}.auth-card button:disabled{opacity:.5;cursor:wait}.auth-card [hidden]{display:none!important}.password-row{position:relative}.password-row input{padding-right:60px}.show-password{position:absolute;right:9px;top:9px;padding:6px;border:0;background:none;font-size:12px;color:#6747ae;cursor:pointer}
@media(max-width:760px){.auth-main{padding:28px 18px 48px}.auth-card{padding:25px 20px}header{flex-wrap:wrap;gap:14px}.auth-nav{margin-left:auto}.auth-nav a{padding:8px 11px;font-size:12px}.auth-main .eyebrow{justify-content:flex-start}.input-row{gap:7px}.check-button{padding:10px}.captcha-box{overflow:hidden}.auth-main h1{letter-spacing:-.05em}}

.auth-nav .auth-logout{appearance:none;border:0;border-radius:0;background:transparent;box-shadow:none;padding:10px 14px;font:inherit;color:inherit;cursor:pointer}.auth-nav .auth-logout:hover{background:transparent}.auth-nav .auth-logout:disabled{opacity:.5;cursor:wait}.auth-nav a:focus-visible,.auth-nav .auth-logout:focus-visible{outline:2px solid #bca4e5;outline-offset:3px}@media(max-width:760px){.auth-nav .auth-logout{padding:8px 11px;font-size:12px}}

/* Keep decorative overflow from moving the page sideways on touch screens. */
html,body{max-width:100%;overflow-x:hidden}
@supports(overflow:clip){html,body{overflow-x:clip}}
#home-auth{min-width:0;justify-content:flex-end;flex-wrap:nowrap}
#home-auth .home-account{min-width:0;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#home-auth a,#home-auth .auth-logout{flex-shrink:0;white-space:nowrap}
@media(max-width:760px){
 .home-header{height:auto;min-height:104px;padding:12px 6%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;align-items:center}
 .home-header .brand{min-width:0;font-size:28px;white-space:nowrap}
 .home-header .brand small{font-size:7px;letter-spacing:1px;margin-left:8px}
 .home-header .brand .brand-icon{width:30px;height:30px;margin-right:7px}
 .home-header #home-auth{margin:0;gap:8px;max-width:150px}
 .home-header #home-auth a,.home-header #home-auth .auth-logout{padding:8px 0;font-size:12px}
 .home-header #home-auth .home-account{max-width:88px;font-size:12px}
 .home-header>nav{grid-column:1/-1;grid-row:2;justify-content:center;gap:28px;width:100%;padding:3px 0;font-size:12px}
 .hero>*{min-width:0}
 .hero-art{overflow:clip}
}
@media(max-width:360px){
 .home-header{padding-inline:16px;column-gap:8px}
 .home-header .brand{font-size:25px}
 .home-header .brand small{font-size:6px;margin-left:6px}
 .home-header .brand .brand-icon{width:26px;height:26px;margin-right:6px}
 .home-header #home-auth{max-width:130px;gap:7px}
 .home-header #home-auth .home-account{max-width:68px}
}

/* Top row contains only the logo and account controls at every width. */
header.home-header{display:flex;flex-wrap:nowrap;justify-content:space-between;gap:16px}
.home-header>.brand{flex-shrink:0}
@media(max-width:760px){header.home-header{height:auto;min-height:104px;padding:12px 6%;gap:10px}.home-header #home-auth{flex:1 1 auto;min-width:0;margin-left:auto}.home-header #home-auth .home-account{flex-shrink:1}}
@media(max-width:360px){header.home-header{padding-inline:16px;gap:8px}}

/* Display name is plain text; account actions remain separate controls. */
#home-auth span.home-account{display:block;flex:0 1 auto;padding:0;background:none;border:0;color:inherit}
#home-auth .auth-account-link{flex-shrink:0;white-space:nowrap}
