/* Source Graph's sole theme and component stylesheet. Penpot product contract:
   208px rail / 48px header / 40px tabs / 32px controls / 336px inspector. */
[data-sg-ui] {
  color-scheme: dark;
  --sg-canvas: #101214;
  --sg-surface: #191c21;
  --sg-raised: #22262d;
  --sg-hover: #2a3039;
  --sg-divider: #343b45;
  --sg-text: #f3f5f7;
  --sg-body: #cbd1d8;
  --sg-metadata: #b1b8c2;
  --sg-disabled: #858f9d;
  --sg-focus: #b9d4f7;
  --sg-success: #88c6a3;
  --sg-danger: #e3a09c;
  --sg-warning: #d8bf8c;
  --sg-action: #f3f5f7;
  --sg-action-hover: #ffffff;
  --sg-action-text: #101214;
  --sg-overlay: #0008;
  --sg-space-1: 4px;
  --sg-space-2: 8px;
  --sg-space-3: 12px;
  --sg-space-4: 16px;
  --sg-space-6: 24px;
  --sg-space-8: 32px;
  --sg-rail-width: 208px;
  --sg-inspector-width: 336px;
  --sg-header-height: 48px;
  --sg-tabs-height: 40px;
  --sg-control-height: 32px;
  --sg-control-radius: 8px;
  --sg-font-sans: "Inter Tight", "Segoe UI", system-ui, sans-serif;
  --sg-font-mono: "IBM Plex Mono", "Cascadia Code", Consolas, monospace;
  color: var(--sg-text);
  background: var(--sg-canvas);
  font: 400 13px/20px var(--sg-font-sans);
}
.sg-foundation-body { margin: 0; }
[data-sg-ui], [data-sg-ui] *, [data-sg-ui] *::before, [data-sg-ui] *::after { box-sizing: border-box; }
[data-sg-ui] [hidden] { display: none !important; }
[data-sg-ui] a { color: inherit; text-decoration: none; }
[data-sg-ui] button, [data-sg-ui] input { font: inherit; }
[data-sg-ui] button { cursor: pointer; }
[data-sg-ui] :is(a, button, input, textarea, select, [tabindex]):focus-visible { outline: 2px solid var(--sg-focus); outline-offset: 3px; }
[data-sg-ui] [id] { scroll-margin-top: var(--sg-space-6); }
[data-sg-ui] code { font-family: var(--sg-font-mono); font-size: 12px; }
[data-sg-ui] .codicon { font-size: 16px; flex: none; }
.sg-workbench[data-sg-ui] { display: grid; grid-template-columns: var(--sg-rail-width) minmax(0, 1fr); min-height: 100dvh; }
.sg-workbench-skip { position: fixed; left: 8px; top: 8px; z-index: 20; padding: var(--sg-space-2) var(--sg-space-3); color: var(--sg-action-text) !important; background: var(--sg-action); transform: translateY(-200%); }
.sg-workbench-skip:focus { transform: none; }
.sg-workbench-rail { position: sticky; top: 0; height: 100dvh; display: flex; flex-direction: column; border-right: 1px solid var(--sg-divider); background: var(--sg-surface); padding: 0 var(--sg-space-2); }
.sg-workbench-brand { min-height: var(--sg-header-height); display: flex; align-items: center; gap: var(--sg-space-3); padding: 0 var(--sg-space-2); font-size: 14px; font-weight: 500; letter-spacing: 0; }
.sg-workbench-rail-content { display: flex; flex: 1; flex-direction: column; }
.sg-workbench-rail-note { margin-top: auto; padding: var(--sg-space-3) var(--sg-space-2); color: var(--sg-metadata); font-size: 11px; }
.sg-workbench-navigation { display: flex; flex-direction: column; gap: var(--sg-space-1); padding-top: var(--sg-space-2); }
.sg-workbench-navigation a { display: flex; gap: var(--sg-space-2); align-items: center; min-height: var(--sg-control-height); padding: 4px var(--sg-space-2); border-radius: var(--sg-control-radius); color: var(--sg-body); font-size: 13px; }
.sg-workbench-navigation a:hover, .sg-workbench-navigation a[aria-current] { background: var(--sg-hover); color: var(--sg-text); }
.sg-workbench-navigation a[aria-current] { font-weight: 600; }
.sg-workbench-main { min-width: 0; position:relative; }
.sg-workbench-header { min-height: var(--sg-header-height); display: flex; align-items: center; gap: var(--sg-space-3); border-bottom: 1px solid var(--sg-divider); padding: 0 16px; }
.sg-workbench-breadcrumb { display: flex; gap: var(--sg-space-3); min-width: 0; color: var(--sg-metadata); font-size: 13px; }
.sg-workbench-breadcrumb strong { color: var(--sg-text); font-weight: 500; }
.sg-workbench-header-actions { margin-left: auto; flex: none; }
.sg-workbench-sections { display: flex; min-height: var(--sg-tabs-height); gap: 0; padding: 0 16px; border-bottom: 0; }
.sg-workbench-sections a { display: flex; align-items: center; border-bottom: 2px solid transparent; color: var(--sg-body); font-size: 13px; }
.sg-workbench-sections a[aria-current] { border-bottom-color: var(--sg-text); color: var(--sg-text); }
.sg-workbench-content { min-width: 0; }
[data-sg-ui] [data-b8grid-loading-region] { position: relative; }
.sg-content-loading { position:absolute; inset:0; z-index:4; display:grid; justify-items:center; align-items:start; padding: min(160px, 20dvh) 16px 24px; background:color-mix(in srgb, var(--sg-canvas) 92%, transparent); cursor:progress; }
.sg-content-loading-status { position:sticky; top:24px; display:flex; align-items:center; gap:8px; color:var(--sg-metadata); }
.sg-content-loading .codicon { animation:sg-loading-spin 1s linear infinite; }
@keyframes sg-loading-spin { to { transform:rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .sg-content-loading .codicon { animation:none; } }
[data-sg-ui] .sgui-button.sg-workbench-menu { display: none; }
[data-sg-ui] .sgui-button { display: inline-flex; justify-content: center; align-items: center; gap: var(--sg-space-2); min-height: var(--sg-control-height); padding: 4px var(--sg-space-3); border: 1px solid transparent; border-radius: var(--sg-control-radius); background: var(--sg-raised); color: var(--sg-text); font-size: 13px; font-weight: 500; line-height: 20px; white-space: nowrap; }
[data-sg-ui] .sgui-button:hover { background: var(--sg-hover); }
[data-sg-ui] .sgui-button-primary { background: var(--sg-action); color: var(--sg-action-text); }
[data-sg-ui] .sgui-button-primary:hover { background: var(--sg-action-hover); }
[data-sg-ui] .sgui-button-ghost { background: transparent; }
[data-sg-ui] .sgui-button-danger { background: transparent; border-color: var(--sg-divider); color: var(--sg-danger); }
[data-sg-ui] .sgui-button-small { min-height: 28px; padding: 2px var(--sg-space-2); font-size: 12px; }
[data-sg-ui] .sgui-icon-button { width:32px; height:32px; padding:0; gap:0; flex:none; }
.sgui-action-group { display:inline-flex; align-items:center; gap:2px; padding:2px; border:1px solid var(--sg-divider); border-radius:var(--sg-control-radius); }
.sgui-action-group > form { display:inline-flex; margin:0; }
.sgui-action-group-comfortable { gap:8px; padding:4px; }
[data-sg-ui] .sgui-copy-icon-button { width: 28px; height: 28px; min-height: 28px; padding: 0; gap: 0; flex: none; color: var(--sg-metadata); }
[data-sg-ui] .sgui-copy-icon-button > span { display: grid; place-items: center; }
[data-sg-ui] .sgui-copy-icon-button .codicon { width: 14px; height: 14px; font-size: 14px; }
[data-sg-ui] .sgui-copy-icon-button .sgui-copy-done, [data-sg-ui] .sgui-copy-icon-button[data-state="copied"] .sgui-copy-idle { display: none; }
[data-sg-ui] .sgui-copy-icon-button[data-state="copied"] .sgui-copy-done { display: grid; color: var(--sg-success); }
[data-sg-ui] .sgui-button:disabled { cursor: not-allowed; color: var(--sg-disabled); background: var(--sg-raised); }
[data-sg-ui] .sgui-button[aria-busy] { color: var(--sg-body); cursor: progress; }
[data-sg-ui] .sgui-field { display: flex; flex-direction: column; gap: var(--sg-space-2); color: var(--sg-text); font-size: 13px; font-weight: 500; }
[data-sg-ui] .sgui-input { width: 100%; min-height: 36px; padding: 6px var(--sg-space-3); border: 1px solid transparent; border-radius: var(--sg-control-radius); background: var(--sg-raised); color: var(--sg-text); font-size: 13px; font-weight: 400; }
[data-sg-ui] .sgui-input::placeholder { color: var(--sg-metadata); }
[data-sg-ui] .sgui-input[aria-invalid="true"] { border-color: var(--sg-danger); }
[data-sg-ui] .sgui-panel-tablist { display: flex; min-height: var(--sg-tabs-height); border-bottom: 1px solid var(--sg-divider); }
[data-sg-ui] .sgui-panel-tablist button { min-height: var(--sg-tabs-height); padding: 8px var(--sg-space-4); border: 0; border-bottom: 2px solid transparent; background: transparent; color: var(--sg-body); font-size: 13px; }
[data-sg-ui] .sgui-panel-tablist button[aria-selected="true"] { border-bottom-color: var(--sg-text); color: var(--sg-text); font-weight: 600; }
.sg-workbench-rail .sgui-panel-tablist button { flex: 1; padding-inline: 4px; }
[data-sg-ui] .sgui-dialog { width: min(480px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); margin: auto; padding: 0; border: 1px solid var(--sg-divider); border-radius: 8px; color: var(--sg-text); background: var(--sg-surface); box-shadow: 0 16px 64px var(--sg-overlay); overscroll-behavior: contain; }
[data-sg-ui] .sgui-dialog::backdrop { background: var(--sg-overlay); }
[data-sg-ui] .sgui-dialog-surface { padding: var(--sg-space-6); }
[data-sg-ui] .sgui-dialog-head { display: flex; align-items: start; gap: var(--sg-space-4); margin-bottom: var(--sg-space-6); }
[data-sg-ui] .sgui-dialog-head h2 { margin: 0; font-size: 18px; line-height: 24px; font-weight: 600; }
[data-sg-ui] .sgui-dialog-head p { margin: 8px 0 0; color: var(--sg-body); font-size: 13px; }
[data-sg-ui] .sgui-dialog-close { margin-left: auto; flex: none; width: 32px; height: 32px; display: grid; place-items: center; background: transparent; color: var(--sg-metadata); border: 0; border-radius: 4px; }
[data-sg-ui] .sgui-dialog-close:hover { background: var(--sg-hover); }
.sg-gallery { max-width: 1104px; padding: var(--sg-space-8); margin-inline: auto; }
.sg-gallery-intro { padding-bottom: var(--sg-space-8); }
.sg-gallery-eyebrow { margin: 0 0 12px; color: var(--sg-metadata); font-size: 10px; font-weight: 600; letter-spacing: .12em; }
.sg-gallery h1 { margin: 0; font-size: 23px; line-height: 32px; font-weight: 600; letter-spacing: -.025em; }
.sg-gallery-intro > p:last-child { max-width: 680px; margin: 12px 0 0; color: var(--sg-body); font-size: 14px; line-height: 22px; }
.sg-gallery-section { border-top: 1px solid var(--sg-divider); padding-block: var(--sg-space-6); }
.sg-gallery-section-heading { display: flex; align-items: baseline; justify-content: space-between; gap: var(--sg-space-3); margin-bottom: var(--sg-space-6); }
.sg-gallery h2 { margin: 0; font-size: 14px; line-height: 20px; font-weight: 600; }
.sg-gallery-section-heading > span { color: var(--sg-metadata); font-size: 12px; }
.sg-gallery-swatches { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: var(--sg-space-3); }
.sg-gallery-swatch > div { height: 40px; border: 1px solid var(--sg-divider); border-radius: var(--sg-control-radius); margin-bottom: var(--sg-space-2); }
.sg-gallery-swatch strong { display: block; font-size: 12px; font-weight: 500; }
.sg-gallery-swatch code { color: var(--sg-metadata); font-size: 10px; }
.sg-gallery-swatch-canvas > div { background: var(--sg-canvas); }
.sg-gallery-swatch-surface > div { background: var(--sg-surface); }
.sg-gallery-swatch-raised > div { background: var(--sg-raised); }
.sg-gallery-swatch-hover > div { background: var(--sg-hover); }
.sg-gallery-swatch-focus > div { background: var(--sg-focus); }
.sg-gallery-swatch-success > div { background: var(--sg-success); }
.sg-gallery-type { padding-top: var(--sg-space-6); }
.sg-gallery-type p { color: var(--sg-body); margin: 8px 0; }
.sg-gallery-type .sg-gallery-type-heading { color: var(--sg-text); font-size: 18px; font-weight: 500; }
.sg-gallery-type code { display: block; overflow-wrap: anywhere; margin-top: var(--sg-space-3); color: var(--sg-focus); }
.sg-gallery-control-row { display: grid; grid-template-columns: 112px 1fr; align-items: center; gap: var(--sg-space-3); min-height: 48px; }
.sg-gallery-control-row > span { color: var(--sg-metadata); font-size: 12px; }
.sg-gallery-control-row > div, .sg-gallery-status-row { display: flex; gap: var(--sg-space-3); align-items: center; flex-wrap: wrap; }
.sg-gallery-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--sg-space-6); }
.sg-gallery-help, .sg-gallery-error { margin: 8px 0 0; color: var(--sg-metadata); font-size: 12px; }
.sg-gallery-error { color: var(--sg-danger); }
.sg-gallery-tab-content { min-height: 68px; margin: 0; padding: var(--sg-space-4) 0; color: var(--sg-body); font-size: 13px; }
.sg-gallery-status-row { gap: var(--sg-space-6); }
.sg-status { display: inline-flex; align-items: center; gap: var(--sg-space-2); color: var(--sg-metadata); font-size: 13px; }
.sg-status-success { color: var(--sg-success); }
.sg-status-warning { color: var(--sg-warning); }
.sg-status-danger { color: var(--sg-danger); }
.sg-gallery-environment { display: flex; align-items: center; gap: var(--sg-space-2); color: var(--sg-metadata); font-size: 12px; }
.sg-gallery-environment > span { height: 5px; width: 5px; border-radius: 50%; background: var(--sg-success); }
.sg-gallery-dialog-actions { display: flex; justify-content: end; gap: var(--sg-space-2); margin-top: var(--sg-space-6); }
.sg-gallery-checks p { max-width: 660px; color: var(--sg-body); font-size: 13px; }
@media (max-width: 1120px) {
  .sg-gallery-section-heading { flex-direction: column; gap: var(--sg-space-1); }
  .sg-gallery-swatches { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 699px) {
  .sg-workbench[data-sg-ui] { grid-template-columns: minmax(0, 1fr); }
  .sg-workbench-rail { display: none; }
  [data-sg-ui] .sgui-button.sg-workbench-menu { display: inline-flex; flex: none; }
  .sg-workbench-header { padding: 8px 16px; flex-wrap: wrap; }
  .sg-workbench-breadcrumb { font-size: 12px; gap: 8px; }
  .sg-workbench-header-actions { display: none; }
  .sg-workbench-sections { padding-inline: 16px; }
  .sg-gallery { padding: 24px 16px; }
  .sg-gallery h1 { font-size: 21px; }
  .sg-gallery-swatches { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px 12px; }
  .sg-gallery-form-grid { grid-template-columns: minmax(0, 1fr); }
  .sg-gallery-control-row { grid-template-columns: minmax(0, 1fr); padding-block: 8px; gap: 8px; }
  [data-sg-ui] .sgui-input { font-size: 16px; }
  [data-sg-ui] .sg-workbench-mobile-navigation { margin: 0; height: 100dvh; max-height: 100dvh; width: min(320px, calc(100vw - 32px)); border-radius: 0; }
}
@media (pointer: coarse) { [data-sg-ui] :is(.sgui-button, .sgui-dialog-close, .sg-workbench-navigation a, .sgui-panel-tablist button, .sg-workbench-sections a) { min-height: 44px; } }
@media (forced-colors: active) { [data-sg-ui] :focus-visible { outline-color: Highlight; } }

/* Repository source. Same theme, route-owned content, no second application shell. */
 .sg-source-screen { display: grid; grid-template-columns: 248px minmax(0, 1fr); grid-template-rows: minmax(0,1fr) 24px; height: calc(100dvh - 88px); min-height: 420px; padding: 0; margin: 0; max-width: none; }
.sg-source-explorer { background: var(--sg-surface); border-right: 1px solid var(--sg-divider); min-width: 0; display:flex; flex-direction:column; overflow:auto; }
.sg-source-explorer > header, .sg-source-file-toolbar { display:flex; align-items:center; height:40px; flex:none; padding:0 16px; gap:8px; border-bottom:1px solid var(--sg-divider); }
.sg-source-explorer > header strong { font-size:14px; font-weight:500; }
.sg-source-explorer > nav { padding:8px; }
.sg-source-explorer ul { list-style:none; padding:0; margin:0; }
.sg-source-explorer ul ul { padding-left:16px; }
.sg-source-explorer summary, .sg-explorer-file { display:flex; height:32px; align-items:center; gap:8px; padding:0 8px; white-space:nowrap; }
.sg-source-explorer summary { cursor:pointer; list-style:none; }
.sg-source-explorer summary::-webkit-details-marker { display:none; }
.sg-source-explorer details[open] > summary > .codicon:first-child { transform:rotate(90deg); }
.sg-source-explorer .sg-explorer-file { padding-left:32px; }
.sg-source-explorer :is(summary,.sg-explorer-file):hover { background:var(--sg-raised); }
.sg-source-explorer [aria-current] { background:var(--sg-hover); color:var(--sg-text); font-weight:600; }
.sg-explorer-empty, .sg-source-explorer-limit { padding:16px; color:var(--sg-metadata); font-size:12px; }
.sg-explorer-search { margin-left:auto; position:relative; }
.sg-explorer-search > summary { display:grid; place-items:center; background:var(--sg-raised); width:32px; height:32px; border-radius:8px; }
.sg-explorer-search form { position:absolute; z-index:3; top:36px; right:-8px; width:232px; padding:8px; background:var(--sg-surface); border:1px solid var(--sg-divider); display:flex; }
.sg-explorer-search input { width:150px; border:0; color:var(--sg-text); background:var(--sg-canvas); }
.sg-source-viewer { min-width:0; display:flex; flex-direction:column; overflow:hidden; }
.sg-source-file-toolbar { justify-content:space-between; }
.sg-source-content-scroll { overflow:auto; flex:1; min-height:0; }
.sg-source-status { grid-column:1/-1; display:grid; grid-template-columns:248px 1fr auto; align-items:center; background:var(--sg-surface); border-top:1px solid var(--sg-divider); color:var(--sg-metadata); font-size:12px; }
.sg-source-status > span { padding:0 16px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.sg-source-status > span:first-child { border-right:1px solid var(--sg-divider); }
.sg-source-rail-footer { margin-top:auto; display:grid; gap:4px; padding:8px 0; font-size:13px; color:var(--sg-body); }
.sg-source-rail-footer a { display:flex; align-items:center; gap:12px; min-height:32px; padding:0 8px; }
.sg-source-rail-footer a:hover { background:var(--sg-hover); }
.sg-source-ref-picker { position: relative; flex: none; font-size: 13px; }
.sg-source-ref-picker summary { display: flex; gap: 8px; align-items: center; min-height: 32px; padding: 4px 8px; background: var(--sg-raised); border-radius: var(--sg-control-radius); cursor: pointer; list-style: none; }
.sg-source-ref-picker nav { position: absolute; z-index: 5; top: calc(100% + 8px); left: 0; min-width: 240px; max-width: calc(100vw - 48px); padding: 4px; background: var(--sg-raised); border: 1px solid var(--sg-divider); border-radius: var(--sg-control-radius); }
.sg-source-ref-picker nav a { display: block; padding: 8px; }
.sg-source-ref-picker nav a:hover { background: var(--sg-hover); }
.sg-source-path, .sg-source-path > span { display: flex; align-items: center; gap: 8px; min-width: 0; flex-wrap: wrap; overflow-wrap: anywhere; font-size: 13px; }
.sg-source-path > span > span { color: var(--sg-metadata); }
.sg-source-path strong { font-weight: 500; }
.sg-source-path a:hover, .sg-source-file-meta a:hover, .sg-readme > header a:hover { text-decoration: underline; }
.sg-source-snapshot { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 8px 16px; color: var(--sg-metadata); font-size: 12px; background:var(--sg-surface); }
.sg-source-files { border-block: 1px solid var(--sg-divider); }
.sg-source-file-filter { display: flex; align-items: center; gap: 8px; min-height: 48px; color: var(--sg-metadata); }
.sg-source-file-filter input { background: transparent; color: var(--sg-text); border: 0; padding: 8px 4px; width: 100%; font-size: 13px; }
.sg-source-files table { width: 100%; border-collapse: collapse; table-layout: fixed; text-align: left; }
.sg-source-files th { height: 32px; border-block: 1px solid var(--sg-divider); font-weight: 400; color: var(--sg-metadata); font-size: 12px; }
.sg-source-files th:first-child { width: 50%; }
.sg-source-files th:last-child { width: 18%; }
/* Dense 40px file rows. These override the generic record table (56px rows and a
   stacked title/subtitle link), so they are scoped one level tighter than it. */
[data-sg-ui] .sg-source-files .sgui-table :is(th,td) { padding: 0 16px; }
[data-sg-ui] .sg-source-files .sgui-table td { border-top: 1px solid var(--sg-divider); height: 40px; color: var(--sg-metadata); font-size: 13px; overflow-wrap: anywhere; }
[data-sg-ui] .sg-source-files .sgui-table td:first-child { color: var(--sg-text); }
[data-sg-ui] .sg-source-files .sgui-table td > a { min-height: 40px; display: flex; flex-direction: row; align-items: center; gap: 12px; }
[data-sg-ui] .sg-source-files .sgui-table td > a > span { display: inline; margin: 0; color: inherit; font-size: 13px; }
.sg-source-files td a:hover { color: var(--sg-focus); }
.sg-source-files tr:hover { background: var(--sg-surface); }
.sg-source-readme-empty { color: var(--sg-metadata); padding-block: 16px; font-size: 13px; }
.sg-source-empty { min-height: 340px; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; padding: 32px; }
.sg-source-empty h2 { font-size: 20px; font-weight: 500; margin: 16px 0 8px; }
.sg-source-empty p { max-width: 560px; margin: 0 0 20px; color: var(--sg-body); }
.sg-source-notice { padding: 16px; background: var(--sg-surface); color: var(--sg-body); font-size: 13px; }
.sg-source-notice h3 { font-size: 14px; margin: 0 0 8px; }
.sg-source-file-meta { display: flex; align-items: center; justify-content: space-between; min-height: 40px; gap: 16px; color: var(--sg-metadata); font-size: 12px; border-bottom: 1px solid var(--sg-divider); }
.sg-source-code { display: flex; gap: 20px; margin: 0; padding: 8px 16px; min-height: 240px; max-width: 100%; overflow: auto; tab-size: 2; font: 13px/20px var(--sg-font-mono); }
.sg-source-code code { flex: 1; font: inherit; }
.sg-source-line-numbers { flex: none; text-align: right; color: var(--sg-metadata); user-select: none; }
.sg-syntax-keyword, .sg-syntax-tag { color: var(--sg-focus); }
.sg-syntax-string { color: var(--sg-success); }
.sg-syntax-number { color: var(--sg-warning); }
.sg-syntax-comment { color: var(--sg-metadata); }
.sg-readme { margin-top: 0; border-top: 1px solid var(--sg-divider); }
.sg-readme > header { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 40px; padding:0 16px; background:var(--sg-surface); border-bottom: 1px solid var(--sg-divider); font-size: 13px; }
.sg-readme > header strong { font-weight: 500; }
.sg-readme > header a { color: var(--sg-metadata); }
.sg-readme-document { padding: 24px; max-width: 960px; color: var(--sg-body); line-height: 1.7; overflow-wrap: anywhere; }
.sg-readme-document > :first-child { margin-top: 0; }
.sg-readme-document :is(h2,h3,h4,h5,h6) { color: var(--sg-text); font-weight: 600; line-height: 1.35; margin: 32px 0 12px; }
.sg-readme-document h2 { font-size: 24px; letter-spacing: -.03em; }
.sg-readme-document h3 { font-size: 18px; }
.sg-readme-document :is(h4,h5,h6) { font-size: 15px; }
.sg-readme-document p, .sg-readme-document ul, .sg-readme-document ol { margin: 12px 0; }
.sg-readme-document a { color: var(--sg-focus); text-decoration: underline; text-underline-offset: 3px; }
.sg-readme-document code { background: var(--sg-surface); padding: 2px 4px; border-radius: 3px; }
.sg-readme-document pre { max-width: 100%; overflow-x: auto; background: var(--sg-surface); padding: 16px; font: 12px/1.7 var(--sg-font-mono); }
.sg-readme-document pre code { padding: 0; }
.sg-readme-document .sg-readme-plain { white-space: pre-wrap; background: none; padding: 0; }
.sg-readme-document blockquote { margin: 16px 0; border-left: 2px solid var(--sg-divider); padding-left: 20px; }
.sg-readme-document hr { border: 0; border-top: 1px solid var(--sg-divider); margin: 24px 0; }
.sg-readme-table-scroll { overflow-x: auto; margin-block: 16px; }
.sg-readme-document table { width: 100%; border-collapse: collapse; text-align: left; }
.sg-readme-document th, .sg-readme-document td { border-bottom: 1px solid var(--sg-divider); padding: 10px 12px; font-size: 13px; }
.sg-readme-document th { color: var(--sg-text); font-weight: 500; }
.sg-readme-document caption { text-align: left; padding: 8px 12px; color: var(--sg-metadata); font-size: 12px; }
.sg-readme-diagram { margin: 24px 0; }
.sg-readme-graph-description { font-size: 12px; margin-top: 12px; }
.sg-readme-graph-description summary { cursor: pointer; }
/* App-owned GraphFlow reuses the framework canvas/selection runtime. */
[data-sg-ui] .b8ui-graph-flow { --b8-flow-active: var(--sg-focus); --b8-muted-foreground: var(--sg-metadata); --b8-flow-scale: 1; --b8-flow-pan-x: 0px; --b8-flow-pan-y: 0px; border-block: 1px solid var(--sg-divider); }
[data-sg-ui] .b8ui-graph-toolbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 0; font-size: 12px; }
[data-sg-ui] .b8ui-graph-identity > span { display: grid; }
[data-sg-ui] .b8ui-graph-identity small, [data-sg-ui] .b8ui-graph-counts { color: var(--sg-metadata); }
[data-sg-ui] .b8ui-graph-counts { display: flex; gap: 12px; }
[data-sg-ui] .b8ui-graph-viewport { position: relative; height: clamp(320px, 45vh, 520px); overflow: hidden; touch-action: none; cursor: grab; background-image: radial-gradient(var(--sg-divider) 1px, transparent 1px); background-size: calc(20px * var(--b8-flow-scale)) calc(20px * var(--b8-flow-scale)); background-position: var(--b8-flow-pan-x) var(--b8-flow-pan-y); }
[data-sg-ui] .b8ui-graph-node { cursor: grab; touch-action: none; user-select: none; }
[data-sg-ui] [data-panning="true"] .b8ui-graph-viewport, [data-sg-ui] .b8ui-graph-node[data-dragging="true"] { cursor: grabbing; }
[data-sg-ui] [data-locked="true"] :is(.b8ui-graph-viewport, .b8ui-graph-node) { cursor: default; }
[data-sg-ui] .b8ui-graph-plane { position: relative; min-width: 900px; width: 100%; }
[data-sg-ui] .b8ui-graph-edges { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
[data-sg-ui] .b8ui-graph-edge-data, [data-sg-ui] .b8ui-graph-hint, [data-sg-ui] .b8ui-graph-live-dot { display: none; }
[data-sg-ui] .b8ui-graph-node { position: absolute; transform: translate(-50%,-50%); width: 224px; padding: 12px; border: 1px solid var(--sg-divider); border-radius: 4px; color: var(--sg-text); background: var(--sg-surface); text-align: left; }
[data-sg-ui] .b8ui-graph-node[data-state="selected"] { border-color: var(--sg-focus); }
[data-sg-ui] .b8ui-graph-node-head { display: flex; gap: 8px; align-items: center; }
[data-sg-ui] .b8ui-graph-node-copy { display: grid; gap: 2px; min-width: 0; }
[data-sg-ui] .b8ui-graph-node-copy small { font-size: 10px; color: var(--sg-metadata); }
[data-sg-ui] .b8ui-graph-node-copy strong { font-size: 13px; font-weight: 500; overflow-wrap: anywhere; }
[data-sg-ui] .b8ui-graph-node-detail { display: block; color: var(--sg-body); font-size: 12px; margin-top: 8px; }
[data-sg-ui] .b8ui-graph-edge-label { position: absolute; transform: translate(-50%,-50%); padding: 2px 6px; background: var(--sg-canvas); color: var(--sg-metadata); font-size: 11px; pointer-events: none; }
@media (max-width: 699px) {
  .sg-source-screen { padding: 16px; }
  .sg-source-toolbar { flex-wrap: wrap; padding-block: 8px; }
  .sg-source-files th:first-child { width: 75%; }
  .sg-source-files th:nth-child(2), .sg-source-files td:nth-child(2) { display: none; }
  .sg-source-file-filter input { font-size: 16px; }
  .sg-source-empty { padding: 24px 8px; }
  [data-sg-ui] .sg-source-account .sgui-button { min-height: 32px; padding: 4px; }
  .sg-workbench-header:has(.sg-source-account) .sg-workbench-header-actions { display: block; }
  .sg-readme-document h2 { font-size: 21px; }
}

/* Product primitives. Sections sit on the page; borders indicate structure,
   selection or inputs rather than decorating a card around every component. */
[data-sg-ui] :is(h1,h2,h3,h4,p,figure,dl) { margin-block: 0; }
[data-sg-ui] h1 { font-size: 22px; line-height: 32px; font-weight: 600; letter-spacing: -.025em; }
[data-sg-ui] h2 { font-size: 16px; line-height: 24px; font-weight: 600; }
[data-sg-ui] h3 { font-size: 14px; line-height: 20px; font-weight: 600; }
[data-sg-ui] :is(textarea,select) { font: inherit; }
[data-sg-ui] :is(button,input,textarea,select):disabled { opacity: .55; cursor: not-allowed; }
[data-sg-ui] summary { cursor: pointer; }
[data-sg-ui] .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
[data-sg-ui] .sgui-panel { min-width: 0; padding-block: 24px; border-top: 1px solid var(--sg-divider); }
[data-sg-ui] .sgui-panel:first-child { padding-top: 0; border-top: 0; }
[data-sg-ui] .sgui-panel-head { display: flex; align-items: start; justify-content: space-between; gap: 24px; margin-bottom: 20px; }
[data-sg-ui] .sgui-panel-title { display: flex; gap: 12px; align-items: start; min-width: 0; }
[data-sg-ui] .sgui-panel-icon { padding-top: 3px; color: var(--sg-metadata); }
[data-sg-ui] .sgui-panel-title p { margin-top: 4px; color: var(--sg-metadata); font-size: 13px; max-width: 680px; }
[data-sg-ui] .sgui-panel-body { min-width: 0; }
[data-sg-ui] .sgui-panel-body > :is(p,ul,ol,dl) + * { margin-top: 16px; }
[data-sg-ui] .sgui-panel-actions, .sg-view-actions:not(.sg-product-page), .sg-row-actions, .sg-ref-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
[data-sg-ui] .sgui-badge { display: inline-flex; gap: 6px; align-items: center; padding: 0; border: 0; background: none; border-radius: 0; color: var(--sg-metadata); font-size: 12px; white-space: nowrap; }
[data-sg-ui] .tone-success { color: var(--sg-success); }
[data-sg-ui] .tone-warning { color: var(--sg-warning); }
[data-sg-ui] .tone-danger { color: var(--sg-danger); }
[data-sg-ui] .tone-info { color: var(--sg-focus); }
[data-sg-ui] .sgui-data-table { min-width: 0; width: 100%; }
[data-sg-ui] .sgui-data-toolbar { display: flex; align-items: center; gap: 16px; min-height: 48px; flex-wrap: wrap; padding-block: 8px; }
[data-sg-ui] .sgui-data-toolbar h3 { margin-right: auto; }
[data-sg-ui] .sgui-search { display: flex; align-items: center; gap: 8px; min-height: 32px; color: var(--sg-metadata); min-width: 160px; flex: 1; max-width: 400px; }
[data-sg-ui] .sgui-search input { color: var(--sg-text); background: transparent; border: 0; outline-offset: 0; width: 100%; min-width: 0; padding: 6px 0; font-size: 13px; }
[data-sg-ui] .sgui-table-scroll { width: 100%; min-width: 0; max-width: 100%; overflow: auto; border-block: 1px solid var(--sg-divider); scrollbar-width: thin; }
[data-sg-ui] .sgui-table { width: 100%; border-collapse: collapse; text-align: left; font-size: 13px; }
[data-sg-ui] .sgui-table th { height: 32px; color: var(--sg-metadata); font-size: 12px; font-weight: 400; padding: 4px 12px; white-space: nowrap; border-bottom: 1px solid var(--sg-divider); }
[data-sg-ui] .sgui-table td { height: 56px; padding: 12px; border-bottom: 1px solid var(--sg-divider); color: var(--sg-body); min-width: 100px; max-width: 400px; overflow-wrap: anywhere; }
[data-sg-ui] .sgui-table tr:last-child td { border-bottom: 0; }
[data-sg-ui] .sgui-table td:first-child { color: var(--sg-text); }
[data-sg-ui] .sgui-table tbody tr:hover { background: var(--sg-surface); }
[data-sg-ui] .sgui-table td a:hover { color: var(--sg-focus); }
[data-sg-ui] .sgui-table td a > strong { font-weight: 500; }
[data-sg-ui] .sgui-table td a > span, [data-sg-ui] .sg-pipeline-coordinates > span { display: block; margin-top: 4px; font-size: 12px; color: var(--sg-metadata); }
[data-sg-ui] .sgui-table td form { display: flex; align-items: center; gap: 8px; }
[data-sg-ui] .sgui-table caption { text-align: left; padding: 12px; color: var(--sg-metadata); font-size: 12px; }
[data-sg-ui] .sgui-table-sort { display: inline-flex; gap: 6px; align-items: center; color: inherit; border: 0; padding: 0; background: none; min-height: 24px; }
[data-sg-ui] .sgui-table-sort .codicon { font-size: 12px; }
[data-sg-ui] .sgui-table-sort[data-sort-direction="asc"] .codicon { transform: rotate(-90deg); color: var(--sg-text); }
[data-sg-ui] .sgui-table-sort[data-sort-direction="desc"] .codicon { transform: rotate(90deg); color: var(--sg-text); }
[data-sg-ui] .sgui-data-table [hidden] { display: none; }
[data-sg-ui] .sgui-field { display: grid; gap: 8px; margin-bottom: 16px; min-width: 0; font-size: 13px; }
[data-sg-ui] .sgui-field > span, [data-sg-ui] .sgui-select-label-text { color: var(--sg-body); font-weight: 500; }
[data-sg-ui] .sgui-textarea, [data-sg-ui] .sgui-select-trigger { width: 100%; border: 1px solid transparent; border-radius: var(--sg-control-radius); background: var(--sg-raised); color: var(--sg-text); font: inherit; font-size: 13px; }
[data-sg-ui] .sgui-textarea { min-height: 104px; resize: vertical; padding: 10px 12px; }
[data-sg-ui] .sgui-select { display: grid; position: relative; gap: 8px; margin-bottom: 16px; font-size: 13px; }
[data-sg-ui] .sgui-select-trigger { display: flex; justify-content: space-between; align-items: center; gap: 8px; min-height: 32px; padding: 5px 10px; }
[data-sg-ui] .sgui-select-menu { position: absolute; z-index: 30; top: 100%; left: 0; min-width: 100%; max-height: 240px; overflow: auto; padding: 4px; background: var(--sg-raised); border: 1px solid var(--sg-divider); border-radius: 4px; box-shadow: 0 8px 24px var(--sg-overlay); }
[data-sg-ui] .sgui-select-option { padding: 8px; cursor: pointer; }
[data-sg-ui] .sgui-select-option:is(:hover,[aria-selected="true"]) { background: var(--sg-hover); }
[data-sg-ui] .sgui-action-status { font-size: 13px; margin-top: 12px; }
[data-sg-ui] .sgui-action-status-error { color: var(--sg-danger); }
[data-sg-ui] .sgui-action-status-success { color: var(--sg-success); }
[data-sg-ui] .sgui-action-status-pending { color: var(--sg-metadata); }
[data-sg-ui] .sgui-alert, [data-sg-ui] .sgui-toast { display: flex; align-items: start; gap: 12px; padding: 16px; background: var(--sg-surface); border-left: 2px solid currentColor; font-size: 13px; }
[data-sg-ui] .sgui-alert p, [data-sg-ui] .sgui-toast p { margin-top: 4px; color: var(--sg-body); }
[data-sg-ui] .sgui-toast-viewport { margin-bottom: 24px; }
[data-sg-ui] .sgui-timeline { list-style: none; padding: 0; margin: 0; }
[data-sg-ui] .sgui-timeline li { display: flex; gap: 12px; padding: 16px 0; border-bottom: 1px solid var(--sg-divider); font-size: 13px; }
[data-sg-ui] .sgui-timeline li:last-child { border-bottom: 0; }
[data-sg-ui] .sgui-timeline :is(p,small) { display: block; color: var(--sg-metadata); margin-top: 4px; font-size: 12px; }
[data-sg-ui] .sgui-stat { padding: 16px 0; display: grid; gap: 4px; }
[data-sg-ui] .sgui-stat strong { font-size: 20px; font-weight: 500; }
[data-sg-ui] .sgui-stat :is(span,small) { color: var(--sg-metadata); font-size: 12px; }
[data-sg-ui] .sgui-tabs, .sg-subnav { display: flex; align-items: center; gap: 20px; border-bottom: 1px solid var(--sg-divider); min-height: 40px; overflow-x: auto; }
[data-sg-ui] .sgui-tabs a, .sg-subnav a { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; padding: 12px 0; font-size: 13px; color: var(--sg-metadata); }
[data-sg-ui] .sgui-tabs a[aria-current], .sg-subnav a[aria-current] { color: var(--sg-text); border-bottom: 2px solid var(--sg-text); }

/* Repository, workspace and global navigation. */
.sg-product-page { min-width: 0; padding: 24px 32px 48px; }
.sg-product-page > section { min-width: 0; }
.sg-product-global-actions { display: flex; align-items: center; gap: 8px; }
.sg-product-search { display: flex; align-items: center; gap: 8px; color: var(--sg-metadata); }
.sg-product-search input { width: 200px; background: transparent; color: var(--sg-body); border: 0; padding: 6px 0; font-size: 12px; }
.sg-product-search button { display: flex; background: none; color: inherit; border: 0; padding: 6px; }
.sg-view-heading { display: flex; justify-content: space-between; gap: 24px; align-items: center; margin-bottom: 24px; }
.sg-view-heading p { margin-top: 6px; color: var(--sg-metadata); font-size: 13px; }
.sg-view-heading h1 { display: flex; align-items: center; gap: 12px; }
.sg-view-count { color: var(--sg-metadata); font-size: 13px; font-weight: 400; letter-spacing: 0; }
.sg-product-notice { padding: 12px 24px; color: var(--sg-metadata); background: var(--sg-surface); font-size: 13px; }
.sg-product-notice a { text-decoration: underline; }
.sg-empty-state { text-align: center; padding: 64px 24px; color: var(--sg-metadata); }
.sg-empty-state h3 { color: var(--sg-text); margin-top: 16px; }
.sg-empty-state p { margin-block: 8px 16px; }
.sg-form-grid { display: grid; gap: 8px; }
.sg-inline-form, .sg-row-action, .sg-filter-row { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.sg-section-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
.sg-change-guidance { margin-top: 24px; color: var(--sg-metadata); font-size: 13px; }
.sg-change-guidance p { margin-block: 12px; max-width: 640px; }
.sg-home-recent, .sg-home-secondary { margin-top: 32px; }
.sg-repo-description { margin-top: 4px; color: var(--sg-metadata); }

/* Review and diff: one main document with a bounded evidence inspector. */
.sg-review-page-head, .sg-diff-head, .sg-issue-detail-head, .sg-discussion-detail-head, .sg-release-detail-head, .sg-security-head { display: flex; justify-content: space-between; gap: 24px; margin-bottom: 24px; align-items: start; }
.sg-review-page-head p, .sg-diff-head p { margin-top: 8px; color: var(--sg-metadata); font-size: 13px; }
.sg-review-layout { display: grid; grid-template-columns: minmax(0,1fr) var(--sg-inspector-width); gap: 32px; }
.sg-review-main, .sg-review-evidence { min-width: 0; }
.sg-review-evidence { border-left: 1px solid var(--sg-divider); padding-left: 24px; font-size: 13px; }
.sg-review-evidence > header { display: flex; justify-content: space-between; margin-bottom: 20px; }
.sg-review-evidence > section { padding-block: 20px; border-top: 1px solid var(--sg-divider); }
.sg-review-evidence dl > div, .sg-capability-object dl > div, .sg-output-binding > div, .sg-auth-facts > div { display: grid; grid-template-columns: 100px minmax(0,1fr); gap: 16px; padding-block: 8px; font-size: 12px; }
[data-sg-ui] dt { color: var(--sg-metadata); }
[data-sg-ui] dd { margin: 0; min-width: 0; overflow-wrap: anywhere; }
.sg-review-summary { padding-block: 20px; }
.sg-review-summary h2 { font-size: 20px; }
.sg-review-summary p { color: var(--sg-body); margin-top: 12px; }
.sg-review-diff { margin-top: 24px; border-block: 1px solid var(--sg-divider); }
.sg-review-diff > :is(header,footer), .sg-review-file-tabs { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; padding: 12px; font-size: 12px; background: var(--sg-surface); }
.sg-review-file-tabs a { display: flex; gap: 8px; }
.sg-review-diff ol { padding: 0; list-style: none; margin: 0; overflow-x: auto; }
.sg-review-diff li { display: flex; align-items: start; gap: 16px; padding: 4px 12px; font: 12px/1.8 var(--sg-font-mono); }
.sg-review-diff li > span { color: var(--sg-metadata); min-width: 24px; text-align: right; }
.sg-review-diff li code { white-space: pre; }
.sg-reviewer-list > div { display: flex; gap: 12px; padding-block: 12px; border-bottom: 1px solid var(--sg-divider); }
.sg-reviewer-list small { display: block; color: var(--sg-metadata); margin-top: 4px; }
.sg-reviewer-list .sgui-badge { margin-left: auto; }
.sg-review-decision-actions, .sg-review-queue-actions { display: flex; gap: 8px; flex-wrap: wrap; margin-block: 16px; }
.sg-review-annotations { margin-top: 24px; }
.sg-review-annotations article { padding: 16px 0; border-bottom: 1px solid var(--sg-divider); }
.sg-review-annotations p { margin-top: 8px; color: var(--sg-body); }
.sg-diff-actions { display: flex; gap: 8px; flex-wrap: wrap; align-items: start; }
.sg-diff-layout { display: grid; grid-template-columns: 232px minmax(0,1fr); border-block: 1px solid var(--sg-divider); }
.sg-diff-files { border-right: 1px solid var(--sg-divider); }
.sg-diff-pane-title, .sg-diff-editor-head { display: flex; justify-content: space-between; gap: 12px; padding: 12px; min-height: 48px; background: var(--sg-surface); font-size: 12px; }
.sg-diff-pane-title { justify-content: start; }
.sg-diff-file { display: flex; align-items: center; gap: 8px; padding: 12px; font-size: 12px; }
.sg-diff-file:hover, .sg-diff-file.is-active { background: var(--sg-surface); }
.sg-diff-file-copy { min-width: 0; overflow-wrap: anywhere; }
.sg-diff-file-copy strong { font-weight: 500; }
.sg-diff-file-copy small { display: block; color: var(--sg-metadata); margin-top: 4px; }
.sg-diff-editor { min-width: 0; }
.sg-diff-editor-head span { margin-left: 12px; color: var(--sg-metadata); }
.sg-diff-code, .sg-diff-lines, .sg-diff-table-wrap { overflow-x: auto; max-width: 100%; }
.sg-diff-row { display: grid; grid-template-columns: 40px 40px minmax(max-content,1fr); min-height: 24px; font: 12px/24px var(--sg-font-mono); }
.sg-diff-row > :is(span,code) { padding-inline: 8px; white-space: pre; }
.sg-diff-row.is-added, .sg-diff-row.tone-add, .sg-review-diff .tone-add { background: color-mix(in srgb,var(--sg-success) 8%,transparent); }
.sg-diff-row.is-removed, .sg-diff-row.tone-remove { background: color-mix(in srgb,var(--sg-danger) 8%,transparent); }
.sg-diff-row > span { color: var(--sg-metadata); text-align: right; }
.sg-diff-editor-footer, .sg-diff-statusbar { display: flex; gap: 16px; padding: 12px; border-top: 1px solid var(--sg-divider); font-size: 12px; color: var(--sg-metadata); }
.sg-diff-review { margin-top: 24px; }

/* Settings are horizontal feature tabs followed by flat labeled forms. */
.sg-settings-nav { display: flex; gap: 24px; overflow-x: auto; border-bottom: 1px solid var(--sg-divider); margin-bottom: 24px; }
.sg-settings-nav a { padding-block: 12px; white-space: nowrap; font-size: 13px; color: var(--sg-metadata); }
.sg-settings-nav a[aria-current] { color: var(--sg-text); border-bottom: 2px solid var(--sg-text); }
.sg-settings-nav a.is-danger { color: var(--sg-danger); }
.sg-settings-stack { max-width: 1040px; }
.sg-settings-stack .sgui-panel { padding-block: 24px; }
.sg-settings-split { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; }
.sg-settings-stack .sgui-panel-body > form, .sg-settings-form > form { max-width: 720px; }
.sg-settings-stack form > :is(.sgui-field,.sgui-select) { grid-template-columns: 180px minmax(0,1fr); gap: 24px; align-items: center; }
.sg-settings-stack form > .sgui-field > span, .sg-settings-stack form > .sgui-select > span { font-size: 13px; }
.sg-settings-stack form > .sgui-select .sgui-select-menu { left: 204px; min-width: calc(100% - 204px); }
.sg-settings-split form > :is(.sgui-field,.sgui-select) { display: grid; grid-template-columns: 1fr; gap: 8px; }
.sg-settings-form { padding-bottom: 8px; }
.sg-danger-zone { border-top: 1px solid var(--sg-danger); padding-top: 24px; }
.sg-policy-list { list-style: none; padding: 0; margin: 0; }
.sg-policy-list li { display: flex; gap: 12px; align-items: start; padding: 16px 0; border-bottom: 1px solid var(--sg-divider); font-size: 13px; }
.sg-policy-list li > span { color: var(--sg-metadata); }
.sg-stat-grid, .sg-security-stats { display: flex; flex-wrap: wrap; gap: 40px; border-bottom: 1px solid var(--sg-divider); margin-bottom: 24px; }
.sg-account-grid, .sg-organization-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 32px; }
.sg-profile-header { display: flex; align-items: center; gap: 24px; margin-bottom: 32px; }
.sg-profile-avatar { display: grid; place-items: center; height: 64px; width: 64px; background: var(--sg-raised); border-radius: 50%; font-size: 24px; }

/* Collaboration records and planning. */
.sg-issue-detail-layout, .sg-discussion-detail-layout, .sg-release-detail-layout { display: grid; grid-template-columns: minmax(0,1fr) var(--sg-inspector-width); gap: 32px; }
.sg-issue-body, .sg-discussion-body, .sg-release-notes { color: var(--sg-body); line-height: 1.7; white-space: pre-wrap; padding-block: 24px; }
.sg-issue-comments, .sg-discussion-comments { list-style: none; padding: 0; margin: 24px 0; }
.sg-issue-comments article, .sg-discussion-comments article, .sg-comment { padding: 20px 0; border-block: 1px solid var(--sg-divider); }
.sg-comment header { display: flex; gap: 12px; font-size: 12px; color: var(--sg-metadata); }
.sg-comment p { margin-top: 12px; line-height: 1.7; }
.sg-board-columns { display: grid; grid-template-columns: repeat(3,minmax(220px,1fr)); gap: 24px; overflow-x: auto; padding-block: 12px 24px; }
.sg-board-column > header { display: flex; gap: 12px; padding-bottom: 12px; border-bottom: 1px solid var(--sg-divider); font-size: 13px; }
.sg-board-item { padding-block: 16px; border-bottom: 1px solid var(--sg-divider); font-size: 13px; }
.sg-board-item > div > span { display: block; color: var(--sg-metadata); font-size: 12px; margin-top: 8px; }
.sg-board-item form { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 8px; align-items: end; margin-top: 16px; }
.sg-board-item form > label:first-of-type, .sg-board-item .sgui-action-status { grid-column: 1 / -1; }
.sg-board-empty { color: var(--sg-metadata); font-size: 12px; padding-block: 16px; }
.sg-board-item .sgui-select { margin-bottom: 0; flex: 1; }
.sg-board-item-link:hover { color: var(--sg-focus); }
.sg-search-form { display: flex; gap: 12px; margin-block: 16px 24px; }
.sg-search-form .sgui-field { flex: 1; margin: 0; }
.sg-search-result { display: block; padding: 20px 0; border-bottom: 1px solid var(--sg-divider); }
.sg-search-result p { color: var(--sg-body); margin-top: 8px; }
.sg-search-result small { color: var(--sg-metadata); }
.sg-notification { display: flex; gap: 16px; padding: 20px 0; border-bottom: 1px solid var(--sg-divider); }
.sg-actions-layout, .sg-registry-layout, .sg-release-layout { display: block; }
.sg-actions-main, .sg-actions-aside { min-width: 0; }
.sg-actions-aside { margin-top: 32px; display: grid; grid-template-columns: 1fr 1fr; gap: 32px; border-top: 1px solid var(--sg-divider); padding-top: 24px; }
.sg-actions-aside .sgui-panel { border: 0; padding: 0; }
.sg-run-summary, .sg-release-summary, .sg-package-summary { display: flex; gap: 24px; flex-wrap: wrap; padding-block: 16px; }
.sg-pipeline-required-checks { display: grid; gap: 8px; }
.sg-workflow-log, .sg-run-log, .sg-pipeline-log { overflow: auto; max-height: 520px; padding: 20px; background: var(--sg-surface); font: 12px/1.8 var(--sg-font-mono); }
.sg-output-binding { margin-block: 16px; overflow-wrap: anywhere; }
.sg-output-binding > div { grid-template-columns: 140px minmax(0,1fr); }

/* Graph and README use exactly the same node geometry and document primitives. */
[data-sg-ui] .b8ui-graph-plane { transform: translate(var(--b8-flow-pan-x),var(--b8-flow-pan-y)) scale(var(--b8-flow-scale)); transform-origin: center; }
[data-sg-ui] [data-sg-graph-static] .b8ui-graph-plane { transform: none; }
[data-sg-ui] figure { margin-inline: 0; }
[data-sg-ui] .b8ui-graph-node { width: 256px; min-height: 132px; padding: 16px; border-radius: 4px; box-shadow: none; }
[data-sg-ui] .b8ui-graph-node-head { align-items: start; }
[data-sg-ui] .b8ui-graph-node-copy small { text-transform: uppercase; letter-spacing: .02em; font-size: 12px; margin-bottom: 2px; }
[data-sg-ui] .b8ui-graph-node-copy strong { font-size: 13px; line-height: 20px; }
[data-sg-ui] .b8ui-graph-node-icon { padding-top: 2px; color: var(--sg-metadata); }
[data-sg-ui] .b8ui-graph-node-status { display: inline-flex; align-items: center; gap: 4px; font-size: 10px; }
[data-sg-ui] .b8ui-graph-node-status i { width: 4px; height: 4px; border-radius: 50%; background: currentColor; }
[data-sg-ui] .b8ui-graph-node-meta { color: var(--sg-metadata); font: 11px/16px var(--sg-font-mono); overflow-wrap: anywhere; margin-left:auto; }
[data-sg-ui] .b8ui-graph-node-footer { display:flex; align-items:center; gap:8px; margin-top:16px; }
[data-sg-ui] .b8ui-graph-handle { position: absolute; top: 50%; width: 8px; height: 8px; border: 1px solid var(--sg-divider); border-radius: 50%; background: var(--sg-canvas); transform: translateY(-50%); }
[data-sg-ui] .b8ui-graph-handle.is-source { right: -5px; }
[data-sg-ui] .b8ui-graph-handle.is-target { left: -5px; }
[data-sg-ui] .b8ui-graph-controls { position: absolute; z-index: 2; left: 12px; bottom: 12px; display: flex; width: fit-content; background: var(--sg-raised); border: 1px solid var(--sg-divider); border-radius: 4px; }
[data-sg-ui] .b8ui-graph-controls button { display: grid; place-items: center; width: 32px; height: 32px; padding: 0; background: none; border: 0; color: var(--sg-body); }
[data-sg-ui] .b8ui-graph-controls button:hover { background: var(--sg-hover); }
[data-sg-ui] .b8ui-graph-locked-icon, [data-sg-ui] [data-locked="true"] .b8ui-graph-unlocked-icon { display: none; }
[data-sg-ui] [data-locked="true"] .b8ui-graph-locked-icon { display: inline; }
[data-sg-ui] .b8ui-graph-minimap { display: none; }
.sg-authority-graph footer { display: flex; gap: 16px; color: var(--sg-metadata); font-size: 12px; padding-block: 12px; }
.sg-capability-detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; margin-top: 24px; }
.sg-capability-object > header, .sg-capability-evidence > header { display: flex; align-items: start; justify-content: space-between; margin-bottom: 16px; }
.sg-capability-object > header span, .sg-capability-evidence > header span { color: var(--sg-metadata); display: block; font-size: 12px; }
.sg-capability-evidence ol { list-style: none; padding: 0; margin: 0; }
.sg-capability-evidence li { display: flex; gap: 12px; padding-block: 16px; border-bottom: 1px solid var(--sg-divider); font-size: 12px; }
.sg-capability-evidence li span { display: block; margin-top: 4px; color: var(--sg-metadata); }
.sg-capability-evidence time { margin-left: auto; color: var(--sg-metadata); }
.sg-disclosure-simulator { margin-block: 24px; }
.sg-disclosure-simulator > header { display: flex; gap: 24px; justify-content: space-between; }
.sg-disclosure-simulator p, .sg-disclosure-simulator footer { color: var(--sg-metadata); font-size: 13px; margin-block: 12px; }
.sg-disclosure-axis-head, .sg-disclosure-rule-list li { display: grid; grid-template-columns: 2fr repeat(5,1fr); gap: 16px; padding: 12px 0; font-size: 12px; }
.sg-disclosure-axis-head { color: var(--sg-metadata); border-bottom: 1px solid var(--sg-divider); }
.sg-disclosure-rule-list { list-style: none; padding: 0; margin: 0; }
.sg-disclosure-rule-list small { display: none; }
.sg-disclosure-rule-list li { border-bottom: 1px solid var(--sg-divider); }
[data-sg-ui] .sgui-document { color: var(--sg-body); line-height: 1.7; max-width: 960px; overflow-wrap: anywhere; }
[data-sg-ui] .sgui-document-heading { color: var(--sg-text); margin: 32px 0 12px; letter-spacing: -.02em; }
[data-sg-ui] .sgui-document > h2 { font-size: 24px; line-height: 32px; }
[data-sg-ui] .sgui-document > h3 { font-size: 18px; line-height: 26px; }
[data-sg-ui] .sgui-document > :first-child { margin-top: 0; }
[data-sg-ui] .sgui-document > :is(p,ul,ol) { margin-block: 12px; }
[data-sg-ui] .sgui-document .sgui-table-scroll { margin-block: 24px; }
[data-sg-ui] .sgui-document .sgui-table td { height: 48px; }
[data-sg-ui] .sgui-code-block { margin: 24px 0; border: 1px solid var(--sg-divider); border-radius: 4px; background: var(--sg-surface); }
[data-sg-ui] .sgui-code-block figcaption { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 40px; padding: 4px 8px 4px 16px; border-bottom: 1px solid var(--sg-divider); font: 12px/16px var(--sg-font-sans); color: var(--sg-metadata); }
[data-sg-ui] .sgui-code-title { display: inline-flex; align-items: center; gap: 8px; min-width: 0; }
[data-sg-ui] .sgui-code-title .codicon { width: 14px; height: 14px; font-size: 14px; }
[data-sg-ui] .sgui-code-block pre { margin: 0; padding: 16px; overflow-x: auto; font: 12px/1.8 var(--sg-font-mono); }
[data-sg-ui] .sgui-code-block code { padding: 0; background: none; font: inherit; }
[data-sg-ui] .sgui-document-note { margin: 24px 0; padding: 4px 0 4px 16px; border-left: 2px solid var(--sg-focus); }
[data-sg-ui] .sgui-document-note p { margin: 0; }

/* Public catalog, account entry and documentation. */
.sg-public-shell { min-height: 100dvh; }
.sg-public-header { display: flex; align-items: center; justify-content: space-between; min-height: 64px; padding: 0 max(24px,calc((100vw - 1120px)/2)); border-bottom: 1px solid var(--sg-divider); gap: 24px; }
.sg-public-brand { display: flex; gap: 12px; align-items: center; font-weight: 600; }
.sg-public-header nav { display: flex; align-items: center; gap: 24px; font-size: 13px; }
.sg-public-home, .sg-docs { max-width: 1120px; margin-inline: auto; padding: 48px 24px; }
.sg-public-hero { display: block; max-width: 720px; padding-block: 16px 48px; }
.sg-public-hero h1 { font-size: 36px; line-height: 44px; margin-block: 12px 16px; }
.sg-public-hero p { color: var(--sg-body); line-height: 1.7; max-width: 600px; }
.sg-public-hero-actions { display: flex; gap: 12px; margin-top: 24px; }
.sg-page-eyebrow { color: var(--sg-metadata); font-size: 12px; }
.sg-public-invitation { display: block; color: var(--sg-metadata); font-size: 12px; margin-top: 16px; }
.sg-public-section-head { display: flex; justify-content: space-between; gap: 24px; align-items: end; margin-bottom: 16px; }
.sg-public-section-head p { color: var(--sg-metadata); font-size: 13px; margin-top: 8px; }
.sg-public-repo-count { color: var(--sg-metadata); font-size: 12px; }
.sg-public-footer { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding-top: 32px; color: var(--sg-metadata); font-size: 12px; }
.sg-public-footer > span { display: flex; align-items: center; gap: 8px; }
.sg-auth-flow { max-width: 400px; margin: 64px auto; padding: 0 24px; }
.sg-auth-flow h1 { font-size: 24px; line-height: 32px; margin-bottom: 8px; }
.sg-auth-intro { margin-bottom: 32px; }
.sg-auth-intro p { color: var(--sg-metadata); font-size: 13px; }
.sg-auth-form { display: grid; gap: 8px; }
.sg-auth-form .sgui-alert { margin-bottom: 16px; }
.sg-auth-form-footer { color: var(--sg-metadata); font-size: 13px; margin-top: 16px; }
.sg-auth-form-footer a, .sg-auth-flow p a { color: var(--sg-focus); }
.sg-auth-session { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--sg-divider); color: var(--sg-metadata); font-size: 12px; }
.sg-docs { display: grid; grid-template-columns: 200px minmax(0,1fr); gap: 48px; }
/* Standalone 403/404/410/500 documents share the public header and one reading column. */
.sg-error-page { min-height: 100dvh; display: flex; flex-direction: column; }
.sg-error-main { width: min(592px, 100%); margin: min(18dvh, 160px) auto 64px; padding: 0 24px; }
.sg-error-status { color: var(--sg-metadata); font-size: 13px; }
.sg-error-main h1 { margin-top: 8px; font-size: 28px; line-height: 36px; }
.sg-error-main > p:not(.sg-error-status) { margin-top: 12px; color: var(--sg-body); font-size: 14px; line-height: 22px; }
.sg-error-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }
.sg-error-actions form { display: contents; }
.sg-docs nav a { display: block; padding-block: 8px; color: var(--sg-metadata); font-size: 13px; }
.sg-docs section { padding-bottom: 32px; }

@media (max-width:1119px) {
  .sg-product-search { display: none; }
  .sg-review-layout, .sg-issue-detail-layout, .sg-discussion-detail-layout, .sg-release-detail-layout { grid-template-columns: minmax(0,1fr); }
  .sg-review-evidence { border-left: 0; border-top: 1px solid var(--sg-divider); padding: 24px 0 0; }
}
@media (max-width:899px) {
  .sg-product-page { padding: 24px; }
  .sg-settings-split, .sg-account-grid, .sg-organization-grid, .sg-actions-aside, .sg-capability-detail-grid { grid-template-columns: minmax(0,1fr); }
  .sg-diff-layout { grid-template-columns: minmax(0,1fr); }
  .sg-diff-files { display: flex; overflow-x: auto; border-right: 0; border-bottom: 1px solid var(--sg-divider); }
  .sg-diff-file { min-width: 200px; }
  .sg-diff-pane-title { display: none; }
}
@media (max-width:699px) {
  .sg-product-page { padding: 20px 16px 32px; }
  .sg-view-heading, .sg-review-page-head, .sg-diff-head, .sg-issue-detail-head, .sg-discussion-detail-head, .sg-release-detail-head { flex-direction: column; align-items: stretch; gap: 16px; }
  .sg-view-heading h1 { font-size: 20px; }
  .sg-view-actions { width: 100%; }
  [data-sg-ui] .sgui-table td { padding: 12px 8px; }
  [data-sg-ui] .sgui-table th { padding-inline: 8px; }
  [data-sg-ui] .sgui-table-scroll { margin-inline: 0; }
  [data-sg-ui] .sgui-data-table .sgui-table { min-width: 640px; }
  [data-sg-ui] .sgui-data-table .sgui-table td:first-child { min-width: 220px; }
  [data-sg-ui] .sg-workbench-mobile-navigation :is(.sg-workbench-navigation a,.sg-source-rail-footer a,.sgui-panel-tablist button) { min-height: 44px; }
  [data-sg-ui] .sgui-dialog-close { width: 44px; height: 44px; }
  [data-sg-ui] .sgui-panel-head { flex-direction: column; gap: 12px; }
  [data-sg-ui] .sgui-panel-icon { display: none; }
  [data-sg-ui] :is(.sgui-input,.sgui-textarea,.sgui-select-trigger,.sgui-search input) { font-size: 16px; }
  [data-sg-ui] :is(.sgui-button,.sgui-select-trigger,.sgui-input) { min-height: 44px; }
  [data-sg-ui] .sgui-table-sort { min-height: 44px; }
  .sg-settings-nav { gap: 20px; margin-bottom: 20px; }
  .sg-settings-stack form > :is(.sgui-field,.sgui-select) { grid-template-columns: 1fr; gap: 8px; }
  .sg-settings-stack form > .sgui-select .sgui-select-menu { left: 0; min-width: 100%; }
  .sg-public-header { padding-inline: 16px; gap: 12px; }
  .sg-public-header nav { gap: 12px; }
  .sg-public-header nav > a { display: none; }
  .sg-public-home { padding: 32px 16px; }
  .sg-public-hero h1 { font-size: 28px; line-height: 36px; }
  .sg-public-hero-actions { flex-wrap: wrap; }
  .sg-public-section-head { align-items: start; flex-direction: column; gap: 8px; }
  .sg-public-footer > span:nth-child(2) { display: none; }
  .sg-auth-flow { margin-block: 40px; }
  .sg-docs { grid-template-columns: minmax(0,1fr); padding: 24px 16px; gap: 24px; }
  .sg-docs nav { display: flex; overflow-x: auto; gap: 24px; }
  .sg-docs nav a { white-space: nowrap; }
  .sg-disclosure-axis-head { display: none; }
  .sg-disclosure-rule-list li { grid-template-columns: 1fr 1fr; }
  .sg-disclosure-rule-list li > strong { grid-column: 1 / -1; }
  .sg-disclosure-rule-list small { display: block; color: var(--sg-metadata); }
}
@media (prefers-reduced-motion:reduce) { [data-sg-ui] *, [data-sg-ui] *::before, [data-sg-ui] *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }

/* Record layouts share the same section rhythm; no feature-specific palette. */
.sg-screen-title, .sg-account-head, .sg-organization-head, .sg-page-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 24px; }
.sg-screen-title h1 { display: flex; align-items: center; gap: 12px; }
.sg-screen-title h1 > span { font-size: 13px; color: var(--sg-metadata); font-weight: 400; }
.sg-screen-location { display: none; }
.sg-ref-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 48px; margin-bottom: 16px; }
.sg-ref-toolbar nav { display: flex; gap: 24px; }
.sg-ref-toolbar nav a { font-size: 13px; color: var(--sg-metadata); }
.sg-ref-toolbar nav a[aria-current] { color: var(--sg-text); }
.sg-ref-search { display: flex; gap: 8px; align-items: center; color: var(--sg-metadata); }
.sg-ref-search input { border: 0; background: transparent; color: var(--sg-text); padding: 8px 0; font-size: 13px; width: 240px; }
.sg-ref-group { margin-bottom: 32px; }
.sg-ref-group > header { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; }
.sg-ref-group > header h2 { font-size: 13px; }
.sg-ref-group > header span { font-size: 12px; color: var(--sg-metadata); }
.sg-ref-scroll { overflow-x: auto; border-block: 1px solid var(--sg-divider); }
.sg-ref-scroll table { border-collapse: collapse; width: 100%; font-size: 13px; }
.sg-ref-scroll td { height: 64px; padding: 12px; border-bottom: 1px solid var(--sg-divider); }
.sg-ref-scroll tr:last-child td { border: 0; }
.sg-ref-scroll td:first-child { width: 50%; }
.sg-ref-identity { display: flex; align-items: center; gap: 12px; min-width: 200px; }
.sg-ref-identity strong { font-weight: 500; }
.sg-ref-identity small { display: flex; gap: 8px; margin-top: 6px; color: var(--sg-metadata); font-size: 11px; }
.sg-ref-symbol { color: var(--sg-metadata); }
.sg-ref-symbol.is-default, .sg-ref-state .is-active { color: var(--sg-success); }
.sg-ref-protection > span, .sg-ref-operations > div, .sg-text-action { display: flex; align-items: center; gap: 8px; white-space: nowrap; font-size: 12px; }
.sg-ref-state .is-closed { color: var(--sg-metadata); }
.sg-row-menu, .sg-review-switcher { position: relative; }
.sg-row-menu > summary { display: grid; place-items: center; width: 32px; height: 32px; list-style: none; }
.sg-row-menu > div, .sg-review-switcher > nav { position: absolute; right: 0; top: 100%; z-index: 20; padding: 8px; min-width: 180px; max-width: 320px; background: var(--sg-raised); border: 1px solid var(--sg-divider); box-shadow: 0 8px 24px var(--sg-overlay); }
.sg-review-navigation { display: flex; align-items: center; gap: 16px; margin-bottom: 24px; font-size: 12px; color: var(--sg-metadata); }
.sg-review-switcher { margin-left: auto; }
.sg-review-switcher summary { display: flex; gap: 8px; align-items: center; }
.sg-review-switcher a { display: grid; gap: 4px; padding: 10px; }
.sg-review-switcher a:hover { background: var(--sg-hover); }
.sg-review-switcher a span { font-size: 11px; color: var(--sg-metadata); }
.sg-review-lifecycle { margin-bottom: 24px; font-size: 12px; color: var(--sg-metadata); }
.sg-review-detail { min-width: 0; }
.sg-review-detail-head > div { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.sg-review-facts { display: flex; gap: 24px; flex-wrap: wrap; margin-block: 16px !important; font-size: 12px; }
.sg-review-facts dd { margin-top: 4px; }
.sg-review-lower-grid { margin-top: 32px; border-top: 1px solid var(--sg-divider); padding-top: 24px; }
.sg-review-proof p, .sg-review-effect p, .sg-review-checks p { color: var(--sg-metadata); margin-top: 8px; font-size: 12px; line-height: 1.6; }
.sg-review-annotations-head { display: flex; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
.sg-review-annotation, .sg-review-thread { padding: 16px 0; border-top: 1px solid var(--sg-divider); }
.sg-review-annotation p, .sg-review-thread p { margin-top: 8px; color: var(--sg-body); }
.sg-diff-code { padding: 0; list-style: none; margin: 0; }
.sg-diff-line { display: grid; grid-template-columns: 40px 40px 24px minmax(max-content,1fr); min-width: max-content; font: 12px/24px var(--sg-font-mono); }
.sg-diff-line code { white-space: pre; font: inherit; }
.sg-diff-number { text-align: right; padding-right: 8px; color: var(--sg-metadata); user-select: none; }
.sg-diff-marker { text-align: center; }
.sg-diff-line-add { background: color-mix(in srgb,var(--sg-success) 8%,transparent); }
.sg-diff-line-remove { background: color-mix(in srgb,var(--sg-danger) 8%,transparent); }
.sg-diff-review { grid-column: 1 / -1; border-top: 1px solid var(--sg-divider); padding-top: 24px; }
.sg-diff-facts, .sg-object-facts { display: grid; gap: 12px; }
.sg-diff-facts > div, .sg-object-facts > div { display: grid; grid-template-columns: 120px minmax(0,1fr); gap: 16px; font-size: 13px; }
.sg-diff-checks { margin-block: 24px; font-size: 13px; }
.sg-diff-checks ul { display: flex; gap: 16px; flex-wrap: wrap; list-style: none; padding: 0; }
.sg-patch-authoring-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.sg-patch-authoring-actions { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.sg-issue-detail, .sg-package-detail { display: grid; grid-template-columns: minmax(0,1fr) var(--sg-inspector-width); gap: 32px; }
.sg-issue-main, .sg-package-main { min-width: 0; }
.sg-issue-sidebar { border-left: 1px solid var(--sg-divider); padding-left: 24px; }
.sg-issue-event { display: flex; align-items: start; gap: 16px; padding: 20px 0; border-top: 1px solid var(--sg-divider); font-size: 13px; }
.sg-issue-event p { margin-top: 8px; color: var(--sg-body); white-space: pre-wrap; }
.sg-issue-event time { margin-left: auto; color: var(--sg-metadata); font-size: 12px; white-space: nowrap; }
.sg-issue-event-marker { color: var(--sg-metadata); }
.sg-notification-summary { color: var(--sg-metadata); font-size: 13px; margin-bottom: 24px; }
.sg-notification-summary p { margin-top: 8px; }
.sg-notification-card { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 20px 0; border-top: 1px solid var(--sg-divider); font-size: 13px; }
.sg-notification-title-row { display: flex; align-items: center; gap: 12px; }
.sg-notification-copy p, .sg-notification-copy time { color: var(--sg-metadata); font-size: 12px; margin-top: 6px; display: block; }
.sg-notification-card.is-unread a { font-weight: 600; }
.sg-notification-card.is-read { color: var(--sg-metadata); }
.sg-account-settings-grid, .sg-organization-settings-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 32px; }
.sg-account-settings-grid .sgui-panel, .sg-organization-settings-grid .sgui-panel { min-width: 0; }
.sg-account-settings > header, .sg-organization-settings > header { margin-bottom: 32px; }
.sg-account-settings > header p, .sg-organization-settings > header p { margin-top: 8px; color: var(--sg-metadata); }
.sg-profile-actions, .sg-home-form-actions { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
.sg-invitation-list > header, .sg-list-heading { display: flex; justify-content: space-between; gap: 16px; align-items: center; margin-block: 16px; }
.sg-invitation-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-block: 16px; border-top: 1px solid var(--sg-divider); font-size: 13px; }
.sg-invitation-row > div:first-child { display: grid; gap: 4px; min-width: 0; overflow-wrap: anywhere; }
.sg-invitation-row > div > span { color: var(--sg-metadata); font-size: 12px; }
.sg-list-heading :is(a,span) { font-size: 12px; color: var(--sg-metadata); }
.sg-clone-row { display: flex; align-items: center; gap: 16px; padding: 16px 0; }
.sg-clone-command { flex: 1; overflow-wrap: anywhere; }
.sg-home-change-list { list-style: none; padding: 0; margin: 0; }
.sg-home-change-list > li { border-top: 1px solid var(--sg-divider); padding-block: 16px; }
.sg-home-change-list a { display: flex; justify-content: space-between; gap: 16px; font-size: 13px; }
.sg-home-change-list span { color: var(--sg-metadata); }
.sg-auth-actions { display: grid; grid-template-columns: 1fr; gap: 8px; }
.sg-auth-actions > :first-child { width: 100%; }
.sg-auth-actions > a { justify-content: center; }
@media(max-width:1119px) {
  .sg-issue-detail, .sg-package-detail { grid-template-columns: minmax(0,1fr); }
  .sg-issue-sidebar { border-left: 0; padding-left: 0; border-top: 1px solid var(--sg-divider); padding-top: 24px; }
}
@media(max-width:899px) { .sg-account-settings-grid, .sg-organization-settings-grid { grid-template-columns: minmax(0,1fr); } }
@media(max-width:699px) {
  .sg-screen-title { align-items: start; flex-direction: column; gap: 16px; }
  .sg-ref-toolbar { flex-wrap: wrap; }
  .sg-ref-search input { font-size: 16px; max-width: 220px; }
  .sg-ref-scroll td { padding: 12px 8px; }
  .sg-review-navigation { flex-wrap: wrap; }
  .sg-review-switcher { margin-left: 0; }
  .sg-review-switcher > nav { right: auto; left: 0; }
  .sg-review-facts { gap: 16px; }
  .sg-patch-authoring-grid { grid-template-columns: minmax(0,1fr); }
  .sg-issue-event { flex-wrap: wrap; }
  .sg-issue-event time { margin-left: 32px; }
  .sg-notification-card { align-items: start; flex-direction: column; gap: 12px; }
  .sg-notification-title-row { align-items: start; }
  .sg-home-change-list a { flex-direction: column; gap: 8px; }
}

/* Account and organization forms use the same flat section rhythm. */
.sg-settings-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 32px; margin-top: 32px; }
.sg-settings-grid > * { min-width: 0; }
.sgui-table td > a { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; }
.sg-settings-page-head { display: flex; align-items: start; justify-content: space-between; gap: 24px; margin-bottom: 24px; }
.sg-settings-page-head h1 { margin-block: 12px 8px; }
.sg-settings-page-head p { color: var(--sg-metadata); font-size: 13px; }
@media(max-width:1119px) { .sg-settings-grid { grid-template-columns: minmax(0,1fr); } }
@media(max-width:699px) { .sg-settings-page-head { flex-direction: column; } }

/* Direct native measurements: SG Source 08dae032-bb22-8016-8008-a9e8b2393db5. */
.sg-workbench-brand { justify-content:space-between; padding:0 8px; gap:8px; }
.sg-workbench-brand img { display:block; width:124px; height:auto; }
.sg-rail-toggle { width:32px; height:32px; flex:none; position:relative; display:grid; place-items:center; background:var(--sg-raised); border-radius:8px; cursor:pointer; }
.sg-rail-toggle input { position:absolute; inset:0; opacity:0; cursor:pointer; }
.sg-rail-toggle:focus-within { outline:2px solid var(--sg-focus); }
.sg-workbench:has(.sg-rail-toggle input:checked) { grid-template-columns:48px minmax(0,1fr); }
.sg-workbench:has(.sg-rail-toggle input:checked) .sg-workbench-rail { padding:0; }
.sg-workbench:has(.sg-rail-toggle input:checked) :is(.sg-workbench-brand a,.sg-workbench-rail .sgui-panel-tablist,.sg-workbench-navigation a span,.sg-source-rail-footer a span) { display:none; }
.sg-workbench:has(.sg-rail-toggle input:checked) .sg-workbench-navigation a { justify-content:center; }
.sg-workbench-navigation { padding-top:16px; }
.sg-workbench-navigation a { gap:12px; padding:0 8px; }
.sg-workbench-navigation a:nth-child(4), .sg-workbench-navigation a:nth-child(7) { margin-top:20px; }
.sg-workbench-navigation a[aria-current] { background:var(--sg-hover); }
.sg-workbench-rail .sgui-panel-tablist button { font-weight:400; line-height:18px; }
.sg-workbench-rail .sgui-panel-tablist button[aria-selected=true] { font-weight:600; }
.sg-workbench-header { height:48px; padding:0 16px; }
.sg-workbench-breadcrumb { gap:8px; white-space:nowrap; }
.sg-workbench-context { display:inline-flex; gap:8px; color:var(--sg-text); }
.sg-workbench-context > span { color:var(--sg-metadata); }
.sg-workbench-section-row { display:flex; height:40px; border-bottom:1px solid var(--sg-divider); }
.sg-workbench-sections { gap:0; padding:0 16px; border:0; min-width:0; flex:1; overflow-x:auto; }
.sg-workbench-sections a { justify-content:center; min-width:96px; height:40px; padding:0 8px; }
.sg-workbench-section-actions { display:flex; align-items:center; gap:8px; padding:0 16px 0 8px; }
.sg-workbench-section-actions .sgui-dialog-root { display:contents; }
.sg-product-search { width:248px; height:32px; padding:0 8px; background:var(--sg-raised); border-radius:8px; }
.sg-product-search input { flex:1; width:0; font-size:13px; }
.sg-product-global-actions > .sgui-button, .sg-account-menu > summary { width:32px; height:32px; padding:0; display:grid; place-items:center; background:var(--sg-raised); border-radius:8px; }
.sg-account-menu { position:relative; }
.sg-account-menu > summary { cursor:pointer; list-style:none; }
.sg-account-menu nav { position:absolute; right:0; top:40px; min-width:200px; z-index:5; background:var(--sg-surface); padding:8px; border:1px solid var(--sg-divider); }
.sg-account-menu nav a { display:block; padding:8px; }
.sg-public-brand img { display:block; height:48px; width:auto; }
@media (max-width:899px) { .sg-source-screen { grid-template-columns:200px minmax(0,1fr); } .sg-source-status { grid-template-columns:200px 1fr auto; } .sg-product-search { width:160px; } }
@media (max-width:699px) {
 .sg-source-screen { display:flex; flex-direction:column; height:auto; min-height:calc(100dvh - 100px); padding:0; }
 .sg-source-explorer { max-height:224px; border-right:0; border-bottom:1px solid var(--sg-divider); }
 .sg-source-viewer { min-height:480px; overflow:visible; }
 .sg-source-status { display:flex; justify-content:space-between; flex-wrap:wrap; min-height:44px; }
 .sg-source-status > span:first-child { border:0; }
 .sg-source-file-toolbar { height:auto; min-height:44px; }
 .sg-source-files table { min-width:480px; }
 .sg-source-files { overflow:auto; }
 /* Tabs keep the full width; page actions take their own row instead of covering tabs. */
 .sg-workbench-section-row { height:auto; min-height:44px; flex-wrap:wrap; }
 .sg-workbench-sections { flex:1 0 100%; }
 .sg-workbench-section-actions { flex:1 0 100%; flex-wrap:wrap; padding:8px 16px; border-top:1px solid var(--sg-divider); }
 .sg-workbench-section-actions:empty { display:none; }
 .sg-workbench-sections { padding:0 8px; }
 .sg-workbench-sections a { min-width:72px; height:44px; }
 .sg-readme-document { padding:20px 16px; }
}

/* Record workspaces: measured from SG Changes, Issues and Discussions boards. */
.sg-product-page:is(.sg-view-changes,.sg-view-issues,.sg-view-discussions) { padding:0; }
.sg-record-workspace { --record-columns:minmax(0,1fr) 136px 96px 80px; display:grid; grid-template-columns:minmax(0,1fr) 336px; height:calc(100dvh - 88px); min-height:400px; }
.sg-record-list { min-width:0; display:flex; flex-direction:column; }
.sg-record-toolbar { min-height:48px; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:8px 16px; border-bottom:1px solid var(--sg-divider); }
.sg-record-search { width:248px; margin-left:auto; height:32px; padding:0 8px; display:flex; align-items:center; gap:8px; background:var(--sg-raised); border-radius:6px; }
.sg-record-search input { min-width:0; width:100%; font:inherit; color:var(--sg-text); border:0; background:none; outline-offset:4px; }
.sg-record-search input::placeholder { color:var(--sg-metadata); }
.sg-record-filters { display:flex; align-items:center; gap:8px; }
.sg-record-filters a { display:flex; align-items:center; gap:8px; padding:6px 8px; border-radius:6px; white-space:nowrap; }
.sg-record-filters a[aria-current] { background:var(--sg-raised); }
.sg-record-columns { display:grid; grid-template-columns:var(--record-columns); align-items:center; min-height:32px; padding:0 16px 0 40px; background:var(--sg-surface); color:var(--sg-disabled); font-size:12px; text-transform:uppercase; }
.sg-record-columns > span { min-width:0; }
.sg-record-columns .sgui-table-sort { max-width:100%; font-size:inherit; text-transform:inherit; }
.sg-record-columns .sgui-table-sort > span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.sg-record-columns .sgui-table-sort .codicon { flex:none; }
.sg-record-rows { flex:1; overflow:auto; scrollbar-width:thin; }
.sg-record-row { display:grid; grid-template-columns:var(--record-columns); align-items:center; min-height:64px; padding:8px 16px; border-bottom:1px solid var(--sg-divider); color:var(--sg-text); }
.sg-record-row:hover { background:var(--sg-hover); }
.sg-record-row[aria-current] { background:var(--sg-raised); }
.sg-record-title { min-width:0; display:flex; align-items:center; gap:8px; padding-right:16px; }
.sg-record-title > .codicon { color:var(--sg-metadata); flex:none; }
.sg-record-title > span { display:grid; min-width:0; gap:4px; }
.sg-record-title strong { font-weight:400; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.sg-record-title small { color:var(--sg-metadata); font-size:12px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.sg-record-cell { color:var(--sg-metadata); font-size:12px; padding-right:8px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.sg-record-footer { flex:none; display:flex; align-items:center; height:32px; padding:0 16px; border-top:1px solid var(--sg-divider); color:var(--sg-metadata); font-size:12px; }
.sg-record-group { display:flex; align-items:center; gap:8px; padding:0 16px; height:28px; background:var(--sg-surface); border-bottom:1px solid var(--sg-divider); font-size:12px; }
.sg-record-group small { color:var(--sg-disabled); }
.sg-record-compact { --record-columns:minmax(0,1fr) 168px 72px 72px; }
.sg-record-compact .sg-record-toolbar { min-height:44px; padding-block:6px; }
.sg-record-compact .sg-record-columns { min-height:28px; padding-left:16px; }
.sg-record-compact .sg-record-row { min-height:40px; padding-block:4px; }
.sg-record-compact .sg-record-row[aria-current] { box-shadow:inset 2px 0 var(--sg-focus); }
.sg-record-number { flex:none; width:40px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; color:var(--sg-disabled) !important; }
.sg-record-inspector { min-width:0; overflow:auto; display:flex; flex-direction:column; background:var(--sg-surface); border-left:1px solid var(--sg-divider); }
.sg-inspector-header { display:flex; min-height:48px; padding:0 16px; align-items:center; justify-content:space-between; gap:8px; border-bottom:1px solid var(--sg-divider); font-size:12px; }
.sg-record-compact .sg-inspector-header { min-height:44px; }
.sg-inspector-header > span { color:var(--sg-metadata); overflow-wrap:anywhere; }
.sg-inspector-header a { display:flex; align-items:center; gap:8px; white-space:nowrap; }
.sg-inspector-body { display:flex; flex-direction:column; gap:24px; padding:24px; }
.sg-record-compact .sg-inspector-body { gap:20px; padding:16px; }
.sg-inspector-body h2 { font-size:18px; line-height:24px; font-weight:600; letter-spacing:-.3px; margin:0; }
.sg-inspector-body p { margin:0; color:var(--sg-body); font-size:14px; line-height:22px; overflow-wrap:anywhere; }
.sg-inspector-body h3 { font-size:12px; color:var(--sg-metadata); text-transform:uppercase; font-weight:400; margin:0 0 12px; }
.sg-inspector-body .sg-inspector-byline,.sg-inspector-body .sg-inspector-state { font-size:13px; display:flex; gap:8px; align-items:center; }
.sg-inspector-byline > span { color:var(--sg-disabled); font-size:12px; }
.sg-inspector-facts { display:grid; gap:12px; margin:0; }
.sg-inspector-facts > div { display:grid; grid-template-columns:88px minmax(0,1fr); gap:0; }
.sg-inspector-facts dt { color:var(--sg-metadata); font-size:12px; }
.sg-inspector-facts dd { margin:0; color:var(--sg-body); overflow-wrap:anywhere; }
.sg-inspector-files a { display:flex; align-items:center; gap:8px; min-height:32px; }
.sg-inspector-files a span { flex:1; overflow-wrap:anywhere; }
.sg-inspector-files a small { color:var(--sg-metadata); }
.sg-inspector-actions { display:flex; justify-content:space-between; align-items:center; margin-top:auto; border-top:1px solid var(--sg-divider); padding:6px 16px; min-height:48px; }
.sg-record-empty { color:var(--sg-metadata); padding:24px; }
.sg-record-row[hidden], .sg-record-empty[hidden] { display:none; }
@media(max-width:1119px) {
 .sg-record-workspace { grid-template-columns:minmax(0,1fr) 288px; --record-columns:minmax(0,1fr) 80px 64px 56px; }
 .sg-record-workspace.sg-record-compact { --record-columns:minmax(0,1fr) 120px 72px 64px; }
}
@media(max-width:899px) {
 .sg-record-workspace { grid-template-columns:minmax(0,1fr); height:auto; }
 .sg-record-inspector { border-left:0; border-top:1px solid var(--sg-divider); }
 .sg-record-list { min-height:400px; }
}
@media(max-width:599px) {
 .sg-record-workspace, .sg-record-workspace.sg-record-compact { --record-columns:minmax(0,1fr) 64px; }
 .sg-record-cell:not(:last-child),.sg-record-columns > span:not(:first-child):not(:last-child) { display:none; }
 .sg-record-toolbar { gap:8px; }
 .sg-record-search { width:160px; }
 .sg-record-filters { gap:0; }
}

[data-sg-ui] .sg-record-row { color:var(--sg-text); }
[data-sg-ui] .sg-record-row.tone-success .sg-record-title > .codicon { color:var(--sg-success); }
[data-sg-ui] .sg-record-row.tone-warning .sg-record-title > .codicon { color:var(--sg-warning); }

.sg-product-page:is(.sg-view-projects,.sg-view-actions,.sg-view-packages,.sg-view-releases) { padding:0; }
.sg-view-actions .sg-record-workspace { grid-template-columns:minmax(0,1fr) 360px; --record-columns:minmax(0,1fr) 156px 76px 64px; }
.sg-view-packages .sg-record-workspace { grid-template-columns:minmax(0,1fr) 368px; --record-columns:minmax(0,1fr) 112px 168px 104px; }
.sg-view-releases .sg-record-workspace { grid-template-columns:minmax(0,1fr) 368px; --record-columns:minmax(0,1fr) 128px 112px; }
.sg-view-packages .sg-record-row,.sg-view-releases .sg-record-row,.sg-view-discussions .sg-record-row { min-height:72px; }
.sg-run-checks { padding:0; list-style:none; }
.sg-run-checks li { display:flex; align-items:center; min-height:36px; gap:8px; }
.sg-run-checks li > span { flex:1; }
.sg-run-checks small { color:var(--sg-metadata); }
.sg-run-detail-toolbar { display:flex; gap:16px; align-items:center; height:48px; padding:0 24px; border-bottom:1px solid var(--sg-divider); }
.sg-run-detail-screen > .sgui-panel,.sg-workflow-requests > .sgui-panel { padding:24px; }
.sg-checks-screen > .sg-view-heading { padding:20px 24px; margin:0; border-bottom:1px solid var(--sg-divider); }
.sg-checks-screen h1 { font-size:18px; }
.sg-checks-layout { display:grid; grid-template-columns:minmax(0,1fr) 320px; min-height:calc(100dvh - 152px); }
.sg-checks-layout > div { padding:24px; }
.sg-checks-layout h2 { font-size:13px; font-weight:500; margin-bottom:24px; }
.sg-checks-layout .sg-section-heading h2 { margin:0; }
.sg-checks-layout aside { background:var(--sg-surface); border-left:1px solid var(--sg-divider); padding:24px; }
.sg-checks-layout .sg-inspector-facts { margin:32px 0; }
.sg-checks-layout .sg-inspector-facts > div { padding:12px 0; border-bottom:1px solid var(--sg-divider); grid-template-columns:144px 1fr; }
.sg-release-verification,.sg-project-catalog { padding:24px; }
.sg-projects-layout { display:flex; flex-direction:column; min-height:calc(100dvh - 88px); }
.sg-projects-layout > .sg-record-footer { margin-top:auto; }
.sg-board-toolbar { display:flex; align-items:center; height:48px; padding:0 16px; gap:12px; color:var(--sg-metadata); border-bottom:1px solid var(--sg-divider); }
.sg-board-unplaced { display:flex; align-items:center; gap:8px; padding:16px; min-height:56px; background:var(--sg-surface); color:var(--sg-warning); }
.sg-board-unplaced a { margin-left:auto; color:var(--sg-body); }
.sg-projects-layout > .sg-board-columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; padding:24px; }
.sg-projects-layout .sg-board-column { border:0; padding:0; background:none; }
.sg-projects-layout .sg-board-column > header { display:flex; align-items:center; gap:8px; min-height:44px; padding:0 0 12px; }
.sg-projects-layout .sg-board-column > header strong { font-size:13px; font-weight:400; }
.sg-projects-layout .sg-board-column > header span { color:var(--sg-metadata); font-size:12px; }
.sg-projects-layout .sg-board-items { display:grid; gap:12px; margin-block-start:var(--sg-space-3); }
.sg-planning-item { display:flex; flex-direction:column; gap:16px; min-height:108px; padding:12px; border-radius:8px; background:var(--sg-surface); }
.sg-planning-item:hover { background:var(--sg-hover); }
.sg-planning-item > span { display:flex; align-items:center; gap:8px; color:var(--sg-metadata); font-size:12px; }
.sg-planning-item > strong { font-weight:400; font-size:13px; }
.sg-planning-item footer { display:flex; justify-content:space-between; gap:12px; color:var(--sg-metadata); font-size:12px; }
@media(max-width:1119px) {
 .sg-view-actions .sg-record-workspace,.sg-view-packages .sg-record-workspace,.sg-view-releases .sg-record-workspace { grid-template-columns:minmax(0,1fr) 288px; }
 .sg-view-actions .sg-record-workspace,.sg-view-packages .sg-record-workspace { --record-columns:minmax(0,1fr) 80px 72px 56px; }
 .sg-checks-layout { grid-template-columns:minmax(0,1fr) 256px; }
}
@media(max-width:899px) {
 .sg-view-actions .sg-record-workspace,.sg-view-packages .sg-record-workspace,.sg-view-releases .sg-record-workspace { grid-template-columns:minmax(0,1fr); }
 .sg-checks-layout { grid-template-columns:minmax(0,1fr); }
 .sg-projects-layout > .sg-board-columns { grid-template-columns:repeat(3,minmax(240px,1fr)); overflow:auto; }
}
@media(max-width:599px) {
 .sg-view-actions .sg-record-workspace,.sg-view-packages .sg-record-workspace,.sg-view-releases .sg-record-workspace { --record-columns:minmax(0,1fr) 64px; }
}

.sg-product-page:is(.sg-view-security,.sg-view-settings) { padding:0; }
.sg-security-summary { height:84px; display:flex; align-items:center; gap:8px; padding:16px; border-bottom:1px solid var(--sg-divider); }
.sg-security-summary strong { font-size:20px; }
.sg-security-summary small { margin-left:24px; color:var(--sg-metadata); }
.sg-security-workspace .sg-record-workspace { height:calc(100dvh - 172px); grid-template-columns:minmax(0,1fr) 368px; --record-columns:minmax(0,1fr) 104px 88px; }
.sg-security-tab { padding:0 24px; }
.sg-security-tab .sgui-data-toolbar { height:48px; }
.sg-security-tab .sgui-data-table + .sgui-data-table { margin-top:24px; }
.sg-settings-layout { display:grid; grid-template-columns:minmax(0,1fr) 288px; gap:24px; padding:0 24px 32px; }
.sg-settings-layout > .sg-view-heading { grid-column:1/-1; padding:16px 24px; margin:0 -24px; height:80px; border-bottom:1px solid var(--sg-divider); }
.sg-settings-layout > .sg-view-heading h1 { font-size:18px; font-weight:600; line-height:24px; }
.sg-settings-stack { max-width:none; min-width:0; }
.sg-settings-stack .sgui-panel { padding:0 0 32px; }
.sg-settings-stack .sgui-panel-head { padding:8px 0 20px; }
.sg-settings-stack .sgui-panel-head h2 { font-size:13px; font-weight:400; }
.sg-settings-stack .sgui-panel-icon { display:none; }
.sg-settings-stack .sgui-panel-title > div { display:flex; flex-direction:column; gap:20px; }
.sg-settings-stack .sgui-panel-body { padding:0; }
.sg-settings-stack .sgui-panel-body > form,.sg-settings-form > form { max-width:none; }
.sg-settings-form form > :is(.sgui-field,.sgui-select) { grid-template-columns:256px minmax(0,1fr); gap:24px; min-height:40px; margin-bottom:20px; }
.sg-settings-form :is(input,.sgui-select-trigger) { min-height:40px; background:var(--sg-raised); border:0; border-radius:8px; padding:8px; }
.sg-settings-form form > .sgui-select .sgui-select-menu { left:280px; min-width:calc(100% - 280px); }
.sg-settings-context { align-self:start; background:var(--sg-surface); padding:24px 16px; }
.sg-settings-context h2 { font-size:13px; font-weight:400; margin:0 0 24px; }
.sg-settings-context .sg-inspector-facts > div { border-bottom:1px solid var(--sg-divider); padding:12px 0; }
.sg-settings-context p { margin:16px 0 24px; font-size:14px; line-height:22px; color:var(--sg-body); }
.sg-settings-split { display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.sg-settings-split .sgui-dialog { text-align:left; }
@media(max-width:1119px) { .sg-settings-layout { grid-template-columns:minmax(0,1fr) 240px; } .sg-settings-form form > :is(.sgui-field,.sgui-select) { grid-template-columns:180px minmax(0,1fr); } }
@media(max-width:899px) { .sg-settings-layout { grid-template-columns:minmax(0,1fr); } .sg-settings-context { display:none; } .sg-security-workspace .sg-record-workspace { grid-template-columns:minmax(0,1fr); height:auto; } }
@media(max-width:599px) { .sg-settings-form form > :is(.sgui-field,.sgui-select) { grid-template-columns:minmax(0,1fr); gap:8px; } .sg-settings-form form > .sgui-select .sgui-select-menu { left:0; min-width:100%; } }
.sg-view-change, .sg-view-diff { padding: 0; }
.sg-change-overview { display: grid; grid-template-columns: minmax(0,1fr) 336px; min-height: calc(100dvh - 88px); }
.sg-change-main { min-width: 0; }
.sg-change-title { padding: 24px; border-bottom: 1px solid var(--sg-divider); }
.sg-change-title > div, .sg-change-source { display: flex; gap: 12px; align-items: center; font-size: 12px; color: var(--sg-metadata); }
.sg-change-title h1 { font-size: 18px; font-weight: 500; margin: 12px 0 8px; }
.sg-change-title p { font-size: 13px; color: var(--sg-metadata); margin: 8px 0 0; }
.sg-change-files-summary, .sg-change-activity, .sg-change-checks-main { padding: 24px; border-bottom: 1px solid var(--sg-divider); }
.sg-change-files-summary > header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; }
.sg-change-overview h2, .sg-change-overview h3 { font-size: 13px; font-weight: 600; }
.sg-change-files-summary h2 span { margin-left: 8px; color: var(--sg-metadata); }
.sg-change-files-summary > header a { display: flex; gap: 8px; align-items: center; font-size: 12px; }
.sg-change-file-summary { display: flex; gap: 12px; align-items: center; min-height: 40px; border-bottom: 1px solid var(--sg-divider); font-size: 12px; }
.sg-change-file-summary > span:last-child { margin-left: auto; color: var(--sg-metadata); }
.sg-change-comment { padding: 16px 0; border-bottom: 1px solid var(--sg-divider); font-size: 13px; }
.sg-change-comment header { display: flex; justify-content: space-between; color: var(--sg-metadata); }
.sg-change-comment p { margin-top: 12px; }
.sg-change-overview > .sg-review-evidence { padding: 0 16px; }
.sg-change-overview > .sg-review-evidence > header { height: 48px; margin: 0; align-items: center; }
.sg-change-overview > .sg-review-evidence > section { padding-block: 16px; }
.sg-change-overview .sg-review-evidence p { margin-top: 8px; color: var(--sg-metadata); line-height: 1.6; }
.sg-change-checks-main > section { padding-bottom: 24px; }
.sg-change-lifecycle { border-top: 1px solid var(--sg-divider); padding: 16px 0; }
.sg-change-lifecycle summary { font-size: 12px; cursor: pointer; }
.sg-change-notice { padding: 16px 24px; background: var(--sg-surface); border-bottom: 1px solid var(--sg-divider); }
.sg-review-decision-options { border: 0; padding: 0; display: grid; gap: 20px; margin: 0 0 24px; }
.sg-review-decision-options label { display: flex; gap: 12px; align-items: center; font-size: 13px; }
.sg-review-decision-note { margin-block: 16px; padding: 12px; background: var(--sg-canvas); font-size: 12px; line-height: 1.7; }
.sg-dialog-actions { display: flex; gap: 8px; justify-content: flex-end; }
.sg-view-diff .sg-diff-layout { grid-template-columns: 248px minmax(0,1fr); min-height: calc(100dvh - 112px); border: 0; }
.sg-view-diff .sg-diff-pane-title, .sg-view-diff .sg-diff-editor-head { min-height: 40px; height: 40px; padding: 0 16px; align-items: center; border-bottom: 1px solid var(--sg-divider); background: var(--sg-canvas); }
.sg-view-diff .sg-diff-editor-head code { font-size: 12px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sg-view-diff .sg-diff-editor-head nav { display: flex; gap: 4px; }
.sg-view-diff .sg-diff-editor-head nav a { padding: 5px 8px; color: var(--sg-metadata); }
.sg-view-diff .sg-diff-editor-head nav a[aria-current] { background: var(--sg-raised); border-radius: 4px; color: var(--sg-text); }
.sg-view-diff .sg-diff-file { padding: 8px 12px; min-height: 48px; }
.sg-view-diff .sg-diff-file > small { margin-left: auto; white-space: nowrap; font-size: 11px; }
.sg-diff-split-head { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); height: 32px; font-size: 12px; background: var(--sg-surface); border-bottom: 1px solid var(--sg-divider); }
.sg-diff-split-head span { padding: 8px 16px; border-right: 1px solid var(--sg-divider); min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sg-diff-split-line { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); font: 13px/20px var(--sg-font-mono); }
.sg-diff-split-line > div { display: grid; grid-template-columns: 48px minmax(0,1fr); border-right: 1px solid var(--sg-divider); min-width: 0; }
.sg-diff-split-line code { white-space: pre-wrap; overflow-wrap: anywhere; font: inherit; }
.sg-diff-split-line .is-added { background: color-mix(in srgb,var(--sg-success) 8%,transparent); }
.sg-diff-split-line .is-removed { background: color-mix(in srgb,var(--sg-danger) 8%,transparent); }
.sg-diff-line-hunk { background: var(--sg-surface); color: var(--sg-metadata); }
.sg-view-diff .sg-diff-line { font-size: 13px; line-height: 20px; }
.sg-diff-comments { padding: 0 24px; }
.sg-diff-comments article { border: 1px solid var(--sg-divider); border-radius: 4px; margin: 16px 0; padding: 16px; font-size: 13px; }
.sg-diff-comments header { display: flex; justify-content: space-between; margin-bottom: 12px; color: var(--sg-metadata); }
.sg-diff-authoring { display: flex; gap: 8px; padding: 16px 24px; }
.sg-view-diff .sg-diff-statusbar { height: 24px; padding: 0 16px; align-items: center; font-size: 11px; }
.sg-view-diff .sg-diff-statusbar > :last-child { margin-left: auto; }
@media(max-width: 899px) { .sg-change-overview { grid-template-columns: minmax(0,1fr); } .sg-change-overview > .sg-review-evidence { border-left: 0; border-top: 1px solid var(--sg-divider); } }
@media(max-width: 599px) { .sg-view-diff .sg-diff-layout { grid-template-columns: minmax(0,1fr); } .sg-view-diff .sg-diff-files { max-height: 180px; overflow: auto; } .sg-change-title, .sg-change-files-summary, .sg-change-activity, .sg-change-checks-main { padding: 16px; } }
.sg-view-issue, .sg-view-discussion { padding: 0; }
.sg-conversation-detail { display: grid; grid-template-columns: minmax(0,1fr) 336px; min-height: calc(100dvh - 88px); grid-template-rows: 1fr 32px; }
.sg-conversation-main { min-width: 0; }
.sg-conversation-title { min-height: 146px; padding: 24px; border-bottom: 1px solid var(--sg-divider); }
.sg-conversation-title > div { display: flex; align-items: center; gap: 12px; min-height: 32px; font-size: 12px; color: var(--sg-metadata); }
.sg-conversation-title > div form { margin-left: auto; }
.sg-conversation-title h1 { font-size: 18px; font-weight: 600; margin: 12px 0; }
.sg-conversation-title p { font-size: 12px; color: var(--sg-metadata); }
.sg-conversation-body { padding: 24px; font-size: 14px; line-height: 22px; }
.sg-conversation-body p { color: var(--sg-body); }
.sg-conversation-link { display: flex; align-items: center; gap: 12px; padding: 12px; margin: 24px 0; background: var(--sg-surface); font-size: 13px; }
.sg-conversation-link > :last-child { margin-left: auto; }
.sg-conversation-count { display: flex; justify-content: space-between; margin-top: 28px; font-size: 12px; }
.sg-conversation-comments article { margin: 24px 0; }
.sg-conversation-comments header { display: flex; align-items: center; gap: 8px; margin-bottom: 12px; font-size: 13px; }
.sg-conversation-comments time { color: var(--sg-metadata); font-size: 12px; }
.sg-person-initials { background: var(--sg-raised); border-radius: 3px; display: inline-grid; place-items: center; width: 24px; height: 24px; flex-shrink: 0; color: var(--sg-metadata); font-size: 12px; }
.sg-conversation-reply { margin-top: 24px; }
.sg-conversation-reply textarea { min-height: 104px; }
.sg-conversation-reply form > .sgui-button, .sg-conversation-reply .sg-profile-actions { margin-top: 16px; float: right; }
.sg-conversation-aside { padding: 24px; background: var(--sg-surface); border-left: 1px solid var(--sg-divider); min-width: 0; font-size: 13px; }
.sg-conversation-aside h2 { font-size: 12px; text-transform: uppercase; font-weight: 400; color: var(--sg-metadata); margin-bottom: 24px; }
.sg-conversation-aside dl > div { display: grid; grid-template-columns: 80px minmax(0,1fr); gap: 8px; min-height: 32px; align-items: center; }
.sg-conversation-aside dt { font-size: 12px; color: var(--sg-metadata); }
.sg-conversation-aside dd { overflow-wrap: anywhere; }
.sg-conversation-aside section { margin-top: 28px; }
.sg-conversation-aside p { font-size: 13px; line-height: 20px; color: var(--sg-metadata); margin-top: 24px; }
.sg-conversation-aside .sg-participant { display: flex; gap: 8px; align-items: center; margin-top: 12px; }
.sg-conversation-footer { grid-column: 1/-1; border-top: 1px solid var(--sg-divider); padding: 8px 16px; font-size: 12px; color: var(--sg-metadata); }
@media (max-width: 899px) { .sg-conversation-detail { grid-template-columns: minmax(0,1fr); } .sg-conversation-aside { border-left: 0; border-top: 1px solid var(--sg-divider); } }
.sg-view-home, .sg-view-package, .sg-view-publishing { padding: 0; }
.sg-workspace-repositories .sg-record-workspace { --record-columns: minmax(0,1fr) 112px 96px; }
.sg-workspace-repositories .sg-record-row { min-height: 56px; }
.sg-workspace-repositories .sg-record-toolbar { flex-direction: row-reverse; }
.sg-workspace-repositories .sg-record-search { margin-left: 0; margin-right: auto; }
.sg-workspace-recent { padding: 0 16px; }
.sg-view-package .sg-package-detail { display: block; }
.sg-package-heading { padding: 16px 24px 20px; border-bottom: 1px solid var(--sg-divider); }
.sg-package-heading > a { color: var(--sg-metadata); font-size: 13px; }
.sg-package-heading > div { display: flex; align-items: center; gap: 12px; margin: 28px 0 16px; }
.sg-package-heading h1 { font-size: 18px; }
.sg-package-heading .sgui-badge { margin-left: auto; }
.sg-package-version { padding: 8px; background: var(--sg-raised); border-radius: 6px; font-size: 13px; }
.sg-package-top-facts { display: flex; gap: 40px; flex-wrap: wrap; font-size: 13px; }
.sg-package-top-facts dt { font-size: 12px; color: var(--sg-metadata); text-transform: uppercase; margin-bottom: 8px; }
.sg-object-tabs { display: flex; gap: 0; height: 40px; border-bottom: 1px solid var(--sg-divider); }
.sg-object-tabs a { min-width: 120px; display: grid; place-items: center; padding-inline: 16px; font-size: 13px; }
.sg-object-tabs a[aria-current] { border-bottom: 2px solid var(--sg-text); font-weight: 600; }
.sg-package-body { display: grid; grid-template-columns: minmax(0,1fr) 320px; min-height: calc(100dvh - 288px); }
.sg-package-body .sg-package-main, .sg-package-body .sg-package-sidebar { padding: 24px; min-width: 0; display: block; }
.sg-package-body .sg-package-sidebar { background: var(--sg-surface); border-left: 1px solid var(--sg-divider); }
.sg-package-body h2, .sg-publish-layout h2 { font-size: 13px; font-weight: 500; margin: 8px 0 20px; }
.sg-package-body p, .sg-publish-layout p { font-size: 13px; line-height: 20px; color: var(--sg-body); }
.sg-package-install-heading { display: flex; justify-content: space-between; font-size: 12px; color: var(--sg-metadata); }
.sg-package-install { background: var(--sg-raised); border-radius: 4px; padding: 16px; margin: 8px 0 32px; }
.sg-package-install header { display: flex; align-items: center; justify-content: space-between; font-size: 12px; color: var(--sg-metadata); }
.sg-package-install code { display: block; margin-top: 12px; font-size: 13px; overflow-wrap: anywhere; }
.sg-package-facts { margin: 24px 0 32px; font-size: 13px; }
.sg-package-facts > div { display: grid; grid-template-columns: 140px minmax(0,1fr); gap: 16px; border-bottom: 1px solid var(--sg-divider); padding: 12px 0; }
.sg-package-facts dd { overflow-wrap: anywhere; }
.sg-package-facts dt { color: var(--sg-metadata); }
.sg-package-sidebar .sg-package-facts > div { grid-template-columns: 120px minmax(0,1fr); }
.sg-package-source-chain { display: flex; justify-content: space-between; align-items: center; padding: 12px 16px; background: var(--sg-surface); font-size: 13px; margin: 16px 0 24px; line-height: 20px; }
.sg-publish-screen > header { height: 100px; padding: 24px; }
.sg-publish-screen h1 { font-size: 18px; font-weight: 600; margin-bottom: 8px; }
.sg-publish-screen > header p { font-size: 13px; color: var(--sg-metadata); }
.sg-publish-layout { display: grid; grid-template-columns: minmax(0,1fr) 408px; min-height: calc(100dvh - 188px); }
.sg-publish-layout > article, .sg-publish-layout > aside { padding: 24px; min-width: 0; }
.sg-publish-layout > aside { background: var(--sg-surface); border-left: 1px solid var(--sg-divider); }
.sg-publish-fields { display: grid; grid-template-columns: 2fr 1fr; gap: 20px 24px; }
.sg-publish-fields > :nth-child(n+3) { grid-column: 1/-1; }
.sg-publish-warning { background: var(--sg-raised); padding: 16px; border-radius: 4px; }
.sg-publish-warning strong, .sg-publish-warning span { display: block; }
.sg-publish-warning strong { color: var(--sg-text); font-weight: 500; margin-bottom: 8px; }
.sg-publish-actions { display: flex; gap: 8px; }
@media(max-width: 899px) { .sg-package-body, .sg-publish-layout { grid-template-columns: minmax(0,1fr); } .sg-package-top-facts { gap: 24px; } }
.sg-view-notifications { padding: 0; }
.sg-inbox-workspace .sg-record-workspace { --record-columns: minmax(0,1fr) 112px; }
.sg-inbox-workspace .sg-record-row { min-height: 56px; }
.sg-view-account, .sg-view-organization { padding: 0; }
.sg-account-settings > .sg-settings-page-head, .sg-organization-settings > .sg-settings-page-head { padding: 24px; margin: 0; border-bottom: 1px solid var(--sg-divider); }
.sg-account-settings > .sg-settings-grid, .sg-organization-settings > .sg-settings-grid { display: block; padding: 24px; }
.sg-account-settings > .sg-settings-grid:empty, .sg-organization-settings > .sg-settings-grid:empty { display: none; }
.sg-account-settings .sgui-panel, .sg-organization-settings .sgui-panel { margin: 0; border: 0; padding: 0; }
.sg-account-settings .sgui-panel > header, .sg-organization-settings .sgui-panel > header { margin-bottom: 24px; }
.sg-account-settings .sgui-panel > .sgui-panel-body > .sgui-button, .sg-organization-settings .sgui-panel > .sgui-panel-body > .sgui-button { margin-bottom: 24px; }
.sg-account-settings form:not(dialog form) > .sgui-field, .sg-organization-settings form:not(dialog form) > .sgui-field { display: grid; grid-template-columns: 160px minmax(0,1fr); align-items: center; gap: 16px; max-width: 848px; }
.sg-account-settings form:not(dialog form) > .sg-form-grid { display: block; max-width: 848px; }
.sg-account-settings form:not(dialog form) > .sg-form-grid .sgui-field { display: grid; grid-template-columns: 160px minmax(0,1fr); align-items: center; gap: 16px; }
.sg-account-settings .sgui-input, .sg-account-settings .sgui-select, .sg-organization-settings .sgui-input { min-height: 40px; }
.sg-settings-layout:not([data-source-graph-settings-section="details"]) .sg-settings-context { display: none; }
.sg-settings-layout .sg-settings-split { display: flex; gap: 16px; flex-wrap: wrap; align-items: start; }
.sg-settings-layout .sg-settings-split > .sgui-table, .sg-settings-layout .sg-settings-split > .sg-collaborator-list, .sg-settings-layout .sg-settings-split > div:has(table) { flex-basis: 100%; width: 100%; }
@media(max-width: 599px) { .sg-account-settings form:not(dialog form) > .sgui-field, .sg-account-settings form:not(dialog form) > .sg-form-grid .sgui-field, .sg-organization-settings form:not(dialog form) > .sgui-field { grid-template-columns: minmax(0,1fr); } }
.sg-public-header { height: 56px; min-height: 56px; padding: 0 32px; }
.sg-public-brand img { height: 40px; }
.sg-public-home { max-width: none; padding: 32px; }
.sg-public-hero { max-width: none; padding: 0 0 40px; }
.sg-public-hero h1 { font-family: "B8 Grid R4", var(--sg-font-sans); font-weight: 400; font-size: 40px; line-height: 48px; margin: 16px 0; }
.sg-public-hero p { max-width: none; font-size: 14px; }
.sg-public-hero-actions { margin-top: 12px; gap: 8px; }
.sg-public-section-head { margin-bottom: 12px; }
.sg-public-section-head h2 { font-size: 18px; font-weight: 600; }
.sg-public-repository-list article { min-height: 110px; padding: 20px 16px 16px; border-top: 1px solid var(--sg-divider); }
.sg-public-repository-list article:last-child { border-bottom: 1px solid var(--sg-divider); }
.sg-public-repository-list header, .sg-public-repository-list header a { display: flex; align-items: center; gap: 12px; font-size: 13px; }
.sg-public-repository-list header > span { margin-left: auto; color: var(--sg-metadata); font-size: 12px; }
.sg-public-repository-list p { margin: 12px 0 8px; font-size: 13px; color: var(--sg-body); }
.sg-public-repository-list small { font-size: 12px; color: var(--sg-metadata); }
.sg-public-access-note { font-size: 13px; color: var(--sg-metadata); margin-top: 24px; }
.sg-auth-layout { display: grid; grid-template-columns: 480px 440px; gap: 64px; max-width: 984px; margin: 80px auto; }
.sg-auth-wordmark { display: block; width: 242px; height: 70px; }
.sg-auth-proposition > h2 { font-family: "B8 Grid R4", var(--sg-font-sans); font-size: 40px; line-height: 48px; font-weight: 400; margin: 24px 0; }
.sg-auth-proposition > p { font-size: 14px; line-height: 24px; color: var(--sg-body); }
.sg-auth-proposition dl { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; margin-top: 24px; }
.sg-auth-proposition dl > div { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; font-size: 14px; line-height: 20px; }
.sg-auth-proposition dl .codicon { font-size: 32px; width: 32px; height: 32px; line-height: 32px; margin-bottom: 6px; color: var(--sg-metadata); }
.sg-auth-proposition dt { font-weight: 500; }
.sg-auth-proposition dd { margin: 0; color: var(--sg-metadata); }
.sg-auth-layout .sg-auth-flow { max-width: none; margin: 0; padding: 0; }
.sg-auth-layout .sg-auth-flow h1 { font-size: 32px; line-height: 40px; margin-bottom: 24px; }
.sg-auth-layout .sg-auth-intro p { font-size: 14px; }
.sg-auth-layout .sg-auth-form { gap: 24px; }
.sg-auth-layout .sgui-input { min-height: 40px; }
.sg-auth-layout .sgui-field { margin: 0; }
/* One full-width primary per form; secondary routes are text links aligned to the form edge. */
.sg-auth-layout .sg-auth-flow .sg-auth-intro h1 { margin-bottom: 12px; }
.sg-auth-layout .sg-auth-actions > .sgui-button { width: 100%; min-height: 40px; }
.sg-auth-layout .sg-auth-feedback { margin-bottom: 24px; }
.sg-auth-password { display: grid; gap: 8px; }
.sg-auth-forgot { justify-self: end; }
.sg-auth-alternate { color: var(--sg-metadata); font-size: 13px; }
.sg-auth-alternate a + a { margin-left: 16px; }
.sg-auth-flow :is(.sg-auth-forgot, .sg-auth-alternate a) { color: var(--sg-focus); font-size: 13px; text-underline-offset: 3px; }
.sg-auth-flow :is(.sg-auth-forgot, .sg-auth-alternate a):hover { text-decoration: underline; }
.sg-auth-session strong { display: flex; align-items: center; gap: 8px; color: var(--sg-text); font-size: 13px; font-weight: 500; }
.sg-auth-session p { margin-top: 8px; font-size: 13px; line-height: 20px; }
.sg-auth-flow .sg-auth-invitation { margin-top: 32px; color: var(--sg-metadata); font-size: 12px; }
/* CLI authorization: one reading column; the request is listed scope by scope. */
.sg-consent-page { min-height: 100dvh; display: flex; flex-direction: column; }
.sg-consent { width: min(592px, 100%); margin: min(12dvh, 96px) auto 64px; padding: 0 24px; }
.sg-consent h1 { font-size: 28px; line-height: 36px; }
.sg-consent > p { margin-top: 12px; color: var(--sg-body); font-size: 14px; line-height: 22px; }
.sg-consent-account strong { color: var(--sg-text); font-weight: 500; }
.sg-consent h2 { margin-top: 32px; color: var(--sg-metadata); font-size: 13px; font-weight: 500; }
.sg-consent-scopes { list-style: none; padding: 0; margin: 12px 0 0; border-top: 1px solid var(--sg-divider); }
.sg-consent-scopes li { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 4px 16px; padding-block: 14px; border-bottom: 1px solid var(--sg-divider); }
.sg-consent-scopes strong { font-size: 14px; font-weight: 500; }
.sg-consent-scopes span { grid-column: 1; color: var(--sg-body); font-size: 13px; line-height: 20px; }
.sg-consent-scopes code { grid-column: 2; grid-row: 1; color: var(--sg-metadata); }
.sg-consent > .sg-consent-note { color: var(--sg-metadata); font-size: 13px; line-height: 20px; }
.sg-consent-actions { display: flex; gap: 8px; margin-top: 24px; }
[data-sg-ui] .sg-consent-actions .sgui-button { min-width: 112px; min-height: 40px; }
.sg-consent > .sg-consent-warning { margin-top: 24px; padding-top: 16px; border-top: 1px solid var(--sg-divider); color: var(--sg-metadata); font-size: 12px; line-height: 18px; }
.sg-consent a { color: var(--sg-focus); text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 699px) {
  .sg-consent { margin-top: 40px; padding: 0 16px; }
  .sg-consent-scopes li { grid-template-columns: minmax(0,1fr); }
  .sg-consent-scopes code { grid-column: 1; grid-row: auto; }
  [data-sg-ui] .sg-consent-actions .sgui-button { flex: 1; }
}
@media(max-width: 1119px) { .sg-auth-layout { grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 40px; margin: 64px 32px; } }
@media(max-width: 699px) { .sg-auth-layout { display: block; margin: 40px 24px; } .sg-auth-proposition { display: none; } .sg-public-header { padding-inline: 16px; } .sg-public-home { padding: 24px 16px; } .sg-public-hero h1 { font-size: 28px; line-height: 36px; } }
.sg-view-release, .sg-view-account:has(.sg-account-profile) { padding: 0; }
.sg-release-object { min-height: calc(100dvh - 88px); }
.sg-release-object-head { height: 144px; padding: 0 24px 16px; border-bottom: 1px solid var(--sg-divider); }
.sg-object-back { display: flex; align-items: center; gap: 12px; height: 40px; color: var(--sg-metadata); }
.sg-object-back .sgui-button { padding-left: 0; }
.sg-release-object-head h1 { font-size: 18px; line-height: 26px; }
.sg-release-object-head h1 span { margin-left: 12px; }
.sg-object-top-facts { display: flex; gap: 64px; margin: 12px 0 0; }
.sg-object-top-facts dt { text-transform: uppercase; font-size: 12px; color: var(--sg-metadata); }
.sg-object-top-facts dd { margin: 6px 0 0; }
.sg-release-object-body { display: grid; grid-template-columns: minmax(0,1fr) 320px; min-height: calc(100dvh - 272px); }
.sg-release-object-content { min-width: 0; display: flex; flex-direction: column; padding: 32px 24px 24px; }
.sg-release-object-content h2, .sg-release-object-aside h2 { font-size: 13px; font-weight: 500; }
.sg-release-notes { white-space: pre-wrap; margin: 28px 0 40px; line-height: 1.6; }
.sg-source-binding { display: grid; gap: 8px; padding: 16px 24px; background: var(--sg-surface); }
.sg-source-binding span { font-size: 12px; color: var(--sg-metadata); }
.sg-release-object-content > footer { margin-top: auto; padding-top: 32px; color: var(--sg-metadata); overflow-wrap: anywhere; }
.sg-release-object-aside { display: flex; flex-direction: column; gap: 24px; padding: 32px 24px 24px; border-left: 1px solid var(--sg-divider); background: var(--sg-surface); }
.sg-release-object-aside p { color: var(--sg-metadata); margin: 16px 0; line-height: 1.6; }
.sg-release-object-aside > footer { margin-top: auto; font-size: 12px; color: var(--sg-metadata); }
.sg-release-object-content .sg-release-actions { margin-top: 24px; }
.sg-account-profile { display: grid; grid-template-columns: minmax(0,1fr) 336px; min-height: calc(100dvh - 88px); }
.sg-account-profile-main { display: flex; flex-direction: column; min-width: 0; }
.sg-profile-section-bar { height: 48px; padding: 0 24px; border-bottom: 1px solid var(--sg-divider); display: flex; align-items: center; gap: 12px; }
.sg-profile-section-bar h1 { font-size: 13px; font-weight: 400; }
.sg-profile-section-bar > span:last-child { margin-left: auto; }
.sg-profile-editor { padding: 24px; }
.sg-profile-identity { display: flex; align-items: center; gap: 8px; margin: 0 0 28px; }
.sg-profile-identity h2, .sg-account-profile-preview h2 { font-size: 18px; line-height: 24px; }
.sg-profile-identity p { margin-top: 4px; color: var(--sg-metadata); }
.sg-profile-avatar { background: var(--sg-raised); border-radius: 50%; font-size: 12px; width: 24px; height: 24px; display: grid; place-items: center; }
.sg-profile-editor form > h2 { display: flex; align-items: center; gap: 12px; font-size: 13px; font-weight: 500; padding: 12px 0; border-bottom: 1px solid var(--sg-divider); margin: 12px 0 8px; }
.sg-profile-editor form > :is(.sgui-field,.sgui-select) { display: grid; grid-template-columns: 160px minmax(0,1fr); gap: 16px; align-items: center; margin: 0 0 16px; }
.sg-profile-editor :is(.sgui-input,.sgui-select-trigger,.sgui-textarea) { min-height: 40px; height: 40px; }
.sg-profile-editor .sgui-textarea { resize: vertical; }
.sg-profile-editor .sgui-select-menu { left: 176px; width: calc(100% - 176px); }
.sg-account-profile-main > footer, .sg-account-profile-preview > footer { height: 32px; padding: 8px 24px; margin-top: auto; border-top: 1px solid var(--sg-divider); font-size: 12px; color: var(--sg-metadata); }
.sg-account-profile-preview { display: flex; flex-direction: column; background: var(--sg-surface); border-left: 1px solid var(--sg-divider); min-width: 0; }
.sg-account-profile-preview > header { height: 44px; border-bottom: 1px solid var(--sg-divider); display: flex; gap: 12px; align-items: center; padding: 0 16px; text-transform: uppercase; color: var(--sg-metadata); font-size: 12px; }
.sg-account-profile-preview > div { padding: 16px; }
.sg-account-profile-preview h2 { margin-bottom: 24px; }
.sg-account-profile-preview p { margin: 6px 0 16px; line-height: 1.6; color: var(--sg-metadata); }
.sg-account-profile-preview h3 { font-size: 13px; font-weight: 500; margin-top: 24px; }
.sg-account-profile-preview .sg-product-notice { margin: 16px 0; padding: 16px; background: var(--sg-raised); border: 0; }
.sg-account-profile-preview .sg-product-notice h3 { margin-top: 0; }
.sg-change-overview > .sg-review-evidence { background: var(--sg-surface); }
.sg-review-annotation-stats { display: flex; gap: 16px; flex-wrap: wrap; color: var(--sg-metadata); margin-block: 12px; }
/* Change Workspace: review threads, landing explanation, merge queue and lifecycle.
   Status is carried by icon and text tone; rows are separated by dividers only. */
.sg-review-annotations-head > div { display: grid; gap: 4px; }
.sg-review-annotations-head > span { color: var(--sg-metadata); font-size: 12px; white-space: nowrap; }
.sg-review-annotation > div { display: grid; gap: 2px; flex: 1; min-width: 0; }
.sg-review-annotation > div > strong { font-weight: 500; overflow-wrap: anywhere; }
.sg-review-annotation > div > span { color: var(--sg-metadata); font: 12px/18px var(--sg-font-mono); overflow-wrap: anywhere; }
.sg-review-annotation > .sgui-badge { flex: none; margin-left: auto; }
.sg-landing-explanation .sg-section-heading { align-items: start; }
.sg-landing-explanation .sg-section-heading p { margin-top: 4px; color: var(--sg-metadata); font-size: 13px; }
.sg-landing-reasons { list-style: none; padding: 0; margin: 0; border-top: 1px solid var(--sg-divider); }
.sg-landing-reasons > li { border-bottom: 1px solid var(--sg-divider); }
.sg-landing-reasons summary { display: flex; align-items: center; gap: 12px; min-height: 40px; padding-block: 8px; list-style: none; font-size: 13px; }
.sg-landing-reasons summary::-webkit-details-marker { display: none; }
.sg-landing-reasons summary > span:first-child { display: grid; color: var(--sg-metadata); }
.sg-landing-reasons li[data-state="passed"] summary > span:first-child { color: var(--sg-success); }
.sg-landing-reasons li[data-state="blocked"] summary > span:first-child, .sg-landing-reasons li[data-state="blocked"] summary small { color: var(--sg-danger); }
.sg-landing-reasons summary strong { flex: 1; min-width: 0; font-weight: 500; }
.sg-landing-reasons summary small { color: var(--sg-metadata); font-size: 12px; }
.sg-landing-reasons summary > .codicon:last-child { color: var(--sg-metadata); }
.sg-landing-reasons details[open] > summary > .codicon:last-child { transform: rotate(180deg); }
.sg-landing-reasons details > :is(p,code) { margin: 0 0 12px 28px; }
.sg-landing-reasons details > p { color: var(--sg-body); font-size: 13px; }
.sg-landing-reasons details > code { display: block; color: var(--sg-metadata); overflow-wrap: anywhere; }
.sg-binding-disclosure { margin-top: 16px; font-size: 13px; }
.sg-binding-disclosure > summary { color: var(--sg-body); }
.sg-landing-bindings { margin: 12px 0 0; }
.sg-landing-bindings > div { display: grid; grid-template-columns: 140px minmax(0,1fr); gap: 16px; padding-block: 8px; font-size: 12px; }
.sg-landing-bindings code { overflow-wrap: anywhere; }
.sg-landing-worker-boundary { display: flex; gap: 8px; align-items: start; margin-top: 8px; color: var(--sg-metadata); font-size: 12px; }
.sg-change-checks-main > .sg-landing-explanation { padding-bottom: 24px; }
.sg-merge-queue .sg-section-heading { align-items: start; margin-bottom: 0; }
.sg-merge-queue .sg-section-heading > .sgui-badge { padding-top: 2px; }
.sg-merge-queue-list { margin-top: 12px; }
.sg-merge-queue-list > article { display: grid; grid-template-columns: 24px minmax(0,1fr) auto; gap: 8px; align-items: start; padding-block: 10px; border-top: 1px solid var(--sg-divider); font-size: 13px; }
.sg-merge-queue-list > article > span { color: var(--sg-metadata); font-variant-numeric: tabular-nums; }
.sg-merge-queue-list strong { display: block; font-weight: 500; overflow-wrap: anywhere; }
.sg-merge-queue-list small { display: block; margin-top: 2px; color: var(--sg-metadata); font-size: 12px; }
.sg-merge-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 12px; }
.sg-merge-actions > form { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0; }
[data-sg-ui] .sg-empty-copy { margin-top: 12px; color: var(--sg-metadata); font-size: 12px; }
.sg-change-workspace-progress { list-style: none; padding: 0; margin: 12px 0 0; }
.sg-change-workspace-progress > li { display: flex; gap: 12px; align-items: start; padding-block: 6px; }
.sg-change-workspace-progress > li > span { display: grid; padding-top: 2px; color: var(--sg-metadata); }
.sg-change-workspace-progress > li.is-complete > span { color: var(--sg-success); }
.sg-change-workspace-progress > li.is-blocked > span { color: var(--sg-danger); }
.sg-change-workspace-progress > li[aria-current="step"] > span { color: var(--sg-focus); }
.sg-change-workspace-progress strong { display: block; font-size: 13px; font-weight: 500; }
.sg-change-workspace-progress small { display: block; color: var(--sg-metadata); font-size: 12px; }
.sg-change-lifecycle summary { color: var(--sg-body); }
@media(max-width: 899px) {
  .sg-release-object-body, .sg-account-profile { grid-template-columns: minmax(0,1fr); }
  .sg-account-profile-preview, .sg-release-object-aside { border-left: 0; border-top: 1px solid var(--sg-divider); }
  .sg-release-object-head { height: auto; min-height: 144px; }
  .sg-object-top-facts { flex-wrap: wrap; gap: 24px; }
}
@media(max-width: 599px) {
  .sg-profile-editor form > :is(.sgui-field,.sgui-select) { grid-template-columns: minmax(0,1fr); gap: 8px; }
  .sg-profile-editor .sgui-select-menu { left: 0; width: 100%; }
}

.sg-view-search, .sg-view-profile { padding: 0; }
.sg-search-screen .sg-record-columns, .sg-search-screen .sg-record-row { grid-template-columns: minmax(0,1fr) 112px; }
.sg-search-screen .sg-search-form { display: flex; align-items: center; justify-content: space-between; width: 100%; margin: 0; }
.sg-search-screen .sg-search-form .sgui-input { width: 272px; height: 32px; min-height: 32px; }
.sg-owner-profile .sg-record-columns, .sg-owner-profile .sg-record-row { grid-template-columns: minmax(0,1fr) 112px 96px; }
.sg-owner-profile .sg-record-row { min-height: 56px; }
.sg-owner-member { display: flex; flex-direction: column; gap: 4px; margin: 20px 0; }
.sg-owner-member span { color: var(--sg-metadata); font-size: 12px; }
.sg-mobile-wordmark { display: block; margin: 0 0 16px; }
@media (max-width: 699px) {
  .sg-workbench-header-actions { display: block; }
  .sg-workbench-header { flex-wrap: nowrap; gap: 8px; }
  .sg-workbench-breadcrumb { min-width: 0; overflow: hidden; white-space: nowrap; }
  .sg-workbench-context, .sg-product-search, .sg-product-global-actions > .sgui-button { display: none; }
  .sg-account-menu > summary { width: 36px; height: 36px; }
  .sg-object-tabs { overflow-x: auto; }
  .sg-search-screen .sg-search-form .sgui-input { width: min(272px,70%); }
  .sg-search-screen .sg-record-columns, .sg-search-screen .sg-record-row, .sg-owner-profile .sg-record-columns, .sg-owner-profile .sg-record-row { grid-template-columns: minmax(0,1fr) 80px; }
}

.sg-run-object { min-height: calc(100dvh - 88px); }
.sg-run-object-head { min-height: 156px; padding: 0 24px 24px; border-bottom: 1px solid var(--sg-divider); }
.sg-run-object-head h1 { font-size: 18px; line-height: 26px; }
.sg-run-object-head .sg-section-heading > div:first-child { display: flex; align-items: center; gap: 12px; }
.sg-run-object-body { display: grid; grid-template-columns: 256px minmax(0,1fr); min-height: calc(100dvh - 284px); }
.sg-run-check-sidebar { display: flex; flex-direction: column; background: var(--sg-surface); border-right: 1px solid var(--sg-divider); min-width: 0; }
.sg-run-check-sidebar h2 { display: flex; justify-content: space-between; font-size: 12px; font-weight: 400; text-transform: uppercase; padding: 16px; color: var(--sg-metadata); }
.sg-run-check-sidebar > a { display: flex; align-items: center; gap: 16px; padding: 16px; border-bottom: 1px solid var(--sg-divider); min-width: 0; }
.sg-run-check-sidebar > a > span { display: grid; gap: 8px; min-width: 0; }
.sg-run-check-sidebar strong { overflow-wrap: anywhere; font-weight: 400; }
.sg-run-check-sidebar small { color: var(--sg-metadata); }
.sg-run-check-sidebar > a[aria-current] { background: var(--sg-raised); }
.sg-run-check-sidebar footer { margin-top: auto; padding: 16px; color: var(--sg-metadata); line-height: 1.6; }
.sg-run-check-sidebar footer h3 { font-size: 12px; font-weight: 400; text-transform: uppercase; }
.sg-run-check-sidebar footer p { margin-top: 8px; }
.sg-run-check-sidebar footer code { display: block; margin-top: 12px; overflow-wrap: anywhere; font-size: 10px; }
.sg-run-content { min-width: 0; padding: 32px 24px; }
.sg-run-content > h2, .sg-run-content > header h2 { font-size: 18px; }
.sg-run-content > h3 { font-size: 12px; text-transform: uppercase; color: var(--sg-metadata); font-weight: 400; margin: 28px 0 12px; }
.sg-run-content > p { margin: 24px 0; color: var(--sg-metadata); line-height: 1.6; }
.sg-run-content > .sg-product-notice { background: var(--sg-raised); padding: 20px 16px; border: 0; }
.sg-run-content .sg-pipeline-coordinates { overflow-wrap: anywhere; }
@media(max-width: 699px) {
  .sg-run-object-body { grid-template-columns: minmax(0,1fr); }
  .sg-run-check-sidebar { border-right: 0; border-bottom: 1px solid var(--sg-divider); }
  .sg-run-check-sidebar footer { display: none; }
  .sg-run-object-head .sg-section-heading > div:first-child { flex-wrap: wrap; }
}

.sg-view-branches, .sg-view-tags, .sg-view-commits, .sg-view-commit, .sg-view-compare { padding: 0; }
.sg-history-browser .sg-record-row { min-height: 64px; }
.sg-history-browser .sg-record-columns, .sg-history-browser .sg-record-row { grid-template-columns: minmax(0,1fr) 144px 128px; }
.sg-history-browser .sg-record-title strong { font-family: var(--sg-font-mono); font-weight: 400; }
.sg-history-browser[data-source-graph-history="commits"] .sg-record-title strong { font-family: var(--sg-font-sans); }
.sg-history-browser .sg-source-binding { background: var(--sg-canvas); margin: 24px 0; overflow-wrap: anywhere; }
.sg-revision-heading { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; padding: 16px 24px; border-bottom: 1px solid var(--sg-divider); }
.sg-revision-heading h1 { font-size: 18px; }
.sg-revision-heading code { overflow-wrap: anywhere; font-size: 12px; color: var(--sg-metadata); }
.sg-history-detail .sg-diff-layout { grid-template-columns: 248px minmax(0,1fr); }
@media(max-width: 699px) {
 .sg-history-browser .sg-record-columns, .sg-history-browser .sg-record-row { grid-template-columns: minmax(0,1fr) 80px; }
 .sg-history-detail .sg-diff-layout { grid-template-columns: minmax(0,1fr); }
}

.sg-view-policy { padding: 0; }
.sg-registry-policy { padding: 24px; }
.sg-registry-policy > header h1 { font-size: 18px; }
.sg-registry-policy > header p { margin: 24px 0 32px; color: var(--sg-metadata); }
.sg-registry-policy-columns { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 64px; }
.sg-registry-policy-columns h2, .sg-registry-policy-columns h3 { font-size: 13px; font-weight: 500; }
.sg-registry-policy-columns p { color: var(--sg-body); line-height: 1.6; }
.sg-policy-decision { padding: 32px 0; border-bottom: 1px solid var(--sg-divider); }
.sg-policy-decision p { margin-top: 8px; }
.sg-policy-decision + h2 { margin: 24px 0; }
.sg-registry-policy-columns .sg-package-facts > div { padding: 18px 0; border-bottom: 1px solid var(--sg-divider); }
.sg-registry-policy-columns .sg-product-notice { margin: 24px 0 12px; padding: 16px; background: var(--sg-raised); border: 0; }
@media(max-width: 899px) { .sg-registry-policy-columns { grid-template-columns: minmax(0,1fr); gap: 32px; } }

.sg-view-capsule { padding: 0; }
.sg-provenance-screen { min-height: calc(100dvh - 88px); display: flex; flex-direction: column; }
.sg-provenance-toolbar { display: flex; align-items: center; gap: 12px; height: 48px; padding: 0 24px; border-bottom: 1px solid var(--sg-divider); }
.sg-provenance-toolbar small { margin-left: auto; color: var(--sg-metadata); }
.sg-provenance-graph { border: 0; border-radius: 0; }
.sg-provenance-graph .b8ui-graph-toolbar { height: 48px; padding: 0 24px; }
.sg-provenance-graph .b8ui-graph-node { width: 208px; min-height: 132px; }
.sg-provenance-graph .b8ui-graph-plane { min-height: 296px; min-width: 1232px; }
.sg-provenance-graph .b8ui-graph-viewport { height: 296px; overflow: hidden; }
.sg-provenance-details { display: grid; grid-template-columns: 480px minmax(0,1fr); flex: 1; border-top: 1px solid var(--sg-divider); }
.sg-provenance-details > aside { background: var(--sg-surface); padding: 24px; border-right: 1px solid var(--sg-divider); }
.sg-provenance-details > article { padding: 24px; min-width: 0; }
.sg-provenance-details h2 { font-size: 18px; }
.sg-provenance-details p { color: var(--sg-metadata); margin: 8px 0 24px; overflow-wrap: anywhere; }
.sg-provenance-details .sg-view-actions { margin-top: 24px; }
.sg-provenance-events { padding: 0; list-style: none; margin-top: 24px; }
.sg-provenance-events strong { font-weight: 500; }
.sg-provenance-screen > footer { height: 32px; padding: 8px 16px; font-size: 12px; color: var(--sg-metadata); border-top: 1px solid var(--sg-divider); }
@media(max-width: 1119px) { .sg-provenance-details { grid-template-columns: 336px minmax(0,1fr); } }
@media(max-width: 699px) { .sg-provenance-details { grid-template-columns: minmax(0,1fr); } .sg-provenance-toolbar { flex-wrap: wrap; height: auto; min-height: 48px; padding: 12px; } }

/* Independent docs panes: fixed navigation/index, flexible reading space. */
.sg-documentation { height: 100dvh; display: grid; grid-template-rows: auto minmax(0,1fr); overflow: hidden; background: var(--sg-canvas); }
.sg-doc-header { height: 56px; padding: 0 24px; display: flex; align-items: center; gap: 24px; border-bottom: 1px solid var(--sg-divider); font-size: 13px; }
.sg-doc-header > a:first-child { display: flex; align-items: center; }
.sg-doc-header > span { color: var(--sg-metadata); }
.sg-doc-header form { display: flex; align-items: center; gap: 8px; margin-left: auto; width: 280px; height: 32px; border-radius: 8px; background: var(--sg-raised); padding: 0 8px; }
.sg-doc-header input { width: 100%; min-width: 0; background: transparent; border: 0; color: var(--sg-text); font: inherit; }
.sg-doc-layout { min-height: 0; display: grid; grid-template-columns: 240px minmax(0,1fr) 216px; }
.sg-doc-layout > :is(nav,main,aside) { min-height: 0; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; }
.sg-doc-mobile-navigation { display: none; }
.sg-doc-navigation { padding: 24px; border-right: 1px solid var(--sg-divider); }
.sg-doc-navigation section + section { margin-top: 32px; }
.sg-doc-navigation h2, .sg-doc-toc h2 { color: var(--sg-metadata); font-size: 12px; font-weight: 400; text-transform: uppercase; margin: 0 0 6px; }
.sg-doc-navigation a { display: flex; align-items: center; gap: 8px; min-height: 32px; padding: 6px 8px; margin: 4px 0; font-size: 13px; color: var(--sg-body); }
.sg-doc-navigation a[aria-current] { background: var(--sg-hover); color: var(--sg-text); font-weight: 600; }
.sg-doc-navigation a:hover { background: var(--sg-raised); }
.sg-doc-article { min-width: 0; padding: 40px; scroll-padding-top: 24px; }
.sg-doc-breadcrumb { display: flex; align-items: center; gap: 12px; font-size: 12px; color: var(--sg-metadata); margin-bottom: 24px; }
.sg-doc-breadcrumb span { color: var(--sg-text); }
.sg-doc-article h1 { font-size: 32px; line-height: 40px; font-weight: 600; letter-spacing: -1px; margin: 0; }
.sg-doc-article p { color: var(--sg-body); font-size: 16px; line-height: 24px; margin: 16px 0; }
.sg-doc-article > .sg-doc-lead { margin: 16px 0 32px; }
.sg-doc-article > section { margin: 32px 0; }
.sg-doc-article h2 { font-size: 24px; line-height: 32px; letter-spacing: -.5px; font-weight: 600; margin: 0 0 16px; }
.sg-doc-steps { display: grid; gap: 16px; margin-top: 16px; }
.sg-doc-steps > a { display: flex; align-items: center; gap: 20px; min-height: 80px; padding: 16px; background: var(--sg-surface); }
.sg-doc-steps > a > span { display: grid; gap: 8px; min-width: 0; }
.sg-doc-steps strong { font-size: 14px; font-weight: 500; }
.sg-doc-steps span > span { color: var(--sg-body); font-size: 14px; line-height: 20px; }
.sg-doc-steps > a > .codicon:last-child { margin-left: auto; }
.sg-doc-next { display: flex; justify-content: space-between; align-items: center; min-height: 56px; padding: 12px 16px; background: var(--sg-surface); font-size: 13px; margin-top: 32px; }
.sg-doc-next span { display: grid; gap: 8px; }
.sg-doc-next small { text-transform: uppercase; color: var(--sg-metadata); font-size: 12px; }
.sg-doc-article footer { margin-top: 32px; font-size: 12px; color: var(--sg-disabled); line-height: 20px; }
.sg-doc-toc { padding: 40px 24px; }
.sg-doc-toc a { display: block; padding: 6px 0 6px 12px; border-left: 2px solid var(--sg-divider); color: var(--sg-metadata); font-size: 13px; line-height: 20px; }
.sg-doc-toc a:hover { color: var(--sg-text); }
.sg-doc-toc a[aria-current="location"] { border-left-color: var(--sg-focus); color: var(--sg-text); font-weight: 500; }
[data-sg-ui] .sg-doc-terminal { margin: 16px 0; }
[data-sg-ui] .sg-doc-terminal pre { line-height: 20px; font-size: 13px; }
.sg-doc-note { border-radius: 4px; padding: 16px; margin-top: 16px; background: var(--sg-raised); }
.sg-doc-note strong { font-size: 14px; font-weight: 400; color: var(--sg-focus); }
.sg-doc-note p { margin: 8px 0 0; font-size: 14px; line-height: 22px; }
.sg-doc-table { border-collapse: collapse; width: 100%; font-size: 14px; }
.sg-doc-table th { background: var(--sg-surface); font-size: 12px; font-weight: 400; color: var(--sg-metadata); text-align: left; padding: 8px 16px; }
.sg-doc-table td { height: 48px; padding: 12px 16px; border-bottom: 1px solid var(--sg-divider); color: var(--sg-body); }
.sg-doc-table td:first-child { color: var(--sg-text); }
.sg-doc-table tbody tr:first-child { background: var(--sg-raised); }
.sg-account-records .sg-record-row { min-height: 56px; }
.sg-account-records .sg-record-columns, .sg-account-records .sg-record-row { grid-template-columns: minmax(0,1fr) 112px 80px; }
.sg-account-records .sg-inspector-body > code { overflow-wrap: anywhere; }
.sg-account-records .sg-product-notice { padding: 16px; border: 0; background: var(--sg-raised); margin: 24px 0 16px; }
.sg-account-records .sg-product-notice h3 { margin: 0; }
.sg-account-records .sg-product-notice p { margin-bottom: 0; }
@media(max-width: 699px) { .sg-account-records .sg-record-columns, .sg-account-records .sg-record-row { grid-template-columns: minmax(0,1fr) 80px; } }
.sg-view-working-set, .sg-view-native-proof { padding: 0; }
.sg-working-set-screen, .sg-integrity-screen { min-height: calc(100dvh - 88px); display: flex; flex-direction: column; }
.sg-working-set-screen .sg-record-workspace { min-height: calc(100dvh - 168px); flex: 1; }
.sg-working-set-screen .sg-record-row { min-height: 64px; }
.sg-working-set-screen .sg-record-columns, .sg-working-set-screen .sg-record-row { grid-template-columns: minmax(0,1fr) 112px 176px; }
.sg-working-set-screen .sg-record-title strong { font-family: var(--sg-font-mono); }
.sg-working-set-screen > footer, .sg-integrity-screen > footer { height: 32px; border-top: 1px solid var(--sg-divider); padding: 6px 16px; color: var(--sg-metadata); font-size: 12px; }
.sg-integrity-body { display: grid; grid-template-columns: 272px minmax(0,1fr) 320px; flex: 1; }
.sg-integrity-body > nav, .sg-integrity-body > aside { background: var(--sg-surface); }
.sg-integrity-body > nav { border-right: 1px solid var(--sg-divider); }
.sg-integrity-body > nav h2 { text-transform: uppercase; font-size: 12px; font-weight: 400; padding: 16px; color: var(--sg-metadata); margin: 0; }
.sg-integrity-body > nav a { display: flex; align-items: flex-start; padding: 20px 16px; gap: 12px; border-bottom: 1px solid var(--sg-divider); }
.sg-integrity-body > nav a[aria-current] { background: var(--sg-raised); }
.sg-integrity-body > nav a span { display: grid; gap: 8px; }
.sg-integrity-body > nav small { color: var(--sg-metadata); font-size: 12px; }
.sg-integrity-body > article, .sg-integrity-body > aside { padding: 24px; min-width: 0; }
.sg-integrity-body > aside { border-left: 1px solid var(--sg-divider); }
.sg-integrity-body h2 { font-size: 18px; margin: 0; }
.sg-integrity-body p { color: var(--sg-metadata); line-height: 22px; margin: 8px 0 24px; }
.sg-integrity-checks { margin: 24px 0; }
.sg-integrity-checks > div { padding: 20px 16px; border-bottom: 1px solid var(--sg-divider); }
.sg-integrity-checks dd { margin: 8px 0 0; color: var(--sg-metadata); overflow-wrap: anywhere; }
.sg-integrity-body .sg-product-notice { background: var(--sg-surface); border: 0; padding: 16px; margin-bottom: 24px; }
.sg-integrity-body .sg-product-notice h3 { font-size: 13px; font-weight: 500; margin: 0; }
.sg-integrity-body .sg-product-notice p { margin-bottom: 0; }
@media(max-width: 1199px) { .sg-integrity-body { grid-template-columns: 224px minmax(0,1fr); } .sg-integrity-body > aside { grid-column: 1 / -1; border-top: 1px solid var(--sg-divider); } }
@media(max-width: 699px) { .sg-integrity-body { grid-template-columns: minmax(0,1fr); } .sg-working-set-screen .sg-record-columns, .sg-working-set-screen .sg-record-row { grid-template-columns: minmax(0,1fr) 112px; } }
.sg-view-labels, .sg-view-milestones, .sg-view-organization { padding: 0; }
.sg-issue-reference { min-height: calc(100dvh - 88px); display: flex; flex-direction: column; }
.sg-issue-reference > header { height: 64px; border-bottom: 1px solid var(--sg-divider); display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 0 24px; }
.sg-issue-reference h1 { margin: 0; font-size: 18px; }
.sg-issue-reference > header label { display: flex; align-items: center; gap: 8px; width: 288px; height: 32px; padding: 0 8px; background: var(--sg-raised); border-radius: 4px; }
.sg-issue-reference input[type=search] { min-width: 0; width: 100%; border: 0; background: transparent; color: var(--sg-text); }
.sg-label-table { border-collapse: collapse; width: 100%; text-align: left; table-layout: fixed; }
.sg-label-table th { font-size: 12px; font-weight: 400; color: var(--sg-disabled); background: var(--sg-surface); height: 32px; padding: 8px 24px; text-transform: uppercase; }
.sg-label-table td { height: 64px; padding: 16px 24px; border-bottom: 1px solid var(--sg-divider); color: var(--sg-body); overflow-wrap: anywhere; }
.sg-label-table th:first-child { width: 272px; } .sg-label-table th:nth-child(2) { width: 192px; }
.sg-label-table td:first-child { color: var(--sg-text); }
.sg-label-table .sg-issue-label-swatch { width: 4px; height: 4px; border-radius: 50%; display: inline-block; margin: 0 12px 2px 4px; }
.sg-issue-reference > p { margin: 24px; color: var(--sg-metadata); }
.sg-issue-reference > footer { margin-top: auto; padding: 6px 16px; height: 32px; border-top: 1px solid var(--sg-divider); color: var(--sg-metadata); font-size: 12px; }
.sg-milestone-list > article { min-height: 112px; padding: 24px; border-bottom: 1px solid var(--sg-divider); }
.sg-milestone-list header { display: flex; gap: 8px; align-items: center; }
.sg-milestone-list h2 { font-size: 13px; font-weight: 500; margin: 0; }
.sg-milestone-list time { margin-left: auto; color: var(--sg-metadata); font-size: 12px; }
.sg-milestone-list p { margin: 20px 0 0; color: var(--sg-body); }
@media(max-width: 699px) {
  .sg-issue-reference > header { height: auto; min-height: 64px; padding: 16px; flex-wrap: wrap; gap: 12px; }
  .sg-label-table th:first-child { width: 28%; } .sg-label-table th:nth-child(2) { width: 25%; }
  .sg-label-table th, .sg-label-table td { padding: 12px; }
  .sg-milestone-list header { flex-wrap: wrap; }
}
@media(max-width: 1099px) { .sg-doc-layout { grid-template-columns: 208px minmax(0,1fr); } .sg-doc-toc { display: none; } }
@media(max-width: 699px) {
  .sg-doc-header { gap: 12px; padding: 0 16px; flex-wrap: wrap; height: auto; min-height: 56px; }
  .sg-doc-header > span { margin-right: auto; }
  .sg-doc-header form { order: 5; width: 100%; margin: 0 0 12px; }
  .sg-doc-layout { grid-template-columns: minmax(0,1fr); grid-template-rows: auto minmax(0,1fr); }
  .sg-doc-desktop-navigation { display: none; }
  .sg-doc-mobile-navigation { display: block; min-height: 0; border-bottom: 1px solid var(--sg-divider); }
  .sg-doc-mobile-navigation > summary { display: flex; align-items: center; gap: 8px; padding: 12px 16px; cursor: pointer; list-style: none; font-size: 13px; }
  .sg-doc-mobile-navigation > summary::-webkit-details-marker { display: none; }
  .sg-doc-mobile-navigation > summary > .codicon:last-child { margin-left: auto; }
  .sg-doc-mobile-navigation[open] > summary > .codicon:last-child { transform: rotate(180deg); }
  .sg-doc-mobile-navigation .sg-doc-navigation { padding: 16px; max-height: 35dvh; overflow-y: auto; overscroll-behavior: contain; border: 0; }
  .sg-doc-article { padding: 24px 16px; }
  .sg-doc-article h1 { font-size: 28px; line-height: 36px; }
  .sg-doc-table td, .sg-doc-table th { padding: 8px; overflow-wrap: anywhere; }
}
/* Native security boards: distinct scan, dependency and policy reading layouts. */
.sg-security-tab-heading { height:64px; padding:12px 24px; border-bottom:1px solid var(--sg-divider); }
.sg-security-tab-heading h2 { margin:0 0 4px; font-size:18px; font-weight:600; }
.sg-security-tab-heading p { margin:0; color:var(--sg-metadata); }
.sg-security-records .sg-record-workspace { height:calc(100dvh - 152px); }
.sg-security-scans .sg-record-workspace { height:calc(100dvh - 232px); }
.sg-security-scans .sg-record-row { min-height:88px; }
.sg-security-counts { height:80px; display:flex; align-items:center; gap:48px; padding:16px 24px; border-bottom:1px solid var(--sg-divider); }
.sg-security-counts > div { display:flex; gap:12px; align-items:baseline; }
.sg-security-counts strong { font-size:24px; font-weight:500; }
.sg-security-counts span { text-transform:capitalize; color:var(--sg-metadata); }
.sg-security-finding { padding:16px 0; border-bottom:1px solid var(--sg-divider); }
.sg-dependency-layout { display:grid; grid-template-columns:288px minmax(0,1fr); min-height:calc(100dvh - 152px); }
.sg-dependency-layout nav { border-right:1px solid var(--sg-divider); }
.sg-dependency-layout nav a { display:flex; flex-direction:column; gap:12px; min-height:110px; padding:20px 16px; border-bottom:1px solid var(--sg-divider); }
.sg-dependency-layout nav a[aria-current] { background:var(--sg-raised); }
.sg-dependency-layout nav :is(span,small) { color:var(--sg-metadata); }
.sg-dependency-layout article { padding:24px; min-width:0; }
.sg-dependency-layout h2 { margin:0 0 12px; font-size:18px; }
.sg-dependency-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:32px 0; border-block:1px solid var(--sg-divider); }
.sg-dependency-stats > div { display:flex; flex-direction:column; gap:10px; padding:24px 16px; }
.sg-dependency-stats strong { font-size:28px; font-weight:500; }
.sg-dependency-stats span { color:var(--sg-metadata); }
.sg-dependency-layout footer { display:flex; gap:24px; margin-top:32px; color:var(--sg-disabled); flex-wrap:wrap; overflow-wrap:anywhere; }
.sg-security-policy-layout { display:grid; grid-template-columns:minmax(0,1fr) 400px; min-height:calc(100dvh - 152px); }
.sg-security-policy-layout article { padding:24px; min-width:0; }
.sg-security-policy-layout article > section { margin-top:32px; }
.sg-security-policy-layout aside { padding:24px; background:var(--sg-surface); border-left:1px solid var(--sg-divider); }
.sg-security-policy-layout aside section + section { padding-top:24px; border-top:1px solid var(--sg-divider); }
.sg-security-audit .sg-record-row { min-height:56px; }
/* Repository settings use the native table/form geometry rather than nested panels. */
.sg-settings-native > .sg-view-heading { height:80px; margin:0; padding:16px 24px; border-bottom:1px solid var(--sg-divider); }
.sg-settings-native > .sg-view-heading h1 { font-size:18px; line-height:24px; font-weight:600; }
.sg-settings-native-body { padding:24px; }
.sg-settings-native h2 { font-size:13px; font-weight:500; margin:8px 0 24px; }
.sg-settings-native p { color:var(--sg-body); line-height:20px; }
.sg-settings-general-grid { display:grid; grid-template-columns:minmax(0,1fr) 288px; gap:24px; }
.sg-settings-general-grid > article { min-width:0; }
.sg-settings-general-grid article > p { margin-bottom:16px; color:var(--sg-metadata); }
.sg-settings-general-grid .sg-settings-form form { display:block; }
.sg-settings-native-aside { align-self:start; min-width:0; background:var(--sg-surface); padding:24px 16px; }
.sg-settings-native-aside form { display:grid; gap:16px; }
.sg-settings-native-aside :is(.sgui-field,.sgui-select) { display:grid; grid-template-columns:minmax(0,1fr); gap:8px; }
.sg-settings-native-aside :is(input,.sgui-select-trigger) { min-height:40px; border:0; background:var(--sg-raised); border-radius:8px; }
.sg-settings-native-aside .sgui-select-menu { left:0; min-width:100%; }
.sg-settings-native-aside .sg-inspector-facts { margin:24px 0; }
.sg-settings-native-aside .sg-inspector-facts > div { border-bottom:1px solid var(--sg-divider); padding:12px 0; }
.sg-settings-native-aside p { margin:16px 0 24px; }
.sg-settings-identity { margin-top:32px; }
.sg-settings-identity .sg-inspector-facts { padding:16px 0; border-bottom:1px solid var(--sg-divider); margin-bottom:16px; }
.sg-settings-teams-grid { display:grid; grid-template-columns:minmax(0,1fr) 384px; gap:24px; }
.sg-settings-rules-grid { display:grid; grid-template-columns:minmax(0,1fr) 440px; gap:24px; }
.sg-settings-storage-grid { display:grid; grid-template-columns:minmax(0,1fr) 304px; gap:24px; }
.sg-settings-teams-grid .sg-record-search { width:280px; max-width:100%; margin:0 0 16px; }
.sg-settings-table-head,.sg-settings-select-row { display:grid; grid-template-columns:minmax(0,1fr) 144px; gap:24px; padding:0 16px; align-items:center; }
.sg-settings-table-head { height:32px; background:var(--sg-surface); color:var(--sg-metadata); text-transform:uppercase; font-size:12px; }
.sg-settings-select-row { min-height:56px; border-bottom:1px solid var(--sg-divider); }
.sg-settings-select-row strong { font-weight:500; }
.sg-settings-select-row[aria-current] { background:var(--sg-raised); }
.sg-settings-teams-grid > .sgui-data-table { --record-columns:minmax(0,1fr) 144px; }
.sg-settings-teams-grid .sg-record-columns { padding-left:16px; }
.sg-settings-teams-grid .sg-record-row { min-height:56px; }
.sg-settings-rules-grid .sgui-data-table { --record-columns:minmax(0,1fr) 144px; }
.sg-settings-rules-grid .sg-record-columns { padding-left:16px; }
.sg-issue-reference > .sgui-data-table .sgui-data-toolbar { padding-inline:24px; }
.sg-settings-rules-grid .sg-settings-select-row { min-height:64px; }
.sg-settings-rule-summary { margin-top:24px; }
.sg-settings-native .sgui-data-table { border:0; border-radius:0; }
.sg-settings-native .sgui-table-wrap { border:0; border-radius:0; }
.sg-settings-native .sgui-table th { height:32px; padding:0 16px; background:var(--sg-surface); color:var(--sg-metadata); text-transform:uppercase; font-weight:400; font-size:12px; }
.sg-settings-native .sgui-table td { height:56px; padding:12px 16px; }
.sg-settings-native :is(td,dd) { overflow-wrap:anywhere; }
.sg-settings-native .sg-settings-section-title { margin:32px 0 24px; }
.sg-settings-native .sg-settings-footnote { margin-top:24px; color:var(--sg-metadata); font-size:12px; }
.sg-settings-access-toolbar { display:flex; justify-content:flex-end; margin-bottom:24px; }
.sg-settings-access-body .sg-invitation-list { width:100%; border:0; }
.sg-settings-access-body .sg-invitation-list > header { height:32px; padding:0 16px; background:var(--sg-surface); }
.sg-settings-access-body .sg-invitation-row { min-height:56px; padding:12px 16px; border-bottom:1px solid var(--sg-divider); }
.sg-settings-access-body .sg-invitation-row > div:first-child { flex:1; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:24px; }
.sg-settings-access-invites { margin-top:32px; }
.sg-settings-posture { margin:24px 0; }
.sg-settings-posture > div { display:grid; grid-template-columns:136px minmax(0,1fr); gap:16px; padding:20px 0; border-bottom:1px solid var(--sg-divider); }
.sg-settings-posture dt { color:var(--sg-metadata); }
.sg-settings-posture dd { margin:0; }
.sg-settings-lifecycle { display:flex; flex-direction:column; gap:24px; }
.sg-settings-lifecycle > article { display:flex; align-items:center; gap:32px; min-height:96px; padding:24px; background:var(--sg-surface); }
.sg-settings-lifecycle > article > div:not(.sgui-dialog) { flex:1; }
.sg-settings-lifecycle h2 { margin:0 0 8px; font-size:18px; font-weight:600; }
.sg-settings-lifecycle p { margin:0; }
@media(max-width:1119px) {
 .sg-settings-general-grid,.sg-settings-teams-grid,.sg-settings-rules-grid,.sg-settings-storage-grid,.sg-security-policy-layout { grid-template-columns:minmax(0,1fr) 288px; }
}
@media(max-width:899px) {
 .sg-settings-general-grid,.sg-settings-teams-grid,.sg-settings-rules-grid,.sg-settings-storage-grid,.sg-security-policy-layout,.sg-dependency-layout { grid-template-columns:minmax(0,1fr); }
 .sg-dependency-layout nav { display:flex; overflow:auto; border-bottom:1px solid var(--sg-divider); }
 .sg-dependency-layout nav a { min-width:220px; }
 .sg-settings-native-aside { width:100%; }
 .sg-security-records .sg-record-workspace { height:auto; }
}
@media(max-width:599px) {
 .sg-settings-native-body { padding:16px; }
 .sg-settings-access-body .sg-invitation-row > div:first-child { grid-template-columns:minmax(0,1fr); gap:4px; }
 .sg-settings-lifecycle > article { flex-wrap:wrap; gap:16px; }
 .sg-security-counts { gap:24px; }
 .sg-dependency-stats strong { font-size:22px; }
 .sg-dependency-stats > div { padding:16px 8px; }
}
.sg-revision-toolbar { display:flex; align-items:center; gap:8px; min-height:48px; padding:8px 16px; background:var(--sg-surface); border-bottom:1px solid var(--sg-divider); }
.sg-revision-toolbar h1 { font-size:14px; font-weight:500; margin:0; }
.sg-revision-toolbar > span { color:var(--sg-metadata); }
.sg-revision-toolbar > .sgui-button { margin-left:auto; }
.sg-revision-ref-picker { position:relative; }
.sg-revision-ref-picker summary { list-style:none; display:flex; align-items:center; gap:8px; height:32px; background:var(--sg-raised); padding:6px 10px; border-radius:6px; cursor:pointer; }
.sg-revision-ref-picker summary::-webkit-details-marker { display:none; }
.sg-revision-ref-picker nav { z-index:10; position:absolute; min-width:240px; max-height:320px; overflow:auto; background:var(--sg-raised); border:1px solid var(--sg-divider); padding:8px; border-radius:6px; }
.sg-revision-ref-picker nav a { display:block; padding:8px; }
.sg-revision-ref-picker nav a:hover { background:var(--sg-hover); }
.sg-revision-diff-summary { display:flex; align-items:center; gap:12px; min-height:40px; padding:8px 16px; border-bottom:1px solid var(--sg-divider); }
.sg-revision-diff-summary code { margin-left:auto; color:var(--sg-focus); overflow:hidden; white-space:nowrap; text-overflow:ellipsis; max-width:65%; }
.sg-history-detail .sg-diff-layout { min-height:calc(100dvh - 200px); }
.sg-revision-source-facts { padding:24px 16px; }
.sg-revision-source-facts h2 { font-size:12px; color:var(--sg-metadata); font-weight:400; margin:0 0 16px; }
.sg-revision-source-facts dd { overflow-wrap:anywhere; font-family:var(--sg-font-mono); font-size:12px; }
.sg-revision-source-facts p { color:var(--sg-metadata); line-height:18px; margin-top:20px; font-size:12px; }
.sg-visibility-screen { padding:0; }
.sg-visibility-screen > .sg-view-heading { padding:16px 24px; height:80px; margin:0; border-bottom:1px solid var(--sg-divider); }
.sg-visibility-screen .sg-disclosure-simulator { padding:24px; border:0; background:none; }
.sg-visibility-toolbar { display:flex; align-items:center; justify-content:space-between; margin-bottom:24px; }
.sg-visibility-toolbar nav { display:flex; }
.sg-visibility-toolbar a { display:block; padding:12px 24px; min-width:160px; text-align:center; border-bottom:2px solid var(--sg-divider); }
.sg-visibility-toolbar a[aria-current] { border-color:var(--sg-text); }
.sg-visibility-toolbar > span { color:var(--sg-metadata); }
.sg-visibility-screen .sg-disclosure-axis-head { min-height:32px; background:var(--sg-surface); padding:0 16px; align-items:center; }
.sg-visibility-screen .sg-disclosure-rule-list li { min-height:64px; padding:16px; border-bottom:1px solid var(--sg-divider); }
.sg-visibility-screen .sg-settings-posture { overflow-wrap:anywhere; }
.sg-visibility-screen footer { color:var(--sg-metadata); font-size:12px; }
@media(max-width:699px) { .sg-revision-toolbar { flex-wrap:wrap; } .sg-revision-diff-summary code { display:none; } .sg-visibility-toolbar { flex-direction:column; align-items:start; gap:12px; } .sg-visibility-toolbar a { min-width:0; padding:12px 16px; } }
[data-sg-ui] .sg-settings-native-aside :is(.sgui-field,.sgui-select) { margin-bottom:0; }
.sg-settings-native-aside form > .sgui-button { justify-self:start; }
[data-sg-ui] .sg-settings-native .sgui-table-scroll { border:0; }
.sg-git-bridge-screen { display:grid; grid-template-columns:minmax(0,1fr) 336px; min-height:calc(100dvh - 88px); padding:0; }
.sg-git-bridge-screen > article { padding:24px; min-width:0; }
.sg-git-bridge-screen h1 { font-size:18px; line-height:24px; margin:0 0 8px; }
.sg-git-bridge-screen h2 { font-size:14px; font-weight:500; margin:28px 0 12px; }
.sg-git-bridge-screen p { color:var(--sg-body); line-height:22px; }
.sg-git-bridge-screen aside { background:var(--sg-surface); border-left:1px solid var(--sg-divider); }
.sg-git-bridge-screen aside > header { height:44px; border-bottom:1px solid var(--sg-divider); padding:12px 16px; }
.sg-git-bridge-screen aside > div { padding:16px; }
.sg-git-bridge-screen aside h2 { margin:0 0 24px; font-size:18px; font-weight:600; }
.sg-git-bridge-screen aside dt { margin:24px 0 8px; color:var(--sg-disabled); font-size:12px; }
.sg-git-bridge-screen aside dd { margin:0; color:var(--sg-body); }
.sg-git-transfer-history { margin-top:32px; }
.sg-git-transfer-history summary { color:var(--sg-metadata); cursor:pointer; }
.sg-git-bridge-screen pre { overflow:auto; padding:16px; }
@media(max-width:899px) { .sg-git-bridge-screen { grid-template-columns:minmax(0,1fr); } .sg-git-bridge-screen aside { border-left:0; border-top:1px solid var(--sg-divider); } }
