/* Scoped application workspace. The shared console and app policies stay independent. */
.aw-page .aw-table th {
  position: sticky;
  top: 64px;
  z-index: 2;
}
.aw-page {
  --aw-blue: #2468eb;
  --aw-ink: #172840;
  --aw-muted: #758298;
  --aw-line: #e6ebf2;
  gap: 0 !important;
  color: var(--aw-ink);
}
.aw-page .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.aw-drawer {
  --aw-blue: #2468eb;
  --aw-ink: #172840;
}
.aw-overview .aw-name > a {
  white-space: normal;
  overflow: visible;
  line-height: 1.6;
}
.aw-overview .aw-id code {
  max-width: none;
}
.aw-overview .aw-identity {
  align-items: flex-start;
}
.aw-drawer a {
  text-decoration: none;
}
.aw-page button,
.aw-page select,
.aw-page input {
  font: inherit;
}
.aw-page [hidden] {
  display: none !important;
}
.aw-page a {
  text-decoration: none;
}
.aw-page button {
  cursor: pointer;
}
.aw-page button:disabled {
  opacity: 0.42;
  cursor: default;
}
.aw-page button:focus-visible,
.aw-page a:focus-visible,
.aw-page select:focus-visible,
.aw-page input:focus-visible {
  outline: 3px solid #b5ceff;
  outline-offset: 2px;
}
.aw-page svg {
  flex: none;
}
.aw-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin: 2px 0 25px;
}
.aw-header h3 {
  margin: 0;
  font-size: 25px;
  letter-spacing: -0.6px;
  font-weight: 650;
}
.aw-header h3 span {
  font-size: 12px;
  letter-spacing: 0;
  color: var(--aw-muted);
  font-weight: 400;
  margin-left: 12px;
}
.aw-header p {
  font-size: 13px;
  color: var(--aw-muted);
  margin: 7px 0 0;
}
.aw-header .btn {
  gap: 8px;
}
.aw-statuses {
  display: flex;
  gap: 24px;
  min-height: 47px;
  border-bottom: 1px solid var(--aw-line);
  margin-bottom: 20px;
}
.aw-statuses button {
  position: relative;
  border: 0;
  background: none;
  color: #67768b;
  padding: 0 0 14px;
  font-size: 13px;
  white-space: nowrap;
  display: flex;
  align-items: center;
  gap: 9px;
}
.aw-statuses button span {
  background: #eaf0f6;
  min-width: 23px;
  padding: 2px 6px;
  border-radius: 5px;
  font-size: 11px;
  line-height: 16px;
}
.aw-statuses button[aria-pressed="true"] {
  color: var(--aw-blue);
  font-weight: 600;
}
.aw-statuses button[aria-pressed="true"]:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 2px;
  background: var(--aw-blue);
}
.aw-statuses button[aria-pressed="true"] span {
  background: #e6eeff;
  color: var(--aw-blue);
}
.aw-controls {
  margin-bottom: 12px;
}
.aw-toolbar {
  display: flex;
  align-items: center;
  gap: 10px;
}
.aw-search {
  display: flex;
  align-items: center;
  gap: 9px;
  max-width: 450px;
  flex: 1;
  border: 1px solid #dfe6ef;
  border-radius: 8px;
  background: white;
  padding: 0 12px;
  color: #91a0b5;
  min-width: 180px;
}
.aw-page .aw-search input {
  width: 100%;
  height: 39px;
  min-height: 0;
  border: 0 !important;
  box-shadow: none !important;
  background: none;
  padding: 0;
  font-size: 13px;
  outline: none;
}
.aw-tool,
.aw-sort select,
.aw-filter-fields select,
.aw-pagination select,
.aw-result-tools select {
  border: 1px solid #dfe6ef;
  background: white;
  height: 40px;
  border-radius: 8px;
  padding: 0 12px;
  color: #526278;
  font-size: 12px;
}
.aw-tool {
  min-width: 62px;
}
.aw-sort {
  margin-left: auto;
}
.aw-sort select {
  max-width: 176px;
}
.aw-view {
  display: flex;
  padding: 3px;
  border: 1px solid #dfe6ef;
  border-radius: 8px;
  background: #edf1f7;
  gap: 2px;
}
.aw-view button {
  display: flex;
  gap: 6px;
  align-items: center;
  padding: 7px 9px;
  border: 0;
  border-radius: 5px;
  background: none;
  color: #78869b;
  font-size: 12px;
}
.aw-view button[aria-pressed="true"] {
  background: white;
  color: var(--aw-blue);
  box-shadow: 0 1px 4px #23396315;
}
.aw-filter-fields {
  display: flex;
  gap: 16px;
  padding-top: 14px;
}
.aw-filter-fields label {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: #6b788d;
}
.aw-result-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 0 13px;
  gap: 8px;
  color: #718097;
  font-size: 12px;
  min-height: 30px;
}
.aw-result-bar > div {
  display: flex;
  align-items: center;
  gap: 10px;
}
.aw-result-bar button {
  border: 0;
  background: none;
  color: var(--aw-blue);
  font-size: 12px;
}
.aw-result-tools #awUpdated {
  font-size: 11px;
  color: #8693a5;
}
.aw-result-tools select {
  height: 30px;
  font-size: 11px;
}
.aw-refresh {
  height: 30px;
  width: 30px;
  display: grid;
  place-items: center;
}
.aw-message {
  padding: 10px 12px;
  margin-bottom: 12px;
  background: #eef4ff;
  border: 1px solid #dce8ff;
  border-radius: 8px;
  color: #4b6694;
  font-size: 12px;
}
.aw-message button {
  border: 0;
  background: none;
  color: var(--aw-blue);
  font-weight: 600;
  margin-left: 8px;
}
.aw-message.aw-warning {
  background: #fff8ee;
  border-color: #f0dfc1;
  color: #87612c;
}
.aw-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 315px), 1fr));
  gap: 16px;
  align-items: stretch;
}
.aw-card {
  min-width: 0;
  background: white;
  border: 1px solid var(--aw-line);
  border-radius: 12px;
  padding: 19px 19px 0;
  box-shadow: 0 3px 12px #1c3d771f;
  box-shadow: 0 2px 6px #1c3d7704;
  transition:
    border-color 0.16s,
    box-shadow 0.16s;
}
.aw-card:hover {
  border-color: #cbd8ec;
  box-shadow: 0 5px 17px #1c3d7707;
}
.aw-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
}
.aw-identity {
  display: flex;
  gap: 11px;
  min-width: 0;
  align-items: center;
}
.aw-avatar {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  flex: none;
  font-size: 17px;
  font-weight: 600;
  background: #edf3ff;
  color: #4671ba;
  border: 1px solid #e0e9fa;
}
.aw-name {
  min-width: 0;
}
.aw-name > a {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--aw-ink);
  font-size: 14px;
  font-weight: 600;
  line-height: 22px;
}
.aw-name > a:hover {
  color: var(--aw-blue);
}
.aw-id {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
  height: 23px;
}
.aw-id code {
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
  color: #8b97a9;
  font-size: 10px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  max-width: 210px;
}
.aw-copy {
  color: #94a1b5;
  background: none;
  border: 0;
  display: grid;
  place-items: center;
  flex: none;
  width: 25px;
  height: 25px;
  padding: 0;
}
.aw-copy svg {
  width: 12px;
  height: 12px;
}
.aw-copy:hover {
  color: var(--aw-blue);
  background: #f0f5ff;
  border-radius: 5px;
}
.aw-status {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 10px;
  line-height: 20px;
  padding: 0 7px;
  border-radius: 5px;
  white-space: nowrap;
  color: #7c8798;
  background: #f2f4f7;
  font-weight: 400;
}
.aw-status:before {
  content: "";
  width: 4px;
  height: 4px;
  background: currentColor;
  border-radius: 50%;
}
.aw-status.status-1 {
  background: #edf4ff;
  color: #487acc;
}
.aw-status.status-2 {
  color: #986b2f;
  background: #fff4e6;
}
.aw-source {
  margin: 13px 0 16px;
  font-size: 12px;
  color: #78869b;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 18px;
}
.aw-source button {
  border: 0;
  background: none;
  color: #5675a4;
  font-size: 11px;
}
.aw-metrics {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 16px;
}
.aw-metrics > div + div {
  border-left: 1px solid #edf0f5;
  padding-left: 20px;
}
.aw-metrics span {
  display: block;
  font-size: 11px;
  color: #7a889d;
  margin-bottom: 5px;
}
.aw-metrics strong {
  display: block;
  font-size: 23px;
  font-weight: 550;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.4px;
  line-height: 27px;
}
.aw-metrics small {
  display: block;
  font-size: 10px;
  color: #8c98a8;
  margin-top: 3px;
  line-height: 14px;
}
.aw-types {
  display: flex;
  align-items: center;
  gap: 5px;
  flex-wrap: wrap;
  min-height: 23px;
}
.aw-types > span {
  font-size: 10px;
  color: #687d96;
  border-radius: 4px;
  padding: 3px 6px;
  background: #f3f6fa;
  line-height: 16px;
  white-space: nowrap;
}
.aw-types button {
  font-size: 10px;
  color: #6380a4;
  border: 0;
  background: none;
  padding: 4px;
  white-space: nowrap;
}
.aw-card footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  border-top: 1px solid #edf0f5;
  margin: 15px -19px 0;
  padding: 9px 15px 9px 19px;
  min-height: 48px;
}
.aw-recent {
  font-size: 10px;
  line-height: 18px;
  color: #8c98aa;
}
.aw-actions {
  display: flex;
  align-items: center;
  gap: 14px;
  white-space: nowrap;
}
.aw-actions > a {
  font-size: 12px;
  color: #5275a9;
  line-height: 30px;
}
.aw-actions > a:first-child {
  color: var(--aw-blue);
  font-weight: 500;
}
.aw-more {
  position: relative;
}
.aw-more summary {
  list-style: none;
  display: grid;
  place-items: center;
  cursor: pointer;
  width: 30px;
  height: 30px;
  border-radius: 6px;
  color: #8391a5;
}
.aw-more summary::-webkit-details-marker {
  display: none;
}
.aw-more summary:hover,
.aw-more[open] summary {
  background: #edf3ff;
  color: var(--aw-blue);
}
.aw-menu {
  position: absolute;
  right: 0;
  top: calc(100% + 4px);
  width: 146px;
  background: white;
  border: 1px solid #e1e7f0;
  border-radius: 10px;
  box-shadow: 0 10px 35px #203b6724;
  z-index: 25;
  padding: 5px;
}
.aw-menu > a,
.aw-menu > button {
  display: block;
  box-sizing: border-box;
  text-align: left;
  width: 100%;
  background: none;
  border: 0;
  border-radius: 5px;
  padding: 9px 12px;
  font-size: 12px;
  color: #526279;
  line-height: 18px;
}
.aw-menu > a:hover,
.aw-menu > button:hover {
  background: #f0f5ff;
  color: var(--aw-blue);
}
.aw-menu .aw-danger {
  color: #b96363;
}
.aw-menu hr {
  border: 0;
  border-top: 1px solid #edf0f5;
  margin: 4px 8px;
}
.aw-table-wrap {
  border: 1px solid var(--aw-line);
  border-radius: 10px;
  background: white;
}
.aw-page .aw-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  font-size: 12px;
}
.aw-page .aw-table th {
  height: 42px;
  padding: 0 14px;
  background: #f6f8fc;
  color: #7b899e;
  font-size: 11px;
  font-weight: 400;
  text-align: left;
  border-bottom: 1px solid var(--aw-line);
}
.aw-page .aw-table th:first-child {
  width: 25%;
  border-top-left-radius: 10px;
}
.aw-page .aw-table th:nth-child(2) {
  width: 9%;
}
.aw-page .aw-table th:nth-child(3) {
  width: 10%;
}
.aw-page .aw-table th:nth-child(4) {
  width: 15%;
}
.aw-page .aw-table th:nth-child(5) {
  width: 13%;
}
.aw-page .aw-table th:nth-child(6) {
  width: 13%;
}
.aw-page .aw-table th:last-child {
  width: 15%;
  border-top-right-radius: 10px;
}
.aw-page .aw-table td {
  padding: 10px 14px;
  height: 73px;
  box-sizing: border-box;
  border-bottom: 1px solid #edf0f5;
  color: #5d6d82;
  vertical-align: middle;
  overflow-wrap: anywhere;
}
.aw-table tbody tr:last-child td {
  border-bottom: 0;
}
.aw-table tbody tr:hover {
  background: #fafcff;
}
.aw-table .aw-id code {
  max-width: 185px;
}
.aw-table .aw-name > a {
  font-size: 13px;
}
.aw-number {
  font-variant-numeric: tabular-nums;
  color: #263b59 !important;
  font-weight: 500;
}
.aw-table small {
  display: block;
  color: #94a0b1;
  font-size: 10px;
  font-weight: 400;
  margin-top: 4px;
  white-space: nowrap;
}
.aw-table .aw-types {
  flex-wrap: nowrap;
  gap: 2px;
}
.aw-table .aw-types > span {
  max-width: 75px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.aw-table .aw-actions {
  gap: 10px;
}
.density-compact .aw-table td {
  height: 58px;
  padding-top: 3px;
  padding-bottom: 3px;
}
.aw-mobile-list {
  display: none;
}
.aw-pagination {
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 19px 0 0;
  color: #7b889b;
  font-size: 12px;
}
.aw-pagination > div {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 14px;
}
.aw-pagination select {
  height: 31px;
  padding: 0 7px;
  border-radius: 5px;
  font-size: 12px;
}
.aw-pagination button {
  background: white;
  border: 1px solid #dfe6ef;
  color: #63738b;
  border-radius: 6px;
  padding: 7px 11px;
  font-size: 12px;
}
.aw-footnote {
  font-size: 10px;
  color: #97a3b4;
  margin: 15px 0 0;
}
.aw-empty {
  text-align: center;
  padding: 70px 18px;
  border: 1px solid var(--aw-line);
  background: white;
  border-radius: 12px;
}
.aw-empty h4 {
  margin: 14px 0 8px;
  font-size: 17px;
  font-weight: 550;
}
.aw-empty p {
  color: #8390a4;
  font-size: 13px;
  margin-bottom: 20px;
}
.aw-empty-icon {
  display: inline-grid;
  width: 44px;
  height: 44px;
  place-items: center;
  border-radius: 12px;
  background: #edf3ff;
  color: #5b83c7;
}
.aw-skeleton > div {
  height: 275px;
  border-radius: 12px;
  background: linear-gradient(100deg, #edf1f7 25%, #f8faff 50%, #edf1f7 75%);
  background-size: 200% 100%;
  animation: aw-shimmer 1.5s ease-in-out infinite;
}
.aw-pending .aw-results {
  opacity: 0.55;
  pointer-events: none;
}
.aw-pending .aw-refresh svg {
  animation: aw-spin 1s linear infinite;
}
.aw-pending .aw-pagination {
  pointer-events: none;
  opacity: 0.5;
}
.aw-drawer {
  margin-left: auto !important;
  margin-right: 0 !important;
  width: 450px !important;
  max-width: 100% !important;
  max-height: 100dvh !important;
  height: 100dvh !important;
  border-radius: 16px 0 0 16px !important;
}
.aw-drawer .modal-body {
  flex: 1;
}
.aw-overview .aw-identity {
  margin-bottom: 10px;
}
.aw-overview dl {
  margin: 25px 0;
}
.aw-overview dt {
  font-size: 12px;
  color: #8b98a9;
  margin: 20px 0 7px;
}
.aw-overview dd {
  margin: 0;
  font-size: 13px;
  line-height: 1.8;
  color: #4f637d;
  overflow-wrap: anywhere;
}
.aw-overview small {
  display: block;
  color: #8b98a9;
  font-size: 11px;
}
.aw-full-types {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}
.aw-full-types span {
  background: #f2f5fa;
  padding: 2px 8px;
  border-radius: 5px;
  font-size: 11px;
}
.aw-page .aw-header {
  margin-bottom: 16px;
}
.aw-page .aw-header h3 {
  line-height: 1.3;
}
.aw-page .aw-header p {
  line-height: 20px;
}
.aw-page .aw-statuses {
  min-height: 40px;
  margin-bottom: 15px;
}
.aw-page .aw-footnote {
  margin-top: 15px;
}
.aw-grid {
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 315px), 1fr));
}
@keyframes aw-shimmer {
  to {
    background-position: -200% 0;
  }
}
@keyframes aw-spin {
  to {
    transform: rotate(360deg);
  }
}
@media (min-width: 1700px) {
  .aw-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .aw-card {
    padding-top: 22px;
  }
  .aw-card .aw-metrics {
    margin-bottom: 20px;
  }
}
@media (max-width: 1240px) {
  .aw-table th:nth-child(6),
  .aw-table td:nth-child(6) {
    display: none;
  }
  .aw-page .aw-table th:first-child {
    width: 26%;
  }
  .aw-page .aw-table th:nth-child(2) {
    width: 12%;
  }
  .aw-page .aw-table th:nth-child(3) {
    width: 12%;
  }
  .aw-page .aw-table th:nth-child(4) {
    width: 17%;
  }
  .aw-page .aw-table th:nth-child(5) {
    width: 16%;
  }
  .aw-page .aw-table th:last-child {
    width: 17%;
  }
  .aw-page .aw-table td,
  .aw-page .aw-table th {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media (max-width: 800px) {
  .aw-table-wrap {
    display: none;
  }
  .aw-mobile-list {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 315px), 1fr));
  }
  .aw-result-tools #awDensity {
    display: none;
  }
  .aw-toolbar {
    flex-wrap: wrap;
  }
  .aw-search {
    max-width: none;
    flex: 1 1 calc(100% - 86px);
  }
  .aw-sort {
    margin-left: 0;
  }
  .aw-view {
    margin-left: auto;
  }
  .aw-result-bar {
    margin-top: 5px;
  }
  .aw-header {
    margin-bottom: 20px;
  }
  .aw-header h3 {
    font-size: 22px;
  }
}
@media (max-width: 540px) {
  .aw-header {
    align-items: center;
    gap: 10px;
    margin-top: 0;
  }
  .aw-header p {
    display: none;
  }
  .aw-header h3 {
    font-size: 20px;
  }
  .aw-header h3 span {
    display: block;
    margin: 5px 0 0;
    font-size: 11px;
  }
  .aw-header .btn {
    font-size: 12px;
    padding: 0 12px;
    min-height: 40px;
  }
  .aw-statuses {
    gap: 0;
    justify-content: space-between;
    margin-bottom: 16px;
  }
  .aw-statuses button {
    font-size: 12px;
    gap: 5px;
    padding-bottom: 12px;
    min-height: 44px;
  }
  .aw-statuses button span {
    font-size: 10px;
    min-width: 19px;
    padding: 1px 4px;
  }
  .aw-toolbar {
    gap: 9px;
  }
  .aw-search input {
    height: 42px !important;
  }
  .aw-tool,
  .aw-sort select {
    height: 44px;
  }
  .aw-view button {
    padding: 10px;
  }
  .aw-result-bar {
    align-items: flex-start;
    margin-top: 10px;
    margin-bottom: 12px;
  }
  .aw-result-tools {
    gap: 3px !important;
  }
  .aw-result-tools #awUpdated {
    font-size: 9px;
    max-width: 125px;
    line-height: 16px;
  }
  .aw-result-bar #awMatch {
    line-height: 30px;
    font-size: 11px;
  }
  .aw-result-bar #awClear {
    font-size: 11px;
  }
  .aw-card {
    padding: 16px 16px 0;
  }
  .aw-card footer {
    margin-left: -16px;
    margin-right: -16px;
    padding: 6px 11px 6px 16px;
    min-height: 51px;
  }
  .aw-metrics {
    margin-bottom: 13px;
  }
  .aw-source {
    margin: 9px 0 14px;
  }
  .aw-copy {
    width: 30px;
    height: 30px;
  }
  .aw-actions > a {
    line-height: 40px;
    padding: 0 4px;
  }
  .aw-actions {
    gap: 7px;
  }
  .aw-more summary {
    width: 40px;
    height: 40px;
  }
  .aw-menu a,
  .aw-menu button {
    min-height: 44px;
    display: flex;
    align-items: center;
  }
  .aw-filter-fields {
    flex-direction: column;
    gap: 10px;
  }
  .aw-filter-fields label {
    justify-content: space-between;
  }
  .aw-filter-fields select {
    width: calc(100% - 68px);
    height: 44px;
  }
  .aw-pagination {
    flex-wrap: wrap;
    gap: 12px;
  }
  .aw-pagination > span {
    margin-right: auto;
  }
  .aw-pagination > div {
    width: 100%;
    justify-content: center;
    margin: 0;
  }
  .aw-pagination button {
    height: 44px;
  }
  .aw-pagination select {
    height: 36px;
  }
  .aw-footnote {
    font-size: 9px;
    line-height: 17px;
  }
  .aw-drawer {
    border-radius: 0 !important;
  }
  .aw-page .aw-table {
    font-size: 11px;
  }
  .aw-header .btn svg {
    width: 14px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .aw-page * {
    animation: none !important;
    transition: none !important;
  }
}
@media (max-width: 540px) {
  .aw-copy {
    width: 44px;
    height: 44px;
    margin-top: -8px;
    margin-bottom: -8px;
  }
  .aw-copy svg {
    width: 14px;
    height: 14px;
  }
  .aw-header .btn,
  .aw-view button,
  .aw-actions > a,
  .aw-more summary,
  .aw-pagination select {
    min-height: 44px;
  }
  .aw-actions > a {
    display: inline-flex;
    align-items: center;
    min-width: 40px;
    justify-content: center;
  }
  .aw-more summary {
    min-width: 44px;
  }
  .aw-types button,
  .aw-source button {
    position: relative;
  }
  .aw-types button:after,
  .aw-source button:after {
    content: "";
    position: absolute;
    inset: -11px -4px;
  }
  .aw-refresh {
    width: 44px;
    height: 44px;
  }
  .aw-overview .aw-copy {
    width: 44px;
    height: 44px;
  }
}
