/* Shared navigation and frame: css/admin-navigation.css v17. */
/* WebsDocs AIG Admin — canonical consolidated stylesheet
   Content styles preserved from V34. Shared navigation is in admin-navigation.css. */
/* Consolidated selectors, compact 50% traffic meter, and balanced 14-card overview. */
:root {
  --bg: #f7f8fb;
  --panel: #ffffff;
  --text: #172033;
  --muted: #667085;
  --line: #dce2ea;
  --soft: #eef3f8;
  --dark: #111827;
  --green: #14a46c;
  --orange: #d97706;
  --red: #dc2626;
  --blue: #2557d6;
  --purple: #6d28d9;
  --shadow: 0 18px 45px rgba(16, 24, 40, 0.08);
  --radius: 18px;
}
#asgClientsWorkspace .asg-ops-command {
  display: grid;
  grid-template-columns: minmax(460px,1.15fr) minmax(400px,.9fr) minmax(190px,.42fr);
  min-width: 0;
  min-height: 126px;
  margin: 8px 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(15,35,68,.045);
}
#asgClientsWorkspace .sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
#asgClientsWorkspace .asg-ops-primary {
  min-width: 0;
  padding: 14px 16px;
  border-right: 1px solid var(--line);
}
#asgClientsWorkspace .asg-ops-title {
  display: flex;
  align-items: center;
  gap: 11px;
  min-width: 0;
  margin-bottom: 12px;
}
#asgClientsWorkspace .asg-ops-title img {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  object-fit: contain;
}
#asgClientsWorkspace .asg-ops-title > div {
  min-width: 0;
}
#asgClientsWorkspace .asg-ops-title span {
  display: block;
  color: #54709a;
  font-size: 9px;
  font-weight: 950;
  letter-spacing: .11em;
  text-transform: uppercase;
}
#asgClientsWorkspace .asg-ops-title h2 {
  margin: 2px 0 0;
  color: #071a36;
  font-size: 20px;
  line-height: 1.1;
  letter-spacing: -.025em;
}
#asgClientsWorkspace .asg-ops-title p {
  margin: 3px 0 0;
  color: #718097;
  font-size: 10px;
}
#asgClientsWorkspace .asg-ops-status-row {
  display: grid;
  grid-template-columns: minmax(190px,1fr) 140px auto;
  align-items: stretch;
  gap: 0;
  min-width: 0;
  border: 1px solid var(--line);
  background: #f9fbfd;
}
#asgClientsWorkspace .asg-ops-status-row > * {
  min-width: 0;
  padding: 9px 11px;
  border-right: 1px solid var(--line);
}
#asgClientsWorkspace .asg-ops-status-row > *:last-child {
  border-right: 0;
}
#asgClientsWorkspace .asg-ops-command .asg-command-connection {
  gap: 7px;
  border: 0;
  border-radius: 0;
  background: transparent;
}
#asgClientsWorkspace .asg-ops-command .asg-command-clock {
  display: grid;
  align-content: center;
  gap: 2px;
  padding: 9px 11px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
#asgClientsWorkspace .asg-ops-command .asg-command-clock > span {
  color: #728199;
  font-size: 8.5px;
  font-weight: 900;
  letter-spacing: .07em;
  text-transform: uppercase;
}
#asgClientsWorkspace .asg-ops-command .asg-command-clock > strong {
  color: #132640;
  font-size: 13px;
  font-variant-numeric: tabular-nums;
}
#asgClientsWorkspace .asg-ops-command .asg-command-clock > small {
  color: #7b889c;
  font-size: 8px;
}
#asgClientsWorkspace .asg-ops-health {
  display: flex;
  align-items: center;
  align-content: center;
  gap: 5px;
  flex-wrap: wrap;
}
#asgClientsWorkspace .asg-ops-health .badge {
  min-height: 24px;
  padding: 4px 7px;
  font-size: 8.5px;
}
#asgClientsWorkspace .asg-ops-live {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  min-width: 0;
  border-right: 1px solid var(--line);
  background: linear-gradient(180deg,#fff,#fbfdff);
}
#asgClientsWorkspace .asg-ops-live article {
  min-width: 0;
  padding: 15px 16px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
#asgClientsWorkspace .asg-ops-live article:nth-child(2n) {
  border-right: 0;
}
#asgClientsWorkspace .asg-ops-live article:nth-last-child(-n+2) {
  border-bottom: 0;
}
#asgClientsWorkspace .asg-ops-live article.is-blocked {
  background: #fff9f8;
}
#asgClientsWorkspace .asg-ops-live article.is-issue {
  background: #fffaf1;
}
#asgClientsWorkspace .asg-ops-live span {
  display: block;
  color: #66768e;
  font-size: 8.5px;
  font-weight: 950;
  letter-spacing: .09em;
  text-transform: uppercase;
}
#asgClientsWorkspace .asg-ops-live strong {
  display: block;
  margin-top: 5px;
  color: #071a36;
  font-size: 22px;
  line-height: 1;
  letter-spacing: -.03em;
}
#asgClientsWorkspace .asg-ops-live small {
  display: block;
  margin-top: 5px;
  color: #7b899d;
  font-size: 8.5px;
  line-height: 1.3;
}
#asgClientsWorkspace .asg-ops-actions {
  display: grid;
  grid-template-columns: 1fr;
  align-content: center;
  gap: 7px;
  min-width: 0;
  padding: 12px;
  background: #f8fafc;
}
#asgClientsWorkspace .asg-ops-actions .btn {
  width: 100%;
  min-width: 0;
  min-height: 34px;
  padding: 7px 9px;
  font-size: 9.5px;
}
@media (max-width:1450px) {
  #asgClientsWorkspace .asg-ops-command {
    grid-template-columns: minmax(430px,1fr) minmax(380px,.9fr);
  }
  #asgClientsWorkspace .asg-ops-live {
    border-right: 0;
  }
  #asgClientsWorkspace .asg-ops-actions {
    grid-column: 1/-1;
    grid-template-columns: repeat(4,minmax(0,1fr));
    border-top: 1px solid var(--line);
  }
}
@media (max-width:980px) {
  #asgClientsWorkspace .asg-ops-command {
    grid-template-columns: 1fr;
  }
  #asgClientsWorkspace .asg-ops-primary,
 #asgClientsWorkspace .asg-ops-live {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }
  #asgClientsWorkspace .asg-ops-actions {
    grid-column: auto;
    border-top: 0;
  }
}
@media (max-width:680px) {
  #asgClientsWorkspace .asg-ops-status-row {
    grid-template-columns: 1fr;
  }
  #asgClientsWorkspace .asg-ops-status-row > * {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }
  #asgClientsWorkspace .asg-ops-status-row > *:last-child {
    border-bottom: 0;
  }
  #asgClientsWorkspace .asg-ops-actions {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}
#asgClientsWorkspace .asg-visitor-intelligence {
  padding: 0;
  overflow: hidden;
  background: #fff;
}
#asgClientsWorkspace .asg-intelligence-head {
  margin: 0;
  padding: 20px 22px 17px;
  border-bottom: 1px solid var(--line);
  background: radial-gradient(circle at 92% 0, rgba(37,87,214,.08), transparent 28rem),
    linear-gradient(180deg,#fff,#fbfdff);
}
#asgClientsWorkspace .asg-intelligence-eyebrow {
  display: block;
  margin-bottom: 5px;
  color: var(--blue);
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .12em;
  text-transform: uppercase;
}
#asgClientsWorkspace .asg-intelligence-kpis {
  display: grid;
  grid-template-columns: repeat(6,minmax(0,1fr));
  border-bottom: 1px solid var(--line);
  background: #fff;
}
#asgClientsWorkspace .asg-intelligence-kpis article {
  min-width: 0;
  min-height: 112px;
  padding: 16px 18px;
  border-right: 1px solid var(--line);
  background: linear-gradient(180deg,#fff,#fbfdff);
}
#asgClientsWorkspace .asg-intelligence-kpis article:last-child {
  border-right: 0;
}
#asgClientsWorkspace .asg-intelligence-kpis article.is-risk {
  background: linear-gradient(180deg,#fff,#fff8f7);
}
#asgClientsWorkspace .asg-intelligence-kpis span,
#asgClientsWorkspace .asg-intelligence-subhead span {
  display: block;
  color: #63738b;
  font-size: 9.5px;
  font-weight: 950;
  letter-spacing: .09em;
  text-transform: uppercase;
}
#asgClientsWorkspace .asg-intelligence-kpis strong {
  display: block;
  margin-top: 8px;
  color: #071a36;
  font-size: clamp(25px,2vw,36px);
  line-height: 1;
  letter-spacing: -.035em;
}
#asgClientsWorkspace .asg-intelligence-kpis small {
  display: block;
  margin-top: 9px;
  color: #718097;
  font-size: 10px;
  line-height: 1.35;
}
#asgClientsWorkspace .asg-intelligence-analytics {
  display: grid;
  grid-template-columns: minmax(240px,.85fr) minmax(300px,1.4fr) minmax(250px,.8fr);
  min-width: 0;
  border-bottom: 1px solid var(--line);
  background: #fff;
}
#asgClientsWorkspace .asg-intelligence-analytics > article {
  min-width: 0;
  padding: 18px 20px;
  border-right: 1px solid var(--line);
}
#asgClientsWorkspace .asg-intelligence-analytics > article:last-child {
  border-right: 0;
}
#asgClientsWorkspace .asg-intelligence-subhead {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  min-height: 46px;
  margin-bottom: 15px;
}
#asgClientsWorkspace .asg-intelligence-subhead > div {
  min-width: 0;
}
#asgClientsWorkspace .asg-intelligence-subhead strong {
  display: block;
  margin-top: 4px;
  color: #071a36;
  font-size: 17px;
  line-height: 1.18;
  overflow-wrap: anywhere;
}
#asgClientsWorkspace .asg-intelligence-subhead > small {
  max-width: 210px;
  color: #748198;
  font-size: 9.5px;
  line-height: 1.4;
  text-align: right;
}
#asgClientsWorkspace .asg-decision-track {
  display: flex;
  width: 100%;
  height: 18px;
  overflow: hidden;
  border: 1px solid #dce4ef;
  background: #edf2f7;
}
#asgClientsWorkspace .asg-decision-track > i {
  display: block;
  width: 0;
  height: 100%;
  transition: width .35s ease;
}
#asgClientsWorkspace .approved {
  --asg-intel-tone: #16a36f;
}
#asgClientsWorkspace .blocked {
  --asg-intel-tone: #e14b43;
}
#asgClientsWorkspace .review {
  --asg-intel-tone: #e39a16;
}
#asgClientsWorkspace .rate {
  --asg-intel-tone: #7758d8;
}
#asgClientsWorkspace .failed {
  --asg-intel-tone: #8b5f63;
}
#asgClientsWorkspace .rate_limited {
  --asg-intel-tone: #7758d8;
}
#asgClientsWorkspace .asg-decision-track > i {
  background: var(--asg-intel-tone);
}
#asgClientsWorkspace .asg-decision-legend {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 0;
  margin-top: 14px;
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
}
#asgClientsWorkspace .asg-decision-legend > span {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 7px;
  min-width: 0;
  padding: 9px 10px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  color: #586982;
  font-size: 10px;
}
#asgClientsWorkspace .asg-decision-legend > span > i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--asg-intel-tone);
}
#asgClientsWorkspace .asg-decision-legend b {
  color: #0b1d38;
  font-size: 11px;
}
#asgClientsWorkspace .asg-decision-legend small {
  grid-column: 2/4;
  color: #7a879b;
  font-size: 9px;
}
#asgClientsWorkspace .asg-intelligence-empty {
  display: grid;
  min-height: 74px;
  place-items: center;
  padding: 15px;
  color: #78869a;
  font-size: 11px;
  line-height: 1.45;
  text-align: center;
}
#asgClientsWorkspace .asg-intelligence-geography {
  display: grid;
  max-height: none;
  overflow: visible;
}
#asgClientsWorkspace .asg-geo-row {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  grid-template-areas: "copy value" "bar bar";
  gap: 6px 12px;
  min-width: 0;
  padding: 9px 0;
  border-bottom: 1px solid #edf1f6;
}
#asgClientsWorkspace .asg-geo-row:last-child {
  border-bottom: 0;
}
#asgClientsWorkspace .asg-geo-row > div {
  grid-area: copy;
  min-width: 0;
}
#asgClientsWorkspace .asg-geo-row strong {
  display: block;
  color: #172842;
  font-size: 11px;
  overflow-wrap: anywhere;
}
#asgClientsWorkspace .asg-geo-row small {
  display: block;
  margin-top: 3px;
  color: #77869b;
  font-size: 9px;
}
#asgClientsWorkspace .asg-geo-row > b {
  grid-area: value;
  color: #10213b;
  font-size: 11px;
}
#asgClientsWorkspace .asg-geo-row > i {
  grid-area: bar;
  display: block;
  height: 5px;
  overflow: hidden;
  background: #edf2f7;
}
#asgClientsWorkspace .asg-geo-row > i > span {
  display: block;
  height: 100%;
  background: linear-gradient(90deg,#2864e8,#19aa8a);
}
#asgClientsWorkspace .asg-footprint-toolbar {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  padding: 17px 20px;
  border-bottom: 1px solid var(--line);
  background: #fbfcfe;
}
#asgClientsWorkspace .asg-footprint-toolbar > div:first-child strong {
  display: block;
  color: #071a36;
  font-size: 15px;
}
#asgClientsWorkspace .asg-footprint-toolbar > div:first-child small {
  display: block;
  margin-top: 5px;
  color: #728097;
  font-size: 10px;
}
#asgClientsWorkspace .asg-footprint-filters {
  display: grid;
  grid-template-columns: minmax(240px,1.4fr) minmax(145px,.7fr) minmax(170px,.85fr);
  gap: 8px;
  min-width: min(690px,65%);
}
#asgClientsWorkspace .asg-footprint-filters label {
  min-width: 0;
}
#asgClientsWorkspace .asg-footprint-filters input,
#asgClientsWorkspace .asg-footprint-filters select {
  width: 100%;
  min-width: 0;
  height: 38px;
  padding: 0 10px;
  border: 1px solid #cfd9e7;
  border-radius: 8px;
  background: #fff;
  color: #1a2b44;
  font-size: 10.5px;
  outline: none;
}
#asgClientsWorkspace .asg-footprint-filters input:focus,
#asgClientsWorkspace .asg-footprint-filters select:focus {
  border-color: #4d7ee9;
  box-shadow: 0 0 0 3px rgba(37,87,214,.1);
}
#asgClientsWorkspace .asg-footprint-table-shell {
  width: 100%;
  max-width: 100%;
  max-height: 620px;
  min-width: 0;
  overflow: auto;
  background: #fff;
  scrollbar-width: thin;
}
#asgClientsWorkspace .asg-footprint-table {
  width: 100%;
  min-width: 1240px;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
}
#asgClientsWorkspace .asg-footprint-table th {
  position: sticky;
  top: 0;
  z-index: 2;
  padding: 10px 12px;
  border-right: 1px solid #dfe6ef;
  border-bottom: 1px solid #ccd7e5;
  background: #f1f5fa;
  color: #60718a;
  font-size: 9px;
  font-weight: 950;
  letter-spacing: .08em;
  text-align: left;
  text-transform: uppercase;
}
#asgClientsWorkspace .asg-footprint-table th:nth-child(1) {
  width: 178px;
}
#asgClientsWorkspace .asg-footprint-table th:nth-child(2) {
  width: 190px;
}
#asgClientsWorkspace .asg-footprint-table th:nth-child(3) {
  width: 135px;
}
#asgClientsWorkspace .asg-footprint-table th:nth-child(4) {
  width: 225px;
}
#asgClientsWorkspace .asg-footprint-table th:nth-child(5) {
  width: 145px;
}
#asgClientsWorkspace .asg-footprint-table th:nth-child(6) {
  width: 180px;
}
#asgClientsWorkspace .asg-footprint-table th:nth-child(7) {
  width: 250px;
}
#asgClientsWorkspace .asg-footprint-table td {
  min-width: 0;
  padding: 11px 12px;
  border-right: 1px solid #e8edf4;
  border-bottom: 1px solid #e8edf4;
  color: #40516a;
  font-size: 10px;
  line-height: 1.35;
  vertical-align: top;
  overflow-wrap: anywhere;
}
#asgClientsWorkspace .asg-footprint-table th:last-child,
#asgClientsWorkspace .asg-footprint-table td:last-child {
  border-right: 0;
}
#asgClientsWorkspace .asg-footprint-table tbody tr:hover td {
  background: #f8fbff;
}
#asgClientsWorkspace .asg-footprint-table td > strong {
  display: block;
  color: #12243e;
  font-size: 10.5px;
  font-weight: 850;
}
#asgClientsWorkspace .asg-footprint-table td > small {
  display: block;
  max-width: 100%;
  margin-top: 4px;
  color: #718097;
  font-size: 9px;
  overflow: hidden;
  text-overflow: ellipsis;
}
#asgClientsWorkspace .asg-footprint-time small {
  font-family: ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
}
#asgClientsWorkspace .asg-footprint-request strong,
#asgClientsWorkspace .asg-footprint-request small {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#asgClientsWorkspace .asg-decision-badge {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 4px 8px;
  border: 1px solid color-mix(in srgb,var(--asg-intel-tone) 35%,#fff);
  border-radius: 999px;
  background: color-mix(in srgb,var(--asg-intel-tone) 8%,#fff);
  color: var(--asg-intel-tone);
  font-size: 9px;
  font-weight: 950;
  text-transform: uppercase;
  white-space: nowrap;
}
#asgClientsWorkspace .asg-intelligence-privacy {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 11px 20px;
  border-top: 1px solid var(--line);
  background: #f7f9fc;
  color: #65758c;
  font-size: 10px;
}
#asgClientsWorkspace .asg-intelligence-privacy i {
  color: #16815d;
}
@media (max-width:1500px) {
  #asgClientsWorkspace .asg-intelligence-kpis {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }
  #asgClientsWorkspace .asg-intelligence-kpis article:nth-child(3) {
    border-right: 0;
  }
  #asgClientsWorkspace .asg-intelligence-kpis article:nth-child(-n+3) {
    border-bottom: 1px solid var(--line);
  }
  #asgClientsWorkspace .asg-intelligence-analytics {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  #asgClientsWorkspace .asg-intelligence-decision-panel {
    grid-column: 1/-1;
    border-bottom: 1px solid var(--line);
  }
}
@media (max-width:1050px) {
  #asgClientsWorkspace .asg-intelligence-analytics {
    grid-template-columns: 1fr;
  }
  #asgClientsWorkspace .asg-intelligence-analytics > article {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }
  #asgClientsWorkspace .asg-intelligence-analytics > article:last-child {
    border-bottom: 0;
  }
  #asgClientsWorkspace .asg-intelligence-geo-panel {
    grid-column: auto;
    border-top: 0;
  }
  #asgClientsWorkspace .asg-footprint-toolbar {
    align-items: stretch;
    flex-direction: column;
  }
  #asgClientsWorkspace .asg-footprint-filters {
    min-width: 0;
    width: 100%;
  }
}
@media (max-width:720px) {
  #asgClientsWorkspace .asg-intelligence-head {
    padding: 17px 15px;
  }
  #asgClientsWorkspace .asg-intelligence-kpis {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  #asgClientsWorkspace .asg-intelligence-kpis article,
 #asgClientsWorkspace .asg-intelligence-kpis article:nth-child(3) {
    border-right: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
  }
  #asgClientsWorkspace .asg-intelligence-kpis article:nth-child(2n) {
    border-right: 0;
  }
  #asgClientsWorkspace .asg-intelligence-kpis article:nth-last-child(-n+2) {
    border-bottom: 0;
  }
  #asgClientsWorkspace .asg-intelligence-analytics > article {
    padding: 16px 15px;
  }
  #asgClientsWorkspace .asg-intelligence-subhead {
    display: block;
  }
  #asgClientsWorkspace .asg-intelligence-subhead > small {
    display: block;
    max-width: none;
    margin-top: 5px;
    text-align: left;
  }
  #asgClientsWorkspace .asg-decision-legend {
    grid-template-columns: 1fr;
  }
  #asgClientsWorkspace .asg-footprint-toolbar {
    padding: 15px;
  }
  #asgClientsWorkspace .asg-footprint-filters {
    grid-template-columns: 1fr;
  }
  #asgClientsWorkspace .asg-intelligence-privacy {
    align-items: flex-start;
    padding: 11px 15px;
  }
}
@media (prefers-reduced-motion:reduce) {
  #asgClientsWorkspace .asg-decision-track > i {
    transition: none;
  }
}
* {
  box-sizing: border-box;
}
.security-bg {
  position: fixed;
  inset: 0;
  pointer-events: none;
  background-image: linear-gradient(rgba(15, 23, 42, 0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(15, 23, 42, 0.035) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.7), transparent 65%);
}
button, input, textarea, select {
  font: inherit;
}
.login-view {
  min-height: calc(100vh - 70px);
  display: grid;
  place-items: center;
}
.login-top {
  display: flex;
  align-items: center;
  gap: 18px;
}
.danger-mark {
  background: linear-gradient(135deg, #111827, #7f1d1d);
  box-shadow: 0 14px 32px rgba(127, 29, 29, .25);
}
.danger-text {
  color: var(--red);
}
.caution-strip {
  margin: 22px 0;
  padding: 14px 16px;
  border-radius: 16px;
  border: 1px solid rgba(220, 38, 38, 0.22);
  background: linear-gradient(90deg, rgba(220,38,38,.11), rgba(217,119,6,.10));
  display: flex;
  gap: 12px;
  align-items: center;
  color: #7f1d1d;
}
.caution-strip strong {
  white-space: nowrap;
}
.recovery-box {
  margin: 18px 0 0;
  padding: 16px;
  border: 1px dashed rgba(220,38,38,.45);
  border-radius: 18px;
  background: rgba(254, 242, 242, .75);
}
.brand-row {
  display: flex;
  align-items: center;
  gap: 18px;
}
.header-right {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.clock-card {
  min-width: 280px;
  padding: 13px 17px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
  text-align: right;
}
.clock-label, .metric-label {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}
.clock-card strong {
  display: block;
  font-size: 24px;
  letter-spacing: -0.03em;
}
.clock-card small {
  color: var(--muted);
}
.eyebrow {
  margin: 0 0 5px;
  color: var(--blue);
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 12px;
}
h1, h2 {
  margin: 0;
}
h1 {
  font-size: clamp(32px, 4vw, 52px);
  letter-spacing: -0.04em;
}
h2 {
  font-size: 20px;
  letter-spacing: -0.02em;
}
.subtitle, .panel p, .metric-card small, .muted, .mini-note {
  color: var(--muted);
}
.subtitle {
  margin: 7px 0 0;
  max-width: 850px;
  line-height: 1.55;
}
.status-pill {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-width: max-content;
  padding: 10px 14px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--muted);
  font-weight: 800;
}
.dot {
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: var(--muted);
  box-shadow: 0 0 0 5px rgba(102, 112, 133, 0.12);
}
.dot.good {
  background: var(--green);
  box-shadow: 0 0 0 5px rgba(20, 164, 108, 0.14);
}
.dot.bad {
  background: var(--red);
  box-shadow: 0 0 0 5px rgba(220, 38, 38, 0.14);
}
.dot.wait {
  background: var(--orange);
  box-shadow: 0 0 0 5px rgba(217, 119, 6, 0.14);
}
.nav-btn.active {
  background: var(--dark);
  color: #fff;
}
.session-strip, .panel, .metric-card {
  background: var(--panel);
}
.field {
  display: grid;
  gap: 7px;
}
.field label {
  color: #344054;
  font-size: 13px;
  font-weight: 900;
}
input, textarea, select {
  width: 100%;
  border: 1px solid var(--line);
  background: #fff;
  color: var(--text);
  outline: none;
}
input, select {
  height: 44px;
  padding: 0 12px;
}
textarea {
  resize: vertical;
  padding: 12px;
  line-height: 1.5;
}
input:focus, textarea:focus, select:focus {
  border-color: rgba(37, 87, 214, 0.55);
  box-shadow: 0 0 0 4px rgba(37, 87, 214, 0.10);
}
.button-row, .action-grid {
  display: flex;
  gap: 9px;
  flex-wrap: wrap;
  margin-top: 16px;
}
.action-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.btn {
  min-height: 44px;
  border: 1px solid var(--line);
  padding: 0 14px;
  background: #fff;
  color: var(--text);
  cursor: pointer;
  font-weight: 900;
  white-space: nowrap;
}
.btn.primary {
  background: var(--blue);
  border-color: var(--blue);
  color: #fff;
}
.btn.strong {
  background: var(--dark);
  border-color: var(--dark);
  color: #fff;
}
.btn.small {
  min-height: 38px;
  padding: 0 12px;
  font-size: 13px;
}
.btn.danger {
  border-color: rgba(220,38,38,.25);
  color: var(--red);
}
.btn.primary.danger {
  background: var(--red);
  color: #fff;
}
.pulse-btn {
  animation: pulseButton 2.8s ease-in-out infinite;
}
.pulse-soft {
  animation: pulseSoft 4s ease-in-out infinite;
}
.cards-grid.six {
  grid-template-columns: repeat(6, 1fr);
}
.split-panel {
  margin: 18px 0;
}
.dash-section {
  display: none;
}
.active-section {
  display: block;
}
.endpoint-row, .log-item, .security-list > div {
  border: 1px solid var(--line);
  border-radius: 14px;
  background: var(--soft);
}
.endpoint-row {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 12px;
  align-items: center;
  padding: 11px 12px;
}
.endpoint-path {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 13px;
  overflow-wrap: anywhere;
}
.badge {
  border-radius: 999px;
  padding: 5px 9px;
  font-size: 12px;
  font-weight: 900;
  background: #fff;
  color: var(--muted);
  border: 1px solid var(--line);
}
.badge.ok {
  color: var(--green);
}
.badge.fail {
  color: var(--red);
}
.badge.warn {
  color: var(--orange);
}
.result-box, .raw-box {
  overflow: auto;
  border: 1px solid var(--line);
  background: #0b1220;
  color: #dbeafe;
  padding: 14px;
  min-height: 130px;
  white-space: pre-wrap;
  word-break: break-word;
}
.log-list {
  display: grid;
  gap: 10px;
  overflow: auto;
  padding-right: 4px;
}
.log-item {
  padding: 12px;
}
.log-top {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
  margin-bottom: 7px;
}
.log-title {
  font-weight: 900;
}
.log-meta {
  color: var(--muted);
  font-size: 12px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  overflow-wrap: anywhere;
}
.security-list > div {
  padding: 14px;
  color: #334155;
}
.mini-note {
  margin-top: 14px;
  padding: 12px;
  border-radius: 14px;
  background: #f8fafc;
  line-height: 1.55;
}
code {
  background: #eef3f8;
  border: 1px solid #dce2ea;
  border-radius: 7px;
  padding: 2px 5px;
}
.tools-trigger {
  background: #111827;
  color: #fff;
  border-color: #111827;
}
.tools-dropdown a {
  display: block;
  padding: 10px 11px;
  border-radius: 12px;
  color: #172033;
  text-decoration: none;
  font-weight: 800;
  font-size: 13px;
}
.tools-dropdown a:hover {
  background: var(--soft);
}
.tools-dropdown hr {
  border: 0;
  border-top: 1px solid var(--line);
  margin: 8px 0;
}
.tools-label {
  margin: 8px 8px 6px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .09em;
}
.quick-links-rail a {
  display: inline-flex;
  min-height: 36px;
  align-items: center;
  padding: 0 12px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: #172033;
  text-decoration: none;
  font-size: 13px;
  font-weight: 900;
}
.quick-links-rail a:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 18px rgba(16, 24, 40, 0.08);
}
.nav-btn.active span {
  background: rgba(255,255,255,.18);
}
.quick-links-rail {
  gap: 8px;
  flex-wrap: wrap;
  margin: -6px 0 18px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: rgba(255,255,255,.72);
  display: none;
}
.panel-head.stackable {
  align-items: start;
}
.panel-actions {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.window-filter {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin: 0 0 12px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #f8fafc;
}
.window-btn {
  min-height: 34px;
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 0 11px;
  background: #fff;
  color: var(--text);
  cursor: pointer;
  font-size: 12px;
  font-weight: 900;
}
.window-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 18px rgba(16, 24, 40, 0.07);
}
.window-btn.active {
  background: var(--dark);
  color: #fff;
  border-color: var(--dark);
}
.recent-panel {
  position: relative;
}
.risk-card strong {
  font-variant-numeric: tabular-nums;
}
.bar-list {
  display: grid;
  gap: 12px;
}
.bar-top {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  color: #172033;
  font-size: 13px;
}
.bar-top span {
  color: var(--muted);
  font-weight: 900;
}
.status-card-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.status-mini-card strong {
  display: block;
  margin: 10px 0 2px;
  font-size: 28px;
  letter-spacing: -0.04em;
}
.status-mini-card small {
  color: var(--muted);
}
.rank-list {
  display: grid;
  gap: 9px;
}
.rank-item {
  display: grid;
  grid-template-columns: 42px 1fr auto;
  gap: 10px;
  align-items: center;
  padding: 12px;
}
.rank-item span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 30px;
  border-radius: 10px;
  background: #fff;
  color: var(--muted);
  font-weight: 900;
  font-size: 12px;
}
.rank-item strong {
  overflow-wrap: anywhere;
}
.rank-item em {
  font-style: normal;
  font-weight: 900;
  color: var(--blue);
}
.agent-rank {
  grid-template-columns: 42px 1fr auto;
}
.agent-rank small {
  display: block;
  grid-column: 2 / 3;
  color: var(--muted);
  font-size: 12px;
}
.abuse-row {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 8px 14px;
  padding: 14px;
  border: 1px solid var(--line);
  background: var(--soft);
  align-items: center;
}
.abuse-row strong {
  color: #172033;
}
.abuse-row span {
  font-weight: 900;
}
.abuse-row small {
  grid-column: 2 / 3;
  color: var(--muted);
}
.abuse-row.good {
  border-color: rgba(20, 164, 108, .22);
  background: rgba(20, 164, 108, .06);
}
.abuse-row.warn {
  border-color: rgba(217, 119, 6, .25);
  background: rgba(217, 119, 6, .07);
}
.abuse-row.danger {
  border-color: rgba(220, 38, 38, .25);
  background: rgba(220, 38, 38, .07);
}
.overview-extra-panels {
  align-items: start;
}
.security-list.compact, .security-list {
  display: grid;
  gap: 10px;
}
.header-right {
  position: relative;
  overflow: visible;
}
.tools-menu {
  position: relative;
  align-self: flex-start;
  z-index: 200000;
}
.apple-clock {
  min-width: 210px;
  padding: 14px 18px;
  border-radius: 24px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  box-shadow: 0 12px 34px rgba(15, 23, 42, 0.08), inset 0 1px 0 rgba(255,255,255,.9);
}
.apple-clock .clock-label {
  letter-spacing: .14em;
}
.apple-clock strong {
  font-size: clamp(34px, 3.3vw, 48px);
  line-height: .98;
  font-weight: 800;
  letter-spacing: -.08em;
  font-variant-numeric: tabular-nums;
}
.apple-clock small {
  display: block;
  margin-top: 4px;
  font-size: 15px;
  font-weight: 600;
}
.identity-list, .conversation-list {
  display: grid;
  gap: 12px;
}
.identity-item, .conversation-item {
  padding: 14px;
}
.identity-top, .conversation-top {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: start;
  margin-bottom: 6px;
}
.identity-title, .conversation-title {
  display: grid;
  gap: 3px;
}
.identity-id, .conversation-id {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 4px 8px;
  border-radius: 999px;
  background: #fff;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .04em;
  max-width: 100%;
  overflow-wrap: anywhere;
}
.identity-meta, .conversation-meta, .conversation-answer {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
.identity-scopes, .conversation-source {
  margin-top: 8px;
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.mini-chip {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: #fff;
  color: #172033;
  font-size: 12px;
  font-weight: 800;
  overflow-wrap: anywhere;
}
.conversation-snippet {
  margin: 10px 0 0;
  padding: 12px;
  border-radius: 14px;
  background: rgba(255,255,255,.75);
  color: #172033;
  font-size: 13px;
  line-height: 1.55;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.overview-conversations-panel {
  margin-top: 18px;
}
.cards-grid.compact-six .metric-card {
  padding: 14px 16px;
  min-height: 118px;
}
.cards-grid.compact-six .metric-card strong {
  margin: 7px 0 3px;
  font-size: 30px;
}
.overview-control-row, .overview-recent-row {
  display: block;
  margin: 18px 0;
}
.control-actions-wide {
  min-height: auto;
  padding: 18px;
}
.control-actions-wide .panel-head {
  margin-bottom: 10px;
}
.control-actions-wide .action-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 12px;
}
.control-actions-wide .mini-note {
  margin-top: 12px;
}
.recent-wide {
  min-height: auto;
}
.overview-extra-panels .panel {
  min-height: auto;
}
.security-list.compact .abuse-row, #abuseDetailList .abuse-row, #overviewAbuseList .abuse-row {
  grid-template-columns: 160px 1fr;
}
.footprint-item {
  border: 1px solid var(--line);
  background: var(--soft);
  padding: 14px;
}
.footprint-top {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: start;
}
.footprint-title {
  display: grid;
  gap: 4px;
}
.footprint-title strong {
  font-size: 15px;
}
.footprint-meta {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
.footprint-count {
  min-width: 54px;
  height: 34px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid var(--line);
  display: grid;
  place-items: center;
  color: var(--blue);
  font-weight: 900;
}
.footprint-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 10px;
}
.login-card {
  border: 1px solid rgba(220, 38, 38, 0.24);
  border-radius: 30px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 28px 90px rgba(15, 23, 42, 0.14);
  backdrop-filter: blur(14px);
  width: min(940px, 100%);
  padding: 32px;
}
.login-card .eyebrow {
  color: #991b1b;
}
.login-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.login-actions-clean {
  justify-content: flex-start;
}
.login-actions-clean .btn.primary {
  min-width: 230px;
}
.small-result {
  min-height: 92px;
  max-height: 220px;
  overflow: auto;
  margin-top: 18px;
  font-size: 12px;
  line-height: 1.45;
}
.result-box, .raw-box, #publicResult {
  scrollbar-width: thin;
  scrollbar-color: rgba(148, 163, 184, .75) rgba(15, 23, 42, .15);
}
.result-box::-webkit-scrollbar, .raw-box::-webkit-scrollbar, .log-list::-webkit-scrollbar, .identity-list::-webkit-scrollbar, .conversation-list::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}
.result-box::-webkit-scrollbar-thumb, .raw-box::-webkit-scrollbar-thumb, .log-list::-webkit-scrollbar-thumb, .identity-list::-webkit-scrollbar-thumb, .conversation-list::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(148, 163, 184, .72);
  border: 2px solid rgba(255,255,255,.65);
}
#publicResult {
  min-height: 220px;
  max-height: 470px;
  overflow: auto;
  font-size: 12px;
  line-height: 1.42;
}
.overview-recent-row.overview-two-col {
  align-items: start;
  margin: 18px 0;
}
.overview-recent-row .overview-conversations-panel {
  margin-top: 0;
}
.compact-scroll, #recentLogs, #conversationList, #visitorAppearanceList {
  max-height: 520px;
  overflow: auto;
  padding-right: 4px;
}
#visitorAppearanceList {
  max-height: 440px;
}
#overviewAbuseList {
  max-height: 440px;
  overflow: auto;
  padding-right: 4px;
}
.log-list.tall, .identity-list.tall, .conversation-list.tall, #a2aConversationList, #a2aVisitorList, #knownVisitorRegistryList, #abuseFootprintsList, #adminEvents, #knowledgeJobs, #indexJobs {
  max-height: 620px;
  overflow: auto;
  padding-right: 4px;
}
.panel > .log-list, .panel > .identity-list, .panel > .conversation-list, .panel > .security-list, .panel > .result-box, .panel > .raw-box {
  min-width: 0;
}
.identity-item, .conversation-item, .log-item, .footprint-item {
  overflow-wrap: anywhere;
}
.analytics-review-row {
  align-items: start;
}
.analytics-approved-list, .analytics-abuse-list {
  overflow: auto;
  padding-right: 4px;
}
.approved-ai-row .approved-ai-title {
  display: grid;
  gap: 4px;
  min-width: 0;
}
.approved-ai-row strong {
  overflow-wrap: anywhere;
}
.approved-ai-row small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
.approved-ai-count {
  min-width: 54px;
  height: 34px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line);
  background: #fff;
  color: var(--green);
  font-weight: 900;
}
.approved-ai-chips {
  grid-column: 1 / -1;
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
}
.analytics-abuse-list .abuse-row {
  grid-template-columns: 150px 1fr;
}
.aig-footer div {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.aig-footer strong {
  color: #172033;
  font-weight: 900;
}
.aig-footer span, .aig-footer small {
  color: var(--muted);
  font-weight: 700;
}
.analytics-approved-list {
  display: grid;
  gap: 10px;
  overflow: auto;
  padding-right: 4px;
}
.approved-ai-row {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px 14px;
  align-items: center;
  padding: 14px;
  border: 1px solid rgba(20, 164, 108, .20);
  background: rgba(20, 164, 108, .055);
}
.approved-ai-row[data-status="approved"] {
  border-color: rgba(20, 164, 108, .34);
  background: rgba(20, 164, 108, .085);
}
.approved-ai-row[data-source="registry"] {
  box-shadow: inset 3px 0 0 rgba(20, 164, 108, .60);
}
.asg-admin-hero h2 {
  font-size: clamp(24px, 3vw, 38px);
  letter-spacing: -0.04em;
}
.asg-admin-health {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.check-line {
  grid-column: 1 / -1;
  display: flex;
  align-items: start;
  gap: 10px;
  padding: 12px;
  border: 1px dashed var(--line);
  border-radius: 14px;
  background: #fffdf5;
  color: #694100;
  font-weight: 800;
  line-height: 1.45;
}
.check-line input {
  width: auto;
  height: auto;
  margin-top: 4px;
}
.asg-result-card strong {
  display: block;
  margin-top: 6px;
  overflow-wrap: anywhere;
}
html, body {
  width: 100%;
  overflow-x: hidden;
}
.brand-mark {
  width: 72px;
  height: 72px;
  display: grid;
  place-items: center;
  background: var(--dark);
  color: #fff;
  font-weight: 900;
  letter-spacing: 0.08em;
  border-radius: 18px;
}
.nav-btn {
  border: 1px solid transparent;
  background: transparent;
  color: var(--muted);
  font-weight: 900;
  cursor: pointer;
}
.dash-section.active-section, .dash-section, #asgClientsMode, #aigInternalMode {
  width: 100%;
  max-width: none;
}
.dash-section.active-section {
  padding: 22px;
}
.panel, .metric-card, .session-strip, .result-box, .raw-box, .status-mini-card, .identity-item, .conversation-item, .log-item, .footprint-item, .rank-item, .abuse-row, .approved-ai-row {
  border-radius: 0;
  box-shadow: none;
}
.cards-grid.compact-six {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}
.cards-grid.five {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.cards-grid.nine {
  grid-template-columns: repeat(9, minmax(0, 1fr));
}
.cards-grid.twelve {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}
.split-panel, .overview-recent-row.overview-two-col, .analytics-review-row, .asg-clients-split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 18px;
  width: 100%;
}
.asg-admin-hero {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: center;
  border-left: 6px solid var(--dark);
  margin: 22px;
  border-radius: 0;
  box-shadow: none;
}
.asg-clients-split {
  grid-template-columns: 1.08fr .92fr;
  margin: 22px;
  width: calc(100% - 44px);
}
.asg-code-form {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
input, textarea, select, .btn {
  border-radius: 0;
}
.btn:hover {
  box-shadow: 0 8px 18px rgba(16, 24, 40, 0.08);
  transform: none;
}
.aig-header, .header-right, .tools-menu {
  overflow: visible;
}
.tools-dropdown {
  position: absolute;
  right: 0;
  width: min(360px, calc(100vw - 36px));
  overflow: auto;
  padding: 10px;
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, .98);
  box-shadow: 0 26px 80px rgba(15, 23, 42, .18);
  max-height: min(82vh, 780px);
  backdrop-filter: blur(18px);
  top: calc(100% + 8px);
  z-index: 250000;
  border-radius: 0;
}
.compact-scroll, .log-list, .identity-list, .conversation-list, .analytics-approved-list, .analytics-abuse-list {
  max-height: min(70vh, 980px);
}
.raw-box {
  min-height: 320px;
  max-height: min(78vh, 1100px);
}
.aig-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  color: var(--muted);
  font-size: 12px;
  width: 100%;
  margin: 0;
  padding: 18px 22px;
  border-top: 2px solid #1d2633;
}
.asg-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}
.asg-hero-status {
  display: grid;
  align-content: start;
  gap: 10px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: rgba(255,255,255,.78);
}
.asg-hero-status small {
  color: var(--muted);
  line-height: 1.45;
}
.asg-tab-btn.active {
  background: #111827;
  color: #fff;
}
.asg-tab-btn.active span {
  background: rgba(255,255,255,.16);
  color: #fff;
}
.asg-window-btn.active {
  background: #111827;
  border-color: #111827;
  color: #fff;
}
.asg-dash-section {
  display: none;
  margin: 0 22px 24px;
}
.asg-dash-section.active-asg-section {
  display: block;
}
.cards-grid.asg-twelve {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}
.cards-grid.asg-six {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}
.cards-grid.asg-twelve .metric-card, .cards-grid.asg-six .metric-card {
  min-height: 126px;
  padding: 15px;
  box-shadow: none;
}
.cards-grid.asg-twelve .metric-card strong, .cards-grid.asg-six .metric-card strong {
  font-size: clamp(26px, 2.2vw, 38px);
}
.asg-overview-grid {
  align-items: start;
}
.asg-card-list {
  display: grid;
  gap: 10px;
}
.asg-mini-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #f8fafc;
}
.asg-mini-row strong, .asg-client-card strong, .asg-detail-card strong {
  display: block;
  overflow-wrap: anywhere;
}
.asg-mini-row small, .asg-client-card small, .asg-detail-card small {
  display: block;
  color: var(--muted);
  margin-top: 3px;
  overflow-wrap: anywhere;
}
.asg-mini-row em {
  display: block;
  margin-top: 5px;
  color: var(--muted);
  font-style: normal;
  font-size: 12px;
  overflow-wrap: anywhere;
}
.asg-client-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.asg-client-card-top {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: flex-start;
}
.asg-client-card-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.asg-search {
  min-width: min(420px, 100%);
  height: 38px;
}
.asg-detail-card {
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #f8fafc;
}
.asg-detail-grid {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr);
  gap: 9px 14px;
  margin-top: 14px;
  font-size: 13px;
}
.asg-detail-grid span {
  color: var(--muted);
  font-weight: 900;
}
.asg-action-matrix {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.asg-admin-hero.compact {
  margin: 0 0 18px;
}
.asg-table-shell {
  max-height: 520px;
  overflow: auto;
}
.asg-addon-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.asg-addon-card {
  min-height: 190px;
  display: grid;
  align-content: start;
  gap: 10px;
}
.asg-addon-card h2 {
  font-size: 24px;
  letter-spacing: -.04em;
}
.asg-addon-card p {
  margin: 0;
}
.asg-visitor-row.known {
  border-color: rgba(20, 164, 108, .22);
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(240,253,244,.66));
}
.asg-visitor-row.unknown {
  border-color: rgba(217, 119, 6, .24);
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,247,237,.7));
}
#asgDirectoryDataAge {
  font-size: clamp(26px, 2.2vw, 34px);
}
.asg-client-card strong, .asg-client-card small, .asg-client-card-meta span, .asg-detail-card, .asg-runtime-row {
  overflow-wrap: anywhere;
}
.asg-client-card-meta {
  display: grid;
  gap: 5px;
  color: var(--muted);
  font-size: 12px;
  max-height: 92px;
  overflow: auto;
  padding-right: 2px;
}
.asg-client-card-actions .btn {
  min-height: 34px;
}
.asg-runtime-row .log-title {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  overflow-wrap: anywhere;
}
.asg-visitor-icon {
  margin-right: 7px;
  display: inline-grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  color: var(--blue);
  font-size: 13px;
  flex: 0 0 auto;
}
.asg-empty-state {
  padding: 16px 18px;
  border: 1px dashed rgba(148, 163, 184, 0.65);
  border-radius: 16px;
  background: rgba(248, 250, 252, 0.72);
  color: var(--muted);
  line-height: 1.5;
}
.asg-detail-grid b {
  min-width: 0;
  overflow-wrap: anywhere;
}
body {
  margin: 0;
  min-height: 100vh;
  color: var(--text);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  background: linear-gradient(90deg, rgba(15, 23, 42, 0.035) 1px, transparent 1px), linear-gradient(180deg, rgba(15, 23, 42, 0.035) 1px, transparent 1px), #f7f8fb;
  background-size: 44px 44px;
  --aig-sticky-top: 0px;
}
.aig-header .brand-row {
  gap: 10px;
}
.aig-header .brand-mark {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  letter-spacing: .05em;
}
.brand-logo-wrap {
  background: transparent;
  border: 0;
  box-shadow: none;
  overflow: visible;
}
.brand-logo-wrap img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  background: transparent;
}
.aig-header h1 {
  font-size: clamp(24px, 2.2vw, 38px);
  line-height: .95;
}
.aig-header .eyebrow {
  font-size: 10px;
  margin-bottom: 2px;
}
.aig-header .header-right {
  gap: 8px;
}
.aig-header .apple-clock strong {
  font-size: clamp(25px, 2vw, 36px);
  letter-spacing: -.06em;
}
.aig-header .apple-clock small {
  font-size: 12px;
}
.aig-header .clock-label {
  font-size: 9px;
}
.aig-header .tools-trigger {
  min-height: 34px;
  font-size: 12px;
}
.internal-nav {
  position: sticky;
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  backdrop-filter: blur(14px);
  z-index: 20;
  width: 100%;
  max-width: none;
  border: 0;
  border-bottom: 2px solid #1d2633;
  background: rgba(255,255,255,.95);
  box-shadow: none;
  top: 124px;
  margin: 8px 0 8px;
  padding: 6px;
  border-radius: 14px;
}
.internal-nav .nav-btn, .nav-btn {
  height: 31px;
  min-height: 31px;
  padding: 0 9px;
  border-radius: 999px;
  font-size: 12px;
}
.nav-btn span {
  display: inline-grid;
  place-items: center;
  background: rgba(15, 23, 42, .08);
  width: 19px;
  height: 19px;
  border-radius: 7px;
  font-size: 9px;
  margin-right: 5px;
}
.asg-hero-main h2 {
  letter-spacing: -.065em;
  font-size: clamp(28px, 3.1vw, 50px);
  line-height: .94;
  max-width: 1120px;
}
.asg-hero-main p {
  max-width: 1180px;
  margin: 8px 0 0;
  font-size: 13px;
  line-height: 1.45;
}
.asg-hero-mini-proof {
  display: inline-grid;
  grid-template-columns: auto auto auto;
  gap: 8px;
  align-items: center;
  margin-top: 10px;
  padding: 7px 10px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: rgba(255,255,255,.78);
  color: var(--muted);
  font-size: 12px;
  max-width: 100%;
}
.asg-hero-mini-proof strong {
  color: #111827;
}
.asg-hero-mini-proof small {
  color: var(--muted);
}
.asg-side-logo-row {
  display: flex;
  gap: 18px;
  align-items: center;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--line);
}
.asg-side-logo {
  width: 66px;
  height: 66px;
  border-radius: 0;
  object-fit: contain;
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 0;
}
.asg-side-logo-row strong {
  display: block;
  font-size: 14px;
  letter-spacing: -.02em;
}
.asg-side-logo-row small {
  display: block;
  font-size: 11px;
}
.asg-hero-actions-side {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 7px;
  margin-top: 2px;
}
.asg-hero-actions-side .btn {
  min-height: 34px;
  padding: 0 9px;
  font-size: 12px;
  border-radius: 11px;
  text-align: center;
  justify-content: center;
}
.asg-hero-actions-side a.btn {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
}
.asg-workspace-tabs {
  display: flex;
  flex-wrap: wrap;
  border: 1px solid #cfd7e2;
  backdrop-filter: blur(16px);
  position: sticky;
  top: 124px;
  z-index: 899800;
  gap: 5px;
  margin: 8px 0 8px;
  padding: 6px;
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 8px 20px rgba(16,24,40,.045);
}
.asg-tab-btn {
  display: inline-flex;
  align-items: center;
  border: 1px solid transparent;
  background: transparent;
  color: #516173;
  font-weight: 900;
  cursor: pointer;
  min-height: 29px;
  height: 29px;
  gap: 5px;
  padding: 0 8px;
  border-radius: 999px;
  font-size: 12px;
  line-height: 1;
  white-space: nowrap;
}
.asg-tab-btn span {
  display: grid;
  place-items: center;
  background: #eef3f8;
  color: #667085;
  width: 20px;
  height: 20px;
  min-width: 20px;
  border-radius: 8px;
  font-size: 9px;
}
.asg-window-strip {
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  position: sticky;
  top: 163px;
  z-index: 899700;
  margin: 8px 0 10px;
  padding: 9px 12px;
  border-radius: 13px;
  background: rgba(255,255,255,.95);
  backdrop-filter: blur(16px);
}
.asg-window-strip strong {
  display: block;
  font-size: 13px;
}
.asg-window-strip small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
}
.asg-window-filter {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
}
.asg-window-btn {
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--text);
  cursor: pointer;
  font-weight: 900;
  min-height: 29px;
  padding: 0 10px;
  font-size: 12px;
}
.metric-label {
  font-size: 11px;
}
.metric-card small {
  font-size: 12px;
  line-height: 1.35;
}
.cards-grid {
  display: grid;
  gap: 10px;
  margin: 10px 0;
}
.cards-grid.asg-twelve, .cards-grid.asg-six, .cards-grid.compact-six, .cards-grid.five, .cards-grid.six {
  gap: 10px;
}
.asg-client-grid, .asg-card-list, .asg-directory-list, #asgClientList, #asgSelectedClientVisitorsList, #asgOverallVisitorDirectoryList, #asgRuntimeList, #asgKnownRegistryList, #asgUnknownTrafficList, #asgCreditEventsList, #asgBillingAccountsList, #asgProfileQueueList, #asgActionRequestList, #asgCheckoutIntentList, #asgA2ASessionList, #asgA2AMessageList, #asgInstallAssetsList, #asgRootInstallList, #asgSecurityGateList, #asgSecurityRiskList {
  max-height: min(620px, calc(100vh - 260px));
  overflow: auto;
  padding-right: 4px;
  scrollbar-width: thin;
}
#asgSelectedClientCard, .asg-selected-client-card {
  max-height: 420px;
  overflow: auto;
}
.asg-mini-row, .asg-visitor-row, .log-item.asg-runtime-row {
  padding: 11px 12px;
}
.asg-production-setup-form {
  align-items: start;
}
.field-help {
  display: block;
  margin-top: 6px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
}
.asg-conditional-box {
  grid-column: 1 / -1;
  border: 1px solid rgba(37, 87, 214, .18);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(37,87,214,.06), rgba(20,164,108,.045)), #fff;
  padding: 14px;
  box-shadow: 0 10px 28px rgba(15,23,42,.05);
}
.asg-conditional-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: start;
  margin-bottom: 12px;
}
.asg-conditional-head strong {
  display: block;
  font-size: 15px;
  letter-spacing: -.01em;
}
.asg-conditional-head small {
  color: var(--muted);
  line-height: 1.4;
}
.asg-form-mini-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 12px;
}
.asg-form-mini-grid label, .asg-conditional-box label.full {
  display: grid;
  gap: 7px;
  color: #344054;
  font-size: 13px;
  font-weight: 900;
}
.asg-conditional-box label.full {
  margin-top: 12px;
}
.production-check {
  background: #f8fbff;
  color: #1e3a8a;
  border-color: rgba(37,87,214,.22);
}
.asg-result-card {
  display: grid;
  gap: 10px;
  margin-bottom: 14px;
  grid-template-columns: repeat(2,minmax(0,1fr));
}
.asg-result-card > div {
  border: 1px solid var(--line);
  border-radius: 14px;
  background: var(--soft);
  padding: 12px;
  min-width: 0;
}
#asgSetupCodeOut, #asgSetupSlugOut, #asgSetupPlanOut {
  color: #0f172a;
}
.aig-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  overflow: visible;
  border: 0;
  min-height: 74px;
  border-radius: 0 0 18px 18px;
  border-left: 0;
  border-right: 0;
  border-top: 0;
  position: sticky;
  top: 0;
  z-index: 60;
  margin: 0;
  padding: 12px 18px;
  background: rgba(248,250,255,.94);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(187,200,223,.75);
  box-shadow: 0 8px 22px rgba(9,24,54,.06);
}
.aig-header .subtitle {
  font-size: 12px;
  line-height: 1.35;
  margin-top: 3px;
  max-width: 780px;
}
.aig-header .apple-clock {
  min-width: 150px;
  padding: 8px 12px;
  border-radius: 18px;
  display: none;
}
.aig-header .status-pill {
  font-size: 12px;
  border-radius: 999px;
  padding: 10px 14px;
}
.overview-control-row,
.asg-window-strip {
  display: none;
}
.session-strip .metric-label {
  font-size: 10px;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #6981a3;
}
.session-strip small {
  font-size: 12px;
  color: #6b768a;
  line-height: 1.4;
}
.session-clock-wrap .clock-label {
  font-size: 9px;
}
.session-strip #logoutBtn {
  align-self: stretch;
  min-height: 88px;
  border-radius: 18px;
}
.cards-grid.compact-six, .cards-grid.five, .cards-grid.nine, .cards-grid.twelve {
  gap: 12px;
}
.metric-card {
  padding: 13px 14px;
  min-height: 98px;
  border-radius: 20px;
  border: 1px solid rgba(199,212,232,.85);
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(245,248,255,.95));
  box-shadow: 0 8px 18px rgba(14,31,64,.04);
  overflow: hidden;
  position: relative;
}
.metric-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  border-radius: 22px 0 0 22px;
  background: linear-gradient(180deg, #2563eb, #88b4ff);
}
.metric-card:nth-child(3n+2)::before {
  background: linear-gradient(180deg, #14b8a6, #91f0df);
}
.metric-card:nth-child(3n+3)::before {
  background: linear-gradient(180deg, #f59e0b, #f7d28b);
}
.metric-card strong {
  display: block;
  letter-spacing: -0.04em;
  font-size: clamp(24px, 2.2vw, 36px);
  margin: 7px 0 3px;
  color: #081a39;
}
.risk-card::before {
  background: linear-gradient(180deg, #8b5cf6, #c9b5ff);
}
.overview-signal-deck {
  margin-top: 12px;
}
.mountain-graph-wrap {
  display: grid;
  gap: 12px;
}
.mountain-graph-wrap svg {
  width: 100%;
  height: 220px;
  border-radius: 18px;
  background: linear-gradient(180deg, #f9fbff, #eef4ff);
  border: 1px solid rgba(202,214,234,.8);
}
.mountain-graph-wrap .gridlines line {
  stroke: rgba(145,165,198,.45);
  stroke-width: .8;
}
.mountain-legend {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.mountain-legend span {
  padding: 8px 12px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid rgba(194,209,231,.88);
  font-size: 12px;
}
.overview-block-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 10px;
}
.overview-block {
  min-height: 92px;
  padding: 12px 14px;
  border-radius: 18px;
  border: 1px solid rgba(196,210,232,.85);
  display: grid;
  align-content: space-between;
  background: #fff;
}
.overview-block span {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .14em;
  color: #667ea1;
  font-weight: 800;
}
.overview-block strong {
  font-size: 28px;
  color: #081a39;
}
.tone-blue {
  background: linear-gradient(180deg,#f0f6ff,#ffffff);
}
.tone-mint {
  background: linear-gradient(180deg,#eefcf8,#ffffff);
}
.tone-orange {
  background: linear-gradient(180deg,#fff8eb,#ffffff);
}
.tone-violet {
  background: linear-gradient(180deg,#f6f1ff,#ffffff);
}
.tone-slate {
  background: linear-gradient(180deg,#f4f7fb,#ffffff);
}
.endpoint-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 12px;
}
.endpoint-card {
  padding: 14px;
  border-radius: 18px;
  border: 1px solid rgba(194,209,231,.85);
  background: linear-gradient(180deg,#ffffff,#f6f9ff);
  box-shadow: 0 8px 16px rgba(12,30,63,.04);
  display: grid;
  gap: 8px;
  min-height: 118px;
}
.endpoint-card-top {
  display: flex;
  align-items: center;
  gap: 8px;
}
.endpoint-state-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  display: inline-block;
}
.endpoint-state-dot.good {
  background: #1dbb74;
  box-shadow: 0 0 0 4px rgba(29,187,116,.12);
}
.endpoint-state-dot.warn {
  background: #f59e0b;
  box-shadow: 0 0 0 4px rgba(245,158,11,.12);
}
.endpoint-card strong {
  font-size: 18px;
  color: #081a39;
}
.endpoint-card small {
  color: #6a7690;
  font-size: 12px;
  word-break: break-all;
}
.endpoint-card.ok {
  border-color: rgba(117,214,176,.9);
}
.endpoint-card.warn {
  border-color: rgba(244,195,107,.95);
}
.bar-row {
  display: grid;
  gap: 7px;
  padding: 10px 12px;
  border-radius: 16px;
  border: 1px solid rgba(202,214,233,.85);
  background: linear-gradient(180deg,#fff,#f8fbff);
}
.bar-track {
  height: 10px;
  border-radius: 999px;
  background: #e8eef8;
  overflow: hidden;
}
.bar-track i {
  display: block;
  height: 100%;
  border-radius: 999px;
  background: linear-gradient(90deg,#245fff,#5ac8ff);
}
.status-mini-card {
  padding: 14px;
  border-radius: 18px;
  border: 1px solid rgba(199,212,232,.85);
  background: linear-gradient(180deg,#fff,#f7faff);
}
.log-item, .conversation-item, .identity-item, .security-item, .rank-item {
  border-radius: 18px;
  border: 1px solid rgba(200,213,233,.86);
  background: linear-gradient(180deg,#fff,#f8fbff);
  box-shadow: 0 6px 14px rgba(12,31,61,.03);
}
.panel {
  padding: 18px;
  min-width: 0;
  overflow: hidden;
  border-radius: 24px;
  border: 1px solid rgba(196,210,232,.86);
  box-shadow: 0 10px 22px rgba(10,26,58,.04);
}
.panel-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: start;
  margin-bottom: 12px;
}
.panel-head h2 {
  letter-spacing: -.02em;
}
.panel-head p {
  margin: 5px 0 0;
  line-height: 1.45;
  color: #6c7890;
}
.hidden {
  display: none !important;
}
.monitoring-hero {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: center;
  padding: 18px 20px;
  background: radial-gradient(circle at 92% 12%, rgba(58,122,255,.13), transparent 28rem), linear-gradient(180deg, #ffffff, #f4f8ff);
}
.monitoring-hero p {
  margin: 6px 0 0;
  max-width: 900px;
}
.monitor-service-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 12px 0;
}
.monitor-service-card {
  min-height: 126px;
  padding: 15px;
  border-radius: 20px;
  border: 1px solid rgba(196,210,232,.88);
  background: linear-gradient(180deg,#fff,#f7faff);
  box-shadow: 0 9px 20px rgba(10,28,61,.04);
  display: grid;
  align-content: space-between;
  gap: 10px;
}
.monitor-service-card.ok {
  border-color: rgba(112,215,174,.9);
  background: linear-gradient(180deg,#f1fcf8,#fff);
}
.monitor-service-card.warn {
  border-color: rgba(244,192,96,.95);
  background: linear-gradient(180deg,#fff8e9,#fff);
}
.monitor-service-top {
  display: flex;
  align-items: center;
  gap: 9px;
  font-size: 11px;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: #667894;
}
.monitor-service-card strong {
  font-size: 20px;
  color: #081a39;
}
.monitor-service-card small {
  color: #6b7890;
}
.monitor-analytics-grid {
  align-items: stretch;
}
.monitor-reliability-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 10px;
}
.monitor-reliability-block {
  min-height: 96px;
  padding: 12px 14px;
  border-radius: 18px;
  border: 1px solid rgba(198,212,232,.86);
  display: grid;
  align-content: space-between;
}
.monitor-reliability-block span {
  font-size: 10px;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: .14em;
  color: #6b7d9a;
}
.monitor-reliability-block strong {
  font-size: 25px;
  color: #081a39;
  overflow-wrap: anywhere;
}
.monitor-endpoint-panel {
  margin-top: 12px;
}
.monitor-endpoint-grid {
  grid-template-columns: repeat(4, minmax(0,1fr));
}
.monitor-history-grid {
  align-items: start;
}
.monitor-history-list, .monitor-alert-list {
  display: grid;
  gap: 10px;
  max-height: 540px;
  overflow: auto;
  padding-right: 3px;
}
.monitor-history-item, .monitor-alert-item {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 13px 14px;
  border-radius: 18px;
  border: 1px solid rgba(199,212,232,.86);
  background: linear-gradient(180deg,#fff,#f8fbff);
}
.monitor-history-item.ok, .monitor-alert-item.ok {
  border-color: rgba(119,215,177,.78);
}
.monitor-history-item.warn, .monitor-alert-item.warn {
  border-color: rgba(242,188,88,.88);
  background: linear-gradient(180deg,#fff9ed,#fff);
}
.monitor-history-item div, .monitor-alert-item div {
  display: grid;
  gap: 3px;
}
.monitor-history-item strong, .monitor-alert-item strong {
  color: #0a1c3b;
  text-transform: capitalize;
}
.monitor-history-item small, .monitor-alert-item small {
  color: #6a7890;
  line-height: 1.4;
}
.monitor-history-item time {
  font-size: 11px;
  color: #71809a;
  white-space: nowrap;
}
.monitor-alert-item b {
  font-size: 22px;
  color: #0a1c3b;
}
.monitor-empty {
  padding: 18px;
  border-radius: 18px;
  border: 1px dashed rgba(196,210,232,.9);
  color: #6a7890;
  background: #f8fbff;
}
.session-strip {
  margin-bottom: 18px;
  width: 100%;
  margin: 0;
  border-left: 0;
  border-right: 0;
  border-top: 0;
  border-bottom: 2px solid #1d2633;
  display: grid;
  gap: 10px;
  padding: 10px;
  border-radius: 22px;
  border: 1px solid rgba(196,210,232,.85);
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(245,248,255,.98));
  box-shadow: 0 10px 26px rgba(8,18,37,.05);
  grid-template-columns: 170px minmax(250px,1fr) minmax(230px,.9fr) minmax(230px,.9fr) 154px;
  align-items: stretch;
  overflow: visible;
}
.session-strip > div, .session-clock-wrap, .session-strip > button {
  min-height: 88px;
  padding: 12px 14px;
  border-radius: 18px;
  border: 1px solid rgba(204,216,235,.88);
  background: #fff;
  min-width: 0;
}
.session-strip strong {
  display: block;
  margin: 5px 0 2px;
  color: #071a39;
  margin-top: 4px;
  font-size: clamp(18px,1.45vw,25px);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.session-clock-wrap {
  display: grid;
  align-items: center;
  width: 170px;
  min-width: 170px;
  overflow: hidden;
}
.session-clock-wrap .apple-clock {
  display: grid;
  height: 100%;
  min-height: 62px;
  padding: 0;
  box-shadow: none;
  border: 0;
  background: transparent;
  width: 100%;
  min-width: 0;
  text-align: left;
}
.session-clock-wrap .apple-clock strong {
  line-height: 1;
  width: 8ch;
  font-size: 31px;
  font-variant-numeric: tabular-nums;
  letter-spacing: -.045em;
  white-space: nowrap;
  overflow: visible;
}
.session-clock-wrap .apple-clock small {
  font-size: 12px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.session-actions {
  display: grid;
  grid-template-rows: 1fr 1fr;
  gap: 8px;
  min-height: 88px;
  padding: 8px;
}
.session-actions .btn {
  width: 100%;
  min-height: 34px;
  border-radius: 12px;
}
.session-refresh-btn {
  background: linear-gradient(180deg,#ffffff,#edf4ff);
  color: #173a72;
  border-color: #bfd2ef;
}
.session-refresh-btn:disabled {
  opacity: .65;
  cursor: wait;
}
.session-actions #logoutBtn {
  min-height: 34px;
  padding: 0 10px;
}
.login-history-mini {
  grid-column: 1 / -1;
  min-height: 44px;
  padding: 8px 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  background: linear-gradient(180deg,#f8fbff,#ffffff);
}
.login-history-chip {
  display: inline-grid;
  gap: 2px;
  padding: 6px 9px;
  border-radius: 12px;
  border: 1px solid #d4dfef;
  background: #fff;
  line-height: 1.15;
}
.login-history-chip b {
  font-size: 10px;
  text-transform: capitalize;
  color: #223a60;
}
.login-history-chip small {
  font-size: 10px;
}
.login-history-chip.ok {
  border-color: rgba(44,181,121,.42);
  background: #f3fcf8;
}
.login-history-chip.warn {
  border-color: rgba(245,158,11,.45);
  background: #fff9ed;
}
.login-history-chip.fail {
  border-color: rgba(225,76,76,.4);
  background: #fff5f5;
}
.login-history-empty {
  font-size: 11px;
  color: #708098;
}
#stickyModeTitle {
  min-width: 3ch;
}
.asg-action-side-panel .asg-hero-actions-side {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
  margin-top: 10px;
}
.asg-action-side-panel .asg-hero-actions-side .btn {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
#asgActionBucket .asg-top-action {
  min-height: 38px;
}
.asg-control-hero {
  display: grid;
  border-left: 8px solid #111827;
  background: radial-gradient(circle at top right, rgba(37, 87, 214, .10), transparent 38%), linear-gradient(135deg, #ffffff 0%, #f7fbff 100%);
  margin: 8px 0 8px;
  border-left-width: 5px;
  min-height: 0;
  align-items: stretch;
  grid-template-columns: minmax(0, 1fr) minmax(250px, 310px);
  gap: 14px;
  padding: 14px;
}
.asg-hero-main {
  min-width: 0;
  display: grid;
  align-content: start;
}
.asg-command-brand {
  display: grid;
  grid-template-columns: auto minmax(170px, .65fr) minmax(240px, 1fr) 178px;
  align-items: center;
  gap: 14px;
  margin-bottom: 14px;
  padding: 12px 14px;
  border: 1px solid rgba(185,204,232,.9);
  border-radius: 20px;
  background: radial-gradient(circle at 12% 0%, rgba(42,94,255,.12), transparent 20rem), linear-gradient(180deg,#ffffff,#f5f9ff);
  box-shadow: 0 10px 24px rgba(10,30,67,.055);
}
asg-command-brand-logos {
  display: flex;
  align-items: center;
  gap: 22px;
  min-width: auto;
}
.asg-command-brand-logos img {
  width: 75px;
  height: 75px;
  object-fit: contain;
  padding: 0;
  margin: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}
.asg-command-asg-logo {
  margin-left: -10px;
}
.asg-command-brand-copy {
  display: grid;
  line-height: 1;
}
.asg-command-brand-copy span {
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #53709c;
}
.asg-command-brand-copy strong {
  margin-top: 5px;
  font-size: 31px;
  letter-spacing: -.055em;
  color: #081a39;
}
.asg-command-brand-copy small {
  margin-top: 5px;
  color: #667892;
  font-size: 11px;
  line-height: 1.25;
}
.asg-command-connection {
  min-width: 0;
  display: grid;
  gap: 9px;
  padding: 10px 12px;
  border: 1px solid #d5e1f1;
  border-radius: 16px;
  background: #fff;
}
.asg-connection-head {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  gap: 8px;
  align-items: center;
}
.asg-connection-head strong {
  font-size: 12px;
  color: #183153;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.asg-connection-head small {
  font-size: 10px;
  color: #73829a;
  font-variant-numeric: tabular-nums;
}
.asg-connection-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #f59e0b;
  box-shadow: 0 0 0 5px rgba(245,158,11,.12);
}
.asg-connection-track {
  height: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: #e6edf8;
}
.asg-connection-track i {
  display: block;
  height: 100%;
  width: 38%;
  border-radius: inherit;
  background: #f59e0b;
}
.asg-command-connection[data-state="online"] {
  border-color: rgba(38,185,122,.42);
  background: linear-gradient(180deg,#f1fcf7,#ffffff);
}
.asg-command-connection[data-state="online"] .asg-connection-dot {
  background: #20b978;
  box-shadow: 0 0 0 5px rgba(32,185,120,.13);
}
.asg-command-connection[data-state="online"] .asg-connection-track i {
  width: 42%;
  background: linear-gradient(90deg,#18a86d,#61e2b2);
  animation: asgConnectionFlow 10s linear infinite;
}
.asg-command-connection[data-state="offline"] {
  border-color: rgba(245,158,11,.55);
  background: linear-gradient(180deg,#fff8e8,#ffffff);
  animation: asgConnectionBlink 1s steps(2,end) infinite;
}
.asg-command-connection[data-state="offline"] .asg-connection-track i {
  width: 100%;
  background: #f59e0b;
}
.asg-command-clock {
  min-width: 178px;
  padding: 10px 12px;
  border: 1px solid #d5e1f1;
  border-radius: 16px;
  background: linear-gradient(180deg,#fff,#f5f8fd);
  text-align: right;
  overflow: hidden;
}
.asg-command-clock span {
  display: block;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #70809a;
}
.asg-command-clock strong {
  display: block;
  width: 8ch;
  margin: 4px 0 2px auto;
  font-size: 26px;
  line-height: 1;
  letter-spacing: -.045em;
  font-variant-numeric: tabular-nums;
  color: #081a39;
  white-space: nowrap;
}
.asg-command-clock small {
  display: block;
  font-size: 10px;
  color: #6c7c94;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.asg-action-side-panel {
  gap: 8px;
  padding: 12px;
  position: relative;
  top: auto;
  align-self: stretch;
  height: 100%;
  max-height: none;
  overflow: visible;
}
.asg-overview-masonry {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 14px;
  align-items: start;
  margin: 12px 0;
}
.asg-overview-column {
  display: grid;
  gap: 14px;
  align-content: start;
  min-width: 0;
}
.asg-overview-column > .panel {
  min-height: 0;
  margin: 0;
  align-self: start;
}
#asgSourceOverview {
  max-height: 360px;
  overflow: auto;
  padding-right: 4px;
}
.asg-client-card[data-record-class*="unlinked"], .asg-client-card:has(.asg-client-card-top small) {
  position: relative;
}
.asg-client-card {
  display: grid;
  gap: 12px;
  padding: 15px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
  min-width: 0;
  overflow: hidden;
  min-height: 192px;
}
.asg-client-card-meta small {
  display: block;
  margin-top: 4px;
  color: #64748b;
  line-height: 1.35;
}
.asg-management-toolbar {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 22px;
  margin: 18px 0;
  padding: 20px;
  overflow: visible;
}
.asg-management-toolbar > div:first-child {
  max-width: 760px;
}
.asg-management-toolbar h2 {
  font-size: clamp(24px, 2.2vw, 34px);
  margin: 2px 0 7px;
}
.asg-management-toolbar p {
  margin: 0;
  line-height: 1.5;
}
.asg-management-controls {
  display: flex;
  align-items: end;
  justify-content: flex-end;
  gap: 9px;
  flex-wrap: wrap;
}
.asg-management-controls label, .asg-subscription-action-form label {
  display: grid;
  gap: 6px;
  min-width: 190px;
}
.asg-management-controls label > span, .asg-subscription-action-form label > span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.asg-management-select {
  min-width: 220px;
}
.asg-management-search-label {
  min-width: min(310px, 100%);
}
.asg-definition-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}
.asg-definition-item {
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #f8fafc;
}
.asg-definition-item span, .asg-definition-item strong {
  display: block;
}
.asg-definition-item span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.asg-definition-item strong {
  margin-top: 7px;
  color: var(--text);
  line-height: 1.45;
  overflow-wrap: anywhere;
}
.asg-safe-link {
  color: var(--blue);
  font-weight: 900;
}
.asg-subscription-action-form {
  display: grid;
  gap: 12px;
}
.asg-admin-action-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}
.asg-timeline-list {
  display: grid;
  gap: 10px;
  max-height: 700px;
  overflow: auto;
  padding-right: 4px;
}
.asg-timeline-item {
  display: grid;
  grid-template-columns: 16px minmax(0, 1fr);
  gap: 10px;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: #f8fafc;
}
.asg-timeline-dot {
  width: 11px;
  height: 11px;
  margin-top: 4px;
  border-radius: 999px;
  background: var(--orange);
  box-shadow: 0 0 0 5px rgba(217, 119, 6, .11);
}
.asg-timeline-dot.ok {
  background: var(--green);
  box-shadow: 0 0 0 5px rgba(20, 164, 108, .11);
}
.asg-timeline-dot.fail {
  background: var(--red);
  box-shadow: 0 0 0 5px rgba(220, 38, 38, .11);
}
.asg-timeline-top, .asg-llm-usage-head, .asg-transcript-head, .asg-record-foot {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 12px;
}
.asg-timeline-top time, .asg-record-foot {
  color: var(--muted);
  font-size: 11px;
}
.asg-timeline-item p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.5;
}
.asg-inline-chips {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
  margin-top: 10px;
}
.asg-profile-summary-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  max-height: 650px;
  overflow: auto;
  padding-right: 4px;
}
.asg-profile-summary-card {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #f8fafc;
  color: var(--text);
  text-align: left;
  cursor: pointer;
}
.asg-profile-summary-card:hover {
  border-color: rgba(37, 87, 214, .35);
  background: #fff;
  transform: translateY(-1px);
  box-shadow: 0 12px 24px rgba(16, 24, 40, .07);
}
.asg-profile-summary-card span {
  color: var(--blue);
  font-size: 12px;
  font-weight: 900;
  overflow-wrap: anywhere;
}
.asg-profile-summary-card strong {
  font-size: 21px;
  letter-spacing: -.03em;
}
.asg-profile-summary-card small, .asg-profile-summary-card em {
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
  line-height: 1.45;
}
.asg-llm-usage-list, .asg-transcript-list {
  display: grid;
  gap: 12px;
  max-height: 850px;
  overflow: auto;
  padding-right: 4px;
}
.asg-llm-usage-item, .asg-transcript-item {
  min-width: 0;
  padding: 15px;
  border: 1px solid var(--line);
  border-radius: 17px;
  background: #f8fafc;
}
.asg-llm-usage-head strong, .asg-transcript-head strong {
  display: block;
  font-size: 15px;
}
.asg-llm-usage-head small, .asg-transcript-head small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}
.asg-preview-box {
  margin-top: 10px;
  padding: 11px 12px;
  border: 1px solid rgba(37, 87, 214, .13);
  border-radius: 13px;
  background: #fff;
  color: #334155;
  line-height: 1.55;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.asg-preview-box b {
  display: block;
  margin-bottom: 4px;
  color: var(--blue);
  font-size: 11px;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.asg-record-foot {
  align-items: center;
  margin-top: 11px;
}
.asg-record-foot code {
  max-width: 65%;
  overflow-wrap: anywhere;
  text-align: right;
}
.asg-transcript-turn {
  margin-top: 11px;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: #fff;
}
.asg-transcript-turn.question {
  border-left: 4px solid var(--blue);
}
.asg-transcript-turn.answer {
  border-left: 4px solid var(--green);
}
.asg-transcript-turn span {
  display: block;
  margin-bottom: 5px;
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.asg-transcript-turn p {
  margin: 0;
  color: #26334a;
  line-height: 1.62;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
#asgSubscriptionActionOutput, #asgAgreementActionOutput {
  max-height: 260px;
}
.cards-grid.asg-eight {
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 12px;
}
.cards-grid.asg-eight .metric-card {
  min-height: 126px;
  padding: 15px;
  box-shadow: none;
}
.asg-subscription-metrics strong, #asgAgreementStatus, #asgAgreementUpdated {
  font-size: clamp(18px, 1.55vw, 28px);
  line-height: 1.08;
  overflow-wrap: anywhere;
  word-break: break-word;
}
#asgSubClient, #asgSubMembership, #asgSubUnsubscribe {
  font-size: clamp(16px, 1.35vw, 25px);
}
button:disabled {
  cursor: not-allowed;
  opacity: .46;
  transform: none;
  box-shadow: none;
}
.asg-confirm-layer[hidden] {
  display: none !important;
}
.asg-confirm-layer {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(9, 18, 36, .58);
  backdrop-filter: blur(10px);
  opacity: 0;
  transition: opacity .16s ease;
}
.asg-confirm-layer.open {
  opacity: 1;
}
.asg-confirm-dialog {
  width: min(520px, 100%);
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  gap: 18px;
  padding: 24px;
  border: 1px solid rgba(37, 87, 214, .2);
  border-radius: 24px;
  background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(245,249,255,.98));
  box-shadow: 0 30px 80px rgba(15, 23, 42, .28);
  transform: translateY(12px) scale(.985);
  transition: transform .16s ease;
}
.asg-confirm-layer.open .asg-confirm-dialog {
  transform: translateY(0) scale(1);
}
.asg-confirm-dialog.danger-mode {
  border-color: rgba(220, 38, 38, .28);
  background: linear-gradient(145deg, rgba(255,255,255,.99), rgba(255,247,247,.99));
}
.asg-confirm-icon {
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  border-radius: 18px;
  background: rgba(37, 87, 214, .1);
  color: var(--blue);
  font-size: 24px;
  font-weight: 950;
  box-shadow: inset 0 0 0 1px rgba(37, 87, 214, .16);
}
.asg-confirm-dialog.danger-mode .asg-confirm-icon {
  background: rgba(220, 38, 38, .1);
  color: var(--red);
  box-shadow: inset 0 0 0 1px rgba(220, 38, 38, .16);
}
.asg-confirm-copy {
  min-width: 0;
}
.asg-confirm-copy .eyebrow {
  margin: 0 0 6px;
}
.asg-confirm-copy h2 {
  margin: 0;
  color: var(--text);
  font-size: 24px;
  line-height: 1.15;
  letter-spacing: -.03em;
}
.asg-confirm-copy p:last-child {
  margin: 10px 0 0;
  color: var(--muted);
  line-height: 1.62;
  overflow-wrap: anywhere;
}
.asg-confirm-actions {
  grid-column: 1 / -1;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  padding-top: 4px;
}
.asg-confirm-actions .btn {
  min-width: 124px;
}
.login-logo-wrap {
  overflow: hidden;
  background: transparent;
  border: none;
  box-shadow: none;
}
.login-logo-wrap img {
  width: 82%;
  height: 82%;
  object-fit: contain;
  display: block;
}
.digital-pulse-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  margin: 18px 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(16, 24, 40, .045);
}
.digital-pulse-card {
  min-width: 0;
  padding: 14px 16px 7px;
  border-right: 1px solid var(--line);
  background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
}
.digital-pulse-card:last-child {
  border-right: 0;
}
.digital-pulse-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.digital-pulse-head span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.digital-pulse-head small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
}
.digital-pulse-head small[data-trend="up"] {
  color: var(--green);
}
.digital-pulse-head small[data-trend="down"] {
  color: var(--red);
}
.digital-pulse-head small[data-trend="neutral"] {
  color: var(--muted);
}
.digital-pulse-card > strong {
  display: block;
  margin-top: 8px;
  color: var(--dark);
  font-size: 26px;
  line-height: 1;
  letter-spacing: -.035em;
  font-variant-numeric: tabular-nums;
}
.digital-pulse-line {
  display: block;
  width: calc(100% + 32px);
  height: 48px;
  margin: 7px -16px 0;
  overflow: visible;
}
.digital-pulse-line .pulse-area {
  fill: rgba(37, 87, 214, .075);
}
.digital-pulse-line .pulse-stroke {
  fill: none;
  stroke: #4388ff;
  stroke-width: 1.45;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}
.asg-digital-pulse-grid {
  margin-top: 14px;
}
.asg-digital-pulse-grid .digital-pulse-line .pulse-area {
  fill: rgba(20, 164, 108, .075);
}
.asg-digital-pulse-grid .digital-pulse-line .pulse-stroke {
  stroke: #14a46c;
}
#aigPulseOverallDelta, #aigPulseWindowDelta {
  font-weight: 850;
}
.route-quality-panel {
  margin: 18px 0;
}
.route-quality-legend {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 14px;
  margin: -4px 0 14px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.route-quality-legend span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
.route-quality-legend i {
  width: 10px;
  height: 10px;
  border-radius: 999px;
}
.route-quality-chart {
  display: grid;
  gap: 10px;
}
.route-quality-row {
  display: grid;
  grid-template-columns: minmax(170px,280px) minmax(220px,1fr) 56px;
  gap: 12px;
  align-items: center;
}
.route-quality-row>strong {
  overflow: hidden;
  color: #263247;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.route-quality-row>span {
  color: #172033;
  font-size: 12px;
  font-weight: 900;
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.route-quality-track {
  height: 20px;
  overflow: hidden;
  border: 1px solid #dbe3ee;
  border-radius: 6px;
  background: #f1f5f9;
}
.route-quality-width {
  display: flex;
  height: 100%;
  min-width: 2px;
}
.route-quality-width i {
  display: block;
  height: 100%;
}
.quality-good {
  background: #57c786;
}
.quality-review {
  background: #ffb347;
}
.quality-poor {
  background: #ff665a;
}
.real-analytics-grid .digital-pulse-card small {
  max-width: 170px;
  text-align: right;
}
.asg-route-quality-panel {
  margin-top: 16px;
  display: grid;
  gap: 14px;
}
.asg-commercial-strip-slot {
  margin: 2px -18px 0;
}
.asg-commercial-strip-slot .digital-pulse-grid {
  margin: 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  box-shadow: none;
}
.route-quality-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.route-quality-metrics article {
  min-width: 0;
  padding: 13px 14px;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: linear-gradient(180deg, #ffffff, #f7faff);
}
.route-quality-metrics article.wide {
  grid-column: span 2;
}
.route-quality-metrics span, .route-quality-metrics small {
  display: block;
  color: var(--muted);
}
.route-quality-metrics span {
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.route-quality-metrics strong {
  display: block;
  margin: 7px 0 3px;
  overflow: hidden;
  color: #0b1831;
  font-size: 24px;
  letter-spacing: -.04em;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.route-quality-metrics small {
  font-size: 12px;
}
.overview-balanced-grid .metric-card::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 3px;
  background: linear-gradient(90deg, rgba(37, 87, 214, .88), rgba(20, 164, 108, .72));
  content: "";
  opacity: .78;
}
.overview-balanced-grid .metric-card > small {
  line-height: 1.35;
}
.buyer-intent-card {
  border-color: rgba(37, 87, 214, .28);
  background: radial-gradient(circle at 100% 0, rgba(37, 87, 214, .11), transparent 55%), #fff;
}
.buyer-intent-card::after {
  position: absolute;
  top: 12px;
  right: 13px;
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: var(--blue);
  box-shadow: 0 0 0 5px rgba(37, 87, 214, .10);
  content: "";
}
.metric-trend {
  display: inline-flex;
  width: fit-content;
  min-height: 24px;
  align-items: center;
  margin-top: auto;
  padding: 4px 8px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #f8fafc;
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .01em;
  white-space: nowrap;
}
.metric-trend.good {
  border-color: rgba(20, 164, 108, .22);
  background: rgba(20, 164, 108, .08);
  color: #08784f;
}
.metric-trend.bad {
  border-color: rgba(220, 38, 38, .20);
  background: rgba(220, 38, 38, .07);
  color: #b42318;
}
.metric-trend.neutral {
  color: var(--muted);
}
.traffic-meter-track, .traffic-meter-danger, .traffic-meter-value {
  fill: none;
  stroke-linecap: round;
}
.traffic-meter-hub {
  fill: #172033;
  stroke: #fff;
  stroke-width: 4;
  filter: drop-shadow(0 3px 6px rgba(15, 23, 42, .22));
}
.traffic-meter-min, .traffic-meter-max {
  fill: var(--muted);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.traffic-meter-stats span {
  display: block;
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .07em;
}
.overview-meter-deck .overview-block strong {
  font-variant-numeric: tabular-nums;
}
.cards-grid.compact-six.overview-balanced-grid {
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 12px;
}
.overview-balanced-grid .metric-card {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 120px;
  flex-direction: column;
  overflow: hidden;
}
.overview-meter-deck {
  grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr);
  align-items: stretch;
}
.traffic-meter-panel {
  overflow: hidden;
  padding: 14px;
  background: radial-gradient(circle at 18% 20%, rgba(37, 87, 214, .08), transparent 40%), linear-gradient(180deg, #fff 0%, #fbfdff 100%);
}
.traffic-meter-wrap {
  min-height: 118px;
}
.traffic-meter {
  display: grid;
  grid-template-columns: 220px minmax(150px, 1fr);
  gap: 12px;
  align-items: center;
}
.traffic-meter-svg {
  display: block;
  width: 220px;
  max-width: 100%;
  height: 110px;
  min-height: 0;
  overflow: visible;
}
.traffic-meter-track {
  stroke: #e6edf6;
  stroke-width: 14;
}
.traffic-meter-danger {
  stroke: rgba(217, 119, 6, .52);
  stroke-width: 9;
}
.traffic-meter-value {
  stroke: #14a46c;
  stroke-width: 9;
  transition: stroke-dasharray .5s ease;
}
.traffic-meter-needle {
  stroke: #172033;
  stroke-width: 2.5;
  stroke-linecap: round;
}
.traffic-meter-copy {
  display: grid;
  align-content: center;
  gap: 3px;
}
.traffic-meter-copy strong {
  color: #0b1831;
  font-size: clamp(30px, 2.7vw, 42px);
  line-height: .95;
  letter-spacing: -.06em;
  font-variant-numeric: tabular-nums;
}
.traffic-meter-copy b {
  color: var(--blue);
  font-size: 14px;
}
.traffic-meter-copy small {
  max-width: 250px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.35;
}
.traffic-meter-delta {
  display: inline-flex;
  width: fit-content;
  min-height: 24px;
  align-items: center;
  margin-top: 5px;
  padding: 0 8px;
  border: 1px solid rgba(37, 87, 214, .18);
  border-radius: 999px;
  background: rgba(37, 87, 214, .06);
  color: #244ea8;
  font-size: 10px;
  font-weight: 900;
}
.traffic-meter-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 0;
}
.traffic-meter-stats > div {
  padding: 8px 10px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255, 255, 255, .84);
}
.traffic-meter-stats strong {
  display: block;
  margin-top: 3px;
  color: #0b1831;
  font-size: 17px;
  font-variant-numeric: tabular-nums;
}
.overview-meter-deck .overview-block-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-content: stretch;
  height: auto;
}
.overview-meter-deck .overview-block {
  min-height: 76px;
}
@keyframes pulseButton {
  0%, 100% { box-shadow: 0 0 0 0 rgba(37,87,214,.22); }
  50% { box-shadow: 0 0 0 8px rgba(37,87,214,.06); }
}
@keyframes pulseSoft {
  0%, 100% { transform: translateX(0); }
  92% { transform: translateX(0); }
  94% { transform: translateX(-1px); }
  96% { transform: translateX(1px); }
  98% { transform: translateX(0); }
}
@keyframes asgConnectionFlow {
  from { transform: translateX(-120%); }
  to { transform: translateX(270%); }
}
@keyframes asgConnectionBlink {
  0%, 48% { opacity: 1; }
  49%, 100% { opacity: .48; }
}
@media (min-width: 2200px) {
  .cards-grid.compact-six {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }
  .cards-grid.twelve {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }
  .panel {
    padding: 22px;
  }
  .metric-card strong {
    font-size: clamp(30px, 1.35vw, 48px);
  }
}
@media (max-width: 1680px) {
  .cards-grid.asg-eight {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media (max-width: 1560px) {
  .cards-grid.asg-twelve, .cards-grid.asg-six {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .asg-client-grid, .asg-addon-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .asg-control-hero {
    grid-template-columns: minmax(0, 1fr) minmax(245px, 300px);
  }
}
@media (max-width: 1500px) {
  .cards-grid.nine {
    grid-template-columns: repeat(3, 1fr);
  }
  .cards-grid.twelve {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .cards-grid.compact-six {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .control-actions-wide .action-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .session-strip {
    grid-template-columns: 160px repeat(3,minmax(210px,1fr)) 145px;
  }
  .asg-command-brand {
    grid-template-columns: auto minmax(160px, .7fr) minmax(210px, 1fr);
  }
  .asg-command-clock {
    grid-column: 2 / -1;
    text-align: left;
  }
  .asg-command-clock strong {
    margin-left: 0;
  }
}
@media (max-width: 1440px) {
  .endpoint-list {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}
@media (max-width: 1420px) {
  .monitor-service-grid, .monitor-endpoint-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}
@media (max-width: 1320px) {
  .cards-grid.six, .cards-grid.five {
    grid-template-columns: repeat(3, 1fr);
  }
  .session-strip {
    grid-template-columns: 1fr 1fr;
  }
  .cards-grid.compact-six, .cards-grid.five, .cards-grid.nine, .cards-grid.twelve {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .split-panel, .overview-recent-row.overview-two-col, .analytics-review-row, .asg-clients-split {
    grid-template-columns: 1fr;
  }
  .asg-management-toolbar {
    align-items: start;
    flex-direction: column;
  }
  .asg-management-controls {
    width: 100%;
    justify-content: flex-start;
  }
  .cards-grid.compact-six.overview-balanced-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 1220px) {
  .session-strip {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .session-clock-wrap {
    width: auto;
    min-width: 0;
  }
  .login-history-mini {
    grid-column: 1 / -1;
  }
  .traffic-meter-copy small {
    max-width: 560px;
  }
  .overview-meter-deck {
    grid-template-columns: 1fr;
  }
  .traffic-meter {
    grid-template-columns: 220px minmax(150px, 1fr);
    justify-content: start;
  }
  .traffic-meter-svg {
    width: 220px;
    max-width: 220px;
    height: 110px;
    min-height: 0;
    margin: 0;
  }
  .traffic-meter-copy {
    justify-items: start;
    text-align: left;
  }
}
@media (max-width: 1180px) {
  .session-strip {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
  .overview-block-grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}
@media (max-width: 1120px) {
  .digital-pulse-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .digital-pulse-card:nth-child(2) {
    border-right: 0;
  }
  .digital-pulse-card:nth-child(-n+2) {
    border-bottom: 1px solid var(--line);
  }
}
@media (max-width: 1100px) {
  .split-panel, .login-grid, .cards-grid.six, .cards-grid.five {
    grid-template-columns: 1fr;
  }
  .aig-header {
    align-items: start;
    flex-direction: column;
  }
  .header-right {
    width: 100%;
    justify-content: space-between;
  }
  .overview-recent-row.overview-two-col {
    grid-template-columns: 1fr;
  }
.asg-code-form,
.asg-clients-split {
    grid-template-columns: 1fr;
  }
  .asg-admin-hero {
    align-items: start;
    flex-direction: column;
  }
  .asg-form-mini-grid,.asg-result-card {
    grid-template-columns: 1fr;
  }
  .asg-control-hero, .asg-overview-masonry {
    grid-template-columns: 1fr;
  }
  .asg-command-brand {
    grid-template-columns: auto minmax(0,1fr);
  }
  .asg-command-connection, .asg-command-clock {
    grid-column: 1 / -1;
  }
}
@media (max-width: 1000px) {
.aig-header,
.asg-workspace-tabs,
.asg-window-strip,
.internal-nav {
    position: relative;
    top: auto;
  }
  .asg-control-hero {
    grid-template-columns: 1fr;
  }
  .asg-action-side-panel {
    position: relative;
    top: auto;
    max-height: none;
  }
  .asg-hero-actions-side {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 980px) {
  .cards-grid.twelve, .overview-extra-panels {
    grid-template-columns: 1fr 1fr;
  }
  .cards-grid.twelve {
    grid-template-columns: 1fr 1fr;
  }
  .route-quality-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 900px) {
  .tools-dropdown {
    right: auto;
    left: 0;
  }
  .asg-window-strip {
    align-items: flex-start;
    flex-direction: column;
  }
  .asg-window-filter {
    justify-content: flex-start;
  }
  .cards-grid.asg-twelve, .cards-grid.asg-six, .asg-client-grid, .asg-addon-grid, .asg-action-matrix, .asg-clients-split {
    grid-template-columns: 1fr;
  }
  .asg-workspace-tabs {
    position: relative;
    top: auto;
  }
  .asg-tab-btn {
    width: 100%;
    justify-content: flex-start;
  }
  .monitoring-hero {
    align-items: flex-start;
    flex-direction: column;
  }
  .monitor-reliability-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .asg-definition-grid, .asg-profile-summary-grid, .asg-admin-action-grid {
    grid-template-columns: 1fr;
  }
  .asg-management-controls {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .asg-management-controls label, .asg-management-select, .asg-management-search-label {
    width: 100%;
    min-width: 0;
  }
  .cards-grid.asg-eight {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  .cards-grid.nine, .status-card-grid {
    grid-template-columns: 1fr;
  }
  .rank-item, .agent-rank {
    grid-template-columns: 34px 1fr;
  }
  .rank-item em {
    grid-column: 2 / 3;
  }
  .abuse-row {
    grid-template-columns: 1fr;
  }
  .abuse-row small {
    grid-column: 1 / 2;
  }
  .cards-grid.twelve, .overview-extra-panels {
    grid-template-columns: 1fr;
  }
  .identity-top, .conversation-top {
    flex-direction: column;
  }
  .apple-clock {
    min-width: 100%;
    text-align: left;
  }
  .cards-grid.compact-six, .control-actions-wide .action-grid {
    grid-template-columns: 1fr;
  }
  .footprint-top {
    flex-direction: column;
  }
  .login-grid {
    grid-template-columns: 1fr;
  }
  .login-actions-clean .btn, .login-actions-clean .btn.primary {
    width: 100%;
    min-width: 0;
  }
  .small-result {
    max-height: 180px;
  }
  .approved-ai-row {
    grid-template-columns: 1fr;
  }
  .approved-ai-count {
    width: max-content;
  }
  .analytics-abuse-list .abuse-row {
    grid-template-columns: 1fr;
  }
  .aig-footer {
    align-items: flex-start;
    flex-direction: column;
  }
  .aig-header {
    padding: 16px;
  }
.asg-code-form,
.cards-grid.compact-six,
.cards-grid.five,
.cards-grid.nine,
.cards-grid.twelve {
    grid-template-columns: 1fr;
  }
  .internal-nav {
    overflow-x: auto;
    flex-wrap: nowrap;
  }
  .nav-btn {
    min-width: max-content;
  }
  .session-strip {
    grid-template-columns: 1fr;
  }
  .dash-section.active-section {
    padding: 14px;
  }
  .asg-admin-hero, .asg-clients-split {
    margin: 14px;
    width: calc(100% - 28px);
  }
  .route-quality-row {
    grid-template-columns: 1fr 48px;
  }
  .route-quality-row>strong {
    grid-column: 1/-1;
  }
  .route-quality-track {
    grid-column: 1;
  }
  .metric-trend {
    white-space: normal;
  }
  .overview-meter-deck .overview-block-grid, .traffic-meter-stats {
    grid-template-columns: 1fr;
  }
  .traffic-meter {
    grid-template-columns: 1fr;
    justify-items: center;
  }
  .traffic-meter-copy {
    justify-items: center;
    text-align: center;
  }
  .traffic-meter-copy small {
    max-width: 420px;
  }
  .traffic-meter-wrap {
    min-height: 0;
  }
  .traffic-meter-svg {
    width: 210px;
    max-width: 210px;
    height: 104px;
    min-height: 0;
    margin: 0 auto;
  }
}
#aigInternalWorkspace .session-strip {
  display: grid;
  grid-template-columns: 88px repeat(3, minmax(145px, 1fr)) 142px minmax(250px, 1.15fr);
  gap: 6px;
  min-height: 58px;
  margin: 8px 10px;
  padding: 6px;
  align-items: stretch;
}
#aigInternalWorkspace .session-strip > div,
#aigInternalWorkspace .session-clock-wrap {
  min-width: 0;
  min-height: 44px;
  padding: 6px 8px;
  border-radius: 10px;
}
#aigInternalWorkspace .session-strip .metric-label {
  font-size: 8px;
  letter-spacing: .08em;
}
#aigInternalWorkspace .session-strip strong {
  margin-top: 2px;
  font-size: 14px;
  line-height: 1.05;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#aigInternalWorkspace .session-strip small {
  margin-top: 2px;
  font-size: 8.5px;
  line-height: 1.15;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#aigInternalWorkspace .session-strip .apple-clock {
  min-height: 0;
  padding: 0;
  border: 0;
  box-shadow: none;
  background: transparent;
}
#aigInternalWorkspace .session-strip .apple-clock strong {
  font-size: 17px;
}
#aigInternalWorkspace .session-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 4px;
}
#aigInternalWorkspace .session-actions .btn {
  min-height: 20px;
  padding: 3px 7px;
  font-size: 9px;
  border-radius: 7px;
}
#aigInternalWorkspace .login-history-mini {
  grid-column: auto !important;
  display: flex;
  align-items: center;
  gap: 4px;
  min-height: 44px;
  margin: 0;
  padding: 5px;
  overflow-x: auto;
  overflow-y: hidden;
  white-space: nowrap;
}
#aigInternalWorkspace .login-history-chip {
  flex: 0 0 auto;
  padding: 4px 6px;
  border-radius: 7px;
}
#aigInternalWorkspace .login-history-chip b {
  font-size: 8px;
}
#aigInternalWorkspace .login-history-chip small {
  display: block;
  max-width: 110px;
  font-size: 7.5px;
}
.overview-control-row:empty,
.overview-control-row .control-actions-wide:has(.action-grid:empty) {
  display: none;
}
.checkout-intent-card,
.checkout-hit-card {
  border-color: rgba(36, 99, 235, .34);
  background: linear-gradient(145deg, #fff, #eef6ff);
}
.checkout-trace-section {
  padding-bottom: 24px;
}
.checkout-trace-metrics {
  margin-bottom: 12px;
}
.checkout-trace-panel {
  min-height: 520px;
}
.checkout-privacy-note {
  margin: 10px 0;
  padding: 8px 10px;
  border: 1px solid #bfdbfe;
  border-radius: 10px;
  color: #31516f;
  background: #eff6ff;
  font-size: 11px;
}
.checkout-footprints-list {
  display: grid;
  gap: 9px;
}
.checkout-footprint-item {
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: linear-gradient(145deg, #fff, #f8fbff);
}
.checkout-footprint-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.checkout-footprint-head strong {
  font-size: 13px;
}
.checkout-footprint-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px 12px;
  margin-top: 9px;
}
.checkout-footprint-grid span {
  min-width: 0;
  color: var(--muted);
  font-size: 10px;
  overflow-wrap: anywhere;
}
.checkout-footprint-grid b {
  display: block;
  margin-bottom: 2px;
  color: var(--text);
  font-size: 8px;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.checkout-footprint-trace {
  margin-top: 9px;
  padding-top: 7px;
  border-top: 1px dashed var(--line);
  color: var(--muted);
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: 9px;
  overflow-wrap: anywhere;
}
@media (max-width: 1250px) {
  #aigInternalWorkspace .session-strip {
    grid-template-columns: 82px repeat(3, minmax(125px, 1fr)) 128px;
  }
  #aigInternalWorkspace .login-history-mini {
    grid-column: 1 / -1 !important;
    min-height: 34px;
  }
}
@media (max-width: 820px) {
  #aigInternalWorkspace .session-strip {
    grid-template-columns: 1fr 1fr;
  }
  #aigInternalWorkspace .login-history-mini {
    grid-column: 1 / -1 !important;
  }
  .checkout-footprint-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 720px) {
.asg-workspace-tabs {
    overflow-x: auto;
    flex-wrap: nowrap;
  }
.asg-tab-btn {
    flex: 0 0 auto;
  }
  .asg-hero-mini-proof {
    grid-template-columns: 1fr;
    border-radius: 14px;
  }
  .session-strip {
    grid-template-columns: 1fr;
  }
  .overview-block-grid, .endpoint-list {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 640px) {
  .brand-row, .login-top {
    align-items: start;
  }
  .brand-mark {
    width: 56px;
    height: 56px;
    border-radius: 17px;
  }
  .session-strip {
    grid-template-columns: 1fr;
  }
  .login-card, .panel, .metric-card, .aig-header, .session-strip {
    border-radius: 18px;
  }
  .caution-strip {
    align-items: start;
    flex-direction: column;
  }
  .asg-control-hero, .asg-window-strip, .asg-dash-section, .asg-workspace-tabs {
    margin-left: 10px;
    margin-right: 10px;
  }
  .asg-hero-main h2 {
    font-size: 34px;
  }
  .asg-detail-grid {
    grid-template-columns: 1fr;
  }
  .asg-command-brand {
    padding: 10px;
  }
  .asg-command-brand-logos img {
    width: 44px;
    height: 44px;
  }
  .asg-command-brand-copy strong {
    font-size: 26px;
  }
  .digital-pulse-grid {
    grid-template-columns: 1fr;
  }
  .digital-pulse-card, .digital-pulse-card:nth-child(2) {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }
  .digital-pulse-card:last-child {
    border-bottom: 0;
  }
  .cards-grid.compact-six.overview-balanced-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 620px) {
  .monitor-service-grid, .monitor-endpoint-grid, .monitor-reliability-grid {
    grid-template-columns: 1fr;
  }
  .monitor-history-item, .monitor-alert-item {
    grid-template-columns: auto minmax(0,1fr);
  }
  .monitor-history-item time, .monitor-alert-item b {
    grid-column: 2;
  }
  .asg-management-controls {
    grid-template-columns: 1fr;
  }
  .asg-management-controls .btn {
    width: 100%;
  }
  .asg-timeline-top, .asg-llm-usage-head, .asg-transcript-head, .asg-record-foot {
    flex-direction: column;
  }
  .asg-record-foot code {
    max-width: 100%;
    text-align: left;
  }
}
@media (max-width: 560px) {
  .cards-grid.asg-eight {
    grid-template-columns: 1fr;
  }
  .asg-confirm-dialog {
    grid-template-columns: 1fr;
    padding: 20px;
  }
  .asg-confirm-actions {
    grid-column: 1;
    display: grid;
    grid-template-columns: 1fr;
  }
  .asg-confirm-actions .btn {
    width: 100%;
  }
  .route-quality-metrics {
    grid-template-columns: 1fr;
  }
  .route-quality-metrics article.wide {
    grid-column: auto;
  }
}
/* One continuous ASG workspace frame with thin dividers. */
#asgClientsWorkspace .asg-dash-section.active-asg-section {
  margin: 0 22px 24px;
  padding: 0;
  border: 1px solid var(--line);
  background: #fff;
}
#asgClientsWorkspace .asg-dash-section.active-asg-section > section,
#asgClientsWorkspace .asg-dash-section.active-asg-section > article {
  margin: 0;
}
#asgClientsWorkspace .asg-dash-section.active-asg-section > .panel,
#asgClientsWorkspace .asg-dash-section.active-asg-section > .asg-admin-hero,
#asgClientsWorkspace .asg-dash-section.active-asg-section > .cards-grid,
#asgClientsWorkspace .asg-dash-section.active-asg-section > .digital-pulse-grid,
#asgClientsWorkspace .asg-dash-section.active-asg-section > .asg-overview-masonry,
#asgClientsWorkspace .asg-dash-section.active-asg-section > .split-panel,
#asgClientsWorkspace .asg-dash-section.active-asg-section > .asg-clients-split {
  width: 100%;
  border: 0;
  border-bottom: 1px solid var(--line);
  box-shadow: none;
  border-radius: 0;
}
#asgClientsWorkspace .asg-dash-section.active-asg-section > :last-child {
  border-bottom: 0;
}
#asgClientsWorkspace .cards-grid.asg-twelve,
#asgClientsWorkspace .cards-grid.asg-six,
#asgClientsWorkspace .digital-pulse-grid.asg-digital-pulse-grid {
  gap: 0;
}
#asgClientsWorkspace .cards-grid.asg-twelve .metric-card,
#asgClientsWorkspace .cards-grid.asg-six .metric-card,
#asgClientsWorkspace .asg-digital-pulse-grid .digital-pulse-card {
  border: 0;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  box-shadow: none;
}
#asgClientsWorkspace .asg-digital-pulse-grid .digital-pulse-card:last-child,
#asgClientsWorkspace .cards-grid.asg-six .metric-card:last-child {
  border-right: 0;
}
#asgClientsWorkspace .asg-overview-masonry,
#asgClientsWorkspace .asg-clients-split,
#asgClientsWorkspace .split-panel {
  gap: 0;
}
#asgClientsWorkspace .asg-overview-column,
#asgClientsWorkspace .asg-clients-split > .panel,
#asgClientsWorkspace .split-panel > .panel {
  border: 0;
  border-right: 1px solid var(--line);
}
#asgClientsWorkspace .asg-overview-column:last-child,
#asgClientsWorkspace .asg-clients-split > .panel:last-child,
#asgClientsWorkspace .split-panel > .panel:last-child {
  border-right: 0;
}
#asgClientsWorkspace .asg-overview-column > .panel {
  margin: 0;
  border: 0;
  border-bottom: 1px solid var(--line);
}
#asgClientsWorkspace .asg-overview-column > .panel:last-child {
  border-bottom: 0;
}
#asgClientsWorkspace .asg-client-grid {
  gap: 0;
  border-top: 1px solid var(--line);
  padding: 0;
}
#asgClientsWorkspace .asg-client-card {
  border: 0;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  box-shadow: none;
}
/* Real combined graph meter. */
.asg-commerce-session-meter {
  padding: 20px;
}
.asg-meter-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid var(--line);
  margin-top: 16px;
}
.asg-meter-summary > div {
  padding: 14px 16px;
  border-right: 1px solid var(--line);
}
.asg-meter-summary > div:last-child {
  border-right: 0;
}
.asg-meter-summary span {
  display: block;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.asg-meter-summary strong {
  display: block;
  margin-top: 5px;
  font-size: clamp(26px, 2.4vw, 40px);
  letter-spacing: -.05em;
}
.asg-meter-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  padding: 12px 0 8px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.asg-meter-legend span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
.asg-meter-legend i {
  width: 22px;
  height: 3px;
  background: var(--blue);
}
.asg-meter-legend i.request {
  background: var(--orange);
}
.asg-meter-legend i.overall {
  background: var(--green);
}
.asg-meter-legend i.a2a {
  background: var(--purple);
}
.asg-meter-chart-shell {
  position: relative;
  min-height: 280px;
  border: 1px solid var(--line);
  background: linear-gradient(180deg, #fff, #f8fafc);
  overflow: hidden;
}
.asg-commerce-session-graph {
  display: block;
  width: 100%;
  height: 280px;
}
.asg-meter-grid-line {
  stroke: #e5eaf1;
  stroke-width: 1;
  vector-effect: non-scaling-stroke;
}
.asg-meter-grid-label {
  fill: #98a2b3;
  font-size: 10px;
}
.asg-meter-line {
  fill: none;
  stroke-width: 3;
  stroke-linejoin: round;
  stroke-linecap: round;
  vector-effect: non-scaling-stroke;
}
.asg-meter-line.intent {
  stroke: var(--blue);
}
.asg-meter-line.request {
  stroke: var(--orange);
}
.asg-meter-line.overall {
  stroke: var(--green);
}
.asg-meter-line.a2a {
  stroke: var(--purple);
}
.asg-meter-empty {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: var(--muted);
  font-weight: 800;
  pointer-events: none;
}
.asg-meter-scale {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  padding: 8px 4px 0;
  color: var(--muted);
  font-size: 11px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
.asg-meter-scale span:nth-child(2) {
  text-align: center;
}
.asg-meter-scale span:last-child {
  text-align: right;
}
/* Setup-code history: one scrolling ledger, no floating cards. */
.asg-setup-code-scroll {
  max-height: min(68vh, 760px);
  overflow: auto;
  border-top: 1px solid var(--line);
}
.asg-setup-code-table {
  min-width: 1100px;
}
.asg-setup-code-row {
  display: grid;
  grid-template-columns: 180px minmax(220px, 1.4fr) minmax(210px, 1fr) 130px 130px 140px;
  align-items: center;
  min-height: 58px;
  border-bottom: 1px solid var(--line);
}
.asg-setup-code-row > * {
  min-width: 0;
  padding: 11px 13px;
  border-right: 1px solid var(--line);
  overflow-wrap: anywhere;
}
.asg-setup-code-row > *:last-child {
  border-right: 0;
}
.asg-setup-code-head {
  position: sticky;
  top: 0;
  z-index: 3;
  min-height: 42px;
  background: #f8fafc;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.asg-setup-code-row small {
  display: block;
  margin-top: 4px;
  color: var(--muted);
}
.asg-setup-code-cell {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.asg-setup-code-cell code {
  overflow-wrap: anywhere;
}
/* Gateway protocol operations. */
.asg-protocol-console {
  padding: 20px;
}
.asg-protocol-status-strip {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin-top: 16px;
  border: 1px solid var(--line);
}
.asg-protocol-status-strip > div {
  padding: 14px;
  border-right: 1px solid var(--line);
}
.asg-protocol-status-strip > div:last-child {
  border-right: 0;
}
.asg-protocol-status-strip span {
  display: block;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.asg-protocol-status-strip strong {
  display: block;
  margin-top: 5px;
  font-size: 18px;
  overflow-wrap: anywhere;
}
.asg-protocol-frame {
  display: grid;
  grid-template-columns: minmax(320px, .8fr) minmax(0, 1.2fr);
  margin-top: 16px;
  border: 1px solid var(--line);
}
.asg-protocol-frame > * {
  min-width: 0;
}
.asg-protocol-frame > :first-child {
  border-right: 1px solid var(--line);
}
.asg-protocol-endpoint-list {
  max-height: 620px;
  overflow: auto;
}
.asg-protocol-endpoint-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 13px;
  border-bottom: 1px solid var(--line);
}
.asg-protocol-endpoint-row:last-child {
  border-bottom: 0;
}
.asg-protocol-endpoint-row span {
  display: block;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}
.asg-protocol-endpoint-row code {
  display: block;
  margin-top: 5px;
  overflow-wrap: anywhere;
}
.asg-protocol-endpoint-row > div:last-child {
  display: flex;
  gap: 7px;
}
@media (max-width: 1180px) {
  .asg-meter-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .asg-meter-summary > div:nth-child(2) {
    border-right: 0;
  }
  .asg-meter-summary > div:nth-child(-n+2) {
    border-bottom: 1px solid var(--line);
  }
  .asg-protocol-status-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .asg-protocol-status-strip > div {
    border-bottom: 1px solid var(--line);
  }
  .asg-protocol-frame {
    grid-template-columns: 1fr;
  }
  .asg-protocol-frame > :first-child {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }
}
@media (max-width: 760px) {
  #asgClientsWorkspace .asg-dash-section.active-asg-section {
    margin: 0 10px 16px;
  }
  .asg-meter-summary, .asg-protocol-status-strip {
    grid-template-columns: 1fr;
  }
  .asg-meter-summary > div, .asg-protocol-status-strip > div {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }
  .asg-meter-summary > div:last-child, .asg-protocol-status-strip > div:last-child {
    border-bottom: 0;
  }
  .asg-protocol-endpoint-row {
    grid-template-columns: 1fr;
  }
  .asg-protocol-endpoint-row > div:last-child {
    justify-content: flex-start;
  }
}
/* Keep Font Awesome font-family and font-weight declarations owned by the installed local /vendor/fontawesome/css/all.min.css package. Do not hard-code a Font Awesome major-version family here. */
.fa-solid, .fas, .fa-regular, .far, .fa-brands, .fab {
  font-style: normal;
  line-height: 1;
  text-rendering: auto;
}
.btn > i,
.btn > span,
.tools-trigger > i,
.tools-trigger > span {
  pointer-events: none;
}
.btn:has(> i) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.asg-archive-toggle {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 11px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}
.asg-archive-toggle input {
  width: 16px;
  height: 16px;
  margin: 0;
}
.asg-client-card[data-archived="true"],
.asg-client-card:has(.badge.archive) {
  opacity: .82;
  border-style: dashed;
}
.asg-duplicate-cleanup-panel {
  margin-top: 18px;
  border-color: rgba(220, 38, 38, .24);
  box-shadow: 0 18px 46px rgba(127, 29, 29, .08);
}
.asg-duplicate-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 16px;
}
.asg-duplicate-form-grid .wide {
  grid-column: 1 / -1;
}
.asg-protected-value {
  min-height: 44px;
  display: flex;
  align-items: center;
  padding: 0 12px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: #f8fafc;
  color: #172033;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-weight: 900;
  overflow-wrap: anywhere;
}
.asg-duplicate-actions {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 16px;
}
.asg-duplicate-actions .btn {
  min-width: 0;
  white-space: normal;
  line-height: 1.25;
}
.asg-duplicate-preview {
  margin-top: 16px;
  display: grid;
  gap: 14px;
}
.asg-duplicate-comparison,
.asg-duplicate-kpis,
.asg-duplicate-review-grid {
  display: grid;
  gap: 12px;
}
.asg-duplicate-comparison {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.asg-duplicate-comparison article,
.asg-duplicate-kpis article,
.asg-duplicate-review-grid article {
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fff;
  padding: 14px;
  min-width: 0;
}
.asg-duplicate-comparison article:first-child {
  border-color: rgba(220,38,38,.28);
  background: rgba(254,242,242,.72);
}
.asg-duplicate-comparison article.canonical {
  border-color: rgba(20,164,108,.30);
  background: rgba(236,253,245,.72);
}
.asg-duplicate-comparison span,
.asg-duplicate-kpis span {
  display: block;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.asg-duplicate-comparison strong,
.asg-duplicate-kpis strong {
  display: block;
  margin: 8px 0 4px;
  overflow-wrap: anywhere;
}
.asg-duplicate-comparison small,
.asg-duplicate-kpis small {
  display: block;
  color: var(--muted);
  overflow-wrap: anywhere;
}
.asg-duplicate-kpis {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}
.asg-duplicate-review-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.asg-duplicate-review-grid h3 {
  margin: 0 0 10px;
  font-size: 15px;
}
.asg-duplicate-review-grid ul {
  margin: 0;
  padding-left: 18px;
  color: #7f1d1d;
  line-height: 1.5;
}
.asg-duplicate-none {
  color: var(--green);
  font-weight: 900;
}
@media (max-width: 1350px) {
  .asg-duplicate-kpis {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .asg-duplicate-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 850px) {
  .asg-duplicate-form-grid,
 .asg-duplicate-comparison,
 .asg-duplicate-review-grid {
    grid-template-columns: 1fr;
  }
  .asg-duplicate-form-grid .wide {
    grid-column: auto;
  }
  .asg-duplicate-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 560px) {
  .asg-duplicate-kpis,
 .asg-duplicate-actions {
    grid-template-columns: 1fr;
  }
}
.btn.is-processing,.is-processing {
  opacity: .62 !important;
  cursor: wait !important;
  filter: saturate(.65);
}
.btn.is-processing::after {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  margin-left: 8px;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  vertical-align: -2px;
  animation: asgSpin .75s linear infinite;
}
@keyframes asgSpin {
  to{transform:rotate(360deg)}
}
/* Login state feedback. Layout authority remains the earlier single-card login rules above. */
.login-result-panel {
  display: block !important;
  min-height: 124px;
  margin-top: 16px;
  border: 1px solid #253247;
  border-radius: 10px;
  background: #050a12;
  color: #d7dee9;
  font: 12px/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
/* Keep login status logic, but the output console itself stays monochrome. */
.login-result-panel.is-ready,
.login-result-panel.is-processing,
.login-result-panel.is-success,
.login-result-panel.is-error {
  background: #050a12;
  color: #d7dee9;
  border-color: #253247;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.admin-auth-processing .login-card {
  opacity: .82;
}
.admin-auth-processing .login-grid,.admin-auth-processing .caution-strip {
  filter: saturate(.6);
}
.btn.is-processing,.btn[aria-busy="true"] {
  opacity: .64;
  cursor: wait;
  pointer-events: none;
}
@media (min-width:2500px) {
.admin-content-shell {
    max-width: none !important;
    width: 100% !important;
  }
}
:root {
  --aig-header-offset: 56px;
}
#dashboardView .aig-header {
  position: fixed !important;
  inset: 0 0 auto 0 !important;
  z-index: 1000000 !important;
  display: grid !important;
  grid-template-columns: minmax(300px, 1fr) auto !important;
  align-items: center !important;
  width: auto !important;
  min-height: 56px !important;
  margin: 0 !important;
  padding: 7px 18px !important;
  overflow: visible !important;
  border-radius: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(187, 200, 223, .82) !important;
  background: rgba(248, 250, 255, .985) !important;
  backdrop-filter: blur(18px) saturate(130%);
  box-shadow: 0 6px 16px rgba(9, 24, 54, .07) !important;
}
#dashboardView .aig-header .brand-row {
  min-width: 0;
  gap: 8px !important;
}
#dashboardView .aig-header .brand-mark {
  width: 36px !important;
  height: 36px !important;
  flex: 0 0 36px;
  border-radius: 10px !important;
}
#dashboardView .aig-header h1 {
  font-size: clamp(20px, 1.65vw, 29px) !important;
  line-height: .95 !important;
}
#dashboardView .aig-header .eyebrow {
  margin-bottom: 1px !important;
  font-size: 8px !important;
}
#dashboardView .aig-header .subtitle {
  margin-top: 2px !important;
  font-size: 9px !important;
  line-height: 1.2 !important;
}
#dashboardView .aig-header .header-right {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 8px !important;
  flex-wrap: nowrap !important;
  min-width: 0;
}
/* Compact black digital clock. Existing #liveClock / #liveDate hooks stay unchanged. */
#dashboardView .aig-header .apple-clock {
  align-content: center;
  justify-items: center;
}
#dashboardView .aig-header .apple-clock .clock-label {
  color: #94a3b8 !important;
  font-size: 6.5px !important;
  line-height: 1 !important;
  letter-spacing: .14em !important;
}
#dashboardView .aig-header .apple-clock strong {
  line-height: 1.02 !important;
  font-variant-numeric: tabular-nums slashed-zero;
  font-feature-settings: "tnum" 1, "zero" 1;
}
#dashboardView .aig-header .apple-clock small {
  line-height: 1 !important;
}
/* Move the existing session action container without inheriting its tall card. */
#dashboardView .session-header-actions,
#dashboardView .session-header-actions .session-actions {
  display: flex !important;
  align-items: center !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
  grid-template-rows: none !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
#dashboardView .session-header-actions #logoutBtn {
  min-height: 36px;
  padding: 8px 13px;
  border-radius: 10px;
  white-space: nowrap;
}
/* Preserve the established button dimensions. Only the header shell is shorter. */
#dashboardView .aig-header .tools-trigger,
#dashboardView .aig-header .status-pill,
#dashboardView .aig-header #logoutBtn {
  flex: 0 0 auto;
  white-space: nowrap;
}
@media (max-width: 980px) {
  #dashboardView .aig-header {
    grid-template-columns: minmax(220px, 1fr) auto !important;
  }
  #dashboardView .aig-header .subtitle,
 #dashboardView .aig-header .status-pill {
    display: none !important;
  }
  #dashboardView .aig-header .header-right {
    justify-content: flex-start !important;
    overflow-x: auto !important;
    overscroll-behavior-x: contain;
  }
}
@media (max-width: 720px) {
  #dashboardView .aig-header {
    grid-template-columns: 1fr !important;
    padding-inline: 10px !important;
  }
  #dashboardView .aig-header .brand-row {
    display: none !important;
  }
  #dashboardView .aig-header .header-right {
    justify-content: space-between !important;
  }
}
#dashboardView .session-header-actions #sessionTimer,
#sessionWarningTimer {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-variant-numeric: tabular-nums;
}
.session-expiry-warning {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: calc(100% + 36px);
  min-height: 34px;
  margin: 8px -18px -12px;
  padding: 7px 18px;
  border-top: 1px solid rgba(255, 255, 255, .3);
  background: linear-gradient(90deg, #8f1111, #d32222 45%, #8f1111);
  box-shadow: 0 9px 24px rgba(178, 20, 20, .28);
  color: #fff;
  font-size: 12px;
  letter-spacing: .01em;
}
.session-expiry-warning i {
  color: #ffe0e0;
}
.session-expiry-warning b {
  min-width: 52px;
  font-size: 14px;
  text-align: center;
}
#dashboardView.session-expiring #logoutBtn,
#dashboardView.session-expiring #sessionTimer,
#dashboardView.session-expiring #sessionWarningTimer {
  animation: aig-session-expiry-blink .8s steps(2, end) infinite;
}
#dashboardView.session-expiring #logoutBtn {
  border-color: #ffb4b4;
  background: #bd1717;
  box-shadow: 0 0 0 3px rgba(220, 38, 38, .15), 0 8px 18px rgba(153, 27, 27, .24);
}
@keyframes aig-session-expiry-blink {
  0%, 45% { opacity: 1; }
  46%, 100% { opacity: .42; }
}
@media (max-width: 980px) {
  .session-expiry-warning {
    justify-content: flex-start;
    overflow-x: auto;
    white-space: nowrap;
  }
}
#asgClientsWorkspace #asgOverviewSection .cards-grid.asg-twelve .metric-card {
  border: 0 !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: 0 8px 22px rgba(14,31,64,.055) !important;
  overflow: visible !important;
}
#asgClientsWorkspace #asgOverviewSection .cards-grid.asg-twelve .metric-card::before,
#asgClientsWorkspace #asgOverviewSection .cards-grid.asg-twelve .metric-card::after {
  display: none !important;
  content: none !important;
}
@media (min-width: 1561px) {
  #asgClientsWorkspace #asgOverviewSection .cards-grid.asg-twelve {
    grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
  }
}
#asgClientsWorkspace #asgOverviewSection .asg-live-gateway-card .metric-trend,
#asgClientsWorkspace #asgOverviewSection .asg-live-unique-card .metric-trend {
  display: inline-flex;
  width: fit-content;
  margin-top: 6px;
  border-radius: 999px;
  padding: 4px 8px;
  background: #f3f6fa;
  color: #64748b;
  font-size: 10px;
  font-weight: 900;
}
#asgClientsWorkspace #asgOverviewSection .asg-live-gateway-card .metric-trend.up,
#asgClientsWorkspace #asgOverviewSection .asg-live-gateway-card .metric-trend.good,
#asgClientsWorkspace #asgOverviewSection .asg-live-unique-card .metric-trend.up,
#asgClientsWorkspace #asgOverviewSection .asg-live-unique-card .metric-trend.good {
  background: rgba(20,164,108,.10);
  color: #0f9b67;
}
#asgClientsWorkspace #asgOverviewSection .asg-live-gateway-card .metric-trend.down,
#asgClientsWorkspace #asgOverviewSection .asg-live-gateway-card .metric-trend.bad,
#asgClientsWorkspace #asgOverviewSection .asg-live-unique-card .metric-trend.down,
#asgClientsWorkspace #asgOverviewSection .asg-live-unique-card .metric-trend.bad {
  background: rgba(220,38,38,.09);
  color: #dc2626;
}
#knowledgeSection {
  min-width: 0;
}
/* TOP RAG WORKSPACE */
#knowledgeSection .rag-admin-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(420px, .92fr);
  gap: 18px;
  margin: 18px 0;
  align-items: start;
}
#knowledgeSection .rag-search-panel,
#knowledgeSection .rag-feed-panel,
#knowledgeSection .rag-records-panel,
#knowledgeSection .knowledge-process-panel {
  position: relative;
  overflow: hidden;
}
#knowledgeSection .rag-search-panel::before,
#knowledgeSection .rag-feed-panel::before,
#knowledgeSection .rag-records-panel::before,
#knowledgeSection .knowledge-process-panel::before {
  content: "";
  position: absolute;
  top: 0;
  left: 22px;
  right: 22px;
  height: 3px;
  border-radius: 0 0 999px 999px;
  pointer-events: none;
}
#knowledgeSection .rag-search-panel::before {
  background: linear-gradient(
    90deg,
    rgba(37,87,214,.15),
    var(--blue),
    rgba(109,40,217,.65)
  );
}
#knowledgeSection .rag-feed-panel::before {
  background: linear-gradient(
    90deg,
    rgba(20,164,108,.15),
    var(--green),
    rgba(37,87,214,.55)
  );
}
#knowledgeSection .rag-records-panel::before {
  background: linear-gradient(
    90deg,
    rgba(109,40,217,.15),
    var(--purple),
    rgba(37,87,214,.55)
  );
}
#knowledgeSection .knowledge-process-panel::before {
  background: linear-gradient(
    90deg,
    var(--blue),
    var(--purple),
    var(--green)
  );
}
/* RAG SEARCH CONTROLS */
#knowledgeSection .rag-search-controls {
  display: grid;
  grid-template-columns: minmax(180px, 260px) 1fr;
  gap: 14px;
  align-items: end;
  margin-top: 14px;
}
#knowledgeSection .rag-search-actions,
#knowledgeSection .rag-feed-actions {
  display: flex;
  gap: 9px;
  flex-wrap: wrap;
}
#knowledgeSection .rag-search-actions {
  justify-content: flex-end;
  align-items: flex-end;
}
#knowledgeSection .rag-search-actions .btn,
#knowledgeSection .rag-feed-actions .btn {
  min-width: 120px;
}
#knowledgeSection #ragQuestion {
  min-height: 96px;
}
#knowledgeSection #knowledgeFeedContent {
  min-height: 210px;
}
/* AI PREVIEW */
#knowledgeSection .rag-preview-block,
#knowledgeSection .rag-results-block {
  margin-top: 16px;
  border: 1px solid var(--line);
  border-radius: 16px;
  overflow: hidden;
  background: #f8fafc;
}
#knowledgeSection .rag-block-head {
  min-height: 46px;
  padding: 11px 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-bottom: 1px solid var(--line);
  background: rgba(255,255,255,.82);
}
#knowledgeSection .rag-block-head strong {
  color: var(--text);
  font-size: 13px;
  font-weight: 900;
}
#knowledgeSection .rag-block-head small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
}
#knowledgeSection .rag-preview {
  min-height: 132px;
  padding: 17px;
  background: radial-gradient(
      circle at 100% 0,
      rgba(37,87,214,.08),
      transparent 32%
    ),
    linear-gradient(
      180deg,
      #101827 0%,
      #0b1220 100%
    );
  color: #e5edf9;
  line-height: 1.65;
  font-size: 13px;
  overflow-wrap: anywhere;
}
#knowledgeSection .rag-preview.is-empty {
  display: grid;
  place-items: center;
  color: #94a3b8;
  text-align: center;
  font-style: italic;
}
#knowledgeSection .rag-preview-answer {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
#knowledgeSection .rag-preview-meta {
  display: flex;
  gap: 8px 16px;
  flex-wrap: wrap;
  margin-top: 16px;
  padding-top: 12px;
  border-top: 1px solid rgba(148,163,184,.20);
  color: #94a3b8;
  font-size: 11px;
}
#knowledgeSection .rag-preview-meta b {
  color: #dbeafe;
}
/* RETRIEVED VECTOR SOURCES */
#knowledgeSection .rag-match-list {
  display: grid;
  gap: 10px;
  max-height: 580px;
  overflow: auto;
  padding: 12px;
  scrollbar-width: thin;
  scrollbar-color: rgba(148,163,184,.72) transparent;
}
#knowledgeSection .rag-source-card {
  position: relative;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 6px 16px rgba(15,23,42,.035);
}
#knowledgeSection .rag-source-card:hover {
  border-color: rgba(37,87,214,.28);
  box-shadow: 0 10px 24px rgba(15,23,42,.07);
}
#knowledgeSection .rag-source-card.is-verified-row {
  border-color: rgba(20,164,108,.42);
  background: linear-gradient(
      180deg,
      rgba(20,164,108,.055),
      rgba(255,255,255,.96)
    );
  box-shadow: 0 0 0 3px rgba(20,164,108,.06),
    0 10px 28px rgba(20,164,108,.08);
}
#knowledgeSection .rag-source-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
}
#knowledgeSection .rag-source-head > div {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 9px;
}
#knowledgeSection .rag-source-head strong {
  min-width: 0;
  color: var(--text);
  font-size: 14px;
  overflow-wrap: anywhere;
}
#knowledgeSection .rag-source-rank {
  flex: 0 0 auto;
  min-width: 34px;
  min-height: 28px;
  display: inline-grid;
  place-items: center;
  padding: 0 7px;
  border-radius: 9px;
  background: var(--soft);
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
}
#knowledgeSection .rag-score {
  flex: 0 0 auto;
  display: inline-flex;
  min-width: 62px;
  min-height: 30px;
  align-items: center;
  justify-content: center;
  padding: 0 9px;
  border-radius: 999px;
  border: 1px solid rgba(37,87,214,.18);
  background: rgba(37,87,214,.07);
  color: var(--blue);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 11px;
  font-weight: 900;
}
#knowledgeSection .rag-source-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 14px;
  margin-top: 11px;
  color: var(--muted);
  font-size: 11px;
}
#knowledgeSection .rag-source-meta b {
  color: #344054;
}
#knowledgeSection .rag-source-id {
  margin-top: 7px;
  color: #64748b;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 10px;
  overflow-wrap: anywhere;
}
#knowledgeSection .rag-source-snippet {
  margin: 11px 0 0;
  padding: 11px 12px;
  border-radius: 12px;
  background: #f8fafc;
  color: #344054;
  font-size: 12px;
  line-height: 1.55;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
#knowledgeSection .rag-verified-badge {
  display: inline-flex;
  margin-top: 10px;
}
/* APPROVED KNOWLEDGE FEED */
#knowledgeSection .rag-feed-two {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(160px, .55fr);
  gap: 12px;
  margin-top: 12px;
}
#knowledgeSection .rag-feed-panel > .field {
  margin-top: 12px;
}
#knowledgeSection .rag-feed-actions {
  margin-top: 16px;
}
#knowledgeSection .rag-feed-actions #knowledgeSaveIndexBtn {
  flex: 1 1 190px;
}
#knowledgeSection .rag-security-note {
  position: relative;
  margin-top: 16px;
  padding-left: 38px;
  border: 1px solid rgba(20,164,108,.16);
  background: rgba(20,164,108,.055);
}
#knowledgeSection .rag-security-note::before {
  content: "✓";
  position: absolute;
  left: 13px;
  top: 12px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: rgba(20,164,108,.14);
  color: var(--green);
  font-size: 11px;
  font-weight: 900;
}
#knowledgeSection .rag-security-note strong {
  color: #166534;
}
/* APPROVED KNOWLEDGE RECORDS */
#knowledgeSection .rag-records-panel {
  margin: 18px 0;
}
#knowledgeSection .rag-record-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 11px;
  max-height: 620px;
  overflow: auto;
  padding-right: 4px;
  scrollbar-width: thin;
  scrollbar-color: rgba(148,163,184,.72) transparent;
}
#knowledgeSection .rag-record-card {
  min-width: 0;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: linear-gradient(
      180deg,
      #ffffff,
      #fafbfd
    );
}
#knowledgeSection .rag-record-card:hover {
  border-color: rgba(37,87,214,.25);
  box-shadow: 0 9px 24px rgba(15,23,42,.06);
}
#knowledgeSection .rag-record-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
}
#knowledgeSection .rag-record-head > div {
  min-width: 0;
}
#knowledgeSection .rag-record-head strong {
  display: block;
  color: var(--text);
  font-size: 14px;
  overflow-wrap: anywhere;
}
#knowledgeSection .rag-record-head small {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
}
#knowledgeSection .rag-record-card > p {
  margin: 12px 0;
  color: #475467;
  font-size: 12px;
  line-height: 1.55;
  overflow-wrap: anywhere;
}
#knowledgeSection .rag-record-meta {
  display: grid;
  gap: 5px;
  padding-top: 10px;
  border-top: 1px solid var(--line);
}
#knowledgeSection .rag-record-meta span {
  min-width: 0;
  color: var(--muted);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 10px;
  overflow-wrap: anywhere;
}
#knowledgeSection .rag-record-meta b {
  color: #344054;
}
/* KNOWLEDGE LIFECYCLE / PIPELINE */
#knowledgeSection .knowledge-process-panel {
  margin: 18px 0;
}
#knowledgeSection .knowledge-process {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin-top: 8px;
}
#knowledgeSection .knowledge-process::before {
  content: "";
  position: absolute;
  top: 30px;
  left: 8%;
  right: 8%;
  height: 2px;
  background: linear-gradient(
      90deg,
      rgba(37,87,214,.18),
      rgba(109,40,217,.35),
      rgba(20,164,108,.28)
    );
  pointer-events: none;
}
#knowledgeSection .knowledge-process-step {
  position: relative;
  z-index: 1;
  min-width: 0;
  min-height: 160px;
  padding: 14px;
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 6px 18px rgba(15,23,42,.035);
}
#knowledgeSection .knowledge-process-step:hover {
  transform: translateY(-1px);
  border-color: rgba(37,87,214,.23);
  box-shadow: 0 11px 25px rgba(15,23,42,.065);
}
#knowledgeSection .process-number {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 5px solid #fff;
  border-radius: 50%;
  background: var(--dark);
  color: #fff;
  box-shadow: 0 0 0 1px var(--line);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .04em;
}
#knowledgeSection .knowledge-process-step > div {
  min-width: 0;
}
#knowledgeSection .knowledge-process-step strong {
  display: block;
  color: var(--text);
  font-size: 13px;
}
#knowledgeSection .knowledge-process-step small {
  display: block;
  margin-top: 6px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.5;
}
#knowledgeSection .knowledge-process-step > .badge {
  justify-self: start;
}
/* STATE BADGES */
#knowledgeSection .badge.ok {
  border-color: rgba(20,164,108,.22);
  background: rgba(20,164,108,.08);
  color: var(--green);
}
#knowledgeSection .badge.warn {
  border-color: rgba(217,119,6,.22);
  background: rgba(217,119,6,.07);
  color: var(--orange);
}
#knowledgeSection .badge.fail {
  border-color: rgba(220,38,38,.22);
  background: rgba(220,38,38,.07);
  color: var(--red);
}
/* DISABLED / ACTIVE OPERATION FEEDBACK */
#knowledgeSection .btn:disabled {
  cursor: wait;
  opacity: .62;
  transform: none !important;
  box-shadow: none !important;
}
#knowledgeSection textarea,
#knowledgeSection input,
#knowledgeSection select {
  transition: border-color .16s ease,
    box-shadow .16s ease,
    background .16s ease;
}
#knowledgeSection .rag-source-card,
#knowledgeSection .rag-record-card,
#knowledgeSection .knowledge-process-step {
  transition: border-color .16s ease,
    box-shadow .16s ease,
    transform .16s ease,
    background .16s ease;
}
/* LARGE DESKTOP */
@media (min-width: 2200px) {
  #knowledgeSection .rag-admin-grid {
    grid-template-columns: minmax(0, 1.15fr) minmax(520px, .85fr);
    gap: 22px;
  }
  #knowledgeSection .rag-record-list {
    grid-template-columns: repeat(3, minmax(0,1fr));
  }
  #knowledgeSection .knowledge-process-step {
    min-height: 176px;
  }
}
/* LAPTOP / TABLET */
@media (max-width: 1280px) {
  #knowledgeSection .rag-admin-grid {
    grid-template-columns: 1fr;
  }
  #knowledgeSection .rag-feed-panel {
    order: 2;
  }
  #knowledgeSection .rag-search-panel {
    order: 1;
  }
  #knowledgeSection .knowledge-process {
    grid-template-columns: repeat(3, minmax(0,1fr));
  }
  #knowledgeSection .knowledge-process::before {
    display: none;
  }
}
@media (max-width: 980px) {
  #knowledgeSection .rag-record-list {
    grid-template-columns: 1fr;
  }
  #knowledgeSection .knowledge-process {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}
/* MOBILE */
@media (max-width: 720px) {
  #knowledgeSection .rag-search-controls,
 #knowledgeSection .rag-feed-two,
 #knowledgeSection .knowledge-process {
    grid-template-columns: 1fr;
  }
  #knowledgeSection .rag-search-actions,
 #knowledgeSection .rag-feed-actions {
    display: grid;
    grid-template-columns: 1fr;
  }
  #knowledgeSection .rag-search-actions .btn,
 #knowledgeSection .rag-feed-actions .btn {
    width: 100%;
    min-width: 0;
  }
  #knowledgeSection .rag-block-head,
 #knowledgeSection .rag-source-head,
 #knowledgeSection .rag-record-head {
    align-items: flex-start;
    flex-direction: column;
  }
  #knowledgeSection .rag-block-head {
    display: flex;
  }
  #knowledgeSection .rag-source-head > div {
    width: 100%;
  }
  #knowledgeSection .rag-score {
    align-self: flex-start;
  }
  #knowledgeSection .rag-preview {
    min-height: 115px;
  }
  #knowledgeSection .rag-match-list {
    max-height: 520px;
  }
  #knowledgeSection .rag-record-list {
    max-height: 560px;
  }
  #knowledgeSection .knowledge-process-step {
    min-height: auto;
  }
}
:root {
  --admin-rail-width: 190px;
  --admin-control-offset: 64px;
  --admin-navy: #071a3a;
  --admin-navy-hover: #0b2855;
  --admin-shell-line: #ced9e7;
}
/* Quiet, readable local-time chip; no black dashboard clock. */
#dashboardView .aig-header .apple-clock {
  display: grid !important;
  grid-template-columns: auto auto !important;
  align-items: baseline !important;
  justify-content: center !important;
  column-gap: 8px !important;
  min-width: 126px !important;
  min-height: 36px !important;
  padding: 6px 10px !important;
  border: 1px solid #d5dfec !important;
  border-radius: 10px !important;
  background: #fff !important;
  box-shadow: none !important;
  text-align: left !important;
}
#dashboardView .aig-header .apple-clock .clock-label {
  display: none !important;
}
#dashboardView .aig-header .apple-clock strong {
  color: #10233f !important;
  font-family: inherit !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  letter-spacing: -.015em !important;
  text-shadow: none !important;
}
#dashboardView .aig-header .apple-clock small {
  color: #74849a !important;
  font-family: inherit !important;
  font-size: 8px !important;
  letter-spacing: 0 !important;
}
/* The source filter is permanent Data Admin hero content, never re-parented. */
#dataAdminWorkspace .wda-header-filter {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(190px, .28fr) minmax(0, 1fr);
  align-items: stretch;
  min-width: 0;
  border-top: 1px solid rgba(255,255,255,.16);
  border-left: 1px solid rgba(255,255,255,.16);
}
#dataAdminWorkspace .wda-header-filter-copy {
  display: grid;
  align-content: center;
  min-width: 0;
  padding: 10px 13px;
  border-right: 1px solid rgba(255,255,255,.16);
  border-bottom: 1px solid rgba(255,255,255,.16);
}
#dataAdminWorkspace .wda-header-filter-copy span {
  color: #93bce9;
  font-size: 8px;
  font-weight: 850;
  letter-spacing: .1em;
  text-transform: uppercase;
}
#dataAdminWorkspace .wda-header-filter-copy small {
  display: block;
  margin-top: 5px;
  color: #bfd0e1;
  font-size: 10px;
  line-height: 1.35;
}
#dataAdminWorkspace .wda-header-mode-tabs {
  display: flex !important;
  align-items: stretch !important;
  gap: 0 !important;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
  overflow-x: auto;
  border-bottom: 1px solid rgba(255,255,255,.16);
  scrollbar-width: thin;
}
#dataAdminWorkspace .wda-header-mode-tabs .wda-mode {
  flex: 0 0 auto;
  min-height: 44px;
  margin: 0 !important;
  padding: 0 12px;
  border: 0 !important;
  border-right: 1px solid rgba(255,255,255,.16) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #c8d8e8 !important;
  white-space: nowrap;
  box-shadow: none !important;
}
#dataAdminWorkspace .wda-header-mode-tabs .wda-mode:hover {
  background: rgba(255,255,255,.07) !important;
  color: #fff !important;
}
#dataAdminWorkspace .wda-header-mode-tabs .wda-mode.is-active {
  background: #1769d2 !important;
  color: #fff !important;
}
@media (max-width: 760px) {
  #dataAdminWorkspace .wda-header-filter {
    grid-template-columns: 1fr;
  }
  #dataAdminWorkspace .wda-header-filter-copy {
    border-right: 0;
  }
}

/* ASG location list and compact globe — replaces the retired decision chart. */
#asgClientsWorkspace #asgIntelLocationScope {
  color: #52677d; font-size: 12px; line-height: 1.4; min-height: 34px;
}
#asgClientsWorkspace #asgIntelLocationScope[data-stale="true"] { color: #9a5b00; }
#asgClientsWorkspace #asgIntelLocationList {
  max-height: 300px; overflow: auto; scrollbar-width: thin;
}
#asgClientsWorkspace .asg-visitor-globe {
  padding: 10px 8px 14px; text-align: center; border-radius: 12px;
  background: linear-gradient(145deg,#f6fbff,#edf6fc);
}
#asgClientsWorkspace .asg-visitor-globe canvas {
  width: 100%; height: 250px; display: block; touch-action: none; cursor: grab;
}
#asgClientsWorkspace .asg-visitor-globe-note {
  font-size: 12px; color: #45627a; min-height: 32px; padding: 4px 8px;
}
@media (max-width:1050px) {
  #asgClientsWorkspace .asg-visitor-globe { max-width: 320px; margin: auto; }
}
