    :root {
      --panel-gap: 12px;
      --panel-right-gap: 40px;
      --panel-top: 180px; /* JS will update */
      --box-pad: 0px;
      --bg: #ffffff;
      --fg: #0b0b0b;
      --muted: #6b7280;
      --link: #0b0b0b;
      --maxw: 980px;
      --border: #e5e7eb;
      --hairline: rgba(12,12,12,.08);
      --spacer: min(52vh, 520px); /* amount of initial empty space below the two‑liners */
      /* PoS v2 additions */
      --accent: #0a84ff;
      --accent-soft: rgba(10,132,255,.12);
      --ease-out: cubic-bezier(.22,1,.36,1);
      --panelW: clamp(400px, 36%, 540px);
      --chart-left: 46px; /* JS updates this to align refs */
    }
    * { box-sizing: border-box; }
    html, body { height: 100%; }
    body {
      margin: 0;
      background: var(--bg);
      color: var(--fg);
      font: 16px/1.6 -apple-system, BlinkMacSystemFont, "SF Pro Text", Inter, "Segoe UI", Roboto, Arial, "Helvetica Neue", system-ui, sans-serif;
      -webkit-font-smoothing: antialiased;
      text-rendering: optimizeLegibility;
    }
    a { color: var(--link); text-decoration: none; border-bottom: 1px solid transparent; }
    a:hover { border-bottom-color: currentColor; }

    .wrap {
      max-width: var(--maxw);
      margin: 0 auto;
      padding: min(14vh, 11rem) 1.25rem 4.5rem;
    }

    /* Navigation Container */
    .links {
      position: fixed;
      left: 16px;
      top: 16px;
      width: var(--sidew);
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: 0; /* Handled by padding in children */
      padding: 0;
      margin: 0;
      z-index: 60;
      font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", sans-serif;
    }
    .links::after { display: none; }

    /* Header: Brand + Toggle */
    .nav-head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      width: 100%;
      height: 32px; /* Explicit height for vertical centering */
    }

    .links .brand {
      font-weight: 600;
      font-size: 14px; /* Apple-style small but strong header */
      letter-spacing: -0.01em;
      color: var(--fg);
      margin: 0;
      border: none;
      line-height: 32px; /* Match container height */
      text-decoration: none;
    }

    .nav-toggle {
      appearance: none;
      background: transparent;
      border: none;
      cursor: pointer;
      padding: 0;
      margin: 0;
      width: 28px;
      height: 28px;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 6px;
      color: var(--fg);
      transition: background-color 0.2s ease;
    }

    .nav-toggle:hover,
    .nav-toggle[aria-expanded="true"] {
      background-color: rgba(0, 0, 0, 0.05);
    }

    .nav-toggle svg {
      width: 18px;
      height: 18px;
      stroke-width: 1.5px;
      stroke: currentColor;
    }

    /* Collapsible Menu Items */
    .nav-items {
      display: flex;
      flex-direction: column;
      width: 100%;
      padding-top: 8px;
      transform-origin: top;
      animation: navReveal 0.2s cubic-bezier(0.2, 0.8, 0.2, 1);
    }

    .nav-items[hidden] {
      display: none;
    }

    .nav-items a {
      display: block;
      width: 100%;
      padding: 6px 0;
      font-size: 13px;
      font-weight: 400;
      color: rgba(0, 0, 0, 0.6); /* Muted grey */
      text-decoration: none;
      border: none;
      transition: color 0.15s ease;
      line-height: 1.4;
    }

    .nav-items a:hover,
    .nav-items a[aria-current="page"] {
      color: #000000;
    }

    @keyframes navReveal {
      from { opacity: 0; transform: translateY(-5px); }
      to { opacity: 1; transform: none; }
    }

    /* default: visible if JS is blocked */
    .grid-wrap { opacity: 1; transform: none; }

    /* when JS runs, our external script adds .js to <html> */
    .js .grid-wrap { opacity: 0; transform: translateY(12px); }
    .js body.stuck .grid-wrap { opacity: 1; transform: none; }

    /* Headline */
    h1.headline {
      margin: 0;
      font-size: clamp(1rem, 1.15vw, 1.1rem);
      line-height: 1.05;
      text-align: center;
      white-space: nowrap;
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none;
      font-weight: 450;
      font-family: ui-serif, "New York", "Iowan Old Style", "Palatino", Georgia, serif;
    }
    h1.headline::-webkit-scrollbar { display: none; }

    p.lead {
      margin: .65rem 0 0 0;
      color: var(--muted);
      text-align: center;
      font-size: .98rem;
    }

    /* Inline edits */
    .inline-edit {
      display: inline-block;
      width: auto;
      min-width: 6ch;
      padding: 0 .25rem .1rem;
      margin: 0 .2rem;
      font: inherit;
      color: inherit;
      background: transparent;
      border: none;
      border-bottom: 1px solid var(--border);
      outline: none;
      text-align: center;
    }
    .inline-edit:focus-visible { border-bottom-color: var(--fg); transition: border-color .15s ease; }
    .inline-edit[readonly] { cursor: default; }
    /* Grey out the NCT and Date fields in the one-liner */
    #nctInput, #dateInput { color: var(--muted); border-bottom-color: var(--border); padding: 0 .05rem .05rem; margin: 0 .12rem; min-width: 5ch; }
    #nctInput:hover, #dateInput:hover { color: var(--muted); }

    /* Hover-only pilot link near the headline NCT/date */
    .pilot-hover { position: relative; display: inline-block; }
    .hover-pilot {
      position: absolute;
      top: -1.2em; /* top-right of the hovered phrase */
      right: 0;
      white-space: nowrap;
      display: inline-block;
      font-size: .94rem;
      color: var(--muted);
      opacity: 0;
      pointer-events: none;
      transition: opacity .15s var(--ease-out);
    }
    .pilot-hover:hover .hover-pilot,
    .pilot-hover:focus-within .hover-pilot,
    #nctInput:hover ~ .hover-pilot,
    #dateInput:hover ~ .hover-pilot { opacity: .95; pointer-events: auto; }

    /* HERO: sticks only until the spacer has scrolled out
       (no big bottom padding that would cover the grid) */
    .hero-wrap { position: relative; }
    .hero {
      position: sticky;
      top: 0;
      z-index: 20;
      background: var(--bg);
      padding: clamp(1rem, 4vh, 1.5rem) 0 .25rem;
      text-align: center;
    }
    .hero-spacer {
      height: var(--spacer);
    }

    /* Short separator line (shows while hero is stuck) */
    .short-rule {
      width: 72px;
      height: 1px;
      margin: .85rem auto 0;
      background: linear-gradient(to right, transparent, rgba(12,12,12,.28), transparent);
      border-radius: 999px;
      opacity: 0;
      transform: translateY(6px);
      transition: opacity .18s ease, transform .18s ease;
    }
    body.stuck .short-rule { opacity: .55; transform: translateY(0); }

    /* Grid */
    .grid-wrap {
      margin-top: 0; /* sits immediately after hero-wrap */
      position: relative;
      opacity: 0;
      transform: translateY(12px);
      transition: opacity .28s ease, transform .28s ease;
    }
    body.stuck .grid-wrap { opacity: 1; transform: translateY(0); }

    /* Dimensions title and chat box below grid */
    .dim-title {
      margin: .5rem 0 .85rem;
      text-align: center;
      font-weight: 600;
      font-size: 1.02rem;
      letter-spacing: .01em;
      color: var(--muted);
    }
    .dim-chat { margin: .85rem auto 0; display: flex; justify-content: center; }
    .dim-chat form { width: min(720px, 100%); display: flex; align-items: center; gap: .5rem; }
    .dim-chat .chat-input {
      width: 100%;
      padding: .78rem 1rem;
      border: 1px solid var(--accent);
      border-radius: 999px;
      background: #fff;
      font: inherit;
      color: var(--fg);
      outline: none;
    }
    .dim-chat .chat-input:focus-visible { box-shadow: 0 0 0 2px var(--hairline); }
    .dim-chat .chat-input::placeholder { color: var(--muted); }
    .dim-chat .btn { white-space: nowrap; }

    /* (removed) decorative band above grid */

    .grid {
      --col1: 1fr; --col2: 1fr; --col3: 1fr;
      --row1: 1fr; --row2: 1fr; --row3: 1fr;
      --sep-c1: 33.333%; --sep-c2: 66.666%;
      --sep-r1: 33.333%; --sep-r2: 66.666%;

      display: grid;
      grid-template-columns: var(--col1) var(--col2) var(--col3);
      grid-template-rows: var(--row1) var(--row2) var(--row3);
      gap: 0;
      position: relative;
      background:
        linear-gradient(to bottom, var(--border), var(--border)) var(--sep-c1) 0 / 1px 100% no-repeat,
        linear-gradient(to bottom, var(--border), var(--border)) var(--sep-c2) 0 / 1px 100% no-repeat,
        linear-gradient(to right,  var(--border), var(--border)) 0 var(--sep-r1) / 100% 1px no-repeat,
        linear-gradient(to right,  var(--border), var(--border)) 0 var(--sep-r2) / 100% 1px no-repeat;
      transition: grid-template-columns .35s ease, grid-template-rows .35s ease, background-position .35s ease;
    }

    .card {
      position: relative;
      background: transparent;
      border: 0;
      border-radius: 0;
      padding: clamp(16px, 1.8vw, 22px) clamp(14px, 1.6vw, 18px);
      display: flex;
      align-items: center;
      justify-content: center;
      text-align: center;
      line-height: 1.2;
      font-weight: 450;
      letter-spacing: .01em;
      overflow: hidden;
      outline: none;
    }
    .card:focus-visible { box-shadow: inset 0 0 0 1px var(--hairline); }

    .label { font-size: .96rem; opacity: .92; }
    .desc {
      margin-top: .4rem;
      font-size: .88rem;
      color: var(--muted);
      max-width: 32ch;
      opacity: 0;
      transform: translateY(6px);
      transition: opacity .18s ease, transform .18s ease;
    }

    .card:hover .desc, .card:focus .desc { opacity: .95; transform: translateY(0); }
    .card:hover .label, .card:focus .label { opacity: 1; }

    @supports selector(:has(*)) {
      .grid:has(.card:nth-child(1):hover),
      .grid:has(.card:nth-child(4):hover),
      .grid:has(.card:nth-child(7):hover) {
        --col1: 45%; --col2: 27.5%; --col3: 27.5%;
        --sep-c1: 45%; --sep-c2: 72.5%;
      }
      .grid:has(.card:nth-child(2):hover),
      .grid:has(.card:nth-child(5):hover),
      .grid:has(.card:nth-child(8):hover) {
        --col1: 27.5%; --col2: 45%; --col3: 27.5%;
        --sep-c1: 27.5%; --sep-c2: 72.5%;
      }
      .grid:has(.card:nth-child(3):hover),
      .grid:has(.card:nth-child(6):hover),
      .grid:has(.card:nth-child(9):hover) {
        --col1: 27.5%; --col2: 27.5%; --col3: 45%;
        --sep-c1: 27.5%; --sep-c2: 55%;
      }
      .grid:has(.card:nth-child(1):hover),
      .grid:has(.card:nth-child(2):hover),
      .grid:has(.card:nth-child(3):hover) {
        --row1: 45%; --row2: 27.5%; --row3: 27.5%;
        --sep-r1: 45%; --sep-r2: 72.5%;
      }
      .grid:has(.card:nth-child(4):hover),
      .grid:has(.card:nth-child(5):hover),
      .grid:has(.card:nth-child(6):hover) {
        --row1: 27.5%; --row2: 45%; --row3: 27.5%;
        --sep-r1: 27.5%; --sep-r2: 72.5%;
      }
      .grid:has(.card:nth-child(7):hover),
      .grid:has(.card:nth-child(8):hover),
      .grid:has(.card:nth-child(9):hover) {
        --row1: 27.5%; --row2: 27.5%; --row3: 45%;
        --sep-r1: 27.5%; --sep-r2: 55%;
      }
    }

    @supports not selector(:has(*)) {
      .card { transition: transform .18s ease; }
      .card:hover { transform: scale(1.03); }
    }

    .grid-wrap::before {
      content: "";
      position: absolute;
      inset: -2% -2% 0 -2%;
      pointer-events: none;
      background: radial-gradient(1000px 400px at 50% 10%, rgba(0,0,0,.03), transparent 60%);
      opacity: .8;
    }

    .cta { margin: clamp(2.75rem, 9vh, 4rem) 0 0; text-align: center; }
    .cta--near-hero { margin: .85rem 0 0; }
    /* Pin the CTA two‑liner as you scroll, under the sticky hero */
    .cta--near-hero {
      position: sticky;
      top: var(--cta-top, 72px); /* pin just below the sticky hero */
      z-index: 15;
      background: var(--bg);
      padding: .25rem 0 .5rem;
    }

    /* When CTA is pinned, fade the hero so CTA can take over the top */
    body.cta-pinned .hero { opacity: 0; pointer-events: none; z-index: 0; transition: opacity .2s var(--ease-out); }
    .btn {
      display: inline-block;
      padding: .7rem 1rem;
      border: 1px solid var(--fg);
      border-radius: 999px;
      font-weight: 600;
      letter-spacing: .01em;
      text-decoration: none;
    }
    .btn:hover { background: var(--fg); color: #fff; }

    footer {
      margin-top: 2.5rem;
      color: var(--muted);
      font-size: .92rem;
      text-align: center;
    }

    @media (max-width: 560px) {
      .wrap { padding-top: min(16vh, 12rem); }
      .inline-edit { min-width: 5ch; }
      .label { font-size: .94rem; }
      .desc { font-size: .86rem; }
      :root {
      --panel-gap: 12px;
      --panel-top: 180px; /* JS will update */
      --box-pad: 0px; --spacer: 42vh; } /* a bit less spacer on short screens */
    }

    .sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); border:0; }
    @media (prefers-reduced-motion: reduce) {
      * { animation: none !important; transition: none !important; }
    }
  
    /* Inline "select" for decision angle */
    .selectlike {
      cursor: pointer;
      background: transparent;
      border: none;
      border-bottom: 1px dashed var(--border);
      padding: 0 .6rem .1rem; /* slightly roomier control */
      margin: 0 .6rem; /* add space from surrounding text */
    }
    .selectlike:after {
      content: " ▾";
      font-size: .9em;
      opacity: .6;
    }
    .selectlike[aria-expanded="true"]:after {
      display: inline-block;
      transform: rotate(180deg);
    }

    /* Popover grid of decision angles (3x3 + clarifier) */
    .menu-grid {
      position: absolute;
      top: 100%;
      left: 50%;
      transform: translate(-50%, .5rem);
      width: min(840px, 95vw);
      background: var(--bg);
      border: 1px solid var(--border);
      border-radius: 12px;
      box-shadow: 0 12px 32px rgba(0,0,0,.08);
      padding: .75rem;
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: .25rem;
      z-index: 50;
    }
    .menu-grid[hidden] { display: none; }
    .menu-item {
      position: relative;
      appearance: none;
      -webkit-appearance: none;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: .25rem;
      padding: .9rem .75rem;
      border: 0;
      background: transparent;
      border-radius: 10px;
      text-align: center;
      cursor: pointer;
    }
    .menu-item:hover, .menu-item:focus-visible {
      background: rgba(12,12,12,.035);
      outline: none;
    }
    /* Greyed, non-interactive items with hover hint */
    .menu-item[aria-disabled="true"] {
      cursor: default;
    }
    .menu-item[aria-disabled="true"]:hover,
    .menu-item[aria-disabled="true"]:focus-visible {
      background: transparent;
    }
    .menu-item[aria-disabled="true"] .mi-label { color: var(--muted); }
    .menu-item[aria-disabled="true"] .mi-desc  { color: var(--muted); opacity: .75; }
    .menu-item[aria-disabled="true"]::after {
      content: 'request a pilot';
      position: absolute;
      top: 6px;
      right: 8px;
      font-size: .8rem;
      color: var(--muted);
      opacity: 0;
      transition: opacity .15s var(--ease-out);
      pointer-events: none;
      white-space: nowrap;
    }
    .menu-item[aria-disabled="true"]:hover::after,
    .menu-item[aria-disabled="true"]:focus-visible::after { opacity: .95; }
    .menu-item .mi-label {
      font-weight: 550;
      font-size: .95rem;
    }
    .menu-item .mi-desc {
      color: var(--muted);
      font-size: .84rem;
      line-height: 1.25;
      max-width: 26ch;
    }
    .menu-item.all {
      grid-column: 1 / -1;
      border-top: 1px dashed var(--border);
      margin-top: .25rem;
      padding-top: .75rem;
    }

    /* Large placeholder box that scrolls away (not sticky) */
    .showcase-box {
      margin: clamp(1rem, 3vh, 1.5rem) auto 0;
      width: min(920px, 100%);
      min-height: clamp(320px, 48vh, 560px);
      border: 2px dashed var(--border);
      border-radius: 16px;
      display: grid;
      place-items: center;
      background: repeating-linear-gradient(45deg, transparent, transparent 12px, rgba(12,12,12,.015) 12px, rgba(12,12,12,.015) 24px);
    }
    .showcase-box p {
      margin: 0;
      font-size: .9rem;
      color: var(--muted);
    }

    /* PoS chart styles */
    .showcase-box.has-chart {
      border: 1px solid var(--border);
      background: #fff;
      display: block;
      padding: 0;
      position: relative;
      overflow: visible; /* allow absolutely positioned panel */
      padding-bottom: var(--box-pad, 0px);
    }
    .pos-chart {
      width: 100%;
      height: 100%;
      position: absolute;
      inset: 0;
    }
    .pos-chart svg { width: 100%; height: 100%; display: block; }
    .pos-chart .grid line { stroke: var(--border); stroke-opacity: .75; }
    .pos-chart text { font-size: 12.5px; fill: var(--muted); letter-spacing: .01em; }
    .pos-chart .axis-label { fill: var(--muted); }
    .pos-chart .event-label { fill: var(--fg); font-size: .86rem; font-weight: 500; }
    .pos-chart .date-label { fill: var(--muted); font-size: .78rem; }
    .pos-chart .area { fill: url(#posGrad); }
    .pos-chart .line { stroke: var(--accent); stroke-width: 2.5; fill: none; }
    .pos-chart .line-shadow { stroke: rgba(10,132,255,.28); stroke-width: 6; fill: none; }
    .pos-chart .point { fill: var(--accent); stroke: var(--accent); stroke-width: 1.5; opacity: 0; transform-box: fill-box; transform-origin: center; }
    .pos-chart .title { fill: #9ca3af; font-weight: 600; font-size: 12px; letter-spacing: .06em; }
    .pos-chart .fade-in { transition: opacity .5s ease, transform .5s ease; }

    /* Split layout for chart + panel */
    .pos-split { display: block; gap: 0; height: auto; padding: 12px; position: relative; }
    .showcase-box.with-panel .pos-split { /* no column change; panel is absolutely positioned */ }
    .pos-plot { position: relative; min-height: 320px; clip-path: var(--plot-clip, none); transition: clip-path .6s var(--ease-out); }
    .pos-panel { position: absolute; right: var(--panel-right-gap); top: var(--panel-top); width: var(--panelW); opacity: 0; transform: translateY(6px); pointer-events: none; transition: opacity .5s var(--ease-out), transform .5s var(--ease-out); }
    .showcase-box.with-panel .pos-panel { opacity: 1; transform: none; pointer-events: auto; }
    .pos-card {
      background: #fff;
      border: 1px solid var(--border);
      border-radius: 16px;
      box-shadow: 0 10px 30px rgba(0,0,0,.06);
      padding: 14px 16px;
      color: var(--fg);
    }
    /* Scientific, minimalist card variants for PoS */
    .pos-card--scientific { font-variant-numeric: tabular-nums; letter-spacing: .005em; }
    /* Compact, low-key panel for PoS event details */
    .pos-card--compact { font-variant-numeric: tabular-nums; letter-spacing: .005em; padding: 12px 14px; }
    .pos-mini { font-size: .9rem; }
    .pos-mini__top { display: flex; align-items: center; justify-content: space-between; margin-bottom: .25rem; }
    .pos-type { display: inline-block; font-size: .78rem; font-weight: 600; color: var(--muted); text-transform: capitalize; }
    .pos-date { font-size: .78rem; color: var(--muted); }
    .pos-mini__posline { margin: .1rem 0 .25rem; display: flex; gap: .5rem; align-items: baseline; }
    .pos-mini__pos { font-weight: 700; font-size: .98rem; color: #111827; }
    .pos-mini__range { font-size: .82rem; color: var(--muted); }
    .pos-mini__delta { font-size: .82rem; color: var(--muted); }
    .pos-summary { margin: .2rem 0 .35rem; font-size: .86rem; color: var(--muted); line-height: 1.4; }
    .pos-src__link { font-size: .84rem; color: var(--muted); border-bottom: 1px dashed var(--border); }
    .pos-src__link:hover { color: var(--fg); border-bottom-color: var(--muted); }
    .pos-note { margin-top: .25rem; font-size: .82rem; color: var(--fg); }

    /* 3D embedding box (black & white) placed left-below of references */
    .pos-embed3d {
      margin: 14px 0 8px -64px; /* place further left */
      width: calc(100% - 160px); /* narrower than container */
      height: 260px;
      background: #fff;
      border: 1px solid var(--border);
      border-radius: 12px;
      box-shadow: 0 10px 30px rgba(0,0,0,.06); /* subtle depth like panel */
      position: relative;
      overflow: hidden;
    }
    .pos-embed3d canvas { width: 100%; height: 100%; display: block; background: #fff; }
    .pos-embed3d .legend { position: absolute; left: 10px; bottom: 8px; font-size: 12px; color: #111; background: rgba(255,255,255,.92); border: 1px solid var(--border); border-radius: 6px; padding: 4px 6px; letter-spacing: .01em; }
    .pos-embed3d .legend .sw { display: inline-block; width: 9px; height: 9px; border-radius: 999px; margin-right: 6px; vertical-align: -1px; background: #111; border: 1px solid #111; }
    .pos-embed3d .legend .sw.gray { background: #777; border-color: #777; }
    .pos-refs__list--full { clear: both; }
    @media (max-width: 720px) {
      .pos-embed3d { margin: 8px -12px; width: calc(100% + 24px); height: 220px; }
    }
    .pos-card__hdr { margin: 0 0 .35rem 0; font-size: 1.02rem; font-weight: 600; letter-spacing: .01em; }
    .pos-card .kv { margin: .25rem 0 .35rem; display: grid; grid-template-columns: 1fr; gap: .2rem; }
    .pos-card .kv > div { display: grid; grid-template-columns: 1fr auto; border-top: 1px dashed var(--border); padding: .42rem 0 .28rem; }
    .pos-card .kv > div:first-child { border-top: 0; }
    .pos-card dt { text-transform: uppercase; font-size: .74rem; color: var(--muted); letter-spacing: .03em; }
    .pos-card dd { margin: 0; font-weight: 600; }
    .pos-card h3 {
      margin: 0 0 .35rem 0;
      font-size: 1.02rem;
    }
    .pos-card .row {
      display: flex;
      justify-content: space-between;
      gap: 10px;
      padding: .45rem 0;
      border-top: 1px dashed var(--border);
    }
    .pos-card .row:first-of-type { border-top: 0; padding-top: 0; }
    .pos-card .muted { color: var(--muted); }
    .pos-bad { color: #dc2626; }
    .pos-good { color: #059669; }
    .pos-card .note { margin: .4rem 0 0; font-size: .83rem; color: var(--muted); }
    .pos-card ul {
      margin: .35rem 0 0 1.1rem;
      padding: 0;
    }
    .pos-card li { margin: .15rem 0; }

    /* Similar trials references aligned with chart title */

.pos-refs { position: relative; padding: 8px 12px 14px; }
.pos-refs__list--side { padding-right: calc(var(--panelW) + var(--panel-gap)); }
.pos-refs__list--full { margin-top: .25rem; }
@media (max-width: 720px) {
  .pos-refs__list--side { padding-right: 0; }
}
    .pos-refs__hdr { margin: .25rem 0 .25rem calc(var(--chart-left)); font-size: .94rem; color: var(--muted); font-weight: 600; letter-spacing: .01em; }
    .pos-refs__list { margin: .2rem 0 0 calc(var(--chart-left) + 12px); padding: 0; list-style: none; color: #6b7280; font-size: .93rem; }
    .pos-refs__item { margin: .25rem 0; }
    .pos-refs__item .nct { font-weight: 600; color: #4b5563; }
    .pos-refs__item .ttl { color: #6b7280; }
    .pos-refs__item .url { color: #6b7280; border-bottom-color: transparent; }
    .pos-refs__item .url:hover { border-bottom-color: #6b7280; }

@media (max-width: 720px) {
  .showcase-box.with-panel .pos-split { grid-template-columns: 1fr; }
  .pos-panel { clip-path: inset(0 0 0 0); height: auto; }
  .pos-refs__hdr { margin-left: 16px; }
  .pos-refs__list { margin-left: 28px; }
}

/* Ensure the side panel remains clickable above references/embed */
.pos-panel { z-index: 5; }
.pos-refs { position: relative; z-index: 0; }

/* Extra breathing room and separator above PoS chart box */
#pos-showcase {
  margin-top: 10rem;
  position: relative;
}
#pos-showcase::before {
  content: "";
  position: absolute;
  left: 50%;
  top: -3rem;
  width: 72px;
  height: 1px;
  transform: translateX(-50%);
  background: var(--border);
  border-radius: 999px;
}
