/* Account access is scoped; the surrounding public header/footer retain their layout. */
.registration-page{color:#233e50;font-family:Roboto,Arial,sans-serif;background:#f7f9fb;overflow-wrap:anywhere}
.registration-page *, .registration-workspace *{box-sizing:border-box}
.registration-page [hidden],.registration-workspace [hidden]{display:none!important}
.registration-shell{max-width:1160px;margin:0 auto;padding:0 20px 22px}
.registration-page .registration-breadcrumb{display:flex;align-items:center;gap:9px;font-size:12px;margin:0 0 15px;color:#647787}
.registration-page a{color:#125b7f;text-underline-offset:3px}
.registration-layout{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(0,1.25fr);gap:26px;align-items:start}
.registration-welcome{padding:28px 26px;border-radius:14px;background:#eaf1f6;border:1px solid #d8e4ed;position:sticky;top:110px}
.registration-page .registration-eyebrow{color:#9b7428;font-size:11px!important;text-transform:uppercase;letter-spacing:.11em;font-weight:700;margin:0 0 12px!important}
.registration-page .registration-welcome h1{font-size:clamp(1.55rem,2.5vw,2rem)!important;color:#133c59;margin:0 0 12px!important;font-weight:650}
.registration-page p,.registration-workspace p{font-size:14px!important;line-height:1.55!important}
.registration-benefits{list-style:none;padding:0;margin:25px 0;display:grid;gap:15px}
.registration-benefits li{display:flex;align-items:center;gap:12px;font-size:14px;color:#294c64;font-weight:500}
.registration-benefits li>span{display:grid;place-items:center;flex:0 0 30px;height:30px;border:1px solid #c3d5e2;border-radius:50%;font-size:10px;color:#56768b;letter-spacing:.04em;background:#ffffff70}
.registration-welcome-note{padding-top:20px;border-top:1px solid #cbdbe6;font-size:13px}
.registration-welcome-note strong{display:block;margin-bottom:8px;color:#173f59;font-size:14px}
.registration-welcome-note a{font-size:12px;font-weight:600}
.registration-card{background:#fff;border:1px solid #dce5eb;border-radius:14px;padding:23px 25px;box-shadow:0 5px 20px #18344906;min-width:0}
.registration-tabs{display:flex;gap:4px;border-bottom:1px solid #dce5eb;margin:0 0 20px}
.registration-tab{border:0;background:none;color:#637987;font-size:14px;font-weight:600;padding:6px 12px 12px;min-height:42px;border-bottom:3px solid transparent;cursor:pointer}
.registration-tab[aria-selected=true]{color:#144966;border-bottom-color:#b48a35}
.registration-card h2{font-size:1.3rem!important;margin:0 0 7px!important;color:#173f59;font-weight:600}
.registration-page .registration-muted{color:#607684;font-size:13px!important;margin:0 0 19px!important}
.registration-page .registration-small{font-size:12px!important;line-height:1.5!important;color:#657684}
.registration-form{display:grid;gap:15px}
.registration-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.registration-page label,.registration-workspace label{font-size:13px;color:#2c4c60;font-weight:500;line-height:1.45}
.registration-page input:not([type=checkbox]),.registration-page select,.registration-page textarea{width:100%;max-width:100%;min-width:0;border:1px solid #c9d6df;border-radius:6px;background:#fff;padding:10px 11px;min-height:42px;font:14px/1.4 Roboto,Arial,sans-serif;color:#243f52;box-shadow:none}
.registration-page input::placeholder,.registration-page textarea::placeholder{color:#82919b}
.registration-page textarea{resize:vertical;min-height:92px}
.registration-page input[type=checkbox]{width:16px;height:16px;flex:0 0 16px;accent-color:#155674;margin:2px 0 0}
.registration-page input[type=file]{font-size:11px!important;min-height:38px;padding:7px;cursor:pointer}
.registration-page input[type=file]::file-selector-button{border:0;background:#eaf1f6;color:#234e69;border-radius:4px;padding:6px 8px;margin-right:9px;font-weight:600;cursor:pointer}
.registration-page input:focus,.registration-page select:focus,.registration-page textarea:focus{outline:2px solid #3983ac;outline-offset:1px;border-color:#3983ac}
.registration-page :is(a,button):focus-visible,.registration-workspace :is(a,button):focus-visible{outline:3px solid #c99530;outline-offset:3px}
.registration-page .registration-help{color:#6b7e8b;font-size:11px!important;line-height:1.5!important;margin:0!important;font-weight:400}
.registration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.registration-button,.registration-workspace .registration-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 17px;border:1px solid #164f70;background:#164f70;color:#fff!important;border-radius:6px;font-size:13px;font-weight:600;text-decoration:none;cursor:pointer;line-height:1.4}
.registration-button:hover,.registration-workspace .registration-button:hover{background:#123e58;border-color:#123e58}
.registration-page button:disabled{opacity:.55;cursor:wait}
.registration-text-button{display:inline-block;border:0;background:none;color:#145c81;padding:4px 0;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-size:12px;font-weight:500;line-height:1.5;text-align:left;width:fit-content;max-width:100%}
.registration-actions{display:flex;align-items:center;gap:12px 20px;flex-wrap:wrap}
.registration-actions a{font-size:12px}
.registration-profile-actions{justify-content:space-between;border-top:1px solid #e1e8ed;padding-top:14px}
.registration-page .registration-login-note{border-top:1px solid #e4ebf0;padding-top:18px;margin:24px 0 0!important}
.registration-progress{list-style:none;display:flex;gap:0;padding:0 0 15px;margin:0 0 20px;border-bottom:1px solid #e5ebef}
.registration-progress li{flex:1;display:flex;align-items:center;gap:7px;font-size:10px;line-height:1.4!important;color:#7b8a95;min-width:0;padding-right:7px}
.registration-progress li>span{height:22px;width:22px;border:1px solid #d5dfe6;border-radius:50%;display:grid;place-items:center;flex:0 0 22px;font-size:10px;font-weight:600}
.registration-progress li[aria-current=step]{font-weight:600;color:#164f70}
.registration-progress li[aria-current=step]>span{background:#164f70;border-color:#164f70;color:#fff}
.registration-progress li.is-complete{color:#2c6b56}
.registration-progress li.is-complete>span{border-color:#c8ded5;background:#e9f4ef}
.registration-page .registration-status{padding:0;margin:0 0 12px!important;color:#25634c;font-size:12px!important}
.registration-status:empty{display:none}
.registration-error{padding:11px 13px;border:1px solid #e5bbb7;border-radius:6px;background:#fff6f5;color:#93342e;font-size:13px;margin:0 0 16px;line-height:1.5}
.registration-page .registration-context{border-left:3px solid #b48a35;padding:7px 11px;background:#fbf8f1;font-size:12px!important;color:#6e582d;margin-bottom:17px!important}
.registration-code{letter-spacing:.3em;font-size:20px!important;max-width:210px!important;text-align:center}
.registration-verified{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;border:1px solid #cce3d7;border-radius:6px;background:#f3faf6;padding:9px 11px;margin:0 0 18px;color:#2c6b51;font-size:12px}
.registration-panel{display:grid;gap:15px;border:0;padding:0;margin:0;min-width:0}
.registration-panel>legend{font-size:15px;font-weight:600;color:#234c65;margin:0 0 14px;width:auto;float:none}
.registration-categories,.registration-expertise,.registration-human{border:0;padding:0;margin:0;min-width:0}
.registration-categories>legend,.registration-expertise>legend,.registration-human>legend{font-size:13px;font-weight:500;color:#2c4c60;margin:0 0 5px;float:none;width:auto}
.registration-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px}
.registration-check{display:flex;align-items:flex-start;gap:9px;font-weight:400!important;font-size:12px!important;line-height:1.55!important}
.registration-choice-grid>.registration-check{border:1px solid #dce5eb;border-radius:6px;padding:8px 9px;background:#fbfcfd;cursor:pointer}
.registration-choice-grid>.registration-check:has(input:checked){border-color:#84adbf;background:#eef6fa}
.registration-page .registration-review-note{color:#617584;border-radius:5px;background:#f3f6f8;font-size:11px!important;padding:9px 11px;margin:0!important}
#registration-institutions{display:grid;gap:12px}
.registration-institution-row{position:relative}
.registration-institution-row>.registration-text-button{align-self:flex-end}
.registration-counter{font-size:11px!important;line-height:1.4!important;margin:0!important;text-align:right;color:#718390}
.registration-counter[data-over-limit=true]{color:#9b382f}
.registration-expertise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px}
.registration-optional{font-size:11px;font-weight:400;color:#70828e}
.registration-portrait{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;align-items:start;padding:13px;border:1px solid #e0e7eb;border-radius:8px;background:#fafcfd}
.registration-portrait-preview{width:64px;height:64px;border-radius:50%;background:#e6edf2;display:grid;place-items:center;overflow:hidden;color:#768d9e;font-size:11px;border:1px solid #d5e0e7}
.registration-portrait-preview img{width:100%;height:100%;object-fit:cover}
.registration-human{padding:12px 13px;border:1px solid #dce5eb;border-radius:7px}
.registration-human>legend{padding:0 5px;margin-left:-5px}
.registration-human-row{display:flex;gap:20px;align-items:end;flex-wrap:wrap}
.registration-human-row>.registration-field{max-width:160px}
.registration-human-row>.registration-text-button{margin-bottom:6px}
.registration-complete{padding:20px;border:1px solid #cce3d7;background:#f3faf6;border-radius:9px;color:#295844}
.registration-complete h3{font-size:1.2rem;margin:0 0 12px;color:#245641}
.registration-complete .registration-button{margin-top:8px}
.registration-workspace{max-width:1020px;margin:0 auto;padding:26px 20px 45px;color:#233e50;font-family:Arial,sans-serif;font-size:14px;line-height:1.55;background:#f7f9fb}
.registration-workspace-header{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;margin-bottom:26px}
.registration-workspace-header a{color:#164f70;font-size:13px}
.registration-workspace h1{font-size:26px;color:#173f59;margin:0 0 8px}
.registration-workspace h2{font-size:18px;color:#173f59;margin:0 0 14px}
.registration-workspace .registration-card{margin-top:20px;box-shadow:none}
.registration-workspace dl{display:grid;grid-template-columns:140px minmax(0,1fr);gap:10px 18px;margin:0;overflow-wrap:anywhere}
.registration-workspace dt{font-weight:600;color:#496273}
.registration-workspace dd{margin:0}
.registration-workspace-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0;list-style:none}
.registration-workspace-links a{display:block;padding:16px;border:1px solid #dce5eb;border-radius:7px;background:#fff;color:#164f70;font-weight:600;text-decoration:none;height:100%}
.registration-workspace-links a:hover{background:#eef5f9}
.registration-workspace-links span{display:block;font-size:12px;color:#657a88;font-weight:400;margin-top:6px}
.registration-workspace .registration-check{margin-bottom:14px}
@media(max-width:850px){.registration-layout{grid-template-columns:1fr;gap:18px}.registration-welcome{position:static;padding:21px}.registration-benefits{grid-template-columns:repeat(2,minmax(0,1fr));margin:18px 0;gap:11px}.registration-welcome-note{display:none}.registration-card{padding:21px}.registration-workspace-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.registration-shell{padding-inline:14px}.registration-welcome{padding:18px}.registration-card{padding:18px 15px}.registration-benefits{gap:10px}.registration-benefits li{font-size:11px;gap:7px}.registration-benefits li>span{width:23px;height:23px;flex-basis:23px;font-size:9px}.registration-grid{grid-template-columns:1fr;gap:13px}.registration-expertise-grid{grid-template-columns:1fr}.registration-progress li{font-size:9px;gap:5px}.registration-progress li>span{width:20px;height:20px;flex-basis:20px}.registration-choice-grid{gap:8px}.registration-choice-grid>.registration-check{font-size:11px!important;padding:8px}.registration-portrait{grid-template-columns:45px minmax(0,1fr);gap:9px;padding:11px}.registration-portrait-preview{width:45px;height:45px}.registration-profile-actions{align-items:stretch;flex-direction:column-reverse;gap:12px}.registration-workspace-links{grid-template-columns:1fr}.registration-workspace dl{grid-template-columns:1fr;gap:3px}.registration-workspace dd{margin-bottom:10px}}
@media(prefers-reduced-motion:reduce){.registration-page *{scroll-behavior:auto!important}}

.registration-workspace .workspace-bio{border-top:1px solid #e2e9ed;margin-top:18px;padding-top:16px;white-space:pre-line}
.registration-workspace .registration-small{font-size:12px!important;color:#607685;margin-top:18px}
