.ua-dialog.ua-permission-dialog{width:min(1120px,100%);height:min(800px,calc(100dvh - 48px));min-height:0}
.ua-permission-dialog>.ua-modal-body{display:flex;flex-direction:column;gap:10px;flex:1;overflow:hidden;min-height:0;padding:12px 16px}
.ua-permission-dialog>.ua-modal-body>.ua-help{flex:none;margin:0;font-size:12px;line-height:1.5}
.ua-permission-dialog>.ua-modal-body>.ua-field{flex:none;flex-direction:row;align-items:center;gap:12px}
.ua-permission-dialog>.ua-modal-body>.ua-field select{width:200px;max-width:100%}
.ua-permission-dialog .user-permission-slot{display:flex;flex:1;min-height:0;min-width:0}
.ua-permission-dialog .ua-template-impact{flex:0 1 auto;max-height:30%;overflow:auto;overscroll-behavior:contain;margin:0;font-size:13px}
.ua-permission-dialog>.ua-modal-footer{flex:none;min-height:58px;gap:8px;padding:10px 16px}
.ua-permission-dialog .pe-editor{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;padding:0;background:#fff;border:1px solid #dbe4ef;border-radius:7px;overflow:hidden}
.pe-editor [hidden]{display:none!important}
.pe-role-info{flex:none;background:#f7f9fc;padding:7px 12px;border-bottom:1px solid #e2e9f2}
.ua-permission-dialog .pe-role-info .user-permission-badges{margin:0;gap:6px}
.pe-role-info .user-permission-badge{border-radius:4px;padding:2px 6px;font-size:12px;line-height:1.6;border-color:#d9e4f2;background:#fff;color:#526a88}
.pe-role-info .user-permission-badge.locked{background:#edf3fc;border-color:#d7e5f8;color:#274e83}
.pe-toolbar{display:flex;align-items:center;gap:8px;padding:9px 12px;border-bottom:1px solid #e2e9f2;flex:none;min-width:0}
.pe-search{flex:1;min-width:120px;margin:0}
.ua-permission-dialog .pe-toolbar input,.ua-permission-dialog .pe-toolbar select{width:100%;height:34px;min-height:34px;margin:0;font-size:13px}
.pe-filter{display:flex;align-items:center;gap:6px;flex:none;font-size:12px;color:#61748e;margin:0}
.ua-permission-dialog .pe-filter select{width:145px}
.ua-permission-dialog .pe-toolbar button{margin:0;min-height:34px;font-size:12px;padding:5px 9px}
.pe-change-count.has-changes{background:#eaf3ff!important;border-color:#a8c4ec!important;color:#1759bb!important}
.pe-workspace{display:grid;grid-template-columns:190px minmax(0,1fr);flex:1;min-height:0;overflow:hidden}
.pe-directory{overflow:auto;overscroll-behavior:contain;background:#f7f9fc;border-right:1px solid #e1e8f1;padding:8px;min-height:0}
.pe-directory-title{padding:3px 8px 6px;color:#7b8aa1;font-size:11px}
.pe-directory-heading{font-size:12px;font-weight:600;color:#6d7f98;padding:12px 8px 5px}
.pe-directory-group:first-of-type .pe-directory-heading{padding-top:4px}
body .ua-permission-dialog .pe-nav-item{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%!important;min-height:33px;margin:2px 0;padding:6px 8px;border:1px solid transparent;border-radius:4px;background:transparent;color:#314b6d;text-align:left;font-size:13px;font-weight:400;white-space:normal}
.pe-nav-title{overflow-wrap:anywhere}
.pe-nav-count{flex:none;font-size:11px;color:#7b8da6}
body .ua-permission-dialog .pe-nav-item:hover{background:#edf2f9}
body .ua-permission-dialog .pe-nav-item.is-active{background:#e7f0ff;border-color:#bed4f5;color:#1759bb;font-weight:600}
.pe-nav-item.has-changes .pe-nav-count{color:#1759bb;font-weight:600}
.pe-nav-item.has-changes .pe-nav-count:before{content:'•';margin-right:4px}
.pe-content{min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain;padding:12px 14px;background:#fff;scroll-padding-top:12px}
.pe-result-summary{color:#61748e;font-size:12px;padding:0 0 8px;border-bottom:1px solid #e5ebf3;margin-bottom:10px}
.pe-module+.pe-module{margin-top:18px}
.pe-module-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:9px;border-bottom:1px solid #e5ebf3}
.pe-module-parent{font-size:11px;color:#71839c;margin-bottom:4px}
.pe-module-heading h4{margin:0;font-size:16px;line-height:1.4;color:#223e62}
.pe-module-count{font-size:12px;color:#6c809e;white-space:nowrap}
.pe-module-note{font-size:12px;line-height:1.65;color:#607792;margin:10px 0;background:#f4f7fb;padding:8px 10px;border-radius:4px}
.pe-operation-group{margin-top:12px}
.pe-operation-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px;min-height:28px}
.pe-operation-heading h5{margin:0;color:#566e8b;font-size:12px;font-weight:600}
.pe-batch-actions{display:flex;align-items:center;gap:6px}
.ua-permission-dialog .pe-batch-actions button{margin:0;min-height:28px;font-size:11px;padding:3px 7px}
.pe-permissions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.pe-permission-row{display:flex;align-items:center;min-width:0;border:1px solid #dce5f1;border-radius:5px;background:#fff;overflow:hidden;position:relative}
.ua-permission-dialog .pe-permission-row .user-permission-item{display:grid;grid-template-columns:18px minmax(0,1fr);gap:4px 7px;align-items:start;flex:1;margin:0;min-height:40px;min-width:0!important;padding:10px!important;border:0;border-radius:0;background:transparent}
.pe-permission-row .user-permission-item input[type=checkbox]{width:16px;height:16px;min-height:16px;margin:0;accent-color:#1b5fc8;align-self:start}
.pe-permission-row .user-permission-title{line-height:1.45;font-size:13px;font-weight:500;color:#284464;overflow-wrap:anywhere}
.pe-permission-row .user-permission-title{cursor:help}
/* Keep the explanation available to assistive technology without adding a card row. */
.pe-permission-row .user-permission-description,.pe-module-description{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
.pe-module-help{cursor:help}
.pe-description-tooltip{position:fixed;z-index:2000;box-sizing:border-box;width:max-content;max-width:min(360px,calc(100vw - 16px));padding:9px 12px;border:1px solid #cbd8e8;border-radius:6px;background:#fff;color:#314b6d;box-shadow:0 5px 18px #17365d26;font-size:13px;font-weight:400;line-height:1.6;white-space:normal;overflow-wrap:anywhere;pointer-events:none}
.pe-description-tooltip[hidden]{display:none!important}
.pe-permission-row .user-permission-source[hidden]{display:none}
.pe-permission-row:has(input:checked){background:#f3f8ff;border-color:#c0d5f1}
.pe-permission-row.is-changed{border-color:#7ea9e8}
.pe-permission-row.pe-sensitive:before{content:'';position:absolute;left:0;top:9px;bottom:9px;width:2px;background:#c39247}
.pe-change-marker{grid-column:2;color:#1b5dbb;font-size:11px;line-height:1.4}
.pe-change-marker.is-automatic{color:#6b6f93}
.pe-control-title{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 7px;min-width:0}
.pe-custom-state{flex:none;padding:0 5px;border:1px solid #e8ce9e;border-radius:4px;background:#fff8eb;color:#8b5b18;font-size:11px;font-weight:400;line-height:1.5}
.pe-configured-note{grid-column:2;font-size:11px;font-weight:400;line-height:1.5;color:#926022}
.pe-custom{border-color:#dfc699;background:#fffdf8}
.pe-scope-row{grid-column:1/-1;display:block;padding:9px 10px}
.pe-scope-heading{display:flex;align-items:start;gap:8px}
.pe-scope-copy{flex:1;min-width:0}
.pe-scope-copy>.pe-custom-state{display:inline-block;margin-left:7px}
.pe-scope-copy>.pe-change-marker,.pe-scope-copy>.pe-configured-note{display:block;margin-top:3px}
.pe-scope-options{display:flex;align-items:stretch;flex-wrap:wrap;gap:6px;margin-top:8px}
.ua-permission-dialog .pe-scope-option{display:flex;align-items:flex-start;gap:6px;flex:1 1 160px;min-width:0;margin:0;padding:7px 8px;border:1px solid #dae4ef;border-radius:4px;background:#fff;font-size:12px;font-weight:400;line-height:1.5;color:#34536f;cursor:pointer}
.ua-permission-dialog .pe-scope-option input[type=radio]{flex:none;width:16px;height:16px;min-height:16px;margin:1px 0 0;padding:0;accent-color:#1b5fc8}
.pe-scope-option>span{min-width:0;overflow-wrap:anywhere}
.pe-scope-option:has(input:checked){border-color:#a6c3e8;background:#edf5ff;color:#1957aa}
.pe-scope-option:has(input:disabled){cursor:default;color:#6c7c8e}
.pe-scope-custom{border-color:#dfc699!important;background:#fff8eb!important;color:#8b5b18!important}
.pe-advanced{margin-top:14px;border-top:1px solid #e1e8f1;padding-top:9px}
.pe-advanced-summary{width:fit-content;max-width:100%;font-size:12px;line-height:1.6;color:#386492;cursor:pointer;border-radius:3px}
.pe-advanced-hint{margin:8px 0;color:#708199;font-size:12px;font-weight:400;line-height:1.6}
.pe-advanced .pe-source-grid{margin-top:8px}
.pe-advanced-summary:focus-visible{outline:2px solid #6696de;outline-offset:3px}
.pe-empty{padding:35px 14px;color:#6a7e99;line-height:1.7;text-align:center;font-size:13px}
.pe-editor :is(button,input,select):focus-visible{outline:2px solid #6696de;outline-offset:2px}
.pe-issues{border:1px solid #efd2a0;background:#fff9ed;color:#855209;padding:7px 9px;border-radius:4px;font-size:12px;line-height:1.5;max-height:120px;overflow:auto;margin-bottom:9px}
.pe-issues[hidden]{display:none}
.pe-issue{display:flex;align-items:center;gap:8px;margin-top:4px}
.pe-issue>span{flex:1;min-width:0}
.ua-permission-dialog .pe-issue>button{flex:none;font-size:11px;padding:2px 6px;min-height:24px;margin:0}
@media(min-width:1000px){
  .pe-permissions{gap:6px}
  .pe-operation-group{margin-top:8px}
  .pe-operation-heading{margin-bottom:5px;min-height:26px}
  .ua-permission-dialog .pe-permission-row .user-permission-item{min-height:40px;padding:10px!important;gap:4px 6px}
  .pe-permission-row .user-permission-title{line-height:1.35}
}
@media(max-width:800px){
  .ua-dialog.ua-permission-dialog{height:calc(100dvh - 20px);max-height:calc(100dvh - 20px)}
  .ua-permission-dialog>.ua-modal-body{padding:10px;gap:8px}
  .ua-permission-dialog>.ua-modal-footer{padding:8px 10px;min-height:52px}
  .pe-role-info{padding:6px 8px}
  .pe-role-info .user-permission-badge{font-size:11px}
  .pe-toolbar{flex-wrap:wrap;padding:8px;gap:6px}
  .pe-search{flex-basis:100%}
  .pe-filter{flex:1}
  .ua-permission-dialog .pe-filter select{width:100%;min-width:120px}
  .pe-workspace{grid-template-columns:142px minmax(0,1fr)}
  .pe-directory{padding:5px}
  .pe-directory-heading{padding:10px 4px 4px;font-size:11px}
  .pe-directory-title{padding-left:4px}
  body .ua-permission-dialog .pe-nav-item{padding:6px 5px;font-size:12px;gap:3px}
  .pe-nav-count{font-size:10px}
  .pe-content{padding:10px}
  .pe-permissions{grid-template-columns:1fr}
  .pe-module-heading{flex-wrap:wrap;gap:4px}
  .pe-module-heading h4{font-size:14px}
  .pe-module-count{font-size:11px}
  .pe-operation-heading{flex-wrap:wrap}
  .pe-batch-actions{flex-wrap:wrap}
  .ua-permission-dialog .pe-permission-row .user-permission-item{padding:8px!important}
}
@media(max-width:520px){
  .pe-workspace{display:flex;flex-direction:column}
  .pe-directory{display:flex;flex:none;overflow-x:auto;overflow-y:hidden;gap:8px;border-right:0;border-bottom:1px solid #dce5f1;padding:6px;max-width:100%;scrollbar-width:thin}
  .pe-directory-title{display:none}
  .pe-directory-group{display:flex;flex:none;gap:4px;align-items:center;position:relative;padding-top:19px}
  .pe-directory-heading{position:absolute;top:0;left:2px;padding:0;font-size:10px;white-space:nowrap}
  body .ua-permission-dialog .pe-nav-item{width:auto!important;min-height:31px;margin:0;white-space:nowrap;padding:5px 7px}
  .pe-nav-count{display:none}
  .pe-content{flex:1;min-height:0}
  .pe-module-parent{display:none}
  .pe-operation-heading{min-height:25px}
  .pe-role-info .user-permission-badge:not(.locked):not([data-user-permission-summary]){display:none}
  .ua-permission-dialog>.ua-modal-body>.ua-field{gap:8px}
  .ua-permission-dialog>.ua-modal-body>.ua-field select{width:160px}
  .ua-permission-dialog>.ua-modal-footer{gap:5px}
  .ua-permission-dialog>.ua-modal-footer button{font-size:12px;padding:5px 8px}
}

/* Phone permissions keep the original module controls behind a complete selector. */
body.mobile-ui-active .ua-permission-dialog{height:100%!important;max-height:100%!important;}
body.mobile-ui-active .ua-permission-dialog .pe-workspace{display:flex;flex-direction:column;min-height:0;}
body.mobile-ui-active .ua-permission-dialog .pe-workspace:has(.mum-permission-select)>.pe-directory{display:none;}
body.mobile-ui-active .ua-permission-dialog .mum-permission-select{display:flex;flex:none;align-items:center;gap:8px;margin:0;padding:6px 8px;border-bottom:1px solid #e0e7f0;font-size:11px;}
body.mobile-ui-active .ua-permission-dialog .mum-permission-select>span{flex:none;}
body.mobile-ui-active .ua-permission-dialog .mum-permission-select>select{width:100%;min-width:0;min-height:36px;height:36px;padding:6px;font-size:12px;margin:0;}
body.mobile-ui-active .ua-permission-dialog .pe-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px;padding:6px 8px;}
body.mobile-ui-active .ua-permission-dialog .pe-search{grid-column:1/-1;min-width:0;}
body.mobile-ui-active .ua-permission-dialog .pe-filter{min-width:0;}
body.mobile-ui-active .ua-permission-dialog .pe-filter>span{display:none;}
body.mobile-ui-active .ua-permission-dialog .pe-filter>select{width:100%;min-width:0;font-size:12px;}
body.mobile-ui-active .ua-permission-dialog .pe-toolbar button{min-height:34px;font-size:11px;padding:5px;}
body.mobile-ui-active .ua-permission-dialog .pe-toolbar .pe-clear:not([hidden]){grid-column:1;grid-row:3;justify-self:start;}
body.mobile-ui-active .ua-permission-dialog .pe-content{padding:8px;min-height:0;}
body.mobile-ui-active .ua-permission-dialog .pe-module-heading{padding-bottom:6px;}
body.mobile-ui-active .ua-permission-dialog .pe-module-heading h4{font-size:14px;line-height:20px;}
body.mobile-ui-active .ua-permission-dialog .pe-permissions{gap:5px;}
body.mobile-ui-active .ua-permission-dialog .pe-operation-group{margin-top:7px;}
body.mobile-ui-active .ua-permission-dialog .pe-permission-row .user-permission-item{padding:7px!important;min-height:36px;}
body.mobile-ui-active .ua-permission-dialog .pe-permission-row .user-permission-title{font-size:12px;line-height:18px;}

/* Size the permission grid by the space available inside the editor. */
.pe-content{container-type:inline-size;container-name:permission-content}
.pe-scope-hint{margin:8px 0 0;color:#607792;font-size:12px;line-height:1.6}
@media(min-width:769px){
  @container permission-content (min-width:360px){.pe-permissions{grid-template-columns:repeat(2,minmax(0,1fr))}}
  @container permission-content (min-width:540px){.pe-permissions{grid-template-columns:repeat(3,minmax(0,1fr))}}
  @container permission-content (min-width:720px){.pe-permissions{grid-template-columns:repeat(4,minmax(0,1fr))}}
}

.pe-permission-row.pe-inactive{background:#f5f7fa;border-color:#dce3ec}
.pe-permission-row.pe-inactive .user-permission-title{color:#63758b}
.pe-permission-row.pe-inactive .pe-configured-note{color:#63758b}

@media(min-width:769px){
  @container permission-content (min-width:720px){
    [data-pe-module="dashboard"] [data-pe-control="canViewDashboardOwnProjectsOnly"]{grid-column:span 2}
  }
}

/* Let the review and editor share the available space above the fixed footer. */
.ua-review-workspace { display:flex; flex-direction:column; flex:1; min-height:0; min-width:0; }
.ua-permission-dialog .ua-review-workspace > .ua-template-impact {
  box-sizing:border-box; flex:0 0 var(--ua-review-height); min-height:0; max-height:none;
}
.ua-review-splitter { display:none; }
.ua-review-splitter:has(+ .ua-template-impact:not([hidden])) {
  display:flex; flex:0 0 18px; align-items:center; justify-content:center;
  cursor:ns-resize; touch-action:none; user-select:none;
}
.ua-review-splitter::after {
  content:""; width:44px; height:4px; border-radius:3px; background:#93a9c5;
}
.ua-review-splitter:hover::after, .ua-review-splitter:focus-visible::after { background:#3066bf; }
.ua-review-splitter:focus-visible { outline:2px solid #3066bf; outline-offset:-2px; border-radius:3px; }
@media (pointer:coarse) { .ua-review-splitter:has(+ .ua-template-impact:not([hidden])) { flex-basis:26px; } }
