/* Page-owned enhancement of the existing D05 matrix, not a parallel shell. */
/* Complete matrix: no lens, row-selection, or hidden-pair selectors. */
.kapx-engineering [hidden] { display:none !important; }
.engineering-selectors { display:flex; flex-wrap:wrap; gap:16px; }
.kapx-engineering label { display:grid; gap:8px; flex:1 1 260px; min-width:0; }
.kapx-engineering select { width:100%; min-width:0; min-height:44px; padding:10px; font:var(--f-size-05)/var(--f-line-normal) var(--f-font-sans); color:var(--text); background:var(--panel); border:1px solid var(--line); border-radius:6px; }
.engineering-selected-table { width:100%; table-layout:fixed; border-collapse:collapse; margin:20px 0; font:var(--f-weight-regular) var(--f-size-05)/var(--f-line-relaxed) var(--f-font-sans); letter-spacing:var(--f-track-normal); }
.engineering-selected-table caption { text-align:start; padding:12px 0; color:var(--muted,var(--text)); }
.engineering-selected-table :is(th,td) { padding:16px; vertical-align:top; overflow-wrap:anywhere; border:1px solid var(--line); color:var(--text); }
.engineering-selected-table th { background:var(--panel); font-weight:var(--f-weight-semibold); text-align:start; }
.engineering-selected-table th:first-child { width:20%; }
.engineering-selected-table td { background:color-mix(in srgb,var(--comparison-accent) 7%,var(--panel)); border-top:3px solid var(--comparison-accent); }
.engineering-selected-table td[data-rgbm="RGBM.WARNING.AMBER"] { border-top-style:dashed; }
.engineering-selected-table :is(time,.engineering-status) { display:block; margin:8px 0 0; }
.engineering-selected-table tbody tr:hover { outline:1px solid var(--rgbm-system); outline-offset:-1px; }
.engineering-foundation-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.engineering-foundation-grid h4 { padding:0 16px; }
@media(max-width:767px) {
  .engineering-foundation-grid { grid-template-columns:minmax(0,1fr); }
  .engineering-selected-table :is(thead,tbody,tr) { display:block; }
  .engineering-selected-table :is(th,td) { display:block; width:auto; padding:12px; }
  .engineering-selected-table th:first-child { width:auto; }
  .engineering-selected-table tbody tr { margin-top:20px; }
  .engineering-selected-table td::before { content:attr(data-product-title); display:block; margin-bottom:8px; font-weight:var(--f-weight-semibold); color:var(--comparison-accent); }
}
.kapx-engineering select:focus-visible { outline:2px solid var(--rgbm-system); outline-offset:3px; }
.comparison-rgbm-legend { display:flex; flex-wrap:wrap; gap:10px; padding:0; margin:16px 0; list-style:none; }
.comparison-rgbm-legend li { padding:8px 12px; border:1px solid var(--line); border-inline-start:4px solid var(--comparison-accent); border-radius:6px; background:var(--panel); color:var(--text); font:var(--f-size-05)/var(--f-line-relaxed) var(--f-font-sans); }
:is(.comparison-complete,.comparison-rgbm-legend,.engineering-selected-table) [data-rgbm="RGBM.NAVIGATION.BLUE"] { --comparison-accent:var(--rgbm-navigation); }
:is(.comparison-complete,.comparison-rgbm-legend,.engineering-selected-table) [data-rgbm="RGBM.INSIGHT.MAGENTA"] { --comparison-accent:var(--rgbm-insight); }
:is(.comparison-complete,.comparison-rgbm-legend,.engineering-selected-table) [data-rgbm="RGBM.WARNING.AMBER"] { --comparison-accent:var(--rgbm-warning); }
:is(.comparison-complete,.comparison-rgbm-legend,.engineering-selected-table) [data-rgbm="RGBM.NEUTRAL.SLATE"] { --comparison-accent:var(--rgbm-neutral); }
:is(.comparison-complete,.comparison-rgbm-legend,.engineering-selected-table) [data-rgbm="RGBM.SYSTEM.CYAN"] { --comparison-accent:var(--rgbm-system); }
:is(.comparison-complete,.comparison-rgbm-legend,.engineering-selected-table) [data-rgbm="RGBM.DATA.VIOLET"] { --comparison-accent:var(--rgbm-data); }
.comparison-complete tr[data-comparison-dimension^="technical"] { --comparison-row-accent:var(--rgbm-navigation); }
.comparison-complete tr[data-comparison-dimension^="adoption"] { --comparison-row-accent:var(--rgbm-insight); }
.comparison-complete .kapx-comparison-matrix td { color:var(--text); background:color-mix(in srgb,var(--comparison-accent) 7%,var(--panel)); border-top:3px solid var(--comparison-accent); }
.comparison-complete .kapx-comparison-matrix td[data-rgbm="RGBM.WARNING.AMBER"] { border-top-style:dashed; font-weight:var(--f-weight-medium); }
.comparison-complete .kapx-comparison-matrix tbody th { border-inline-start:4px solid var(--comparison-row-accent); background:color-mix(in srgb,var(--comparison-row-accent) 8%,var(--panel)); }
.comparison-complete .kapx-comparison-matrix tbody th code { color:var(--comparison-row-accent); }
.comparison-complete .kapx-comparison-matrix tbody tr:hover td { outline:1px solid var(--comparison-row-accent); outline-offset:-1px; }
.comparison-complete .kapx-comparison-matrix { width:100%; table-layout:fixed; font:var(--f-weight-regular) var(--f-size-05)/var(--f-line-relaxed) var(--f-font-sans); letter-spacing:var(--f-track-normal); }
.comparison-complete .kapx-comparison-matrix :is(th,td) { vertical-align:top; overflow-wrap:anywhere; padding:14px 10px; line-height:var(--f-line-relaxed); }
.comparison-complete .kapx-comparison-matrix th { font-size:var(--f-size-05); font-weight:var(--f-weight-semibold); letter-spacing:var(--f-track-normal); }
.comparison-complete .kapx-comparison-matrix th:first-child { width:14%; }
.comparison-complete .kapx-comparison-matrix thead th { scroll-margin-top:112px; }
.comparison-complete .kapx-comparison-matrix tbody th { color:var(--rgbm-system); }
.comparison-complete .kapx-comparison-matrix code { display:block; font:var(--f-weight-medium) var(--f-size-03)/var(--f-line-normal) var(--f-font-mono); }
.comparison-complete tr[data-comparison-dimension^="adoption"] { background:color-mix(in srgb,var(--rgbm-system) 5%,var(--panel)); }
@media(max-width:1199px) {
  /* Human-approved: scroll only this table, never hide columns or shrink text. */
  .comparison-complete { overflow-x:auto; max-width:100%; overscroll-behavior-x:contain; }
  .comparison-complete .kapx-comparison-matrix { min-width:1440px; }
  .comparison-complete .kapx-comparison-matrix th:first-child { position:sticky; left:0; z-index:1; background:var(--panel); width:160px; box-shadow:2px 0 0 var(--line); }
}
.comparison-complete:focus-visible { outline:2px solid var(--rgbm-system); outline-offset:3px; }
.kapx-engineering { min-width:0; margin-top:32px; color:var(--text); }
.kapx-engineering > section { border-top:1px solid var(--line); margin-top:28px; padding-top:24px; }
.kapx-engineering :is(section,details) { scroll-margin-top:112px; }
.kapx-engineering :is(a,summary) { scroll-margin-top:112px; }
.kapx-engineering :is(p,dd) { font:15px/1.85 var(--f-font-sans,system-ui); overflow-wrap:anywhere; }
.kapx-engineering > section > p { max-width:90ch; }
.engineering-navigation { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0; }
.engineering-navigation a,.engineering-row-detail { padding:8px 12px; border:1px solid var(--line); border-radius:6px; font-size:14px; line-height:1.6; overflow-wrap:anywhere; }
.engineering-row-detail { display:block; margin-top:10px; padding:6px; font-size:12px; text-decoration:none; }
.engineering-entry { margin:12px 0; border:1px solid var(--line); background:var(--panel); border-radius:8px; min-width:0; }
.engineering-entry:target { border-color:var(--rgbm-system); }
.engineering-entry summary { cursor:pointer; padding:16px; font-size:16px; line-height:1.7; overflow-wrap:anywhere; }
.engineering-entry summary code { color:var(--rgbm-system); margin-right:10px; font:700 13px/1.7 var(--f-font-mono,monospace); }
.engineering-status { display:inline-block; margin-left:12px; padding:2px 8px; border:1px solid var(--line); border-radius:4px; font:12px/1.7 var(--f-font-mono,monospace); color:var(--rgbm-system); }
.engineering-status[data-evidence-status="NOT_VERIFIED"] { color:var(--muted,var(--text)); }
.engineering-entry[open] summary { border-bottom:1px solid var(--line); }
.engineering-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:0; padding:20px; }
.engineering-fields > div { min-width:0; border-bottom:1px solid var(--line); padding-bottom:12px; }
.engineering-fields dt { font-weight:700; font-size:14px; line-height:1.7; color:var(--rgbm-system); overflow-wrap:anywhere; }
.engineering-fields dd { margin:8px 0 0; }
.engineering-reference { margin:0 !important; padding:16px 20px; border-top:1px solid var(--line); }
.engineering-reference a { text-decoration:underline; text-underline-offset:3px; }
.engineering-flow { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:12px; padding:0; margin:24px 0; list-style:none; }
.engineering-flow li { min-width:0; position:relative; }
.engineering-flow a { display:block; padding:16px 12px; border:1px solid var(--rgbm-system); background:var(--panel); border-radius:6px; line-height:1.7; overflow-wrap:anywhere; }
.engineering-flow :is(code,span) { display:block; }
.engineering-flow code { color:var(--rgbm-system); margin-bottom:8px; }
.engineering-flow-arrow { position:absolute; top:35%; right:-12px; transform:rotate(-90deg); text-align:center; color:var(--rgbm-system); font-size:20px; }
.engineering-flow li:last-child .engineering-flow-arrow { display:none; }
.engineering-legend { margin:24px 0; border:1px solid var(--line); border-radius:8px; padding:20px; background:var(--panel); }
.kapx-engineering :is(a,summary):focus-visible,.engineering-row-detail:focus-visible { outline:2px solid var(--rgbm-system); outline-offset:3px; }
@media(max-width:1199px) { .engineering-flow { grid-template-columns:minmax(0,1fr); } .engineering-flow a { display:flex; gap:12px; } .engineering-flow code { margin:0; flex:none; } .engineering-flow-arrow { position:static; transform:none; } }
@media(max-width:767px) { .engineering-fields { grid-template-columns:minmax(0,1fr); padding:16px; } .engineering-entry summary { padding:12px; } .engineering-status { margin:8px 0 0; display:table; } .engineering-navigation a { font-size:13px; } }
@media print { .engineering-navigation { display:none; } .engineering-entry > * { display:block; } }
