/* Shared heading architecture: icon, title and explanation each own a stable lane and spacing. */
.gv-structured-heading{align-items:center;gap:14px}
.gv-heading-copy{
  min-width:0;max-width:100%;display:grid;grid-template-columns:34px minmax(0,1fr);grid-auto-rows:auto;
  column-gap:11px;row-gap:3px;align-items:center;align-content:center;
}
.gv-heading-copy > .gv-heading-icon{
  grid-column:1;grid-row:1 / span 4;width:32px;height:32px;min-width:32px;display:grid;place-items:center;align-self:center;
  border:1px solid var(--p-border,var(--theme-border,#d9dee7));border-radius:8px;
  background:var(--p-surface-subdued,var(--theme-elevated,rgba(127,127,127,.08)));
  color:var(--p-action-primary,var(--theme-accent,#258f76));
}
.gv-heading-copy > .gv-heading-icon svg{width:16px;height:16px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.gv-heading-copy > :not(.gv-heading-icon){grid-column:2;min-width:0;max-width:100%}
.gv-heading-copy.gv-heading-copy--no-icon{grid-template-columns:minmax(0,1fr);column-gap:0}
.gv-heading-copy.gv-heading-copy--no-icon > :not(.gv-heading-icon){grid-column:1}
.gv-heading-title{margin:0 !important;line-height:1.28 !important;min-width:0;overflow-wrap:anywhere}
.gv-heading-kicker{margin:0 0 1px !important;font-size:9px !important;line-height:1.25 !important;font-weight:600 !important;letter-spacing:.06em;text-transform:uppercase;color:var(--p-text-secondary,var(--theme-muted,#69727d))}
.gv-heading-description{display:block;margin:0 !important;color:var(--p-text-secondary,var(--theme-muted,#69727d)) !important;font-size:10px;line-height:1.48;max-width:72ch}
.gv-heading-description--secondary{margin-top:1px !important;font-size:9px}

/* Existing section-title components keep their icon but inherit the same rhythm. */
.section-title.gv-heading-copy{grid-template-columns:34px minmax(0,1fr);gap:3px 11px;align-items:center}
.section-title.gv-heading-copy > .gv-heading-icon,.section-title.gv-heading-copy > :is(.section-title-icon,.settings-section-icon){grid-column:1;grid-row:1 / span 4}
.section-title.gv-heading-copy > .gv-heading-text{grid-column:2;display:grid;gap:3px;min-width:0}
.section-title.gv-heading-copy > .gv-heading-text > *{min-width:0}

/* Headers with actions retain a clean copy/action split instead of squeezing the description. */
.gv-structured-heading > :is(.page-actions,.panel-actions,.card-actions,.toolbar,.actions,.status,.badge,.gateway-version){flex:0 0 auto;margin-inline-start:auto}
/* Keep the preferred width on the inline axis. A fixed flex-basis becomes a
   280px height when a compact header switches to a vertical layout. */
.gv-structured-heading > .gv-heading-copy{flex:1 1 auto;inline-size:280px}

/* Page-level heading icons are a touch larger while panel icons stay compact. */
:is(.workspace-page-head,.page-head,.page-header,.gvn-page-head,.wallet-page-head).gv-structured-heading > .gv-heading-copy{grid-template-columns:40px minmax(0,1fr);column-gap:12px;row-gap:4px}
:is(.workspace-page-head,.page-head,.page-header,.gvn-page-head,.wallet-page-head) .gv-heading-copy > .gv-heading-icon{width:38px;height:38px;min-width:38px;border-radius:9px}
:is(.workspace-page-head,.page-head,.page-header,.gvn-page-head,.wallet-page-head) .gv-heading-copy > .gv-heading-icon svg{width:var(--gv-radius-xl, 10px);height:18px}

/* Heading copy remains multi-line and readable at every width. */
.gv-heading-copy :is(h1,h2,h3,h4,b,strong),.gv-heading-copy :is(p,small,.help){min-width:0;max-width:100%;white-space:normal}
.gv-heading-copy :is(p,small,.help){overflow-wrap:anywhere}

@media(max-width:760px){
  .gv-structured-heading{gap:10px}
  .gv-heading-copy{grid-template-columns:32px minmax(0,1fr);column-gap:9px;row-gap:3px}
  .gv-heading-copy > .gv-heading-icon{width:30px;height:30px;min-width:30px;border-radius:7px}
  :is(.workspace-page-head,.page-head,.page-header,.gvn-page-head,.wallet-page-head).gv-structured-heading > .gv-heading-copy{grid-template-columns:34px minmax(0,1fr);column-gap:10px}
  :is(.workspace-page-head,.page-head,.page-header,.gvn-page-head,.wallet-page-head) .gv-heading-copy > .gv-heading-icon{width:32px;height:32px;min-width:32px;border-radius:8px}
  .gv-heading-description{font-size:10px;line-height:1.45}
  .gv-structured-heading > :is(.page-actions,.panel-actions,.card-actions,.toolbar,.actions){width:100%;margin-inline-start:0}
}

/* Icon-free headings use the full copy lane at every breakpoint. */
.gv-structured-heading > .gv-heading-copy.gv-heading-copy--no-icon,
.section-title.gv-heading-copy.gv-heading-copy--no-icon{
  grid-template-columns:minmax(0,1fr);column-gap:0;
}
.section-title.gv-heading-copy.gv-heading-copy--no-icon > .gv-heading-text{
  grid-column:1;
}
