.user-role-fieldset{margin:0;padding:0;border:0}.user-role-fieldset legend{margin-bottom:9px;color:#475569;font-size:13px}.user-role-fieldset legend em{margin-left:5px;color:#ef4444;font-size:11px;font-style:normal}.user-role-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.user-role-choice{position:relative;display:flex!important;flex-direction:row!important;align-items:flex-start;gap:10px!important;min-height:66px;padding:12px;border:1px solid #dce4f0;border-radius:9px;background:#fbfcff;cursor:pointer;transition:.18s ease}.user-role-choice:hover{border-color:#91bfff;background:#f5f9ff}.user-role-choice:has(input:checked){border-color:#2684ff;background:#eef6ff;box-shadow:0 0 0 2px rgba(38,132,255,.1)}.user-role-choice input{width:16px;min-height:auto!important;height:16px;margin:3px 0 0;padding:0;accent-color:#1687ff}.user-role-choice span{display:grid;gap:4px}.user-role-choice b{color:#22324a;font-size:13px}.user-role-choice small,.user-role-fieldset>small{color:#7a899f;line-height:1.45}.user-role-fieldset>small{display:block;margin-top:8px}.user-password-control{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:7px}.user-password-control button{padding:0 11px;border:1px solid #cdd9e8;border-radius:5px;background:#f8fbff;color:#2869b6;cursor:pointer}.user-identity-note{display:flex;gap:12px;padding:12px 14px;border:1px solid #cfe0f6;border-radius:8px;background:#f4f8fe;color:#53647b;font-size:12px;line-height:1.55}.user-identity-note b{flex:0 0 auto;color:#255da5}.user-credential-once{display:grid;grid-template-columns:42px 1fr;gap:5px 12px}.user-credential-once>span{grid-row:1/span 3;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#e8f8ef;color:#13a260;font-size:22px}.user-credential-once strong{display:block;color:#1f2f46;font-size:17px}.user-credential-once p{margin:5px 0 16px;color:#6d7b90}.user-credential-once label{grid-column:2;display:grid;gap:6px;margin-top:8px;color:#526176;font-size:12px}.user-credential-once input{height:40px;padding:0 11px;border:1px solid #d6e0ec;border-radius:6px;background:#f8fafc;color:#17253a;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}

.first-password-backdrop{position:fixed;z-index:6000;inset:0;display:grid;place-items:center;padding:24px;background:rgba(8,19,38,.68);backdrop-filter:blur(12px)}.first-password-backdrop[hidden]{display:none}.first-password-card{width:min(570px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:auto;border:1px solid rgba(255,255,255,.7);border-radius:22px;background:#fff;box-shadow:0 36px 100px rgba(3,13,31,.38)}.first-password-header{display:flex;gap:16px;padding:27px 30px 24px;background:linear-gradient(135deg,#eff6ff 0%,#f7faff 52%,#edf9f7 100%);border-bottom:1px solid #deebf7}.first-password-icon{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:15px;background:linear-gradient(135deg,#1677ff,#0ab2a1);box-shadow:0 10px 24px rgba(22,119,255,.22);color:#fff;font-size:25px}.first-password-header small{color:#3976bc;font-size:10px;font-weight:700;letter-spacing:.16em}.first-password-header h2{margin:4px 0 6px;color:#162a45;font-size:24px;letter-spacing:-.02em}.first-password-header p{margin:0;color:#62728a;font-size:13px}.first-password-body{padding:24px 30px 16px}.first-password-notice{display:flex;align-items:flex-start;gap:11px;margin-bottom:21px;padding:12px 14px;border:1px solid #dbe8f7;border-radius:11px;background:#f7faff;color:#31567f}.first-password-notice>span{font-size:17px}.first-password-notice p{display:grid;gap:3px;margin:0}.first-password-notice strong{font-size:13px}.first-password-notice small{color:#728198;font-size:11px;line-height:1.5}.first-password-field{display:grid;gap:8px;margin-top:16px;color:#2f4058;font-size:13px;font-weight:600}.first-password-field>input,.first-password-control{width:100%;min-height:44px;border:1px solid #ccd8e7;border-radius:9px;background:#fff;transition:.18s}.first-password-field>input{padding:0 13px}.first-password-control{display:flex;overflow:hidden}.first-password-control:focus-within,.first-password-field>input:focus{border-color:#2782f3;box-shadow:0 0 0 3px rgba(39,130,243,.11);outline:0}.first-password-control input{flex:1;min-width:0;padding:0 13px;border:0;outline:0}.first-password-control button{border:0;background:#f5f8fc;padding:0 14px;color:#3473bd;cursor:pointer}.first-password-strength{display:flex;align-items:center;gap:10px;margin-top:10px}.first-password-strength>div{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;flex:1}.first-password-strength i{height:4px;border-radius:6px;background:#e2e8f0}.first-password-strength [data-score="1"] i:nth-child(-n+1){background:#ef6464}.first-password-strength [data-score="2"] i:nth-child(-n+2){background:#f4a524}.first-password-strength [data-score="3"] i:nth-child(-n+3){background:#36a9d6}.first-password-strength [data-score="4"] i:nth-child(-n+4){background:#16ad73}.first-password-strength span{min-width:55px;color:#7a899d;font-size:10px}.first-password-rules{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:10px 0 0;padding:0;list-style:none}.first-password-rules li{color:#8794a7;font-size:10px}.first-password-rules li::before{content:'○';margin-right:4px}.first-password-rules li.passed{color:#159969}.first-password-rules li.passed::before{content:'✓'}.first-password-error{min-height:20px;margin:10px 0 0;color:#dc3545;font-size:12px}.first-password-footer{display:flex;justify-content:space-between;gap:12px;padding:16px 30px 24px}.first-password-footer button{height:43px;padding:0 18px;border:1px solid #d5deea;border-radius:9px;background:#fff;color:#5c6d84;cursor:pointer}.first-password-footer .primary-action{display:flex;align-items:center;justify-content:center;gap:22px;min-width:250px;border-color:#1677ff;background:linear-gradient(135deg,#1677ff,#266ee8);box-shadow:0 10px 24px rgba(22,119,255,.22);color:#fff;font-weight:600}.first-password-footer button:disabled{opacity:.62;cursor:wait}.first-password-active{overflow:hidden}

@media(max-width:640px){.user-role-choice-grid{grid-template-columns:1fr}.user-password-control{grid-template-columns:1fr 1fr 1fr}.user-password-control input{grid-column:1/-1}.user-identity-note{display:grid}.first-password-header,.first-password-body{padding-left:20px;padding-right:20px}.first-password-footer{padding:14px 20px 20px;flex-direction:column-reverse}.first-password-footer .primary-action{width:100%;min-width:0}.first-password-rules{grid-template-columns:1fr 1fr}}
