/* Access and activation use the product's readable 14/16 px control scale. */
html:root body:is(.msp-access,.msp-onboarding){font-size:16px!important;line-height:1.55!important}
html:root body.msp-access .card :is(p,label,.note,.hint,.back,a:not(.password-toggle)){font-size:14px!important;line-height:1.55!important}
html:root body.msp-access .card :is(input,select){font-size:16px!important}
html:root body.msp-onboarding :is(p,label,.small,.hint,.status,.status-ok,.done,.error,.num,.helper,.notice,.intro p){font-size:14px!important;line-height:1.55!important}
html:root body.msp-onboarding :is(a,button){font-family:var(--msp-font)!important;font-size:14px!important;line-height:1.5!important}
html:root body.msp-onboarding :is(input,select){font-size:16px!important;min-height:44px!important}
html:root body.msp-onboarding :is(header,.top,.topbar) a,html:root body.msp-onboarding a[href*=logout],html:root body.msp-onboarding button[onclick*=logout]{display:inline-flex;align-items:center;min-height:40px;padding:6px 10px}
html:root body.msp-onboarding .card h3{font-size:18px!important;line-height:1.4!important}
html:root body.msp-onboarding .mag-live-steps :is(li,small,b){font-size:14px!important;line-height:1.5!important}
html:root body.msp-onboarding .mag-live-count{font-size:14px!important}
@media(max-width:600px){html:root body.msp-access .card{padding:22px 18px!important}.msp-onboarding .mag-live-steps li>span{flex-wrap:wrap}}

html:root body.msp-onboarding .mag-live-next h2{font-family:var(--msp-font)!important}

/* One help component for phone and account type, anchored to the field label. */
html:root body.msp-access .card :is(.phone-label-row,.msp-account-label){display:flex;align-items:center;gap:8px;position:relative;margin:16px 0 7px}
html:root body.msp-access .card :is(.phone-label-row,.msp-account-label) label{margin:0!important}
html:root body.msp-access .card :is(.phone-help-bubble,.msp-account-help){position:static;margin:0}
html:root body.msp-access .card :is(.phone-help-bubble,.msp-account-help) summary{display:grid;place-items:center;width:28px;height:28px;min-height:28px;border-radius:50%;cursor:pointer;color:var(--msp-muted);font-size:18px;list-style:none}
html:root body.msp-access .card :is(.phone-help-bubble,.msp-account-help) summary::-webkit-details-marker{display:none}
html:root body.msp-access .card :is(.phone-help-bubble,.msp-account-help) summary:focus-visible{outline:2px solid var(--msp-link);outline-offset:2px}
html:root body.msp-access .card :is(.phone-help-bubble,.msp-account-help)[open] summary{background:var(--msp-soft);color:var(--msp-ink)}
html:root body.msp-access .card :is(.phone-help-bubble .phone-help,.msp-account-help .account-hint){position:absolute;z-index:20;left:0;top:calc(100% + 4px);width:min(300px,100%)!important;max-width:100%!important;box-sizing:border-box;margin:0!important;padding:12px 14px;background:var(--msp-soft,#f0f2e8);color:var(--msp-muted);border:1px solid var(--msp-line,#dce0d4);border-radius:10px;box-shadow:0 4px 12px #17181714;font-family:var(--msp-font);font-size:14px!important;line-height:1.55!important;text-align:left}
html:root body.msp-access #phone-error{color:#a3281d!important}

/* Keep trial information as plain copy rather than a separate framed card. */
html:root body.msp-access .card .trial{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding:0!important}
