/* Bootstrap Alert CSS */
.alert {
  position: relative;
  padding: 1rem 1rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.375rem;
}
.alert-heading {
  color: inherit;
}
.alert-link {
  font-weight: 700;
}
.alert-dismissible {
  padding-right: 3rem;
}
.alert-dismissible .btn-close {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  padding: 1.25rem 1rem;
}
.alert-primary {
  color: #084298;
  background-color: #cfe2ff;
  border-color: #b6d4fe;
}
.alert-primary .alert-link {
  color: #06357a;
}
.alert-secondary {
  color: #41464b;
  background-color: #e2e3e5;
  border-color: #d3d6d8;
}
.alert-secondary .alert-link {
  color: #34383c;
}
.alert-success {
  color: #0f5132;
  background-color: #d1e7dd;
  border-color: #badbcc;
}
.alert-success .alert-link {
  color: #0c4128;
}
.alert-info {
  color: #055160;
  background-color: #cff4fc;
  border-color: #b6effb;
}
.alert-info .alert-link {
  color: #04414d;
}
.alert-warning {
  color: #664d03;
  background-color: #fff3cd;
  border-color: #ffecb5;
}
.alert-warning .alert-link {
  color: #523e02;
}
.alert-danger {
  color: #842029;
  background-color: #f8d7da;
  border-color: #f5c2c7;
}
.alert-danger .alert-link {
  color: #6a1a21;
}
.alert-light {
  color: #636464;
  background-color: #fefefe;
  border-color: #fdfdfe;
}
.alert-light .alert-link {
  color: #4f5050;
}
.alert-dark {
  color: #141619;
  background-color: #d3d3d4;
  border-color: #bcbebf;
}
.alert-dark .alert-link {
  color: #101214;
}
[data-toggle="tooltip"] {
  position: relative;
  display: inline-block;
  cursor: pointer;
  /* Tooltip Box */
  /* Placements */
}
[data-toggle="tooltip"] .tooltip-text {
  display: none;
  position: absolute;
  min-width: 250px;
  padding: 16px;
  font-size: 13px;
  font-weight: normal;
  text-align: left;
  color: #fff;
  background-color: #000c0c;
  border: 1px solid #d5d5d5;
  border-radius: 10px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1), 0 0 56px rgba(0, 0, 0, 0.08);
  z-index: 99999999;
  box-sizing: border-box;
  transform: translate(-50%, -100%);
  transition: all 0.65s cubic-bezier(0.84, -0.18, 0.31, 1.26);
  white-space: normal;
  /* Arrow */
}
[data-toggle="tooltip"] .tooltip-text a {
  color: #a0e0ff;
  text-decoration: underline;
  transition: color 0.2s;
  font-size: 13px !important;
}
[data-toggle="tooltip"] .tooltip-text a:hover {
  color: #39b6f5;
}
[data-toggle="tooltip"] .tooltip-text i {
  position: absolute;
  top: 100%;
  left: 50%;
  width: 24px;
  height: 12px;
  margin-left: -6px;
  overflow: hidden;
}
[data-toggle="tooltip"] .tooltip-text i::after {
  content: '';
  position: absolute;
  width: 12px;
  height: 12px;
  left: 50%;
  background-color: #000c0c;
  transform: translate(-50%, -50%) rotate(45deg);
  box-shadow: 0 1px 8px rgba(0, 0, 0, 0.5);
}
[data-toggle="tooltip"]:not(.click):hover .tooltip-text,
[data-toggle="tooltip"]:not(.click):focus-within .tooltip-text {
  display: block;
}
[data-toggle="tooltip"].click.is-active .tooltip-text {
  display: block;
}
[data-toggle="tooltip"]:not([data-placement]) .tooltip-text,
[data-toggle="tooltip"][data-placement="top"] .tooltip-text {
  top: -20px;
  left: 50%;
  transform: translate(-50%, -100%);
}
[data-toggle="tooltip"]:not([data-placement]) .tooltip-text i,
[data-toggle="tooltip"][data-placement="top"] .tooltip-text i {
  margin-left: -12px;
}
[data-toggle="tooltip"][data-placement="bottom"] .tooltip-text {
  top: 100%;
  left: 25%;
  transform: translate(-50%, 0);
  margin-top: 10px;
}
[data-toggle="tooltip"][data-placement="bottom"] .tooltip-text i {
  top: -12px;
  transform: rotate(180deg);
}
[data-toggle="tooltip"][data-placement="left"] .tooltip-text {
  top: 50%;
  left: -10px;
  transform: translate(-100%, -50%);
}
[data-toggle="tooltip"][data-placement="left"] .tooltip-text i {
  top: 50%;
  left: 100%;
  transform: translateY(-50%) rotate(-90deg);
}
[data-toggle="tooltip"][data-placement="right"] .tooltip-text {
  top: 50%;
  left: 100%;
  transform: translate(0, -50%);
  margin-left: 10px;
}
[data-toggle="tooltip"][data-placement="right"] .tooltip-text i {
  top: 50%;
  left: -12px;
  transform: translateY(-50%) rotate(90deg);
}
/* Vars */
/* Buttons */
/* Input fields */
/* Tabs */
/* Tables */
/* Alert boxes */
.table {
  width: 100%;
  margin-bottom: 1rem;
  color: #212529;
  border-collapse: collapse;
}
.table th,
.table td {
  padding: 0.75rem;
  vertical-align: top;
  border-top: 1px solid #dee2e6;
}
.table thead th {
  vertical-align: bottom;
  border-bottom: 2px solid #dee2e6;
}
.table tbody + tbody {
  border-top: 2px solid #dee2e6;
}
.table-sm th,
.table-sm td {
  padding: 0.3rem;
}
.table-bordered {
  border: 1px solid #dee2e6;
}
.table-bordered th,
.table-bordered td {
  border: 1px solid #dee2e6;
}
.table-bordered thead th,
.table-bordered thead td {
  border-bottom-width: 2px;
}
.table-striped tbody tr:nth-of-type(odd) td {
  background-color: rgba(0, 0, 0, 0.05) !important;
}
.table-hover tbody tr:hover td {
  background-color: rgba(0, 0, 0, 0.075) !important;
}
.table .sortable {
  cursor: pointer;
}
.table .sortable:after {
  content: " ⇅";
  /* Default sort indicator */
  font-size: 1.3em;
}
.table .sortable.asc:after {
  content: " ▲";
  /* Ascending sort indicator */
  font-size: 1em;
}
.table .sortable.desc:after {
  content: " ▼";
  /* Descending sort indicator */
  font-size: 1em;
}
@media (max-width: 768px) {
  .table-responsive {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive > .table-bordered {
    border: 0;
  }
}
#pp_cred_wrap h3 {
  font-size: 15px;
}
#pp_cred_wrap h4,
#pp_cred_wrap th,
#pp_cred_wrap td,
#pp_cred_wrap select {
  font-size: 13px;
}
#agent-profile .form-table td,
#agent-profile .form-table th {
  line-height: 1.5em;
  padding: 0.2em;
}
#agent-profile .form-table th {
  width: 100px;
}
#pp-permissions-wrapper h1 a {
  color: #655997;
}
#pp-permissions-wrapper h1 a:hover {
  text-decoration: underline;
}
table.pp-agent-profile {
  width: 100%;
  margin-bottom: 20px;
}
.pp-group_post-types,
.pp-group-roles {
  background-color: #fff;
  border-color: #6eaebf;
}
.pp-group_members {
  margin: 0 0 20px;
}
.pp-group_members h3 {
  margin-bottom: 0;
}
.pp-group_members h4 {
  margin-top: 0;
  margin-bottom: 1.5em;
}
#pp-agent-selection_member-wrapper {
  width: 100%;
  max-width: 800px;
}
body.permissions_page_presspermit-edit-permissions span.select2 {
  width: 100% !important;
}
#agent-profile div.pp-group_members span:not(.select2):not(.select2 span) {
  border: none;
  border-bottom: none;
}
#pp_add_role select,
#pp_add_exception select {
  min-width: 9em;
  margin-bottom: 15px;
}
#pp_add_role {
  width: 100%;
}
@media (min-width: 780px) {
  #pp_add_role {
    width: 550px;
  }
}
#pp_add_role .pp-checkbox {
  margin: 3px 0;
}
#pp_add_role #pp_add_exception .pp-checkbox {
  margin-top: 2px;
  margin-bottom: 10px;
}
#pp_select_x_assign_for .pp-checkbox label {
  vertical-align: baseline;
}
div.pp-add-exceptions {
  padding-top: 10px;
  min-width: 870px;
}
#group-roles-selections {
  margin-top: 20px;
}
#wpbody-content #pp_add_exception #menu-settings-column {
  padding-top: 3px;
}
#pp_add_exception .pp-select-x-operation,
#pp_add_exception .pp-select-x-mod-type {
  text-align: left;
  padding-left: 15px;
}
#pp_add_exception .pp-select-x-operation,
#pp_add_exception .pp-select-x-mod-type,
#pp_add_exception .pp-select-x-via-type {
  padding-top: 5px;
  padding-left: 15px;
  padding-right: 15px;
}
#pp_add_exception .pp-select-x-via-type {
  padding-right: 10px;
}
#pp_add_exception .pp-select-x-operation label,
#pp_add_exception .pp-select-x-mod-type label {
  padding-bottom: 20px;
  white-space: nowrap;
}
#pp_add_exception div.pp-checkbox {
  margin-bottom: 10px;
}
#pp_add_exception #select-role-item {
  margin-bottom: 0;
}
#pp_add_exception #nav-menus-frame {
  margin-top: -2.35em;
}
#pp_add_exception #nav-menus-frame h3 {
  padding-top: 8px;
}
#pp_add_exception #nav-menus-frame h3 span {
  font-family: sans-serif;
  font-size: 13px;
  font-weight: bold;
}
#pp_add_exception .nav-tabs-nav,
#pp_add_exception button.handlediv {
  display: none;
}
#pp_add_exception .pp-select-items {
  padding-left: 15px;
}
span.nav-tab {
  display: none;
}
.pp-select-items div.postbox {
  padding-bottom: 25px;
  margin-bottom: 0;
}
.pp-edit-msg {
  background-color: #FFFFE0;
  border: 1px solid #ccc;
  padding: 5px;
  margin-top: 0;
  margin-bottom: 5px;
}
#pp-permissions-wrapper #pp_review_roles {
  margin-top: 0;
}
#pp_tbl_role_selections,
#pp_tbl_exception_selections {
  background-color: #909090;
}
#pp_tbl_role_selections thead tr th,
#pp_tbl_role_selections tbody tr td,
#pp_tbl_exception_selections thead tr th,
#pp_tbl_exception_selections tbody tr td {
  background-color: white;
  padding-left: 0.5em;
  padding-right: 0.5em;
  min-width: 0;
}
#group-exceptions-selections {
  margin-left: 10px;
  margin-right: 10px;
}
#pp_review_exceptions div.mirror-label {
  font-weight: bold;
}
div.mirror-confirm {
  border-left-color: #46b450 !important;
  background: #fff;
  border: 1px solid #ccd0d4;
  border-left-color: #ccd0d4;
  border-left-width: 1px;
  border-left-width: 4px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
  margin: 5px 15px 2px 0;
  padding: 1px 12px;
}
/*---- Bulk Edit Exceptions ----*/
.pp-role-bulk-edit,
.pp-exception-bulk-edit {
  margin: 1em 0 0 0;
}
.pp-role-bulk-edit select,
.pp-exception-bulk-edit select {
  min-width: 12em;
}
input.submit-edit-item-role {
  margin-left: 1em;
}
.pp-current-site-roles input {
  margin-left: 1em;
}
.pp-current-site-roles label {
  margin-right: 2em;
  white-space: nowrap;
}
div.pp-current-roles,
div.pp-current-exceptions {
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}
div.pp-current-roles h4,
div.pp-current-exceptions h4 {
  margin-bottom: 0.2em;
}
/* ?? */
.pp-current-site-roles label,
.pp_item_role_caption {
  color: #21759B;
  font-weight: bold;
}
label span.pp_nolink,
.pp_item_role_caption span.pp_nolink {
  color: black;
}
.pp-taxonomy-caption {
  font-weight: bold;
  margin-bottom: 0.4em;
}
.pp-role-terms div {
  margin-bottom: 0.4em;
  color: black;
}
.pp-role-container {
  display: flex;
  flex-direction: row;
}
.pp-role-container label {
  flex: 1;
}
.pp-readonly .pp-current-site-roles label {
  margin: 0 0 0 6px;
}
.pp-current-exceptions table tbody tr td {
  text-align: left;
  background-color: white;
  padding: 0 0.5em 0.2em 0.5em;
  min-width: 0;
  vertical-align: top;
  border-bottom: 1px solid #777;
  border-top: 1px solid white;
}
.pp-current-exceptions table tbody tr th {
  border-top: 1px solid #f2f2f2;
}
.pp-role-terms-wrapper {
  padding-top: 0.2em;
}
.pp-taxonomy-caption {
  text-align: center;
}
div.pp-current-type-roles a {
  margin-left: 5px;
}
.role_both {
  font-weight: bold;
  color: #120FAF;
}
.role_ch {
  font-weight: bold;
  color: #777;
}
input.exc-copied {
  background-color: #afa !important;
  border: 1px solid black !important;
}
tr.pp_faded td,
label.pp_faded {
  color: #aa8d8d;
}
.pp_exceptions_notes {
  margin: 0 0 20px;
  padding: 20px;
  background-color: #FFFFE0;
  border: 1px solid #E6DB55;
}
.pp_exceptions_notes ul {
  list-style-type: circle;
  margin-left: 16px;
}
#agent_submit_member,
.pp-members-current #member,
.pp-members-current h4 {
  margin-left: 8px;
}
#pp_find_users_field {
  margin-left: 0;
}
#pp-all-anon-warning {
  margin-top: 10px;
  margin-bottom: 10px;
}
#pp_add_exception td.pp-select-x-via-type div,
#pp_add_exception td.pp-select-x-status p {
  white-space: nowrap;
}
#pp_add_exception td.pp-select-x-via-type label {
  padding-right: 10px;
}
#pp_add_exception td.pp-select-items,
#nav-menus-frame,
#nav-menus-frame #menu-settings-column.pp-menu-settings-column {
  width: 100% !important;
}
ul.categorychecklist li.highlight-none {
  font-style: italic;
  font-weight: 600;
}
ul.categorychecklist label {
  vertical-align: top;
}
ul.categorychecklist span {
  font-weight: bold;
  font-size: 120%;
  cursor: cell;
}
.tabs-panel-view-all ul.categorychecklist span {
  display: inline-block;
  width: 12px;
}
#nav-menus-frame .add-to-menu {
  float: none;
  margin-left: 15px;
}
td.pp-select-items #nav-menu-meta div.tabs-panel ul li label {
  vertical-align: baseline;
}
.add-menu-item-pagelinks {
  display: flex;
  gap: 5px;
  justify-content: center;
  align-items: center;
  margin: 20px 0;
}
.add-menu-item-pagelinks .page-numbers {
  padding: 4px 10px;
  border: 1px solid #ddd;
  background: #f7f7f7;
  color: #0073aa;
  text-decoration: none;
  border-radius: 4px;
  min-width: 8px!important;
}
.add-menu-item-pagelinks .page-numbers:hover {
  background: #0073aa;
  color: #fff !important;
  font-weight: bold;
}
.add-menu-item-pagelinks .current {
  background: #0073aa;
  color: #fff;
  font-weight: bold;
  border: 1px solid #0073aa;
}
.add-menu-item-pagelinks .next,
.add-menu-item-pagelinks .prev {
  font-weight: bold;
}
#pp_current_exceptions {
  margin-top: 36px;
  margin-bottom: 80px;
}
#pp_current_exceptions .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 24px;
}
#pp_current_exceptions .table {
  margin-bottom: 0;
}
#pp_current_exceptions .header {
  margin-bottom: 32px;
}
#pp_current_exceptions .header h1 {
  font-size: 24px;
  font-weight: 600;
  margin: 0;
  color: #111827;
}
#pp_current_exceptions .permission-section {
  background: white;
  border-radius: 8px;
  box-shadow: 0 8px 10px rgba(0, 0, 0, 0.1);
  margin-bottom: 36px;
}
#pp_current_exceptions .section-header {
  padding: 16px 24px;
  background-color: #dedfe0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  user-select: none;
}
#pp_current_exceptions .section-header:hover {
  background-color: #e3e4e5;
}
#pp_current_exceptions .subsection-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  user-select: none;
}
#pp_current_exceptions .section-title {
  font-weight: 600;
  font-size: 16px;
  margin: 0;
  color: #374151;
}
#pp_current_exceptions .section-controls {
  display: flex;
  align-items: center;
  gap: 12px;
}
#pp_current_exceptions .search-box {
  padding: 6px 12px;
  border-radius: 4px;
  border: 1px solid #e5e7eb;
  font-size: 14px;
  width: 200px;
}
#pp_current_exceptions .icon-guidance {
  padding: 12px 24px;
}
#pp_current_exceptions .checkbox-column {
  width: 1%;
  text-align: center;
}
#pp_current_exceptions .permission-type {
  padding: 12px 24px 12px 24px;
  margin-bottom: 6px;
}
#pp_current_exceptions .permission-type:last-child {
  border-bottom: none;
}
#pp_current_exceptions .permission-type thead tr th {
  border-top: none;
}
#pp_current_exceptions .permission-type-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 6px;
}
#pp_current_exceptions .permission-type-title {
  margin-top: 6px;
  margin-bottom: 0;
  font-weight: 600;
  display: flex;
  align-items: center;
}
#pp_current_exceptions .permission-type-title .badge {
  margin-left: 8px;
}
#pp_current_exceptions .permission-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 12px;
}
#pp_current_exceptions .permission-item {
  display: flex;
  align-items: center;
  padding: 8px 12px;
  background-color: #f9fafb;
  border-radius: 6px;
  border: 1px solid #e5e7eb;
}
#pp_current_exceptions .permission-status {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  margin-right: 12px;
  flex-shrink: 0;
}
#pp_current_exceptions .status-enabled {
  background-color: #10b981;
}
#pp_current_exceptions .status-blocked {
  background-color: #ef4444;
}
#pp_current_exceptions .status-limited {
  background-color: #f59e0b;
}
#pp_current_exceptions .permission-name {
  flex-grow: 1;
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#pp_current_exceptions .permission-actions {
  opacity: 0;
  transition: opacity 0.2s;
  flex-shrink: 0;
}
#pp_current_exceptions .permission-item:hover .permission-actions {
  opacity: 1;
}
#pp_current_exceptions .btn {
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 12px;
  cursor: pointer;
  border: none;
  background: none;
}
#pp_current_exceptions .btn-edit {
  color: #4f46e5;
}
#pp_current_exceptions .btn-edit:hover {
  background-color: rgba(79, 70, 229, 0.1);
}
#pp_current_exceptions .badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 9999px;
  font-size: 12px;
  font-weight: 500;
}
#pp_current_exceptions .for-type .badge {
  padding: 2px 8px 1px 8px;
}
#pp_current_exceptions .badge-info {
  background-color: rgba(79, 70, 229, 0.1);
  color: #4f46e5;
}
#pp_current_exceptions .badge-count {
  background-color: rgba(255, 255, 255, 0.7);
  color: #6b7280;
}
#pp_current_exceptions .mod-type-key {
  padding-right: 50px !important;
}
#pp_current_exceptions .notes {
  padding: 16px 24px;
  font-size: 13px;
  color: #6b7280;
  border-top: 1px solid #e5e7eb;
  background-color: #f9fafb;
  text-align: center;
}
#pp_current_exceptions .notes span {
  padding-right: 20px;
  white-space: nowrap;
}
#pp_current_exceptions .notes strong {
  color: #374151;
}
#pp_current_exceptions .notes-main {
  padding-top: 20px;
  padding-bottom: 20px;
}
#pp_current_exceptions .footer-actions {
  display: flex;
  justify-content: space-between;
  margin-top: 24px;
}
#pp_current_exceptions .btn-primary {
  background-color: #4f46e5;
  color: white;
  padding: 8px 16px;
  border-radius: 6px;
  font-weight: 500;
}
#pp_current_exceptions .btn-link {
  color: #4f46e5;
  background: none;
  font-weight: 500;
}
#pp_current_exceptions .pagination {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 16px;
}
#pp_current_exceptions .page-btn {
  padding: 4px 8px;
  border: 1px solid #e5e7eb;
  background: white;
  border-radius: 4px;
  cursor: pointer;
}
#pp_current_exceptions .page-btn.active {
  background-color: #4f46e5;
  color: white;
  border-color: #4f46e5;
}
#pp_current_exceptions .expand-icon {
  transition: transform 0.2s;
}
#pp_current_exceptions .collapsed .expand-icon {
  transform: rotate(-90deg);
}
#pp_current_exceptions .hidden {
  display: none;
}
#pp_current_exceptions .no-results {
  grid-column: 1 / -1;
  text-align: center;
  padding: 16px;
  color: #6b7280;
  font-style: italic;
}
#pp_current_exceptions table tr td {
  vertical-align: middle;
}
#pp_current_exceptions .checkbox-column,
#pp_current_exceptions .icon-column {
  width: 20px;
}
#pp_current_exceptions .status-column {
  width: 20%;
}
#pp_current_exceptions .assign-for-column {
  width: 25px;
}
#pp_current_exceptions td.assign-for-column {
  text-align: right;
  padding-right: 0;
}
#pp_current_exceptions i.assign-child {
  color: #999;
  border: 1px dashed #999;
  padding: 0 1px;
}
#pp_current_exceptions i.assign-both {
  color: #120faf;
  font-style: bold;
  padding: 0 1px;
}
#pp_current_exceptions .icon-column {
  vertical-align: bottom;
}
#pp_current_exceptions .edit-column {
  width: 10%;
  text-align: right;
}
#pp_current_roles {
  margin-top: 24px;
  margin-bottom: 16px;
}
#pp_current_roles .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 24px;
}
#pp_current_roles .table {
  margin-bottom: 0;
}
#pp_current_roles .header {
  margin-bottom: 32px;
}
#pp_current_roles .header h1 {
  font-size: 24px;
  font-weight: 600;
  margin: 0;
  color: #111827;
}
#pp_current_roles .permission-section {
  background: white;
  border-radius: 8px;
  box-shadow: 0 8px 10px rgba(0, 0, 0, 0.1);
  margin-bottom: 36px;
}
#pp_current_roles .section-header {
  padding: 16px 24px;
  background-color: #dedfe0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  user-select: none;
}
#pp_current_roles .section-header:hover {
  background-color: #e3e4e5;
}
#pp_current_roles .subsection-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  user-select: none;
}
#pp_current_roles .section-title {
  font-weight: 600;
  font-size: 16px;
  margin: 0;
  color: #374151;
}
#pp_current_roles .section-controls {
  display: flex;
  align-items: center;
  gap: 12px;
}
#pp_current_roles .search-box {
  padding: 6px 12px;
  border-radius: 4px;
  border: 1px solid #e5e7eb;
  font-size: 14px;
  width: 200px;
}
#pp_current_roles .icon-guidance {
  padding: 12px 24px;
}
#pp_current_roles .checkbox-column {
  width: 1%;
  text-align: center;
}
#pp_current_roles .permission-type {
  padding: 12px 24px 12px 24px;
  margin-bottom: 6px;
}
#pp_current_roles .permission-type:last-child {
  border-bottom: none;
}
#pp_current_roles .permission-type thead tr th {
  border-top: none;
}
#pp_current_roles .permission-type-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 6px;
}
#pp_current_roles .permission-type-title {
  margin-top: 6px;
  margin-bottom: 0;
  font-weight: 600;
  display: flex;
  align-items: center;
}
#pp_current_roles .permission-type-title .badge {
  margin-left: 8px;
}
#pp_current_roles .permission-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 12px;
}
#pp_current_roles .permission-item {
  display: flex;
  align-items: center;
  padding: 8px 12px;
  background-color: #f9fafb;
  border-radius: 6px;
  border: 1px solid #e5e7eb;
}
#pp_current_roles .permission-status {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  margin-right: 12px;
  flex-shrink: 0;
}
#pp_current_roles .status-enabled {
  background-color: #10b981;
}
#pp_current_roles .status-blocked {
  background-color: #ef4444;
}
#pp_current_roles .status-limited {
  background-color: #f59e0b;
}
#pp_current_roles .permission-name {
  flex-grow: 1;
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#pp_current_roles .permission-actions {
  opacity: 0;
  transition: opacity 0.2s;
  flex-shrink: 0;
}
#pp_current_roles .permission-item:hover .permission-actions {
  opacity: 1;
}
#pp_current_roles .btn {
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 12px;
  cursor: pointer;
  border: none;
  background: none;
}
#pp_current_roles .btn-edit {
  color: #4f46e5;
}
#pp_current_roles .btn-edit:hover {
  background-color: rgba(79, 70, 229, 0.1);
}
#pp_current_roles .badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 9999px;
  font-size: 12px;
  font-weight: 500;
}
#pp_current_roles .for-type .badge {
  padding: 2px 8px 1px 8px;
}
#pp_current_roles .badge-info {
  background-color: rgba(79, 70, 229, 0.1);
  color: #4f46e5;
}
#pp_current_roles .badge-count {
  background-color: rgba(255, 255, 255, 0.7);
  color: #6b7280;
}
#pp_current_roles .mod-type-key {
  padding-right: 50px !important;
}
#pp_current_roles .notes {
  padding: 16px 24px;
  font-size: 13px;
  color: #6b7280;
  border-top: 1px solid #e5e7eb;
  background-color: #f9fafb;
  text-align: center;
}
#pp_current_roles .notes span {
  padding-right: 20px;
  white-space: nowrap;
}
#pp_current_roles .notes strong {
  color: #374151;
}
#pp_current_roles .notes-main {
  padding-top: 20px;
  padding-bottom: 20px;
}
#pp_current_roles .footer-actions {
  display: flex;
  justify-content: space-between;
  margin-top: 24px;
}
#pp_current_roles .btn-primary {
  background-color: #4f46e5;
  color: white;
  padding: 8px 16px;
  border-radius: 6px;
  font-weight: 500;
}
#pp_current_roles .btn-link {
  color: #4f46e5;
  background: none;
  font-weight: 500;
}
#pp_current_roles .pagination {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 16px;
}
#pp_current_roles .page-btn {
  padding: 4px 8px;
  border: 1px solid #e5e7eb;
  background: white;
  border-radius: 4px;
  cursor: pointer;
}
#pp_current_roles .page-btn.active {
  background-color: #4f46e5;
  color: white;
  border-color: #4f46e5;
}
#pp_current_roles .expand-icon {
  transition: transform 0.2s;
}
#pp_current_roles .collapsed .expand-icon {
  transform: rotate(-90deg);
}
#pp_current_roles .hidden {
  display: none;
}
#pp_current_roles .no-results {
  grid-column: 1 / -1;
  text-align: center;
  padding: 16px;
  color: #6b7280;
  font-style: italic;
}
#pp_current_roles table tr td {
  vertical-align: middle;
}
#pp_current_roles .checkbox-column,
#pp_current_roles .icon-column {
  width: 20px;
}
#pp_current_roles .status-column {
  width: 20%;
}
#pp_current_roles .assign-for-column {
  width: 25px;
}
#pp_current_roles td.assign-for-column {
  text-align: right;
  padding-right: 0;
}
#pp_current_roles i.assign-child {
  color: #999;
  border: 1px dashed #999;
  padding: 0 1px;
}
#pp_current_roles i.assign-both {
  color: #120faf;
  font-style: bold;
  padding: 0 1px;
}
#pp_current_roles .icon-column {
  vertical-align: bottom;
}
#pp_current_roles .edit-column {
  width: 10%;
  text-align: right;
}
#pp_current_roles a:hover {
  text-decoration: underline;
}
#pp_current_roles .checkbox-column {
  width: 1%;
  text-align: center;
}
#pp_current_roles .pp_nolink {
  font-weight: bold;
  color: #000;
}
#pp_current_roles .role-column {
  width: 40%;
}
#pp_current_roles .edit-column {
  width: 10%;
  text-align: right;
}
#pp_current_roles table tr th {
  text-align: left;
}
#pp_current_roles td label,
#pp_current_roles td input {
  vertical-align: text-top;
}
#pp-permissions-wrapper table {
  border-collapse: collapse;
}
#pp-permissions-wrapper table tr th,
#pp-permissions-wrapper table tr td {
  text-align: left;
  vertical-align: top;
  user-select: none;
  -moz-user-select: none;
}
#pp-permissions-wrapper .pp-edit-msg {
  padding: 0.7em 0.9em;
  margin: 0 0 10px 0;
}
#pp-permissions-wrapper .pp-error-note {
  color: #dc3232;
  border-color: #dc3232;
  background-color: #fdf6f6;
}
