/* GSChub / TC identity. Surfaces are translucent; text and controls stay solid. */
:root {
  --brand-orange: #ff9900;
  --brand-lime: #c5ef00;
  --brand-panel: rgb(20 28 38 / 86%);
  --brand-panel-raised: rgb(25 37 51 / 94%);
}

body:not(.viewer-page) {
  isolation: isolate;
  background: #0e141c;
}

body:not(.viewer-page)::before {
  content: "";
  position: fixed;
  inset: 0 0 0 216px;
  z-index: -1;
  pointer-events: none;
  background: url("/gschub-emblem.png") no-repeat 68% 56%;
  background-size: min(92%, 1040px) auto;
  opacity: .13;
}

.brand { gap: 10px; }
.brand-mark.gschub-emblem {
  width: 46px;
  height: 46px;
  padding: 0;
  flex: 0 0 46px;
  background: transparent;
  border: 0;
  border-radius: 8px;
  overflow: hidden;
}
.gschub-emblem img { display: block; width: 100%; height: 100%; object-fit: contain; }
.brand-lockup { display: flex; flex-direction: column; align-items: flex-start; gap: 3px; min-width: 0; }
.brand-wordmark {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 26px;
  font-weight: 900;
  letter-spacing: -.9px;
  line-height: 1;
  white-space: nowrap;
  color: #fff;
}
.brand-hub {
  display: inline-block;
  padding: 3px 5px 4px;
  border-radius: 4px;
  background: var(--brand-orange);
  color: #080808;
  letter-spacing: -.8px;
}
.brand-provenance { font: 9px/1 Arial, Helvetica, sans-serif; letter-spacing: 1.3px; color: #8c9aa9; }
.brand-provenance strong { color: var(--brand-lime); font-weight: 800; }
.sidebar { background: rgb(15 21 29 / 97%); }
.sidebar > .brand { flex-shrink: 0; }

/* These captions sit directly over the image rather than inside a panel. */
.workspace .page-header .muted,
#project-workspace .project-hero .muted { color: #b2c0d2; }

/* Dense surfaces keep the artwork quiet. The ping matrix also exposes it
   through site names and outcome cells, preserving their semantic colors. */
.workspace :is(.stat, .profiles-workspace, .project-empty, .server-card, .server-events, .account-health-panel),
.workspace :is(.accounts-metric, .accounts-trend-panel, .accounts-registry, .accounts-settings),
.workspace :is(.jobs-summary-item:not(.selected), .jobs-toolbar, .job-project-group),
#projects-view #project-cards.project-catalog-list,
#project-workspace :is(.project-metric, .project-accounts-panel, .context-card, .domains-panel, .project-jobs-panel, .gsc-performance) {
  background-color: var(--brand-panel);
}
.workspace .accounts-forecast {
  background: linear-gradient(135deg, rgb(26 43 68 / 94%), rgb(21 33 52 / 90%) 75%);
}
#project-workspace :is(.gsc-report, .gsc-query-report) { background: rgb(16 25 37 / 80%); }
#project-workspace .domains-panel { background: rgb(20 28 38 / 54%); }
#project-workspace table.domain-matrix .domain-matrix-row { background: rgb(20 30 41 / 12%); }
#project-workspace table.domain-matrix .domain-matrix-row:nth-of-type(4n+3) { background: rgb(23 34 46 / 20%); }
#project-workspace table.domain-matrix .domain-matrix-row:hover { background: rgb(28 43 61 / 90%); }
#project-workspace table.domain-matrix .domain-matrix-row > :is(.domain-identity, .domain-bulk-cell, .matrix-actions) { background-color: rgb(20 30 41 / 36%); }
#project-workspace table.domain-matrix .domain-matrix-row[data-domain-role="beneficiary"] { --role-base: rgb(37 41 34 / 42%); }
#project-workspace table.domain-matrix .domain-matrix-row[data-domain-role="buffer"] { --role-base: rgb(32 39 34 / 42%); }
#project-workspace table.domain-matrix .domain-matrix-row[data-domain-role="former-beneficiary"] { --role-base: rgb(29 36 38 / 42%); }
#project-workspace table.domain-matrix .domain-matrix-row[data-domain-role="former-buffer"] { --role-base: rgb(27 36 39 / 42%); }
#project-workspace table.domain-matrix .domain-matrix-row[data-domain-role] > :is(.domain-identity, .domain-bulk-cell, .matrix-actions) { background-color: var(--role-base, rgb(20 30 41 / 36%)); }
#project-workspace table.domain-matrix td.matrix-result.success { background-color: rgb(20 57 46 / 76%); }
#project-workspace table.domain-matrix td.matrix-result.danger { background-color: rgb(65 41 47 / 76%); }
#project-workspace table.domain-matrix td.matrix-result.warning { background-color: rgb(60 52 35 / 76%); }
#project-workspace table.domain-matrix td.matrix-result:is(.working, .active) { background-color: rgb(33 56 82 / 76%); }
#project-workspace table.domain-matrix td.matrix-result.neutral { background-color: rgb(23 33 43 / 42%); }
#project-workspace table.domain-matrix td.matrix-result.previous { background-color: rgb(27 48 60 / 76%); }
/* Blur only the pixels under pinned body cells so horizontally scrolled
   values cannot be read through them. Header and open details stay solid. */
@media (min-width: 1000px) {
  #project-workspace table.domain-matrix .domain-matrix-row > :is(.domain-identity, .domain-bulk-cell, .matrix-actions) { backdrop-filter: blur(5px); }
  #project-workspace table.domain-matrix .domain-matrix-row > .matrix-actions,
  #project-workspace table.domain-matrix .domain-matrix-row[data-domain-role] > .matrix-actions { background-color: rgb(20 30 41 / 96%); backdrop-filter: none; }
}
.workspace .project-catalog-row:hover { background: var(--brand-panel-raised); }
.workspace .profiles-workspace .profile-card:not(.selected) { background: rgb(25 33 43 / 94%); }
.workspace .profiles-workspace .profile-card:not(.selected):hover { background: #202e40; }
#accounts-list > .account-card { background-color: var(--brand-panel); }

#project-workspace .project-domain-controls { padding: 0 20px 20px; margin-bottom: 18px; border-bottom: 1px solid var(--line); }
#project-workspace .project-domain-controls > .project-progress { margin: 0 0 16px; }
#project-workspace .project-domain-controls > .project-indexing-progress { margin: 0 0 18px; }
#project-workspace .project-domain-controls > .project-overview-actions { margin-bottom: 0; }
#project-workspace .project-domain-controls > .project-setup-status { margin: 14px 0 0; }

.login-screen { background: radial-gradient(ellipse at 25% 0, rgb(37 66 99 / 22%), transparent 65%); }
.login-card { background: rgb(20 28 38 / 96%); border-color: #314057; }
.login-card .brand { margin-bottom: 30px; gap: 14px; }
.login-card .brand-mark.gschub-emblem { width: 68px; height: 68px; flex-basis: 68px; border-radius: 12px; }
.login-card .brand-wordmark { font-size: 40px; letter-spacing: -1.5px; gap: 4px; }
.login-card .brand-hub { padding: 4px 7px 5px; border-radius: 5px; }
.login-card .brand-provenance { font-size: 10px; letter-spacing: 2px; }
.login-card input { background: #101923; border-color: #34455d; }

/* The viewer emblem is confined to its toolbar: remote pixels stay untouched. */
.viewer-page .brand-mark.gschub-emblem { width: 36px; height: 36px; flex-basis: 36px; }

@media (max-width: 1170px) {
  body:not(.viewer-page)::before { background-size: min(105%, 900px) auto; }
  .sidebar .brand { gap: 8px; }
  .sidebar .brand-wordmark { font-size: 24px; }
  .sidebar .brand-mark.gschub-emblem { width: 42px; height: 42px; flex-basis: 42px; }
}
@media (min-width: 731px) and (max-width: 940px) {
  body:not(.viewer-page)::before { left: 73px; }
  .sidebar > .brand { gap: 0; }
  .sidebar .brand-mark.gschub-emblem { width: 41px; height: 41px; flex-basis: 41px; }
}
@media (max-width: 730px) {
  #project-workspace .project-domain-controls { padding: 0 14px 18px; }
  body:not(.viewer-page)::before { inset: 0; background-size: 680px auto; background-position: 54% 62%; opacity: .09; }
  .sidebar > .brand > .brand-lockup:last-child { display: flex; }
  .sidebar .brand-mark.gschub-emblem { width: 38px; height: 38px; flex-basis: 38px; }
  .sidebar .brand-wordmark { font-size: 23px; }
  .sidebar .brand-provenance { font-size: 8px; }
}
@media (max-width: 390px) {
  .login-card .brand { gap: 11px; }
  .login-card .brand-mark.gschub-emblem { width: 56px; height: 56px; flex-basis: 56px; }
  .login-card .brand-wordmark { font-size: 34px; }
}
@media (prefers-reduced-transparency: reduce) {
  :root { --brand-panel: #141c26; --brand-panel-raised: #192533; }
  body:not(.viewer-page)::before { display: none; }
  .workspace .accounts-forecast { background: #19283d; }
  #project-workspace :is(.gsc-report, .gsc-query-report, .domains-panel), .login-card { background: #141c26; }
  #project-workspace table.domain-matrix .domain-matrix-row { background: #141e29; }
  #project-workspace table.domain-matrix .domain-matrix-row:nth-of-type(4n+3) { background: #17222e; }
  #project-workspace table.domain-matrix .domain-matrix-row > :is(.domain-identity, .domain-bulk-cell, .matrix-actions) { background-color: #141e29; backdrop-filter: none; }
  #project-workspace table.domain-matrix .domain-matrix-row[data-domain-role] > :is(.domain-identity, .domain-bulk-cell, .matrix-actions) { background-color: #252922; }
  #project-workspace table.domain-matrix td.matrix-result.success { background-color: #14392e; }
  #project-workspace table.domain-matrix td.matrix-result.danger { background-color: #41292f; }
  #project-workspace table.domain-matrix td.matrix-result.warning { background-color: #3c3423; }
  #project-workspace table.domain-matrix td.matrix-result:is(.working, .active) { background-color: #213852; }
  #project-workspace table.domain-matrix td.matrix-result.neutral { background-color: #17212b; }
  #project-workspace table.domain-matrix td.matrix-result.previous { background-color: #1b303c; }
}
