/* Account directory, profile and shared password feedback. */
.account-section input[type=password]::-ms-reveal,.account-section input[type=password]::-ms-clear{display:none}
.sidebar{overflow:hidden;min-height:0}.sidebar>.nav-label{flex-shrink:0}.sidebar nav{flex:1;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding-right:5px;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#bc8d9f #ffffff08;min-height:80px}.sidebar nav::-webkit-scrollbar{width:7px}.sidebar nav::-webkit-scrollbar-track{background:#ffffff07;border-radius:20px;margin-block:12px}.sidebar nav::-webkit-scrollbar-thumb{background:#ac718b;border:2px solid #56112d;border-radius:20px}.sidebar nav::-webkit-scrollbar-thumb:hover{background:#d3b078}.sidebar nav::-webkit-scrollbar-button{display:none}.sidebar-bottom{margin-top:12px}.sidebar .institution-logo{flex-shrink:0}.sidebar .brand{flex-shrink:0;margin-bottom:14px}.sidebar .brand small{max-height:35px;overflow:hidden}.sidebar .nav-label{margin-top:14px}.sidebar nav a{padding-block:11px}
.account-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,350px);gap:24px;align-items:start}.account-grid>*{min-width:0}.account-section{padding:28px}.account-section-heading{display:flex;align-items:center;gap:14px;margin-bottom:25px}.account-section-heading>div{min-width:0}.account-section-heading h2{margin:0 0 5px;font-size:18px}.account-section-heading p{font-size:12px;color:#897a82;line-height:1.55;margin:0}.account-section-heading .module-pill{margin-left:auto;align-self:start}.section-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:#f5eaf0;color:#611232;flex-shrink:0;border:1px solid #ead8e1}.section-icon svg{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.7}.account-section label{margin-block:15px}.account-section .form-grid>label{margin-top:0}.account-section .form-footer{margin-top:22px}.account-section input,.account-section select{min-height:46px}.account-section .password-control input{padding-right:76px}.account-section small{font-size:11px;line-height:1.6;color:#8b7c83}.account-access label{margin-block:20px}.role-preview{padding:20px 18px;background:linear-gradient(130deg,#f7edf1,#fbf8f6);border:1px solid #eddee5;border-radius:13px;margin-top:22px}.role-preview strong{font-size:15px;color:#611232}.role-preview p{font-size:12px;color:#79626e;margin:10px 0}.role-preview a{font-size:11px;display:inline-block;margin-top:16px}.permission-tags{display:flex;flex-wrap:wrap;gap:6px}.permission-tags span{padding:5px 8px;font-size:10px;border-radius:6px;background:white;color:#785062;border:1px solid #eadce2}.account-footnote{font-size:11px;color:#8a7982;line-height:1.7;margin-top:20px;margin-bottom:0}.account-savebar{display:flex;justify-content:space-between;align-items:center;gap:20px;border:1px solid #e8dfe3;background:white;border-radius:13px;padding:19px 24px;margin-top:24px}.account-savebar>span{font-size:12px;color:#897880}.account-savebar>div{display:flex;gap:10px}
.password-feedback{background:#faf8f9;border:1px solid #ece3e7;border-radius:12px;padding:18px 20px;margin-top:13px}.password-feedback-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px}.password-feedback-heading>span{font-size:10px;color:#8b7681;white-space:nowrap}.password-meter{height:5px;background:#ebe2e6;border-radius:20px;margin-top:12px;overflow:hidden}.password-meter span{display:block;width:0;height:100%;border-radius:inherit;background:#611232;transition:width .18s ease,background .18s ease}.password-editor[data-password-level=short] .password-meter span{background:#c78653}.password-editor[data-password-level=good] .password-meter span{background:#7a5c8c}.password-editor[data-password-level=strong] .password-meter span{background:#397664}.password-feedback p{font-size:11px;color:#8b7681;margin:12px 0 15px;line-height:1.6}.password-requirements{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;margin-bottom:14px}.password-requirements>span{display:flex;align-items:center;gap:7px;font-size:10px;color:#8c7d85;flex-wrap:wrap}.password-requirements i{width:14px;height:14px;border:1px solid #cdbdc4;display:grid;place-items:center;border-radius:50%;flex-shrink:0}.password-requirements b{font-size:8px;font-weight:500;color:#9c8c94;display:block}.password-requirements .is-met{color:#35765f}.password-requirements .is-met i{border-color:#458773;background:#e6f1ec}.password-requirements .is-met i:after{content:'✓';font-style:normal;font-size:10px}.account-section .password-match{min-height:18px;display:block;font-size:10px;margin-top:7px;color:#9b8993}.account-section .password-match.is-match{color:#35765f}.account-section .password-match.is-mismatch{color:#ae394d}.account-section input[aria-invalid=true]{border-color:#bf6579;background:#fffafb}.account-section input[aria-invalid=true]:focus{box-shadow:0 0 0 3px #bf657915}.password-editor>.form-grid{align-items:start}
.account-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.account-stats article{padding:23px}.account-stats article>span{font-size:11px;color:#86717d;display:block}.account-stats strong{display:block;font-size:32px;letter-spacing:-1px;color:#611232;margin:12px 0 5px}.account-stats small{font-size:10px;color:#a28e99}.directory-heading{display:flex;justify-content:space-between;align-items:center;padding:24px 26px 12px}.directory-heading h2{margin-bottom:6px}.directory-heading p{font-size:11px;color:#97818c;margin:0}.directory-filters{display:flex;gap:12px;align-items:end;padding:12px 26px 23px;flex-wrap:wrap}.directory-filters label{font-size:10px;margin:0;min-width:145px}.directory-search{flex:1}.directory-filters input,.directory-filters select{min-height:43px}.filter-reset{font-size:11px;align-self:center;margin-top:20px}.users-table td{padding-block:20px}.directory-person{display:flex;align-items:center;gap:12px}.directory-avatar{background:#f4e9ee;color:#611232;border:1px solid #ead8e1;border-radius:12px;width:42px;height:42px;display:grid;place-items:center;font-weight:700;font-size:17px;flex-shrink:0}.directory-person strong{display:block;font-size:12px;color:#45313d}.directory-person>div>span{display:block;font-size:11px;color:#9a8290;margin-top:5px}.self-badge{display:inline-block;font-size:8px;color:#91724c;border:1px solid #eadfc9;background:#fbf6ed;padding:2px 5px;border-radius:4px;margin-left:6px}.type-badge{display:inline-block;padding:6px 10px;border-radius:6px;background:#f6f2f4;border:1px solid #eee4e9;color:#7c6974;font-size:10px}.type-admin{background:#f3e6ec;color:#611232;border-color:#e7d0db}.type-driver{background:#f6f0e5;color:#866c45;border-color:#eadfce}.status-indicator{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:#797079;white-space:nowrap}.status-indicator i{width:6px;height:6px;border-radius:50%;background:#b7a9b1}.status-indicator.is-active{color:#37765e}.status-indicator.is-active i{background:#43846b}.directory-action{text-align:right}
.profile-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:30px 32px;margin-bottom:24px;background:linear-gradient(115deg,#fff 50%,#fbf5f7);position:relative}.profile-hero:after{content:'';position:absolute;width:5px;inset:20px 0 20px auto;background:#b99a6c;border-radius:5px 0 0 5px}.profile-hero-person{display:flex;align-items:center;gap:22px;min-width:0}.profile-hero h2{font-size:23px;margin:0 0 7px}.profile-hero p{font-size:12px;color:#957c8a;overflow-wrap:anywhere;margin:0}.profile-hero .eyebrow{font-size:8px;margin-bottom:8px}.profile-hero-role{padding:4px 20px;border-left:1px solid #eadfe4;min-width:185px}.profile-hero-role>*{display:block}.profile-hero-role>span{font-size:10px;color:#a18a96}.profile-hero-role strong{font-size:15px;color:#611232;margin:8px 0}.profile-hero-role small{font-size:9px;color:#a58d9c}.profile-photo-editor{display:flex;align-items:center;gap:20px;padding:18px 20px;background:#fbf8fa;border:1px dashed #e4d1da;border-radius:12px;margin-bottom:24px}.profile-photo-editor>div{min-width:0;flex:1}.profile-photo-editor input[type=file]{font-size:10px;min-height:36px;max-width:100%;margin-top:8px}.profile-photo-editor .profile-preview{width:80px;height:80px;object-fit:contain;background:white;border:1px solid #e8d8df;padding:4px;flex-shrink:0}.profile-photo-editor label{margin:0 0 8px}.profile-photo-editor .check-line{margin-top:10px;font-size:10px}.profile-photo-editor .check-line input{min-height:0}.photo-upload-label{font-size:12px;font-weight:600}.email-change-note{display:flex;align-items:center;gap:12px;background:#fbf4e9;border:1px solid #eee0c8;border-radius:10px;padding:14px;margin-top:15px}.email-change-note[hidden]{display:none}.email-change-note p{font-size:11px;color:#8a7045;margin:0}.email-change-note .section-icon{background:#f3e9d8;border-color:#e6d7bd;color:#967b4d}.profile-aside{align-content:start}.linked-account{border:1px solid #ede3e8;border-radius:12px;padding:18px;margin-top:20px}.linked-account-heading{display:flex;align-items:center;gap:11px}.provider-logo{width:36px;height:36px;display:grid;place-items:center;border:1px solid #e8e2e6;background:#fff;border-radius:10px;font-weight:800;font-size:20px}.linked-account-heading strong{display:block;font-size:12px}.linked-account-heading div>span{display:block;font-size:10px;color:#a08a96;margin-top:5px}.connection-dot{width:7px;height:7px;border-radius:50%;background:#c9b9c2;margin-left:auto}.connection-dot.connected{background:#42896f}.linked-account>p{font-size:11px;color:#99818d;margin:13px 0 17px;overflow-wrap:anywhere}.linked-account .button.wide{justify-content:center;white-space:normal}.profile-tip{padding:23px;background:#f3e8ee;border:1px solid #e8d5df;border-radius:13px}.profile-tip h3{font-size:15px;color:#611232;line-height:1.5}.profile-tip p{font-size:12px;color:#947484;margin-bottom:0;line-height:1.8}
@media(max-width:1250px){.account-grid{grid-template-columns:minmax(0,1fr) 300px;gap:18px}.account-section{padding:23px}.password-requirements{grid-template-columns:1fr}.account-section .form-grid{grid-template-columns:1fr}.account-stats article{padding:20px 17px}}
@media(max-width:1050px){.account-grid{grid-template-columns:1fr}.account-grid .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.password-requirements{grid-template-columns:1fr 1fr}.profile-aside{grid-template-columns:1fr 1fr;align-items:start}.account-access{max-width:none}}
@media(max-width:600px){.account-section{padding:22px 19px}.account-grid .form-grid,.profile-aside{grid-template-columns:1fr}.account-section-heading{gap:11px}.account-section-heading .module-pill{display:none}.account-section-heading h2{font-size:17px}.account-stats{grid-template-columns:1fr 1fr;gap:12px}.account-stats article{padding:18px 15px}.account-stats strong{font-size:28px}.account-stats small{font-size:9px}.directory-heading{padding:20px 18px 10px;gap:10px;flex-wrap:wrap}.directory-filters{padding:13px 18px 20px;display:grid;grid-template-columns:1fr 1fr}.directory-filters label{min-width:0}.directory-search{grid-column:1/-1}.directory-filters .button{grid-column:1/-1}.filter-reset{margin-top:0}.account-savebar{flex-direction:column;align-items:stretch;padding:18px}.account-savebar>div>*{flex:1}.password-feedback{padding:16px 13px}.password-requirements{grid-template-columns:1fr}.profile-hero{padding:24px 20px;align-items:start;flex-direction:column;gap:20px}.profile-hero-person{gap:15px}.profile-hero .profile-portrait{width:68px;height:68px;flex-shrink:0;font-size:28px}.profile-hero-person>div:last-child{min-width:0}.profile-hero h2{font-size:19px;overflow-wrap:anywhere}.profile-hero-role{border-left:0;border-top:1px solid #e9dce3;padding:17px 0 0;width:100%}.profile-hero-role>*{display:inline-block;margin-right:10px}.profile-hero-role small{display:block;margin-top:7px}.profile-photo-editor{padding:15px 13px;gap:13px;align-items:start}.profile-photo-editor .profile-preview{width:58px;height:58px}.profile-photo-editor small{font-size:9px}.profile-photo-editor input[type=file]{font-size:9px}.password-feedback-heading{font-size:11px}}
@media(max-height:680px){.sidebar{padding-top:13px}.sidebar .institution-logo{min-height:60px;margin-bottom:12px;padding:10px}.sidebar .institution-logo img{max-height:42px}.sidebar .brand{font-size:16px;margin-bottom:6px}.sidebar-bottom{padding-top:12px}.sidebar nav{min-height:50px}}
@media(prefers-reduced-motion:reduce){.password-meter span{transition:none}}

/* Password recovery */
.recovery-box{max-width:520px}.recovery-symbol{width:54px;height:54px;border-radius:17px;display:grid;place-items:center;background:#f7edf1;color:#611232;font-size:28px;font-weight:700;margin:24px 0 18px}.recovery-steps{display:flex;list-style:none;padding:0;gap:8px;margin:24px 0;font-size:11px;color:#756b70;flex-wrap:wrap}.recovery-steps li{padding:8px 10px;border-radius:8px;background:#f5f3f4}.recovery-steps .current{background:#611232;color:white;font-weight:700}.recovery-help{padding:18px;border:1px solid #e9dfe3;border-radius:12px;background:#fcfafb;margin:20px 0;font-size:14px;line-height:1.6}.recovery-help p{margin:8px 0}.recovery-help small,.recovery-note{font-size:12px;color:#756b70}.recovery-box .password-editor .form-grid{grid-template-columns:1fr}.recovery-box .password-requirements{grid-template-columns:1fr 1fr}.recovery-box .auth-back{display:block;margin-top:24px}.recovery-box .wide{white-space:normal;text-align:center}.recovery-box input[readonly]{background:#f7f5f6;color:#65555e}@media(max-width:420px){.recovery-box .password-requirements{grid-template-columns:1fr}.recovery-steps{gap:5px}}

.recovery-box .recovery-submit{display:inline-flex;align-items:center;justify-content:center;gap:10px}.recovery-submit[aria-busy=true]{cursor:wait;opacity:.85}.recovery-spinner{display:inline-block;flex:0 0 17px;width:17px;height:17px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:recovery-spin .7s linear infinite}.recovery-spinner[hidden]{display:none}@keyframes recovery-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.recovery-spinner{animation:none}}
[data-user-driver]{margin-top:24px;margin-bottom:24px}
