/* Comparison composition only; identities, actions and attached surfaces use
   workbench-components. */
.support-workbench { --support-topic-height:calc(var(--lu4-control-height) + 1rem); --support-comparison-min:64rem; width:min(84rem,calc(100% - 3rem)); margin-inline:auto; padding:calc(var(--shell-header-height) + var(--space-5)) 0 4rem; }
.support-workbench > .guide-identity { margin-bottom:var(--space-4); }
.support-topic-nav { position:sticky; top:var(--shell-header-height); z-index:5; padding-block:0 .5rem; background:var(--lu4-bg-base); }
.support-workbench a { color:var(--link); }
.support-workbench a:hover { color:var(--link-hover); }
.support-workbench [hidden] { display:none !important; }
.support-workbench h2 { font-size:var(--type-section-title-size); color:var(--text); margin:0 0 1rem; }
.support-workbench h3 { font-size:var(--type-ui-size); color:var(--text); }
#support-results { position:relative; margin-top:var(--space-2); min-width:0; }
/* Only the empty preview host is raised by the attached-panel component.
   The table must not join its stacking context above the sticky topic nav. */
.support-preview-host { position:absolute; inset:0; pointer-events:none; }
.support-pair { display:none; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; }
.support-pair > div { min-width:0; }
.support-pair label { display:block; color:var(--text-muted); font-size:var(--type-ui-size); margin:0 0 .375rem; }
.support-pair .wb-search-select { width:100%; }
.support-desktop-head { position:sticky; top:calc(var(--shell-header-height) + var(--support-topic-height)); z-index:3; overflow:hidden; border:1px solid var(--border); border-radius:var(--radius-md) var(--radius-md) 0 0; background:var(--elevated); }
.support-desktop-head__inner { display:grid; min-width:var(--support-comparison-min); grid-template-columns:var(--support-effect-width) repeat(var(--support-col-count),minmax(0,1fr)); }
.support-desktop-head__inner > div { min-width:0; padding:.75rem .625rem; color:var(--text); font-size:var(--type-ui-size); font-weight:600; overflow-wrap:anywhere; }
.support-desktop-head__inner > div:first-child { position:sticky; left:0; z-index:1; background:var(--elevated); box-shadow:1px 0 var(--border); }
.support-desktop-head small { display:block; font-weight:400; color:var(--text-muted); font-size:var(--type-label-size); margin-top:.25rem; }
.support-prophecy .support-desktop-head__inner { min-width:80rem; }
.support-matrix-wrap { overflow:auto; border:1px solid var(--border); border-top:0; border-radius:0 0 var(--radius-md) var(--radius-md); }
.support-matrix { width:100%; min-width:var(--support-comparison-min); border-collapse:separate; border-spacing:0; table-layout:fixed; font-size:var(--type-ui-size); }
.support-matrix col:first-child { width:9rem; }
.support-matrix th,.support-matrix td { padding:.625rem; vertical-align:middle; text-align:left; border-bottom:1px solid var(--border); overflow-wrap:anywhere; }
.support-matrix tbody tr:last-child > * { border-bottom:0; }
.support-matrix tbody th { position:sticky; left:0; z-index:1; color:var(--text-secondary); font-weight:500; background:var(--bg); box-shadow:1px 0 var(--border); }
/* A spanning cell cannot itself freeze at the left edge. Freeze its label
   inside the full-width category band, independently from ordinary row names. */
.support-matrix .support-group-row > th { position:static; padding:.5rem .625rem; font-weight:600; color:var(--text); background:var(--elevated); box-shadow:none; }
.support-group-label { display:inline-block; position:sticky; left:.625rem; width:7.75rem; padding-left:var(--space-2); border-left:3px solid var(--lu4-accent); background:var(--elevated); }
.support-group-row { scroll-margin-top:calc(var(--shell-header-height) + var(--support-topic-height) + 5rem); }
.support-skill-list { display:flex; flex-wrap:wrap; align-items:start; justify-content:start; gap:.375rem; }
.support-skill-trigger { display:grid; grid-template-columns:28px max-content; flex:none; justify-content:start; justify-items:start; min-width:0; gap:.375rem; padding:.25rem; text-align:left; }
.support-skill-trigger > img { flex:none; width:28px; height:28px; border-radius:var(--radius-sm); }
.support-skill-meta { display:grid; min-width:0; justify-items:start; color:var(--text-secondary); font-size:var(--type-label-size); line-height:1.35; font-weight:400; overflow-wrap:normal; }
.support-skill-meta > span { white-space:nowrap; }
.support-skill-duration { color:var(--text); font-weight:600; font-variant-numeric:tabular-nums; }
.support-skill-trigger[aria-expanded="true"],.support-named-trigger[aria-expanded="true"] { background:var(--selection-bg); }
.support-empty { color:var(--text-muted); }
.support-named-trigger { display:grid; justify-content:stretch; justify-items:stretch; text-align:left; width:100%; padding:.375rem; gap:.375rem; }
.support-named-trigger > .support-skill-meta { margin-left:2.5rem; display:flex; flex-wrap:wrap; gap:.25rem .625rem; }
.support-paired-head,.support-paired-rows { display:none; }
.support-prophecy .support-matrix { min-width:80rem; }
.support-prophecy .support-matrix col:first-child { width:10rem; }
.support-prophecy .support-matrix tbody td { color:var(--text); }
.support-extra-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.75rem 1.5rem; }
.support-extra-skill { min-width:0; }
.support-extra-group { scroll-margin-top:calc(var(--shell-header-height) + var(--support-topic-height) + var(--space-4)); }
.support-extra-group + .support-extra-group { margin-top:var(--space-6); padding-top:var(--space-5); border-top:1px solid var(--border); }
.support-extra-category { margin-top:var(--space-4); }
.support-extra-category + .support-extra-category { margin-top:var(--space-5); }
.support-preview-head { display:flex; align-items:start; justify-content:space-between; gap:.625rem; }
.support-preview { z-index:4; pointer-events:auto; }
.support-preview-head > a { flex:1; }
.support-preview-meta { margin:.75rem 0; color:var(--text-muted); font-size:var(--type-label-size); line-height:1.6; }
.support-full-effect { font-size:var(--type-ui-size); line-height:1.7; color:var(--text-secondary); white-space:pre-line; }
.support-workbench :is(button,a,summary):focus-visible { outline:2px solid var(--focus); outline-offset:3px; }
/* Skills use their own content width and wrap as a complete icon/meta group.
   Below 960px the selected pair keeps one skill per line in each class. */
@media(max-width:959px) {
 .support-skill-list { flex-direction:column; flex-wrap:nowrap; }
 .support-pair { display:grid; margin:1rem 0; }
 .support-matrix-wrap,.support-desktop-head { display:none; }
 .support-paired-head { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); position:sticky; top:calc(var(--shell-header-height) + var(--support-topic-height)); z-index:3; background:var(--elevated); border-block:1px solid var(--border); }
 .support-paired-head > div { padding:.625rem .75rem; color:var(--text); min-width:0; font-weight:600; font-size:var(--type-ui-size); }
 .support-paired-head > div + div { border-left:1px solid var(--border); }
 .support-paired-rows { display:block; }
 .support-paired-rows > section > h2 { padding:.625rem; margin:var(--space-4) 0 0; border-left:3px solid var(--lu4-accent); font-size:var(--type-ui-size); background:var(--elevated); scroll-margin-top:calc(var(--shell-header-height) + var(--support-topic-height) + 4rem); }
 .support-paired-row { border-bottom:1px solid var(--border); }
 .support-paired-row h3 { font-size:var(--type-ui-size); color:var(--text-secondary); margin:0; padding:.625rem .75rem 0; font-weight:500; }
 .support-paired-values { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
 .support-paired-values > div { min-width:0; padding:.625rem .75rem; }
 .support-paired-values > div + div { border-left:1px solid var(--border); }
 .support-extra-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:639px) {
 .support-workbench { width:calc(100% - 2rem); padding-top:calc(var(--shell-header-height) + 1.25rem); }
 .support-pair { gap:.625rem; }
 .support-extra-grid { grid-template-columns:1fr; }
 .support-paired-values > div { padding:.625rem .375rem; }
}
