/* Auth-only refinements; preserve OTP, roles and guardian approval. */
.site-makeover .account-page{padding:44px 0 64px!important}
.site-makeover .account-page .shell{width:min(1120px,calc(100% - 64px));grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:36px!important;padding:0!important;align-items:start}
.site-makeover .account-page .intro{padding:34px!important;top:110px;border-radius:22px;min-width:0}
.site-makeover .account-page .intro h1{font-size:clamp(2rem,3.3vw,2.75rem);line-height:1.18;margin:16px 0 20px}
.site-makeover .account-page .intro p{font-size:.9rem;line-height:1.8}
.site-makeover .account-page .intro ul{margin:24px 0;gap:14px;font-size:.8rem;line-height:1.6}
.site-makeover .account-page .intro .safe{padding:18px;border:1px solid #ffffff24;border-radius:14px;background:#ffffff08;font-size:.75rem;line-height:1.7}
.site-makeover .account-page .card{padding:32px!important;min-width:0;border-radius:22px;border:1px solid #e5ddeb}
.auth-kicker{font-size:.65rem;text-transform:uppercase;letter-spacing:.14em;color:#856698;font-weight:750;margin-bottom:14px}
.site-makeover .account-page .tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;background:#f3edf7;border-radius:12px;margin:0 0 28px;border:0}
.site-makeover .account-page .tabs button{min-height:46px;border:0;border-radius:9px;color:#6e587f;background:transparent;font-size:.85rem;font-weight:700}
.site-makeover .account-page .tabs button.active{background:white;color:#62428b;box-shadow:0 2px 7px #3523460a}
.site-makeover .account-page .account-type-heading{font-size:.7rem;font-weight:700;color:#74677f;margin-bottom:10px}
.site-makeover .account-page .account-types{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px;margin:0 0 26px}
.site-makeover .account-page .account-type{padding:14px;min-height:88px;display:flex;gap:10px;align-items:flex-start;border-radius:13px;border:1px solid #e4d9ec;background:#fff;text-align:left;min-width:0}
.site-makeover .account-page .account-type.active{background:#f5eef9;border-color:#8964a7;box-shadow:0 0 0 1px #8964a7}
.site-makeover .account-page .account-type strong{font-size:.8rem;line-height:1.4}
.site-makeover .account-page .account-type small{font-size:.67rem;line-height:1.6;margin-top:4px;display:block}
.site-makeover .account-page .account-type-icon{flex:0 0 28px;width:28px;height:28px;border-radius:9px;background:#ece1f4;color:#795793;font-size:.75rem}
.site-makeover .account-page .account-type.coming{grid-column:1/-1;min-height:44px;padding:10px 14px;background:#faf8fc;border-style:dashed;box-shadow:none;opacity:1;align-items:center}
.site-makeover .account-page .account-type.coming>span:last-child{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px}
.site-makeover .account-page .account-type.coming small{margin:0;font-size:.64rem}
.site-makeover .account-page #formTitle{font-size:1.55rem;margin:0 0 10px;line-height:1.3}
.site-makeover .account-page .sub{font-size:.8rem;line-height:1.75;margin:0 0 22px;color:#817088}
.site-makeover .account-page form{padding:0!important;border:0;box-shadow:none;border-radius:0}
.site-makeover .account-page form>label,.site-makeover .account-page .profile-grid label{font-size:.74rem;font-weight:700;line-height:1.55}
.site-makeover .account-page input:not([type=checkbox]),.site-makeover .account-page select,.site-makeover .account-page textarea{font-size:.88rem;min-height:46px;padding:12px;border-radius:10px;margin-top:6px}
.site-makeover .account-page .profile-grid{gap:12px}
.auth-form-section{font-size:.9rem!important;margin:26px 0 10px;color:#62428b;line-height:1.5}
.site-makeover .account-page .subject-interests{margin:14px 0;padding:14px;border:1px solid #e5ddeb;border-radius:12px;min-width:0}
.site-makeover .account-page .subject-interests legend{font-size:.74rem;padding:0 6px}
.site-makeover .account-page .subject-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.site-makeover .account-page .subject-options label{min-height:44px;padding:9px;font-size:.68rem;border-radius:9px;line-height:1.5;min-width:0}
.auth-email-options{margin:22px 0;border:1px solid #e5ddeb;border-radius:12px;background:#faf8fc;padding:12px 14px}
.auth-email-options>summary{font-size:.75rem;font-weight:700;color:#62428b;cursor:pointer;min-height:44px;align-content:center;line-height:1.6}
.auth-email-options>summary small{display:block;font-size:.66rem;font-weight:500;color:#82718b}
.auth-email-options .signup-email-preferences{border:0;margin:12px 0 0;padding:0;background:none}
.auth-email-options .signup-email-preferences legend{display:none}
.site-makeover .account-page .check{font-size:.72rem;line-height:1.65;margin:20px 0;align-items:flex-start;gap:10px}
.site-makeover .account-page .check input{margin-top:4px;flex:0 0 18px}
.site-makeover .account-page :is(#sendButton,#verifyButton){width:100%;min-height:48px;border:0;border-radius:11px;background:#62428b;color:white;margin-top:12px;font-size:.84rem}
.site-makeover .account-page .signin-prompt{font-size:.75rem;text-align:center;margin:18px 0 0;line-height:1.7}
.site-makeover .account-page .text-button{min-height:44px;font-size:.75rem;color:#62428b}
.auth-verification-mark{width:52px;height:52px;background:#f0e7f7;color:#795793;border-radius:16px;display:grid;place-items:center;font-size:1.7rem;margin-bottom:16px}
.site-makeover .account-page #verify h2{font-size:1.75rem;line-height:1.3;margin:18px 0 12px}
.site-makeover .account-page #code{font-size:1.6rem;text-align:center;letter-spacing:.28em;min-height:64px;background:#faf7fc}
.site-makeover .account-page .alert{font-size:.78rem;line-height:1.7;overflow-wrap:anywhere;border-radius:11px}
@media(max-width:1100px){.site-makeover .account-page .shell{grid-template-columns:minmax(0,1fr)!important;max-width:700px!important}.site-makeover .account-page .intro{position:static}.site-makeover .account-page .intro h1{max-width:580px}.site-makeover .account-page .intro ul{grid-template-columns:1fr;gap:10px}}
@media(max-width:600px){.site-makeover .account-page{padding:24px 0 44px!important}.site-makeover .account-page .shell{width:calc(100% - 28px);gap:20px!important}.site-makeover .account-page .intro,.site-makeover .account-page .card{padding:22px!important}.site-makeover .account-page .intro h1{font-size:2rem!important;line-height:1.2!important}.site-makeover .account-page .account-types{grid-template-columns:minmax(0,1fr)!important}.site-makeover .account-page .account-type{min-height:72px;align-items:center}.site-makeover .account-page .profile-grid{grid-template-columns:minmax(0,1fr)}.site-makeover .account-page input:not([type=checkbox]),.site-makeover .account-page select,.site-makeover .account-page textarea{font-size:16px}.site-makeover .account-page .subject-options{grid-template-columns:minmax(0,1fr)}.site-makeover .account-page #verify h2{font-size:1.6rem!important}}

/* Centred account layout: brief introduction, then one focused form. */
.site-makeover .account-page .shell{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:min(760px,calc(100% - 48px));max-width:760px!important;gap:24px!important}
.site-makeover .account-page .intro{position:static!important;top:auto;padding:0 14px!important;background:none!important;box-shadow:none!important;text-align:center;border-radius:0;color:#352442}
.site-makeover .account-page .intro .kicker{color:#795793;font-size:.68rem;letter-spacing:.13em}
.site-makeover .account-page .intro h1{color:#352442!important;font-size:clamp(1.9rem,4vw,2.7rem)!important;line-height:1.22!important;margin:12px auto 16px;max-width:650px}
.site-makeover .account-page .intro p{color:#74677f!important;font-size:.88rem;line-height:1.8;max-width:590px;margin:0 auto}
.site-makeover .account-page .intro ul{display:flex!important;justify-content:center;flex-wrap:wrap;gap:8px 20px;margin:18px 0;font-size:.69rem;color:#695576!important;text-align:left}
.site-makeover .account-page .intro li{color:#695576!important;line-height:1.6}
.site-makeover .account-page .intro li:before{color:#795793}
.site-makeover .account-page .intro .safe{display:block;max-width:620px;margin:0 auto;padding:12px 16px;background:#f1ebf5;border:1px solid #e4d9ec;color:#74677f!important;font-size:.68rem;border-radius:12px;line-height:1.7}
.site-makeover .account-page .intro .safe strong{color:#62428b}
.site-makeover .account-page .intro .safe br{display:none}
.site-makeover .account-page .intro .safe strong:after{content:' '}
.site-makeover .account-page .card{padding:34px!important;box-shadow:0 12px 36px #35234608!important}
.site-makeover .account-page .auth-kicker{text-align:center}
.site-makeover .account-page .tabs{margin-bottom:24px}
.site-makeover .account-page #formTitle{margin-top:6px}
.site-makeover .account-page #verify{max-width:490px;margin:auto}
.site-makeover .account-page .auth-verification-mark{margin-inline:auto}
.site-makeover .account-page #verify h2,.site-makeover .account-page #verify>.sub{text-align:center}
@media(max-width:600px){.site-makeover .account-page .shell{width:calc(100% - 28px);gap:20px!important}.site-makeover .account-page .intro{padding:0 4px!important}.site-makeover .account-page .intro h1{font-size:1.85rem!important}.site-makeover .account-page .intro ul{gap:6px 14px;margin:14px 0}.site-makeover .account-page .intro .safe{padding:12px;font-size:.66rem}.site-makeover .account-page .card{padding:22px!important}}

.site-makeover .account-page #details .tabs{order:-1;margin-top:0}.site-makeover .account-page .account-types[hidden],.site-makeover .account-page .account-type-heading[hidden]{display:none!important}

.site-makeover .email-recovery{margin-top:28px;padding:18px;border:1px solid #e5ddeb;border-radius:12px;background:#f4eef8;color:#352346;min-width:0;overflow-wrap:anywhere}.site-makeover .email-recovery summary{font-weight:700;cursor:pointer;min-height:44px;display:list-item;line-height:1.6}.site-makeover .email-recovery h2{font-size:1.3rem;line-height:1.4;margin:18px 0 12px}.site-makeover .email-recovery p{font-size:.85rem;line-height:1.7}.site-makeover .email-recovery form{display:grid;gap:10px}.site-makeover .email-recovery input,.site-makeover .email-recovery textarea{box-sizing:border-box;width:100%;max-width:100%;min-width:0;font-size:16px}.site-makeover .email-recovery button{min-height:48px;white-space:normal}.site-makeover .email-recovery [role=alert]{color:#a02535}.site-makeover .email-recovery [role=status]{color:#352346}.site-makeover .email-recovery [hidden]{display:none!important}
