/* Employee / Lead list row selection highlight (same palette as access) */
.plan-table tbody tr.employee-row-selected td {
  background: #ccdff7 !important;
}
.plan-table tbody tr.employee-row-selected td:first-child {
  box-shadow: inset 3px 0 0 #2e5e97;
}

.plan-table tbody tr.employee-empty-row td,
.plan-table tbody tr.employee-lead-empty-row td {
  height: 26px;
}

.plan-btn.yellow.employee-toolbar-delete {
  margin-left: 0;
}

.employee-toolbar-search {
  margin-left: auto;
  width: 180px;
  height: 26px;
  min-height: 26px;
  box-sizing: border-box;
  border-radius: 8px;
  border: 1px solid rgba(126, 162, 196, 0.46);
  background: rgba(8, 22, 44, 0.5);
  color: #e7f1ff;
  padding: 0 10px;
  font-size: 12px;
}
.employee-toolbar-search::placeholder {
  color: rgba(210, 225, 245, 0.55);
}

.access-channel-select,
.access-role-select,
.access-contact-input {
  width: 100%;
  min-height: 26px;
  border: 1px solid #afbdd0;
  border-radius: 6px;
  background: #fff;
  color: #1d3658;
  font-size: 11px;
  padding: 2px 6px;
}

.access-contact-value {
  color: #26476f;
  font-weight: 600;
}

.access-status-pill {
  display: inline-flex;
  align-items: center;
  min-height: 18px;
  border-radius: 999px;
  padding: 0 7px;
  font-size: 8px;
  font-weight: 600;
  border: 1px solid transparent;
}

.access-status-pill.is-green {
  color: #256c3d;
  border-color: #a8d9b7;
  background: #e0f2e6;
}

.access-status-pill.is-red {
  color: #9f3e47;
  border-color: #e3b9bf;
  background: #f7dfe3;
}

.access-status-pill.is-yellow {
  color: #8f611f;
  border-color: #ead7aa;
  background: #f8eed8;
}

.access-status-pill.is-blue {
  color: #305f9f;
  border-color: #bfd1ee;
  background: #dde8fb;
}

.access-status-pill.is-gray {
  color: #62758f;
  border-color: #cbd4e1;
  background: #e8edf5;
}

.access-rights-layout {
  margin-top: 10px;
  display: flex;
  align-items: flex-start;
  gap: 6px;
}

.access-modules-nav {
  width: min(280px, 100%);
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.access-module-btn {
  border: 1px solid rgba(126, 162, 196, 0.65);
  border-radius: 10px;
  min-height: 34px;
  background: rgba(8, 18, 36, 0.4);
  color: #d3e5fb;
  text-align: left;
  padding: 4px 10px;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
}

.access-module-btn.is-active {
  border-color: rgba(240, 192, 116, 0.72);
  background: rgba(108, 73, 28, 0.48);
  color: #ffe5ba;
}

.access-rights-panel {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.access-rights-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.access-rights-head h3 {
  margin: 0;
  font-size: 13px;
  color: #d8e6f9;
}

.access-lead-selection-badge {
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 28px;
  border-radius: 999px;
  border: 1px solid rgba(107, 151, 204, 0.5);
  background: rgba(10, 27, 55, 0.55);
  color: #cfe3ff;
  padding: 4px 12px;
  font-size: 10px;
  font-weight: 700;
}

.access-lead-selection-badge #accessActiveLeadName {
  color: #ffffff;
}

.access-role-chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 24px;
  border-radius: 999px;
  border: 1px solid rgba(126, 162, 196, 0.46);
  background: rgba(12, 25, 48, 0.45);
  color: #d0e2fb;
  padding: 2px 10px;
  font-size: 10px;
}

.access-rights-table th:nth-child(1),
.access-rights-table td:nth-child(1) { width: 40%; }
.access-rights-table th:nth-child(2),
.access-rights-table td:nth-child(2),
.access-rights-table th:nth-child(3),
.access-rights-table td:nth-child(3),
.access-rights-table th:nth-child(4),
.access-rights-table td:nth-child(4),
.access-rights-table th:nth-child(5),
.access-rights-table td:nth-child(5) { width: 15%; }

.access-rights-check {
  width: 14px;
  height: 14px;
}

.access-rights-head-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
}

.access-rights-col-check {
  width: 14px;
  height: 14px;
}

.access-rights-table {
  min-width: 720px;
}

.access-status {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  border-radius: 999px;
  border: 1px solid rgba(134, 166, 207, 0.46);
  background: rgba(18, 43, 78, 0.2);
  color: #d2e1f6;
  padding: 2px 9px;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.access-status.is-active {
  color: #e6fff0;
  border-color: rgba(110, 188, 129, 0.6);
  background: rgba(56, 109, 72, 0.3);
}

.access-status.is-pending {
  color: #ffeac8;
  border-color: rgba(226, 181, 111, 0.6);
  background: rgba(108, 77, 33, 0.3);
}

.access-status.is-blocked {
  color: #ffe1e6;
  border-color: rgba(205, 134, 149, 0.58);
  background: rgba(114, 59, 76, 0.3);
}

.access-status.is-revoked {
  color: #f5f6fa;
  border-color: rgba(144, 157, 176, 0.58);
  background: rgba(88, 98, 114, 0.3);
}

.access-status.is-none {
  color: #dde5f2;
  border-color: rgba(150, 165, 189, 0.58);
  background: rgba(80, 92, 113, 0.26);
}

.access-inline-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  align-items: center;
}

.access-action-btn {
  border: 1px solid rgba(124, 160, 207, 0.65);
  border-radius: 8px;
  min-height: 24px;
  padding: 2px 7px;
  background: #dce6f4;
  color: #1d3658;
  font-size: 10px;
  font-weight: 700;
  cursor: pointer;
  white-space: nowrap;
}

.access-worker-menu-wrap {
  position: relative;
}

.access-worker-menu {
  position: fixed;
  min-width: 210px;
  border-radius: 10px;
  border: 1px solid rgba(126, 162, 196, 0.46);
  background: #0d264f;
  box-shadow: 0 12px 26px rgba(0, 0, 0, 0.28);
  padding: 6px;
  display: none;
  z-index: 9999;
  white-space: normal;
}

.access-worker-menu-wrap.is-open .access-worker-menu {
  display: block;
}

.access-worker-menu button {
  width: 100%;
  min-height: 32px;
  border: none;
  border-radius: 8px;
  background: transparent;
  color: #ecf4ff;
  text-align: left;
  padding: 0 10px;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
}

.access-worker-menu button:hover {
  background: rgba(255, 255, 255, 0.08);
}

.access-worker-menu button.is-danger {
  color: #ffd2da;
}

.access-action-btn.is-danger {
  border-color: rgba(188, 112, 124, 0.6);
  background: #f1d7de;
  color: #6a2031;
}

.access-auth-grid {
  display: grid;
  grid-template-columns: 1.08fr 0.92fr;
  gap: 10px;
}

.access-auth-stack {
  display: grid;
  gap: 10px;
}

.access-auth-register-card {
  border-color: #a7bfdf;
  background: linear-gradient(180deg, #f4f8ff 0%, #e9f1fb 100%);
}

.access-auth-activation-stack {
  align-content: start;
}

.access-lead-activation-panel {
  border-color: #d9be8c;
  background: linear-gradient(180deg, #fff8ea 0%, #f5ead3 100%);
}

.access-auth-card,
.access-auth-mini {
  border: 1px solid #c7d4e6;
  border-radius: 14px;
  background: #f5f8fc;
  color: #17375f;
  padding: 12px;
}

.access-auth-card h3,
.access-auth-mini h4 {
  margin: 0;
  font-size: 17px;
}

.access-auth-fields {
  margin-top: 10px;
  display: grid;
  grid-template-columns: repeat(2, minmax(220px, 1fr));
  gap: 10px;
}

.access-auth-field {
  display: grid;
  gap: 4px;
}

.access-auth-field span {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: #607ba3;
  font-weight: 800;
}

.access-auth-input {
  width: 100%;
  min-height: 36px;
  border-radius: 10px;
  border: 1px solid #b3c6e1;
  background: #fff;
  color: #16375f;
  font-size: 12px;
  padding: 0 10px;
}

.access-auth-input:disabled {
  background: #edf2f9;
  color: #607a9f;
}

.access-auth-actions {
  margin-top: 10px;
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.access-auth-line {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 0;
  border-top: 1px solid #dbe4f1;
  font-size: 12px;
}

.access-auth-line:first-of-type {
  border-top: none;
  padding-top: 6px;
}

.access-auth-line span {
  color: #607ba3;
  font-weight: 700;
}

.access-auth-line strong {
  color: #183b66;
}

.access-perm {
  display: inline-flex;
  justify-content: center;
  min-width: 22px;
  font-size: 11px;
  font-weight: 700;
}

.access-perm.is-yes {
  color: #1e7a3f;
}

.access-perm.is-no {
  color: #849cbf;
}

