.advanced-specific-graphic {
  --asg-bg: #071d2b;
  --asg-panel: #0d2a39;
  --asg-line: rgba(144, 197, 214, .27);
  --asg-text: #e6f5f5;
  --asg-muted: #b1cbd0;
  --asg-mint: #75dfcf;
  --asg-sky: #91c9f2;
  --asg-gold: #f3cb87;
  box-sizing: border-box;
  min-width: 0;
  margin: 20px 0 6px;
  padding: clamp(14px, 2vw, 22px);
  border: 1px solid rgba(120, 221, 206, .4);
  border-radius: 16px;
  color: var(--asg-text);
  background: radial-gradient(circle at 94% 5%, rgba(95, 189, 207, .17), transparent 32%),
    linear-gradient(147deg, #082331, var(--asg-bg) 65%);
  box-shadow: 0 18px 40px rgba(2, 12, 20, .2), inset 0 1px rgba(211, 250, 245, .09);
}
.advanced-specific-graphic *, .advanced-specific-graphic *::before, .advanced-specific-graphic *::after { box-sizing: border-box; }
.advanced-specific-graphic .ascg-title { display: block; color: #b9f4e9; font-size: clamp(1.05rem, 2vw, 1.25rem); font-weight: 850; letter-spacing: -.015em; line-height: 1.2; }
.advanced-specific-graphic .ascg-job { max-width: 74ch; margin: 7px 0 5px; color: var(--asg-text); line-height: 1.45; }
.advanced-specific-graphic .ascg-source { margin: 0 0 16px; color: var(--asg-muted); font-size: .78rem; line-height: 1.42; }
.advanced-specific-graphic .ascg-canvas { display: grid; gap: 13px; min-width: 0; }
.advanced-specific-graphic button { appearance: none; min-width: 0; border: 1px solid var(--asg-line); color: var(--asg-text); background: rgba(25, 61, 77, .74); font: inherit; white-space: normal; overflow-wrap: anywhere; cursor: pointer; }
.advanced-specific-graphic button:hover { border-color: var(--asg-mint); background: rgba(43, 94, 105, .65); }
.advanced-specific-graphic button:focus-visible { outline: 3px solid #f4dca2; outline-offset: 2px; position: relative; z-index: 2; }
.advanced-specific-graphic button[aria-pressed="true"] { border-color: var(--asg-mint); background: rgba(64, 149, 147, .32); box-shadow: inset 0 0 0 1px rgba(117, 223, 207, .32); }
.advanced-specific-graphic button:disabled { cursor: default; opacity: .52; }
.advanced-specific-graphic button small { display: block; margin-top: 4px; color: var(--asg-muted); font-size: .75rem; font-weight: 500; line-height: 1.25; }
.advanced-specific-graphic .ascg-kicker { display: block; color: var(--asg-mint); font-size: .76rem; font-weight: 800; letter-spacing: .035em; text-transform: uppercase; }
.advanced-specific-graphic .ascg-focus { min-width: 0; padding: 13px 15px; border: 1px solid rgba(135, 212, 210, .34); border-radius: 10px; background: linear-gradient(112deg, rgba(30, 79, 91, .45), rgba(12, 44, 62, .7)); }
.advanced-specific-graphic .ascg-focus strong { display: block; margin: 6px 0; color: #f0faf7; font-size: clamp(.88rem, 1.6vw, 1rem); line-height: 1.35; }
.advanced-specific-graphic .ascg-focus p { margin: 6px 0 0; color: #d5e6e9; font-size: .83rem; line-height: 1.42; }
.advanced-specific-graphic .ascg-focus .ascg-limit,
.advanced-specific-graphic .ascg-limit { margin-top: 12px; padding-top: 8px; border-top: 1px solid var(--asg-line); color: var(--asg-muted); font-size: .77rem; }
.advanced-specific-graphic .ascg-case-warning { margin: 0; padding: 8px 10px; border-left: 3px solid var(--asg-gold); color: #ffdfa9; background: rgba(213, 140, 73, .1); font-size: .8rem; line-height: 1.38; }

/* Lead × acquisition matrix: graphic marks describe authored source text only. */
.advanced-specific-graphic .ascg-matrix-scroll { max-width: 100%; overflow-x: auto; padding: 2px 2px 8px; scrollbar-color: #548a95 #082332; }
.advanced-specific-graphic .ascg-matrix-scroll:focus-visible { outline: 2px solid #f4dca2; }
.advanced-specific-graphic .ascg-lead-matrix { display: grid; grid-template-columns: 75px repeat(var(--ascg-columns), minmax(132px, 1fr)); gap: 5px; min-width: max(100%, calc(75px + var(--ascg-columns) * 132px)); }
.advanced-specific-graphic .ascg-matrix-corner,
.advanced-specific-graphic .ascg-matrix-head,
.advanced-specific-graphic .ascg-lead-axis,
.advanced-specific-graphic .ascg-lead-cell { border-radius: 7px; }
.advanced-specific-graphic .ascg-matrix-corner { display: grid; place-items: center; padding: 7px; color: var(--asg-muted); background: #123645; font-size: .7rem; line-height: 1.2; text-align: center; }
.advanced-specific-graphic .ascg-matrix-corner,
.advanced-specific-graphic .ascg-lead-axis { position: sticky; left: 0; z-index: 3; box-shadow: 3px 0 0 #081d2b; }
.advanced-specific-graphic .ascg-matrix-head { min-height: 53px; padding: 7px; color: #c7f2ed; font-size: .78rem; font-weight: 800; text-align: left; }
.advanced-specific-graphic .ascg-lead-axis { min-height: 50px; padding: 7px; color: #c8e8f2; background: #123645; font-size: .83rem; font-weight: 850; }
.advanced-specific-graphic .ascg-lead-axis[aria-pressed="true"] { background: #1b5d66; }
.advanced-specific-graphic .ascg-lead-cell { position: relative; min-height: 50px; padding: 8px 8px 8px 17px; font-size: .72rem; font-weight: 760; line-height: 1.2; text-align: left; }
.advanced-specific-graphic .ascg-lead-cell::before { position: absolute; top: 50%; left: 6px; width: 6px; height: 6px; border-radius: 50%; background: currentColor; content: ""; transform: translateY(-50%); }
.advanced-specific-graphic .ascg-lead-cell.is-gap { color: #c3cbd3; background: rgba(94, 110, 129, .13); }
.advanced-specific-graphic .ascg-lead-cell.is-recorded { color: #bce8dd; background: rgba(68, 142, 128, .18); }
.advanced-specific-graphic .ascg-lead-cell.is-limited { color: #f3cf98; background: repeating-linear-gradient(135deg, rgba(161, 114, 52, .18) 0 5px, rgba(161, 114, 52, .08) 5px 10px); }
.advanced-specific-graphic .ascg-lead-cell.is-change { color: #ffb7ac; background: rgba(187, 93, 83, .2); }
.advanced-specific-graphic .ascg-lead-cell.is-selected { box-shadow: inset 0 0 0 2px #fff0d8; }
.advanced-specific-graphic .ascg-matrix-head.is-new-case,
.advanced-specific-graphic .ascg-lead-cell.is-new-case { border-left: 3px solid var(--asg-gold); }
.advanced-specific-graphic .ascg-reference { color: #b5d8dd; }
.advanced-specific-graphic .ascg-scroll-cue { margin: -7px 0 0; color: var(--asg-muted); font-size: .72rem; line-height: 1.3; }
.advanced-specific-graphic .ascg-ecg-paper { position: relative; display: grid; place-items: center; width: 100%; min-height: 94px; margin: 10px 0 8px; overflow: hidden; border: 1px solid #dfc2b9; border-radius: 5px; color: #263b50;
  background-color: #fff9f0;
  background-image: linear-gradient(rgba(218, 106, 108, .13) 1px, transparent 1px), linear-gradient(90deg, rgba(218, 106, 108, .13) 1px, transparent 1px),
    linear-gradient(rgba(202, 77, 91, .2) 1px, transparent 1px), linear-gradient(90deg, rgba(202, 77, 91, .2) 1px, transparent 1px);
  background-size: 9px 9px, 9px 9px, 45px 45px, 45px 45px; }
.advanced-specific-graphic .ascg-ecg-paper svg { display: block; width: 100%; height: 88px; padding: 11px 4px 18px; overflow: visible; }
.advanced-specific-graphic .ascg-ecg-trace { fill: none; stroke: #173f70; stroke-width: 1.45; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.advanced-specific-graphic .ascg-ecg-stamp { position: absolute; right: 4px; bottom: 3px; padding: 2px 4px; color: #633c4c; background: rgba(255, 249, 240, .89); font-size: .6rem; font-weight: 850; letter-spacing: .01em; }
.advanced-specific-graphic .ascg-written-evidence { display: grid; gap: 8px; margin: 10px 0 8px; padding: 11px; border: 1px solid rgba(138, 190, 190, .45); border-radius: 8px; background: linear-gradient(135deg, rgba(25, 69, 82, .8), rgba(23, 46, 66, .92)); }
.advanced-specific-graphic .ascg-written-evidence-kicker { color: #f5d7a0; font-size: .68rem; font-weight: 850; letter-spacing: .065em; }
.advanced-specific-graphic .ascg-written-evidence-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.advanced-specific-graphic .ascg-written-evidence-source { display: grid; align-content: start; gap: 5px; min-width: 0; min-height: 74px; padding: 9px; border: 1px solid rgba(159, 194, 201, .3); border-radius: 6px; background: rgba(8, 30, 43, .55); }
.advanced-specific-graphic .ascg-written-evidence-source.is-current { border-color: rgba(242, 209, 149, .7); background: rgba(45, 71, 79, .7); }
.advanced-specific-graphic .ascg-written-evidence-source small { color: #b8d5da; font-size: .68rem; }
.advanced-specific-graphic .ascg-written-evidence-source strong { color: #f5f4e9; font-size: .78rem; line-height: 1.3; }
.advanced-specific-graphic .ascg-written-evidence p { margin: 0; color: #c9dfdf; font-size: .71rem; line-height: 1.35; }
@media (max-width: 420px) { .advanced-specific-graphic .ascg-written-evidence-pair { grid-template-columns: minmax(0, 1fr); } }

/* Explicit acquisition and availability clocks. */
.advanced-specific-graphic .ascg-clock-times,
.advanced-specific-graphic .ascg-source-picks { display: flex; gap: 7px; overflow-x: auto; padding-bottom: 5px; }
.advanced-specific-graphic .ascg-time-pick,
.advanced-specific-graphic .ascg-source-pick { flex: 1 0 115px; padding: 9px 10px; border-radius: 8px; font-size: .79rem; font-weight: 800; text-align: left; }
.advanced-specific-graphic .ascg-clock-grid { display: grid; grid-template-columns: minmax(95px, 1.05fr) repeat(var(--ascg-columns), minmax(72px, 1fr)); gap: 4px; min-width: 0; }
.advanced-specific-graphic .ascg-clock-corner,
.advanced-specific-graphic .ascg-clock-heading { align-self: center; color: var(--asg-muted); font-size: .7rem; font-weight: 750; text-align: center; }
.advanced-specific-graphic .ascg-clock-heading.is-now { color: #c9f6e9; }
.advanced-specific-graphic .ascg-clock-lane { min-height: 52px; padding: 6px; border-radius: 7px; font-size: .72rem; font-weight: 800; line-height: 1.18; text-align: left; }
.advanced-specific-graphic .ascg-clock-cell { display: grid; align-content: center; justify-items: center; gap: 3px; min-height: 52px; padding: 5px 2px; border: 1px solid rgba(125, 172, 182, .15); border-radius: 6px; color: var(--asg-muted); background: rgba(64, 91, 106, .13); font-size: .66rem; line-height: 1.1; text-align: center; }
.advanced-specific-graphic .ascg-clock-cell.is-now { border-color: rgba(244, 214, 160, .78); }
.advanced-specific-graphic .ascg-clock-cell.is-lane { background: rgba(84, 155, 157, .2); }
.advanced-specific-graphic .ascg-clock-mark { width: 10px; height: 10px; border-radius: 50%; background: #8699a9; }
.advanced-specific-graphic .ascg-clock-cell.is-observed .ascg-clock-mark,
.advanced-specific-graphic .ascg-clock-cell.is-available .ascg-clock-mark { background: var(--asg-mint); }
.advanced-specific-graphic .ascg-clock-cell.is-pending .ascg-clock-mark,
.advanced-specific-graphic .ascg-clock-cell.is-planned .ascg-clock-mark { border: 2px solid var(--asg-gold); background: transparent; }
.advanced-specific-graphic .ascg-clock-cell.is-unavailable .ascg-clock-mark { background: #d2938e; }
.advanced-specific-graphic .ascg-clock-event { padding-top: 7px; border-top: 1px solid var(--asg-line); }
.advanced-specific-graphic .ascg-clock-event strong { font-size: .83rem; }
.advanced-specific-graphic .ascg-clock-event small { display: block; color: #bad2d7; font-size: .73rem; }
.advanced-specific-graphic .ascg-clock-image { display: grid; justify-items: center; gap: 5px; padding: 9px; border: 1px solid var(--asg-line); border-radius: 8px; background: #071c29; }
.advanced-specific-graphic .ascg-clock-image strong { justify-self: start; color: #bde9eb; font-size: .8rem; }
.advanced-specific-graphic .ascg-clock-image svg { display: block; width: min(100%, 420px); height: clamp(140px, 20vw, 190px); }
.advanced-specific-graphic .ascg-clock-image p { margin: 0; color: var(--asg-muted); font-size: .72rem; line-height: 1.35; }

/* The fan is a provenance/status symbol, never an ultrasound image. */
.advanced-specific-graphic .ascg-us-board { display: grid; grid-template-columns: minmax(155px, .85fr) minmax(0, 1.15fr); gap: 12px; align-items: stretch; }
.advanced-specific-graphic .ascg-us-schematic { display: grid; place-items: center; min-height: 196px; overflow: hidden; border: 1px solid var(--asg-line); border-radius: 10px; background: #061621; }
.advanced-specific-graphic .ascg-us-schematic svg { display: block; width: 100%; height: 100%; min-height: 195px; max-height: 220px; }
.advanced-specific-graphic .ascg-us-unavailable { padding: 16px; color: #e6d2b4; font-size: .75rem; text-align: center; }
.advanced-specific-graphic .ascg-us-steps { display: grid; gap: 7px; }
.advanced-specific-graphic .ascg-us-step { display: grid; align-content: center; min-height: 54px; padding: 7px 10px; border-radius: 8px; font-size: .74rem; font-weight: 850; text-align: left; }
.advanced-specific-graphic .ascg-us-step span { display: block; margin-top: 3px; color: #cadce0; font-size: .75rem; font-weight: 500; line-height: 1.25; }

.advanced-specific-graphic .ascg-relay-track,
.advanced-specific-graphic .ascg-temperature-rail,
.advanced-specific-graphic .ascg-respiratory-strip { display: grid; grid-auto-columns: minmax(0, 1fr); grid-auto-flow: column; gap: 7px; }
.advanced-specific-graphic .ascg-relay-node,
.advanced-specific-graphic .ascg-temperature-node,
.advanced-specific-graphic .ascg-respiratory-moment { min-height: 72px; padding: 9px; border-radius: 8px; font-size: .76rem; font-weight: 800; line-height: 1.23; text-align: left; }
.advanced-specific-graphic .ascg-relay-node span { display: block; margin-top: 8px; color: var(--asg-muted); font-size: .7rem; font-weight: 500; }
.advanced-specific-graphic .ascg-relay-cargo { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 9px; }
.advanced-specific-graphic .ascg-relay-item { min-width: 0; padding: 9px; border-left: 2px solid var(--asg-sky); background: rgba(118, 190, 210, .08); }
.advanced-specific-graphic .ascg-relay-item small { color: #a8dbed; font-size: .71rem; font-weight: 800; text-transform: uppercase; }
.advanced-specific-graphic .ascg-relay-item p { overflow-wrap: anywhere; }
.advanced-specific-graphic .ascg-lens-picks,
.advanced-specific-graphic .ascg-respiratory-sources { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
.advanced-specific-graphic .ascg-respiratory-sources { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.advanced-specific-graphic .ascg-lens-pick,
.advanced-specific-graphic .ascg-respiratory-source { padding: 9px; border-radius: 8px; font-size: .77rem; font-weight: 800; text-align: left; }
.advanced-specific-graphic .ascg-temperature-focus.is-context { border-color: rgba(243, 203, 135, .55); background: linear-gradient(112deg, rgba(86, 72, 48, .37), rgba(20, 43, 55, .7)); }
.advanced-specific-graphic .ascg-bedside-monitor { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; padding: 9px; border: 4px solid #293e4a; border-radius: 12px; background: #020d14; box-shadow: inset 0 0 0 1px #55727e, 0 6px 15px rgba(0, 0, 0, .2); }
.advanced-specific-graphic .ascg-monitor-heading,
.advanced-specific-graphic .ascg-monitor-foot { grid-column: 1 / -1; margin: 0; color: #91acb7; font-size: .67rem; font-weight: 800; letter-spacing: .05em; }
.advanced-specific-graphic .ascg-monitor-foot { padding-top: 5px; border-top: 1px solid rgba(129, 160, 173, .3); font-weight: 500; letter-spacing: 0; line-height: 1.3; }
.advanced-specific-graphic .ascg-monitor-channel { display: grid; align-content: start; gap: 5px; min-height: 77px; padding: 7px; border: 1px solid rgba(127, 162, 171, .28); border-radius: 5px; color: #8ce7d1; background: #061924; }
.advanced-specific-graphic .ascg-monitor-channel.is-etco2 { color: #e8d77e; }
.advanced-specific-graphic .ascg-monitor-channel.is-pressure { color: #9dc9f1; }
.advanced-specific-graphic .ascg-monitor-channel.is-focused { border-color: currentColor; box-shadow: inset 0 0 0 1px currentColor; }
.advanced-specific-graphic .ascg-monitor-channel span { font-size: .64rem; font-weight: 850; letter-spacing: .045em; text-transform: uppercase; }
.advanced-specific-graphic .ascg-monitor-channel strong { overflow-wrap: anywhere; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: .8rem; line-height: 1.22; }

@media (max-width: 640px) {
  .advanced-specific-graphic { margin-top: 15px; padding: 13px; border-radius: 12px; }
  .advanced-specific-graphic .ascg-clock-times,
  .advanced-specific-graphic .ascg-source-picks { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow-x: visible; }
  .advanced-specific-graphic .ascg-time-pick,
  .advanced-specific-graphic .ascg-source-pick { min-height: 47px; }
  .advanced-specific-graphic .ascg-us-board { grid-template-columns: 1fr; }
  .advanced-specific-graphic .ascg-us-schematic { min-height: 165px; }
  .advanced-specific-graphic .ascg-relay-track { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-flow: row; }
  .advanced-specific-graphic .ascg-temperature-rail,
  .advanced-specific-graphic .ascg-respiratory-strip { grid-auto-flow: row; grid-template-columns: 1fr; }
  .advanced-specific-graphic .ascg-temperature-node,
  .advanced-specific-graphic .ascg-respiratory-moment { min-height: 44px; }
  .advanced-specific-graphic .ascg-relay-cargo { grid-template-columns: 1fr; }
  .advanced-specific-graphic .ascg-bedside-monitor { grid-template-columns: 1fr; }
  .advanced-specific-graphic .ascg-monitor-channel { min-height: 48px; grid-template-columns: 56px minmax(0, 1fr); align-items: center; }
  .advanced-specific-graphic .ascg-clock-grid { grid-template-columns: minmax(73px, 1fr) repeat(var(--ascg-columns), minmax(54px, 1fr)); gap: 3px; }
  .advanced-specific-graphic .ascg-clock-lane,
  .advanced-specific-graphic .ascg-clock-cell { min-height: 54px; font-size: .64rem; }
}
@media (max-width: 350px) {
  .advanced-specific-graphic { padding: 10px; }
  .advanced-specific-graphic .ascg-clock-grid { grid-template-columns: 72px repeat(var(--ascg-columns), minmax(47px, 1fr)); }
  .advanced-specific-graphic .ascg-respiratory-sources { grid-template-columns: 1fr; }
}
