/* Shared application shell and components. See docs/ui-map.md for stable names. */
.workbench-ui {
    --paper: var(--ovp-canvas);
    --surface: var(--ovp-surface);
    --ink: var(--ovp-ink);
    --muted: var(--ovp-muted);
    --line: var(--ovp-line);
    --accent: var(--ovp-primary);
    --forest: var(--ovp-success);
    --workbench-nav: var(--ovp-nav);
    --workbench-nav-text: var(--ovp-nav-text);
    --workbench-nav-muted: var(--ovp-nav-muted);
    --workbench-copper: var(--ovp-copper);
    --workbench-hover: var(--ovp-hover);
    --workbench-selected: var(--ovp-selected);
    --workbench-input: #ffffff;
    --workbench-focus: #147786;
    --workbench-warning: var(--ovp-warning);
    --workbench-warning-surface: #f5eacb;
    --workbench-radius: 10px;
    --workbench-sidebar-width: 248px;
    --workbench-control-height: var(--ovp-control-height);
    --workbench-columns: 104px minmax(0, 1fr) 100px 120px;
    font-size: 16px;
    line-height: 1.5;
}

.workbench-ui :where(a, button, input, select, textarea, [tabindex]):focus-visible {
    outline: 2px solid var(--workbench-focus);
    outline-offset: 3px;
}

.workbench-ui :where(button, input, select, textarea) { font: inherit; }
.workbench-ui :where(button, input, select, textarea):disabled { cursor: not-allowed; opacity: .55; }
.workbench-ui :where(.content, .content > *, .entity-header__actions > *, .topbar__user) { min-width: 0; }
.workbench-ui :where(h1, h2, h3, .breadcrumbs, .record-row, .form-field, .explorer-pane) { overflow-wrap: anywhere; }
.workbench-ui .content { width: 100%; max-width: 1560px; padding: 28px 36px 48px; }
.workbench-ui .shell { grid-template-columns: var(--workbench-sidebar-width) minmax(0, 1fr); min-height: calc(100vh - 72px); }
.workbench-ui .topbar { display: grid; grid-template-columns: var(--workbench-sidebar-width) minmax(0, 1fr); height: 72px; padding: 0; border-bottom-color: var(--line); }
.workbench-ui .brand { height: 100%; padding: 16px 24px; gap: 12px; background: var(--workbench-nav); }
.workbench-ui .brand__mark { width: 38px; height: 38px; border-radius: 12px 3px 12px 3px; background: var(--workbench-copper); color: #fff; font: 500 26px Georgia, serif; }
.workbench-ui .brand strong { color: #fff; font-size: 18px; font-weight: 600; }
.workbench-ui .brand small { margin-top: 3px; color: var(--workbench-nav-muted); font-size: 10px; }
.workbench-ui .topbar__user { gap: 16px; padding: 0 24px; font-size: 13px; }
.workbench-ui .topbar__user > a { color: var(--muted); text-decoration: none; }
.workbench-ui .topbar__user > a:hover { color: var(--accent); }
.workbench-ui .topbar .quick-search { margin-right: auto; }
.workbench-ui .quick-search__trigger { min-width: 176px; justify-content: flex-start; background: var(--paper) !important; border-color: transparent !important; }
.workbench-ui .quick-search__trigger kbd { margin-left: auto; background: var(--surface); }
.workbench-ui .sidebar { padding: 24px 20px; border: 0; background: var(--workbench-nav); color: var(--workbench-nav-text); }
.workbench-ui .sidebar__toggle { display: inline-flex; gap: 8px; align-items: center; min-height: 36px; padding: 6px 10px; margin-bottom: 24px; border: 1px solid #395263; border-radius: 8px; background: #213c4e; color: var(--workbench-nav-text); font-size: 12px; cursor: pointer; }
.workbench-ui .sidebar :focus-visible { outline-color: #8dd7da; }
.workbench-ui .nav-group { margin-bottom: 28px; padding-bottom: 24px; border-bottom: 1px solid #2b4353; }
.workbench-ui .nav-group:last-child { border: 0; }
.workbench-ui .nav-group__title { display: block; font: 650 13px/1.4 system-ui, sans-serif; color: var(--workbench-nav-muted); }
.workbench-ui .nav-group ul { display: grid; gap: 4px; padding-top: 12px; }
.workbench-ui .nav-group li a { padding: 10px 12px; margin-inline: -12px; border-radius: 8px; color: var(--workbench-nav-text); font-size: 14px; }
.workbench-ui .nav-group a:hover { background: #264657; color: #fff; }
.workbench-ui .nav-group a[aria-current=page] { background: #2a525f; color: #fff; box-shadow: inset 3px 0 #7ec4c5; }
.workbench-ui .breadcrumbs { gap: 8px; font-size: 12px; }
.workbench-ui .breadcrumbs a { text-underline-offset: 3px; }
.workbench-ui .eyebrow { margin: 0 0 6px; color: var(--muted); font-size: 12px; font-weight: 500; letter-spacing: normal; text-transform: none; }
.workbench-ui h1 { font: 700 36px/1.15 system-ui, sans-serif; letter-spacing: -.04em; }
.workbench-ui h2 { font: 650 19px/1.3 system-ui, sans-serif; letter-spacing: -.015em; }
.workbench-ui h3 { font: 650 16px/1.4 system-ui, sans-serif; }
.workbench-ui .entity-header { padding: 28px 0 24px; border: 0; }
.workbench-ui .entity-header h1 { margin: 0; font: 700 38px/1.15 system-ui, sans-serif; letter-spacing: -.04em; }
.workbench-ui .entity-header__actions { align-items: center; }
.workbench-ui .workbench-heading-title { display: flex; gap: 18px; align-items: center; min-width: 0; }
.workbench-ui .workbench-heading-icon { display: grid; flex: 0 0 60px; width: 60px; height: 60px; place-items: center; border: 1px solid #c9e0e3; border-radius: 16px; background: var(--workbench-selected); color: var(--accent); }
.workbench-ui .workbench-symbol { display: block; width: 28px; height: 28px; }
.workbench-ui .workbench-heading-title > div { min-width: 0; }
.workbench-ui .lead { padding: 20px 0; font-size: 17px; }
.workbench-ui .folder-metadata { margin: 0 0 24px; border: 1px solid var(--line); border-radius: 10px; background: #f8fafb; }
.workbench-ui .folder-metadata summary { display: list-item; padding: 12px 18px; color: var(--muted); cursor: pointer; font-size: 13px; list-style-position: inside; }
.workbench-ui .folder-metadata summary code { margin-left: 8px; font: 12px ui-monospace, monospace; }
.workbench-ui .folder-metadata .entity-metadata { max-width: none; margin: 0; padding: 20px; border: 0; border-top: 1px solid var(--line); }
.workbench-ui .button { min-height: var(--workbench-control-height); padding: 10px 16px; border-radius: 8px; font-size: 14px; font-weight: 600; box-shadow: 0 2px 3px #142e3910; }
.workbench-ui .button:hover:not(:disabled) { filter: brightness(.94); }
.workbench-ui .button--secondary { background: var(--surface); border-color: var(--line); color: var(--ink); }
.workbench-ui .entity-header--folder .curator-actions > .button--secondary { border-color: var(--accent); background: var(--accent); color: #fff; }
.workbench-ui .entity-header--folder .curator-actions > .button--secondary::before { content: '+'; margin-right: 8px; font-size: 22px; line-height: 1; font-weight: 400; }
.workbench-ui .button--secondary:hover:not(:disabled) { background: var(--workbench-hover); border-color: var(--muted); filter: none; }
.workbench-ui .status-badge { width: max-content; max-width: 100%; padding: 3px 8px; border-radius: 4px; background: var(--workbench-warning-surface); color: var(--workbench-warning); font-size: 12px; font-weight: 600; }
.workbench-ui .skip-link { position: fixed; z-index: 100; top: 8px; left: 16px; transform: translateY(-160%); padding: 10px 16px; border-radius: var(--workbench-radius); background: var(--forest); color: white; }
.workbench-ui .skip-link:focus { transform: none; }

/* Lists use stable columns; the entire record remains a native link. */
.workbench-ui .folder-listing { padding: 0 24px 24px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); box-shadow: 0 4px 16px #1c314105; }
.workbench-ui .listing-heading { align-items: center; margin: 0; padding: 22px 0; gap: 16px; border-bottom: 1px solid var(--line); }
.workbench-ui .listing-heading > div { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.workbench-ui .listing-heading h2 { margin: 0; font-size: 20px; }
.workbench-ui .result-count { margin: 0; padding: 4px 10px; border: 1px solid #d5e5e8; border-radius: 20px; background: var(--workbench-selected); color: #245b63; font-size: 12px; font-variant-numeric: tabular-nums; }
.workbench-ui .view-switch { gap: 2px; padding: 4px; border: 0; border-radius: 8px; background: var(--paper); }
.workbench-ui .view-switch a { display: grid; min-height: 32px; padding: 5px 12px; place-items: center; border: 0; border-radius: 4px; font-size: 13px; }
.workbench-ui .view-switch a[aria-current=page] { background: var(--surface); color: var(--accent); box-shadow: 0 1px 4px #172c3b20; font-weight: 650; }
.workbench-ui .alphabet-filter { gap: 4px; margin: 0; padding: 18px 0; }
.workbench-ui .alphabet-filter a { display: inline-flex; gap: 6px; align-items: center; min-height: var(--workbench-control-height); padding: 6px 10px; border-color: transparent; border-radius: 4px; background: transparent; font-size: 13px; }
.workbench-ui .alphabet-filter a:hover { border-color: var(--line); background: var(--surface); }
.workbench-ui .alphabet-filter a[aria-current=page] { border-color: var(--accent); background: var(--accent); color: #fff; font-weight: 650; }
.workbench-ui .alphabet-filter small { opacity: 1; color: var(--muted); font-variant-numeric: tabular-nums; }
.workbench-ui .alphabet-filter a[aria-current=page] small { color: #d1eded; }
.workbench-ui .listing-active-filter { display: flex; align-items: center; gap: 8px; margin: 0 0 16px; font-size: 13px; }
.workbench-ui .listing-active-filter a { margin-left: 8px; color: var(--accent); text-underline-offset: 3px; }
.workbench-ui .listing-columns,
.workbench-ui .listing-list .record-row { display: grid; grid-template-columns: var(--workbench-columns); gap: 16px; align-items: center; padding: 12px 16px; }
.workbench-ui .listing-columns { border: 0; border-bottom: 1px solid #ccd9e1; border-radius: 8px 8px 0 0; background: #edf2f5; color: #526a7b; font-size: 12px; font-weight: 650; }
.workbench-ui .listing-list { overflow: hidden; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; background: var(--surface); }
.workbench-ui .listing-list .record-row { min-height: 68px; border-bottom-color: #e8edf0; font-size: 15px; transition: background-color 120ms ease; }
.workbench-ui .listing-list .record-row:nth-child(even) { background: #f8fafb; }
.workbench-ui .listing-list .record-row:last-child { border-bottom: 0; }
.workbench-ui .listing-list .record-row:hover { background: var(--workbench-hover); }
.workbench-ui .listing-list .record-row:focus-visible { position: relative; z-index: 1; outline-offset: -3px; }
.workbench-ui .listing-list .record-row > small { width: fit-content; max-width: 100%; padding: 4px 9px; border-radius: 6px; background: #edf2f7; color: #50687b; font-size: 12px; }
.workbench-ui .listing-list .record-row strong { color: var(--ink); font-weight: 650; }
.workbench-ui .listing-list .record-row > span:nth-child(2) small { margin-top: 3px; font-size: 12px; }
.workbench-ui .listing-identity { color: var(--muted); font: 12px/1.5 ui-monospace, monospace; font-variant-numeric: tabular-nums; }
.workbench-ui .listing-state { font-size: 12px; }
.workbench-ui .listing-state--published { display: inline-flex; align-items: center; gap: 6px; padding: 4px 9px; border-radius: 20px; background: #e9f4ef; color: #25654d; }
.workbench-ui .listing-state--published::before { content: ''; width: 5px; height: 5px; border-radius: 50%; background: currentColor; }
.workbench-ui .listing-cards { gap: 12px; }
.workbench-ui .listing-cards .section-card { min-width: 0; min-height: 180px; padding: 20px; border-radius: 10px; border-top: 3px solid #a6ccd0; }
.workbench-ui .listing-cards .section-card:hover { transform: none; background: var(--workbench-hover); border-color: var(--muted); }
.workbench-ui .listing-cards .section-card h3 { font-size: 19px; }
.workbench-ui .listing-cards .listing-identity { display: block; margin-top: 12px; }
.workbench-ui .listing-sort { flex-wrap: wrap; margin-block: 16px; font-size: 13px; }
.workbench-ui .listing-sort :is(select, button) { min-height: var(--workbench-control-height); border-radius: var(--workbench-radius); }
.workbench-ui .empty-state { padding: 32px; border-style: solid; border-radius: var(--workbench-radius); text-align: center; }
.workbench-ui :is(.pager, .folder-listing__status) { font-size: 13px; }
.workbench-ui .folder-listing__load-more { min-height: var(--workbench-control-height); border-radius: var(--workbench-radius); }

/* A source pane and an editor are peers; each has its own scroll region. */
.workbench-ui .relation-workspace-heading { align-items: center; padding: 28px 0; gap: 20px; }
.workbench-ui .relation-workspace-heading h1 { margin: 0; }
.workbench-ui .relation-workspace-heading > p { max-width: 330px; margin: 0; font-size: 13px; }
.workbench-ui .relation-workspace { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 24px; }
.workbench-ui .relation-workspace > .entity-explorer__column { display: block; height: max(420px, calc(100dvh - 256px)); min-height: 0; max-height: none; overflow: auto; padding: 24px; border-radius: 14px; background: var(--surface); scrollbar-gutter: stable; scroll-padding-block: 16px 80px; box-shadow: 0 4px 16px #1c314105; }
.workbench-ui .relation-workspace__tool-heading { padding: 24px; margin: -24px -24px 24px; border-bottom: 1px solid #cce1e4; background: #e6f1f3; }
.workbench-ui .relation-workspace__tool-heading h2 { margin: 0; color: #195b67; font-size: 22px; }
.workbench-ui .relation-workspace__tool-heading p { margin: 6px 0 0; font-size: 13px; }
.workbench-ui .workspace-tool-title { display: flex; align-items: center; gap: 12px; }
.workbench-ui .workspace-tool-title .workbench-symbol { width: 24px; height: 24px; color: var(--accent); }
.workbench-ui .relation-workspace__left .explorer-pane__header { margin: -24px -24px 0; padding: 24px; border: 0; background: #e9eef3; }
.workbench-ui .relation-workspace__left .explorer-pane__header .eyebrow { color: #42657b; }
.workbench-ui .explorer-pane__header h2 { font: 400 30px/1.2 Georgia, serif; }
.workbench-ui .explorer-pane__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; margin-top: 16px; font-size: 12px; }
.workbench-ui .explorer-pane__actions .button { min-height: 32px; font-size: 12px; }
.workbench-ui .explorer-pane__lead { margin-block: 20px; font-size: 15px; }
.workbench-ui .explorer-pane .entity-metadata { padding: 0; border: 0; border-radius: 0; }
.workbench-ui .explorer-pane .entity-metadata h2 { font-size: 16px; }
.workbench-ui .explorer-pane .entity-metadata__list > div { grid-template-columns: minmax(100px, .8fr) minmax(0, 1.2fr); gap: 12px; font-size: 13px; }
.workbench-ui .explorer-pane__relations { margin-top: 24px; }
.workbench-ui .explorer-pane__relations h3 { font-size: 16px; }
.workbench-ui .curator-form--workspace { gap: 20px; }
.workbench-ui .curator-form--workspace .editor-card { padding: 0 0 20px; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; }
.workbench-ui .curator-form--workspace .editor-card__heading { margin-bottom: 16px; }
.workbench-ui .curator-form--workspace .editor-card__heading h2 { padding-left: 10px; border-left: 3px solid #75adb4; font-size: 16px; }
.workbench-ui .curator-form--workspace .editor-card__heading p { font-size: 13px; }
.workbench-ui .curator-form--workspace .form-grid:has([data-relation-type]) > .form-field:nth-child(-n+2) { grid-column: auto; }
.workbench-ui .form-grid { gap: 16px; }
.workbench-ui .form-field { gap: 6px; font-size: 13px; font-weight: 600; }
.workbench-ui .form-field :is(input, select, textarea) { min-width: 0; min-height: var(--workbench-control-height); padding: 10px 12px; border-color: #b9c9d4; border-radius: 8px; background: #fbfcfd; font: 400 15px/1.5 system-ui, sans-serif; }
.workbench-ui .form-field :is(input, select, textarea):focus { border-color: var(--workbench-focus); outline: 2px solid var(--workbench-focus); outline-offset: 2px; }
.workbench-ui .form-field small { font-size: 12px; line-height: 1.5; }
.workbench-ui .relation-search__results { top: 70px; border-color: #b9c9d4; border-radius: 8px; box-shadow: 0 8px 24px #172c3b1a; }
.workbench-ui .relation-search__results button { min-height: var(--workbench-control-height); font-size: 13px; }
.workbench-ui .relation-search__results button:focus-visible { outline-offset: -3px; background: var(--workbench-selected); }
.workbench-ui .relation-workspace__form-actions { position: sticky; bottom: -24px; z-index: 3; flex-direction: row; align-items: center; gap: 8px; margin: 0 -24px -24px; padding: 16px 24px; border-top: 1px solid var(--line); background: #f6f9fb; }
.workbench-ui .relation-workspace__form-actions .button { width: auto; }
.workbench-ui .workspace-unsaved { margin-right: auto; color: var(--workbench-warning); font-size: 12px; }
.workbench-ui .workspace-unsaved::before { content: ''; display: inline-block; width: 6px; height: 6px; margin-right: 6px; border-radius: 50%; background: currentColor; }
.workbench-ui .relation-workspace__completion > .relation-workspace__form-actions { flex-wrap: wrap; }

/* Entity cards continue the list's visual system, with room for reading sources. */
.workbench-ui .entity-detail .entity-header__actions { align-items: flex-start; }
.workbench-ui .entity-detail .entity-header__actions > .workbench-heading-title { flex: 1; }
.workbench-ui .entity-detail .entity-header__actions > .curator-actions { max-width: 440px; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.workbench-ui .entity-detail .entity-header .button--danger { border-color: #e7c4c7; background: var(--surface); color: #94363f; box-shadow: none; }
.workbench-ui .entity-detail__identity { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; padding-left: 78px; margin-top: 16px; font-size: 12px; }
.workbench-ui .entity-detail__identity code { color: var(--muted); font: 13px ui-monospace, monospace; }
.workbench-ui .entity-detail .entity-chronology { margin-left: 78px; font: 500 15px/1.5 system-ui, sans-serif; }
.workbench-ui .entity-detail__overview { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(300px, .9fr); gap: 24px; align-items: start; }
.workbench-ui .entity-detail__overview > * { min-width: 0; }
.workbench-ui .entity-detail__content,
.workbench-ui .entity-detail__metadata > .entity-metadata,
.workbench-ui .entity-detail__section { padding: 24px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); box-shadow: 0 4px 16px #1c314105; }
.workbench-ui .entity-detail__panel-title,
.workbench-ui .entity-detail__metadata .entity-metadata h2 { margin: 0 0 20px; padding-bottom: 16px; border-bottom: 1px solid var(--line); font-size: 18px; }
.workbench-ui .entity-detail__content .lead { max-width: none; margin: 0 0 24px; padding: 0; color: var(--ink); font-size: 18px; line-height: 1.65; }
.workbench-ui .entity-detail__content .prose { max-width: 72ch; color: var(--ink); font: 18px/1.8 Georgia, serif; overflow-wrap: anywhere; }
.workbench-ui .entity-detail__content .gallery { margin-bottom: 24px; }
.workbench-ui .entity-detail__content .gallery__open { overflow: hidden; border-radius: 8px; }
.workbench-ui .entity-detail__content .gallery figcaption { padding-top: 8px; color: var(--muted); line-height: 1.5; }
.workbench-ui .entity-detail__metadata .entity-metadata { max-width: none; margin: 0; }
.workbench-ui .entity-detail__metadata .entity-metadata__list > div { grid-template-columns: minmax(104px, .8fr) minmax(0, 1.2fr); gap: 16px; padding-block: 12px; font-size: 14px; }
.workbench-ui .entity-detail__metadata .entity-metadata__list code { font-size: 12px; }
.workbench-ui .entity-detail__metadata .entity-metadata h3 { padding-left: 10px; border-left: 3px solid #75adb4; font-size: 15px; }
.workbench-ui .entity-detail__metadata .entity-metadata__source p { font-size: 14px; line-height: 1.7; overflow-wrap: anywhere; }
.workbench-ui .entity-detail__metadata .entity-metadata__links { gap: 12px; font-size: 13px; }
.workbench-ui .entity-detail__section { margin-top: 24px; }
.workbench-ui .entity-detail__section > h2 { margin: 0 0 20px; font-size: 20px; }
.workbench-ui .entity-detail__section .heading-row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
.workbench-ui .entity-detail__section .heading-row h2 { margin: 0; font-size: 20px; }
.workbench-ui .entity-detail__section .curator-actions { flex-wrap: wrap; gap: 12px; }
.workbench-ui .entity-detail__section .heading-row .curator-actions > a:not(.button) { display: inline-flex; align-items: center; min-height: 44px; color: var(--accent); font-size: 13px; text-underline-offset: 3px; }
.workbench-ui .entity-detail__section .record-list { border: 0; }
.workbench-ui .entity-detail__section .record-row { grid-template-columns: minmax(0, 1fr) auto; padding: 16px; border-top: 1px solid var(--line); border-bottom: 0; border-radius: 6px; font-size: 15px; overflow-wrap: anywhere; }
.workbench-ui .entity-detail__section .record-row small { display: block; margin-top: 4px; color: var(--muted); font-size: 13px; }
.workbench-ui .entity-detail__section .relation-row { grid-template-columns: minmax(120px, .7fr) minmax(0, 1.3fr) auto; padding: 16px; border-top: 1px solid var(--line); border-bottom: 0; gap: 16px; }
.workbench-ui .entity-detail__section .relation-row:nth-child(odd) { background: #f8fafb; }
.workbench-ui .entity-detail__section .relation-row__type { color: var(--muted); font-size: 13px; }
.workbench-ui .entity-detail__section .relation-row__entity { font-size: 15px; overflow-wrap: anywhere; }
.workbench-ui .entity-detail__section .relation-row__edit { padding: 8px 12px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); font-size: 13px; text-decoration: none; }

@media (min-width: 801px) {
    .workbench-ui .shell.sidebar-collapsed { grid-template-columns: 80px minmax(0, 1fr); }
    .workbench-ui .shell.sidebar-collapsed .sidebar { padding-inline: 12px; }
    .workbench-ui .shell.sidebar-collapsed .sidebar nav,
    .workbench-ui .shell.sidebar-collapsed .sidebar__toggle span { display: none; }
}

@media (max-width: 1200px) {
    .workbench-ui { --workbench-columns: 80px minmax(0, 1fr) 90px 110px; --workbench-sidebar-width: 208px; }
    .workbench-ui .content { padding-inline: 24px; }
    .workbench-ui .shell.sidebar-collapsed { grid-template-columns: 80px minmax(0, 1fr); }
    .workbench-ui .topbar__user { gap: 10px; }
    .workbench-ui .topbar__user > span { display: none; }
    .workbench-ui .quick-search__trigger { min-width: 130px; }
    .workbench-ui .relation-workspace-heading > p { max-width: 260px; }
}

@media (max-width: 1100px) {
    .workbench-ui .entity-detail__overview { grid-template-columns: minmax(0, 1fr); }
    .workbench-ui .entity-detail .entity-header__actions { flex-direction: column; }
    .workbench-ui .entity-detail .entity-header__actions > .curator-actions { max-width: none; justify-content: flex-start; }
    /* Stack before either form or source becomes too narrow, keeping context visible. */
    .workbench-ui .relation-workspace { display: block; }
    .workbench-ui .relation-workspace > .relation-workspace__left { height: auto; max-height: 240px; margin-bottom: 16px; }
    .workbench-ui .relation-workspace > .relation-workspace__right { height: auto; overflow: visible; }
    .workbench-ui .relation-workspace__form-actions { position: static; }
    .workbench-ui .relation-workspace-heading { display: block; }
    .workbench-ui .relation-workspace-heading > p { max-width: none; margin-top: 8px; }
}

@media (max-width: 800px) {
    .workbench-ui .shell { display: block; }
    .workbench-ui .topbar { display: flex; padding-inline: 16px; background: var(--workbench-nav); }
    .workbench-ui .brand { padding: 0; background: transparent; }
    .workbench-ui .topbar__user { padding: 0; }
    .workbench-ui .topbar__user > a,
    .workbench-ui .topbar__user > form button { color: var(--workbench-nav-text); }
    .workbench-ui .sidebar { padding: 8px 16px; }
    .workbench-ui .sidebar__toggle { margin-bottom: 0; }
    .workbench-ui .sidebar nav { gap: 20px; padding-block: 8px; }
    .workbench-ui .nav-group { min-width: 150px; margin: 0; }
    .workbench-ui .content { padding: 20px 16px 32px; }
    .workbench-ui .entity-header__actions { align-items: flex-start; }
    .workbench-ui .curator-actions { flex-direction: row; flex-wrap: wrap; }
    .workbench-ui .listing-columns { display: none; }
    .workbench-ui .listing-list { border-top: 1px solid var(--line); border-radius: 0; }
    .workbench-ui .listing-list .record-row { grid-template-columns: minmax(0, 1fr) auto; gap: 4px 12px; padding: 12px; }
    .workbench-ui .listing-list .record-row > small { grid-column: 1; grid-row: 1; }
    .workbench-ui .listing-list .record-row > span:nth-child(2) { grid-column: 1 / -1; grid-row: 2; }
    .workbench-ui .listing-list .listing-identity { grid-column: 2; grid-row: 1; }
    .workbench-ui .listing-list .listing-state { grid-column: 1 / -1; grid-row: 3; margin-top: 4px; }
}

@media (max-width: 600px) {
    .workbench-ui { --workbench-control-height: var(--ovp-control-height); }
    .workbench-ui .topbar__user { gap: 8px; }
    .workbench-ui .topbar .quick-search { display: block; }
    .workbench-ui .brand { gap: 8px; }
    .workbench-ui .brand small { letter-spacing: .06em; }
    .workbench-ui .quick-search__trigger { min-width: 44px; min-height: 44px; }
    .workbench-ui .listing-heading { align-items: flex-start; flex-wrap: wrap; }
    .workbench-ui .listing-heading > div { width: 100%; }
    .workbench-ui .view-switch { width: 100%; }
    .workbench-ui .view-switch a { flex: 1; min-height: 38px; }
    .workbench-ui .folder-listing { padding: 0 16px 16px; }
    .workbench-ui .listing-heading { padding-block: 16px; }
    .workbench-ui .alphabet-filter a { min-height: 44px; }
    .workbench-ui .listing-sort select { max-width: 100%; }
    .workbench-ui .entity-header h1 { font-size: 32px; }
    .workbench-ui .workbench-heading-title { gap: 12px; }
    .workbench-ui .workbench-heading-icon { width: 48px; height: 48px; flex-basis: 48px; border-radius: 12px; }
    .workbench-ui .relation-workspace > .entity-explorer__column { padding: 16px; }
    .workbench-ui .relation-workspace__tool-heading { margin: -16px -16px 20px; padding: 20px 16px; }
    .workbench-ui .relation-workspace__left .explorer-pane__header { margin: -16px -16px 0; padding: 20px 16px; }
    .workbench-ui .relation-workspace__form-actions { flex-wrap: wrap; margin: 0 -16px -16px; padding: 12px 16px; }
    .workbench-ui .relation-workspace__form-actions .button { flex: 1 1 100%; }
    .workbench-ui .workspace-unsaved { flex-basis: 100%; }
    .workbench-ui .explorer-pane .entity-metadata__list > div { grid-template-columns: 1fr; gap: 4px; }
    .workbench-ui .form-field :is(input, select, textarea) { font-size: 16px; }
    .workbench-ui .entity-detail__identity { padding-left: 60px; }
    .workbench-ui .entity-detail .entity-chronology { margin-left: 60px; }
    .workbench-ui .entity-detail__content,
    .workbench-ui .entity-detail__metadata > .entity-metadata,
    .workbench-ui .entity-detail__section { padding: 20px 16px; }
    .workbench-ui .entity-detail__metadata .entity-metadata__list > div { grid-template-columns: minmax(0, 1fr); gap: 4px; }
    .workbench-ui .entity-detail__section .relation-row { grid-template-columns: minmax(0, 1fr) auto; padding: 16px 8px; gap: 8px; }
    .workbench-ui .entity-detail__section .relation-row__type { grid-column: 1 / -1; }
    .workbench-ui .entity-detail__section .relation-row__edit { grid-column: 2; }
}

@media (prefers-reduced-motion: reduce) {
    .workbench-ui *, .workbench-ui *::before, .workbench-ui *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}
