/* Extracted source block 1. */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

  :root {
    /* Core palette — green-forward */
    --bg:         #060d08;
    --bg2:        #091210;
    --bg3:        #0d1a12;
    --surface:    #101f14;
    --surface2:   #142a1b;
    --border:     #1a3020;
    --border2:    #244030;
    --border3:    #2f5642;

    /* Primary accent — vivid green */
    --green:      #00e87a;
    --green2:     #00b85e;
    --green3:     #009048;
    --green-glow: rgba(0,232,122,0.15);
    --green-ring: rgba(0,232,122,0.08);
    --green-dim:  rgba(0,232,122,0.06);

    /* Semantic colours */
    --red:        #ff3a4a;
    --red-glow:   rgba(255,58,74,0.15);
    --amber:      #ffb020;
    --clear:      #00e87a;
    --cyan:       #39c8e8;
    --cyan-dim:   rgba(57,200,232,0.08);

    /* Type — adjusted for AA contrast on mobile */
    --text:       #c0dcc8;
    --text-dim:   #567a68;
    --text-mid:   #8ab498;
    --white:      #e8f8ee;

    --grad-bg: linear-gradient(160deg, #091a0e 0%, #060d08 60%);

    /* Layout */
    --pad-x:      20px;
    --safe-bot:   env(safe-area-inset-bottom, 0px);
  }

  html { font-size: 16px; }

  html, body {
    background: var(--bg);
    color: var(--text);
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 15px;
    line-height: 1.55;
    min-height: 100dvh;
    /* overflow-x: clip (not hidden) preserves position: sticky on descendants */
    overflow-x: clip;
    -webkit-font-smoothing: antialiased;
  }

  /* Respect motion prefs */
  @media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
      animation-duration: 0.01ms !important;
      animation-iteration-count: 1 !important;
      transition-duration: 0.01ms !important;
    }
  }

  /* Accessible keyboard focus ring — visible only for keyboard users */
  :focus { outline: none; }
  :focus-visible {
    outline: 2px solid var(--green);
    outline-offset: 2px;
  }
  .service-chip:focus-visible,
  .submit-btn:focus-visible,
  .dvs-action:focus-visible,
  .dvs-secondary:focus-visible,
  .mobile-cta-bar > button:focus-visible,
  .sf-toggle > summary:focus-visible {
    outline: 2px solid var(--green);
    outline-offset: 3px;
  }
  .sr-only {
    position: absolute !important;
    width: 1px; height: 1px;
    padding: 0; margin: -1px;
    overflow: hidden; clip: rect(0,0,0,0);
    white-space: nowrap; border: 0;
  }
  .skip-link {
    position: absolute;
    top: -48px; left: 12px;
    background: var(--green);
    color: #081411;
    font-family: 'Bebas Neue', sans-serif;
    font-size: 14px;
    letter-spacing: 0.08em;
    padding: 10px 14px;
    z-index: 100;
    text-decoration: none;
    transition: top 0.2s;
  }
  .skip-link:focus { top: 8px; }

  /* Coordinate grid — green tint */
  body {
    background-image:
      linear-gradient(rgba(0,232,122,0.045) 1px, transparent 1px),
      linear-gradient(90deg, rgba(0,232,122,0.045) 1px, transparent 1px);
    background-size: 40px 40px;
  }


  /* ── FOOTER ── */
  .site-footer {
    padding: 28px 20px 36px;
    border-top: 1px solid var(--border);
    background: var(--bg);
    display: flex;
    flex-direction: column;
    gap: 10px;
  }

  .sf-copy {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.06em;
    color: var(--text);
  }

  .sf-copy em {
    color: var(--green);
    font-style: normal;
  }

  #gc-result-panel,
  #result-anchor {
    scroll-margin-top: 72px;
  }

  .sf-desc {
    font-family: 'Barlow', sans-serif;
    font-size: 11px;
    font-weight: 400;
    color: var(--text-mid);
    line-height: 1.7;
    max-width: 360px;
  }

  .sf-desc-desktop {
    display: block;
  }

  .sf-toggle { margin: 0; padding: 0; }
  .sf-toggle > summary {
    list-style: none;
    cursor: pointer;
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text);
    padding: 6px 0;
    display: none;
  }
  .sf-toggle > summary::-webkit-details-marker { display: none; }
  .sf-toggle > summary::after {
    content: ' ▾';
    color: var(--green);
  }
  .sf-toggle[open] > summary::after { content: ' ▴'; }

  .sf-contact {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.04em;
    color: var(--text);
    margin-top: 2px;
  }

  .sf-contact a {
    color: var(--green);
    text-decoration: none;
  }

  .sf-contact a:hover {
    color: var(--green2);
    text-decoration: underline;
  }

  .sf-rule {
    width: 24px;
    height: 1px;
    background: var(--border2);
    margin-bottom: 2px;
  }


  /* ── ICON ── */
  .hero-icon-wrap {
    position: relative;
    width: 110px; height: 110px;
    margin: 0 auto 4px;
    z-index: 2;
  }
  .hero-icon {
    width: 110px; height: 110px;
    border-radius: 50%;
    object-fit: cover;
    object-position: 45% 18%;
    border: 2px solid var(--green);
    box-shadow: 0 0 20px rgba(0,232,122,0.25), 0 0 0 4px rgba(0,232,122,0.06);
    display: block;
    background: #fff;
  }

  /* ── FIELD ROW equal width + height fix ── */
  .field-row > .field-group { min-width: 0; }
  .field-row .field-input,
  .field-row .field-select {
    width: 100%;
    min-width: 0;
    height: 50px;
    padding: 0 14px;
    font-size: 14px;
    line-height: 50px;
    box-sizing: border-box;
    -webkit-appearance: none;
    appearance: none;
  }

  /* ── RECOMMENDATION — verdict line at top ── */
  .rec-verdict {
    display: block;
    font-weight: 700;
    margin-bottom: 8px;
    line-height: 1.4;
  }
  .rec-verdict.deny  { color: var(--red); }
  .rec-verdict.caution { color: var(--amber); }
  .rec-verdict.pass  { color: var(--green); }

  /* ── HEADER ── */
  .hdr {
    position: sticky; top: 0; z-index: 100;
    background: rgba(6,13,8,0.95);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border-bottom: 1px solid var(--border);
    padding: 0 16px; height: 56px;
    display: flex; align-items: center; justify-content: space-between;
  }

  .logo {
    display: flex;
    align-items: center;
    gap: 0;
    transform: translate(-8px, 3px);
  }

  .logo-text {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 20px;
    letter-spacing: 0.08em;
    color: var(--white);
  }

  .logo-copy {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 1px;
  }

  .logo-text em {
    color: var(--green);
    font-style: normal;
  }

  .logo-ed {
    display: block;
    font-size: 9px;
    letter-spacing: 0.14em;
    color: var(--green3);
    margin-top: -1px;
    font-weight: 300;
  }

  .required-mark {
    color: var(--green);
    margin-left: 4px;
    font-weight: 700;
  }

  .hdr-right { display: flex; align-items: center; gap: 10px; }

  .release-control-toggle {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 32px;
    padding: 0 4px;
    border: 0;
    background: transparent;
    color: inherit;
    cursor: pointer;
  }

  .release-control-toggle:focus-visible,
  .release-control-close:focus-visible {
    outline: 2px solid var(--green);
    outline-offset: 3px;
  }

  #fc-language-select:focus-visible,
  .release-control-toggle:focus-visible,
  .agent-api-summary:focus-visible,
  .tt-opt:focus-visible {
    outline: 2px solid var(--green);
    outline-offset: 3px;
    box-shadow: 0 0 0 3px rgba(0,232,122,0.18);
  }

  .release-control-dialog {
    width: min(520px, 100vw);
    max-width: none;
    height: 100dvh;
    max-height: none;
    margin: 0 0 0 auto;
    padding: 0;
    border: 0;
    border-left: 1px solid var(--border2);
    background: #09110e;
    color: var(--text);
  }

  .release-control-dialog::backdrop {
    background: rgba(0,0,0,0.62);
  }

  .release-control-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 64px;
    padding: 0 20px;
    border-bottom: 1px solid var(--border);
  }

  .release-control-title {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 24px;
    letter-spacing: 0.08em;
    color: var(--white);
  }

  .release-control-close {
    width: 40px;
    height: 40px;
    border: 0;
    background: transparent;
    color: var(--text-mid);
    font-size: 22px;
    cursor: pointer;
  }

  .release-control-body {
    height: calc(100dvh - 64px);
    overflow: auto;
  }

  .release-control-section {
    padding: 18px 20px;
    border-bottom: 1px solid var(--border);
  }

  .release-control-section-title {
    margin-bottom: 10px;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--text-dim);
  }

  .release-control-summary {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 10px;
  }

  .release-control-status {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 15px;
    font-weight: 600;
    color: var(--green);
  }

  .release-control-status.is-warn { color: var(--amber); }
  .release-control-status.is-blocked { color: var(--red); }

  .release-control-meta,
  .release-control-list,
  .release-control-row {
    font-family: 'Barlow', sans-serif;
    font-size: 11px;
    line-height: 1.55;
    color: var(--text-mid);
  }

  .release-control-list {
    display: grid;
	    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .release-control-list code,
  .release-control-meta code {
    color: var(--text);
    overflow-wrap: anywhere;
  }

  .release-control-freshness {
    display: grid;
    gap: 0;
    border-top: 1px solid var(--border);
  }

  .release-control-row {
    display: grid;
    grid-template-columns: minmax(120px, 1fr) auto auto;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid var(--border);
    align-items: center;
  }

  .platform-release-banner {
    display: flex;
    align-items: center;
    gap: 9px;
    min-height: 38px;
    padding: 8px 16px;
    border-bottom: 1px solid rgba(255,176,32,0.42);
    background: #211a0d;
    color: #ffd68a;
    font-family: 'Barlow', sans-serif;
    font-size: 12px;
    line-height: 1.45;
  }
  .platform-release-banner[hidden] { display: none; }
  .platform-release-banner::before {
    content: '';
    width: 7px;
    height: 7px;
    flex: 0 0 7px;
    border-radius: 50%;
    background: var(--amber);
  }
  .platform-release-banner.is-blocked {
    border-bottom-color: rgba(255,58,74,0.5);
    background: #241014;
    color: #ffabb2;
  }
  .platform-release-banner.is-blocked::before { background: var(--red); }

  .live-dot {
    width: 6px; height: 6px;
    border-radius: 50%;
    background: var(--green);
    box-shadow: 0 0 6px var(--green);
    animation: blink 2s ease-in-out infinite;
  }

  @keyframes blink { 0%,100%{opacity:1} 50%{opacity:.2} }

  .hdr-label { font-size: 10px; letter-spacing: 0.12em; color: var(--text-dim); font-weight: 300; }

  .language-switcher {
    display: inline-flex;
    align-items: center;
    gap: 0;
    border: 1px solid var(--border2);
    background: rgba(255,255,255,0.025);
    color: var(--text-mid);
    padding: 5px 8px;
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  .language-switcher select {
    min-width: 116px;
    min-height: 28px;
    border: 0;
    background: transparent;
    color: var(--white);
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.04em;
    cursor: pointer;
  }

  .language-switcher option {
    color: #07110d;
    background: #e8f8ee;
  }

  /* ── HERO ── */
  .hero {
    position: relative; padding: 48px 24px 40px; overflow: hidden;
    text-align: center; display: flex; flex-direction: column;
    align-items: center; gap: 8px; border-bottom: 1px solid var(--border);
  }

  .hero::before {
    content: ''; position: absolute; top: -80px; left: 50%; transform: translateX(-50%);
    width: 380px; height: 380px; border-radius: 50%;
    border: 1px solid var(--green-ring); pointer-events: none;
  }

  .hero::after {
    content: ''; position: absolute; top: -30px; left: 50%; transform: translateX(-50%);
    width: 220px; height: 220px; border-radius: 50%;
    border: 1px solid rgba(0,232,122,0.04); pointer-events: none;
  }

  .hero-eyebrow {
    position: relative;
    font-size: 10px; letter-spacing: 0.26em; color: var(--green2);
    text-transform: uppercase; font-weight: 400; z-index: 1;
  }

  .hero-title {
    position: relative;
    font-family: 'Bebas Neue', sans-serif; font-size: 60px;
    letter-spacing: 0.04em; color: var(--white); line-height: 0.92;
    text-shadow: 0 0 50px rgba(0,232,122,0.1); z-index: 1;
  }

  .hero-title em { color: var(--green); font-style: normal; }

  .hero-desc {
    position: relative;
    font-size: 13px; font-weight: 300; color: var(--text-mid);
    max-width: 280px; line-height: 1.7; margin-top: 6px;
    font-family: 'Barlow', sans-serif; z-index: 1;
  }

  .hero-note {
    position: relative;
    margin-top: 10px;
    font-size: 10px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--green3);
    z-index: 1;
  }

  .service-shell {
    padding: 22px 20px 24px;
    border-bottom: 1px solid var(--border);
    background: linear-gradient(180deg, rgba(16,31,20,0.9), rgba(9,18,16,0.92));
    display: flex;
    flex-direction: column;
    gap: 14px;
  }

  .service-label {
    font-size: 10px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--green3);
  }

  .service-switcher {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
  }

  .service-chip {
    border: 1px solid var(--border2);
    background: rgba(255,255,255,0.02);
    color: var(--text-mid);
    padding: 14px 14px 12px;
    text-align: left;
    cursor: pointer;
    transition: border-color 0.2s, background 0.2s, color 0.2s, transform 0.2s;
  }

  .service-chip.active {
    border-color: var(--green);
    background: rgba(0,232,122,0.08);
    color: var(--white);
    transform: translateY(-1px);
  }

  .service-chip:disabled {
    cursor: not-allowed;
    opacity: 0.46;
    transform: none;
  }

  .service-chip-title {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 8px;
    font-family: 'Bebas Neue', sans-serif;
    font-size: 22px;
    letter-spacing: 0.06em;
    line-height: 1.05;
  }

  .domain-stage-badge {
    display: inline-flex;
    align-items: center;
    border: 1px solid rgba(224,144,32,0.36);
    border-radius: 999px;
    background: rgba(224,144,32,0.10);
    color: #ffd79a;
    padding: 3px 7px 2px;
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.08em;
    line-height: 1;
    text-transform: uppercase;
    white-space: nowrap;
  }

  .dvs-kicker .domain-stage-badge {
    margin-left: 8px;
    vertical-align: middle;
  }

  .service-chip-sub {
    display: block;
    margin-top: 8px;
    font-family: 'Barlow', sans-serif;
    font-size: 11px;
    line-height: 1.5;
    color: inherit;
    opacity: 0.86;
  }

  .service-brief {
    font-family: 'Barlow', sans-serif;
    font-size: 12px;
    line-height: 1.75;
    color: var(--text-mid);
    max-width: 520px;
  }

  .service-panel {
    display: block;
  }

  .service-panel[hidden] {
    display: none !important;
  }

  .dvs-panel {
    padding: 28px 20px 30px;
    background: linear-gradient(180deg, rgba(9,18,16,0.94), rgba(6,13,8,1));
    border-bottom: 1px solid var(--border);
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  .dvs-kicker {
    font-size: 10px;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--green2);
  }

  .dvs-title {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 42px;
    line-height: 0.94;
    letter-spacing: 0.05em;
    color: var(--white);
  }

  .dvs-copy {
    max-width: 520px;
    font-family: 'Barlow', sans-serif;
    font-size: 13px;
    line-height: 1.8;
    color: var(--text-mid);
  }

  /* ── IV progress stepper ── */
  .dvs-stepper {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 0;
    margin: 4px 0 8px;
    padding: 0;
    list-style: none;
    border: 1px solid var(--border);
    background: rgba(255,255,255,0.02);
  }
  .dvs-step {
    position: relative;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 10px;
    border-right: 1px solid var(--border);
    min-width: 0;
  }
  .dvs-step:last-child { border-right: 0; }
  .dvs-step-num {
    flex-shrink: 0;
    width: 22px; height: 22px;
    border: 1px solid var(--border2);
    display: flex; align-items: center; justify-content: center;
    font-family: 'Bebas Neue', sans-serif;
    font-size: 13px;
    color: var(--text-dim);
    background: transparent;
    transition: background 0.2s, color 0.2s, border-color 0.2s;
  }
  .dvs-step-label {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 11px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-dim);
    line-height: 1.2;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    transition: color 0.2s;
  }
  .dvs-step.is-active .dvs-step-num {
    border-color: var(--green);
    color: var(--green);
    background: rgba(0,232,122,0.08);
  }
  .dvs-step.is-active .dvs-step-label { color: var(--white); }
  .dvs-step.is-done .dvs-step-num {
    border-color: var(--green);
    color: #081411;
    background: var(--green);
  }
  .dvs-step.is-done .dvs-step-label { color: var(--green3); }

  .dvs-grid {
    display: grid;
    gap: 12px;
  }

  .dvs-card {
    border: 1px solid var(--border);
    background: rgba(255,255,255,0.02);
    padding: 14px;
    display: grid;
    gap: 6px;
  }

  .dvs-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
  }

  .dvs-card-title {
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--white);
  }

  .dvs-card-badge {
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.1em;
    padding: 2px 8px;
    border: 1px solid rgba(0,232,122,0.3);
    color: var(--green);
  }

  .dvs-card-copy {
    font-family: 'Barlow', sans-serif;
    font-size: 12px;
    line-height: 1.7;
    color: var(--text-mid);
  }

  .dvs-handoff {
    border: 1px solid rgba(0,232,122,0.18);
    background: rgba(0,232,122,0.04);
    padding: 16px;
    display: grid;
    gap: 10px;
  }

  .dvs-handoff-title {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--green);
  }

  .dvs-handoff-copy {
    font-family: 'Barlow', sans-serif;
    font-size: 12px;
    line-height: 1.7;
    color: var(--text-mid);
  }

  .dvs-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
  }

  .dvs-action,
  .dvs-secondary {
    padding: 12px 16px;
    border: 1px solid var(--border2);
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 12px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    cursor: pointer;
    background: transparent;
    color: var(--text-mid);
  }

  .dvs-action {
    border-color: var(--green);
    color: var(--green);
    background: rgba(0,232,122,0.04);
  }

  .dvs-action:active,
  .dvs-secondary:active {
    transform: translateY(1px);
  }

  .dvs-runtime-grid,
  .dvs-capture-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 12px;
  }

  .dvs-field {
    display: grid;
    gap: 6px;
  }

  .dvs-field label {
    font-size: 10px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--text-dim);
  }

  .dvs-input {
    width: 100%;
    border: 1px solid var(--border2);
    background: rgba(255,255,255,0.03);
    color: var(--white);
    padding: 11px 12px;
    font-family: 'Barlow', sans-serif;
    font-size: 13px;
  }

  .dvs-input:focus {
    outline: none;
    border-color: rgba(0,232,122,0.42);
    box-shadow: 0 0 0 1px rgba(0,232,122,0.12);
  }

  .dvs-status {
    display: block;
    padding: 12px 14px;
    border: 1px solid rgba(255,255,255,0.08);
    background: rgba(255,255,255,0.03);
    color: var(--text-mid);
    font-family: 'Barlow', sans-serif;
    font-size: 12px;
    line-height: 1.7;
  }

  .dvs-token-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
  }

  .dvs-token {
    border: 1px solid var(--border2);
    background: rgba(255,255,255,0.03);
    padding: 7px 10px;
    font-family: 'Barlow', sans-serif;
    font-size: 11px;
    color: var(--text-mid);
    letter-spacing: 0.03em;
  }

  .dvs-preview-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 10px;
  }

  .dvs-preview {
    border: 1px solid var(--border);
    background: rgba(255,255,255,0.02);
    padding: 10px;
    display: grid;
    gap: 8px;
  }

  .dvs-preview-label {
    font-size: 10px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--text-dim);
  }

  .dvs-preview-frame {
    min-height: 132px;
    border: 1px dashed rgba(255,255,255,0.14);
    background: rgba(255,255,255,0.02);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
  }

  .dvs-preview-frame img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .dvs-preview-empty {
    padding: 18px 12px;
    text-align: center;
    font-family: 'Barlow', sans-serif;
    font-size: 11px;
    line-height: 1.6;
    color: var(--text-dim);
  }

  .dvs-preview-meta {
    font-family: 'Barlow', sans-serif;
    font-size: 11px;
    line-height: 1.6;
    color: var(--text-mid);
  }

  .dvs-extracted-panel {
    border: 1px solid var(--border);
    background: rgba(255,255,255,0.02);
    padding: 12px;
    display: grid;
    gap: 10px;
  }

  .dvs-extracted-panel[hidden] {
    display: none !important;
  }

  .dvs-extracted-title {
    font-size: 11px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--text-dim);
  }

  .dvs-extracted-copy {
    font-family: 'Barlow', sans-serif;
    font-size: 11px;
    line-height: 1.6;
    color: var(--text-mid);
  }

  .dvs-extracted-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 10px;
  }

  .dvs-extracted-item {
    border: 1px solid var(--border2);
    background: rgba(255,255,255,0.03);
    padding: 10px;
    display: grid;
    gap: 6px;
  }

  .dvs-extracted-label {
    font-size: 10px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--text-dim);
  }

  .dvs-extracted-value {
    font-family: 'Barlow', sans-serif;
    font-size: 12px;
    line-height: 1.5;
    color: var(--white);
    word-break: break-word;
  }

  .dvs-log-panel {
    border: 1px solid var(--border);
    background: rgba(255,255,255,0.02);
    padding: 12px;
    display: grid;
    gap: 10px;
  }

  .dvs-log-title {
    font-size: 11px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--text-dim);
  }

  .dvs-log-copy {
    font-family: 'Barlow', sans-serif;
    font-size: 11px;
    line-height: 1.6;
    color: var(--text-mid);
  }

  .dvs-disclosure {
    border: 1px solid var(--border);
    background: rgba(255,255,255,0.02);
    padding: 12px;
    display: grid;
    gap: 10px;
  }

  .dvs-disclosure-toggle {
    list-style: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
  }

  .dvs-disclosure-toggle::-webkit-details-marker {
    display: none;
  }

  .dvs-disclosure-toggle::marker {
    display: none;
  }

  .dvs-disclosure-hint {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 11px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--text-dim);
  }

  .dvs-disclosure[open] .dvs-disclosure-hint::before {
    content: '▾';
  }

  .dvs-disclosure:not([open]) .dvs-disclosure-hint::before {
    content: '▸';
  }

  .dvs-disclosure-body {
    display: grid;
    gap: 10px;
  }

  .dvs-log-list {
    display: grid;
    gap: 8px;
  }

  .dvs-log-entry {
    border: 1px solid var(--border2);
    background: rgba(255,255,255,0.03);
    padding: 10px;
    display: grid;
    gap: 6px;
  }

  .dvs-log-entry-top {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    justify-content: space-between;
  }

  .dvs-log-endpoint {
    font-family: 'IBM Plex Mono', monospace;
    font-size: 11px;
    color: var(--white);
    word-break: break-all;
  }

  .dvs-log-pill {
    border: 1px solid var(--border2);
    background: rgba(255,255,255,0.04);
    padding: 4px 7px;
    font-size: 10px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--text-dim);
  }

  .dvs-log-pill.ok {
    border-color: rgba(0,232,122,.28);
    color: #b9ffd8;
  }

  .dvs-log-pill.warn {
    border-color: rgba(224,144,32,.28);
    color: #ffd79a;
  }

  .dvs-log-pill.error {
    border-color: rgba(235,79,96,.28);
    color: #ffc1ca;
  }

  .dvs-log-detail {
    font-family: 'Barlow', sans-serif;
    font-size: 11px;
    line-height: 1.6;
    color: var(--text-mid);
    word-break: break-word;
  }

  .dvs-stack {
    display: grid;
    gap: 12px;
  }

  .dvs-camera-modal[hidden] {
    display: none !important;
  }

  .dvs-camera-modal {
    position: fixed;
    inset: 0;
    z-index: 2000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
  }

  .dvs-camera-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.76);
    backdrop-filter: blur(10px);
  }

  .dvs-camera-dialog {
    position: relative;
    width: min(760px, 100%);
    border: 1px solid rgba(0,232,122,0.18);
    background: linear-gradient(180deg, rgba(9,18,16,0.98), rgba(6,13,8,0.98));
    padding: 18px;
    display: grid;
    gap: 12px;
  }

  .dvs-camera-header {
    display: grid;
    gap: 10px;
  }

  .dvs-camera-title {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--green);
  }

  .dvs-camera-help {
    border: 1px solid rgba(255,255,255,0.08);
    background: rgba(7,13,11,0.54);
  }

  .dvs-camera-help[open] {
    border-color: rgba(0,232,122,0.18);
  }

  .dvs-camera-help-toggle {
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 9px 11px;
    cursor: pointer;
    font-size: 10px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--text-dim);
  }

  .dvs-camera-help-toggle::-webkit-details-marker {
    display: none;
  }

  .dvs-camera-help-hint::before {
    content: '▾';
  }

  .dvs-camera-help:not([open]) .dvs-camera-help-hint::before {
    content: '▸';
  }

  .dvs-camera-help-body {
    padding: 0 11px 10px;
    display: grid;
    gap: 8px;
  }

  .dvs-camera-copy {
    font-family: 'Barlow', sans-serif;
    font-size: 12px;
    line-height: 1.7;
    color: var(--text-mid);
  }

  .dvs-camera-stage {
    position: relative;
    overflow: hidden;
    border: 1px solid var(--border);
    background: #010402;
    min-height: min(68vh, 520px);
  }

  .dvs-camera-video {
    width: 100%;
    max-height: min(68vh, 520px);
    display: block;
    background: #010402;
    object-fit: cover;
  }

  .dvs-camera-guide {
    position: absolute;
    inset: 12% 14%;
    border: 2px solid rgba(0,232,122,0.72);
    box-shadow: 0 0 0 999px rgba(2,8,7,0.42);
    pointer-events: none;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
  }

  .dvs-camera-guide[data-guide="selfie"] {
    inset: 11% 22%;
    border-radius: 999px;
  }

  .dvs-camera-guide[data-guide="documentPassport"] {
    inset: 8% 20% 8% 20%;
    border-radius: 22px;
  }

  .dvs-camera-guide.is-ready {
    border-color: #bfffe0;
    box-shadow: 0 0 0 999px rgba(2,8,7,0.24), 0 0 22px rgba(0,232,122,0.24);
    transform: scale(0.992);
  }

  .dvs-camera-signal {
    padding: 9px 11px;
    border: 1px solid rgba(255,255,255,0.08);
    background: rgba(7,13,11,0.82);
    color: var(--text-mid);
    font-size: 11px;
    line-height: 1.55;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }

  .dvs-camera-signal[data-tone="ok"] {
    border-color: rgba(0,232,122,0.28);
    color: #c4ffe0;
  }

  .dvs-camera-signal[data-tone="warn"] {
    border-color: rgba(224,144,32,0.28);
    color: #ffd79a;
  }

  .dvs-camera-signal[data-tone="error"] {
    border-color: rgba(235,79,96,0.30);
    color: #ffc1ca;
  }

  .dvs-camera-controls {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
  }

  .dvs-camera-note {
    font-family: 'Barlow', sans-serif;
    font-size: 11px;
    line-height: 1.6;
    color: var(--text-dim);
  }

  /* ── SEARCH FORM ── */
  .search-section {
    padding: 28px 20px 24px; background: var(--bg2);
    border-bottom: 1px solid var(--border);
    display: flex; flex-direction: column; gap: 20px;
  }

  .section-kicker {
    font-size: 10px; letter-spacing: 0.2em; text-transform: uppercase;
    color: var(--green3); font-weight: 400; margin-bottom: -4px;
  }

  .type-toggle { display: flex; border: 1px solid var(--border2); overflow: hidden; }

  .tt-opt {
    flex: 1; padding: 11px 0; text-align: center;
    font-family: 'Barlow Condensed', sans-serif; font-size: 13px;
    font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase;
    color: var(--text-dim); background: var(--surface); border: none;
    cursor: pointer; transition: background 0.2s, color 0.2s;
    border-right: 1px solid var(--border2);
  }

  .tt-opt:last-child { border-right: none; }
  .tt-opt.active { background: var(--green); color: #000; }

  .field-group { display: flex; flex-direction: column; gap: 6px; }

  .field-label {
    font-size: 10px; letter-spacing: 0.15em; text-transform: uppercase;
    color: var(--text-dim); font-weight: 400;
  }

  .field-input {
    width: 100%; background: var(--surface); border: 1px solid var(--border2);
    padding: 14px 16px; font-family: 'Barlow Condensed', sans-serif;
    font-size: 18px; font-weight: 500; color: var(--white); letter-spacing: 0.02em;
    outline: none; -webkit-appearance: none; border-radius: 0;
    transition: border-color 0.2s, box-shadow 0.2s;
    caret-color: var(--green);
  }

  .field-input:focus {
    border-color: var(--green2);
    box-shadow: 0 0 0 1px var(--green-glow), inset 0 0 20px var(--green-dim);
  }

  .field-input::placeholder { color: var(--text-dim); font-weight: 300; font-size: 14px; }

  .field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }

  .field-select {
    width: 100%; background: var(--surface); border: 1px solid var(--border2);
    padding: 14px 16px; font-family: 'Barlow Condensed', sans-serif;
    font-size: 14px; color: var(--text-mid); outline: none;
    -webkit-appearance: none; border-radius: 0; cursor: pointer;
    transition: border-color 0.2s;
  }

  .field-select:focus { border-color: var(--green2); }

  .field-input:focus-visible,
  .field-select:focus-visible {
    outline: 2px solid var(--green);
    outline-offset: 2px;
  }

  .field-group-spaced { margin-bottom: 14px; }
  .field-label-spaced { margin-bottom: 8px; }

  .fields-person, .fields-entity, .fields-vessel { display: flex; flex-direction: column; gap: 16px; }
  .fields-person[hidden], .fields-entity[hidden], .fields-vessel[hidden] { display: none !important; }

  .identity-details {
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
  }

  .identity-details-summary {
    min-height: 42px;
    padding: 10px 2px;
    list-style: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--text-mid);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  .identity-details-summary::-webkit-details-marker { display: none; }
  .identity-details-summary::marker { display: none; }
  .identity-details-summary::before {
    content: '▸';
    color: var(--green2);
    font-size: 12px;
  }
  .identity-details[open] > .identity-details-summary::before { content: '▾'; }

  .identity-details-count {
    min-width: 20px;
    margin-left: auto;
    padding: 2px 6px;
    border: 1px solid var(--border2);
    border-radius: 4px;
    color: var(--green3);
    text-align: center;
    font: 600 10px/1.3 'IBM Plex Mono', monospace;
  }
  .identity-details-count[hidden] { display: none; }

  .identity-details-body {
    display: grid;
    gap: 12px;
    padding: 4px 0 14px;
  }

  .modules-row {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    background: var(--surface);
    border: 1px solid var(--border2);
    overflow: hidden;
  }

  .mod {
    position: relative;
    padding: 10px 10px 10px 20px;
    text-align: left;
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--green3);
    background: var(--surface);
    border-right: 1px solid var(--border);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .mod:last-child { border-right: 0; }
  .mod::before {
    content: '';
    position: absolute;
    left: 10px; top: 50%;
    width: 5px; height: 5px;
    transform: translateY(-50%);
    background: var(--green);
    box-shadow: 0 0 6px var(--green-glow, rgba(0,232,122,0.6));
  }
  @media (max-width: 479px) {
    .modules-row { grid-template-columns: repeat(2, 1fr); }
    .mod {
      display: flex;
      align-items: center;
      min-height: 44px;
      line-height: 1.25;
      letter-spacing: 0;
      white-space: normal;
      overflow: visible;
      overflow-wrap: anywhere;
      text-overflow: clip;
    }
    .mod:nth-child(2) { border-right: 0; }
    .mod:nth-child(1), .mod:nth-child(2) { border-bottom: 1px solid var(--border); }
  }

  .agent-api-card {
    margin: 18px 20px 0;
    padding: 18px;
    border: 1px solid rgba(0,232,122,0.20);
    background:
      radial-gradient(circle at 18% 0%, rgba(0,232,122,0.12), transparent 34%),
      linear-gradient(145deg, rgba(7,18,14,0.96), rgba(13,24,19,0.90));
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.025);
  }

  .agent-api-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 14px;
  }

  .agent-api-heading {
    display: grid;
    flex: 1 1 auto;
    min-width: 0;
    gap: 6px;
  }

  .agent-api-heading .section-kicker {
    margin-bottom: 0;
    line-height: 1.4;
  }

  .agent-api-title {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 24px;
    letter-spacing: 0.08em;
    color: var(--white);
    line-height: 1.08;
    overflow-wrap: anywhere;
  }

  .agent-api-pill {
    border: 1px solid rgba(0,232,122,0.26);
    background: rgba(0,232,122,0.08);
    color: var(--green2);
    padding: 5px 8px 4px;
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    line-height: 1.3;
    text-align: center;
    overflow-wrap: anywhere;
  }

  .agent-api-copy {
    color: var(--text-mid);
    font-size: 12px;
    line-height: 1.65;
    margin-bottom: 14px;
  }

  .agent-api-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    border: 1px solid var(--border2);
    background: rgba(255,255,255,0.02);
  }

  .agent-api-step {
    padding: 12px;
    border-right: 1px solid var(--border);
  }
  .agent-api-step:last-child { border-right: 0; }

  .agent-api-step-label {
    color: var(--green3);
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    margin-bottom: 6px;
  }

  .agent-api-step code,
  .agent-api-code {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    color: #d9ffe8;
    font-size: 11px;
    line-height: 1.55;
    word-break: break-word;
  }

  .agent-api-code {
    display: block;
    margin-top: 14px;
    padding: 12px;
    border: 1px solid rgba(255,255,255,0.08);
    background: rgba(0,0,0,0.26);
    overflow-x: auto;
    white-space: pre-wrap;
  }

  .agent-api-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 12px;
  }

  .agent-api-link {
    color: var(--green2);
    border-bottom: 1px solid rgba(0,232,122,0.35);
    text-decoration: none;
    font-size: 11px;
    letter-spacing: 0.04em;
  }

  @media (max-width: 720px) {
    .agent-api-grid { grid-template-columns: 1fr; }
    .agent-api-step { border-right: 0; border-bottom: 1px solid var(--border); }
    .agent-api-step:last-child { border-bottom: 0; }
    .agent-api-head { flex-direction: column; }
  }

  .submit-btn {
    position: relative; width: 100%; padding: 18px; background: transparent;
    border: 1px solid var(--green); font-family: 'Bebas Neue', sans-serif;
    font-size: 22px; letter-spacing: 0.12em; color: var(--green);
    cursor: pointer; overflow: hidden; transition: color 0.25s;
  }

  .submit-btn::before {
    content: ''; position: absolute; inset: 0; background: var(--green);
    transform: translateX(-101%);
    transition: transform 0.3s cubic-bezier(0.4,0,0.2,1);
  }

  .submit-btn:active::before { transform: translateX(0); }
  .submit-btn:active { color: #000; }
  .submit-btn span { position: relative; z-index: 1; }

  /* ── DIVIDER ── */
  .result-divider {
    display: flex; align-items: center; gap: 14px; padding: 20px 20px 0;
  }

  .rd-line { flex: 1; height: 1px; background: var(--border); }

  .rd-label {
    font-size: 9px; letter-spacing: 0.22em; text-transform: uppercase;
    color: var(--text-dim); font-weight: 300; white-space: nowrap;
  }

  /* ── SUBJECT MASTHEAD ── */
  .subject-masthead {
    background: var(--grad-bg); padding: 28px 20px 24px;
    border-bottom: 1px solid var(--border);
    display: flex; flex-direction: column; gap: 18px;
    position: relative; overflow: hidden;
  }

  .follow-on-progress {
    --follow-on-progress: 0%;
    position: relative;
    padding: 15px 20px 17px;
    border-bottom: 1px solid var(--border);
    background: rgba(255,255,255,0.018);
  }

  [data-progress-step="0"] { --status-progress: 0%; --follow-on-progress: 0%; }
  [data-progress-step="5"] { --status-progress: 5%; --follow-on-progress: 5%; }
  [data-progress-step="10"] { --status-progress: 10%; --follow-on-progress: 10%; }
  [data-progress-step="15"] { --status-progress: 15%; --follow-on-progress: 15%; }
  [data-progress-step="20"] { --status-progress: 20%; --follow-on-progress: 20%; }
  [data-progress-step="25"] { --status-progress: 25%; --follow-on-progress: 25%; }
  [data-progress-step="30"] { --status-progress: 30%; --follow-on-progress: 30%; }
  [data-progress-step="35"] { --status-progress: 35%; --follow-on-progress: 35%; }
  [data-progress-step="40"] { --status-progress: 40%; --follow-on-progress: 40%; }
  [data-progress-step="45"] { --status-progress: 45%; --follow-on-progress: 45%; }
  [data-progress-step="50"] { --status-progress: 50%; --follow-on-progress: 50%; }
  [data-progress-step="55"] { --status-progress: 55%; --follow-on-progress: 55%; }
  [data-progress-step="60"] { --status-progress: 60%; --follow-on-progress: 60%; }
  [data-progress-step="65"] { --status-progress: 65%; --follow-on-progress: 65%; }
  [data-progress-step="70"] { --status-progress: 70%; --follow-on-progress: 70%; }
  [data-progress-step="75"] { --status-progress: 75%; --follow-on-progress: 75%; }
  [data-progress-step="80"] { --status-progress: 80%; --follow-on-progress: 80%; }
  [data-progress-step="85"] { --status-progress: 85%; --follow-on-progress: 85%; }
  [data-progress-step="90"] { --status-progress: 90%; --follow-on-progress: 90%; }
  [data-progress-step="95"] { --status-progress: 95%; --follow-on-progress: 95%; }
  [data-progress-step="100"] { --status-progress: 100%; --follow-on-progress: 100%; }

  .follow-on-progress[hidden] { display: none; }

  .follow-on-progress::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: var(--follow-on-progress);
    height: 2px;
    background: var(--green);
    transition: width 0.25s ease;
  }

  .follow-on-progress.is-warn::after { background: var(--amber); }
  .follow-on-progress.is-error::after { background: var(--red); }

  .follow-on-progress-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 11px;
  }

  .follow-on-progress-title {
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--text-mid);
  }

  .follow-on-progress-final {
    font: 500 10px/1.3 ui-monospace, SFMono-Regular, Menlo, monospace;
    color: var(--amber);
    white-space: nowrap;
  }

  .follow-on-progress-final.is-ready { color: var(--green); }

  .follow-on-domain-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border-top: 1px solid var(--border);
  }

  .follow-on-domain {
    min-width: 0;
    padding: 10px 12px 0;
    border-left: 1px solid var(--border);
  }

  .follow-on-domain:first-child { border-left: 0; padding-left: 0; }
  .follow-on-domain:last-child { padding-right: 0; }

  .follow-on-domain-name {
    display: block;
    margin-bottom: 4px;
    font-size: 10px;
    color: var(--text-dim);
  }

  .follow-on-domain-state {
    display: block;
    min-height: 18px;
    font: 600 13px/1.35 'Barlow Condensed', sans-serif;
    color: var(--green);
    overflow-wrap: anywhere;
  }

  .follow-on-domain-state.is-running,
  .follow-on-domain-state.is-warn { color: var(--amber); }
  .follow-on-domain-state.is-error { color: var(--red); }

  .follow-on-progress-meta {
    margin-top: 4px;
    font: 400 10px/1.4 'Barlow', sans-serif;
    color: var(--text-dim);
  }

  /* Green glow instead of red */
  .subject-masthead::after {
    content: ''; position: absolute; bottom: -40px; left: 50%;
    transform: translateX(-50%); width: 260px; height: 100px;
    background: radial-gradient(ellipse, rgba(0,232,122,0.06) 0%, transparent 70%);
    pointer-events: none;
  }

  .sm-ref { font-size: 10px; letter-spacing: 0.16em; color: var(--green3); text-transform: uppercase; font-weight: 300; }
  .sm-name { font-family: 'Bebas Neue', sans-serif; font-size: 36px; letter-spacing: 0.04em; color: var(--white); line-height: 1.0; }
  .sm-meta { font-size: 12px; color: var(--text-mid); font-weight: 300; font-family: 'Barlow', sans-serif; line-height: 1.7; }

  /* Risk ring */
  .ring-wrap { position: relative; width: 160px; height: 160px; align-self: center; }
  .ring-svg { width: 160px; height: 160px; transform: rotate(-90deg); }
  .ring-track { fill: none; stroke: var(--border2); stroke-width: 7; }
  .ring-fill {
    fill: none; stroke: var(--red); stroke-width: 7;
    stroke-linecap: butt; stroke-dasharray: 419; stroke-dashoffset: 419;
    filter: drop-shadow(0 0 6px var(--red));
    transition: stroke-dashoffset 0.55s cubic-bezier(0.4,0,0.2,1), stroke 0.25s ease, filter 0.25s ease;
  }
  .ring-fill.ring-tone-clear { stroke: var(--green); filter: drop-shadow(0 0 6px var(--green)); }
  .ring-fill.ring-tone-warn { stroke: var(--amber); filter: drop-shadow(0 0 6px var(--amber)); }
  .ring-fill.ring-tone-risk { stroke: var(--red); filter: drop-shadow(0 0 6px var(--red)); }
  .ring-fill[data-risk-step="0"] { stroke-dashoffset: 419; }
  .ring-fill[data-risk-step="5"] { stroke-dashoffset: 398.05; }
  .ring-fill[data-risk-step="10"] { stroke-dashoffset: 377.1; }
  .ring-fill[data-risk-step="15"] { stroke-dashoffset: 356.15; }
  .ring-fill[data-risk-step="20"] { stroke-dashoffset: 335.2; }
  .ring-fill[data-risk-step="25"] { stroke-dashoffset: 314.25; }
  .ring-fill[data-risk-step="30"] { stroke-dashoffset: 293.3; }
  .ring-fill[data-risk-step="35"] { stroke-dashoffset: 272.35; }
  .ring-fill[data-risk-step="40"] { stroke-dashoffset: 251.4; }
  .ring-fill[data-risk-step="45"] { stroke-dashoffset: 230.45; }
  .ring-fill[data-risk-step="50"] { stroke-dashoffset: 209.5; }
  .ring-fill[data-risk-step="55"] { stroke-dashoffset: 188.55; }
  .ring-fill[data-risk-step="60"] { stroke-dashoffset: 167.6; }
  .ring-fill[data-risk-step="65"] { stroke-dashoffset: 146.65; }
  .ring-fill[data-risk-step="70"] { stroke-dashoffset: 125.7; }
  .ring-fill[data-risk-step="75"] { stroke-dashoffset: 104.75; }
  .ring-fill[data-risk-step="80"] { stroke-dashoffset: 83.8; }
  .ring-fill[data-risk-step="85"] { stroke-dashoffset: 62.85; }
  .ring-fill[data-risk-step="90"] { stroke-dashoffset: 41.9; }
  .ring-fill[data-risk-step="95"] { stroke-dashoffset: 20.95; }
  .ring-fill[data-risk-step="100"] { stroke-dashoffset: 0; }
  .ring-inner { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; }
  .ring-score { font-family: 'Bebas Neue', sans-serif; font-size: 56px; line-height: 1; color: var(--red); text-shadow: 0 0 24px var(--red); letter-spacing: 0.02em; }
  .ring-score.ring-tone-clear { color: var(--green); text-shadow: 0 0 24px var(--green); }
  .ring-score.ring-tone-warn { color: var(--amber); text-shadow: 0 0 24px var(--amber); }
  .ring-score.ring-tone-risk { color: var(--red); text-shadow: 0 0 24px var(--red); }
  .ring-label {
    max-width: calc(100% - 12px);
    min-width: 0;
    margin-top: -2px;
    color: var(--text-dim);
    font-size: 9px;
    line-height: 1.15;
    letter-spacing: 0;
    text-align: center;
    text-transform: uppercase;
    overflow-wrap: anywhere;
  }

  /* Verdict */
  .verdict-strip {
    background: rgba(255,58,74,0.1); border: 1px solid rgba(255,58,74,0.3);
    padding: 11px 16px; display: flex; align-items: center; justify-content: space-between;
    gap: 10px; flex-wrap: wrap; min-width: 0; margin: 0 20px;
  }

  .vs-text { min-width: 0; font-size: 13px; font-weight: 700; letter-spacing: 0; color: var(--red); text-transform: uppercase; overflow-wrap: anywhere; }
  .verdict-strip.verdict-tone-neutral { background: rgba(255,255,255,0.03); border-color: rgba(255,255,255,0.08); }
  .verdict-strip.verdict-tone-neutral .vs-text { color: var(--text-mid); }
  .verdict-strip.verdict-tone-clear { background: rgba(0,232,122,0.08); border-color: rgba(0,232,122,0.25); }
  .verdict-strip.verdict-tone-clear .vs-text { color: var(--green); }
  .verdict-strip.verdict-tone-warn { background: rgba(240,176,32,0.08); border-color: rgba(240,176,32,0.25); }
  .verdict-strip.verdict-tone-warn .vs-text { color: var(--amber); }
  .verdict-strip.verdict-tone-risk { background: rgba(255,70,105,0.12); border-color: rgba(255,70,105,0.28); }
  .verdict-strip.verdict-tone-risk .vs-text { color: #ff6e82; }
  .vs-conf { min-width: 0; font-size: 11px; color: var(--text-mid); font-weight: 300; font-family: 'Barlow', sans-serif; overflow-wrap: anywhere; }

  /* ── AI RECOMMENDATION ── */
  .rec-block {
    padding: 20px; border-top: 2px solid var(--green);
    border-bottom: 1px solid var(--border);
    background: linear-gradient(135deg, rgba(0,232,122,0.05) 0%, transparent 60%);
    display: flex; flex-direction: column; gap: 10px;
  }

  .rec-kicker { min-width: 0; font-size: 10px; letter-spacing: 0; color: var(--green2); text-transform: uppercase; overflow-wrap: anywhere; }

  .rec-text {
    min-width: 0;
    font-size: 14px; font-family: 'Barlow', sans-serif;
    max-width: 72ch;
    font-weight: 300; color: var(--text); line-height: 1.6;
    overflow-wrap: anywhere;
  }

  .rec-text strong { color: var(--red); font-weight: 600; }
  .rec-text .clear { color: var(--green); font-weight: 600; }

  .rec-export {
    width: 100%; padding: 10px 12px;
    font-family: 'Barlow Condensed', sans-serif; font-size: 11px;
    font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase;
    border: 0; color: var(--text-dim);
    background: none; cursor: pointer; transition: border-color 0.15s, color 0.15s;
    text-align: left;
  }

  .rec-export:hover,
  .rec-export:focus-visible,
  .rec-export:active { color: var(--green2); background: rgba(0,232,122,0.08); }
  .rec-export:focus-visible,
  .rec-export-trigger:focus-visible { outline: 2px solid var(--cyan); outline-offset: 2px; }
  .rec-export:disabled,
  .rec-export-trigger:disabled { opacity: 0.45; cursor: not-allowed; }
  .rec-actions { display:flex; align-items:center; margin-top:2px; }
  .rec-export-menu { position: relative; }
  .rec-export-trigger {
    width: 38px;
    height: 38px;
    padding: 0;
    border: 1px solid var(--border2);
    border-radius: 4px;
    display: grid;
    place-items: center;
    background: transparent;
    color: var(--text-mid);
    font: 600 20px/1 'Barlow', sans-serif;
    cursor: pointer;
  }
  .rec-export-trigger:hover,
  .rec-export-trigger[aria-expanded="true"] { border-color: var(--green2); color: var(--green2); }
  .rec-export-menu-items {
    position: absolute;
    z-index: 12;
    top: calc(100% + 6px);
    left: 0;
    width: min(240px, calc(100vw - 48px));
    border: 1px solid var(--border2);
    border-radius: 4px;
    overflow: hidden;
    background: #08110d;
    box-shadow: 0 12px 28px rgba(0,0,0,0.42);
  }
  .rec-export-menu-items[hidden] { display: none; }
  .rec-export + .rec-export { border-top: 1px solid var(--border); }
  .provider-outage-note {
    display:none; margin-top:10px; padding:10px 12px;
    border:1px solid rgba(240,176,32,0.35); background:rgba(240,176,32,0.08);
    color:var(--amber); font:500 12px/1.5 'Barlow', sans-serif;
  }
  .provider-outage-note.show { display:block; }

  .material-digest[hidden] { display: none; }
  .material-digest {
    display: grid;
    gap: 7px;
    max-width: 920px;
    padding-top: 2px;
  }
  .material-digest-row {
    display: grid;
    grid-template-columns: 8px minmax(0, 1fr);
    gap: 10px;
    padding: 5px 0;
  }
  .material-digest-marker {
    width: 5px;
    height: 5px;
    margin-top: 7px;
    background: var(--green2);
  }
  .material-digest-row.risk .material-digest-marker { background: var(--red); }
  .material-digest-row.warn .material-digest-marker { background: var(--amber); }
  .material-digest-content { min-width: 0; }
  .material-digest-heading {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
    flex-wrap: wrap;
    min-width: 0;
  }
  .material-digest-domain {
    min-width: 0;
    color: var(--text-mid);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0;
    text-transform: uppercase;
    overflow-wrap: anywhere;
  }
  .material-digest-status {
    min-width: 0;
    color: var(--text-dim);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: uppercase;
    overflow-wrap: anywhere;
  }
  .material-digest-row.risk .material-digest-status { color: var(--red); }
  .material-digest-row.warn .material-digest-status { color: var(--amber); }
  .material-digest-summary {
    min-width: 0;
    color: var(--text-mid);
    font: 400 12px/1.45 'Barlow', sans-serif;
    overflow-wrap: anywhere;
  }
  .identity-next-field[hidden] { display: none; }
  .identity-next-field {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    max-width: 920px;
    padding: 11px 0 1px;
    border-top: 1px solid var(--border);
  }
  .identity-next-field-label {
    min-width: 0;
    color: #cce2d3;
    font: 500 12px/1.45 'Barlow', sans-serif;
    letter-spacing: 0;
    overflow-wrap: anywhere;
  }
  .identity-next-field-action {
    flex: 0 1 auto;
    min-width: 0;
    padding: 2px 0;
    border: 0;
    background: transparent;
    color: var(--green2);
    cursor: pointer;
    font: 600 12px/1.4 'Barlow', sans-serif;
    letter-spacing: 0;
    text-align: right;
    overflow-wrap: anywhere;
  }
  .identity-next-field-action:hover { color: var(--white); }
  .identity-next-field-action:focus-visible {
    outline: 2px solid var(--green2);
    outline-offset: 4px;
  }
  @media (max-width: 640px) {
    .identity-next-field { align-items: flex-start; flex-direction: column; gap: 6px; }
    .identity-next-field-action { text-align: left; }
  }
  /* ── DECISION-FIRST EVIDENCE DISCLOSURE ── */
  .report-evidence-disclosure {
    min-width: 0;
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
    background: rgba(5,12,9,0.72);
  }
  .report-evidence-summary {
    min-height: 52px;
    padding: 0 var(--content-gutter, 20px);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    color: var(--text-mid);
    cursor: pointer;
    font: 600 12px/1.4 'Barlow Condensed', sans-serif;
    letter-spacing: 0;
    text-align: start;
    text-transform: uppercase;
    list-style: none;
  }
  .report-evidence-summary::-webkit-details-marker { display: none; }
  .report-evidence-summary:hover { color: var(--green2); background: rgba(255,255,255,0.018); }
  .report-evidence-summary:focus-visible { outline: 2px solid var(--cyan); outline-offset: -2px; }
  .report-evidence-caret::before {
    content: '+';
    display: block;
    color: var(--green2);
    font: 500 20px/1 'Barlow', sans-serif;
  }
  .report-evidence-disclosure[open] .report-evidence-caret::before { content: '\2212'; }
  .report-evidence-body { min-width: 0; }
  .report-evidence-disclosure:not([open]) > .report-evidence-body { display: none; }
  .report-evidence-body > .network-section { border-bottom: 0; }
  .identity-resolution-effect[hidden] { display: none; }
  .identity-resolution-effect {
    padding: 12px 0;
    border-bottom: 1px solid var(--border);
    color: var(--ink-2);
  }
  .identity-resolution-effect-copy {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    min-width: 0;
  }
  .identity-resolution-effect-title {
    color: var(--ink);
    font-size: 13px;
    font-weight: 700;
  }
  .identity-resolution-effect-result {
    min-width: 0;
    color: var(--ink-2);
    font-size: 12px;
    text-align: end;
    overflow-wrap: anywhere;
  }
  .identity-resolution-effect-source {
    margin: 5px 0 0;
    color: var(--muted);
    font-size: 11px;
    line-height: 1.45;
    overflow-wrap: anywhere;
  }
  @media (max-width: 560px) {
    .identity-resolution-effect-copy {
      align-items: flex-start;
      flex-direction: column;
      gap: 4px;
    }
    .identity-resolution-effect-result { text-align: start; }
  }
  /* ── CATEGORY BARS ── */
  .cat-bars {
    padding: 20px 20px 8px; display: flex; flex-direction: column; gap: 14px;
    border-bottom: 1px solid var(--border);
  }

  .cat-row { display: flex; flex-direction: column; gap: 6px; }
  .cat-hd { display: flex; align-items: center; justify-content: space-between; }
  .cat-name { font-size: 12px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--text-mid); }
  .cat-status { font-size: 10px; font-weight: 700; letter-spacing: 0.1em; }
  .cat-track { height: 3px; background: var(--border2); position: relative; overflow: hidden; }
  .cat-fill { position: absolute; top: 0; left: 0; height: 100%; animation: barIn 0.9s cubic-bezier(0.4,0,0.2,1) 0.3s forwards; }
  .cat-fill.is-muted { opacity: 0.3; box-shadow: none; }
  .cat-fill[data-fill-width="zero"] { width: 0%; }
  .cat-fill[data-fill-width="low"] { width: 8%; }
  .cat-fill[data-fill-width="count"] { width: 20%; }
  .cat-fill[data-fill-width="info"] { width: 32%; }
  .cat-fill[data-fill-width="warn"] { width: 58%; }
  .cat-fill[data-fill-width="risk"] { width: 100%; }
  @keyframes barIn { from { width: 0 !important; } }

  .fill-r { background: var(--red);   box-shadow: 0 0 4px var(--red); }
  .fill-a { background: var(--amber); }
  .fill-g { background: var(--green); box-shadow: 0 0 4px var(--green); }
  .fill-g2{ background: var(--green2); }

  .st-r { color: var(--red); }
  .st-a { color: var(--amber); }
  .st-g { color: var(--green); }
  .st-g2{ color: var(--green2); }

  /* ── SECTOR ACCORDIONS ── */
  .accord { border-bottom: 1px solid var(--border); }
  .accord-last { border-bottom: 0; }
  .ahd-copy { text-align: left; }
  .relationship-accord-body { gap: 10px; padding-bottom: 32px; }
  .relationship-pill { border: 1px solid; align-self: center; }
  .relationship-detail-card { margin-top: -2px; }

  .accord-hd {
    padding: 16px 20px; display: flex; align-items: center; justify-content: space-between;
    cursor: pointer; background: none; border: none; width: 100%;
    font-family: 'Barlow Condensed', sans-serif;
    border-bottom: 1px solid var(--border);
  }

  .ahd-left { display: flex; align-items: center; gap: 12px; }

  .ahd-icon {
    width: 28px; height: 28px; border: 1px solid; display: flex;
    align-items: center; justify-content: center; font-size: 11px;
    font-weight: 700; flex-shrink: 0;
  }

  .icon-r { border-color: var(--red);   color: var(--red);   background: rgba(255,58,74,0.08); }
  .icon-a { border-color: var(--amber); color: var(--amber); background: rgba(255,176,32,0.08); }
  .icon-g { border-color: var(--green); color: var(--green); background: rgba(0,232,122,0.08); }
  .icon-g2{ border-color: var(--green2);color: var(--green2);background: rgba(0,184,94,0.08); }

  .ahd-title { font-size: 14px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; color: var(--text); text-align: left; }
  .ahd-pill  { font-size: 11px; color: var(--text-dim); font-weight: 300; text-align: left; }
  .ahd-right { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }

  .a-badge { font-size: 9px; font-weight: 700; letter-spacing: 0.1em; padding: 2px 8px; border: 1px solid; }
  .ab-r  { color: var(--red);   border-color: var(--red); }
  .ab-a  { color: var(--amber); border-color: var(--amber); }
  .ab-g  { color: var(--green); border-color: var(--green); }
  .ab-g2 { color: var(--green2);border-color: var(--green2); }

  .a-caret { font-size: 10px; color: var(--text-dim); }

  .accord-body { display: none; flex-direction: column; gap: 12px; padding: 14px 20px 16px; }
  .accord-body.open { display: flex; }

  /* ── FINDING CARD ── */
  .finding-card {
    background: var(--surface); border: 1px solid var(--border);
    padding: 14px; display: flex; flex-direction: column; gap: 7px;
  }

  .fc-hd { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
  .fc-title { font-size: 14px; font-weight: 600; color: var(--white); letter-spacing: 0.02em; line-height: 1.3; }
  .fc-pill { font-size: 9px; font-weight: 700; letter-spacing: 0.1em; padding: 2px 7px; border: 1px solid; flex-shrink: 0; margin-top: 2px; }
  .fcp-r  { color: var(--red);   border-color: var(--red); }
  .fcp-a  { color: var(--amber); border-color: var(--amber); }
  .fcp-g  { color: var(--green); border-color: var(--green); }
  .fcp-g2 { color: var(--green2);border-color: var(--green2); }

  .fc-body { font-size: 13px; font-family: 'Barlow', sans-serif; font-weight: 300; color: var(--text-mid); line-height: 1.65; }
  .fc-source { font-size: 10px; color: var(--text-dim); letter-spacing: 0.04em; }
  .relationship-confidence-line {
    margin-top: 7px;
    color: var(--text-mid);
    font-size: 11px;
    line-height: 1.45;
  }

  .fc-evidence {
    display: flex; flex-direction: column; gap: 5px;
    padding-top: 8px; border-top: 1px solid var(--border); margin-top: 2px;
  }

  .fc-ev-label { font-size: 8px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--text-dim); }

  .fc-ev-url {
    font-family: 'Barlow', sans-serif; font-size: 11px; font-weight: 300;
    color: var(--green3); word-break: break-all; line-height: 1.5; text-decoration: none;
  }

  .fc-ev-url:hover { color: var(--green2); text-decoration: underline; }

  /* Relationship cards */
  .rel-card {
    display: flex; align-items: center; gap: 12px;
    background: var(--surface); border: 1px solid var(--border); padding: 12px 14px;
  }

  .rc-icon {
    width: 30px; height: 30px; border: 1px solid var(--border2);
    display: flex; align-items: center; justify-content: center;
    font-size: 13px; flex-shrink: 0; color: var(--text-dim);
  }

  .rc-info { flex: 1; min-width: 0; }
  .rc-name { font-size: 14px; font-weight: 600; color: var(--text); letter-spacing: 0.02em; }
  .rc-role { font-size: 11px; color: var(--text-dim); font-weight: 300; margin-top: 1px; }

  /* ---------- Mobile-first responsive adjustments ---------- */
  @media (max-width: 767px) {
    :root { --pad-x: 16px; }
    .field-row { grid-template-columns: 1fr; gap: 10px; }
    .hero {
      padding: 28px 18px 22px;
      gap: 6px;
    }
    .hero::before {
      top: -84px;
      width: 260px;
      height: 260px;
    }
    .hero::after {
      top: -20px;
      width: 150px;
      height: 150px;
    }
    .hero-icon-wrap {
      width: 76px;
      height: 76px;
      margin-bottom: 0;
    }
    .hero-icon {
      width: 76px;
      height: 76px;
      box-shadow: 0 0 14px rgba(0,232,122,0.22), 0 0 0 3px rgba(0,232,122,0.05);
    }
    .hero-eyebrow {
      font-size: 8px;
      letter-spacing: 0.22em;
    }
    .hero-title { font-size: 44px; line-height: 1.02; letter-spacing: -0.01em; }
    .hero-desc  { font-size: 12px; max-width: 100%; line-height: 1.65; margin-top: 2px; }
    .hero-note  { margin-top: 4px; font-size: 8px; letter-spacing: 0.16em; }
    .hdr {
      padding: 0 10px;
      gap: 8px;
    }
    .hdr > :first-child {
      min-width: 0;
      flex: 0 0 auto;
    }
    .logo {
      min-width: 0;
      transform: none;
    }
    .logo-copy { min-width: 0; }
    .logo-text {
      font-size: 18px;
      line-height: 1;
      letter-spacing: 0.06em;
      white-space: nowrap;
    }
    .logo-ed { display: none; }
    .hdr-right {
      min-width: 0;
      flex: 0 1 auto;
      gap: 6px;
    }
    .language-switcher {
      min-width: 0;
      max-width: 126px;
      padding: 2px 4px;
    }
    .language-switcher select {
      width: 116px;
      min-width: 0;
      max-width: 116px;
      min-height: 32px;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .release-control-toggle {
      width: 32px;
      min-width: 32px;
      min-height: 32px;
      justify-content: center;
      padding: 0;
    }
    .hdr-label { display: none; }
    .release-control-dialog { width: 100vw; border-left: 0; }
    .release-control-row { grid-template-columns: minmax(100px, 1fr) auto; }
    .release-control-row > :last-child { grid-column: 1 / -1; }
    .platform-release-banner { padding: 8px 14px; font-size: 11px; }
    .sf-desc-desktop { display: none; }
    .sf-toggle > summary { display: block; }
    .sf-toggle:not([open]) .sf-desc { display: none; }
    /* Sticky, compact service switcher on mobile — tucks below the sticky header */
    .service-shell {
      padding: 6px 16px;
      position: sticky;
      top: 56px; /* matches .hdr height */
      z-index: 20;
      gap: 0;
      background: rgba(9,18,16,0.96);
      backdrop-filter: blur(6px);
      -webkit-backdrop-filter: blur(6px);
      border-bottom: 1px solid var(--border);
    }
    .service-shell > .service-label,
    .service-shell > .service-brief { display: none; }
    .service-switcher {
      gap: 0;
      border: 1px solid var(--border2);
      background: rgba(0,0,0,0.14);
    }
    .service-chip {
      min-width: 0;
      min-height: 44px;
      max-height: 52px;
      padding: 7px 5px;
      border: 0;
      background: transparent;
      text-align: center;
      transform: none;
    }
    .service-chip + .service-chip { border-inline-start: 1px solid var(--border2); }
    .service-chip.active {
      background: rgba(0,232,122,0.10);
      box-shadow: inset 0 -2px 0 var(--green);
      transform: none;
    }
    .service-chip-title {
      justify-content: center;
      font-size: 12px;
      letter-spacing: 0;
      line-height: 1.12;
      overflow-wrap: anywhere;
    }
    .service-chip .domain-stage-badge { display: none; }
    .service-chip-sub { display: none; }
    /* Long tokens / URLs must not cause horizontal scroll */
    .service-panel, .dvs-panel, #gc-result-panel {
      word-wrap: break-word;
      overflow-wrap: anywhere;
    }
    #gc-result-panel,
    #result-anchor {
      scroll-margin-top: 160px;
    }
    .follow-on-progress-head { align-items: flex-start; flex-direction: column; gap: 6px; }
    .follow-on-progress-final { white-space: normal; }
    .follow-on-domain-grid { grid-template-columns: 1fr; }
    .follow-on-domain,
    .follow-on-domain:first-child,
    .follow-on-domain:last-child {
      padding: 10px 0 8px;
      border-left: 0;
      border-top: 1px solid var(--border);
    }
    .follow-on-domain:first-child { border-top: 0; }
    /* Keep form controls >=16px so iOS doesn't auto-zoom on focus */
    .field-input, .field-select, textarea, input[type="text"],
    input[type="email"], input[type="tel"], input[type="search"] {
      font-size: 16px;
    }
    /* IV stepper — tighter on mobile, hide labels on narrow screens */
    .dvs-stepper { grid-template-columns: repeat(5, 1fr); }
    .dvs-step { padding: 8px 6px; gap: 6px; justify-content: center; }
    .dvs-step-num { width: 20px; height: 20px; font-size: 12px; }
    .dvs-step-label { font-size: 10px; }
    .dvs-disclosure {
      gap: 8px;
    }
    .dvs-disclosure:not([open]) .dvs-disclosure-body {
      display: none;
    }
    .dvs-camera-modal {
      padding: 0;
      align-items: flex-end;
    }
    .dvs-camera-dialog {
      width: 100vw;
      min-height: 100dvh;
      padding: 12px;
      padding-bottom: calc(12px + env(safe-area-inset-bottom));
      border-left: 0;
      border-right: 0;
      border-bottom: 0;
      gap: 10px;
    }
    .dvs-camera-header {
      gap: 8px;
    }
    .dvs-camera-help-toggle {
      padding: 8px 10px;
      font-size: 9px;
    }
    .dvs-camera-help:not([open]) .dvs-camera-help-body {
      display: none;
    }
    .dvs-camera-stage {
      min-height: calc(100dvh - 180px);
    }
    .dvs-camera-video {
      max-height: calc(100dvh - 180px);
    }
    .dvs-camera-guide {
      inset: 8% 8%;
    }
    .dvs-camera-guide[data-guide="selfie"] {
      inset: 8% 12%;
    }
    .dvs-camera-guide[data-guide="documentPassport"] {
      inset: 6% 12% 6% 12%;
    }
    .dvs-camera-signal {
      padding: 8px 10px;
      font-size: 10px;
      line-height: 1.45;
      letter-spacing: 0.03em;
      text-transform: none;
    }
    .dvs-camera-note {
      font-size: 10px;
      line-height: 1.5;
    }
    /* Space for sticky bottom CTA on mobile when it is actually visible */
    body.mobile-cta-active { padding-bottom: calc(64px + env(safe-area-inset-bottom)); }
  }

  @media (max-width: 360px) {
    .logo-text {
      font-size: 17px;
      letter-spacing: 0.04em;
    }
    .language-switcher { max-width: 100px; }
    .language-switcher select {
      width: 90px;
      max-width: 90px;
    }
  }
  @media (max-width: 479px) {
    .hero { padding: 24px 14px 18px; }
    .hero-title { font-size: 36px; }
    .hero-desc  { font-size: 11.5px; }
    .service-shell { padding: 6px 12px; }
    .rel-card { padding: 10px 12px; }
    .dvs-step-label { display: none; }
    .dvs-step { justify-content: center; padding: 8px 4px; }
    .dvs-camera-dialog {
      padding: 10px;
      padding-bottom: calc(10px + env(safe-area-inset-bottom));
    }
    .dvs-camera-stage {
      min-height: calc(100dvh - 214px);
    }
    .dvs-camera-video {
      max-height: calc(100dvh - 214px);
    }
  }
  @media (min-width: 1024px) {
    :root { --pad-x: 32px; }
  }

  /* Sticky primary action bar (mobile-only) */
  .mobile-cta-bar {
    display: none;
  }
  @media (max-width: 767px) {
    .mobile-cta-bar {
      display: flex;
      position: fixed;
      left: 0;
      right: 0;
      bottom: 0;
      z-index: 30;
      padding: 10px 14px calc(10px + env(safe-area-inset-bottom));
      background: rgba(9,18,16,0.96);
      backdrop-filter: blur(6px);
      -webkit-backdrop-filter: blur(6px);
      border-top: 1px solid var(--border);
      gap: 8px;
    }
    .mobile-cta-bar > button {
      flex: 1;
      width: 100%;
      font-family: 'Bebas Neue', sans-serif;
      font-size: 16px;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      padding: 12px 14px;
      border: 1px solid var(--green);
      background: var(--green);
      color: #081411;
      cursor: pointer;
    }
    .mobile-cta-bar > button[disabled] {
      opacity: 0.45;
      cursor: not-allowed;
      background: rgba(0,232,122,0.12);
      color: var(--text-dim);
      border-color: var(--border2);
    }
    .mobile-cta-bar > button[hidden] { display: none; }
  }

/* Extracted source block 2. */
.ri-panel { padding: 22px 20px 32px; }
  .ri-jurisdiction-row {
    display: flex; flex-wrap: wrap; gap: 6px; margin: 14px 0 18px;
  }
  .ri-jur-group-label {
    flex: 1 0 100%;
    margin-top: 8px;
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 10px; font-weight: 800; letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--green2);
  }
  .ri-jur-group-label:first-of-type { margin-top: 0; }
  .ri-jur {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 12px; font-weight: 600; letter-spacing: 0.025em;
    text-transform: none;
    padding: 5px 9px;
    border: 1px solid var(--border2);
    background: rgba(255,255,255,0.02);
    color: var(--text-mid);
    cursor: pointer;
    transition: border-color 0.15s, color 0.15s, background 0.15s;
  }
  .ri-jur.active {
    border-color: var(--green);
    background: rgba(0,232,122,0.08);
    color: var(--white);
  }
  .ri-status {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 12px; font-weight: 600; letter-spacing: 0.06em;
    color: var(--text-mid);
    padding: 8px 0;
  }
  .ri-pilot-boundary {
    border: 1px solid rgba(255,196,0,0.34);
    background: linear-gradient(135deg, rgba(255,196,0,0.09), rgba(0,232,122,0.035));
    padding: 12px 14px;
    margin: 14px 0 10px;
    display: grid;
    gap: 9px;
  }
  .ri-pilot-title {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 18px;
    letter-spacing: 0.055em;
    color: var(--white);
  }
  .ri-pilot-copy,
  .ri-pilot-runtime {
    font-family: 'Barlow', sans-serif;
    font-size: 12px;
    line-height: 1.55;
    color: var(--text-mid);
  }
  .ri-pilot-runtime {
    border-left: 2px solid rgba(255,196,0,0.55);
    padding-left: 9px;
  }
  .ri-pilot-runtime.ready { border-left-color: rgba(0,232,122,0.65); }
  .ri-pilot-runtime.review { border-left-color: rgba(255,196,0,0.65); }
  .ri-pilot-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
  }
  .ri-pilot-chip {
    border: 1px solid var(--border2);
    background: rgba(0,0,0,0.14);
    color: var(--text-mid);
    padding: 5px 8px;
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }
  .ri-pilot-chip.ready { border-color: rgba(0,232,122,0.44); color: var(--green); }
  .ri-pilot-chip.review { border-color: rgba(255,196,0,0.48); color: var(--amber); }
  .ri-pilot-chip.blocked { border-color: rgba(255,67,67,0.5); color: var(--red); }
  .ri-update-priority {
    border: 1px solid rgba(0,232,122,0.28);
    background: linear-gradient(135deg, rgba(0,232,122,0.1), rgba(255,255,255,0.018));
    padding: 13px 14px;
    margin: 4px 0 12px;
    display: grid;
    gap: 10px;
  }
  .ri-update-priority[hidden] { display: none; }
  .ri-update-priority-top {
    display: grid;
    gap: 3px;
  }
  .ri-update-priority-kicker {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 10px; font-weight: 800; letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--green2);
  }
  .ri-update-priority-headline {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 22px; letter-spacing: 0.035em;
    color: var(--white);
    line-height: 1.05;
  }
  .ri-update-priority-note,
  .ri-update-focus {
    font-family: 'Barlow', sans-serif;
    font-size: 12px; line-height: 1.55;
    color: var(--text-mid);
  }
  .ri-update-focus {
    border-left: 2px solid rgba(0,232,122,0.42);
    padding-left: 9px;
  }
  .ri-update-focus strong { color: var(--text); }
  .ri-update-stat-row {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
    gap: 7px;
  }
  .ri-update-stat {
    border: 1px solid rgba(255,255,255,0.08);
    background: rgba(0,0,0,0.16);
    padding: 8px 9px;
  }
  .ri-update-stat strong {
    display: block;
    font-family: 'Bebas Neue', sans-serif;
    font-size: 21px; line-height: 1;
    color: var(--white);
  }
  .ri-update-stat span {
    display: block;
    margin-top: 3px;
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 10px; font-weight: 800; letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--text-mid);
  }
  .ri-source-board {
    border: 1px solid rgba(255,255,255,0.12);
    background: rgba(255,255,255,0.018);
    margin: 14px 0 0;
  }
  .ri-source-board[hidden] { display: none; }
  .ri-source-board-details {
    display: block;
  }
  .ri-source-board-summary {
    list-style: none;
    cursor: pointer;
    padding: 12px 14px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
  }
  .ri-source-board-summary::-webkit-details-marker { display: none; }
  .ri-source-board-summary::after {
    content: '+';
    flex-shrink: 0;
    color: var(--green2);
    font-family: 'Bebas Neue', sans-serif;
    font-size: 22px;
    line-height: 1;
  }
  .ri-source-board-details[open] .ri-source-board-summary::after { content: '-'; }
  .ri-source-board-body {
    padding: 0 14px 14px;
    display: grid;
    gap: 10px;
  }
  .ri-source-board-head {
    display: flex; align-items: flex-start; justify-content: space-between;
    gap: 12px;
  }
  .ri-source-board-title {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 16px; letter-spacing: 0.05em;
    color: var(--white);
  }
  .ri-source-board-copy,
  .ri-source-board-note {
    font-family: 'Barlow', sans-serif;
    font-size: 12px; line-height: 1.55;
    color: var(--text-mid);
  }
  .ri-source-board-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
    gap: 8px;
  }
  .ri-source-metric {
    border: 1px solid var(--border2);
    background: rgba(0,0,0,0.14);
    padding: 9px 10px;
  }
  .ri-source-metric-value {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 24px; line-height: 1;
    color: var(--white);
  }
  .ri-source-metric-label {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 10px; font-weight: 700; letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--text-dim);
    margin-top: 4px;
  }
  .ri-source-health {
    flex-shrink: 0;
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 10px; font-weight: 700; letter-spacing: 0.1em;
    text-transform: uppercase;
    border: 1px solid var(--green);
    color: var(--green);
    padding: 5px 8px;
  }
  .ri-source-health.stale { border-color: var(--amber); color: var(--amber); }
  .ri-source-health.fallback,
  .ri-source-health.issue { border-color: var(--red); color: var(--red); }
  .ri-command-center {
    border-top: 1px solid rgba(255,255,255,0.08);
    padding-top: 10px;
    display: grid;
    gap: 9px;
  }
  .ri-command-center-title {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 11px; font-weight: 800; letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--white);
  }
  .ri-command-center-copy {
    font-family: 'Barlow', sans-serif;
    font-size: 12px; line-height: 1.5;
    color: var(--text-mid);
  }
  .ri-command-health-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
  }
  .ri-command-health-pill {
    display: inline-flex;
    align-items: baseline;
    gap: 5px;
    border: 1px solid var(--border2);
    background: rgba(255,255,255,0.025);
    padding: 5px 7px;
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 10px; font-weight: 800; letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--text-mid);
  }
  .ri-command-health-pill strong {
    font-size: 13px;
    color: var(--white);
  }
  .ri-command-health-pill.ready { border-color: rgba(0,232,122,0.44); color: var(--green); }
  .ri-command-health-pill.partial,
  .ri-command-health-pill.stale { border-color: rgba(255,196,0,0.48); color: var(--amber); }
  .ri-command-health-pill.blocked { border-color: rgba(255,67,67,0.5); color: var(--red); }
  .ri-command-table {
    display: grid;
    gap: 6px;
  }
  .ri-command-row {
    display: grid;
    grid-template-columns: 0.7fr 1.45fr 1.25fr 1fr 0.9fr 0.85fr;
    gap: 8px;
    align-items: center;
    border: 1px solid rgba(255,255,255,0.08);
    background: rgba(0,0,0,0.16);
    padding: 8px 9px;
  }
  .ri-command-row.head {
    background: transparent;
    border-color: transparent;
    padding-top: 0;
    padding-bottom: 0;
  }
  .ri-command-cell {
    min-width: 0;
    font-family: 'Barlow', sans-serif;
    font-size: 11px;
    line-height: 1.35;
    color: var(--text);
    overflow-wrap: anywhere;
  }
  .ri-command-row.head .ri-command-cell {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 9px; font-weight: 800; letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--text-dim);
  }
  .ri-command-status {
    display: inline-flex;
    width: fit-content;
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 9px; font-weight: 800; letter-spacing: 0.1em;
    text-transform: uppercase;
    border: 1px solid var(--border3);
    color: var(--text-mid);
    padding: 3px 6px;
  }
  .ri-command-status.delta,
  .ri-command-status.evidence { border-color: var(--green); color: var(--green); }
  .ri-command-status.review,
  .ri-command-status.monitor { border-color: var(--amber); color: var(--amber); }
  .ri-command-status.issue,
  .ri-command-status.missing { border-color: var(--red); color: var(--red); }
  .ri-command-status-group {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
  }
  .ri-command-status-note {
    font-family: 'Barlow', sans-serif;
    font-size: 10px;
    line-height: 1.3;
    color: var(--text-dim);
    text-transform: none;
    letter-spacing: 0;
  }
  .ri-source-inventory {
    border-top: 1px solid rgba(255,255,255,0.08);
    padding-top: 10px;
    display: grid;
    gap: 9px;
  }
  .ri-source-inventory-title {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 11px; font-weight: 800; letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--white);
  }
  .ri-source-inventory-copy {
    font-family: 'Barlow', sans-serif;
    font-size: 12px; line-height: 1.5;
    color: var(--text-mid);
  }
  @media (max-width: 760px) {
    .ri-command-row {
      grid-template-columns: 1fr;
      gap: 4px;
    }
    .ri-command-row.head { display: none; }
    .ri-command-cell::before {
      content: attr(data-label);
      display: block;
      font-family: 'Barlow Condensed', sans-serif;
      font-size: 9px; font-weight: 800; letter-spacing: 0.12em;
      text-transform: uppercase;
      color: var(--text-dim);
      margin-bottom: 1px;
    }
  }
  .ri-event-list { display: flex; flex-direction: column; gap: 10px; margin-top: 6px; }
  .ri-event {
    border: 1px solid var(--border2);
    background: rgba(255,255,255,0.02);
    padding: 12px 14px;
  }
  .ri-event.has-change {
    border-color: rgba(0,232,122,0.38);
    background: linear-gradient(135deg, rgba(0,232,122,0.065), rgba(255,255,255,0.02));
  }
  .ri-event.monitored-only {
    opacity: 0.88;
  }
  .ri-event-head {
    display: flex; align-items: flex-start; justify-content: space-between;
    gap: 10px; margin-bottom: 6px;
  }
  .ri-event-title {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 16px; letter-spacing: 0.04em;
    color: var(--white);
    line-height: 1.15;
  }
  .ri-pill {
    flex-shrink: 0;
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 10px; font-weight: 700; letter-spacing: 0.12em;
    text-transform: uppercase;
    padding: 3px 7px;
    border: 1px solid var(--border3);
    color: var(--text);
  }
  .ri-pill.law { border-color: var(--green); color: var(--green); }
  .ri-pill.guidance { border-color: var(--amber); color: var(--amber); }
  .ri-pill.enforcement { border-color: var(--red); color: var(--red); }
  .ri-pill.list-change { border-color: var(--green2); color: var(--green2); }
  .ri-pill.consultation { border-color: var(--text-mid); color: var(--text-mid); }
  .ri-event-meta {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 11px; font-weight: 600; letter-spacing: 0.06em;
    color: var(--text-mid);
    margin-bottom: 6px;
  }
  .ri-event-meta em { color: var(--green); font-style: normal; }
  .ri-event-source-status {
    display: inline-flex;
    width: fit-content;
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 10px; font-weight: 700; letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-mid);
    border: 1px solid var(--border2);
    padding: 3px 7px;
    margin: 0 0 8px;
  }
  .ri-event-source-status.change { color: var(--green); border-color: var(--green); }
  .ri-event-source-status.review { color: var(--amber); border-color: var(--amber); }
  .ri-event-summary {
    font-family: 'Barlow', sans-serif;
    font-size: 12px; line-height: 1.65;
    color: var(--text);
  }
  .ri-event-block.primary {
    border-top: 1px solid rgba(255,255,255,0.08);
    padding-top: 9px;
  }
  .ri-event-block.primary .ri-event-summary {
    font-size: 13px;
    color: var(--white);
  }
  .ri-event-block {
    margin-top: 10px;
    display: grid;
    gap: 6px;
  }
  .ri-event-block-title {
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 700;
    letter-spacing: 0.1em;
    font-size: 10px;
    text-transform: uppercase;
    color: var(--text-dim);
  }
  .ri-event-detail-list,
  .ri-event-evidence-list {
    display: grid;
    gap: 6px;
  }
  .ri-event-detail-item,
  .ri-event-evidence-item {
    font-family: 'Barlow', sans-serif;
    font-size: 12px;
    line-height: 1.65;
    color: var(--text);
  }
  .ri-event-detail-item::before {
    content: '• ';
    color: var(--green2);
  }
  .ri-event-evidence-item {
    border-left: 2px solid rgba(0,232,122,0.28);
    padding-left: 10px;
  }
  .ri-event-evidence-label {
    display: inline-block;
    margin-right: 6px;
    color: var(--green2);
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 10px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }
  .ri-event-link {
    color: var(--green2);
    text-decoration: none;
    border-bottom: 1px dotted rgba(0,232,122,0.35);
  }
  .ri-event-evidence {
    margin-top: 8px;
    border-top: 1px dashed var(--border2);
    padding-top: 8px;
    font-family: 'Barlow', sans-serif;
    font-size: 11px; line-height: 1.6;
    color: var(--text-mid);
  }
  .ri-event-evidence-title {
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 600; letter-spacing: 0.06em; font-size: 10px;
    text-transform: uppercase;
    color: var(--green2);
    margin-bottom: 4px;
    cursor: pointer;
  }
  .ri-capabilities {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: 10px;
    margin: 14px 0 4px;
  }
  .ri-cap {
    border: 1px solid var(--border);
    background: rgba(0,232,122,0.03);
    padding: 10px 12px;
  }
  .ri-cap-title {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 14px; letter-spacing: 0.05em;
    color: var(--white);
  }
  .ri-cap-copy {
    font-family: 'Barlow', sans-serif;
    font-size: 11px; line-height: 1.55;
    color: var(--text-mid);
    margin-top: 4px;
  }
  .ri-overlay-out {
    margin-top: 10px;
    font-family: 'Barlow', sans-serif;
    font-size: 12px; line-height: 1.6;
    color: var(--text);
    border-left: 2px solid var(--green);
    padding: 8px 12px;
    background: rgba(0,232,122,0.04);
  }
  .ri-overlay-head {
    display: grid;
    gap: 6px;
    margin-bottom: 10px;
  }
  .ri-overlay-title {
    font-family: 'Bebas Neue', sans-serif;
    letter-spacing: 0.05em;
    font-size: 18px;
    color: var(--white);
  }
  .ri-overlay-bottom-line {
    font-size: 13px;
    color: var(--text);
  }
  .ri-overlay-summary {
    border: 1px solid rgba(0,232,122,0.18);
    background: rgba(0,232,122,0.055);
    padding: 10px;
    margin-top: 4px;
  }
  .ri-overlay-summary-kicker {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 11px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--green2);
    margin-bottom: 4px;
  }
  .ri-overlay-impact-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    gap: 8px;
    margin-top: 9px;
  }
  .ri-overlay-impact-card {
    border: 1px solid var(--border);
    background: rgba(0,0,0,0.16);
    padding: 8px;
  }
  .ri-overlay-impact-card strong {
    display: block;
    color: var(--white);
    font-size: 12px;
    margin-bottom: 3px;
  }
  .ri-overlay-impact-card span {
    display: block;
    color: var(--text-mid);
    font-size: 11px;
    line-height: 1.45;
  }
  .ri-overlay-readiness {
    margin-top: 10px;
  }
  .ri-overlay-readiness-title {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 11px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-mid);
    margin-bottom: 6px;
  }
  .ri-overlay-readiness-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: 8px;
  }
  .ri-overlay-readiness-card {
    border: 1px solid var(--border);
    background: rgba(0,0,0,0.14);
    padding: 9px;
  }
  .ri-overlay-readiness-card.ready {
    border-color: rgba(0,232,122,0.28);
  }
  .ri-overlay-readiness-card.review {
    border-color: rgba(255,193,7,0.32);
  }
  .ri-overlay-readiness-card.blocked {
    border-color: rgba(255,79,79,0.32);
  }
  .ri-overlay-readiness-card strong {
    display: block;
    color: var(--white);
    font-size: 12px;
    margin-bottom: 4px;
  }
  .ri-overlay-readiness-card span {
    display: block;
    color: var(--text-mid);
    font-size: 11px;
    line-height: 1.45;
  }
  .ri-overlay-readiness-status {
    display: inline-block;
    font-size: 10px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--green2);
    margin-bottom: 5px;
  }
  .ri-overlay-readiness-card.review .ri-overlay-readiness-status {
    color: #f5c451;
  }
  .ri-overlay-readiness-card.blocked .ri-overlay-readiness-status {
    color: #ff7f7f;
  }
  .ri-overlay-action-list {
    display: grid;
    gap: 7px;
  }
  .ri-overlay-action-item {
    border: 1px solid var(--border);
    background: rgba(255,255,255,0.025);
    padding: 8px;
  }
  .ri-overlay-action-item strong {
    color: var(--white);
  }
  .ri-inventory-import {
    border: 1px solid rgba(0,232,122,0.18);
    background: rgba(0,232,122,0.04);
    padding: 10px;
    margin-top: 12px;
  }
  .ri-inventory-grid {
    display: grid;
    grid-template-columns: minmax(180px, 0.8fr) minmax(220px, 1.2fr);
    gap: 10px;
    margin-top: 8px;
  }
  .ri-inventory-textarea {
    min-height: 118px;
    resize: vertical;
    line-height: 1.45;
  }
  .ri-inventory-help {
    color: var(--text-mid);
    font-size: 11px;
    line-height: 1.45;
    margin-top: 6px;
  }
  .ri-file-row {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 38px;
  }
  .ri-file-picker {
    cursor: pointer;
    margin: 0;
  }
  .ri-file-name {
    color: var(--text-mid);
    font-family: 'Barlow', sans-serif;
    font-size: 12px;
    min-width: 0;
    overflow-wrap: anywhere;
  }
  @media (max-width: 760px) {
    .ri-inventory-grid {
      grid-template-columns: 1fr;
    }
  }
  .ri-overlay-scope-list {
    display: grid;
    gap: 8px;
  }
  .ri-region-group {
    display: grid;
    gap: 6px;
    margin-top: 8px;
  }
  .ri-region-group:first-child { margin-top: 0; }
  .ri-region-title {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 10px; font-weight: 800; letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--green2);
  }
  .ri-region-items {
    display: grid;
    gap: 6px;
  }
  .ri-overlay-scope-item {
    border: 1px solid var(--border);
    background: rgba(255,255,255,0.025);
    padding: 8px;
  }
  .ri-overlay-scope-item strong {
    color: var(--white);
  }
  .ri-overlay-scope-note {
    color: var(--text-mid);
    margin-top: 4px;
  }
  .ri-overlay-validation-note {
    border: 1px solid rgba(255,255,255,0.12);
    background: rgba(255,255,255,0.035);
    color: var(--text-mid);
    padding: 8px;
    margin-top: 9px;
  }
  .ri-overlay-metrics {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
    gap: 8px;
    margin: 10px 0;
  }
  .ri-overlay-metric {
    border: 1px solid var(--border);
    background: rgba(255,255,255,0.03);
    padding: 8px;
  }
  .ri-overlay-metric strong {
    display: block;
    color: var(--white);
    font-size: 16px;
    line-height: 1.1;
  }
  .ri-overlay-metric span {
    display: block;
    color: var(--text-mid);
    font-size: 10px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    margin-top: 3px;
  }
  .ri-overlay-section {
    border-top: 1px dashed var(--border2);
    padding-top: 9px;
    margin-top: 9px;
  }
  .ri-overlay-section-title {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 11px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--green2);
    margin-bottom: 5px;
  }
  .ri-overlay-row {
    margin: 5px 0;
    color: var(--text-mid);
  }
  .ri-overlay-row strong {
    color: var(--text);
  }
  .ri-overlay-row a {
    color: var(--green2);
    text-decoration: none;
    border-bottom: 1px dashed rgba(0,232,122,0.45);
  }
  .ri-overlay-coverage-band {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 6px 0 8px;
  }
  .ri-overlay-coverage-pill {
    border: 1px solid var(--border);
    background: rgba(255,255,255,0.03);
    color: var(--text-mid);
    padding: 4px 7px;
    font-size: 11px;
  }
  .ri-overlay-coverage-pill strong {
    color: var(--white);
  }
  .ri-regulator-update-types {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 7px;
  }
  .ri-update-type-summary {
    display: grid;
    gap: 7px;
    margin: 8px 0 10px;
    border: 1px solid rgba(255,255,255,0.1);
    background: rgba(255,255,255,0.025);
    padding: 9px;
  }
  .ri-update-type-summary-title {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 10px; font-weight: 800; letter-spacing: 0.11em;
    text-transform: uppercase;
    color: var(--green2);
  }
  .ri-update-type-summary-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 7px;
  }
  .ri-update-type-summary-card {
    border: 1px solid var(--border2);
    background: rgba(0,0,0,0.14);
    padding: 7px;
    font-size: 11px;
    color: var(--text-mid);
    line-height: 1.45;
  }
  .ri-update-type-summary-card strong {
    display: block;
    color: var(--white);
    margin-bottom: 3px;
  }
  .ri-update-type-pill {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    border: 1px solid var(--border2);
    background: rgba(255,255,255,0.025);
    color: var(--text-mid);
    padding: 3px 6px;
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 9px; font-weight: 800; letter-spacing: 0.08em;
    text-transform: uppercase;
  }
  .ri-update-type-pill.current,
  .ri-update-type-pill.configured { border-color: rgba(0,232,122,0.35); color: var(--green2); }
  .ri-update-type-pill.blocked { border-color: rgba(255,67,67,0.5); color: var(--red); }
  .ri-update-type-pill.missing { opacity: 0.62; }
  .ri-update-type-pill.not-applicable { opacity: 0.48; border-style: dashed; }
  .ri-grounding-list {
    margin-top: 8px;
    font-family: 'Barlow', sans-serif;
    font-size: 11px; line-height: 1.6;
    color: var(--text-mid);
  }
  .ri-grounding-item {
    border-top: 1px dashed var(--border2);
    padding: 6px 0;
  }
  .ri-grounding-item:first-child { border-top: 0; }
  .ri-error {
    margin-top: 8px;
    font-family: 'Barlow', sans-serif;
    font-size: 12px; line-height: 1.6;
    color: var(--red);
    border-left: 2px solid var(--red);
    padding: 8px 12px;
    background: rgba(255,58,74,0.05);
  }
  @media (max-width: 767px) {
    .ri-panel { padding: 16px 16px 28px; }
  }

/* Extracted source block 3. */
.network-section {
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
    background: var(--bg2);
  }

  .network-section[hidden] {
    display: none !important;
  }

  .ns-header {
    padding: 16px 20px;
    display: flex; align-items: center; justify-content: space-between;
    cursor: pointer; border-bottom: 1px solid var(--border);
    user-select: none;
  }

  .ns-header-left { display: flex; align-items: center; gap: 12px; }

  .ns-icon {
    width: 28px; height: 28px; border: 1px solid var(--green2);
    display: flex; align-items: center; justify-content: center;
    font-size: 13px; color: var(--green2); flex-shrink: 0;
    background: rgba(0,184,94,0.08);
  }

  .ns-title {
    font-size: 14px; font-weight: 600; letter-spacing: 0.06em;
    text-transform: uppercase; color: var(--text); font-family: 'Barlow Condensed', sans-serif;
  }

  .ns-sub { font-size: 11px; color: var(--text-dim); font-weight: 300; margin-top: 1px; }

  .ns-caret { font-size: 10px; color: var(--text-dim); transition: transform 0.2s; }

  .ns-body { display: none; flex-direction: column; }
  .ns-body.open { display: flex; }

  .ns-key-path {
    display: flex;
    align-items: stretch;
    gap: 0;
    margin: 0;
    padding: 12px 20px;
    border-bottom: 1px solid var(--border);
    background: rgba(255,255,255,0.018);
    list-style: none;
    overflow-x: auto;
    scrollbar-width: thin;
  }
  .ns-key-path[hidden] { display: none; }
  .ns-key-path-item {
    position: relative;
    display: flex;
    align-items: flex-start;
    flex: 1 0 132px;
    min-width: 0;
    gap: 8px;
    padding-right: 22px;
  }
  .ns-key-path-item:not(:last-child)::after {
    content: '';
    position: absolute;
    top: 6px;
    right: 7px;
    width: 8px;
    height: 8px;
    border-top: 1px solid var(--green3);
    border-right: 1px solid var(--green3);
    transform: rotate(45deg);
  }
  .ns-key-path-marker {
    width: 7px;
    height: 7px;
    margin-top: 4px;
    flex: 0 0 7px;
    border: 1px solid var(--green2);
    background: rgba(0,184,94,0.18);
  }
  .ns-key-path-copy {
    display: grid;
    min-width: 0;
    gap: 2px;
    font: 400 10px/1.35 'Barlow', sans-serif;
    color: var(--text-dim);
    letter-spacing: 0;
  }
  .ns-key-path-copy strong {
    color: var(--text);
    font: 600 11px/1.3 'Barlow Condensed', sans-serif;
    letter-spacing: 0;
    overflow-wrap: anywhere;
  }
  .ns-key-path.is-relationship-set { gap: 12px; }
  .ns-key-path.is-relationship-set .ns-key-path-item {
    padding: 0 12px;
    border-left: 1px solid rgba(0,232,122,0.32);
  }
  .ns-key-path.is-relationship-set .ns-key-path-item::after { display: none; }

	  .ns-canvas-wrap {
	    position: relative;
	    width: 100%;
	    min-height: 240px;
	    height: 320px;
	    overflow: hidden;
	    background: var(--bg3);
	    touch-action: none;
	    transition: height 0.18s ease;
	  }

  .ns-canvas-wrap[data-network-height="compact"] { height: 240px; }
  .ns-canvas-wrap[data-network-height="regular"] { height: 320px; }
  .ns-canvas-wrap[data-network-height="tall"] { height: 400px; }
  .ns-canvas-wrap[data-network-height="x-tall"] { height: 500px; }
  .ns-canvas-wrap[data-network-height="xx-tall"] { height: 600px; }
  .ns-canvas-wrap[data-network-height="max"] { height: 720px; }

  #netCanvas {
    display: block;
    width: 100%;
    height: 100%;
    cursor: grab;
  }

  #netCanvas:active { cursor: grabbing; }
  #netCanvas.is-hot { cursor: pointer; }
  #netCanvas:focus-visible { outline: 2px solid var(--green2); outline-offset: -3px; }

  .ns-controls {
    position: absolute;
    bottom: 12px; right: 12px;
    display: flex; gap: 6px;
  }

  .ns-hover {
    position: absolute;
    top: 12px;
    left: 12px;
    max-width: min(340px, calc(100% - 88px));
    padding: 9px 11px;
    background: rgba(10, 15, 17, 0.96);
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
    backdrop-filter: blur(8px);
    z-index: 2;
    pointer-events: none;
  }

  .ns-hover[hidden] { display: none; }
  .ns-hover[data-pinned="true"] { border-color: rgba(0, 232, 122, 0.4); }
  .ns-hover-title {
    font-size: 12px;
    line-height: 1.15;
    font-weight: 600;
    color: var(--text);
    letter-spacing: 0;
    margin-bottom: 6px;
    font-family: 'Barlow Condensed', sans-serif;
    text-transform: uppercase;
  }
  .ns-hover-line {
    font-size: 10px;
    line-height: 1.35;
    color: var(--text-mid);
    word-break: break-word;
    margin-top: 2px;
  }
  .ns-hover-line strong { color: var(--text); font-weight: 600; }

  .ns-ctrl {
    width: 34px; height: 34px;
    background: var(--surface); border: 1px solid var(--border2);
    color: var(--text-mid); font-size: 14px; font-family: 'Barlow Condensed', sans-serif;
    display: flex; align-items: center; justify-content: center;
    cursor: pointer; transition: border-color 0.15s, color 0.15s;
    padding: 0; line-height: 1;
  }

  .ns-ctrl:active { border-color: var(--green2); color: var(--green2); }

	  .ns-legend {
	    display: flex; flex-wrap: wrap; gap: 8px 18px; padding: 9px 20px;
	    border-top: 1px solid var(--border);
	  }

  .ns-leg-item { display: flex; align-items: center; gap: 6px; font-size: 10px; letter-spacing: 0; color: var(--text-dim); font-family: 'Barlow Condensed', sans-serif; }
  .ns-leg-item[hidden] { display: none; }
  .ns-leg-dot { width: 7px; height: 7px; border-radius: 50%; flex-shrink: 0; }
  .ns-leg-subject { background: #00e87a; }
  .ns-leg-entity { background: #e09020; }
  .ns-leg-individual { background: #00c8f0; }
  .ns-leg-hit { background: #ff3a4a; }
  .ns-leg-pending { background: #ffb020; }

  @media (max-width: 767px) {
    .ns-header { padding: 14px 16px; }
    .ns-sub {
      display: -webkit-box;
      max-width: min(68vw, 420px);
      overflow: hidden;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 2;
    }
    .ns-key-path { padding: 10px 16px; }
    .ns-key-path-item { flex-basis: 118px; padding-right: 18px; }
    .ns-key-path.is-relationship-set { gap: 8px; }
    .ns-key-path.is-relationship-set .ns-key-path-item { flex-basis: 150px; }
    .ns-canvas-wrap { min-height: 220px; }
    .ns-canvas-wrap[data-network-height="compact"],
    .ns-canvas-wrap[data-network-height="regular"] { height: 300px; }
    .ns-canvas-wrap[data-network-height="tall"],
    .ns-canvas-wrap[data-network-height="x-tall"],
    .ns-canvas-wrap[data-network-height="xx-tall"],
    .ns-canvas-wrap[data-network-height="max"] { height: 360px; }
    .ns-controls { bottom: 10px; right: 10px; }
    .ns-ctrl { width: 44px; height: 44px; font-size: 16px; }
    .ns-controls.is-docked {
      position: relative;
      right: auto;
      bottom: auto;
      justify-content: flex-end;
      padding: 8px 10px;
      border-top: 1px solid var(--border);
    }
    .ns-hover.is-docked {
      position: relative;
      top: auto;
      right: auto;
      bottom: auto;
      left: auto;
      max-width: none;
      max-height: none;
      overflow: hidden;
      margin: 0;
      border-right: 0;
      border-left: 0;
    }
    .ns-legend { gap: 8px 14px; padding: 9px 16px; }
    .relationship-accord-body { padding-bottom: 20px; }
    .relationship-row-meta { display: grid; gap: 4px; }
  }

  .comparison-audit { padding-left: 12px; color: var(--text-dim); }
  .fc-body-meta { margin-top: 8px; font-size: 11px; color: var(--text-dim); }
  .fc-body-meta-grid { margin-top: 8px; display: grid; gap: 4px; font-size: 11px; color: var(--text-dim); }
  .fc-body-grid { display: grid; gap: 4px; }
  .fc-body-stack { display: grid; gap: 8px; }
  .fc-body-stack-spaced { margin-top: 10px; display: grid; gap: 10px; }
  .fc-body-scope { color: var(--text-mid); font-size: 11px; }
  .fc-meta-label { color: var(--text-mid); }
  .candidate-list { margin-top: 10px; }
  .candidate-heading { margin-bottom: 6px; color: var(--text-dim); font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }
  .candidate-card { padding: 8px; border: 1px solid rgba(255,255,255,0.1); border-radius: 6px; background: rgba(255,255,255,0.025); }
  .candidate-card + .candidate-card { margin-top: 6px; }
  .candidate-title { color: var(--white); font-weight: 700; }
  .candidate-meta { margin-top: 3px; color: var(--text-dim); font-size: 11px; }
  .candidate-disposition { margin-top: 3px; color: var(--text-mid); font-size: 11px; }
  .relationship-row + .relationship-row { padding-top: 10px; border-top: 1px solid rgba(255,255,255,0.08); }
  .relationship-row-card { margin: 0; }
  .relationship-kind-icon.entity { color: #e09020; border-color: rgba(224,144,32,0.27); background: #2a1e06; }
  .relationship-kind-icon.individual { color: #00c8f0; border-color: rgba(0,200,240,0.27); background: #06202a; }
  .relationship-kind-pill { align-self: center; border: 1px solid; }
  .relationship-kind-pill.entity { color: #e09020; border-color: #e09020; background: #2a1e06; }
  .relationship-kind-pill.individual { color: #00c8f0; border-color: #00c8f0; background: #06202a; }
  .relationship-row-meta { margin-top: 6px; padding: 0; color: var(--text-dim); font-size: 11px; }
  .relationship-alias-row + .relationship-alias-row { padding-top: 8px; border-top: 1px solid rgba(255,255,255,0.08); }

  @media print {
    @page {
      size: auto;
      margin: 12mm;
    }

    body {
      background: #fff !important;
      color: #111 !important;
      background-image: none !important;
    }

    .hdr,
    .hero,
    .search-section,
    .site-footer {
      display: none !important;
    }

    #gc-result-panel {
      display: block !important;
    }

    .report-evidence-summary {
      display: none !important;
    }

    .report-evidence-disclosure > .report-evidence-body {
      display: block !important;
    }

    .subject-masthead,
    .rec-block,
    .report-evidence-disclosure,
    .cat-bars,
    .accord,
    .network-section {
      break-inside: avoid;
      page-break-inside: avoid;
      background: #fff !important;
      color: #111 !important;
      border-color: #d7d7d7 !important;
      box-shadow: none !important;
    }

    .fc-ev-url,
    .fc-source,
    .sm-ref,
    .sm-meta,
    .rec-kicker,
    .cat-name,
    .cat-status,
    .ahd-title,
    .ahd-pill,
    .fc-body,
    .fc-title,
    .rc-name,
    .rc-role,
    .ns-title,
    .ns-sub,
    .rd-label,
    .vs-conf,
    .vs-text,
    .ring-score,
    .ring-label {
      color: #111 !important;
      text-shadow: none !important;
    }

    .ring-track { stroke: #e0e0e0 !important; }
    .cat-track { background: #e8e8e8 !important; }
    .ns-canvas-wrap {
      background: #fff !important;
      height: 460px !important;
      min-height: 460px !important;
      overflow: hidden !important;
    }
    .ns-controls,
    .rec-actions,
    .rec-export { display: none !important; }
  }

/* Extracted source block 4. */
:root {
    --content-max: 1180px;
    --content-gutter: max(20px, calc((100vw - var(--content-max)) / 2));
  }

  .service-shell,
  .search-section {
    padding-left: var(--content-gutter);
    padding-right: var(--content-gutter);
  }

  .search-section {
    background:
      linear-gradient(180deg, rgba(10,20,17,0.98), rgba(6,13,8,0.98));
  }

  .form-status {
    --status-progress: 0%;
    display: block;
    position: relative;
    overflow: hidden;
    min-height: 42px;
    margin-top: 2px;
    padding: 11px 13px 13px;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 6px;
    background: rgba(255,255,255,0.03);
    color: var(--text-mid);
    font: 400 12px/1.5 'Barlow', sans-serif;
  }

  .form-status[hidden], #gc-result-panel[hidden] { display: none !important; }
  .form-status[data-tone="neutral"], .dvs-status[data-tone="neutral"] { background: rgba(255,255,255,0.03); border-color: rgba(255,255,255,0.08); color: var(--text-mid); }
  .form-status[data-tone="ok"], .dvs-status[data-tone="ok"] { background: rgba(0,232,122,0.06); border-color: rgba(0,232,122,0.18); color: #b9ffd8; }
  .form-status[data-tone="warn"], .dvs-status[data-tone="warn"] { background: rgba(224,144,32,0.08); border-color: rgba(224,144,32,0.18); color: #ffd79a; }
  .form-status[data-tone="error"], .dvs-status[data-tone="error"] { background: rgba(235,79,96,0.1); border-color: rgba(235,79,96,0.24); color: #ffc1ca; }

  .form-status::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: var(--status-progress);
    height: 2px;
    background: currentColor;
    opacity: 0.8;
    transition: width 0.3s ease;
  }

  .agents-page {
    min-height: 100vh;
    background: var(--bg);
  }

  .agents-header {
    min-height: 58px;
    padding: 0 max(20px, calc((100vw - 920px) / 2));
    border-bottom: 1px solid var(--border);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    background: rgba(6,13,8,0.96);
  }

  .agents-brand {
    color: var(--white);
    font: 400 21px/1 'Bebas Neue', sans-serif;
    letter-spacing: 0;
    text-decoration: none;
  }

  .agents-brand em { color: var(--green); font-style: normal; }
  .agents-header-actions { min-width: 0; display: flex; align-items: center; gap: 16px; }
  .agents-language { min-width: 0; display: block; }
  .agents-language select {
    width: min(164px, 42vw);
    height: 36px;
    padding: 0 30px 0 10px;
    border: 1px solid var(--border);
    border-radius: 4px;
    background: #0a1510;
    color: var(--text-mid);
    font: 400 12px/1 'Barlow', sans-serif;
    letter-spacing: 0;
  }
  .agents-back { color: var(--text-mid); font-size: 12px; text-decoration: none; }
  .agents-back:hover, .agents-links a:hover { color: var(--green); }

  .agents-hero {
    min-height: 430px;
    padding: 58px 20px 48px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    border-bottom: 1px solid var(--border);
  }

  .agents-mark { width: 88px; height: 88px; border: 1px solid var(--green); border-radius: 50%; object-fit: cover; }
  .agents-kicker { margin: 20px 0 0; color: var(--green2); font-size: 10px; letter-spacing: 0; text-transform: uppercase; }
  .agents-hero h1 { max-width: 720px; margin: 12px 0 0; color: var(--white); font: 400 48px/1 'Bebas Neue', sans-serif; letter-spacing: 0; overflow-wrap: anywhere; }
  .agents-lead { max-width: 520px; margin-top: 14px; color: var(--text-mid); font: 400 14px/1.7 'Barlow', sans-serif; }
  .agents-endpoint { width: min(100%, 520px); margin-top: 24px; padding: 14px 16px; border: 1px solid rgba(57,200,232,0.34); background: rgba(57,200,232,0.055); color: #d9ffe8; font-size: 13px; overflow-wrap: anywhere; }
  .agents-copy-control,
  .agents-provider-snippet {
    width: min(100%, 520px);
    min-height: 46px;
    padding: 0;
    border: 1px solid rgba(57,200,232,0.34);
    border-radius: 4px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 42px;
    align-items: stretch;
    background: rgba(57,200,232,0.055);
    color: #d9ffe8;
    cursor: pointer;
    text-align: left;
  }
  .agents-copy-control { margin-top: 24px; }
  .agents-copy-control code,
  .agents-provider-snippet code {
    min-width: 0;
    padding: 13px 14px;
    align-self: center;
    color: inherit;
    font-size: 12px;
    line-height: 1.55;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
  }
  .agents-copy-icon {
    border-left: 1px solid rgba(57,200,232,0.24);
    display: grid;
    place-items: center;
    color: var(--cyan);
    font: 400 17px/1 'Barlow', sans-serif;
  }
  .agents-copy-icon::before { content: "\29C9"; }
  .agents-copy-control[data-copied="true"],
  .agents-provider-snippet[data-copied="true"] { border-color: rgba(0,232,122,0.62); }
  [data-copied="true"] > .agents-copy-icon { color: var(--green); }
  [data-copied="true"] > .agents-copy-icon::before { content: "\2713"; }
  .agents-copy-control:focus-visible,
  .agents-provider-snippet:focus-visible,
  .agents-provider-control select:focus-visible,
  .agents-self-test button:focus-visible,
  .agents-language select:focus-visible,
  .agents-back:focus-visible,
  .agents-technical > summary:focus-visible,
  .agents-links a:focus-visible { outline: 2px solid var(--cyan); outline-offset: 2px; }
  .agents-provider-control {
    width: min(100%, 520px);
    margin-top: 14px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
  }
  .agents-provider-control select {
    min-width: 0;
    min-height: 40px;
    padding: 7px 34px 7px 10px;
    border: 1px solid var(--border);
    border-radius: 4px;
    background: #08110d;
    color: var(--white);
    font: 500 12px/1.25 'Barlow', sans-serif;
    letter-spacing: 0;
    cursor: pointer;
  }
  .agents-provider-mode {
    min-width: 76px;
    min-height: 40px;
    padding: 0 10px;
    border: 1px solid rgba(0,232,122,0.25);
    border-radius: 4px;
    display: grid;
    place-items: center;
    color: var(--green2);
    font: 600 10px/1 'Barlow', sans-serif;
  }
  .agents-provider-snippet { margin-top: 8px; }
  .agents-self-test {
    width: min(100%, 520px);
    margin-top: 10px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    align-items: stretch;
  }
  .agents-self-test button {
    min-width: 0;
    min-height: 40px;
    padding: 8px 12px;
    border: 1px solid var(--border);
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: transparent;
    color: var(--text-mid);
    cursor: pointer;
  }
  .agents-self-test button:hover { border-color: var(--cyan); color: var(--white); }
  .agents-self-test button:disabled { opacity: 0.55; cursor: wait; }
  .agents-self-test button code { min-width: 0; color: inherit; font-size: 11px; overflow-wrap: anywhere; }
  .agents-self-test output {
    min-width: 84px;
    padding: 0 10px;
    border: 1px solid var(--border);
    border-radius: 4px;
    display: grid;
    place-items: center;
    color: var(--text-dim);
    font: 600 10px/1.25 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  }
  .agents-self-test output[data-state="running"] { color: var(--cyan); }
  .agents-self-test output[data-state="pass"] { color: var(--green2); border-color: rgba(0,232,122,0.35); }
  .agents-self-test output[data-state="fail"] { color: var(--red); border-color: rgba(255,76,76,0.35); }
  .agents-copy-fallback { position: fixed; left: -10000px; top: 0; width: 1px; height: 1px; }
  .agents-technical { border-bottom: 1px solid var(--border); }
  .agents-technical > summary {
    min-height: 58px;
    padding: 0 max(20px, calc((100vw - 760px) / 2));
    display: grid;
    grid-template-columns: minmax(0, 1fr) 24px;
    align-items: center;
    gap: 14px;
    color: var(--text-mid);
    font: 500 12px/1.45 'Barlow', sans-serif;
    cursor: pointer;
    list-style: none;
  }
  .agents-technical > summary::-webkit-details-marker { display: none; }
  .agents-technical > summary:hover { color: var(--white); }
  .agents-technical-chevron {
    width: 24px;
    height: 24px;
    display: grid;
    place-items: center;
    color: var(--cyan);
  }
  .agents-technical-chevron::before { content: "+"; font: 400 18px/1 'Barlow', sans-serif; }
  .agents-technical[open] .agents-technical-chevron::before { content: "\2212"; }
  .agents-technical:not([open]) .agents-technical-body { display: none; }
  .agents-technical-body { border-top: 1px solid var(--border); }
  .agents-band { padding: 36px 20px; border-bottom: 1px solid var(--border); }
  .agents-technical-body .agents-band:last-child { border-bottom: 0; }
  .agents-band-alt { background: rgba(255,255,255,0.018); }
  .agents-inner { width: min(100%, 760px); margin: 0 auto; }
  .agents-inner h2 { color: var(--white); font: 400 25px/1 'Bebas Neue', sans-serif; letter-spacing: 0; }
  .agents-tool-row { margin-top: 18px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border: 1px solid var(--border); }
  .agents-tool-row > div { min-width: 0; padding: 18px; display: grid; gap: 7px; }
  .agents-tool-row > div + div { border-left: 1px solid var(--border); }
  .agents-tool-row code { color: var(--cyan); font-size: 12px; overflow-wrap: anywhere; }
  .agents-tool-row span, .agents-boundary { color: var(--text-mid); font: 400 12px/1.6 'Barlow', sans-serif; }
  .agents-boundary { margin-top: 14px; }
  .agents-boundary code { color: var(--green); }
  .agents-links { margin-top: 18px; display: flex; flex-wrap: wrap; gap: 9px 18px; }
  .agents-links a { color: var(--cyan); font-size: 12px; text-decoration: none; border-bottom: 1px solid rgba(57,200,232,0.3); }
  .agents-footer { padding: 24px 20px 34px; color: var(--text-dim); font: 400 11px/1.6 'Barlow', sans-serif; text-align: center; }

  @media (max-width: 600px) {
    .agents-header {
      padding: 11px 16px;
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(0, 185px);
      gap: 8px 12px;
    }
    .agents-brand { grid-column: 1; grid-row: 1; align-self: center; }
    .agents-header-actions { display: contents; }
    .agents-back {
      grid-column: 2;
      grid-row: 1;
      max-width: 185px;
      align-self: center;
      justify-self: end;
      overflow-wrap: anywhere;
      text-align: end;
    }
    .agents-language { grid-column: 1 / -1; grid-row: 2; width: 100%; }
    .agents-language select { width: 100%; max-width: none; }
    .agents-hero { min-height: 0; padding: 28px 16px 30px; justify-content: flex-start; }
    .agents-mark { width: 64px; height: 64px; }
    .agents-kicker { margin-top: 12px; }
    .agents-hero h1 { margin-top: 6px; font-size: 34px; line-height: 1.05; }
    .agents-lead { margin-top: 10px; font-size: 13px; line-height: 1.55; }
    .agents-copy-control { margin-top: 16px; }
    .agents-provider-control { grid-template-columns: minmax(0, 1fr) 68px; }
    .agents-provider-mode { min-width: 68px; }
    .agents-self-test { grid-template-columns: 1fr; }
    .agents-self-test output { min-height: 36px; }
    .agents-tool-row { grid-template-columns: 1fr; }
    .agents-tool-row > div + div { border-top: 1px solid var(--border); border-left: 0; }
    .agents-technical > summary { min-height: 52px; padding: 0 16px; }
    .agents-band { padding: 28px 16px; }
  }

  .result-divider,
  .follow-on-progress,
  .subject-masthead,
  .rec-block,
  .report-evidence-summary,
  .cat-bars,
  .accord-hd,
  .accord-body,
  .ns-header,
  .ns-legend {
    padding-left: var(--content-gutter);
    padding-right: var(--content-gutter);
  }

  .rec-block {
    background:
      linear-gradient(135deg, rgba(0,232,122,0.055), transparent 58%),
      rgba(8,17,13,0.74);
  }

  .rec-text {
    max-width: 920px;
    font-size: 15px;
    color: #cce2d3;
  }

  .cat-bars {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    padding-top: 18px;
    padding-bottom: 18px;
    background: rgba(5,12,9,0.72);
  }

  .cat-row {
    min-width: 0;
    padding: 12px;
    border: 1px solid var(--border);
    background: rgba(255,255,255,0.018);
  }

  .accord-hd {
    min-height: 66px;
    transition: background 0.15s ease;
  }

  .accord-hd:hover {
    background: rgba(255,255,255,0.018);
  }

  .ns-header {
    width: 100%;
    border-top: 0;
    border-right: 0;
    border-left: 0;
    background: transparent;
    color: inherit;
    font-family: inherit;
    text-align: left;
  }

  .accord-body {
    padding-top: 16px;
    padding-bottom: 22px;
    background: rgba(8,17,13,0.7);
  }

  #gc-result-panel .st-g2,
  #gc-result-panel .ab-g2,
  #gc-result-panel .fcp-g2,
  #gc-result-panel .icon-g2,
  #gc-result-panel .ns-icon {
    color: var(--cyan);
    border-color: rgba(57,200,232,0.62);
  }

  #gc-result-panel .icon-g2,
  #gc-result-panel .ns-icon {
    background: var(--cyan-dim);
  }

  .agent-api-card {
    margin: 20px var(--content-gutter) 28px;
    padding: 0;
    border-color: rgba(57,200,232,0.28);
    background: linear-gradient(135deg, rgba(57,200,232,0.055), rgba(0,232,122,0.025));
  }

  .agent-api-summary {
    cursor: pointer;
    padding: 18px;
    color: var(--cyan);
  }

  .agent-api-summary::marker {
    color: var(--cyan);
  }

  .agent-api-summary .agent-api-head {
    display: inline-flex;
    width: calc(100% - 18px);
    margin-left: 8px;
    margin-bottom: 0;
    vertical-align: middle;
  }

  .agent-api-body {
    padding: 0 18px 18px;
  }

  .agent-api-card:not([open]) .agent-api-pill {
    color: var(--cyan);
    border-color: rgba(57,200,232,0.45);
  }

  @media (min-width: 900px) {
    .hero {
      padding: 26px 24px 24px;
      gap: 4px;
    }

    .hero-icon-wrap,
    .hero-icon {
      width: 78px;
      height: 78px;
    }

    .hero-title {
      font-size: 48px;
      line-height: 0.96;
    }

    .hero-desc {
      max-width: 620px;
      margin-top: 4px;
      line-height: 1.55;
    }

    .hero-note {
      margin-top: 6px;
    }

    .service-shell {
      padding-top: 18px;
      padding-bottom: 18px;
    }

    .subject-masthead {
      display: grid;
      grid-template-columns: minmax(0, 1fr) 160px;
      grid-template-rows: auto auto auto auto;
      column-gap: 44px;
      row-gap: 8px;
      align-items: center;
    }

    .sm-ref,
    .sm-name,
    .sm-meta {
      grid-column: 1;
    }

    .ring-wrap {
      grid-column: 2;
      grid-row: 1 / 4;
      align-self: center;
    }

    .verdict-strip {
      grid-column: 1 / -1;
      margin: 10px 0 0 !important;
    }
  }

  @media (max-width: 899px) {
    :root {
      --content-gutter: 20px;
    }

    .cat-bars {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (max-width: 560px) {
    .cat-bars {
      grid-template-columns: 1fr;
    }

    .agent-api-card {
      margin-left: 12px;
      margin-right: 12px;
    }

    .agent-api-summary .agent-api-head {
      width: calc(100% - 14px);
      margin-left: 4px;
    }
  }

  @media (max-width: 640px) {
    .subject-masthead {
      display: grid;
      grid-template-columns: minmax(0, 1fr) 84px;
      grid-template-rows: auto auto auto auto;
      column-gap: 14px;
      row-gap: 5px;
      padding: 14px 16px;
    }

    .sm-ref {
      grid-column: 1 / -1;
      font-size: 9px;
    }

    .sm-name,
    .sm-meta {
      grid-column: 1;
      min-width: 0;
    }

    .sm-name {
      font-size: 30px;
      overflow-wrap: anywhere;
    }

    .sm-meta {
      font-size: 11px;
      line-height: 1.4;
    }

    .ring-wrap {
      grid-column: 2;
      grid-row: 2 / 4;
      width: 84px;
      height: 84px;
      align-self: center;
    }

    .ring-svg {
      width: 84px;
      height: 84px;
    }

    .ring-score {
      font-size: 34px;
      text-shadow: none;
    }

    .ring-label {
      font-size: 7px;
      letter-spacing: 0;
    }

    .verdict-strip {
      grid-column: 1 / -1;
      margin: 4px 0 0;
      padding: 8px 10px;
      gap: 8px;
      flex-wrap: wrap;
    }

    .vs-text {
      font-size: 11px;
      letter-spacing: 0;
    }

    .vs-conf {
      font-size: 10px;
    }

    .subject-masthead::after {
      display: none;
    }

    .rec-block {
      padding: 14px 16px;
      gap: 7px;
    }

    .rec-kicker {
      font-size: 9px;
      letter-spacing: 0;
    }

    .rec-text {
      font-size: 14px;
      line-height: 1.45;
    }

    .material-digest {
      gap: 3px;
    }

    .material-digest-row {
      gap: 8px;
      padding: 2px 0;
    }

    .material-digest-summary {
      font-size: 11.5px;
      line-height: 1.35;
    }

    .identity-next-field {
      padding-top: 8px;
    }
  }
