    .gs-slide {
      width: 100%;
      max-width: 900px;
      padding: 20px 28px 14px;
      display: flex;
      flex-direction: column;
      gap: 10px;
    }

    /* ── Control bar ── */
    .gs-ctrl {
      display: flex;
      align-items: center;
      gap: 14px;
      flex-wrap: wrap;
    }
    .gs-ctrl-label {
      font-size: 13px;
      color: #a0a0b0;
      white-space: nowrap;
    }
    .gs-ctrl input[type=range] {
      flex: 1;
      min-width: 100px;
      max-width: 280px;
      accent-color: #378add;
      cursor: pointer;
    }
    .gs-ar-val {
      font-size: 22px;
      font-weight: 500;
      color: #e8e8f0;
      min-width: 38px;
      text-align: right;
    }
    .gs-ar-cat {
      font-size: 12px;
      color: #7eb8f7;
      background: rgba(55,138,221,0.15);
      border: 1px solid rgba(55,138,221,0.35);
      border-radius: 4px;
      padding: 2px 8px;
      white-space: nowrap;
    }

    /* ── SVG container ── */
    .gs-svg-wrap {
      width: 100%;
    }
    .gs-svg-wrap svg {
      display: block;
      width: 100%;
      height: auto;
    }

    /* ── Property cards (right panel) ── */
    .gs-prop-glide rect  { fill: rgba(24,95,165,0.2); stroke: #378add; stroke-width: 0.6; }
    .gs-prop-glide .gs-ph { fill: #7eb8f7; font-size: 13px; font-weight: 500; }
    .gs-prop-glide .gs-pv { fill: #378add; font-size: 12px; }

    .gs-prop-stab rect  { fill: rgba(29,158,117,0.2); stroke: #1d9e75; stroke-width: 0.6; }
    .gs-prop-stab .gs-ph { fill: #5dcaa5; font-size: 13px; font-weight: 500; }
    .gs-prop-stab .gs-pv { fill: #1d9e75; font-size: 12px; }

    .gs-prop-speed rect { fill: rgba(186,117,23,0.2); stroke: #ba7517; stroke-width: 0.6; }
    .gs-prop-speed .gs-ph { fill: #aacc55; font-size: 13px; font-weight: 500; }
    .gs-prop-speed .gs-pv { fill: #ef9f27; font-size: 12px; }

    /* ── Annotation text ── */
    .gs-label-span  { font-size: 12px; fill: #378add; }
    .gs-label-depth { font-size: 12px; fill: #1d9e75; }
    .gs-label-side  { font-size: 12px; fill: #888; }
    .gs-formula     { font-size: 12px; fill: #666; }

    /* ── Suspension lines ── */
    #gs-lines-group line { stroke: #378add; stroke-width: 0.9; }

    /* ── Riser lines ── */
    .gs-riser { stroke: #888780; stroke-width: 1; opacity: 0.6; }
