.pc-units-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:12px 0; padding:14px 16px; color:#18324a; background:#fff; border:1px solid #dbe4ee; border-radius:12px; }
.pc-units-toolbar strong { font-size:15px; }
.pc-units-toolbar span { color:#64748b; font-size:13px; }
.pc-units-search { width:min(430px, 100%); }
.pc-units-search input { width:100%; min-height:42px; padding:9px 13px; font:inherit; color:#132b43; background:#f8fafc; border:1px solid #cbd5e1; border-radius:9px; outline:none; }
.pc-units-search input:focus { border-color:#1746c7; box-shadow:0 0 0 3px rgba(23,70,199,.12); }
.pc-units-table thead { position:sticky; top:0; z-index:1; background:#f8fafc; }
.pc-units-table tbody tr:hover { background:#f8fbff; }
.pc-unit-name { display:block; color:#132b43; font-weight:700; }
.pc-unit-meta { display:block; margin-top:3px; color:#64748b; font-size:12px; }

.pc-user-dialog { width:min(760px, calc(100vw - 32px)) !important; max-height:min(860px, calc(100vh - 32px)) !important; }
.pc-role-display { display:flex; flex-direction:column; gap:2px; padding:11px 13px; color:#17324d; background:#f8fafc; border:1px solid #d8e2ea; border-radius:9px; }
.pc-role-display small { color:#64748b; font-size:12px; }
.pc-unit-permissions__controls { margin-top:8px; }
.pc-access-mode { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.pc-access-mode > label { display:flex; align-items:flex-start; gap:9px; padding:12px; border:1px solid #d8e2ea; border-radius:10px; cursor:pointer; }
.pc-access-mode > label:has(input:checked) { background:#eef4ff; border-color:#1746c7; box-shadow:0 0 0 2px rgba(23,70,199,.08); }
.pc-access-mode input { margin-top:3px; accent-color:#1746c7; }
.pc-access-mode span,.pc-access-mode small { display:block; }
.pc-access-mode small { margin-top:2px; color:#64748b; font-size:12px; line-height:1.35; }
.pc-unit-picker { margin-top:12px; padding:12px; background:#f8fafc; border:1px solid #d8e2ea; border-radius:10px; }
.pc-unit-picker__bar { display:flex; align-items:center; gap:12px; }
.pc-unit-picker__bar input { flex:1; min-height:40px; padding:8px 11px; font:inherit; background:#fff; border:1px solid #cbd5e1; border-radius:8px; outline:none; }
.pc-unit-picker__bar input:focus { border-color:#1746c7; box-shadow:0 0 0 3px rgba(23,70,199,.1); }
.pc-unit-picker__count { flex:none; color:#475569; font-size:12px; font-weight:700; }
.pc-unit-picker__actions { display:flex; gap:12px; margin:9px 0; }
.pc-unit-picker__actions button { padding:0; color:#1746c7; font:inherit; font-size:12px; font-weight:700; background:transparent; border:0; cursor:pointer; }
.pc-unit-picker__list { max-height:260px; padding-right:4px; overflow-y:auto; }
.pc-unit-picker__option { display:flex !important; align-items:flex-start !important; gap:9px !important; margin:0 !important; padding:9px 8px; color:#20384f; border-radius:7px; cursor:pointer; }
.pc-unit-picker__option:hover { background:#eaf1fb; }
.pc-unit-picker__option input { flex:none; margin-top:3px; accent-color:#1746c7; }
.pc-unit-picker__error { margin-top:8px; color:#b91c1c; font-size:12px; font-weight:700; }

@media (max-width:700px) {
  .pc-units-toolbar { align-items:stretch; flex-direction:column; }
  .pc-units-search { width:100%; }
  .pc-access-mode { grid-template-columns:1fr; }
  .pc-unit-picker__bar { align-items:stretch; flex-direction:column; }
}
