/* Shelf: a compact project bar and open capture gallery, using the product palette. */
.desk-page { --desk-inset:var(--site-gutter); background:var(--panel); color:var(--ink) }
.desk-icon { display:inline-grid; place-items:center; flex:none; width:2.75rem; height:2.75rem; border-radius:50%; color:var(--ink-2) }
.desk-icon:hover { background:var(--panel-2); color:var(--ink) }
.desk-icon svg { width:1.25rem; height:1.25rem }
.desk-page .workspace-layout { display:block; max-width:var(--site-max); padding:1.75rem var(--desk-inset) 3.5rem; min-height:calc(100dvh - 4rem) }
.desk-page .hm-main { min-width:0; padding:0; background:transparent }
.desk-heading { position:relative; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1rem 1.5rem; min-height:7rem; padding:0 0 1rem; margin:0 0 1.5rem }
.desk-project-title { display:flex; flex:1 1 20rem; align-items:center; min-width:0; gap:.5rem }
.desk-heading h1 > a { color:inherit; text-decoration:none }
.desk-heading h1 > a:hover { text-decoration:underline; text-underline-offset:.15em }
.desk-page .desk-heading .desk-settings { width:2.5rem; height:2.5rem; padding:0; background:transparent; color:var(--ink-2) }
.desk-page .desk-settings[aria-current] { background:var(--panel-2); color:var(--ink) }
.desk-drafts-section { margin-top:3.5rem; scroll-margin-top:1.5rem }
.desk-drafts-section > h2 { margin:0 0 1rem; font:550 1.125rem/1.5 var(--sans); letter-spacing:-.03em }
.draft-pagination { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:.75rem 1.5rem; padding:.875rem 1rem; border-top:.0625rem solid var(--line); color:var(--ink-2); font-size:var(--t-meta) }
.draft-pagination > div { display:flex; align-items:center; gap:.75rem }
.draft-pagination [aria-disabled] { opacity:.4 }
.draft-page-current { font-variant-numeric:tabular-nums; white-space:nowrap }
.desk-heading h1 { min-width:0; margin:0; font:400 clamp(2rem,3vw,2.75rem)/1.15 Georgia,'Times New Roman',serif; letter-spacing:-.05em; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.desk-title-actions { display:flex; align-items:center; gap:.5rem; margin-left:auto }
.desk-title-actions .desk-primary { min-height:2.375rem; padding:.5rem .875rem; gap:.375rem; font-size:var(--t-body-2) }
.desk-viewbar { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-start; gap:1.5rem; margin:0 0 2rem }
.desk-tabs { display:flex; flex:none; flex-wrap:nowrap; gap:.125rem; margin:0; padding:.25rem; border:0; border-radius:.75rem; background:var(--panel-2) }
.desk-tabs a { display:inline-flex; align-items:center; justify-content:center; min-height:2.25rem; padding:.5rem 1rem; border-radius:.5rem; color:var(--ink-2); background:transparent; text-decoration:none; font:600 var(--t-body-2)/1.5 var(--sans); white-space:nowrap }
.desk-tabs a[aria-current] { color:var(--ink); background:var(--panel); font-weight:600 }
.desk-tabs a:hover { color:var(--ink) }
.desk-page [data-home-pending] { cursor:progress; opacity:.6 }
.desk-page a:hover { text-decoration:none }
.desk-page :is(a,button,input,summary):focus-visible { outline:.125rem solid var(--accent); outline-offset:.1875rem }
.desk-page .desk-button { display:inline-flex; flex:none; align-items:center; justify-content:center; gap:.375rem; min-height:2.375rem; padding:.5rem .875rem; border:0; border-radius:.5rem; background:var(--panel-2); color:var(--ink); font:500 var(--t-body-2)/1.4 var(--sans); text-decoration:none; cursor:pointer }
.desk-page .desk-button:hover { background:var(--well) }
.desk-button svg { width:1.0625rem; height:1.0625rem; flex:none }
.desk-page .desk-primary { min-height:2.5rem; padding:.625rem 1rem; gap:.75rem; background:var(--accent); color:var(--panel); white-space:nowrap }
.desk-page .desk-primary:hover { background:var(--accent); filter:brightness(.9) }
.desk-canvas { padding:.75rem 0; background:transparent }
.desk-flows { display:grid; gap:3rem }
.desk-flow { min-width:0 }
.desk-flow-heading { display:flex; flex-wrap:wrap; align-items:center; gap:.5rem .875rem; margin-bottom:1.5625rem }
.desk-flow-heading h2 { font:500 1.125rem/1.5 var(--sans); letter-spacing:-.03em; margin:0 }
.desk-flow-heading > span { margin-left:auto; color:var(--ink-3); font-size:var(--t-meta) }
.desk-page .desk-flow-heading .desk-button { padding-right:0; background:transparent; color:var(--ink-2); font-size:var(--t-meta) }
.desk-page .desk-flow-heading .desk-button:hover { color:var(--ink) }
.desk-screens { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.875rem; align-items:start }
.desk-screen { display:flex; flex-direction:column; gap:.9375rem; min-width:0; color:var(--ink) }
.desk-screen-name { order:1; margin-left:.1875rem; font-size:var(--t-body); font-weight:550 }
.desk-shot { display:grid; position:relative; overflow:hidden; width:100%; aspect-ratio:4/3; border:0; border-radius:.3125rem; background:var(--panel); box-shadow:var(--shadow); transition:transform 150ms ease }
.desk-shot > img { width:100%; height:100%; object-fit:cover; object-position:top; position:absolute; inset:0; z-index:1 }
.desk-shot > span { align-self:center; text-align:center; padding:1rem; color:var(--ink-3); font-size:var(--t-meta) }
.desk-shot:has(> img:not([hidden])) > span { display:none }
.desk-screen .desk-shot { aspect-ratio:auto; min-height:11.25rem; padding:1rem; border-radius:.1875rem }
.desk-screen .desk-shot > img { position:relative; height:auto; object-fit:contain; box-shadow:0 0 0 .0625rem var(--panel-2) }
.desk-screen:hover .desk-shot { transform:translateY(-.125rem) }
.desk-empty { padding: 4.5rem 1.5rem; text-align: center; background: var(--panel-2); border-radius: 1.125rem; min-height: 18.75rem }
.desk-empty > strong { font-size: var(--t-title); font-weight: 600 }
.desk-empty p { color: var(--ink-2); margin: 0.75rem auto 1.5rem; max-width: 52ch }
.desk-empty .desk-button + .desk-button { margin-left: 0.5rem }
.desk-empty[hidden] { display: none }
.desk-list-page { padding: 0; background: transparent }
.desk-list-tools { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; margin-bottom: 1.5rem }
.desk-list-tools nav { display: flex; gap: 0.25rem }
.desk-list-tools nav a { display: inline-flex; align-items: center; padding: 0.5rem 0.75rem; min-height: 2.375rem; color: var(--ink-2); border: 0; border-radius: 0.5rem; font-size: var(--t-body-2) }
.desk-list-tools nav a[aria-current] { color: var(--ink); background: var(--panel-2); font-weight: 600 }
.desk-list-tools form { display: flex; gap: 0.5rem; margin-left: auto; max-width: 100% }
.desk-list-tools input[type=search] { width: 14.375rem; min-width: 0; min-height: 2.375rem; border: 0; border-radius: 0.5625rem; padding: 0.5rem 0.75rem; background: var(--panel-2); color: var(--ink); font: var(--t-body-2)/1.4 var(--sans) }
.desk-files { display: grid; gap: 0.375rem; list-style: none; padding: 0; margin: 0; border: 0 }
.desk-files li { border: 0 }
.desk-file { display: flex; align-items: center; gap: 1.375rem; min-height: 6.75rem; padding: 1rem; color: var(--ink); border-radius: 0.75rem }
.desk-file:hover { background: var(--panel-2) }
.desk-file .desk-shot { width: 5.5rem; height: 4.25rem; flex: none; box-shadow: none; background: var(--panel-2) }
.desk-file .desk-shot > span { font-size: var(--t-meta); padding: 0.25rem }
.desk-file-copy { display: grid; gap: 0.4375rem; min-width: 0; flex: 1 }
.desk-file-copy strong { font-size: var(--t-body); font-weight: 600; overflow-wrap: anywhere }
.desk-file-copy > span, .desk-file time, .desk-viewed { font-size: var(--t-meta); color: var(--ink-3) }
.desk-file-action { font-size: var(--t-body-2); white-space: nowrap; color: var(--ink-2) }
.desk-status { font-size: var(--t-meta); color: var(--ink-2) }
.desk-status[data-state=review] { color: var(--new) }
.desk-status[data-state=blocked] { color: var(--crit) }
.desk-description, .desk-footnote { color: var(--ink-3); font-size: var(--t-body-2); margin: 0 0 1.25rem }
.desk-footnote { margin-top: 1.5rem; font-size: var(--t-meta) }
.desk-gate { display: grid; place-items: start center; padding-block: 4rem; min-height: 30rem }
.desk-signin { width: min(100%, 26.25rem); padding: 2.25rem; background: var(--panel); border: 0; border-radius: 1rem }
.desk-lock { display: grid; place-items: center; width: 2.5rem; height: 2.5rem; background: var(--panel-2); border: 0; border-radius: 0.75rem; margin-bottom: 1.5rem }
.desk-lock svg { width: 1.375rem; height: 1.375rem }
.desk-signin h2 { margin: 0 0 0.75rem; font-size: 1.375rem; letter-spacing: -.025em }
.desk-signin p { color: var(--ink-2); margin: 0 0 1.75rem; line-height: 1.7 }
.desk-signin > a:last-child { display: block; margin-top: 1.25rem; color: var(--ink-2); font-size: var(--t-body-2) }
.desk-loading { padding: 1.5rem 0; color: var(--ink-2); min-height: 20rem }
.desk-skeleton { visibility: hidden; display: flex; gap: 1.5rem; margin-top: 1.25rem; overflow: hidden }
.desk-skeleton i { flex: 1; height: 13.75rem; background: var(--panel-2); border-radius: 0.75rem }
.home-show-skeleton .desk-skeleton { visibility: visible }
.desk-loading > span, .desk-page .hm-home-projects-pending > span { visibility: hidden }
.home-show-skeleton .desk-loading > span, .desk-page:has(.home-show-skeleton) .hm-home-projects-pending > span { visibility: visible }
#home-data[data-state=error] .desk-loading { display: none }
.desk-sr { position: absolute; width: 0.0625rem; height: 0.0625rem; overflow: hidden; clip-path: inset(50%); white-space: nowrap }
@media(max-width:68.75rem) {
  .desk-screens { gap:.875rem }
  .desk-file { gap:1rem }
  .desk-file-action { display:none }
}
@media(max-width:48rem) {
  .desk-page .workspace-layout { padding-top:1.625rem }
  .desk-heading { min-height:0; padding:.5rem 0; margin-bottom:1.5rem }
  .desk-project-title { flex-basis:100% }
  .desk-heading h1 { font-size:2rem }
  .desk-title-actions { width:100%; margin-left:0; gap:.375rem }
  .desk-page .desk-title-actions .desk-button { min-height:2.75rem; padding:.5rem .625rem; font-size:var(--t-meta) }
  .desk-page .desk-title-actions .desk-settings { width:2.75rem; padding:0; margin-left:auto }
  .desk-viewbar { gap:.75rem; margin-bottom:1.75rem }
  .desk-tabs a { padding:.5rem .625rem }
  .desk-page .desk-viewbar .desk-primary { min-height:2.75rem; padding:.625rem .75rem; gap:.375rem; font-size:var(--t-meta) }
  .desk-canvas { padding:.625rem 0 }
  .desk-screens { grid-template-columns:minmax(0,1fr); gap:1.625rem }
  .desk-screen .desk-shot { min-height:9.375rem }
  .desk-flow-heading { gap:.625rem; margin-bottom:1.25rem }
  .desk-flow-heading h2 { width:100%; font-size:1.0625rem }
  .desk-flow-heading > span { margin-left:0 }
  .desk-page .desk-flow-heading .desk-button { margin-left:auto; min-height:2rem; padding-block:.25rem }
  .desk-page .desk-button { min-height:2.625rem }
  .desk-list-tools { gap:.75rem }
  .desk-list-tools form { width:100%; margin:0 }
  .desk-list-tools input[type=search] { width:100% }
  .desk-list-tools nav a { min-height:2.625rem }
  .desk-file { display:grid; grid-template-columns:3.75rem minmax(0,1fr); padding:1rem 0; gap:.5rem .875rem }
  .desk-file .desk-shot { width:3.75rem; height:3.75rem; grid-row:span 2 }
  .desk-file time,.desk-viewed,.desk-status { grid-column:2 }
  .desk-file time { display:none }
  .desk-gate { padding:1.5rem 1rem; min-height:23.75rem }
  .desk-signin { padding:1.5rem }
  .desk-empty { padding:3rem 1.25rem }
}
@media(prefers-reduced-motion:reduce) {
  .desk-shot { transition:none }
  .desk-screen:hover .desk-shot { transform:none }
}

/* The same header inset and content origin on home, records and settings. */
.desk-page :is(.shelf-main,.ps-main) { max-width:var(--site-max); padding:1.75rem var(--desk-inset) 3.5rem }
.shelf-section-head { display:flex; flex-wrap:wrap; align-items:center; gap:.75rem; margin:0 0 1.5rem }
.shelf-section-head h2 { margin:0; font:500 var(--t-title)/1.5 var(--sans) }
.shelf-section-head p { width:100%; margin:0; color:var(--ink-2) }
.desk-tabs { max-width:100%; overflow-x:auto }
@media(max-width:48rem) {
  .desk-page :is(.shelf-main,.ps-main) { padding-top:1.625rem }
}

/* Keep the site strip aligned with the shared project content at every breakpoint. */
.public-page.desk-page { --desk-inset:var(--site-gutter) }

.shelf-version-record { color:var(--ink-2); font-size:var(--t-body-2); text-decoration:underline; text-underline-offset:.1875rem }
.desk-page .shelf-version-record:hover { text-decoration:underline; color:var(--ink) }

/* One content rhythm for galleries, file lists, records and settings. */
.desk-content { min-width:0; font-size:var(--t-body) }
.desk-content .desk-canvas { padding:0 }
.desk-content :is(.desk-list-tools,.desk-flow-heading) { display:flex; flex-wrap:wrap; align-items:center; gap:.75rem 1rem; min-height:2.375rem; margin:0 0 1.5rem }
.desk-toolbar-context,.desk-toolbar-actions { display:flex; flex-wrap:wrap; align-items:center; gap:.5rem; min-width:0 }
.desk-toolbar-actions { margin-left:auto }
.desk-toolbar-label { font:500 var(--t-body-2)/1.5 var(--sans); color:var(--ink-2) }
.desk-content :is(.hm-how-h,.ps-section-head h2) { font:500 var(--t-body-2)/1.5 var(--sans); letter-spacing:normal }
.desk-content .hm-how-h { margin:1.5rem 0 .75rem; color:var(--ink-2) }
.desk-content .hm-list-page { max-width:none; width:100%; margin:0; padding:0 }
.desk-content .hm-list { margin:0; border:0; background:transparent }
.desk-content :is(.desk-file,.hm-row) { display:flex; align-items:center; gap:1.375rem; min-height:6.75rem; padding:1rem; border:0; border-radius:.75rem }
.desk-content :is(.desk-file,.hm-row):hover { background:var(--panel-2) }
.desk-content :is(.desk-file-copy strong,.hm-row-main > b) { font:550 var(--t-body)/1.5 var(--sans); white-space:normal }
.desk-content :is(.hm-row-meta,.hm-row-snippet,.hm-row-when,.desk-file-copy > span,.desk-file time) { font:400 var(--t-meta)/1.5 var(--sans); color:var(--ink-3); white-space:normal }
.desk-content .hm-row-main { gap:.25rem }
.desk-content .hm-row-thumb { width:5rem; height:4rem; aspect-ratio:auto; border-radius:.25rem }
.desk-content :is(.hm-fbtn,.desk-list-tools nav a,.ps-small,.ps-primary,.ps-canvas) { display:inline-flex; align-items:center; justify-content:center; min-height:2.375rem; padding:.5rem .75rem; border:0; border-radius:.5rem; background:transparent; font:500 var(--t-body-2)/1.4 var(--sans); color:var(--ink-2) }
.desk-content :is(.hm-fbtn[aria-pressed="true"],.desk-list-tools nav a[aria-current],.ps-small,.ps-canvas) { background:var(--panel-2); color:var(--ink) }
.desk-content .ps-primary { background:var(--accent); color:var(--panel) }
.desk-content .hm-menu summary { min-height:2.375rem; padding:.5rem .75rem }
.desk-content :is(.hm-filter-form,.desk-list-tools form) { display:flex; align-items:center; gap:.5rem; margin:0; max-width:100% }
.desk-content :is(.hm-filter-form,.desk-list-tools) input[type=search] { width:14.375rem; height:auto; min-height:2.375rem; padding:.5rem .75rem; border:0; border-radius:.5625rem; background:var(--panel-2); color:var(--ink); font:400 var(--t-body-2)/1.4 var(--sans) }
.desk-content input[type=search]:focus-visible { outline:.125rem solid var(--accent); outline-offset:.1875rem }
.desk-content :is(.desk-empty,.hm-empty) { min-height:0; padding:2rem 1.5rem; margin:0; border:0; border-radius:.75rem; background:var(--panel-2); text-align:center; color:var(--ink-2); font:400 var(--t-body-2)/1.6 var(--sans) }
.desk-content .desk-empty p { margin:.75rem auto 1rem }
.desk-content .ps-notice { margin:0 0 1.5rem; padding:.75rem 1rem; border:0; border-radius:.5rem; font:400 var(--t-body-2)/1.5 var(--sans) }
.desk-content .ps-section { padding:0; margin:0 0 2rem }
.desk-content .ps-section-head { margin:0 0 1rem }
.desk-content .ps-role { margin:0; vertical-align:baseline }
.desk-content :is(.ps-member-controls select,.ps-form-row input) { min-height:2.375rem; border:0; border-radius:.5rem; background:var(--panel-2) }
.shelf-version-record::after { content:"→"; display:inline-block; margin-left:.3em; text-decoration:none }
@media(max-width:48rem) {
  .desk-content .desk-toolbar-actions { width:100%; margin:0; justify-content:space-between }
  .desk-content :is(.hm-filter-form,.desk-list-tools form) { width:100%; margin:0 }
  .desk-content :is(.hm-filter-form,.desk-list-tools) input[type=search] { width:100%; min-width:0 }
  .desk-content :is(.desk-file,.hm-row) { gap:.5rem .875rem; padding:1rem 0; min-height:5.75rem }
  .desk-content .hm-row { flex-wrap:nowrap }
  .desk-content .hm-row-thumb { width:3.75rem; height:3.75rem }
  .desk-content .hm-row-when { margin-left:auto }
  .desk-content .desk-file { display:grid; grid-template-columns:3.75rem minmax(0,1fr) }
}

.hm-chip-pr { display:inline-flex; align-items:center; gap:.3rem }
.hm-chip-pr svg { width:.875rem; height:.875rem; flex:none }
.desk-row-actions { display:flex; align-items:flex-end; flex-direction:column; gap:.5rem }
.desk-external-work { position:relative; font:400 var(--t-meta)/1.5 var(--sans) }
.desk-external-work summary { padding:.25rem 0; min-height:0; font-weight:500; color:var(--ink-2) }
.desk-gate-body { position:absolute; right:0; z-index:5; width:min(25rem,calc(100vw - 3rem)); padding:1rem; background:var(--panel); border-radius:.75rem; box-shadow:var(--shadow) }
.desk-gate-body p { margin:0 0 .75rem }
.desk-gate-body form { display:grid; gap:.75rem }
.desk-gate-body :is(textarea,input:not([type=checkbox])) { width:100%; min-width:0; padding:.5rem .75rem; border:0; border-radius:.5rem; background:var(--panel-2); font:400 var(--t-body-2)/1.5 var(--sans); color:var(--ink) }
.desk-gate-body label { display:flex; align-items:flex-start; gap:.5rem }
.desk-gate-actions { display:flex; flex-wrap:wrap; gap:.5rem }
.desk-gate-body .desk-gate-message { margin:.75rem 0 0; color:var(--ink-2) }
@media(max-width:48rem) { .desk-row-actions { max-width:8rem } }

/* Drafts owns its controls and table; record lists keep their shared layout. */
.desk-content .draft-card { border:1px solid var(--line); border-radius:.75rem; background:var(--panel); min-width:0 }
.desk-content .draft-card .desk-list-tools { padding:.875rem 1rem; margin:0; gap:.5rem 1rem }
.draft-card .desk-toolbar-context { flex:0 1 auto }
.draft-card .desk-toolbar-actions { gap:.5rem; flex:1 1 15rem; justify-content:flex-end }
.desk-content .draft-card :is(.hm-fbtn,.hm-menu summary,.desk-button) { min-height:2rem; padding:.375rem .5rem }
.desk-content .draft-card input[type=search] { width:12rem; min-height:2rem; padding:.375rem .625rem }
.draft-table { width:100%; table-layout:fixed; border-collapse:collapse; font:400 var(--t-body-2)/1.5 var(--sans) }
.draft-table th { text-align:left; color:var(--ink-2); font-weight:500 }
.draft-table thead th { padding:.5rem 1rem; border-block:1px solid var(--line); font-size:var(--t-meta) }
.draft-table thead th:nth-child(1) { width:34% }
.draft-table thead th:nth-child(2) { width:14% }
.draft-table thead th:nth-child(3) { width:12% }
.draft-table thead th:nth-child(4) { width:16% }
.draft-table thead th:nth-child(5) { width:14% }
.draft-table thead th:nth-child(6) { width:10% }
.desk-content .draft-card .hm-row { display:table-row; min-height:0; padding:0; border-radius:0 }
.draft-table td { padding:.75rem 1rem; vertical-align:top; overflow-wrap:anywhere }
.desk-content .draft-card td[colspan] .hm-empty { max-width:none; background:transparent }
.desk-content .draft-card .draft-group th { padding:.5rem 1rem; background:var(--panel-2) }
.desk-content .draft-card .hm-how-h { margin:0; font-size:var(--t-meta) }
.draft-title .hm-row-main { display:block; min-width:0 }
.draft-title .hm-row-meta { display:block; margin-top:.2rem }
.desk-content .draft-card .hm-row-thumb { float:left; width:2.75rem; height:2.75rem; margin-right:.75rem }
.draft-origin,.draft-state { display:flex; flex-wrap:wrap; align-items:center; gap:.25rem .5rem; min-width:0; font-size:var(--t-meta) }
.draft-card :is(.hm-chip,.hm-vis,.hm-latest) { margin:0; font-size:var(--t-meta) }
.draft-origin .hm-chip { background:transparent; padding:0; border:0 }
.draft-state .desk-external-work { flex-basis:100% }
.draft-card :is(a,summary,button,input):focus-visible { outline:2px solid var(--accent); outline-offset:2px }
.draft-sr { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap }
@media(max-width:48rem) {
  .draft-card .desk-toolbar-context { flex-basis:auto; gap:.25rem }
  .draft-card .desk-toolbar-actions { width:auto; flex:1 1 12rem; align-items:stretch }
  .desk-content .draft-card .hm-filter-form { width:100% }
  .desk-content .draft-card input[type=search] { width:100%; min-width:0 }
  .draft-table thead { display:block; position:static; width:100%; height:auto; overflow:visible; clip-path:none }
  .draft-table thead tr { display:flex; flex-wrap:wrap; align-items:flex-start; border-block:1px solid var(--line) }
  .draft-table thead th { display:block; width:auto; flex:1 1 9rem; min-width:0; padding:.5rem 1rem; border:0 }
  .draft-table thead th.draft-column-label { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%) }
  .draft-table thead .hm-menu-list { position:static; width:100%; min-width:0; margin-top:.5rem }
  .draft-table,.draft-table tbody { display:block; width:100% }
  .desk-content .draft-card .hm-row { display:grid; grid-template-columns:minmax(0,1fr); gap:.375rem; padding:.75rem 1rem; min-width:0 }
  .draft-table td { display:block; padding:0; min-width:0 }
  .draft-table td:not(.draft-title)::before { content:attr(data-label); display:inline-block; min-width:5.25rem; color:var(--ink-2); font-size:var(--t-meta) }
  .draft-table td:not(.draft-title) { display:flex; align-items:baseline; gap:.5rem }
  .draft-table td[colspan] { display:block; padding:1rem }
  .draft-table td[colspan]::before { content:none }
  .draft-table .draft-group { display:block }
  .draft-table .draft-group th { display:block }
  .draft-origin,.draft-state { flex:1; min-width:0 }
  .draft-card .desk-gate-body { position:static; width:100%; margin:.5rem 0; border:1px solid var(--line); box-shadow:none }
  .draft-card .hm-row-when { margin:0 }
}

.draft-status-tabs { display:flex; flex-wrap:wrap; gap:.25rem; padding:0 }
.desk-content .draft-card .draft-status-tabs a { min-height:2rem; padding:.375rem .625rem }

.draft-table thead .hm-menu { position:relative; font-weight:400 }
.desk-content .draft-table thead .hm-fbtn { justify-content:flex-start; padding:.25rem 0; text-align:left; overflow-wrap:anywhere }
.draft-table thead .hm-menu-list { max-width:calc(100vw - 4rem); white-space:normal }
.draft-table thead .hm-menu-list a { white-space:normal; overflow-wrap:anywhere; justify-content:flex-start; text-align:left }
.draft-author { color:var(--ink-2); font-size:var(--t-meta) }

/* One menu rhythm across the card, independent of table-cell and shared row padding. */
.desk-content .draft-card .hm-menu summary { gap:.5rem; min-height:2.25rem; padding:.375rem .5rem; margin:0; align-items:center }
.desk-content .draft-card .hm-menu-list { top:calc(100% + .5rem); gap:.25rem; padding:.5rem; min-width:12rem; max-width:calc(100vw - 4rem) }
.desk-content .draft-card .hm-menu-list a { min-height:2.25rem; padding:.5rem .75rem; margin:0; white-space:normal; overflow-wrap:anywhere; text-align:left; justify-content:flex-start; line-height:1.4 }
.draft-type { color:var(--ink-2); font-size:var(--t-meta) }

/* Header labels meet their columns; selected author emails stay one visible line. */
.desk-content .draft-table thead .hm-menu summary { position:relative; display:block; min-height:2rem; padding:.25rem .75rem .25rem 0; text-align:left; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.desk-content .draft-table thead .hm-menu .hm-caret { position:absolute; top:50%; right:0; transform:translateY(-50%) }
@media(max-width:48rem) {
  .desk-content .draft-card .hm-menu-list { position:static; min-width:0; width:100%; margin-top:.5rem; box-shadow:none }
  .draft-card .draft-view-filter { min-width:8rem }
}

/* Lifecycle counts stay separate from their status labels. */
.desk-content .draft-card .draft-status-tabs .hm-fbtn { gap:.375rem }
.draft-status-tabs .draft-count { display:inline-grid; place-items:center; min-width:1.125rem; padding:0 .25rem; border-radius:.25rem; background:var(--panel-2); color:var(--ink-2); font:400 var(--t-meta)/1.5 var(--sans); font-variant-numeric:tabular-nums }
