/* SGL Case OS — isolated internal admin surface. */

body.sgl-admin-mode {
  min-width: 320px;
  color-scheme: light;
  background: #f5f3ee;
  color: #172033;
}

body.sgl-admin-mode .atmosphere {
  display: none !important;
}

body.sgl-admin-mode .loading {
  z-index: 100;
  background: #f5f3ee;
  color: #172033;
}

body.sgl-admin-mode .loading small {
  color: #667085;
}

.sgl-admin {
  --sgl-navy: #101828;
  --sgl-navy-2: #182230;
  --sgl-canvas: #f5f3ee;
  --sgl-paper: #fffefa;
  --sgl-ink: #172033;
  --sgl-muted: #667085;
  --sgl-faint: #98a2b3;
  --sgl-line: #e3e5e8;
  --sgl-line-strong: #d4d8de;
  --sgl-blue: #2e6df6;
  --sgl-blue-soft: #eaf0ff;
  --sgl-violet: #7959d9;
  --sgl-violet-soft: #f0edff;
  --sgl-amber: #b54708;
  --sgl-amber-soft: #fff0dc;
  --sgl-red: #b42318;
  --sgl-red-soft: #ffebe9;
  --sgl-green: #027a48;
  --sgl-green-soft: #e6f6ed;
  --sgl-radius: 14px;
  --sgl-radius-sm: 10px;
  display: grid;
  grid-template-columns: 252px minmax(0, 1fr);
  min-height: 100dvh;
  font-family: Inter, Manrope, "Segoe UI", system-ui, sans-serif;
  letter-spacing: -0.012em;
  background:
    linear-gradient(90deg, rgba(16, 24, 40, 0.018) 1px, transparent 1px),
    linear-gradient(rgba(16, 24, 40, 0.018) 1px, transparent 1px),
    var(--sgl-canvas);
  background-size: 32px 32px;
}

.sgl-admin *,
.sgl-admin *::before,
.sgl-admin *::after {
  box-sizing: border-box;
}

.sgl-admin button,
.sgl-admin input,
.sgl-admin select,
.sgl-admin textarea {
  font: inherit;
}

.sgl-admin button {
  cursor: pointer;
}

.sgl-admin button:focus-visible,
.sgl-admin a:focus-visible,
.sgl-admin input:focus-visible,
.sgl-admin select:focus-visible,
.sgl-admin textarea:focus-visible {
  outline: 3px solid rgba(46, 109, 246, 0.27);
  outline-offset: 2px;
}

.sgl-icon-sprite {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
}

.sgl-admin svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.sgl-admin-sidebar {
  position: sticky;
  top: 0;
  display: flex;
  flex-direction: column;
  min-height: 100dvh;
  height: 100dvh;
  padding: 22px 14px 16px;
  color: #dbe3f1;
  background: var(--sgl-navy);
  box-shadow: inset -1px 0 rgba(255, 255, 255, 0.08);
}

.sgl-brand {
  display: flex;
  align-items: center;
  gap: 11px;
  min-height: 48px;
  padding: 0 9px 23px;
  color: #fff;
  text-decoration: none;
}

.sgl-brand-mark {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  padding: 5px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.06);
}

.sgl-brand-mark img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.sgl-brand > span:last-child {
  display: grid;
  gap: 3px;
}

.sgl-brand strong {
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.12em;
}

.sgl-brand small,
.sgl-side-user small {
  color: #98a2b3;
  font-size: 10px;
  line-height: 1;
  letter-spacing: 0.12em;
}

.sgl-admin-nav {
  display: grid;
  gap: 3px;
}

.sgl-admin-nav button {
  display: grid;
  grid-template-columns: 21px minmax(0, 1fr) auto;
  gap: 11px;
  align-items: center;
  width: 100%;
  min-height: 42px;
  padding: 0 9px;
  border: 1px solid transparent;
  border-radius: 9px;
  color: #aeb8ca;
  background: transparent;
  text-align: left;
  font-size: 13px;
  transition: color 150ms ease, background 150ms ease, border-color 150ms ease;
}

.sgl-admin-nav button:hover {
  color: #fff;
  background: rgba(255, 255, 255, 0.055);
}

.sgl-admin-nav button.is-active {
  border-color: rgba(255, 255, 255, 0.09);
  color: #fff;
  background: #263246;
}

.sgl-admin-nav button.is-active svg {
  color: #9db8ff;
}

.sgl-admin-nav b {
  display: grid;
  min-width: 20px;
  height: 20px;
  padding: 0 5px;
  place-items: center;
  border-radius: 99px;
  color: #bdc8db;
  background: rgba(255, 255, 255, 0.08);
  font-family: ui-monospace, "SFMono-Regular", Consolas, monospace;
  font-size: 10px;
  font-weight: 600;
}

.sgl-admin-nav .sgl-nav-alert:not(:empty) {
  color: #ffd1cc;
  background: rgba(217, 45, 32, 0.22);
}

.sgl-side-health {
  display: grid;
  grid-template-columns: 9px minmax(0, 1fr);
  gap: 9px;
  margin-top: auto;
  padding: 12px 10px;
  border: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.045);
}

.sgl-status-dot {
  width: 7px;
  height: 7px;
  margin-top: 4px;
  border-radius: 50%;
  background: #fdb022;
  box-shadow: 0 0 0 3px rgba(253, 176, 34, 0.13);
}

.sgl-side-health.is-healthy .sgl-status-dot {
  background: #47cd89;
  box-shadow: 0 0 0 3px rgba(71, 205, 137, 0.13);
}

.sgl-side-health b,
.sgl-side-health small {
  display: block;
}

.sgl-side-health b {
  font-size: 11px;
  font-weight: 650;
}

.sgl-side-health small {
  margin-top: 4px;
  color: #99a6bb;
  font-size: 10px;
  line-height: 1.35;
}

.sgl-side-user {
  display: grid;
  gap: 4px;
  padding: 17px 10px 3px;
}

.sgl-side-user span {
  overflow: hidden;
  color: #f8faff;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12px;
  font-weight: 600;
}

.sgl-admin-frame {
  min-width: 0;
}

.sgl-admin-topbar {
  position: sticky;
  top: 0;
  z-index: 20;
  display: flex;
  min-height: 72px;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 0 32px;
  border-bottom: 1px solid var(--sgl-line);
  background: rgba(255, 254, 250, 0.9);
  backdrop-filter: blur(16px);
}

.sgl-top-title {
  display: grid;
  gap: 3px;
  min-width: 160px;
}

.sgl-top-title span,
.sgl-screen-heading > div > span,
.sgl-panel header span,
.sgl-case-title > span,
.sgl-modal-header span {
  color: var(--sgl-muted);
  font-family: ui-monospace, "SFMono-Regular", Consolas, monospace;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.1em;
}

.sgl-top-title strong {
  color: var(--sgl-ink);
  font-size: 14px;
  line-height: 1.2;
}

.sgl-top-actions {
  display: flex;
  align-items: center;
  gap: 9px;
}

.sgl-search-wrap {
  position: relative;
}

.sgl-global-search,
.sgl-case-search,
.sgl-directory-search {
  display: flex;
  align-items: center;
  gap: 8px;
  height: 38px;
  border: 1px solid var(--sgl-line-strong);
  border-radius: 9px;
  color: var(--sgl-muted);
  background: #fffefa;
  transition: border-color 150ms ease, box-shadow 150ms ease;
}

.sgl-global-search {
  width: min(390px, 32vw);
  padding: 0 9px 0 11px;
}

.sgl-global-search:focus-within,
.sgl-case-search:focus-within,
.sgl-directory-search:focus-within {
  border-color: rgba(46, 109, 246, 0.75);
  box-shadow: 0 0 0 3px rgba(46, 109, 246, 0.1);
}

.sgl-global-search svg,
.sgl-case-search svg,
.sgl-directory-search svg {
  flex: 0 0 auto;
  width: 17px;
  height: 17px;
}

.sgl-global-search input,
.sgl-case-search input,
.sgl-directory-search input {
  min-width: 0;
  width: 100%;
  border: 0;
  outline: 0;
  color: var(--sgl-ink);
  background: transparent;
  font-size: 12px;
}

.sgl-global-search input::placeholder,
.sgl-case-search input::placeholder,
.sgl-directory-search input::placeholder {
  color: #98a2b3;
}

.sgl-global-search kbd {
  padding: 3px 5px;
  border: 1px solid #e5e7eb;
  border-radius: 4px;
  color: #667085;
  background: #f8f9fb;
  font-family: ui-monospace, monospace;
  font-size: 9px;
  white-space: nowrap;
}

.sgl-search-results {
  position: absolute;
  top: calc(100% + 7px);
  right: 0;
  width: min(440px, 88vw);
  max-height: min(430px, 70vh);
  overflow: auto;
  padding: 7px;
  border: 1px solid var(--sgl-line-strong);
  border-radius: 12px;
  background: #fffefa;
  box-shadow: 0 18px 48px rgba(16, 24, 40, 0.16);
}

.sgl-search-result {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 9px;
  width: 100%;
  align-items: center;
  padding: 9px;
  border: 0;
  border-radius: 8px;
  color: var(--sgl-ink);
  background: transparent;
  text-align: left;
}

.sgl-search-result:hover {
  background: #f1f4fa;
}

.sgl-search-result > span:first-child {
  display: grid;
  width: 27px;
  height: 27px;
  place-items: center;
  border-radius: 7px;
  color: var(--sgl-blue);
  background: var(--sgl-blue-soft);
}

.sgl-search-result strong,
.sgl-search-result small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sgl-search-result strong {
  font-size: 12px;
}

.sgl-search-result small {
  margin-top: 2px;
  color: var(--sgl-muted);
  font-size: 10px;
}

.sgl-icon-button {
  position: relative;
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  padding: 0;
  border: 1px solid var(--sgl-line-strong);
  border-radius: 9px;
  color: #475467;
  background: #fffefa;
}

.sgl-icon-button:hover {
  color: var(--sgl-blue);
  border-color: #b5c9fb;
  background: #f4f7ff;
}

.sgl-inbox-button i {
  position: absolute;
  top: -5px;
  right: -5px;
  display: none;
  min-width: 17px;
  height: 17px;
  place-items: center;
  padding: 0 4px;
  border: 2px solid #fffefa;
  border-radius: 99px;
  color: #fff;
  background: var(--sgl-red);
  font-family: ui-monospace, monospace;
  font-size: 9px;
  font-style: normal;
}

.sgl-inbox-button i:not(:empty) {
  display: grid;
}

.sgl-button {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 0 12px;
  border: 1px solid transparent;
  border-radius: 9px;
  font-size: 12px;
  font-weight: 650;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  transition: transform 150ms ease, background 150ms ease, border-color 150ms ease, color 150ms ease;
}

.sgl-button:hover {
  transform: translateY(-1px);
}

.sgl-button svg {
  width: 16px;
  height: 16px;
}

.sgl-button-primary {
  border-color: #235bd4;
  color: #fff;
  background: var(--sgl-blue);
  box-shadow: 0 1px 2px rgba(46, 109, 246, 0.2);
}

.sgl-button-primary:hover {
  border-color: #1b4dbd;
  background: #205ad9;
}

.sgl-button-secondary {
  border-color: var(--sgl-line-strong);
  color: #344054;
  background: #fffefa;
}

.sgl-button-secondary:hover {
  border-color: #b9c1ce;
  background: #f8f9fb;
}

.sgl-button-danger {
  border-color: #f4b4ae;
  color: #b42318;
  background: #fff2f0;
}

.sgl-button-danger:hover {
  border-color: #e98b83;
  background: #ffebe8;
}

.sgl-admin-content {
  width: min(1580px, 100%);
  margin: 0 auto;
  padding: 34px 32px 64px;
}

.sgl-screen,
.sgl-case-workspace {
  display: none;
}

.sgl-screen.is-active,
.sgl-case-workspace:not([hidden]) {
  display: block;
  animation: sgl-fade-up 210ms ease both;
}

@keyframes sgl-fade-up {
  from { opacity: 0; transform: translateY(5px); }
  to { opacity: 1; transform: translateY(0); }
}

.sgl-screen-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 22px;
  margin-bottom: 23px;
}

.sgl-screen-heading > div > span {
  color: #667085;
}

.sgl-screen-heading h1,
.sgl-case-title h1 {
  margin: 7px 0 8px;
  color: var(--sgl-ink);
  font-size: clamp(25px, 2.4vw, 34px);
  font-weight: 670;
  letter-spacing: -0.038em;
  line-height: 1.07;
}

.sgl-screen-heading p {
  max-width: 710px;
  margin: 0;
  color: var(--sgl-muted);
  font-size: 13px;
  line-height: 1.55;
}

.sgl-today-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 11px;
  margin-bottom: 15px;
}

.sgl-summary-item {
  position: relative;
  min-height: 112px;
  padding: 16px;
  overflow: hidden;
  border: 1px solid var(--sgl-line);
  border-radius: var(--sgl-radius);
  background: rgba(255, 254, 250, 0.85);
  box-shadow: 0 1px 1px rgba(16, 24, 40, 0.015);
}

.sgl-summary-item::after {
  position: absolute;
  top: -30px;
  right: -28px;
  width: 88px;
  height: 88px;
  border: 1px solid currentColor;
  border-radius: 50%;
  content: "";
  opacity: 0.12;
}

.sgl-summary-item[data-tone="blue"] { color: var(--sgl-blue); }
.sgl-summary-item[data-tone="amber"] { color: var(--sgl-amber); }
.sgl-summary-item[data-tone="red"] { color: var(--sgl-red); }
.sgl-summary-item[data-tone="violet"] { color: var(--sgl-violet); }

.sgl-summary-item small,
.sgl-summary-item span {
  display: block;
}

.sgl-summary-item small {
  color: #667085;
  font-size: 10px;
  font-weight: 650;
  letter-spacing: 0.06em;
}

.sgl-summary-item strong {
  display: block;
  margin: 9px 0 5px;
  color: currentColor;
  font-family: ui-monospace, "SFMono-Regular", Consolas, monospace;
  font-size: 27px;
  font-weight: 650;
  letter-spacing: -0.07em;
}

.sgl-summary-item span {
  color: #667085;
  font-size: 11px;
}

.sgl-today-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.28fr) minmax(320px, 0.72fr);
  gap: 14px;
}

.sgl-today-bottom {
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr);
  margin-top: 14px;
}

.sgl-panel {
  min-width: 0;
  padding: 18px;
  border: 1px solid var(--sgl-line);
  border-radius: var(--sgl-radius);
  background: rgba(255, 254, 250, 0.87);
  box-shadow: 0 1px 1px rgba(16, 24, 40, 0.02);
}

.sgl-panel > header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 12px;
}

.sgl-panel header h2 {
  margin: 5px 0 0;
  color: var(--sgl-ink);
  font-size: 15px;
  font-weight: 650;
  letter-spacing: -0.02em;
}

.sgl-text-button {
  padding: 3px 0;
  border: 0;
  color: var(--sgl-blue);
  background: transparent;
  font-size: 11px;
  font-weight: 650;
}

.sgl-text-button:hover {
  color: #1746b5;
  text-decoration: underline;
}

.sgl-triage-list,
.sgl-inbox-list,
.sgl-activity-list,
.sgl-health-list,
.sgl-person-list {
  display: grid;
  gap: 7px;
}

.sgl-triage-item,
.sgl-inbox-item,
.sgl-activity-item {
  display: grid;
  gap: 6px;
  width: 100%;
  padding: 11px;
  border: 1px solid #edf0f3;
  border-radius: 10px;
  color: var(--sgl-ink);
  background: #fffefa;
  text-align: left;
  transition: border-color 150ms ease, box-shadow 150ms ease, transform 150ms ease;
}

.sgl-triage-item:hover,
.sgl-inbox-item:hover,
.sgl-activity-item:hover {
  transform: translateY(-1px);
  border-color: #cbd5e1;
  box-shadow: 0 5px 15px rgba(16, 24, 40, 0.05);
}

.sgl-triage-item {
  grid-template-columns: 4px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
}

.sgl-triage-item > i {
  width: 4px;
  align-self: stretch;
  border-radius: 99px;
  background: var(--sgl-blue);
}

.sgl-triage-item[data-priority="critical"] > i { background: var(--sgl-red); }
.sgl-triage-item[data-priority="high"] > i { background: #dc6803; }
.sgl-triage-item[data-priority="low"] > i { background: #8098f9; }

.sgl-triage-item strong,
.sgl-triage-item small,
.sgl-inbox-item strong,
.sgl-inbox-item small,
.sgl-activity-item strong,
.sgl-activity-item small {
  display: block;
}

.sgl-triage-item strong,
.sgl-inbox-item strong {
  overflow: hidden;
  font-size: 12px;
  font-weight: 650;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sgl-triage-item small,
.sgl-inbox-item small,
.sgl-activity-item small {
  margin-top: 3px;
  color: var(--sgl-muted);
  font-size: 10px;
  line-height: 1.35;
}

.sgl-item-case,
.sgl-item-time,
.sgl-priority-label {
  color: var(--sgl-muted);
  font-family: ui-monospace, "SFMono-Regular", Consolas, monospace;
  font-size: 10px;
  white-space: nowrap;
}

.sgl-priority-label { color: #b54708; }
.sgl-triage-item[data-priority="critical"] .sgl-priority-label { color: var(--sgl-red); }

.sgl-inbox-item {
  grid-template-columns: minmax(0, 1fr) auto;
}

.sgl-inbox-item[data-severity="critical"] { border-left: 3px solid var(--sgl-red); }
.sgl-inbox-item[data-severity="warning"] { border-left: 3px solid #dc6803; }
.sgl-inbox-item[data-severity="success"] { border-left: 3px solid var(--sgl-green); }

.sgl-ack-button {
  align-self: center;
  min-height: 25px;
  padding: 0 7px;
  border: 1px solid #d0d5dd;
  border-radius: 6px;
  color: #475467;
  background: #fff;
  font-size: 10px;
}

.sgl-ack-button:hover {
  color: var(--sgl-green);
  border-color: #8fd8b3;
  background: var(--sgl-green-soft);
}

.sgl-activity-item {
  grid-template-columns: 10px minmax(0, 1fr) auto;
  align-items: center;
}

.sgl-activity-item > i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #98a2b3;
}

.sgl-activity-item[data-kind="attention"] > i { background: #f79009; }
.sgl-activity-item[data-kind="success"] > i { background: #12b76a; }
.sgl-activity-item[data-kind="atlas"] > i { background: var(--sgl-violet); }

.sgl-activity-item strong {
  font-size: 11px;
  font-weight: 600;
}

.sgl-health-row {
  display: grid;
  grid-template-columns: 9px minmax(0, 1fr) auto;
  align-items: center;
  gap: 9px;
  padding: 10px 0;
  border-top: 1px solid #eef0f2;
}

.sgl-health-row:first-child { border-top: 0; }

.sgl-health-row i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #98a2b3;
}

.sgl-health-row.is-ready i,
.sgl-health-row.is-manual i { background: #12b76a; }
.sgl-health-row.is-disabled i { background: #98a2b3; }
.sgl-health-row.is-attention i { background: #f79009; }

.sgl-health-row b,
.sgl-health-row small {
  display: block;
}

.sgl-health-row b {
  font-size: 11px;
  font-weight: 600;
}

.sgl-health-row small,
.sgl-health-row span {
  color: var(--sgl-muted);
  font-size: 10px;
}

.sgl-empty {
  padding: 30px 17px;
  border: 1px dashed #d0d5dd;
  border-radius: 10px;
  color: var(--sgl-muted);
  background: rgba(248, 250, 252, 0.55);
  text-align: center;
  font-size: 12px;
  line-height: 1.45;
}

.sgl-case-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 13px;
}

.sgl-saved-views {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.sgl-saved-views button {
  min-height: 31px;
  padding: 0 9px;
  border: 1px solid transparent;
  border-radius: 7px;
  color: #667085;
  background: transparent;
  font-size: 11px;
  font-weight: 600;
}

.sgl-saved-views button:hover {
  color: #344054;
  background: rgba(255, 254, 250, 0.7);
}

.sgl-saved-views button.is-active {
  border-color: #c7d7fe;
  color: #2454c4;
  background: #edf3ff;
}

.sgl-case-search {
  width: min(320px, 34vw);
  padding: 0 10px;
}

.sgl-table-card {
  overflow: hidden;
  border: 1px solid var(--sgl-line);
  border-radius: var(--sgl-radius);
  background: rgba(255, 254, 250, 0.9);
}

.sgl-data-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

.sgl-data-table th {
  padding: 11px 13px;
  border-bottom: 1px solid var(--sgl-line);
  color: #667085;
  background: #f8f8f6;
  text-align: left;
  font-family: ui-monospace, "SFMono-Regular", Consolas, monospace;
  font-size: 9px;
  font-weight: 650;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.sgl-data-table td {
  padding: 12px 13px;
  border-bottom: 1px solid #eef0f2;
  color: #344054;
  vertical-align: middle;
  font-size: 11px;
}

.sgl-data-table tbody tr {
  cursor: pointer;
  transition: background 130ms ease;
}

.sgl-data-table tbody tr:hover {
  background: #f7f9fd;
}

.sgl-data-table tbody tr:last-child td { border-bottom: 0; }

.sgl-data-table td:nth-child(1) { width: 9%; }
.sgl-data-table td:nth-child(2) { width: 22%; }
.sgl-data-table td:nth-child(3) { width: 16%; }
.sgl-data-table td:nth-child(4) { width: 12%; }
.sgl-data-table td:nth-child(5) { width: 24%; }
.sgl-data-table td:nth-child(6) { width: 13%; }
.sgl-data-table td:last-child { width: 4%; }

.sgl-table-main,
.sgl-table-sub,
.sgl-table-action {
  display: block;
}

.sgl-table-main {
  overflow: hidden;
  color: var(--sgl-ink);
  font-size: 11px;
  font-weight: 650;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sgl-table-sub {
  overflow: hidden;
  margin-top: 3px;
  color: var(--sgl-muted);
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sgl-case-number {
  color: #2454c4;
  font-family: ui-monospace, "SFMono-Regular", Consolas, monospace;
  font-size: 12px;
  font-weight: 700;
}

.sgl-status-pill {
  display: inline-flex;
  min-height: 22px;
  align-items: center;
  padding: 0 7px;
  border-radius: 99px;
  color: #475467;
  background: #f2f4f7;
  font-size: 10px;
  font-weight: 600;
  white-space: nowrap;
}

.sgl-status-pill[data-status="created"],
.sgl-status-pill[data-status="awaiting_close"],
.sgl-status-pill[data-status="published"] {
  color: #2454c4;
  background: #edf3ff;
}

.sgl-status-pill[data-status="awaiting_situation"],
.sgl-status-pill[data-status="awaiting_link"],
.sgl-status-pill[data-status="issued"],
.sgl-status-pill[data-status="proofs_submitted"] {
  color: #b54708;
  background: #fff0dc;
}

.sgl-status-pill[data-status="error"],
.sgl-status-pill[data-status="failed"],
.sgl-status-pill[data-status="changed"] {
  color: #b42318;
  background: #ffebe9;
}

.sgl-status-pill[data-status="closed"],
.sgl-status-pill[data-status="archived"],
.sgl-status-pill[data-status="confirmed"],
.sgl-status-pill[data-status="tracked"] {
  color: #027a48;
  background: #e6f6ed;
}

.sgl-table-action {
  width: 27px;
  height: 27px;
  padding: 0;
  border: 0;
  border-radius: 6px;
  color: #667085;
  background: transparent;
}

.sgl-table-action:hover {
  color: var(--sgl-blue);
  background: var(--sgl-blue-soft);
}

.sgl-atlas-index,
.sgl-directory-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: 14px;
}

.sgl-case-picker {
  display: grid;
  gap: 6px;
}

.sgl-case-picker button {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 9px;
  width: 100%;
  align-items: center;
  padding: 10px;
  border: 1px solid #edf0f3;
  border-radius: 9px;
  color: var(--sgl-ink);
  background: #fffefa;
  text-align: left;
}

.sgl-case-picker button:hover { border-color: #c7d7fe; background: #f7f9ff; }

.sgl-case-picker b {
  color: var(--sgl-blue);
  font-family: ui-monospace, monospace;
  font-size: 10px;
}

.sgl-case-picker strong,
.sgl-case-picker small { display: block; }
.sgl-case-picker strong { font-size: 11px; }
.sgl-case-picker small { margin-top: 2px; color: var(--sgl-muted); font-size: 10px; }

.sgl-artifact-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.sgl-artifact-grid article {
  display: grid;
  gap: 5px;
  min-height: 114px;
  padding: 13px;
  border: 1px solid #e2ddfb;
  border-radius: 10px;
  color: #5e46ba;
  background: #faf9ff;
}

.sgl-artifact-grid svg { width: 19px; height: 19px; }
.sgl-artifact-grid b { color: var(--sgl-ink); font-size: 12px; }
.sgl-artifact-grid span { color: var(--sgl-muted); font-size: 10px; line-height: 1.4; }

.sgl-forum-health {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  margin-bottom: 14px;
  padding: 15px 17px;
  border: 1px solid #f2d7ad;
  border-radius: var(--sgl-radius);
  background: #fffaf2;
}

.sgl-forum-health.is-running { border-color: #bce5cc; background: #f5fcf7; }
.sgl-forum-health.is-disabled { border-color: #e5e7eb; background: #f8f9fb; }

.sgl-forum-health strong,
.sgl-forum-health span {
  display: block;
}

.sgl-forum-health strong { color: var(--sgl-ink); font-size: 13px; }
.sgl-forum-health span { margin-top: 4px; color: var(--sgl-muted); font-size: 11px; line-height: 1.4; }

.sgl-forum-health b {
  color: #b54708;
  font-family: ui-monospace, monospace;
  font-size: 10px;
  font-weight: 600;
}

.sgl-directory-search {
  width: min(460px, 100%);
  margin-bottom: 14px;
  padding: 0 11px;
}

.sgl-person-row {
  display: grid;
  grid-template-columns: 31px minmax(0, 1fr);
  gap: 9px;
  align-items: center;
  padding: 9px 0;
  border-top: 1px solid #eef0f2;
}

.sgl-person-row:first-child { border-top: 0; }

.sgl-avatar {
  display: grid;
  width: 31px;
  height: 31px;
  place-items: center;
  border-radius: 9px;
  color: #2454c4;
  background: #edf3ff;
  font-size: 11px;
  font-weight: 700;
}

.sgl-avatar.is-lawyer { color: #5e46ba; background: #f0edff; }

.sgl-person-row strong,
.sgl-person-row small { display: block; }
.sgl-person-row strong { overflow: hidden; color: var(--sgl-ink); font-size: 11px; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.sgl-person-row small { overflow: hidden; margin-top: 2px; color: var(--sgl-muted); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }

/* Case workspace */
.sgl-case-workspace {
  margin-top: -7px;
}

.sgl-case-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 18px;
}

.sgl-back-button {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 0;
  border: 0;
  color: #667085;
  background: transparent;
  font-size: 11px;
  font-weight: 600;
}

.sgl-back-button svg {
  width: 14px;
  height: 14px;
  transform: rotate(180deg);
}

.sgl-back-button:hover { color: var(--sgl-blue); }

.sgl-case-title { margin-top: 13px; }

.sgl-case-title > span { color: #667085; }

.sgl-case-title h1 {
  margin-bottom: 9px;
}

.sgl-case-header-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.sgl-case-header-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: end;
  gap: 8px;
  padding-top: 5px;
}

.sgl-case-tabs {
  display: flex;
  gap: 3px;
  overflow: auto;
  margin-bottom: 13px;
  padding: 4px;
  border: 1px solid var(--sgl-line);
  border-radius: 10px;
  background: rgba(255, 254, 250, 0.65);
}

.sgl-case-tabs button {
  min-height: 31px;
  padding: 0 9px;
  border: 0;
  border-radius: 7px;
  color: #667085;
  background: transparent;
  font-size: 11px;
  font-weight: 600;
  white-space: nowrap;
}

.sgl-case-tabs button:hover { color: #344054; background: rgba(255, 255, 255, 0.75); }
.sgl-case-tabs button.is-active { color: #2454c4; background: #fffefa; box-shadow: 0 1px 2px rgba(16, 24, 40, 0.09); }

.sgl-case-layout {
  display: grid;
  grid-template-columns: 230px minmax(0, 1fr) 258px;
  gap: 13px;
  align-items: start;
}

.sgl-case-identity,
.sgl-case-panel,
.sgl-case-sidecar {
  min-width: 0;
}

.sgl-case-identity,
.sgl-case-sidecar {
  display: grid;
  gap: 12px;
}

.sgl-case-card {
  padding: 14px;
  border: 1px solid var(--sgl-line);
  border-radius: var(--sgl-radius);
  background: rgba(255, 254, 250, 0.9);
}

.sgl-case-card > span,
.sgl-case-card > small {
  display: block;
  color: var(--sgl-muted);
  font-family: ui-monospace, monospace;
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.06em;
}

.sgl-case-card h3 {
  margin: 5px 0 12px;
  color: var(--sgl-ink);
  font-size: 13px;
  letter-spacing: -0.02em;
}

.sgl-person-fact {
  display: grid;
  gap: 2px;
  padding: 9px 0;
  border-top: 1px solid #eef0f2;
}

.sgl-person-fact:first-of-type { border-top: 0; }
.sgl-person-fact span { color: var(--sgl-muted); font-size: 9px; }
.sgl-person-fact b { overflow: hidden; color: #344054; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }

.sgl-roadmap {
  display: grid;
  gap: 0;
}

.sgl-roadmap-step {
  position: relative;
  display: grid;
  grid-template-columns: 17px minmax(0, 1fr);
  gap: 8px;
  min-height: 37px;
}

.sgl-roadmap-step:not(:last-child)::after {
  position: absolute;
  top: 18px;
  bottom: 0;
  left: 8px;
  width: 1px;
  background: #d0d5dd;
  content: "";
}

.sgl-roadmap-step i {
  position: relative;
  z-index: 1;
  display: grid;
  width: 17px;
  height: 17px;
  place-items: center;
  border: 1px solid #cbd5e1;
  border-radius: 50%;
  color: #98a2b3;
  background: #fffefa;
}

.sgl-roadmap-step.is-done i { border-color: #6fd19b; color: #027a48; background: #e6f6ed; }
.sgl-roadmap-step.is-current i { border-color: #84adff; color: #2454c4; background: #edf3ff; }
.sgl-roadmap-step b { color: #475467; font-size: 10px; font-weight: 600; }

.sgl-side-action {
  display: grid;
  gap: 8px;
}

.sgl-side-action strong { color: var(--sgl-ink); font-size: 12px; line-height: 1.35; }
.sgl-side-action p { margin: 0; color: var(--sgl-muted); font-size: 11px; line-height: 1.45; }
.sgl-side-action button { width: 100%; }

.sgl-task-mini {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 7px;
  padding: 8px 0;
  border-top: 1px solid #eef0f2;
}

.sgl-task-mini:first-of-type { border-top: 0; }
.sgl-task-mini strong,.sgl-task-mini small { display: block; }
.sgl-task-mini strong { overflow: hidden; font-size: 10px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.sgl-task-mini small { margin-top: 2px; color: var(--sgl-muted); font-size: 9px; }
.sgl-task-mini button { width: 23px; height: 23px; padding: 0; border: 1px solid #d0d5dd; border-radius: 6px; color: var(--sgl-green); background: #fff; }
.sgl-task-mini button:hover { border-color: #74d7a4; background: var(--sgl-green-soft); }

.sgl-case-panel > .sgl-panel {
  min-height: 500px;
}

.sgl-case-panel-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 16px;
}

.sgl-case-panel-header h2 {
  margin: 5px 0 0;
  color: var(--sgl-ink);
  font-size: 16px;
  font-weight: 660;
}

.sgl-case-panel-header span {
  color: var(--sgl-muted);
  font-family: ui-monospace, monospace;
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.07em;
}

.sgl-overview-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.sgl-fact-box {
  min-height: 95px;
  padding: 12px;
  border: 1px solid #edf0f3;
  border-radius: 10px;
  background: #fffefa;
}

.sgl-fact-box.is-wide { grid-column: 1 / -1; }
.sgl-fact-box span { display: block; color: var(--sgl-muted); font-family: ui-monospace, monospace; font-size: 9px; font-weight: 600; letter-spacing: 0.06em; }
.sgl-fact-box b { display: block; margin-top: 7px; color: #344054; font-size: 12px; font-weight: 600; line-height: 1.45; white-space: pre-wrap; }
.sgl-fact-box a { color: var(--sgl-blue); text-decoration: none; overflow-wrap: anywhere; }
.sgl-fact-box a:hover { text-decoration: underline; }

.sgl-checklist {
  display: grid;
  gap: 7px;
  margin-top: 13px;
}

.sgl-checklist-row {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  padding: 9px 10px;
  border: 1px solid #edf0f3;
  border-radius: 8px;
  color: #475467;
  background: #fffefa;
  font-size: 11px;
}

.sgl-checklist-row i {
  display: grid;
  width: 18px;
  height: 18px;
  place-items: center;
  border-radius: 50%;
  color: #98a2b3;
  background: #eef0f2;
}

.sgl-checklist-row.is-done i { color: #027a48; background: #e6f6ed; }
.sgl-checklist-row.is-missing i { color: #b54708; background: #fff0dc; }
.sgl-checklist-row small { color: var(--sgl-muted); font-size: 10px; }

.sgl-message-list {
  display: grid;
  gap: 0;
  max-height: 520px;
  overflow: auto;
  padding-right: 3px;
}

.sgl-message {
  padding: 12px 0;
  border-top: 1px solid #eef0f2;
}

.sgl-message:first-child { border-top: 0; }
.sgl-message-head { display: flex; justify-content: space-between; gap: 10px; }
.sgl-message-head b { color: var(--sgl-ink); font-size: 11px; font-weight: 650; }
.sgl-message-head small { color: var(--sgl-muted); font-family: ui-monospace, monospace; font-size: 9px; }
.sgl-message p { margin: 5px 0 0; color: #475467; font-size: 12px; line-height: 1.52; white-space: pre-wrap; overflow-wrap: anywhere; }
.sgl-message.is-web p { color: #1d4ed8; }
.sgl-message.is-deleted { opacity: 0.6; }

.sgl-attachments { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 8px; }
.sgl-attachments a { display: inline-flex; align-items: center; gap: 4px; padding: 4px 6px; border: 1px solid #d5dded; border-radius: 5px; color: #2454c4; background: #f6f8ff; font-size: 9px; text-decoration: none; }
.sgl-attachments a svg { width: 12px; height: 12px; }

.sgl-message-compose {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  margin-top: 14px;
  padding-top: 13px;
  border-top: 1px solid #eef0f2;
}

.sgl-message-compose textarea,
.sgl-admin textarea,
.sgl-admin input,
.sgl-admin select {
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  color: #344054;
  background: #fffefa;
}

.sgl-message-compose textarea { min-height: 74px; padding: 9px; resize: vertical; font-size: 11px; }

.sgl-event-list { display: grid; gap: 0; }
.sgl-event { display: grid; grid-template-columns: 10px minmax(0, 1fr); gap: 10px; padding: 12px 0; border-top: 1px solid #eef0f2; }
.sgl-event:first-child { border-top: 0; }
.sgl-event i { width: 7px; height: 7px; margin-top: 4px; border-radius: 50%; background: #98a2b3; }
.sgl-event[data-action="atlas"] i { background: var(--sgl-violet); }
.sgl-event[data-action="forum"] i { background: #f79009; }
.sgl-event[data-action="done"] i { background: #12b76a; }
.sgl-event strong,.sgl-event small { display: block; }
.sgl-event strong { color: #344054; font-size: 11px; font-weight: 600; line-height: 1.4; }
.sgl-event small { margin-top: 3px; color: var(--sgl-muted); font-size: 10px; line-height: 1.4; }

.sgl-evidence-editor {
  display: grid;
  gap: 11px;
}

.sgl-evidence-editor label,
.sgl-finance-form label,
.sgl-forum-editor label,
.sgl-atlas-composer label,
.sgl-modal label {
  display: grid;
  gap: 6px;
  color: #475467;
  font-size: 10px;
  font-weight: 600;
}

.sgl-evidence-editor input,
.sgl-evidence-editor textarea,
.sgl-finance-form input,
.sgl-finance-form select,
.sgl-forum-editor input,
.sgl-forum-editor textarea,
.sgl-atlas-composer textarea,
.sgl-modal input,
.sgl-modal textarea,
.sgl-modal select {
  width: 100%;
  min-height: 38px;
  padding: 8px 9px;
  outline: 0;
  font-size: 11px;
  font-weight: 400;
}

.sgl-evidence-editor textarea,
.sgl-forum-editor textarea,
.sgl-atlas-composer textarea,
.sgl-modal textarea { min-height: 116px; resize: vertical; line-height: 1.45; }

.sgl-field-actions { display: flex; justify-content: flex-end; gap: 8px; }

.sgl-receipt-list,
.sgl-publication-list,
.sgl-atlas-notes {
  display: grid;
  gap: 8px;
}

.sgl-receipt,
.sgl-publication,
.sgl-atlas-note {
  padding: 12px;
  border: 1px solid #edf0f3;
  border-radius: 10px;
  background: #fffefa;
}

.sgl-receipt-head,
.sgl-publication-head,
.sgl-atlas-note-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.sgl-receipt strong,
.sgl-publication strong,
.sgl-atlas-note strong { color: var(--sgl-ink); font-size: 12px; font-weight: 650; }
.sgl-receipt p,.sgl-publication p,.sgl-atlas-note p { margin: 6px 0 0; color: var(--sgl-muted); font-size: 11px; line-height: 1.45; white-space: pre-wrap; }
.sgl-inline-actions { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
.sgl-inline-action { display: inline-flex; min-height: 28px; align-items: center; gap: 4px; padding: 0 8px; border: 1px solid #d0d5dd; border-radius: 6px; color: #475467; background: #fff; font-size: 10px; font-weight: 600; text-decoration: none; }
.sgl-inline-action:hover { color: #2454c4; border-color: #b5c9fb; background: #f5f8ff; }
.sgl-inline-action.is-danger:hover { color: #b42318; border-color: #f4b4ae; background: #fff2f0; }

.sgl-finance-layout,
.sgl-forum-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(270px, 0.95fr);
  gap: 12px;
}

.sgl-finance-form,
.sgl-forum-editor,
.sgl-atlas-composer {
  display: grid;
  gap: 10px;
  padding: 13px;
  border: 1px solid #edf0f3;
  border-radius: 10px;
  background: #fbfcfe;
}

.sgl-finance-form h3,
.sgl-forum-editor h3,
.sgl-atlas-composer h3 {
  margin: 0;
  color: var(--sgl-ink);
  font-size: 12px;
}

.sgl-form-grid-inline {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.sgl-forum-editor textarea { min-height: 220px; font-family: ui-monospace, monospace; font-size: 10px; }

.sgl-forum-diff {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 10px;
}

.sgl-forum-diff article {
  padding: 10px;
  border: 1px solid #edf0f3;
  border-radius: 8px;
  background: #fffefa;
}

.sgl-forum-diff small { display: block; color: var(--sgl-muted); font-family: ui-monospace, monospace; font-size: 9px; }
.sgl-forum-diff p { min-height: 78px; margin: 6px 0 0; color: #475467; font-size: 10px; line-height: 1.45; white-space: pre-wrap; overflow: auto; }

.sgl-atlas-layout { display: grid; grid-template-columns: minmax(0, 1fr) 230px; gap: 12px; }
.sgl-atlas-notes { max-height: 460px; overflow: auto; padding-right: 3px; }
.sgl-atlas-note { border-left: 3px solid var(--sgl-violet); }
.sgl-atlas-note-head b { color: #5e46ba; font-family: ui-monospace, monospace; font-size: 9px; letter-spacing: 0.05em; }
.sgl-atlas-note-head small { color: var(--sgl-muted); font-size: 9px; }
.sgl-atlas-note .sgl-citations { margin-top: 8px; color: #5e46ba; font-size: 10px; }
.sgl-atlas-side { display: grid; align-content: start; gap: 10px; padding: 13px; border: 1px solid #e5e0fa; border-radius: 10px; background: #faf9ff; }
.sgl-atlas-side b { color: #5e46ba; font-size: 11px; }
.sgl-atlas-side p { margin: 0; color: var(--sgl-muted); font-size: 10px; line-height: 1.45; }
.sgl-atlas-presets { display: flex; flex-wrap: wrap; gap: 5px; }
.sgl-atlas-presets button { min-height: 27px; padding: 0 7px; border: 1px solid #dcd4fc; border-radius: 6px; color: #5e46ba; background: #fff; font-size: 10px; font-weight: 600; }
.sgl-atlas-presets button:hover { background: #f0edff; }

/* Modals */
.sgl-modal {
  width: min(660px, calc(100vw - 28px));
  max-height: min(880px, calc(100dvh - 28px));
  overflow: auto;
  padding: 0;
  border: 1px solid #d0d5dd;
  border-radius: 16px;
  color: var(--sgl-ink);
  background: #fffefa;
  box-shadow: 0 28px 80px rgba(16, 24, 40, 0.26);
}

.sgl-modal::backdrop {
  background: rgba(16, 24, 40, 0.44);
  backdrop-filter: blur(4px);
}

.sgl-modal form { display: grid; gap: 14px; padding: 21px; }
.sgl-create-modal { width: min(760px, calc(100vw - 28px)); }

.sgl-modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 15px;
}

.sgl-modal-header span { color: var(--sgl-muted); }
.sgl-modal-header h2 { margin: 6px 0 5px; color: var(--sgl-ink); font-size: 21px; letter-spacing: -0.035em; }
.sgl-modal-header p { margin: 0; color: var(--sgl-muted); font-size: 11px; line-height: 1.45; }

.sgl-modal-close {
  display: grid;
  width: 31px;
  height: 31px;
  flex: 0 0 auto;
  place-items: center;
  padding: 0;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  color: #667085;
  background: #fff;
}

.sgl-modal-close:hover { color: var(--sgl-red); background: #fff4f2; border-color: #f4b4ae; }
.sgl-modal-close svg { width: 15px; height: 15px; }

.sgl-stepper {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.sgl-stepper li { display: flex; align-items: center; gap: 6px; color: #98a2b3; font-size: 10px; font-weight: 600; }
.sgl-stepper b { display: grid; width: 20px; height: 20px; place-items: center; border: 1px solid #d0d5dd; border-radius: 50%; font-size: 10px; }
.sgl-stepper li.is-current { color: #2454c4; }
.sgl-stepper li.is-current b { border-color: #84adff; background: #edf3ff; }
.sgl-stepper li.is-done { color: #027a48; }
.sgl-stepper li.is-done b { border-color: #6fd19b; background: #e6f6ed; }

.sgl-create-step { display: none; gap: 11px; }
.sgl-create-step.is-active { display: grid; }
.sgl-form-note { padding: 10px 11px; border: 1px solid #d7e2fb; border-radius: 8px; color: #475467; background: #f6f8ff; font-size: 11px; line-height: 1.45; }
.sgl-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.sgl-modal label textarea { min-height: 116px; }

.sgl-create-review { display: grid; gap: 7px; }
.sgl-review-row { display: grid; grid-template-columns: 130px minmax(0, 1fr); gap: 8px; padding: 9px 0; border-bottom: 1px solid #eef0f2; font-size: 11px; }
.sgl-review-row span { color: var(--sgl-muted); }
.sgl-review-row b { color: #344054; overflow-wrap: anywhere; }
.sgl-review-warning { display: grid; grid-template-columns: 18px minmax(0, 1fr); gap: 8px; padding: 10px; border: 1px solid #f3d5a9; border-radius: 8px; color: #8f4a04; background: #fffaf2; font-size: 11px; line-height: 1.45; }
.sgl-review-warning svg { width: 17px; height: 17px; }

.sgl-modal-footer { display: grid; grid-template-columns: auto 1fr auto; gap: 8px; align-items: center; padding-top: 4px; }
.sgl-modal-footer .sgl-button { justify-self: end; }

.sgl-contract-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.sgl-contract-fields label:last-child:nth-child(odd) { grid-column: span 2; }

.sgl-switch { display: inline-grid !important; grid-template-columns: 36px minmax(0, 1fr); align-items: center; gap: 9px; cursor: pointer; }
.sgl-switch input { position: absolute; opacity: 0; pointer-events: none; }
.sgl-switch span { position: relative; width: 35px; height: 20px; border-radius: 99px; background: #d0d5dd; transition: background 150ms ease; }
.sgl-switch span::after { position: absolute; top: 3px; left: 3px; width: 14px; height: 14px; border-radius: 50%; background: #fff; box-shadow: 0 1px 2px rgba(16, 24, 40, 0.2); content: ""; transition: transform 150ms ease; }
.sgl-switch input:checked + span { background: var(--sgl-blue); }
.sgl-switch input:checked + span::after { transform: translateX(15px); }

.sgl-close-preflight { display: grid; gap: 7px; }
.sgl-preflight-row { display: grid; grid-template-columns: 18px minmax(0, 1fr); gap: 8px; align-items: center; padding: 9px; border: 1px solid #edf0f3; border-radius: 8px; color: #475467; background: #fff; font-size: 11px; }
.sgl-preflight-row i { display: grid; width: 18px; height: 18px; place-items: center; border-radius: 50%; color: #98a2b3; background: #eef0f2; }
.sgl-preflight-row.is-ok i { color: #027a48; background: #e6f6ed; }
.sgl-preflight-row.is-warning i { color: #b54708; background: #fff0dc; }

.sgl-toast {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 110;
  max-width: min(410px, calc(100vw - 44px));
  padding: 12px 14px;
  border: 1px solid #9de0bc;
  border-radius: 10px;
  color: #055f36;
  background: #f2fcf5;
  box-shadow: 0 16px 35px rgba(16, 24, 40, 0.14);
  font-size: 12px;
  line-height: 1.4;
}

.sgl-toast.is-error { border-color: #f2a7a1; color: #9e211a; background: #fff2f0; }

@media (max-width: 1230px) {
  .sgl-admin { grid-template-columns: 218px minmax(0, 1fr); }
  .sgl-admin-topbar, .sgl-admin-content { padding-left: 22px; padding-right: 22px; }
  .sgl-global-search { width: min(320px, 28vw); }
  .sgl-case-layout { grid-template-columns: 208px minmax(0, 1fr); }
  .sgl-case-sidecar { grid-column: 1 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sgl-case-sidecar .sgl-case-card:last-child { grid-column: 1 / -1; }
}

@media (max-width: 990px) {
  .sgl-today-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sgl-today-grid, .sgl-today-bottom, .sgl-atlas-index, .sgl-directory-grid { grid-template-columns: 1fr; }
  .sgl-finance-layout, .sgl-forum-layout, .sgl-atlas-layout { grid-template-columns: 1fr; }
  .sgl-data-table { min-width: 900px; }
  .sgl-table-card { overflow: auto; }
  .sgl-case-header { align-items: start; flex-direction: column; }
  .sgl-case-header-actions { justify-content: start; padding-top: 0; }
}

@media (max-width: 760px) {
  .sgl-admin { display: block; background-size: 24px 24px; }
  .sgl-admin-sidebar { position: sticky; z-index: 30; display: grid; grid-template-columns: auto minmax(0, 1fr); height: auto; min-height: 0; padding: 9px 11px; gap: 8px; }
  .sgl-brand { min-height: 38px; padding: 0 5px; }
  .sgl-brand-mark { width: 30px; height: 30px; }
  .sgl-brand > span:last-child small { display: none; }
  .sgl-admin-nav { display: flex; min-width: 0; gap: 2px; overflow: auto; }
  .sgl-admin-nav button { display: grid; min-width: 42px; width: 42px; grid-template-columns: 1fr; gap: 0; place-items: center; padding: 0; }
  .sgl-admin-nav button span, .sgl-admin-nav button b { display: none; }
  .sgl-side-health, .sgl-side-user { display: none; }
  .sgl-admin-topbar { min-height: 58px; padding: 0 12px; gap: 8px; }
  .sgl-top-title { min-width: 0; }
  .sgl-top-title span { display: none; }
  .sgl-top-title strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .sgl-global-search { width: 38px; padding: 0; justify-content: center; }
  .sgl-global-search input, .sgl-global-search kbd { display: none; }
  .sgl-top-actions { gap: 6px; }
  .sgl-inbox-button { display: none; }
  .sgl-top-actions > .sgl-button { width: 38px; padding: 0; font-size: 0; }
  .sgl-admin-content { padding: 22px 12px 44px; }
  .sgl-screen-heading { align-items: flex-start; flex-direction: column; margin-bottom: 17px; }
  .sgl-screen-heading h1, .sgl-case-title h1 { font-size: 26px; }
  .sgl-screen-heading p { font-size: 12px; }
  .sgl-today-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .sgl-summary-item { min-height: 97px; padding: 12px; }
  .sgl-summary-item strong { margin-top: 6px; font-size: 23px; }
  .sgl-summary-item small { font-size: 8px; }
  .sgl-summary-item span { font-size: 10px; }
  .sgl-panel { padding: 14px; }
  .sgl-case-toolbar { align-items: stretch; flex-direction: column; }
  .sgl-case-search { width: 100%; }
  .sgl-case-layout { grid-template-columns: 1fr; }
  .sgl-case-sidecar { grid-column: auto; grid-template-columns: 1fr; }
  .sgl-case-sidecar .sgl-case-card:last-child { grid-column: auto; }
  .sgl-case-tabs { margin-left: -2px; margin-right: -2px; }
  .sgl-overview-grid, .sgl-form-grid, .sgl-contract-fields, .sgl-finance-form .sgl-form-grid-inline, .sgl-forum-diff { grid-template-columns: 1fr; }
  .sgl-fact-box.is-wide, .sgl-contract-fields label:last-child:nth-child(odd) { grid-column: auto; }
  .sgl-case-header-actions { width: 100%; }
  .sgl-case-header-actions .sgl-button { flex: 1; }
  .sgl-modal { width: calc(100vw - 18px); max-height: calc(100dvh - 18px); }
  .sgl-modal form { padding: 16px; }
  .sgl-stepper li { justify-content: center; }
  .sgl-stepper li span { display: none; }
  .sgl-create-modal .sgl-stepper li span { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .sgl-admin *, .sgl-admin *::before, .sgl-admin *::after { scroll-behavior: auto !important; transition: none !important; animation-duration: 0.001ms !important; }
}

/* --------------------------------------------------------------------------
   Command room refinement — this layer intentionally comes last.  The public
   SGL site has its own styles; these tokens only affect the staff workspace.
   -------------------------------------------------------------------------- */

body.sgl-admin-mode {
  color-scheme: dark;
  color: #eef3fb;
  background: #080b11;
}

body.sgl-admin-mode .loading {
  color: #eef3fb;
  background:
    radial-gradient(circle at 50% 25%, rgba(93, 123, 255, .12), transparent 36rem),
    #080b11;
}

body.sgl-admin-mode .loading small { color: #98a6ba; }

.sgl-admin {
  --sgl-navy: #090d14;
  --sgl-navy-2: #101722;
  --sgl-canvas: #080b11;
  --sgl-paper: #111824;
  --sgl-ink: #f1f5fb;
  --sgl-muted: #9aa7bb;
  --sgl-faint: #6d788b;
  --sgl-line: rgba(210, 222, 244, .095);
  --sgl-line-strong: rgba(210, 222, 244, .16);
  --sgl-blue: #7793ff;
  --sgl-blue-soft: rgba(103, 135, 255, .15);
  --sgl-violet: #b091ff;
  --sgl-violet-soft: rgba(165, 125, 255, .14);
  --sgl-amber: #d0aa64;
  --sgl-amber-soft: rgba(208, 170, 100, .13);
  --sgl-red: #ff7c82;
  --sgl-red-soft: rgba(255, 103, 112, .12);
  --sgl-green: #57d19a;
  --sgl-green-soft: rgba(70, 199, 143, .12);
  --sgl-surface: #101722;
  --sgl-surface-raised: #151e2c;
  --sgl-surface-inset: #0b111a;
  --sgl-shadow: 0 18px 48px rgba(0, 0, 0, .24);
  grid-template-columns: 264px minmax(0, 1fr);
  min-width: 0;
  letter-spacing: -0.008em;
  background:
    radial-gradient(ellipse 55rem 32rem at 69% -14%, rgba(74, 101, 211, .12), transparent 68%),
    radial-gradient(ellipse 42rem 30rem at 106% 42%, rgba(176, 145, 255, .055), transparent 72%),
    var(--sgl-canvas);
}

.sgl-admin-frame,
.sgl-admin-content,
.sgl-admin-topbar,
.sgl-top-actions,
.sgl-screen-heading > div,
.sgl-case-header > div,
.sgl-case-layout > *,
.sgl-panel,
.sgl-case-card { min-width: 0; }

.sgl-admin button:focus-visible,
.sgl-admin a:focus-visible,
.sgl-admin input:focus-visible,
.sgl-admin select:focus-visible,
.sgl-admin textarea:focus-visible {
  outline-color: rgba(119, 147, 255, .72);
  outline-width: 2px;
}

.sgl-admin-sidebar {
  padding: 24px 15px 17px;
  color: #d6deef;
  background:
    linear-gradient(180deg, rgba(255,255,255,.025), transparent 18rem),
    linear-gradient(145deg, #090d14, #0c121c 58%, #090d14);
  border-right: 1px solid rgba(214, 225, 246, .075);
  box-shadow: 10px 0 36px rgba(0, 0, 0, .17);
}

.sgl-brand { gap: 12px; padding: 0 10px 27px; }
.sgl-brand-mark {
  width: 36px;
  height: 36px;
  padding: 6px;
  border-color: rgba(208, 170, 100, .34);
  border-radius: 11px;
  background: linear-gradient(145deg, rgba(208,170,100,.17), rgba(255,255,255,.025));
  box-shadow: inset 0 1px rgba(255,255,255,.07), 0 5px 17px rgba(0,0,0,.22);
}
.sgl-brand strong { color: #f7f9fd; font-size: 16px; letter-spacing: .16em; }
.sgl-brand small,.sgl-side-user small { color: #77859b; letter-spacing: .14em; }

.sgl-admin-nav { gap: 4px; }
.sgl-admin-nav button {
  min-height: 44px;
  padding: 0 10px;
  border-radius: 10px;
  color: #98a7bd;
  font-size: 13px;
}
.sgl-admin-nav button:hover { color: #eef4ff; background: rgba(136, 157, 214, .095); }
.sgl-admin-nav button.is-active {
  border-color: rgba(136, 157, 214, .15);
  color: #f3f6ff;
  background: linear-gradient(90deg, rgba(100, 130, 244, .22), rgba(100, 130, 244, .07));
  box-shadow: inset 3px 0 var(--sgl-amber), inset 0 1px rgba(255,255,255,.04);
}
.sgl-admin-nav button.is-active svg { color: #afc0ff; }
.sgl-admin-nav b { color: #b6c3dd; background: rgba(162, 179, 224, .11); }
.sgl-admin-nav .sgl-nav-alert:not(:empty) { color: #ffd7d8; background: rgba(255, 114, 121, .18); }

.sgl-side-health {
  border-color: rgba(213, 225, 245, .09);
  border-radius: 11px;
  background: rgba(255,255,255,.035);
}
.sgl-side-health b { color: #dfe7f4; }
.sgl-side-health small { color: #8491a5; }
.sgl-side-user { border-top-color: rgba(213,225,245,.08); }
.sgl-side-user span { color: #d6ddec; }

.sgl-admin-topbar {
  min-height: 76px;
  padding: 0 34px;
  border-bottom-color: rgba(213, 225, 245, .075);
  background: rgba(8, 11, 17, .78);
  box-shadow: 0 1px rgba(255,255,255,.015);
  backdrop-filter: blur(16px);
}
.sgl-top-title { gap: 5px; }
.sgl-top-title span,
.sgl-screen-heading > div > span,
.sgl-panel header span,
.sgl-case-title > span,
.sgl-modal-header span { color: var(--sgl-amber); font-size: 10px; letter-spacing: .12em; }
.sgl-top-title strong { color: #f2f6fd; font-size: 17px; }
.sgl-top-actions { gap: 9px; }

.sgl-global-search,
.sgl-case-search,
.sgl-directory-search {
  min-height: 40px;
  border-color: rgba(210, 222, 244, .11);
  border-radius: 9px;
  color: #dfe6f4;
  background: rgba(14, 20, 30, .86);
  box-shadow: inset 0 1px rgba(255,255,255,.025);
}
.sgl-global-search { width: min(370px, 31vw); }
.sgl-global-search:focus-within,
.sgl-case-search:focus-within,
.sgl-directory-search:focus-within {
  border-color: rgba(119, 147, 255, .72);
  background: #111927;
  box-shadow: 0 0 0 3px rgba(103, 135, 255, .11);
}
.sgl-global-search input,
.sgl-case-search input,
.sgl-directory-search input { color: #ebf1fb; font-size: 13px; }
.sgl-global-search input::placeholder,
.sgl-case-search input::placeholder,
.sgl-directory-search input::placeholder { color: #718097; }
.sgl-global-search kbd { border-color: rgba(210,222,244,.12); color: #8290a6; background: rgba(255,255,255,.035); }
.sgl-search-results {
  border-color: rgba(210,222,244,.12);
  background: #121a28;
  box-shadow: 0 20px 48px rgba(0,0,0,.42);
}
.sgl-search-result { border-top-color: rgba(210,222,244,.075); color: #dbe5f5; }
.sgl-search-result:hover { background: rgba(119,147,255,.11); }
.sgl-search-result > span:first-child { color: #aebfff; background: rgba(119,147,255,.13); }
.sgl-search-result strong { color: #eff4fc; font-size: 13px; }
.sgl-search-result small { color: #98a6bb; font-size: 11px; }

.sgl-icon-button {
  border-color: rgba(210,222,244,.11);
  color: #b8c5dc;
  background: rgba(14,20,30,.86);
}
.sgl-icon-button:hover { border-color: rgba(154,177,255,.44); color: #eff4ff; background: #151f30; }
.sgl-inbox-button i { color: #fff; background: var(--sgl-red); box-shadow: 0 0 0 2px #0d121b; }

.sgl-button {
  min-height: 39px;
  border-radius: 9px;
  font-size: 12px;
  font-weight: 650;
  transition: transform 150ms ease, border-color 150ms ease, background 150ms ease, box-shadow 150ms ease;
}
.sgl-button:hover { transform: translateY(-1px); }
.sgl-button-primary {
  border-color: rgba(151,171,255,.48);
  color: #fff;
  background: linear-gradient(135deg, #6682f4, #536ed9);
  box-shadow: 0 7px 19px rgba(67,91,191,.22), inset 0 1px rgba(255,255,255,.16);
}
.sgl-button-primary:hover { background: linear-gradient(135deg, #7892ff, #5e78e6); box-shadow: 0 9px 24px rgba(67,91,191,.34), inset 0 1px rgba(255,255,255,.16); }
.sgl-button-secondary {
  border-color: rgba(210,222,244,.13);
  color: #c7d2e6;
  background: rgba(22,31,46,.9);
}
.sgl-button-secondary:hover { border-color: rgba(160,181,255,.45); color: #f1f5fd; background: #192338; }
.sgl-button-danger { border-color: rgba(255,124,130,.32); color: #ffb6b8; background: rgba(170,49,62,.12); }
.sgl-button-danger:hover { border-color: rgba(255,150,154,.55); color: #fff; background: rgba(201,59,71,.27); }

.sgl-admin-content { padding: 32px 34px 56px; }
.sgl-screen-heading { margin-bottom: 25px; }
.sgl-screen-heading h1,.sgl-case-title h1 { color: #f2f6fb; font-size: clamp(26px, 2.3vw, 32px); line-height: 1.12; letter-spacing: -.04em; }
.sgl-screen-heading p { max-width: 760px; color: #9ca9bc; font-size: 13px; line-height: 1.58; }

.sgl-today-summary { gap: 12px; }
.sgl-summary-item {
  min-height: 128px;
  padding: 18px;
  overflow: hidden;
  border-color: rgba(210,222,244,.09);
  border-radius: 12px;
  color: #dce6f8;
  background: linear-gradient(145deg, rgba(24,34,50,.94), rgba(14,21,32,.94));
  box-shadow: inset 0 1px rgba(255,255,255,.035), 0 10px 30px rgba(0,0,0,.11);
}
.sgl-summary-item::after { display: none; }
.sgl-summary-item::before { position:absolute; top:0; left:0; width:3px; height:100%; background:currentColor; content:""; opacity:.78; }
.sgl-summary-item small { color: #99a8bd; font-size: 11px; letter-spacing: .09em; }
.sgl-summary-item strong { margin-top: 10px; color: #f6f8fc; font-size: 29px; line-height: 1; }
.sgl-summary-item span { color: #7f8ea3; font-size: 12px; }
.sgl-summary-item[data-tone="amber"] { color: var(--sgl-amber); }
.sgl-summary-item[data-tone="red"] { color: var(--sgl-red); }
.sgl-summary-item[data-tone="violet"] { color: var(--sgl-violet); }

.sgl-today-grid { gap: 14px; }
.sgl-panel,
.sgl-case-card,
.sgl-table-card {
  border-color: rgba(210,222,244,.09);
  border-radius: 12px;
  background: linear-gradient(145deg, rgba(18,26,39,.98), rgba(13,19,29,.98));
  box-shadow: inset 0 1px rgba(255,255,255,.025), 0 12px 32px rgba(0,0,0,.105);
}
.sgl-panel { padding: 18px; }
.sgl-panel > header { min-height: 34px; padding-bottom: 13px; border-bottom-color: rgba(210,222,244,.075); }
.sgl-panel header h2 { color: #edf3fd; font-size: 16px; }
.sgl-text-button { color: #aabbff; font-size: 12px; }
.sgl-text-button:hover { color: #d8e0ff; }

.sgl-triage-list,.sgl-inbox-list,.sgl-activity-list,.sgl-health-list,.sgl-person-list { gap: 0; }
.sgl-triage-item,.sgl-inbox-item,.sgl-activity-item {
  min-height: 64px;
  padding: 11px 4px;
  border: 1px solid rgba(210,222,244,.085);
  border-top-color: rgba(210,222,244,.085);
  border-radius: 9px;
  color: #dce5f4;
  background: rgba(7,11,17,.52);
}
.sgl-triage-item:hover,.sgl-inbox-item:hover,.sgl-activity-item:hover { background: linear-gradient(90deg, rgba(111,139,255,.105), transparent); }
.sgl-triage-item strong,.sgl-inbox-item strong,.sgl-activity-item strong { color: #e9eff9; font-size: 13px; font-weight: 620; }
.sgl-triage-item small,.sgl-inbox-item small,.sgl-activity-item small { color: #8e9bb0; font-size: 11px; }
.sgl-item-case,.sgl-item-time,.sgl-priority-label { color: #a8b6cd; font-size: 11px; }
.sgl-priority-label { color: #f0c780; }
.sgl-ack-button { border-color: rgba(210,222,244,.13); color: #9eb2ff; background: rgba(119,147,255,.08); font-size: 11px; }
.sgl-ack-button:hover { border-color: rgba(144,166,255,.48); color: #e5ebff; background: rgba(119,147,255,.17); }
.sgl-inbox-open { display:block; min-width:0; padding:0; border:0; color:inherit; background:transparent; text-align:left; }
.sgl-health-row { min-height: 55px; border-top-color: rgba(210,222,244,.075); }
.sgl-health-row b { color: #e1e9f7; font-size: 13px; }
.sgl-health-row small,.sgl-health-row span { color: #8f9cb0; font-size: 11px; }
.sgl-empty { border-color: rgba(210,222,244,.09); color: #8d9aad; background: rgba(7,11,17,.35); font-size: 13px; }

.sgl-case-toolbar { gap: 13px; }
.sgl-saved-views { gap: 5px; }
.sgl-saved-views button {
  border-color: rgba(210,222,244,.1);
  color: #9eacc0;
  background: rgba(15,22,33,.72);
  font-size: 12px;
}
.sgl-saved-views button:hover { color: #e2e9f5; background: #151e2d; }
.sgl-saved-views button.is-active { border-color: rgba(158,181,255,.38); color: #e3eaff; background: rgba(95,124,235,.18); }
.sgl-table-card { overflow: auto; background: rgba(16,23,34,.9); }
.sgl-data-table th { border-bottom-color: rgba(210,222,244,.1); color: #8290a5; background: rgba(8,12,19,.35); font-size: 10px; letter-spacing: .1em; }
.sgl-data-table td { border-bottom-color: rgba(210,222,244,.075); }
.sgl-data-table tbody tr { background: transparent; }
.sgl-data-table tbody tr:hover { background: linear-gradient(90deg, rgba(96,123,232,.13), rgba(96,123,232,.03)); }
.sgl-table-main { color: #e7edf8; font-size: 13px; }
.sgl-table-sub { color: #8795aa; font-size: 11px; }
.sgl-case-number { color: #c9d6ff; font-size: 12px; }
.sgl-status-pill { border-color: rgba(210,222,244,.12); color: #bdc9da; background: rgba(210,222,244,.06); font-size: 10px; }
.sgl-status-pill[data-status="created"],.sgl-status-pill[data-status="awaiting_close"],.sgl-status-pill[data-status="published"] { color:#b9c8ff; background:rgba(111,139,255,.14); border-color:rgba(111,139,255,.24); }
.sgl-status-pill[data-status="awaiting_situation"],.sgl-status-pill[data-status="awaiting_link"],.sgl-status-pill[data-status="issued"],.sgl-status-pill[data-status="proofs_submitted"] { color:#f2ca84; background:rgba(208,170,100,.13); border-color:rgba(208,170,100,.22); }
.sgl-status-pill[data-status="error"],.sgl-status-pill[data-status="failed"],.sgl-status-pill[data-status="changed"] { color:#ffb3b6; background:rgba(255,111,120,.13); border-color:rgba(255,111,120,.23); }
.sgl-status-pill[data-status="closed"],.sgl-status-pill[data-status="archived"],.sgl-status-pill[data-status="confirmed"],.sgl-status-pill[data-status="tracked"] { color:#91e2b9; background:rgba(70,199,143,.12); border-color:rgba(70,199,143,.23); }
.sgl-table-action { border-color: rgba(210,222,244,.11); color: #aab9d1; background: rgba(255,255,255,.025); }
.sgl-table-action:hover { color: #dce5ff; border-color: rgba(156,178,255,.48); background: rgba(111,139,255,.14); }

.sgl-atlas-index,.sgl-directory-grid { gap: 14px; }
.sgl-case-picker button { border-top-color: rgba(210,222,244,.075); color: #d9e2f0; }
.sgl-case-picker button:hover { border-color: rgba(148,172,255,.32); background: rgba(102,130,244,.09); }
.sgl-case-picker b { color: #aec0ff; }
.sgl-case-picker strong { color: #e8eef8; font-size: 13px; }
.sgl-case-picker small { color: #8f9cb0; font-size: 11px; }
.sgl-artifact-grid article { border-color: rgba(210,222,244,.09); color: #adbeff; background: rgba(8,12,19,.32); }
.sgl-artifact-grid b { color: #e9effa; font-size: 13px; }
.sgl-artifact-grid span { color: #8d9aad; font-size: 11px; }
.sgl-forum-health { border-color: rgba(210,222,244,.11); color:#dce5f3; background:#111927; }
.sgl-forum-health.is-running { border-color: rgba(87,209,154,.26); background: rgba(39,127,91,.12); }
.sgl-forum-health.is-disabled { border-color: rgba(210,222,244,.1); background: rgba(13,19,29,.85); }
.sgl-forum-health strong { color: #eff5fc; font-size: 14px; }
.sgl-forum-health span { color: #98a5b8; font-size: 12px; }
.sgl-forum-health b { color: #8da1e9; background: rgba(111,139,255,.12); }
.sgl-person-row { border-top-color: rgba(210,222,244,.075); }
.sgl-avatar { color: #b6c6ff; background: rgba(111,139,255,.15); }
.sgl-avatar.is-lawyer { color: #d0bbff; background: rgba(176,145,255,.14); }
.sgl-person-row strong { color: #e6edf7; font-size: 13px; }
.sgl-person-row small { color: #8997ac; font-size: 11px; }

.sgl-case-workspace { padding-top: 1px; }
.sgl-case-header { padding: 4px 0 22px; }
.sgl-back-button { color: #a0b0c7; font-size: 12px; }
.sgl-back-button:hover { color: #c5d2ff; }
.sgl-case-title { margin-top: 16px; }
.sgl-case-title h1 { margin-top: 6px; }
.sgl-case-header-meta { gap: 6px; }
.sgl-case-health { display:flex; flex-wrap:wrap; gap:6px; margin-top:14px; }
.sgl-case-health button { display:grid; grid-template-columns:7px minmax(0,1fr) 12px; align-items:center; gap:6px; min-height:38px; max-width:280px; padding:6px 8px; border:1px solid rgba(210,222,244,.1); border-radius:8px; color:#bdc9db; background:rgba(7,11,17,.32); text-align:left; }
.sgl-case-health button:hover { border-color:rgba(151,173,255,.35); color:#e3ebf8; background:rgba(100,130,244,.09); }
.sgl-case-health button > i { width:6px; height:6px; border-radius:50%; background:#8a98ac; }
.sgl-case-health button[data-tone="ready"] > i { background:#57d19a; box-shadow:0 0 0 3px rgba(87,209,154,.1); }
.sgl-case-health button[data-tone="attention"] > i { background:#d0aa64; box-shadow:0 0 0 3px rgba(208,170,100,.1); }
.sgl-case-health button[data-tone="critical"] > i { background:#ff7c82; box-shadow:0 0 0 3px rgba(255,124,130,.1); }
.sgl-case-health button[data-tone="violet"] > i { background:#b091ff; box-shadow:0 0 0 3px rgba(176,145,255,.1); }
.sgl-case-health span { display:grid; min-width:0; gap:1px; }
.sgl-case-health b,.sgl-case-health small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.sgl-case-health b { color:inherit; font-size:10px; font-weight:650; }
.sgl-case-health small { color:#8391a5; font-size:9px; }
.sgl-case-health svg { width:12px; height:12px; color:#748299; }
.sgl-case-tabs {
  gap: 4px;
  margin: 0 0 18px;
  padding: 5px;
  overflow-x: auto;
  border: 1px solid rgba(210,222,244,.085);
  border-radius: 11px;
  background: rgba(12,18,27,.72);
  scrollbar-width: none;
}
.sgl-case-tabs::-webkit-scrollbar { display: none; }
.sgl-case-tabs button { flex: 0 0 auto; min-height: 34px; border-radius: 7px; color: #94a3b8; font-size: 12px; }
.sgl-case-tabs button:hover { color: #e0e7f5; background: rgba(255,255,255,.055); }
.sgl-case-tabs button.is-active { color: #f0f4fe; background: rgba(100,130,244,.22); box-shadow: inset 0 1px rgba(255,255,255,.08), 0 3px 10px rgba(0,0,0,.14); }
.sgl-case-layout { gap: 14px; grid-template-columns: minmax(218px,.82fr) minmax(0,1.65fr) minmax(246px,.9fr); }
.sgl-case-identity,.sgl-case-sidecar { gap: 12px; }
.sgl-case-card { padding: 16px; }
.sgl-case-card > span,.sgl-case-card > small { color: var(--sgl-amber); font-size: 10px; letter-spacing: .11em; }
.sgl-case-card h3 { color: #eef4fb; font-size: 15px; }
.sgl-person-fact { border-top-color: rgba(210,222,244,.075); }
.sgl-person-fact span { color: #8f9db1; font-size: 10px; }
.sgl-person-fact b { color: #dce5f3; font-size: 12px; }
.sgl-roadmap-step::after { background: rgba(210,222,244,.1); }
.sgl-roadmap-step i { border-color: rgba(210,222,244,.15); color: #67758a; background: #0b111a; }
.sgl-roadmap-step.is-done i { border-color: rgba(87,209,154,.46); color: #78e3af; background: rgba(70,199,143,.14); }
.sgl-roadmap-step.is-current i { border-color: rgba(140,164,255,.52); color: #c3d0ff; background: rgba(100,130,244,.16); }
.sgl-roadmap-step b { color: #a9b6c9; font-size: 11px; }
.sgl-side-action strong { color: #edf3fb; font-size: 13px; }
.sgl-side-action p { color: #94a2b5; font-size: 11px; }
.sgl-task-mini { border-top-color: rgba(210,222,244,.075); }
.sgl-task-mini strong { color: #e3eaf5; font-size: 11px; }
.sgl-task-mini small { color: #8e9cb1; font-size: 10px; }
.sgl-task-mini button { border-color: rgba(87,209,154,.32); color: #80e3b3; background: rgba(70,199,143,.09); }
.sgl-task-mini button:hover { border-color: rgba(87,209,154,.65); background: rgba(70,199,143,.18); }
.sgl-playbook { display:grid; gap:7px; margin-top:13px; padding-top:12px; border-top:1px solid rgba(210,222,244,.075); }
.sgl-playbook > small { color:#8f9db0; font-size:10px; letter-spacing:.05em; }
.sgl-playbook > div { display:flex; flex-wrap:wrap; gap:5px; }
.sgl-playbook button { min-height:27px; padding:0 7px; border:1px solid rgba(208,170,100,.24); border-radius:6px; color:#efc77f; background:rgba(208,170,100,.08); font-size:10px; font-weight:650; }
.sgl-playbook button:hover { border-color:rgba(208,170,100,.52); color:#ffe0a4; background:rgba(208,170,100,.17); }
.sgl-case-panel > .sgl-panel { min-height: 440px; }
.sgl-case-panel-header { border-bottom-color: rgba(210,222,244,.075); }
.sgl-case-panel-header h2 { color: #f0f4fb; font-size: 18px; }
.sgl-case-panel-header span { color: var(--sgl-amber); }
.sgl-fact-box { border-color: rgba(210,222,244,.085); background: rgba(7,11,17,.32); }
.sgl-fact-box span { color: #8492a7; font-size: 10px; }
.sgl-fact-box b { color: #e0e8f5; font-size: 13px; }
.sgl-fact-box a { color: #aabaff; }
.sgl-checklist-row { border-color: rgba(210,222,244,.08); background: rgba(7,11,17,.26); }
.sgl-checklist-row small { color: #8f9db1; font-size: 11px; }
.sgl-checklist-row.is-done i { color:#81e5b3; background:rgba(70,199,143,.14); }
.sgl-checklist-row.is-missing i { color:#f1c77d; background:rgba(208,170,100,.14); }
.sgl-message { border-top-color: rgba(210,222,244,.075); }
.sgl-message-head b { color:#e7eef8; font-size: 13px; }
.sgl-message-head small { color:#8d9bb0; font-size: 10px; }
.sgl-message p { color:#c0cbda; font-size: 13px; }
.sgl-message.is-web p { color:#b8c7ff; }
.sgl-attachments a { border-color:rgba(147,170,255,.25); color:#c1ceff; background:rgba(100,130,244,.1); font-size:10px; }

.sgl-message-compose,
.sgl-finance-form,
.sgl-forum-editor,
.sgl-atlas-composer { border-color: rgba(210,222,244,.1); background: rgba(7,11,17,.3); }
.sgl-message-compose textarea,
.sgl-admin textarea,
.sgl-admin input,
.sgl-admin select {
  border-color: rgba(210,222,244,.12);
  color: #e4ebf7;
  background: rgba(7,11,17,.58);
  font-size: 13px;
}
.sgl-admin textarea::placeholder,.sgl-admin input::placeholder { color:#6f7e93; }
.sgl-admin select option { color:#e4ebf7; background:#131c2a; }
.sgl-admin textarea:focus,.sgl-admin input:focus,.sgl-admin select:focus { border-color:rgba(124,151,255,.66); box-shadow:0 0 0 3px rgba(100,130,244,.1); }
.sgl-event { border-top-color: rgba(210,222,244,.075); }
.sgl-event strong { color:#dce5f2; font-size:13px; }
.sgl-event small { color:#8e9db2; font-size:11px; }
.sgl-receipt,.sgl-publication,.sgl-atlas-note { border-color:rgba(210,222,244,.09); background:rgba(7,11,17,.28); }
.sgl-receipt strong,.sgl-publication strong,.sgl-atlas-note strong { color:#e8eef8; font-size:13px; }
.sgl-receipt p,.sgl-publication p,.sgl-atlas-note p { color:#98a6b8; font-size:12px; }
.sgl-inline-action { border-color:rgba(210,222,244,.13); color:#bac7dc; background:rgba(255,255,255,.025); font-size:11px; }
.sgl-inline-action:hover { color:#e4ebff; border-color:rgba(151,173,255,.48); background:rgba(100,130,244,.13); }
.sgl-inline-action.is-danger:hover { color:#ffb9bc; border-color:rgba(255,124,130,.48); background:rgba(255,103,112,.14); }
.sgl-finance-form h3,.sgl-forum-editor h3,.sgl-atlas-composer h3 { color:#eaf0f9; font-size:15px; }
.sgl-forum-diff article { border-color:rgba(210,222,244,.09); background:rgba(6,10,16,.36); }
.sgl-forum-diff small { color:#8997aa; }
.sgl-forum-diff p { color:#b8c3d2; }
.sgl-atlas-note { border-left-color:var(--sgl-violet); }
.sgl-atlas-note-head b,.sgl-atlas-note .sgl-citations { color:#c7b5ff; }
.sgl-atlas-note-head small { color:#8f9eb3; }
.sgl-atlas-side { border-color:rgba(176,145,255,.22); color:#d7ccff; background:rgba(176,145,255,.07); }
.sgl-atlas-side b { color:#d6c7ff; }
.sgl-atlas-side p { color:#9ca8bc; }
.sgl-atlas-presets button { border-color:rgba(176,145,255,.28); color:#cebfff; background:rgba(176,145,255,.08); }
.sgl-atlas-presets button:hover { background:rgba(176,145,255,.17); }

.sgl-modal {
  border-color: rgba(210,222,244,.14);
  border-radius: 14px;
  color: #e7eef8;
  background: linear-gradient(145deg, #151e2c, #0d141f);
  box-shadow: 0 26px 80px rgba(0,0,0,.52), inset 0 1px rgba(255,255,255,.045);
}
.sgl-modal::backdrop { background: rgba(2,5,9,.75); backdrop-filter: blur(5px); }
.sgl-modal-header h2 { color:#f0f5fb; }
.sgl-modal-header p { color:#94a1b5; }
.sgl-modal-close { border-color:rgba(210,222,244,.12); color:#aab7cc; background:rgba(7,11,17,.35); }
.sgl-modal-close:hover { border-color:rgba(255,124,130,.44); color:#ffc5c7; background:rgba(255,103,112,.12); }
.sgl-stepper li { color:#718096; }
.sgl-stepper b { border-color:rgba(210,222,244,.14); background:rgba(7,11,17,.34); }
.sgl-stepper li.is-current { color:#bfcaff; }
.sgl-stepper li.is-current b { border-color:rgba(133,157,255,.55); background:rgba(100,130,244,.15); }
.sgl-stepper li.is-done { color:#84e6b5; }
.sgl-stepper li.is-done b { border-color:rgba(87,209,154,.45); background:rgba(70,199,143,.13); }
.sgl-form-note { border-color:rgba(126,151,255,.23); color:#acb9cc; background:rgba(100,130,244,.08); }
.sgl-review-row { border-bottom-color:rgba(210,222,244,.075); }
.sgl-review-row span { color:#8d9bb0; }
.sgl-review-row b { color:#e2eaf6; }
.sgl-review-warning { border-color:rgba(208,170,100,.25); color:#f1cc8a; background:rgba(208,170,100,.09); }
.sgl-switch span { background:#475468; }
.sgl-switch span::after { background:#e9eff9; box-shadow:0 1px 3px rgba(0,0,0,.45); }
.sgl-preflight-row { border-color:rgba(210,222,244,.09); color:#bcc8d8; background:rgba(7,11,17,.3); }
.sgl-preflight-row i { color:#8190a4; background:rgba(210,222,244,.08); }
.sgl-preflight-row.is-ok i { color:#85e6b6; background:rgba(70,199,143,.13); }
.sgl-preflight-row.is-warning i { color:#f2cb85; background:rgba(208,170,100,.13); }
.sgl-toast { border-color:rgba(87,209,154,.36); color:#b6f1d2; background:#12271f; box-shadow:0 18px 40px rgba(0,0,0,.34); }
.sgl-toast.is-error { border-color:rgba(255,124,130,.44); color:#ffc8ca; background:#34161c; }

/* A case needs room for facts, not two decorative rails. */
@media (max-width: 1480px) {
  .sgl-case-layout { grid-template-columns: minmax(216px, .7fr) minmax(0, 1.8fr); }
  .sgl-case-sidecar { grid-column: 1 / -1; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sgl-case-sidecar .sgl-case-card:last-child { grid-column: auto; }
}

/* Tablet is a first-class workspace width, not a broken desktop. */
@media (max-width: 1120px) {
  .sgl-admin { grid-template-columns: 76px minmax(0, 1fr); }
  .sgl-admin-sidebar { padding: 17px 10px; align-items: center; }
  .sgl-brand { justify-content:center; padding:0 0 23px; }
  .sgl-brand > span:last-child,.sgl-admin-nav button span,.sgl-admin-nav button b,.sgl-side-health,.sgl-side-user { display:none; }
  .sgl-admin-nav { width:100%; }
  .sgl-admin-nav button { grid-template-columns:1fr; justify-items:center; min-height:45px; padding:0; }
  .sgl-admin-nav button.is-active { box-shadow: inset 0 -2px var(--sgl-amber), inset 0 1px rgba(255,255,255,.04); }
  .sgl-admin-topbar { display:grid; grid-template-columns:minmax(0,1fr) auto; min-height:68px; padding:0 22px; gap:12px; }
  .sgl-global-search { width:min(260px, 31vw); }
  .sgl-admin-content { padding:27px 22px 48px; }
  .sgl-case-layout { grid-template-columns: minmax(198px,.72fr) minmax(0,1.55fr); }
  .sgl-case-sidecar { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sgl-case-sidecar .sgl-case-card:last-child { grid-column:1 / -1; }
}

@media (max-width: 760px) {
  .sgl-admin { display:block; background:#080b11; }
  .sgl-admin-sidebar { position:sticky; top:0; z-index:30; display:grid; grid-template-columns:auto minmax(0,1fr); width:100%; height:auto; min-height:0; padding:8px 10px; border-right:0; border-bottom:1px solid rgba(210,222,244,.075); background:#090e16; }
  .sgl-brand { padding:0 5px; }
  .sgl-brand-mark { width:31px; height:31px; }
  .sgl-admin-nav { display:flex; justify-content:flex-end; overflow:auto; }
  .sgl-admin-nav button { flex:0 0 44px; width:44px; min-height:44px; }
  .sgl-admin-topbar { grid-template-columns:minmax(0,1fr) auto; min-height:58px; padding:0 12px; }
  .sgl-top-title span { display:none; }
  .sgl-top-title strong { overflow:hidden; font-size:15px; text-overflow:ellipsis; white-space:nowrap; }
  .sgl-top-actions { gap:6px; }
  .sgl-global-search { width:38px; justify-content:center; padding:0; }
  .sgl-global-search input,.sgl-global-search kbd,.sgl-inbox-button { display:none; }
  .sgl-top-actions > .sgl-button { width:38px; padding:0; font-size:0; }
  .sgl-admin-content { padding:23px 12px 44px; }
  .sgl-screen-heading h1,.sgl-case-title h1 { font-size:27px; }
  .sgl-screen-heading p { font-size:12px; }
  .sgl-summary-item { min-height:108px; padding:14px; }
  .sgl-summary-item strong { font-size:25px; }
  .sgl-summary-item small { font-size:9px; }
  .sgl-summary-item span { font-size:10px; }
  .sgl-panel,.sgl-case-card { padding:15px; }
  .sgl-case-layout,.sgl-case-sidecar { grid-template-columns:1fr; }
  .sgl-case-sidecar { order:1; }
  .sgl-case-identity { order:2; }
  .sgl-case-panel { order:3; }
  .sgl-case-sidecar { grid-column:auto; }
  .sgl-case-sidecar .sgl-case-card:last-child { grid-column:auto; }
  .sgl-case-header-actions { gap:7px; }
  .sgl-case-tabs { margin-left:-1px; margin-right:-1px; }
  .sgl-data-table { min-width:760px; }
  .sgl-modal { width:calc(100vw - 18px); }
}

/* Team work queue */
.sgl-work-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 16px;
}
.sgl-work-summary-item {
  display: flex;
  min-height: 94px;
  align-items: center;
  gap: 13px;
  padding: 15px;
  border: 1px solid rgba(210,222,244,.09);
  border-radius: 11px;
  color: var(--sgl-blue);
  background: linear-gradient(145deg, rgba(20,29,43,.96), rgba(12,18,28,.96));
  box-shadow: inset 0 1px rgba(255,255,255,.025);
}
.sgl-work-summary-item[data-tone="red"] { color: var(--sgl-red); }
.sgl-work-summary-item[data-tone="violet"] { color: var(--sgl-violet); }
.sgl-work-summary-item[data-tone="amber"] { color: var(--sgl-amber); }
.sgl-work-summary-item > strong {
  display: grid;
  width: 47px;
  height: 47px;
  flex: 0 0 auto;
  place-items: center;
  border: 1px solid currentColor;
  border-radius: 50%;
  color: currentColor;
  background: color-mix(in srgb, currentColor 10%, transparent);
  font-size: 20px;
  line-height: 1;
}
.sgl-work-summary-item > div { display: grid; gap: 4px; min-width: 0; }
.sgl-work-summary-item b { color: #e9f0fa; font-size: 13px; }
.sgl-work-summary-item span { color: #8796aa; font-size: 11px; }
.sgl-work-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:13px; }
.sgl-work-toolbar .sgl-case-search { width: min(300px, 34vw); }
.sgl-work-table-card { overflow:auto; }
.sgl-work-table { min-width: 900px; }
.sgl-work-table td:first-child { min-width: 250px; }
.sgl-work-table td:nth-child(2) { min-width: 140px; }
.sgl-work-table td:nth-child(3) { min-width: 135px; }
.sgl-work-table td:nth-child(4) { min-width: 155px; }
.sgl-work-task-name,
.sgl-work-case {
  display: grid;
  width: 100%;
  gap: 4px;
  padding: 0;
  border: 0;
  color: inherit;
  background: transparent;
  text-align: left;
}
.sgl-work-task-name strong { color:#e8eef8; font-size:13px; font-weight:640; }
.sgl-work-task-name small { overflow:hidden; color:#8998ad; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.sgl-work-task-name:hover strong { color:#c8d4ff; }
.sgl-work-case { gap:3px; }
.sgl-work-case b { color:#b9c8ff; font-family:ui-monospace, "SFMono-Regular", Consolas, monospace; font-size:11px; }
.sgl-work-case span { overflow:hidden; color:#9aa8bc; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.sgl-work-case:hover b,.sgl-work-case:hover span { color:#d5defe; }
.sgl-work-owner,.sgl-work-due { color:#c7d2e2; font-size:12px; }
.sgl-work-owner.is-empty { color:#f0ca84; }
.sgl-work-due.is-overdue { color:#ffafb3; }
.sgl-priority-chip {
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 8px;
  border:1px solid rgba(210,222,244,.12);
  border-radius:99px;
  color:#b2bfd2;
  background:rgba(210,222,244,.055);
  font-size:10px;
  font-weight:650;
}
.sgl-priority-chip[data-priority="critical"] { border-color:rgba(255,124,130,.28); color:#ffb6ba; background:rgba(255,103,112,.13); }
.sgl-priority-chip[data-priority="high"] { border-color:rgba(208,170,100,.3); color:#f1ca84; background:rgba(208,170,100,.12); }
.sgl-priority-chip[data-priority="low"] { border-color:rgba(150,170,255,.24); color:#b6c5ff; background:rgba(100,130,244,.1); }
.sgl-work-row-actions { display:flex; justify-content:flex-end; gap:6px; }
.sgl-work-action {
  display:grid;
  width:29px;
  height:29px;
  place-items:center;
  padding:0;
  border:1px solid rgba(210,222,244,.12);
  border-radius:7px;
  color:#aebbd0;
  background:rgba(255,255,255,.025);
}
.sgl-work-action svg { width:15px; height:15px; }
.sgl-work-action:hover { border-color:rgba(148,171,255,.45); color:#e4ebff; background:rgba(100,130,244,.13); }
.sgl-work-action.is-complete { border-color:rgba(87,209,154,.29); color:#82e3b3; background:rgba(70,199,143,.09); }
.sgl-work-action.is-complete:hover { border-color:rgba(87,209,154,.62); background:rgba(70,199,143,.17); }

@media (max-width: 1050px) {
  .sgl-work-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .sgl-work-toolbar { align-items:stretch; flex-direction:column; }
  .sgl-work-toolbar .sgl-case-search { width:100%; }
  .sgl-work-summary { gap:8px; margin-bottom:13px; }
  .sgl-work-summary-item { min-height:78px; gap:9px; padding:11px; }
  .sgl-work-summary-item > strong { width:35px; height:35px; font-size:16px; }
}

/* Evidence Vault: files and sources remain useful after the chat scrolls away. */
.sgl-evidence-overview {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-bottom:14px;
}
.sgl-evidence-overview > section {
  display:grid;
  gap:4px;
  min-height:91px;
  align-content:center;
  padding:14px;
  border:1px solid rgba(210,222,244,.085);
  border-radius:10px;
  background:rgba(7,11,17,.31);
}
.sgl-evidence-overview span { color:#8b99ad; font-size:10px; letter-spacing:.08em; text-transform:uppercase; }
.sgl-evidence-overview strong { color:#edf3fb; font-size:22px; line-height:1; }
.sgl-evidence-overview small { color:#8795a9; font-size:11px; }
.sgl-evidence-layout { display:grid; grid-template-columns:minmax(0,1fr) 246px; gap:14px; }
.sgl-evidence-vault {
  min-width:0;
  padding:15px;
  border:1px solid rgba(210,222,244,.09);
  border-radius:11px;
  background:rgba(7,11,17,.28);
}
.sgl-evidence-vault > header { display:flex; align-items:center; justify-content:space-between; gap:10px; padding-bottom:12px; border-bottom:1px solid rgba(210,222,244,.075); }
.sgl-evidence-vault > header span,.sgl-evidence-gates > span { color:var(--sgl-amber); font-size:10px; font-weight:650; letter-spacing:.1em; }
.sgl-evidence-vault > header h3,.sgl-evidence-gates h3 { margin:5px 0 0; color:#ebf1fa; font-size:15px; letter-spacing:-.02em; }
.sgl-evidence-filters { display:flex; flex-wrap:wrap; gap:5px; padding:11px 0; }
.sgl-evidence-filters button {
  display:inline-flex;
  min-height:28px;
  align-items:center;
  gap:6px;
  padding:0 8px;
  border:1px solid rgba(210,222,244,.1);
  border-radius:6px;
  color:#98a6ba;
  background:rgba(255,255,255,.025);
  font-size:11px;
}
.sgl-evidence-filters button b { color:#74839a; font-family:ui-monospace,monospace; font-size:10px; }
.sgl-evidence-filters button:hover { color:#dce5f5; border-color:rgba(150,174,255,.32); }
.sgl-evidence-filters button.is-active { color:#dfe7ff; border-color:rgba(137,160,255,.4); background:rgba(100,130,244,.16); }
.sgl-evidence-filters button.is-active b { color:#c3d1ff; }
.sgl-evidence-list { display:grid; gap:7px; }
.sgl-evidence-item {
  display:grid;
  grid-template-columns:34px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  min-height:65px;
  padding:9px;
  border:1px solid rgba(210,222,244,.075);
  border-radius:8px;
  background:rgba(13,19,29,.74);
}
.sgl-evidence-item:hover { border-color:rgba(150,174,255,.26); background:rgba(16,24,37,.9); }
.sgl-evidence-icon { display:grid; width:32px; height:32px; place-items:center; border:1px solid rgba(150,174,255,.2); border-radius:8px; color:#b9c8ff; background:rgba(100,130,244,.1); }
.sgl-evidence-item[data-type="image"] .sgl-evidence-icon { color:#d8baff; border-color:rgba(176,145,255,.24); background:rgba(176,145,255,.1); }
.sgl-evidence-item[data-type="link"] .sgl-evidence-icon { color:#f0ca84; border-color:rgba(208,170,100,.23); background:rgba(208,170,100,.1); }
.sgl-evidence-icon svg { width:16px; height:16px; }
.sgl-evidence-copy { display:grid; min-width:0; gap:2px; }
.sgl-evidence-copy small { overflow:hidden; color:#8a98ac; font-size:9px; letter-spacing:.04em; text-overflow:ellipsis; text-transform:uppercase; white-space:nowrap; }
.sgl-evidence-copy strong { overflow:hidden; color:#e4ebf6; font-size:12px; font-weight:620; text-overflow:ellipsis; white-space:nowrap; }
.sgl-evidence-copy > span { overflow:hidden; color:#8290a4; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.sgl-evidence-actions { display:flex; align-items:center; gap:5px; }
.sgl-evidence-open { display:inline-flex; min-height:27px; align-items:center; gap:4px; padding:0 7px; border:1px solid rgba(210,222,244,.1); border-radius:6px; color:#bac8e2; background:rgba(255,255,255,.025); font-size:10px; font-weight:650; text-decoration:none; }
.sgl-evidence-open svg { width:12px; height:12px; }
.sgl-evidence-open:hover { color:#dce5ff; border-color:rgba(150,174,255,.38); background:rgba(100,130,244,.11); }
.sgl-evidence-task { display:grid; width:27px; height:27px; place-items:center; padding:0; border:1px solid rgba(208,170,100,.22); border-radius:6px; color:#eeca87; background:rgba(208,170,100,.08); }
.sgl-evidence-task:hover { border-color:rgba(208,170,100,.48); color:#ffe0a4; background:rgba(208,170,100,.15); }
.sgl-evidence-task svg { width:14px; height:14px; }
.sgl-evidence-gates { display:grid; align-content:start; gap:7px; padding:15px; border:1px solid rgba(210,222,244,.09); border-radius:11px; background:rgba(7,11,17,.28); }
.sgl-evidence-gates h3 { margin-bottom:5px; }
.sgl-evidence-gate { display:grid; grid-template-columns:22px minmax(0,1fr); gap:8px; align-items:center; padding:8px 0; border-top:1px solid rgba(210,222,244,.07); }
.sgl-evidence-gate i { display:grid; width:20px; height:20px; place-items:center; border-radius:50%; color:#8a98aa; background:rgba(210,222,244,.08); }
.sgl-evidence-gate i svg { width:12px; height:12px; }
.sgl-evidence-gate.is-ready i { color:#83e6b5; background:rgba(70,199,143,.14); }
.sgl-evidence-gate b,.sgl-evidence-gate small { display:block; }
.sgl-evidence-gate b { color:#d6dfec; font-size:11px; }
.sgl-evidence-gate small { margin-top:2px; color:#8290a4; font-size:10px; line-height:1.35; }
.sgl-evidence-record { margin-top:14px; border:1px solid rgba(210,222,244,.09); border-radius:10px; background:rgba(7,11,17,.25); }
.sgl-evidence-record summary { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:13px 14px; cursor:pointer; list-style:none; }
.sgl-evidence-record summary::-webkit-details-marker { display:none; }
.sgl-evidence-record summary span { display:grid; gap:3px; }
.sgl-evidence-record summary b { color:#dfe7f3; font-size:12px; }
.sgl-evidence-record summary small { color:#8997aa; font-size:10px; }
.sgl-evidence-record summary > svg { width:16px; height:16px; color:#aab8cf; transition:transform 150ms ease; }
.sgl-evidence-record[open] summary { border-bottom:1px solid rgba(210,222,244,.075); }
.sgl-evidence-record[open] summary > svg { transform:rotate(90deg); }
.sgl-evidence-record .sgl-evidence-editor { padding:14px; }
.sgl-evidence-editor label { color:#a9b7c9; font-size:11px; }

@media (max-width: 1120px) {
  .sgl-evidence-layout { grid-template-columns:1fr; }
  .sgl-evidence-gates { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sgl-evidence-gates > span,.sgl-evidence-gates h3 { grid-column:1 / -1; }
}
@media (max-width: 760px) {
  .sgl-evidence-overview { grid-template-columns:1fr; }
  .sgl-evidence-overview > section { min-height:66px; grid-template-columns:auto 1fr; column-gap:10px; align-items:center; }
  .sgl-evidence-overview span { grid-column:1 / -1; }
  .sgl-evidence-overview small { grid-column:2; }
  .sgl-evidence-gates { grid-template-columns:1fr; }
  .sgl-evidence-gates > span,.sgl-evidence-gates h3 { grid-column:auto; }
  .sgl-evidence-item { grid-template-columns:32px minmax(0,1fr); }
  .sgl-evidence-actions { grid-column:2; justify-content:flex-start; }
}

/* On compact widths, task rows become legible work cards instead of a hidden spreadsheet. */
@media (max-width: 960px) {
  .sgl-work-table-card { overflow:visible; background:transparent; border:0; box-shadow:none; }
  .sgl-work-table,.sgl-work-table tbody { display:grid; width:100%; min-width:0; }
  .sgl-work-table { border-collapse:separate; border-spacing:0; }
  .sgl-work-table thead { display:none; }
  .sgl-work-table tbody { gap:9px; }
  .sgl-work-table tr {
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:9px 14px;
    padding:13px;
    border:1px solid rgba(210,222,244,.09);
    border-radius:10px;
    background:linear-gradient(145deg,rgba(18,26,39,.96),rgba(11,17,26,.96));
    box-shadow:inset 0 1px rgba(255,255,255,.025);
  }
  .sgl-work-table tr::before { position:absolute; top:12px; bottom:12px; left:0; width:3px; border-radius:0 4px 4px 0; background:#7894ff; content:""; }
  .sgl-work-table tr[data-task-priority="critical"]::before { background:#ff7c82; }
  .sgl-work-table tr[data-task-priority="high"]::before { background:#d0aa64; }
  .sgl-work-table td,
  .sgl-work-table td:first-child,
  .sgl-work-table td:nth-child(n) { display:block; width:auto; min-width:0; padding:0; border:0; }
  .sgl-work-table td:nth-child(1) { grid-column:1; padding-left:4px; }
  .sgl-work-table td:nth-child(7) { grid-column:2; grid-row:1; align-self:start; }
  .sgl-work-table td:nth-child(n+2):not(:nth-child(7)) { display:flex; align-items:center; gap:6px; min-width:0; }
  .sgl-work-table td:nth-child(n+2):not(:nth-child(7))::before { flex:0 0 auto; color:#738197; font-size:9px; font-weight:650; letter-spacing:.08em; }
  .sgl-work-table td:nth-child(2)::before { content:"КЕЙС"; }
  .sgl-work-table td:nth-child(3)::before { content:"ИСПОЛНИТЕЛЬ"; }
  .sgl-work-table td:nth-child(4)::before { content:"СРОК"; }
  .sgl-work-table td:nth-child(5)::before { content:"ПРИОРИТЕТ"; }
  .sgl-work-table td:nth-child(6)::before { content:"СТАТУС"; }
  .sgl-work-case { display:flex; align-items:center; gap:6px; width:auto; }
  .sgl-work-case span { max-width:240px; }
  .sgl-work-task-name small { max-width:62ch; }
}

/* Private decision log: a calm, auditable handoff space for the team. */
.sgl-decision-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-bottom:14px; }
.sgl-decision-metrics article { display:grid; gap:4px; min-height:86px; align-content:center; padding:14px; border:1px solid rgba(210,222,244,.085); border-radius:10px; background:rgba(7,11,17,.3); }
.sgl-decision-metrics span { color:#8997aa; font-size:10px; letter-spacing:.08em; text-transform:uppercase; }
.sgl-decision-metrics strong { color:#edf3fb; font-size:21px; line-height:1; }
.sgl-decision-metrics small { color:#8290a4; font-size:10px; line-height:1.35; }
.sgl-decision-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(270px,.66fr); gap:14px; }
.sgl-decision-list { display:grid; align-content:start; gap:8px; min-width:0; }
.sgl-decision-card { padding:14px; border:1px solid rgba(210,222,244,.085); border-left:3px solid #8da5ff; border-radius:9px; background:rgba(7,11,17,.32); }
.sgl-decision-card[data-kind="risk"] { border-left-color:#ff7c82; }
.sgl-decision-card[data-kind="handoff"] { border-left-color:#d0aa64; }
.sgl-decision-card[data-kind="note"] { border-left-color:#b091ff; }
.sgl-decision-card[data-status="acknowledged"],.sgl-decision-card[data-status="superseded"] { opacity:.65; }
.sgl-decision-card header { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; }
.sgl-decision-card header div { min-width:0; }
.sgl-decision-card header span { color:#a9baff; font-size:9px; font-weight:650; letter-spacing:.09em; text-transform:uppercase; }
.sgl-decision-card[data-kind="risk"] header span { color:#ffb0b5; }
.sgl-decision-card[data-kind="handoff"] header span { color:#efc77f; }
.sgl-decision-card[data-kind="note"] header span { color:#d1c0ff; }
.sgl-decision-card h3 { margin:5px 0 0; color:#e7edf7; font-size:14px; line-height:1.35; }
.sgl-decision-card header > b { flex:0 0 auto; padding:4px 6px; border:1px solid rgba(210,222,244,.1); border-radius:99px; color:#a7b5c9; background:rgba(210,222,244,.055); font-size:9px; font-weight:650; }
.sgl-decision-card[data-status="open"] header > b { color:#f1ca84; border-color:rgba(208,170,100,.25); background:rgba(208,170,100,.1); }
.sgl-decision-card[data-status="read"] header > b { color:#b8c7ff; border-color:rgba(119,147,255,.24); background:rgba(119,147,255,.1); }
.sgl-decision-card p { margin:9px 0 0; color:#abb8ca; font-size:12px; line-height:1.5; white-space:pre-wrap; }
.sgl-decision-card footer { display:flex; align-items:center; justify-content:space-between; gap:9px; margin-top:11px; padding-top:10px; border-top:1px solid rgba(210,222,244,.07); }
.sgl-decision-card footer > span { color:#8090a5; font-size:10px; }
.sgl-decision-composer { display:grid; align-content:start; gap:10px; padding:15px; border:1px solid rgba(176,145,255,.19); border-radius:11px; background:linear-gradient(145deg,rgba(176,145,255,.09),rgba(7,11,17,.34)); }
.sgl-decision-composer header span { color:#d0c0ff; font-size:9px; font-weight:650; letter-spacing:.1em; }
.sgl-decision-composer h3 { margin:5px 0 0; color:#ebeefa; font-size:16px; }
.sgl-decision-composer p { margin:6px 0 0; color:#9daabd; font-size:11px; line-height:1.45; }
.sgl-decision-composer label { display:grid; gap:6px; color:#a6b4c7; font-size:11px; font-weight:650; }
.sgl-decision-composer textarea { min-height:144px; resize:vertical; }
@media (max-width: 1120px) {
  .sgl-decision-layout { grid-template-columns:1fr; }
}
@media (max-width: 760px) {
  .sgl-decision-metrics { grid-template-columns:1fr; }
  .sgl-decision-metrics article { min-height:65px; grid-template-columns:auto 1fr; column-gap:10px; align-items:center; }
  .sgl-decision-metrics span { grid-column:1 / -1; }
  .sgl-decision-metrics small { grid-column:2; }
  .sgl-decision-card footer { align-items:flex-start; flex-direction:column; }
}

/* Forum Watch has a proper control lane, not just a passive publication table. */
.sgl-forum-alert-center { display:grid; gap:11px; margin:14px 0; padding:16px; border:1px solid rgba(208,170,100,.18); border-radius:12px; background:linear-gradient(145deg,rgba(208,170,100,.075),rgba(14,20,30,.88)); }
.sgl-forum-alert-center > header { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.sgl-forum-alert-center > header span { color:#edc77f; font-size:9px; font-weight:650; letter-spacing:.1em; }
.sgl-forum-alert-center > header h2 { margin:5px 0 0; color:#edf3fb; font-size:16px; }
.sgl-forum-alert-center > header > b { flex:0 0 auto; padding:5px 7px; border:1px solid rgba(208,170,100,.22); border-radius:99px; color:#f1ca84; background:rgba(208,170,100,.09); font-size:10px; }
.sgl-forum-alert-list { display:grid; gap:7px; }
.sgl-forum-alert { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; padding:11px; border:1px solid rgba(210,222,244,.075); border-left:3px solid #8da5ff; border-radius:8px; background:rgba(7,11,17,.34); }
.sgl-forum-alert.is-pending { border-left-color:#efb55b; }
.sgl-forum-alert[data-severity="critical"] { border-left-color:#ff7c82; }
.sgl-forum-alert.is-acknowledged { opacity:.62; }
.sgl-forum-alert-copy { display:grid; min-width:0; gap:3px; }
.sgl-forum-alert-copy > span { color:#d1b37d; font-size:9px; font-weight:650; letter-spacing:.08em; text-transform:uppercase; }
.sgl-forum-alert-copy strong { color:#e6edf8; font-size:12px; }
.sgl-forum-alert-copy p { margin:1px 0; color:#9aa8bb; font-size:11px; line-height:1.42; }
.sgl-forum-alert-copy small { color:#7f8da1; font-size:10px; }
.sgl-forum-alert-actions { display:flex; flex-wrap:wrap; align-content:center; justify-content:flex-end; gap:5px; max-width:280px; }
@media (max-width: 760px) {
  .sgl-forum-alert-center { padding:13px; }
  .sgl-forum-alert-center > header { align-items:flex-start; flex-direction:column; }
  .sgl-forum-alert { grid-template-columns:1fr; }
  .sgl-forum-alert-actions { justify-content:flex-start; max-width:none; }
}

/* Discord replies keep the discussion legible when a case grows beyond a short chat. */
.sgl-message { position:relative; padding:14px 0; transition:background 180ms ease, box-shadow 180ms ease; }
.sgl-message.is-highlighted { margin:0 -8px; padding:14px 8px; border-radius:8px; background:rgba(100,130,244,.12); box-shadow:inset 2px 0 #91a9ff; animation:sgl-message-pulse 1.7s ease both; }
.sgl-message-quote { display:grid; width:100%; gap:3px; margin-top:9px; padding:7px 9px; border:1px solid rgba(147,170,255,.16); border-left:2px solid rgba(142,164,255,.72); border-radius:6px; color:#aebce0; background:rgba(100,130,244,.065); text-align:left; }
.sgl-message-quote:hover { border-color:rgba(147,170,255,.42); color:#dce5ff; background:rgba(100,130,244,.12); }
.sgl-message-quote span { color:#91a4d8; font-size:9px; font-weight:650; letter-spacing:.075em; text-transform:uppercase; }
.sgl-message-quote b { overflow:hidden; color:#b8c5dc; font-size:11px; font-weight:500; line-height:1.35; text-overflow:ellipsis; white-space:nowrap; }
.sgl-message-actions { display:flex; justify-content:flex-end; margin-top:8px; opacity:0; transition:opacity 150ms ease; }
.sgl-message:hover .sgl-message-actions,.sgl-message:focus-within .sgl-message-actions { opacity:1; }
.sgl-message-actions button { min-height:26px; padding:0 7px; border:1px solid rgba(210,222,244,.11); border-radius:6px; color:#97a8c3; background:rgba(255,255,255,.02); font-size:10px; font-weight:650; }
.sgl-message-actions button:hover { border-color:rgba(147,170,255,.4); color:#d8e2ff; background:rgba(100,130,244,.12); }
.sgl-message-replying { display:grid; grid-column:1 / -1; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:9px; padding:9px 10px; border:1px solid rgba(176,145,255,.24); border-left:3px solid #b091ff; border-radius:8px; background:linear-gradient(100deg,rgba(176,145,255,.12),rgba(100,130,244,.05)); }
.sgl-message-replying > div { display:grid; min-width:0; gap:2px; }
.sgl-message-replying span { color:#d2c0ff; font-size:9px; font-weight:650; letter-spacing:.09em; }
.sgl-message-replying b { color:#e9e8ff; font-size:12px; }
.sgl-message-replying small { overflow:hidden; color:#a5b1c6; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.sgl-message-replying button { display:grid; width:27px; height:27px; place-items:center; padding:0; border:1px solid rgba(210,222,244,.12); border-radius:6px; color:#a9b8cf; background:rgba(7,11,17,.25); }
.sgl-message-replying button:hover { border-color:rgba(255,124,130,.45); color:#ffc4c7; background:rgba(255,103,112,.12); }
.sgl-message-replying button svg { width:14px; height:14px; }
.sgl-message-compose-actions { display:grid; align-content:start; justify-items:end; gap:7px; }
.sgl-message-upload { max-width:142px; color:#8e9cb0; font-size:10px; }
@keyframes sgl-message-pulse { 0% { background:rgba(100,130,244,.22); } 100% { background:rgba(100,130,244,.12); } }
@media (max-width: 760px) {
  .sgl-message-actions { opacity:1; }
  .sgl-message-compose { grid-template-columns:1fr; }
  .sgl-message-compose-actions { display:flex; align-items:center; justify-content:space-between; }
  .sgl-message-upload { max-width:calc(100vw - 180px); }
}

/* The compact workspace stays focused on the selected case tab instead of its rails. */
.sgl-message-attach { position:relative; display:inline-flex; min-height:33px; align-items:center; gap:6px; padding:0 9px; border:1px solid rgba(210,222,244,.12); border-radius:7px; color:#afbdd2; background:rgba(255,255,255,.025); font-size:10px; font-weight:650; cursor:pointer; }
.sgl-message-attach:hover,.sgl-message-attach:focus-within { border-color:rgba(147,170,255,.45); color:#dfe7ff; background:rgba(100,130,244,.11); }
.sgl-message-attach svg { width:14px; height:14px; }
.sgl-message-attach input { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap; }
.sgl-message-files { display:flex; grid-column:1 / -1; flex-wrap:wrap; gap:5px; }
.sgl-message-files:empty { display:none; }
.sgl-message-files > span { display:inline-flex; max-width:100%; min-height:25px; align-items:center; gap:5px; padding:0 7px; border:1px solid rgba(147,170,255,.2); border-radius:6px; color:#b6c5df; background:rgba(100,130,244,.075); }
.sgl-message-files svg { flex:0 0 auto; width:12px; height:12px; color:#b9c8ff; }
.sgl-message-files b { overflow:hidden; font-size:10px; font-weight:600; text-overflow:ellipsis; white-space:nowrap; }
.sgl-message-files small { flex:0 0 auto; color:#7f90a8; font-size:9px; }

@media (min-width: 761px) and (max-width: 1120px) {
  .sgl-global-search { width:clamp(210px,29vw,300px); }
  .sgl-global-search kbd { display:none; }
  .sgl-case-header { padding-bottom:15px; }
  .sgl-case-title { margin-top:11px; }
  .sgl-case-health { margin-top:10px; }
}

@media (max-width: 760px) {
  .sgl-admin-sidebar { display:flex; flex-direction:row; align-items:center; gap:9px; }
  .sgl-brand { flex:0 0 42px; min-width:42px; min-height:44px; padding:0; }
  .sgl-brand-mark { width:31px; height:31px; }
  .sgl-admin-nav { flex:1 1 auto; min-width:0; justify-content:flex-start; padding:0 1px; overflow-y:hidden; scrollbar-width:none; scroll-padding-inline:4px; scroll-snap-type:x proximity; }
  .sgl-admin-nav::-webkit-scrollbar { display:none; }
  .sgl-admin-nav button { flex:0 0 44px; width:44px; min-width:44px; scroll-snap-align:start; }
  .sgl-admin-topbar { top:61px; }
  .sgl-case-header { padding-bottom:14px; }
  .sgl-case-title { margin-top:11px; }
  .sgl-case-health { margin-top:10px; }
  .sgl-case-tabs { position:sticky; top:119px; z-index:19; margin-bottom:13px; padding-right:22px; scroll-padding-inline:45%; background:linear-gradient(90deg,rgba(12,18,27,.98),rgba(12,18,27,.94) 84%,rgba(12,18,27,.72)); box-shadow:0 10px 16px rgba(4,7,12,.26); }
  .sgl-case-tabs::after { position:absolute; top:6px; right:5px; bottom:6px; width:17px; pointer-events:none; background:linear-gradient(90deg,transparent,rgba(12,18,27,.96)); content:""; }
  .sgl-case-layout { gap:13px; }
  .sgl-case-panel { order:1; scroll-margin-top:176px; }
  .sgl-case-sidecar { order:2; }
  .sgl-case-identity { order:3; }
  .sgl-admin label { color:#b7c4d5; font-size:12px; }
  .sgl-message-compose-actions { min-height:38px; }
  .sgl-message-attach { min-height:38px; padding:0 11px; font-size:11px; }
  .sgl-message-files > span { max-width:100%; }
}

/* Member picker: a real team directory, not a fragile Discord-ID memory test. */
.sgl-visually-hidden {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0 0 0 0);
  white-space:nowrap;
  border:0;
}
.sgl-member-field { display:grid; min-width:0; gap:6px; }
.sgl-member-field > label { color:#a6b4c7; font-size:11px; font-weight:650; }
.sgl-member-field > small { color:#7f8da1; font-size:10px; line-height:1.4; }
.sgl-member-field-control { display:flex; min-width:0; gap:7px; }
.sgl-member-field-control > input,
.sgl-member-field-control > select { width:auto; min-width:0; flex:1 1 auto; }
.sgl-member-field-control > input.is-picked { border-color:rgba(87,209,154,.38); color:#d6f5e4; background:rgba(70,199,143,.075); }
.sgl-member-picker-trigger {
  display:inline-flex;
  min-height:38px;
  flex:0 0 auto;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:0 10px;
  border:1px solid rgba(147,170,255,.26);
  border-radius:8px;
  color:#c6d2ff;
  background:linear-gradient(145deg,rgba(100,130,244,.15),rgba(100,130,244,.06));
  box-shadow:inset 0 1px rgba(255,255,255,.035);
  font-size:10px;
  font-weight:700;
  letter-spacing:.01em;
  white-space:nowrap;
  transition:border-color 150ms ease, color 150ms ease, background 150ms ease, transform 150ms ease;
}
.sgl-member-picker-trigger svg { width:14px; height:14px; }
.sgl-member-picker-trigger:hover { border-color:rgba(164,185,255,.56); color:#edf2ff; background:rgba(100,130,244,.22); }
.sgl-member-picker-trigger:active { transform:translateY(1px); }
.sgl-member-picker-trigger:focus-visible,
.sgl-member-picker-filters button:focus-visible,
.sgl-member-picker-result:focus-visible,
.sgl-member-picker-footer button:focus-visible { outline:2px solid #9db2ff; outline-offset:2px; }

.sgl-member-picker-modal { width:min(618px,calc(100vw - 28px)); }
.sgl-member-picker { display:grid; gap:13px; padding:21px; }
.sgl-member-picker-context {
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  column-gap:10px;
  row-gap:3px;
  padding:10px 11px;
  border:1px solid rgba(176,145,255,.2);
  border-radius:9px;
  background:linear-gradient(105deg,rgba(176,145,255,.115),rgba(100,130,244,.055));
}
.sgl-member-picker-context > span { color:#cfbdff; font-size:9px; font-weight:700; letter-spacing:.1em; }
.sgl-member-picker-context > strong { overflow:hidden; color:#edf1ff; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
.sgl-member-picker-context > small { grid-column:1 / -1; color:#9eaac0; font-size:10px; line-height:1.4; }
.sgl-member-picker-search { position:relative; display:grid; min-width:0; }
.sgl-member-picker-search > svg { position:absolute; z-index:1; top:50%; left:12px; width:16px; height:16px; color:#8999b1; transform:translateY(-50%); pointer-events:none; }
.sgl-member-picker-search input { min-height:43px; padding-left:38px !important; border-radius:9px !important; }
.sgl-member-picker-filters { display:flex; flex-wrap:wrap; gap:6px; margin-top:-3px; }
.sgl-member-picker-filters button {
  min-height:28px;
  padding:0 9px;
  border:1px solid rgba(210,222,244,.11);
  border-radius:99px;
  color:#91a0b5;
  background:rgba(255,255,255,.025);
  font-size:10px;
  font-weight:650;
  transition:border-color 150ms ease, color 150ms ease, background 150ms ease;
}
.sgl-member-picker-filters button:hover { border-color:rgba(153,176,255,.33); color:#ced9f5; background:rgba(100,130,244,.08); }
.sgl-member-picker-filters button[aria-pressed="true"] { border-color:rgba(155,177,255,.48); color:#e1e8ff; background:rgba(100,130,244,.16); }
.sgl-member-picker-results {
  display:grid;
  min-height:208px;
  max-height:min(348px,36dvh);
  gap:7px;
  overflow:auto;
  padding:7px;
  border:1px solid rgba(210,222,244,.095);
  border-radius:10px;
  background:rgba(5,9,15,.42);
  scrollbar-color:rgba(142,164,255,.55) transparent;
}
.sgl-member-picker-results[aria-busy="true"] { opacity:.68; cursor:progress; }
.sgl-member-picker-empty {
  display:grid;
  min-height:191px;
  place-content:center;
  justify-items:center;
  gap:7px;
  padding:20px;
  border:1px dashed rgba(210,222,244,.13);
  border-radius:7px;
  color:#8391a6;
  text-align:center;
}
.sgl-member-picker-empty svg { width:23px; height:23px; margin-bottom:2px; color:#aebeff; opacity:.8; }
.sgl-member-picker-empty strong { color:#c7d2e3; font-size:12px; }
.sgl-member-picker-empty span { max-width:300px; color:#7f8da1; font-size:11px; line-height:1.45; }
.sgl-member-picker-result {
  display:grid;
  grid-template-columns:34px minmax(0,1fr) auto;
  align-items:center;
  width:100%;
  min-height:59px;
  gap:10px;
  padding:8px 9px;
  border:1px solid transparent;
  border-radius:8px;
  color:inherit;
  background:rgba(255,255,255,.018);
  text-align:left;
  transition:border-color 150ms ease, background 150ms ease, transform 150ms ease;
}
.sgl-member-picker-result:hover { border-color:rgba(148,172,255,.26); background:rgba(100,130,244,.095); }
.sgl-member-picker-result[aria-selected="true"],
.sgl-member-picker-result.is-selected { border-color:rgba(163,183,255,.48); background:rgba(100,130,244,.16); }
.sgl-member-picker-result:active { transform:translateY(1px); }
.sgl-member-picker-avatar {
  display:grid;
  width:34px;
  height:34px;
  place-items:center;
  overflow:hidden;
  border:1px solid rgba(164,184,255,.24);
  border-radius:50%;
  color:#d7e0ff;
  background:linear-gradient(145deg,rgba(123,150,255,.28),rgba(105,72,179,.24));
  font-size:10px;
  font-weight:750;
}
.sgl-member-picker-result-copy { display:grid; min-width:0; gap:3px; }
.sgl-member-picker-result-copy b { overflow:hidden; color:#e3eaf6; font-size:12px; font-weight:680; text-overflow:ellipsis; white-space:nowrap; }
.sgl-member-picker-result-copy small { overflow:hidden; color:#8796ab; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.sgl-member-picker-result > em {
  min-width:52px;
  padding:4px 6px;
  border:1px solid rgba(210,222,244,.11);
  border-radius:99px;
  color:#93a3b8;
  background:rgba(210,222,244,.045);
  font-size:9px;
  font-style:normal;
  font-weight:650;
  text-align:center;
}
.sgl-member-picker-result[data-role="lawyer"] > em { border-color:rgba(150,171,255,.26); color:#bccaff; background:rgba(100,130,244,.1); }
.sgl-member-picker-result[data-role="secretary"] > em { border-color:rgba(176,145,255,.27); color:#d2c2ff; background:rgba(176,145,255,.1); }
.sgl-member-picker-status { min-height:16px; margin:0; color:#8796aa; font-size:10px; line-height:1.4; }
.sgl-member-picker-footer { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:8px; padding-top:1px; }
.sgl-member-picker-footer [hidden] { display:none; }

@media (max-width: 560px) {
  .sgl-member-picker { gap:11px; padding:16px; }
  .sgl-member-picker-context { padding:9px 10px; }
  .sgl-member-picker-results { min-height:180px; max-height:min(310px,34dvh); }
  .sgl-member-picker-empty { min-height:163px; }
  .sgl-member-picker-trigger { width:38px; padding:0; }
  .sgl-member-picker-trigger span { display:none; }
  .sgl-member-picker-footer { grid-template-columns:1fr auto; }
  .sgl-member-picker-footer > span { display:none; }
  .sgl-member-picker-footer [data-member-picker-clear] { grid-column:1; justify-self:start; }
  .sgl-member-picker-footer [data-close-modal] { grid-column:2; }
}
@media (prefers-reduced-motion: reduce) {
  .sgl-member-picker-trigger,
  .sgl-member-picker-filters button,
  .sgl-member-picker-result { transition:none; }
}

/* Final visual refinement: the high-information workspace stays calm and legible. */
.sgl-evidence-editor label,
.sgl-finance-form label,
.sgl-forum-editor label,
.sgl-atlas-composer label,
.sgl-modal label,
.sgl-decision-composer label,
.sgl-member-field > label {
  color: #bdcadb;
  font-size: 11px;
  font-weight: 660;
  line-height: 1.35;
  letter-spacing: .008em;
}

.sgl-member-field > small,
.sgl-form-note {
  color: #96a5ba;
}

.sgl-admin :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="hidden"]), select, textarea) {
  border-color: rgba(210, 222, 244, .15);
  background: linear-gradient(180deg, rgba(8, 13, 21, .74), rgba(7, 11, 17, .58));
  box-shadow: inset 0 1px rgba(255, 255, 255, .018);
  transition: border-color 150ms ease, background 150ms ease, box-shadow 150ms ease;
}

.sgl-admin :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="hidden"]), select, textarea):not(:disabled):hover {
  border-color: rgba(161, 181, 229, .25);
}

.sgl-admin :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="hidden"]), select, textarea):focus-visible {
  border-color: rgba(146, 169, 255, .8);
  background: linear-gradient(180deg, rgba(14, 22, 35, .96), rgba(9, 15, 24, .92));
  box-shadow: 0 0 0 3px rgba(106, 136, 255, .14), inset 0 1px rgba(255, 255, 255, .035);
}

.sgl-panel,
.sgl-case-card,
.sgl-table-card {
  border-color: rgba(210, 222, 244, .105);
  background: linear-gradient(145deg, rgba(20, 29, 43, .985), rgba(10, 16, 25, .985));
  box-shadow: inset 0 1px rgba(255, 255, 255, .035), 0 14px 34px rgba(0, 0, 0, .12);
}

.sgl-message-compose,
.sgl-finance-form,
.sgl-forum-editor,
.sgl-atlas-composer,
.sgl-decision-composer {
  box-shadow: inset 0 1px rgba(255, 255, 255, .028), 0 8px 24px rgba(0, 0, 0, .07);
}

/* The case heading holds context without spending a screenful of vertical space. */
@media (min-width: 761px) {
  .sgl-case-workspace { padding-top: 0; }
  .sgl-case-header { gap: 14px; padding: 2px 0 15px; }
  .sgl-case-title { margin-top: 9px; }
  .sgl-case-title h1 { margin-top: 4px; margin-bottom: 7px; }
  .sgl-case-health { margin-top: 9px; }
  .sgl-case-header-actions { gap: 7px; padding-top: 2px; }
  .sgl-case-tabs { margin-bottom: 14px; }
}

@media (min-width: 761px) and (max-width: 1120px) {
  .sgl-case-header { padding-bottom: 13px; }
  .sgl-admin-nav button {
    border: 1px solid transparent;
    border-radius: 10px;
  }
  .sgl-admin-nav button.is-active {
    border-color: rgba(146, 169, 255, .17);
    background: linear-gradient(180deg, rgba(100, 130, 244, .19), rgba(100, 130, 244, .07));
    box-shadow: inset 0 -2px var(--sgl-amber), 0 5px 15px rgba(0, 0, 0, .12);
  }
}

/* On a phone, navigation reads as a compact control rail rather than a clipped desktop menu. */
@media (max-width: 760px) {
  .sgl-admin-sidebar {
    padding: 7px 9px;
    background: linear-gradient(115deg, #090e16, #0d1521 65%, #090e16);
    box-shadow: 0 6px 18px rgba(0, 0, 0, .2);
  }
  .sgl-admin-nav {
    gap: 4px;
    padding: 2px;
    border: 1px solid rgba(210, 222, 244, .09);
    border-radius: 11px;
    background: rgba(4, 8, 14, .46);
    box-shadow: inset 0 1px rgba(255, 255, 255, .022);
    scroll-padding-inline: 6px;
  }
  .sgl-admin-nav button {
    flex-basis: 42px;
    width: 42px;
    min-width: 42px;
    min-height: 40px;
    border: 1px solid transparent;
    border-radius: 8px;
  }
  .sgl-admin-nav button:hover { background: rgba(132, 155, 230, .12); }
  .sgl-admin-nav button.is-active {
    border-color: rgba(151, 174, 255, .24);
    background: linear-gradient(145deg, rgba(111, 141, 250, .25), rgba(92, 117, 217, .12));
    box-shadow: inset 0 -2px var(--sgl-amber), inset 0 1px rgba(255, 255, 255, .08), 0 4px 11px rgba(0, 0, 0, .16);
  }
  .sgl-case-tabs {
    gap: 5px;
    padding: 5px 27px 5px 5px;
    border-color: rgba(166, 184, 238, .13);
    border-radius: 10px;
    background: linear-gradient(90deg, rgba(14, 21, 32, .985), rgba(11, 17, 27, .965));
    box-shadow: inset 0 1px rgba(255, 255, 255, .032), 0 10px 18px rgba(3, 6, 11, .3);
  }
  .sgl-case-tabs button {
    min-height: 35px;
    padding: 0 10px;
    border: 1px solid transparent;
  }
  .sgl-case-tabs button.is-active {
    border-color: rgba(152, 176, 255, .25);
    background: linear-gradient(145deg, rgba(111, 141, 250, .25), rgba(95, 118, 218, .14));
    box-shadow: inset 0 1px rgba(255, 255, 255, .1), 0 4px 12px rgba(0, 0, 0, .16);
  }
  .sgl-case-tabs::after { width: 22px; }
}

/* Product finish: information-dense screens still need to feel calm at a glance. */
.sgl-admin {
  font-kerning: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

.sgl-admin :is(button, a, input, select, textarea) {
  -webkit-tap-highlight-color: transparent;
}

.sgl-admin :is(button, a, input, select, textarea):focus-visible {
  outline: 2px solid rgba(166, 186, 255, .94);
  outline-offset: 2px;
}

/* The vault reads as an active workspace, not a list of detached rows. */
.sgl-evidence-vault,
.sgl-evidence-gates,
.sgl-evidence-record {
  border-color: rgba(210, 222, 244, .115);
  background:
    linear-gradient(145deg, rgba(24, 34, 50, .7), rgba(8, 13, 21, .64));
  box-shadow: inset 0 1px rgba(255, 255, 255, .026), 0 8px 24px rgba(0, 0, 0, .07);
}

.sgl-evidence-item {
  min-height: 68px;
  padding: 10px;
  border-color: rgba(210, 222, 244, .1);
  background: linear-gradient(100deg, rgba(19, 28, 42, .78), rgba(10, 16, 25, .68));
  box-shadow: inset 0 1px rgba(255, 255, 255, .018);
  transition: border-color 160ms ease, background 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.sgl-evidence-item:hover {
  border-color: rgba(155, 179, 255, .38);
  background: linear-gradient(100deg, rgba(31, 43, 66, .84), rgba(14, 22, 35, .82));
  box-shadow: inset 0 1px rgba(255, 255, 255, .036), 0 9px 22px rgba(0, 0, 0, .12);
}

.sgl-evidence-copy { gap: 3px; }
.sgl-evidence-copy small { color: #94a3b7; font-size: 10px; letter-spacing: .065em; }
.sgl-evidence-copy strong { color: #edf3fb; font-size: 13px; font-weight: 650; }
.sgl-evidence-copy > span { color: #9aa9bc; font-size: 11px; line-height: 1.35; }
.sgl-evidence-open,
.sgl-evidence-task { min-height: 29px; }
.sgl-evidence-open { padding-inline: 8px; color: #c9d5e9; font-size: 11px; }
.sgl-evidence-task { width: 29px; height: 29px; }
.sgl-evidence-gate { padding-block: 10px; }
.sgl-evidence-gate b { color: #e0e8f4; font-size: 12px; }
.sgl-evidence-gate small { color: #91a0b4; font-size: 11px; line-height: 1.45; }
.sgl-evidence-record summary b { color: #ebf1fa; font-size: 13px; }
.sgl-evidence-record summary small { color: #94a2b5; font-size: 11px; }

/* Atlas, the decision log and the forum get separate elevation cues without new chrome. */
.sgl-atlas-composer,
.sgl-decision-composer,
.sgl-forum-editor {
  border-color: rgba(180, 193, 237, .15);
  background:
    linear-gradient(145deg, rgba(29, 38, 58, .54), rgba(9, 14, 23, .76));
}

.sgl-atlas-note,
.sgl-decision-card,
.sgl-forum-alert {
  border-color: rgba(210, 222, 244, .12);
  background:
    linear-gradient(118deg, rgba(25, 35, 52, .66), rgba(9, 14, 23, .7));
  box-shadow: inset 0 1px rgba(255, 255, 255, .025), 0 7px 18px rgba(0, 0, 0, .065);
  transition: border-color 160ms ease, background 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.sgl-atlas-note:hover,
.sgl-decision-card:hover,
.sgl-forum-alert:hover {
  border-color: rgba(159, 181, 255, .3);
  background:
    linear-gradient(118deg, rgba(33, 45, 68, .76), rgba(12, 19, 30, .8));
  box-shadow: inset 0 1px rgba(255, 255, 255, .036), 0 11px 25px rgba(0, 0, 0, .12);
}

.sgl-atlas-note { padding: 15px 16px; }
.sgl-atlas-note-head b,
.sgl-decision-card header span,
.sgl-forum-alert-copy > span { font-size: 10px; letter-spacing: .095em; }
.sgl-atlas-note-head small { font-size: 10px; }
.sgl-atlas-note p,
.sgl-decision-card p,
.sgl-forum-alert-copy p { color: #b2bfd0; font-size: 13px; line-height: 1.58; }
.sgl-atlas-note .sgl-citations { font-size: 11px; line-height: 1.45; }
.sgl-atlas-side { border-color: rgba(186, 161, 255, .28); background: linear-gradient(145deg, rgba(176, 145, 255, .12), rgba(12, 17, 28, .56)); }
.sgl-atlas-side b { font-size: 12px; }
.sgl-atlas-side p { color: #aab7c9; font-size: 12px; line-height: 1.5; }
.sgl-atlas-presets { gap: 6px; }
.sgl-atlas-presets button { min-height: 30px; padding-inline: 9px; font-size: 11px; }

.sgl-decision-metrics article,
.sgl-evidence-overview > section {
  border-color: rgba(210, 222, 244, .11);
  background: linear-gradient(145deg, rgba(24, 34, 50, .78), rgba(9, 15, 24, .72));
  box-shadow: inset 0 1px rgba(255, 255, 255, .025);
}

.sgl-decision-metrics span,
.sgl-evidence-overview span { color: #9aa9bc; font-size: 11px; }
.sgl-decision-metrics small,
.sgl-evidence-overview small { color: #93a1b4; font-size: 11px; }
.sgl-decision-card h3 { color: #f0f4fb; font-size: 15px; line-height: 1.4; }
.sgl-decision-card footer > span { color: #93a2b7; font-size: 11px; }
.sgl-decision-composer h3 { font-size: 17px; }
.sgl-decision-composer p { color: #aebacc; font-size: 12px; line-height: 1.55; }

.sgl-forum-alert-center {
  border-color: rgba(219, 182, 111, .26);
  background:
    linear-gradient(132deg, rgba(208, 170, 100, .11), rgba(19, 27, 41, .9) 44%, rgba(9, 14, 22, .93));
  box-shadow: inset 0 1px rgba(255, 244, 216, .04), 0 12px 28px rgba(0, 0, 0, .09);
}

.sgl-forum-alert-copy strong { color: #edf3fb; font-size: 13px; }
.sgl-forum-alert-copy small { color: #91a0b4; font-size: 11px; }
.sgl-forum-diff article { border-color: rgba(210, 222, 244, .12); background: linear-gradient(145deg, rgba(17, 25, 38, .78), rgba(7, 12, 19, .75)); }
.sgl-forum-diff p { color: #b6c2d2; font-size: 12px; line-height: 1.58; }

/* Forms and tabular work are used for hours; use a readable working scale. */
.sgl-evidence-editor label,
.sgl-finance-form label,
.sgl-forum-editor label,
.sgl-atlas-composer label,
.sgl-modal label,
.sgl-decision-composer label,
.sgl-member-field > label { font-size: 12px; }

.sgl-evidence-editor textarea,
.sgl-atlas-composer textarea,
.sgl-decision-composer textarea,
.sgl-forum-editor textarea { font-size: 13px; line-height: 1.62; }

.sgl-forum-editor textarea { font-size: 12px; line-height: 1.65; }
.sgl-inline-action,
.sgl-playbook button,
.sgl-message-actions button { font-size: 11px; }

.sgl-data-table th { color: #91a0b6; font-size: 11px; }
.sgl-data-table td { padding-top: 13px; padding-bottom: 13px; }
.sgl-data-table tbody tr { transition: background 150ms ease; }
.sgl-table-main { color: #edf3fb; font-size: 13px; }
.sgl-table-sub { color: #95a4b7; font-size: 12px; line-height: 1.42; }
.sgl-status-pill,
.sgl-priority-chip { font-size: 11px; }

@media (hover: hover) {
  .sgl-evidence-item:hover,
  .sgl-atlas-note:hover,
  .sgl-decision-card:hover,
  .sgl-forum-alert:hover { transform: translateY(-1px); }
}

@media (max-width: 760px) {
  .sgl-evidence-vault,
  .sgl-evidence-gates,
  .sgl-evidence-record { border-radius: 10px; }
  .sgl-evidence-item { min-height: 66px; }
  .sgl-atlas-note { padding: 14px; }
  .sgl-atlas-note p,
  .sgl-decision-card p,
  .sgl-forum-alert-copy p { font-size: 12px; }
  .sgl-data-table td { padding-top: 11px; padding-bottom: 11px; }
}

/* Editorial finish: legal work needs calm hierarchy, not microscopic system text. */
.sgl-admin {
  font-family: "Manrope", Inter, "Segoe UI", system-ui, sans-serif;
  font-synthesis: none;
  letter-spacing: 0;
}

.sgl-top-title span,
.sgl-screen-heading > div > span,
.sgl-panel header span,
.sgl-case-title > span,
.sgl-modal-header span,
.sgl-case-card > span,
.sgl-case-card > small {
  letter-spacing: .085em;
}

.sgl-case-health button {
  min-height: 43px;
  padding: 8px 10px;
}
.sgl-case-health b { font-size: 11px; line-height: 1.3; }
.sgl-case-health small { font-size: 10px; line-height: 1.35; }

.sgl-person-fact { padding-block: 10px; }
.sgl-person-fact span { font-size: 11px; line-height: 1.35; }
.sgl-person-fact b { font-size: 13px; line-height: 1.35; }
.sgl-roadmap-step b { font-size: 12px; line-height: 1.35; }

.sgl-side-action strong { font-size: 14px; line-height: 1.35; }
.sgl-side-action p { font-size: 12px; line-height: 1.5; }
.sgl-task-mini { padding-block: 10px; }
.sgl-task-mini strong { font-size: 12px; line-height: 1.4; }
.sgl-task-mini small { font-size: 11px; line-height: 1.4; }
.sgl-playbook > small { font-size: 11px; }
.sgl-playbook button { min-height: 30px; padding-inline: 9px; font-size: 11px; }

.sgl-case-panel-header span { color: #9aa9bd; font-size: 11px; letter-spacing: .085em; }
.sgl-case-panel:has(.sgl-atlas-layout) .sgl-case-panel-header span { color: #c3acff; }
.sgl-case-panel:has(.sgl-evidence-layout) .sgl-case-panel-header span { color: #e3bf7c; }
.sgl-case-panel:has(.sgl-forum-layout) .sgl-case-panel-header span { color: #e7c079; }
.sgl-case-panel:has(.sgl-decision-layout) .sgl-case-panel-header span { color: #c3acff; }

.sgl-inline-action,
.sgl-message-actions button,
.sgl-evidence-open,
.sgl-evidence-task {
  min-height: 31px;
  padding-inline: 9px;
}

.sgl-message-quote span,
.sgl-decision-card header span,
.sgl-forum-alert-copy > span,
.sgl-member-picker-context > span { font-size: 10px; letter-spacing: .08em; }

.sgl-case-health small,
.sgl-message-head small,
.sgl-event small,
.sgl-atlas-note-head small,
.sgl-forum-alert-copy small,
.sgl-decision-card footer > span { font-variant-numeric: tabular-nums; }

@media (max-width: 760px) {
  .sgl-person-fact { padding-block: 9px; }
  .sgl-case-health button { min-height: 40px; }
  .sgl-side-action strong { font-size: 13px; }
  .sgl-side-action p { font-size: 11px; }
}

/* Atlas makes its source boundary visible instead of leaving a dead column. */
.sgl-atlas-notes { align-content: start; }
.sgl-atlas-context {
  display: grid;
  gap: 11px;
  margin-top: 3px;
  padding: 13px;
  border: 1px solid rgba(185, 164, 255, .2);
  border-radius: 10px;
  background: linear-gradient(145deg, rgba(176, 145, 255, .09), rgba(10, 16, 26, .7));
  box-shadow: inset 0 1px rgba(255, 255, 255, .025);
}
.sgl-atlas-context header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 10px;
}
.sgl-atlas-context header > div { display: grid; gap: 3px; }
.sgl-atlas-context header span {
  color: #c4adff;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .085em;
}
.sgl-atlas-context header b { color: #e9e3ff; font-size: 13px; }
.sgl-atlas-context header > small { color: #98a7bd; font-size: 10px; line-height: 1.35; text-align: right; }
.sgl-atlas-context-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; }
.sgl-atlas-context-grid button {
  display: grid;
  gap: 2px;
  min-width: 0;
  padding: 9px;
  border: 1px solid rgba(203, 186, 255, .14);
  border-radius: 8px;
  color: #c8b9ff;
  background: rgba(7, 11, 18, .42);
  text-align: left;
  transition: border-color 150ms ease, background 150ms ease, transform 150ms ease;
}
.sgl-atlas-context-grid button:hover {
  border-color: rgba(199, 180, 255, .42);
  background: rgba(176, 145, 255, .13);
}
.sgl-atlas-context-grid button strong { color: #f2eeff; font-size: 16px; line-height: 1.1; }
.sgl-atlas-context-grid button span { color: #c8b9ff; font-size: 10px; line-height: 1.3; }
.sgl-atlas-context-grid button small { overflow: hidden; color: #94a2b7; font-size: 10px; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }

@media (hover: hover) {
  .sgl-atlas-context-grid button:hover { transform: translateY(-1px); }
}
@media (max-width: 760px) {
  .sgl-atlas-context { padding: 12px; }
  .sgl-atlas-context-grid { gap: 6px; }
  .sgl-atlas-context-grid button { padding: 8px; }
}
