/* Foundry-derived repository Workbench */
.gf-repository-workbench { height: 100%; min-height: 0; display: grid; grid-template-rows: 45px minmax(0,1fr) 26px; background: var(--gf-bg); }
.gf-workbench-toolbar { display: grid; grid-template-columns: 100px minmax(0,1fr) auto; align-items: center; gap: 12px; padding: 0 12px; border-bottom: 1px solid var(--gf-line); background: var(--gf-sidebar); }
.gf-workbench-toolbar > div:nth-child(2) { min-width: 0; display: flex; align-items: baseline; gap: 10px; }
.gf-workbench-toolbar strong { font-size: 12px; font-weight: 600; }
.gf-workbench-toolbar span { color: var(--gf-muted); font-size: 9px; }
.gf-workbench-toolbar code { color: var(--gf-text-2); font-size: 9px; }
.gf-workbench-state { display: flex; gap: 10px; }
.gf-workbench-grid { min-height: 0; display: grid; grid-template-columns: minmax(245px,19%) minmax(430px,1fr) minmax(250px,20%); }
.gf-workbench-explorer, .gf-workbench-inspector, .gf-workbench-focus { min-width: 0; min-height: 0; background: var(--gf-panel); }
.gf-workbench-explorer { display: flex; flex-direction: column; border-right: 1px solid var(--gf-line); }
.gf-workbench-inspector { display: flex; flex-direction: column; border-left: 1px solid var(--gf-line); }
.gf-workbench-focus { display: flex; flex-direction: column; background: #0c1117; }
.gf-pane-head { height: 34px; flex: none; display: flex; align-items: center; justify-content: space-between; padding: 0 10px; border-bottom: 1px solid var(--gf-line); color: var(--gf-text-2); font-size: 9px; font-weight: 650; letter-spacing: .055em; text-transform: uppercase; }
.gf-pane-head small { color: var(--gf-faint); font-size: 8px; font-weight: 500; }
.gf-explorer-scroll, .gf-inspector-scroll, .gf-focus-scroll { min-height: 0; flex: 1; overflow: auto; }
.gf-explorer-group { border-bottom: 1px solid var(--gf-line); }
.gf-explorer-group > summary { min-height: 31px; display: flex; align-items: center; gap: 6px; padding: 0 9px; color: var(--gf-muted); font-size: 8px; font-weight: 650; letter-spacing: .055em; list-style: none; cursor: pointer; }
.gf-explorer-group > summary::-webkit-details-marker, .gf-explorer-subgroup > summary::-webkit-details-marker { display: none; }
.gf-explorer-group > summary::before { content: '›'; width: 10px; color: var(--gf-faint); font-size: 13px; }
.gf-explorer-group[open] > summary::before { content: '⌄'; }
.gf-explorer-group summary small { margin-left: auto; color: var(--gf-faint); font-size: 8px; }
.gf-explorer-subgroup { border-top: 1px solid rgba(255,255,255,.04); }
.gf-explorer-subgroup > summary { min-height: 28px; display: flex; align-items: center; padding: 0 10px 0 20px; color: var(--gf-muted); font-size: 9px; list-style: none; cursor: pointer; }
.gf-explorer-subgroup summary small { margin-left: auto; }
.gf-explorer-row { width: 100%; min-height: 28px; display: flex; align-items: center; justify-content: space-between; gap: 7px; padding: 0 9px 0 20px; border: 0; background: transparent; color: var(--gf-text-2); text-decoration: none; text-align: left; cursor: pointer; font-size: 10px; }
.gf-explorer-row:hover { background: rgba(255,255,255,.035); color: var(--gf-text); }
.gf-explorer-row.selected { background: rgba(107,166,255,.10); color: var(--gf-text); box-shadow: inset 2px 0 0 var(--gf-blue); }
.gf-explorer-row.selected-parent { color: var(--gf-text); }
.gf-explorer-row > span { min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.gf-explorer-row small { color: var(--gf-faint); font-size: 8px; }
.gf-explorer-task { display: block; min-height: 25px; padding: 5px 9px 5px 34px; color: var(--gf-muted); text-decoration: none; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-size: 9px; }
.gf-explorer-task:hover, .gf-explorer-task.selected { color: var(--gf-text); background: rgba(255,255,255,.025); }
.gf-explorer-row.tree { padding-left: calc(20px + var(--depth,0) * 13px); }
.gf-explorer-row.tree > span { display: flex; align-items: center; gap: 5px; }
.gf-explorer-row.tree i { width: 9px; color: var(--gf-faint); font-style: normal; text-align: center; }
.gf-tree-loading { display: block; padding: 4px 12px 4px 34px; color: var(--gf-faint); font-size: 8px; }
.gf-editor-tabs { height: 34px; flex: none; display: flex; overflow-x: auto; border-bottom: 1px solid var(--gf-line); background: var(--gf-sidebar); }
.gf-editor-tab { min-width: 0; max-width: 210px; display: flex; align-items: stretch; border-right: 1px solid var(--gf-line); color: var(--gf-muted); }
.gf-editor-tab.active { color: var(--gf-text); background: #0c1117; box-shadow: inset 0 2px 0 var(--gf-blue); }
.gf-editor-tab a { min-width: 0; display: flex; align-items: center; padding: 0 9px; text-decoration: none; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-size: 9px; }
.gf-editor-tab button { width: 24px; border: 0; background: transparent; color: var(--gf-faint); cursor: pointer; }
.gf-editor-tab button:hover { color: var(--gf-text); }
.gf-focus-scroll { background: #0c1117; }
.gf-inspector-scroll { padding-bottom: 60px; }
.gf-inspector-scroll > section { padding: 12px 11px; border-bottom: 1px solid var(--gf-line); }
.gf-inspector-scroll > section > span { color: var(--gf-muted); font-size: 8px; font-weight: 650; letter-spacing: .06em; }
.gf-inspector-scroll dl { margin: 7px 0 0; }
.gf-inspector-scroll dl > div { display: grid; grid-template-columns: 72px minmax(0,1fr); gap: 8px; padding: 4px 0; }
.gf-inspector-scroll dt { color: var(--gf-muted); font-size: 9px; }
.gf-inspector-scroll dd { min-width: 0; margin: 0; color: var(--gf-text-2); font-size: 9px; overflow-wrap: anywhere; }
.gf-inspector-scroll code { font-size: 8px; }
.gf-inspector-scroll p { color: var(--gf-text-2); font-size: 9px; }
.gf-inspector-scroll a { color: #a9ccff; text-decoration: none; font-size: 9px; }
.gf-workbench-status { display: flex; align-items: center; gap: 14px; padding: 0 10px; border-top: 1px solid var(--gf-line); background: var(--gf-sidebar); color: var(--gf-faint); font-size: 8px; }
.gf-workbench-status code { color: var(--gf-muted); font-size: 8px; }

/* Focus surfaces */
.gf-repository-reality-focus, .gf-frontier-focus, .gf-document-focus, .gf-task-inspector, .gf-commit-focus { width: min(100%,980px); margin: 0 auto; padding: 24px 28px 60px; }
.gf-repository-reality-focus > header > span, .gf-frontier-focus > header > span, .gf-document-focus > header > span, .gf-commit-focus > header > span { color: var(--gf-muted); font-size: 9px; font-weight: 650; letter-spacing: .065em; }
.gf-repository-reality-focus > header h2, .gf-frontier-focus > header h2, .gf-document-focus > header h2, .gf-commit-focus > header h2 { margin: 6px 0 4px; font-size: 22px; line-height: 1.2; font-weight: 570; letter-spacing: -.02em; }
.gf-repository-reality-focus > header p, .gf-frontier-focus > header p, .gf-document-focus > header p, .gf-commit-focus > header p { margin: 0; color: var(--gf-text-2); }
.gf-reality-focus-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px 28px; margin-top: 28px; }
.gf-reality-focus-grid > section { min-width: 0; }
.gf-pane-label { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding-bottom: 7px; border-bottom: 1px solid var(--gf-line); }
.gf-pane-label small { color: var(--gf-faint); font-size: 9px; }
.gf-reading-item, .gf-related-link { display: block; padding: 9px 2px; border-bottom: 1px solid var(--gf-line); color: inherit; text-decoration: none; }
.gf-reading-item > span, .gf-related-link > span { color: var(--gf-muted); font-size: 8px; }
.gf-reading-item strong, .gf-related-link strong { display: block; margin-top: 2px; font-size: 10px; font-weight: 560; }
.gf-reading-item p { margin: 3px 0 0; color: var(--gf-muted); font-size: 9px; line-height: 1.45; }
.gf-brief-item { padding: 8px 1px; border-bottom: 1px solid var(--gf-line); }
.gf-brief-item p { margin: 0; color: var(--gf-text-2); font-size: 10px; }
.gf-brief-item small { display: block; margin-top: 3px; color: var(--gf-faint); font-size: 8px; }
.gf-work-link, .gf-frontier-task { min-height: 34px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 0 2px; border-bottom: 1px solid var(--gf-line); color: inherit; text-decoration: none; font-size: 10px; }
.gf-work-link strong, .gf-frontier-task strong { min-width: 0; font-weight: 550; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gf-work-link span, .gf-frontier-task span { color: var(--gf-muted); font-size: 8px; }
.gf-frontier-focus > header > div { float: right; display: flex; align-items: center; gap: 8px; }
.gf-frontier-focus > header > div b { color: var(--gf-muted); font-size: 10px; }
.gf-current-task { margin-top: 22px; padding: 14px 15px; border-left: 2px solid var(--gf-blue); background: rgba(107,166,255,.06); }
.gf-current-task span, .gf-current-task small { display: block; color: var(--gf-muted); font-size: 8px; }
.gf-current-task strong { display: block; margin: 5px 0 2px; font-size: 13px; font-weight: 570; }
.gf-frontier-columns { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; margin-top: 24px; }
.gf-frontier-task.current { color: #cfe1ff; }
.gf-document-focus > header > div { float: right; display: flex; gap: 5px; }
.gf-document-insights { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 22px; border: 1px solid var(--gf-line); }
.gf-document-insights section { min-height: 112px; padding: 11px 12px; }
.gf-document-insights section + section { border-left: 1px solid var(--gf-line); }
.gf-document-insights section > span { color: var(--gf-muted); font-size: 8px; font-weight: 650; text-transform: uppercase; }
.gf-document-insights p { margin: 6px 0; color: var(--gf-text-2); font-size: 10px; }
.gf-document-insights .muted { color: var(--gf-muted); }
.gf-document-insights a, .gf-source-description a { color: #a9ccff; text-decoration: none; }
.gf-document-actions { display: flex; gap: 7px; margin-top: 14px; }
.gf-source-description { margin-top: 18px; border-top: 1px solid var(--gf-line); }
.gf-source-description > summary { padding: 11px 0; color: var(--gf-muted); cursor: pointer; font-size: 10px; }
.gf-source-description > div { max-width: 820px; color: var(--gf-text-2); font-size: 11px; line-height: 1.6; }
.gf-source-description h3 { margin: 18px 0 6px; color: var(--gf-text); font-size: 13px; }
.gf-source-description li { margin: 4px 0; }
.gf-evidence { margin-top: 18px; border-top: 1px solid var(--gf-line); }
.gf-evidence > header { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); border-bottom: 1px solid var(--gf-line); }
.gf-evidence > header > div { padding: 9px; border-right: 1px solid var(--gf-line); }
.gf-evidence > header > div:last-child { border-right: 0; }
.gf-evidence > header strong { display: block; font-size: 12px; }.gf-evidence > header span { color: var(--gf-muted); font-size: 8px; }
.gf-evidence details { border-bottom: 1px solid var(--gf-line); }
.gf-evidence summary { padding: 9px 2px; color: var(--gf-text-2); cursor: pointer; font-size: 10px; }
.gf-evidence-file { display: grid; grid-template-columns: minmax(0,1fr) 80px 80px; gap: 8px; padding: 7px 2px; border-top: 1px solid var(--gf-line); text-decoration: none; font-size: 9px; }
.gf-evidence-file span, .gf-evidence-file small { color: var(--gf-muted); }
.gf-prose-list p { color: var(--gf-text-2); font-size: 10px; }.gf-prose-list span { color: var(--gf-muted); }
.gf-diff { max-height: 480px; overflow: auto; padding: 12px; background: #080c11; color: #c3ceda; font-size: 10px; white-space: pre-wrap; }
.gf-file-focus { height: 100%; display: flex; flex-direction: column; }
.gf-file-focus > header { min-height: 36px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 0 11px; border-bottom: 1px solid var(--gf-line); color: var(--gf-muted); font-size: 9px; }
.gf-file-focus > header span:first-child { display: flex; gap: 5px; }.gf-file-focus > header a { color: var(--gf-text-2); text-decoration: none; }
.gf-file-focus > header code { font-size: 8px; }
.gf-file-focus > pre { flex: 1; min-height: 0; margin: 0; padding: 16px 18px 50px; overflow: auto; color: #d3dce7; background: #080d12; font-size: 11px; line-height: 1.55; tab-size: 2; }
.gf-commit-focus header code { display: block; margin-top: 5px; color: var(--gf-muted); font-size: 9px; }
.gf-commit-focus > pre { padding: 13px; border: 1px solid var(--gf-line); background: var(--gf-panel); color: var(--gf-text-2); white-space: pre-wrap; font-size: 10px; }
.gf-focus-collection { width: min(100%,1000px); margin: 0 auto; padding: 24px 28px 60px; }
.gf-focus-collection > header { padding-bottom: 10px; border-bottom: 1px solid var(--gf-line); }
.gf-focus-collection > header span { color: var(--gf-muted); font-size: 8px; font-weight: 650; }
.gf-focus-collection h2 { margin: 4px 0 0; font-size: 18px; }
.gf-focus-collection > a { min-height: 62px; display: grid; grid-template-columns: 82px minmax(0,1fr) auto; gap: 12px; align-items: center; padding: 9px 3px; border-bottom: 1px solid var(--gf-line); text-decoration: none; }
.gf-focus-collection > a:hover { background: rgba(255,255,255,.018); }
.gf-focus-collection > a > b { color: var(--gf-muted); font-size: 9px; font-weight: 500; }
.gf-focus-collection > a strong { display: block; font-size: 11px; font-weight: 570; }
.gf-focus-collection > a p { margin: 3px 0 0; color: var(--gf-muted); font-size: 9px; }

/* dialogs / command */
.gf-command-dialog, .gf-signal-dialog { width: min(720px,calc(100vw - 40px)); max-height: min(680px,calc(100vh - 60px)); padding: 0; border: 1px solid var(--gf-line-strong); border-radius: 7px; background: #0d131a; color: var(--gf-text); box-shadow: 0 30px 80px rgba(0,0,0,.55); }
.gf-command-dialog::backdrop, .gf-signal-dialog::backdrop { background: rgba(0,0,0,.55); }
.gf-command-input { width: 100%; height: 48px; padding: 0 14px; border: 0; border-bottom: 1px solid var(--gf-line); background: transparent; outline: 0; }
.gf-command-results { max-height: 520px; overflow: auto; }
.gf-command-row { min-height: 48px; display: grid; grid-template-columns: 68px minmax(0,1fr) auto; gap: 10px; align-items: center; padding: 7px 12px; border-bottom: 1px solid var(--gf-line); text-decoration: none; }
.gf-command-row:hover { background: var(--gf-panel); }
.gf-command-row > span { color: var(--gf-muted); font-size: 8px; text-transform: uppercase; }.gf-command-row strong { display: block; font-size: 10px; }.gf-command-row small { display: block; margin-top: 2px; color: var(--gf-muted); font-size: 8px; }.gf-command-row b { color: var(--gf-faint); }
.gf-dialog-head { min-height: 34px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 0 10px; border-top: 1px solid var(--gf-line); color: var(--gf-muted); font-size: 9px; }
.gf-icon-button { border: 0; background: transparent; color: var(--gf-muted); cursor: pointer; font-size: 16px; }
.gf-dialog-body { max-height: 560px; overflow: auto; padding: 4px 14px 16px; }
.gf-dialog-body details { border-bottom: 1px solid var(--gf-line); }.gf-dialog-body summary { display: flex; align-items: center; gap: 8px; padding: 10px 0; cursor: pointer; }.gf-dialog-body summary span:last-child { color: var(--gf-muted); font-size: 9px; }.gf-dialog-body details > div { padding: 0 0 8px 70px; }.gf-dialog-body p { margin: 5px 0; color: var(--gf-text-2); font-size: 10px; }

@media (max-width: 1180px) {
  body { grid-template-columns: 190px minmax(0,1fr); }
  .gf-today-cockpit { grid-template-columns: minmax(0,1fr) 250px; }
  .gf-secondary-work-grid { grid-template-columns: 1fr; }
  .gf-landscape-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .gf-workbench-grid { grid-template-columns: 245px minmax(0,1fr); }
  .gf-workbench-inspector { display: none; }
  .gf-repository-item { grid-template-columns: minmax(250px,1.4fr) minmax(180px,.8fr) 150px; }
}
@media (max-width: 850px) {
  body { display: block; }
  .gf-sidebar { position: relative; width: 100%; height: auto; flex-direction: row; align-items: center; border-right: 0; border-bottom: 1px solid var(--gf-line); }
  .gf-brand { margin-right: auto; }.gf-brand span { display: none; }.gf-nav { display: flex; }.gf-sidebar-foot { display: none; }
  .gf-main { padding: 18px 16px 50px; }
  .gf-command-trigger { width: 180px; }
  .gf-today-cockpit { display: block; }.gf-cockpit-awareness, .gf-cockpit-movement, .gf-cockpit-landscape { margin-top: 28px; }
  .gf-landscape-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .gf-repository-item { grid-template-columns: 1fr; gap: 8px; }.gf-repository-ref { justify-items: start; grid-template-columns: auto auto; }.gf-repository-facts { justify-content: flex-start; }
  .gf-main.workbench-mode { height: auto; overflow: visible; }.gf-main.workbench-mode .gf-topbar { position: sticky; top: 0; z-index: 10; }
  .gf-repository-workbench { min-height: calc(100vh - 95px); grid-template-rows: auto auto auto; }.gf-workbench-grid { display: block; }.gf-workbench-explorer { max-height: 300px; border-right: 0; border-bottom: 1px solid var(--gf-line); }.gf-workbench-focus { min-height: 600px; }.gf-workbench-status { min-height: 28px; flex-wrap: wrap; }.gf-workbench-toolbar { grid-template-columns: auto 1fr; padding: 8px 10px; }.gf-workbench-state { grid-column: 1 / -1; }
  .gf-document-insights, .gf-reality-focus-grid, .gf-frontier-columns { grid-template-columns: 1fr; }.gf-document-insights section + section { border-left: 0; border-top: 1px solid var(--gf-line); }
}
