.account-provision-modal .ant-modal { width: min(1440px, calc(100vw - 32px)) !important; max-width: calc(100vw - 32px); }
.account-provision-modal .ant-modal-body { max-height: 75vh; overflow-y: auto; }
.account-provision-intro,.account-provision-footer,.account-pane-heading,.account-directory-meta { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.account-provision-intro { padding:0 0 10px; color:#64748b; font-size:13px; }
.account-provision-intro>div:first-child { display:flex; gap:8px; align-items:center; }
.account-provision-layout { display:grid; grid-template-columns:minmax(0,1fr) 290px; border:1px solid #e2e8f0; border-radius:8px; overflow:hidden; }
.account-directory { min-width:0; padding:16px; }
.account-search { display:flex; align-items:center; gap:12px; }
.account-search>.ant-input-affix-wrapper { flex:1; }
.account-search>.ant-checkbox-wrapper { white-space:nowrap; font-size:12px; }
.account-directory-meta { font-size:11px; color:#64748b; margin:12px 0; }
.account-directory>.ant-alert { margin-bottom:12px; }
.account-directory-columns { display:grid; grid-template-columns:320px minmax(0,1fr); }
.account-departments { min-width:0; border-right:1px solid #e2e8f0; padding-right:12px; max-height:420px; overflow:auto; }
.account-provision-layout h3,.account-results h3 { font-size:14px; color:#24364b; margin:0 0 12px; font-weight:600; }
.account-departments .ant-tree { font-size:12px; background:transparent; }
.account-departments .ant-tree-indent-unit { width:12px; }
.account-departments .ant-tree-switcher { flex:0 0 20px; width:20px; }
.account-departments .ant-tree-treenode { padding-bottom:6px; }
.account-departments .ant-tree-node-content-wrapper { white-space:nowrap; flex-shrink:0; }
.account-departments .ant-tree-list-holder-inner { min-width:max-content; }
.account-employees { min-width:0; padding-left:16px; }
.account-pane-heading { min-height:26px; margin-bottom:10px; }
.account-pane-heading h3 { margin:0; }
.account-pane-heading>span,.account-help { font-size:12px; color:#64748b; }
.account-select-page { font-size:12px; padding:4px 0 12px; }
.account-employee-list { height:420px; overflow:auto; }
.account-employee { display:flex; gap:10px; align-items:flex-start; padding:6px 8px; border-bottom:1px solid #edf1f5; border-radius:4px; }
.account-employee.is-selected { background:#edf5fb; }
.account-avatar { display:flex; align-items:center; justify-content:center; background:#e7edf4; color:#486581; width:30px; height:30px; flex-shrink:0; border-radius:50%; }
.account-employee-info { flex:1; min-width:0; font-size:12px; overflow-wrap:anywhere; }
.account-employee-info strong { font-size:14px; color:#24364b; }
.account-employee-info p { color:#64748b; margin:2px 0; line-height:1.35; }
.account-employee-info details { color:#64748b; font-size:11px; }
.account-employee summary,.account-role summary { cursor:pointer; }
.account-employee>.ant-tag { margin:0; font-size:11px; }
.account-employees>.ant-pagination { margin-top:12px; }
.account-authorization { border-left:1px solid #e2e8f0; background:#f8fafc; padding:16px; min-width:0; }
.account-selected { min-height:32px; max-height:80px; overflow:auto; padding:2px 0 8px; }
.account-selected .ant-tag { margin-bottom:6px; }
.account-selected p { color:#94a3b8; font-size:12px; }
.account-required { color:#d14343; }
.account-help { margin:0 0 12px; }
.account-role-list { max-height:420px; overflow:auto; margin-top:8px; }
.account-role { padding:7px 10px; border:1px solid #e2e8f0; border-radius:6px; margin-bottom:5px; background:white; }
.account-role.is-selected { border-color:#9bb8d2; background:#f0f6fb; }
.account-role p { font-size:12px; color:#64748b; margin:6px 0; }
.account-role details { font-size:12px; color:#486581; margin-top:3px; }
.account-permissions { padding-top:8px; display:flex; gap:4px; flex-wrap:wrap; }
.account-permissions .ant-tag { white-space:normal; }
.account-provision-footer { width:100%; font-size:13px; color:#64748b; }
.account-results { margin-top:16px; }
.account-batch-progress { width:100%; height:8px; margin-top:16px; accent-color:#486581; }
.account-results>div { display:flex; align-items:baseline; gap:8px; font-size:12px; padding:5px 0; }
.account-results>div>span:last-child { overflow-wrap:anywhere; }
.account-results>p { font-size:12px; color:#64748b; }
.account-role-identity { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-bottom:20px; }
.account-role-identity>span:last-child { color:#64748b; }
.account-role-diff { margin-top:16px; background:#f0f6fb; border-color:#d8e5f0; }
@media(min-width:801px) and (max-width:1150px) {
 .account-provision-layout { grid-template-columns:1fr; }
 .account-authorization { border-left:0; border-top:1px solid #e2e8f0; }
}
@media(max-width:800px) {
 .account-provision-layout { grid-template-columns:1fr; }
 .account-directory-columns { grid-template-columns:1fr; }
 .account-departments { border-right:0; border-bottom:1px solid #e2e8f0; max-height:150px; margin-bottom:16px; padding-bottom:12px; }
 .account-employees { padding-left:0; }
 .account-authorization { border-left:0; border-top:1px solid #e2e8f0; }
 .account-search,.account-provision-intro,.account-provision-footer { flex-wrap:wrap; }
 .account-search>.ant-input-affix-wrapper { flex-basis:100%; }
 .account-provision-footer>.ant-space { margin-left:auto; }
 .account-directory-meta { align-items:flex-start; }
 .account-employee-list { height:280px; }
}
