/* Fonts (Roboto + Ubuntu) loaded via <link rel="preconnect"> + <link rel="stylesheet"> in document head for parallel, non-render-blocking fetch. */

    #ls-performance-lab-v5,
    #ls-performance-lab-v5 * {
      box-sizing: border-box;
    }

    #ls-performance-lab-v5 {
      --ink: #000000;
      --ink-soft: #1a1a1a;
      --charcoal: #2b2b2b;
      --stone: #767677;
      --mist: #eceff1;
      --paper: #ffffff;
      --canvas: #f5f5f5;
      --blue: #000000;
      --dark: #000000;
      --text: #1a1a1a;
      --muted: #767677;
      --line: rgba(0, 0, 0, 0.12);
      --line-strong: rgba(0, 0, 0, 0.22);
      --soft: #f5f5f5;
      --green: #008f5d;
      --orange: #c9870a;
      --red: #d30000;
      --radius: 2px;
      --font-display: Ubuntu, Arial, sans-serif;
      --font-body: Roboto, Arial, sans-serif;

      max-width: 1240px;
      margin: 0 auto;
      font-family: var(--font-body);
      font-weight: 400;
      color: var(--text);
      background: var(--paper);
      border: 1px solid var(--line-strong);
      border-radius: 0;
      overflow: visible;
      box-shadow: none;
      -webkit-font-smoothing: antialiased;
    }

    #ls-performance-lab-v5 h2,
    #ls-performance-lab-v5 h3,
    #ls-performance-lab-v5 h4,
    #ls-performance-lab-v5 label,
    #ls-performance-lab-v5 button,
    #ls-performance-lab-v5 .lslab-step strong,
    #ls-performance-lab-v5 .lslab-step span,
    #ls-performance-lab-v5 th {
      font-family: var(--font-display);
    }

    #ls-performance-lab-v5 .lslab-hero {
      padding: clamp(32px, 5vw, 64px) clamp(20px, 4vw, 48px);
      background: var(--ink);
      color: #fff;
      position: relative;
    }

    #ls-performance-lab-v5 .lslab-hero::after {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      height: 3px;
      background: linear-gradient(90deg, #fff 0%, rgba(255,255,255,.15) 100%);
    }

    #ls-performance-lab-v5 .lslab-kicker {
      display: inline-flex;
      padding: 6px 0;
      border: 0;
      border-bottom: 2px solid rgba(255,255,255,.9);
      border-radius: 0;
      font-family: var(--font-display);
      font-size: 11px;
      font-weight: 700;
      letter-spacing: .14em;
      text-transform: uppercase;
      color: rgba(255,255,255,.92);
      margin-bottom: 20px;
    }

    #ls-performance-lab-v5 .lslab-title {
      margin: 0;
      max-width: 900px;
      font-family: var(--font-display);
      font-size: clamp(32px, 5.5vw, 62px);
      font-weight: 700;
      line-height: .95;
      letter-spacing: -.04em;
      text-transform: uppercase;
    }

    #ls-performance-lab-v5 .lslab-subtitle {
      margin: 20px 0 0;
      max-width: 720px;
      font-family: var(--font-body);
      color: rgba(255,255,255,.78);
      font-size: clamp(14px, 2vw, 17px);
      font-weight: 400;
      line-height: 1.6;
    }

    #ls-performance-lab-v5 .lslab-hero-perks {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-top: 28px;
    }

    #ls-performance-lab-v5 .lslab-hero-perk {
      padding: 8px 12px;
      border-radius: 0;
      border: 1px solid rgba(255,255,255,.28);
      background: transparent;
      font-family: var(--font-display);
      font-size: 11px;
      font-weight: 700;
      letter-spacing: .08em;
      text-transform: uppercase;
    }

    #ls-performance-lab-v5 .lslab-commercial.lslab-full {
      margin: 0;
      padding: clamp(20px, 3vw, 36px) clamp(18px, 3vw, 34px);
      border: 0;
      border-top: 1px solid var(--line);
      border-bottom: 1px solid var(--line);
      border-radius: 0;
      background: var(--canvas);
      box-shadow: none;
    }

    #ls-performance-lab-v5 .lslab-commercial h3 {
      margin: 0 0 16px;
      font-family: var(--font-display);
      font-size: 13px;
      font-weight: 700;
      letter-spacing: .12em;
      text-transform: uppercase;
      color: var(--ink);
    }

    #ls-performance-lab-v5 .lslab-body {
      display: grid;
      grid-template-columns: 1.1fr .9fr;
      gap: 0;
      padding: 0;
      background: var(--canvas);
    }

    #ls-performance-lab-v5 .lslab-card {
      background: var(--paper);
      border: 0;
      border-right: 1px solid var(--line);
      border-bottom: 1px solid var(--line);
      border-radius: 0;
      padding: clamp(20px, 2.8vw, 32px);
      box-shadow: none;
      backdrop-filter: none;
    }

    #ls-performance-lab-v5 .lslab-result {
      border-right: 0;
    }

    #ls-performance-lab-v5 .lslab-card h3 {
      margin: 0 0 18px;
      padding-bottom: 12px;
      border-bottom: 2px solid var(--ink);
      font-size: 13px;
      font-weight: 700;
      letter-spacing: .12em;
      text-transform: uppercase;
      color: var(--ink);
    }

    #ls-performance-lab-v5 .lslab-card-intro,
    #ls-performance-lab-v5 .lslab-mini,
    #ls-performance-lab-v5 .lslab-help,
    #ls-performance-lab-v5 .lslab-note,
    #ls-performance-lab-v5 .lslab-reco ul,
    #ls-performance-lab-v5 td,
    #ls-performance-lab-v5 .lslab-insight-block p,
    #ls-performance-lab-v5 .lslab-insight-lead {
      font-family: var(--font-body);
    }

    #ls-performance-lab-v5 .lslab-card-intro {
      margin: -4px 0 18px;
      color: var(--muted);
      font-size: 14px;
      line-height: 1.55;
    }

    #ls-performance-lab-v5 .lslab-step {
      margin: 28px 0 16px;
      padding: 0 0 0 12px;
      border-bottom: 0;
      border-left: 3px solid var(--ink);
    }

    #ls-performance-lab-v5 .lslab-step strong {
      display: block;
      font-size: 10px;
      font-weight: 700;
      letter-spacing: .14em;
      text-transform: uppercase;
      color: var(--stone);
      margin-bottom: 4px;
    }

    #ls-performance-lab-v5 .lslab-step span {
      font-size: 18px;
      font-weight: 700;
      color: var(--ink);
      letter-spacing: -.02em;
      text-transform: uppercase;
    }

    #ls-performance-lab-v5 .lslab-section-title {
      margin: 24px 0 12px;
      font-size: 11px;
      font-weight: 700;
      color: var(--ink);
      text-transform: uppercase;
      letter-spacing: .12em;
    }

    #ls-performance-lab-v5 .lslab-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 16px 14px;
    }

    #ls-performance-lab-v5 label {
      display: block;
      margin-bottom: 6px;
      color: var(--ink);
      font-size: 11px;
      font-weight: 700;
      letter-spacing: .08em;
      text-transform: uppercase;
    }

    #ls-performance-lab-v5 input,
    #ls-performance-lab-v5 select {
      width: 100%;
      height: 44px;
      border: 1px solid var(--line-strong);
      border-radius: var(--radius);
      padding: 0 12px;
      background: var(--paper);
      color: var(--text);
      font-family: var(--font-body);
      font-size: 14px;
      font-weight: 400;
      outline: none;
      transition: border-color .15s, box-shadow .15s;
      -webkit-appearance: none;
      appearance: none;
    }

    #ls-performance-lab-v5 input[type="number"] {
      -moz-appearance: textfield;
    }

    #ls-performance-lab-v5 input[type="number"]::-webkit-outer-spin-button,
    #ls-performance-lab-v5 input[type="number"]::-webkit-inner-spin-button {
      -webkit-appearance: none;
      margin: 0;
    }

    #ls-performance-lab-v5 input:focus,
    #ls-performance-lab-v5 select:focus {
      border-color: var(--ink);
      box-shadow: 0 0 0 1px var(--ink);
    }

    #ls-performance-lab-v5 .lslab-help {
      display: block;
      margin-top: 5px;
      color: var(--muted);
      font-size: 12px;
      line-height: 1.4;
    }

    #ls-performance-lab-v5 .lslab-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-top: 28px;
      padding-top: 20px;
      border-top: 1px solid var(--line);
    }

    #ls-performance-lab-v5 button {
      border: 1px solid transparent;
      border-radius: var(--radius);
      padding: 14px 20px;
      min-height: 46px;
      font-family: var(--font-display);
      font-size: 12px;
      font-weight: 700;
      letter-spacing: .08em;
      text-transform: uppercase;
      cursor: pointer;
      touch-action: manipulation;
      -webkit-tap-highlight-color: transparent;
      transition: background .15s, color .15s, border-color .15s;
    }

    @media (hover: hover) {
      #ls-performance-lab-v5 button:hover {
        transform: none;
      }
      #ls-performance-lab-v5 .lslab-primary:hover {
        background: var(--charcoal);
      }
      #ls-performance-lab-v5 .lslab-secondary:hover {
        background: var(--ink);
        color: #fff;
      }
    }

    #ls-performance-lab-v5 .lslab-primary {
      background: var(--ink);
      color: #fff;
      border-color: var(--ink);
      box-shadow: none;
    }

    #ls-performance-lab-v5 .lslab-secondary {
      background: var(--paper);
      color: var(--ink);
      border-color: var(--line-strong);
    }

    #ls-performance-lab-v5 .lslab-cloud {
      background: var(--charcoal);
      color: #fff;
      border-color: var(--charcoal);
    }

    #ls-performance-lab-v5 .lslab-result {
      position: sticky;
      top: 0;
      align-self: start;
    }

    #ls-performance-lab-v5 .lslab-score-row {
      display: grid;
      grid-template-columns: 168px 1fr;
      gap: 20px;
      align-items: center;
    }

    #ls-performance-lab-v5 .lslab-score-circle {
      width: 168px;
      aspect-ratio: 1;
      border-radius: 50%;
      display: grid;
      place-items: center;
      background: conic-gradient(var(--ink) 0deg, var(--mist) 0deg);
      position: relative;
    }

    #ls-performance-lab-v5 .lslab-score-circle:before {
      content: "";
      position: absolute;
      inset: 10px;
      border-radius: inherit;
      background: var(--paper);
      box-shadow: inset 0 0 0 1px var(--line);
    }

    #ls-performance-lab-v5 .lslab-score-inner {
      position: relative;
      text-align: center;
      z-index: 1;
    }

    #ls-performance-lab-v5 .lslab-score-number {
      display: block;
      color: var(--ink);
      font-family: var(--font-display);
      font-size: 52px;
      line-height: .9;
      font-weight: 700;
      letter-spacing: -.06em;
    }

    #ls-performance-lab-v5 .lslab-score-label {
      display: block;
      margin-top: 6px;
      color: var(--stone);
      font-family: var(--font-display);
      font-size: 10px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: .12em;
    }

    #ls-performance-lab-v5 .lslab-big-level {
      margin: 0 0 8px;
      font-family: var(--font-display);
      font-size: 20px;
      line-height: 1.1;
      font-weight: 700;
      letter-spacing: -.02em;
      text-transform: uppercase;
      color: var(--ink);
    }

    #ls-performance-lab-v5 .lslab-mini {
      color: var(--muted);
      font-size: 13px;
      line-height: 1.55;
    }

    #ls-performance-lab-v5 .lslab-badges {
      display: flex;
      flex-wrap: wrap;
      gap: 6px;
      margin-top: 14px;
    }

    #ls-performance-lab-v5 .lslab-badge {
      display: inline-flex;
      align-items: center;
      padding: 6px 10px;
      border-radius: 0;
      background: var(--canvas);
      border: 1px solid var(--line-strong);
      color: var(--ink);
      font-family: var(--font-display);
      font-size: 10px;
      font-weight: 700;
      letter-spacing: .06em;
      text-transform: uppercase;
    }

    #ls-performance-lab-v5 .lslab-bars {
      display: grid;
      gap: 10px;
      margin-top: 24px;
    }

    #ls-performance-lab-v5 .lslab-bar-row {
      display: grid;
      gap: 6px;
    }

    #ls-performance-lab-v5 .lslab-bar-top {
      display: flex;
      justify-content: space-between;
      gap: 12px;
      color: var(--ink);
      font-family: var(--font-display);
      font-size: 11px;
      font-weight: 700;
      letter-spacing: .04em;
      text-transform: uppercase;
    }

    #ls-performance-lab-v5 .lslab-track {
      height: 6px;
      overflow: hidden;
      border-radius: 0;
      background: var(--mist);
    }

    #ls-performance-lab-v5 .lslab-fill {
      width: 0%;
      height: 100%;
      border-radius: 0;
      background: var(--ink);
      transition: width .45s ease;
    }

    #ls-performance-lab-v5 .lslab-bar-clickable {
      border: 1px solid transparent;
      border-radius: 0;
      padding: 10px 8px;
      margin: -8px;
      cursor: pointer;
      user-select: none;
      -webkit-tap-highlight-color: rgba(0,0,0,.08);
      transition: border-color .15s, background .15s;
    }

    #ls-performance-lab-v5 .lslab-bar-clickable * {
      pointer-events: none;
    }

    #ls-performance-lab-v5 .lslab-bar-clickable:hover {
      border-color: var(--line-strong);
      background: var(--canvas);
    }

    #ls-performance-lab-v5 .lslab-bar-clickable.active {
      border-color: var(--ink);
      background: var(--canvas);
      box-shadow: none;
    }

    #ls-performance-lab-v5 .lslab-bar-clickable .lslab-bar-top span:first-child::after {
      content: " +";
      color: var(--stone);
      font-size: 12px;
      font-weight: 700;
    }

    #ls-performance-lab-v5 .lslab-insight {
      margin-top: 20px;
      padding: 16px;
      border-radius: 0;
      border: 1px solid var(--line-strong);
      border-left: 3px solid var(--ink);
      background: var(--paper);
      transition: border-color .2s;
    }

    #ls-performance-lab-v5 .lslab-insight.lslab-insight--pulse {
      border-color: var(--ink);
      box-shadow: none;
    }

    #ls-performance-lab-v5 .lslab-insight-head {
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      gap: 12px;
      margin-bottom: 10px;
    }

    #ls-performance-lab-v5 .lslab-insight-head strong {
      color: var(--ink);
      font-family: var(--font-display);
      font-size: 14px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: .04em;
      line-height: 1.25;
    }

    #ls-performance-lab-v5 .lslab-insight-pill {
      flex: 0 0 auto;
      padding: 4px 8px;
      border-radius: 0;
      border: 1px solid var(--line-strong);
      background: var(--canvas);
      color: var(--ink);
      font-family: var(--font-display);
      font-size: 10px;
      font-weight: 700;
      letter-spacing: .06em;
      text-transform: uppercase;
      white-space: nowrap;
    }

    #ls-performance-lab-v5 .lslab-insight-pill.good { background: var(--paper); border-color: var(--green); color: var(--green); }
    #ls-performance-lab-v5 .lslab-insight-pill.mid { background: var(--paper); border-color: var(--orange); color: var(--orange); }
    #ls-performance-lab-v5 .lslab-insight-pill.low { background: var(--paper); border-color: var(--red); color: var(--red); }

    #ls-performance-lab-v5 .lslab-insight-lead {
      margin: 0 0 12px;
      color: var(--muted);
      font-size: 13px;
      line-height: 1.55;
    }

    #ls-performance-lab-v5 .lslab-insight-block {
      margin-top: 10px;
      padding-top: 10px;
      border-top: 1px solid var(--line);
    }

    #ls-performance-lab-v5 .lslab-insight-block strong {
      display: block;
      margin-bottom: 5px;
      color: var(--ink);
      font-family: var(--font-display);
      font-size: 10px;
      letter-spacing: .12em;
      text-transform: uppercase;
    }

    #ls-performance-lab-v5 .lslab-insight-block p {
      margin: 0;
      color: var(--text);
      font-size: 13px;
      line-height: 1.55;
    }

    #ls-performance-lab-v5 .lslab-reco {
      margin-top: 20px;
      padding: 16px;
      border-radius: 0;
      border: 1px solid var(--line-strong);
      background: var(--canvas);
    }

    #ls-performance-lab-v5 .lslab-reco strong {
      display: block;
      margin-bottom: 10px;
      font-family: var(--font-display);
      font-size: 11px;
      font-weight: 700;
      letter-spacing: .1em;
      text-transform: uppercase;
      color: var(--ink);
    }

    #ls-performance-lab-v5 .lslab-reco ul {
      margin: 0;
      padding-left: 18px;
      color: var(--muted);
      font-size: 13px;
      line-height: 1.6;
    }

    #ls-performance-lab-v5 .lslab-full {
      grid-column: 1 / -1;
      border-right: 0;
    }

    #ls-performance-lab-v5 .lslab-chart-wrap {
      height: 230px;
      border: 1px solid var(--line-strong);
      border-radius: 0;
      background: var(--paper);
      padding: 12px;
    }

    #ls-performance-lab-v5 canvas {
      width: 100%;
      height: 100%;
      display: block;
    }

    #ls-performance-lab-v5 .lslab-table-wrap {
      width: 100%;
      overflow-x: auto;
    }

    #ls-performance-lab-v5 table {
      width: 100%;
      border-collapse: collapse;
      font-size: 13px;
      min-width: 760px;
    }

    #ls-performance-lab-v5 th,
    #ls-performance-lab-v5 td {
      padding: 12px 10px;
      border-bottom: 1px solid var(--line);
      text-align: left;
    }

    #ls-performance-lab-v5 th {
      color: var(--stone);
      font-size: 10px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: .1em;
      background: var(--canvas);
    }

    #ls-performance-lab-v5 .lslab-note {
      margin-top: 14px;
      color: var(--muted);
      font-size: 12px;
      line-height: 1.5;
    }

    #ls-performance-lab-v5 .lslab-toast {
      position: fixed;
      left: 50%;
      bottom: 22px;
      transform: translateX(-50%);
      z-index: 99999;
      padding: 12px 18px;
      border-radius: 0;
      background: var(--ink);
      color: #fff;
      font-family: var(--font-display);
      font-size: 12px;
      font-weight: 700;
      letter-spacing: .06em;
      text-transform: uppercase;
      box-shadow: 0 8px 32px rgba(0,0,0,.25);
      opacity: 0;
      pointer-events: none;
      transition: opacity .2s, transform .2s;
    }

    #ls-performance-lab-v5 .lslab-toast.show {
      opacity: 1;
      transform: translateX(-50%) translateY(-4px);
    }

    #ls-performance-lab-v5 .lslab-analytics {
      margin-top: 20px;
      padding-top: 18px;
      border-top: 2px solid var(--ink);
    }

    #ls-performance-lab-v5 .lslab-analytics h4 {
      margin: 0 0 14px;
      font-size: 11px;
      font-weight: 700;
      letter-spacing: .14em;
      text-transform: uppercase;
      color: var(--ink);
    }

    #ls-performance-lab-v5 .lslab-gate {
      padding: 12px 14px;
      border-radius: 0;
      margin-bottom: 12px;
      font-size: 12px;
      line-height: 1.5;
      border: 1px solid var(--line-strong);
    }

    #ls-performance-lab-v5 .lslab-gate strong {
      display: block;
      font-family: var(--font-display);
      font-size: 11px;
      font-weight: 700;
      letter-spacing: .06em;
      text-transform: uppercase;
      margin-bottom: 4px;
    }

    #ls-performance-lab-v5 .lslab-gate--green {
      background: var(--paper);
      border-left: 3px solid var(--green);
      color: var(--green);
    }

    #ls-performance-lab-v5 .lslab-gate--yellow {
      background: var(--paper);
      border-left: 3px solid var(--orange);
      color: #8a5a00;
    }

    #ls-performance-lab-v5 .lslab-gate--red {
      background: var(--paper);
      border-left: 3px solid var(--red);
      color: var(--red);
    }

    #ls-performance-lab-v5 .lslab-analytics-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 8px;
      margin-bottom: 12px;
    }

    #ls-performance-lab-v5 .lslab-analytic-box {
      padding: 12px;
      border-radius: 0;
      border: 1px solid var(--line);
      background: var(--canvas);
      font-size: 12px;
      line-height: 1.5;
      color: var(--muted);
    }

    #ls-performance-lab-v5 .lslab-analytic-box strong {
      display: block;
      font-family: var(--font-display);
      font-size: 9px;
      text-transform: uppercase;
      letter-spacing: .1em;
      color: var(--ink);
      margin-bottom: 6px;
    }

    #ls-performance-lab-v5 .lslab-pillars {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 8px;
      margin-bottom: 12px;
    }

    #ls-performance-lab-v5 .lslab-pillar {
      padding: 12px;
      border-radius: 0;
      border: 1px solid var(--line);
      background: var(--paper);
    }

    #ls-performance-lab-v5 .lslab-pillar-label {
      display: block;
      font-family: var(--font-display);
      font-size: 9px;
      font-weight: 700;
      letter-spacing: .08em;
      text-transform: uppercase;
      color: var(--stone);
      margin-bottom: 4px;
    }

    #ls-performance-lab-v5 .lslab-pillar strong {
      font-family: var(--font-display);
      font-size: 22px;
      font-weight: 700;
      color: var(--ink);
    }

    #ls-performance-lab-v5 .lslab-radar-wrap {
      display: flex;
      justify-content: center;
      margin: 12px 0;
      padding: 12px;
      border-radius: 0;
      border: 1px solid var(--line);
      background: var(--paper);
    }

    #ls-performance-lab-v5 .lslab-delta {
      margin-left: 6px;
      padding: 2px 6px;
      border-radius: 0;
      font-family: var(--font-display);
      font-size: 9px;
      font-weight: 700;
      letter-spacing: .04em;
      text-transform: uppercase;
    }

    #ls-performance-lab-v5 .lslab-delta.up { background: rgba(0,143,93,.12); color: var(--green); }
    #ls-performance-lab-v5 .lslab-delta.down { background: rgba(211,0,0,.1); color: var(--red); }

    #ls-performance-lab-v5 .lslab-sr-lists {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 8px;
      margin-top: 10px;
    }

    #ls-performance-lab-v5 .lslab-sr-lists ul {
      margin: 6px 0 0;
      padding-left: 16px;
      font-size: 11px;
      color: var(--muted);
    }

    @media (max-width: 720px) {
      #ls-performance-lab-v5 .lslab-analytics-grid,
      #ls-performance-lab-v5 .lslab-pillars,
      #ls-performance-lab-v5 .lslab-sr-lists {
        grid-template-columns: 1fr;
      }
    }

    #ls-performance-lab-v5 .lslab-span-2 {
      grid-column: 1 / -1;
    }

    #ls-performance-lab-v5 .lslab-readonly {
      background: var(--canvas);
      color: var(--muted);
      cursor: not-allowed;
    }

    #ls-performance-lab-v5 .lslab-phone-status {
      display: block;
      margin-top: 6px;
      font-family: var(--font-display);
      font-size: 10px;
      font-weight: 700;
      letter-spacing: .06em;
      text-transform: uppercase;
      line-height: 1.35;
    }

    #ls-performance-lab-v5 .lslab-phone-status.ok { color: var(--green); }
    #ls-performance-lab-v5 .lslab-phone-status.wait { color: var(--ink); }
    #ls-performance-lab-v5 .lslab-phone-status.err { color: var(--red); }

    #ls-performance-lab-v5 .lslab-sport-panel {
      margin-top: 10px;
      padding: 12px 14px;
      border-radius: 0;
      border: 1px solid var(--line);
      border-left: 3px solid var(--ink);
      background: var(--canvas);
      color: var(--muted);
      font-size: 12px;
      line-height: 1.55;
    }

    #ls-performance-lab-v5 .lslab-sport-panel strong {
      color: var(--ink);
      font-family: var(--font-display);
    }


    #ls-performance-lab-v5 .lslab-tier .lslab-label-row {
      margin-bottom: 6px;
    }

    #ls-performance-lab-v5 .lslab-tier .lslab-label-row h4 {
      margin: 0;
      flex: 1;
    }

    #ls-performance-lab-v5 .lslab-history-head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 12px;
      flex-wrap: wrap;
      margin-bottom: 8px;
    }

    #ls-performance-lab-v5 .lslab-history-head .lslab-heading-row {
      flex: 1;
      min-width: 200px;
    }

    #ls-performance-lab-v5 .lslab-history-delete {
      flex: 0 0 auto;
      min-height: 36px;
      padding: 8px 14px;
      font-size: 10px;
      border-color: var(--red);
      color: var(--red);
    }

    #ls-performance-lab-v5 .lslab-history-delete:hover:not(:disabled) {
      background: var(--red);
      color: #fff;
      border-color: var(--red);
    }

    #ls-performance-lab-v5 .lslab-history-delete:disabled {
      opacity: .4;
      cursor: not-allowed;
    }

    #ls-performance-lab-v5 .lslab-modal {
      position: fixed;
      inset: 0;
      z-index: 1000;
      display: grid;
      place-items: center;
      padding: 16px;
    }

    #ls-performance-lab-v5 .lslab-modal[hidden] {
      display: none !important;
    }

    #ls-performance-lab-v5 .lslab-modal-backdrop {
      position: absolute;
      inset: 0;
      background: rgba(0, 0, 0, .55);
    }

    #ls-performance-lab-v5 .lslab-modal-box {
      position: relative;
      z-index: 1;
      width: min(420px, 100%);
      padding: 20px 18px;
      border: 1px solid var(--ink);
      background: var(--paper);
      box-shadow: 0 16px 48px rgba(0, 0, 0, .2);
    }

    #ls-performance-lab-v5 .lslab-modal-box h4 {
      margin: 0 0 10px;
      font-family: var(--font-display);
      font-size: 12px;
      font-weight: 700;
      letter-spacing: .1em;
      text-transform: uppercase;
      color: var(--ink);
    }

    #ls-performance-lab-v5 .lslab-modal-box p {
      margin: 0 0 12px;
      font-size: 13px;
      line-height: 1.5;
      color: var(--text);
    }

    #ls-performance-lab-v5 .lslab-modal-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-top: 14px;
    }

    #ls-performance-lab-v5 .lslab-modal-danger {
      border-color: var(--red);
      color: #fff;
      background: var(--red);
    }

    #ls-performance-lab-v5 .lslab-modal-danger:disabled {
      opacity: .45;
      cursor: not-allowed;
    }

    #ls-performance-lab-v5 .lslab-delete-confirm-input {
      width: 100%;
      margin-top: 8px;
      text-transform: lowercase;
    }

    #ls-performance-lab-v5 .lslab-scroll-hint {
      display: none;
      margin: 0 0 10px;
      color: var(--muted);
      font-size: 11px;
    }

    #ls-performance-lab-v5 .lslab-tiers {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 0;
      border: 1px solid var(--line-strong);
    }

    #ls-performance-lab-v5 .lslab-tier {
      position: relative;
      padding: 20px 16px;
      border-radius: 0;
      border: 0;
      border-right: 1px solid var(--line);
      background: var(--paper);
    }

    #ls-performance-lab-v5 .lslab-tier:last-child {
      border-right: 0;
    }

    #ls-performance-lab-v5 .lslab-tier--premium {
      background: var(--canvas);
    }

    #ls-performance-lab-v5 .lslab-tier--club {
      background: var(--paper);
    }

    #ls-performance-lab-v5 .lslab-tier--active {
      box-shadow: inset 0 -3px 0 var(--ink);
      background: var(--paper);
    }

    #ls-performance-lab-v5 .lslab-tier-badge {
      display: inline-block;
      padding: 0 0 4px;
      border-radius: 0;
      border-bottom: 2px solid var(--ink);
      font-family: var(--font-display);
      font-size: 9px;
      font-weight: 700;
      letter-spacing: .12em;
      text-transform: uppercase;
      background: transparent;
      color: var(--ink);
      margin-bottom: 12px;
    }

    #ls-performance-lab-v5 .lslab-tier--premium .lslab-tier-badge,
    #ls-performance-lab-v5 .lslab-tier--club .lslab-tier-badge {
      background: transparent;
      color: var(--ink);
    }

    #ls-performance-lab-v5 .lslab-tier h4 {
      margin: 0 0 6px;
      font-family: var(--font-display);
      font-size: 18px;
      font-weight: 700;
      letter-spacing: -.02em;
      text-transform: uppercase;
      color: var(--ink);
    }

    #ls-performance-lab-v5 .lslab-tier-tag {
      margin: 0 0 12px;
      font-size: 12px;
      color: var(--muted);
    }

    #ls-performance-lab-v5 .lslab-tier-feats {
      margin: 0;
      padding-left: 16px;
      font-size: 12px;
      color: var(--muted);
      line-height: 1.55;
    }

    #ls-performance-lab-v5 .lslab-tier-current {
      display: inline-block;
      margin-top: 14px;
      font-family: var(--font-display);
      font-size: 9px;
      font-weight: 700;
      letter-spacing: .12em;
      text-transform: uppercase;
      color: var(--ink);
    }


    #ls-performance-lab-v5 .lslab-analytics--locked {
      position: relative;
      min-height: 120px;
    }

    #ls-performance-lab-v5 .lslab-analytics--locked > *:not(.lslab-tier-lock) {
      filter: blur(4px);
      pointer-events: none;
      user-select: none;
      opacity: .4;
    }

    #ls-performance-lab-v5 .lslab-club {
      margin-top: 20px;
      padding-top: 18px;
      border-top: 2px solid var(--ink);
      position: relative;
    }

    #ls-performance-lab-v5 .lslab-club-head {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 10px;
      margin-bottom: 14px;
    }

    #ls-performance-lab-v5 .lslab-club-head h4 {
      margin: 0;
      font-size: 11px;
      font-weight: 700;
      letter-spacing: .14em;
      text-transform: uppercase;
      color: var(--ink);
    }

    #ls-performance-lab-v5 .lslab-club-badge {
      padding: 4px 8px;
      border: 1px solid var(--ink);
      font-family: var(--font-display);
      font-size: 9px;
      font-weight: 700;
      letter-spacing: .1em;
      text-transform: uppercase;
      background: var(--ink);
      color: #fff;
    }

    #ls-performance-lab-v5 .lslab-club-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 8px;
      margin-bottom: 8px;
    }

    #ls-performance-lab-v5 .lslab-club-card {
      padding: 14px;
      border: 1px solid var(--line);
      background: var(--paper);
      font-size: 12px;
      line-height: 1.5;
      color: var(--muted);
    }

    #ls-performance-lab-v5 .lslab-club-card strong {
      display: block;
      font-family: var(--font-display);
      font-size: 9px;
      text-transform: uppercase;
      letter-spacing: .1em;
      color: var(--ink);
      margin-bottom: 6px;
    }

    #ls-performance-lab-v5 .lslab-club-alerts {
      display: grid;
      gap: 6px;
      margin-top: 8px;
    }

    #ls-performance-lab-v5 .lslab-club-alert {
      padding: 10px 12px;
      border-left: 3px solid var(--stone);
      background: var(--canvas);
      font-size: 12px;
      color: var(--text);
    }

    #ls-performance-lab-v5 .lslab-club-alert--warn {
      border-left-color: var(--orange);
    }

    #ls-performance-lab-v5 .lslab-club-alert--danger {
      border-left-color: var(--red);
    }

    #ls-performance-lab-v5 .lslab-club-alert strong {
      display: block;
      font-family: var(--font-display);
      font-size: 9px;
      letter-spacing: .08em;
      text-transform: uppercase;
      margin-bottom: 4px;
      color: var(--ink);
    }

    #ls-performance-lab-v5 .lslab-club-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-top: 12px;
    }

    #ls-performance-lab-v5 .lslab-club--locked .lslab-club-blur {
      filter: blur(5px);
      pointer-events: none;
      user-select: none;
      opacity: .45;
    }

    #ls-performance-lab-v5 .lslab-tier-lock {
      position: absolute;
      inset: 0;
      display: grid;
      place-content: center;
      text-align: center;
      padding: 20px;
      z-index: 5;
      background: rgba(255,255,255,.72);
      border: 1px dashed var(--line-strong);
    }

    #ls-performance-lab-v5 .lslab-tier-lock strong {
      display: block;
      font-family: var(--font-display);
      font-size: 11px;
      letter-spacing: .1em;
      text-transform: uppercase;
      color: var(--ink);
      margin-bottom: 6px;
    }

    #ls-performance-lab-v5 .lslab-tier-lock span {
      font-size: 12px;
      color: var(--muted);
      max-width: 280px;
    }

    #ls-performance-lab-v5 .lslab-actions .lslab-club-only {
      display: none;
    }

    #ls-performance-lab-v5.lslab-tier-club .lslab-actions .lslab-club-only,
    #ls-performance-lab-v5.lslab-tier-club .lslab-report-actions .lslab-club-only,
    #ls-performance-lab-v5[data-tier="club"] .lslab-actions .lslab-club-only,
    #ls-performance-lab-v5[data-tier="club"] .lslab-report-actions .lslab-club-only {
      display: inline-flex;
    }

    #ls-performance-lab-v5 .lslab-premium {
      margin-top: 20px;
      padding-top: 18px;
      border-top: 2px solid var(--ink);
      position: relative;
    }

    #ls-performance-lab-v5 .lslab-premium-head {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 10px;
      margin-bottom: 14px;
    }

    #ls-performance-lab-v5 .lslab-premium-head h4 {
      margin: 0;
      font-size: 11px;
      font-weight: 700;
      letter-spacing: .14em;
      text-transform: uppercase;
      color: var(--ink);
    }

    #ls-performance-lab-v5 .lslab-premium-badge {
      padding: 4px 8px;
      border-radius: 0;
      border: 1px solid var(--ink);
      font-family: var(--font-display);
      font-size: 9px;
      font-weight: 700;
      letter-spacing: .1em;
      text-transform: uppercase;
      background: var(--ink);
      color: #fff;
    }

    #ls-performance-lab-v5 .lslab-premium-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 8px;
      margin-bottom: 8px;
    }

    #ls-performance-lab-v5 .lslab-premium-card {
      padding: 14px;
      border-radius: 0;
      border: 1px solid var(--line);
      background: var(--paper);
      font-size: 12px;
      line-height: 1.5;
      color: var(--muted);
      margin-bottom: 8px;
    }


    #ls-performance-lab-v5 .lslab-premium-card-head {
      margin-bottom: 6px;
    }

    #ls-performance-lab-v5 .lslab-premium-card-head strong {
      margin-bottom: 0;
      flex: 1;
    }

    #ls-performance-lab-v5 .lslab-premium-head .lslab-tip-wrap {
      flex: 0 0 auto;
    }


    #ls-performance-lab-v5 .lslab-premium,
    #ls-performance-lab-v5 .lslab-premium-grid,
    #ls-performance-lab-v5 .lslab-premium-card,
    #ls-performance-lab-v5 .lslab-premium-coach,
    #ls-performance-lab-v5 .lslab-coach-grid,
    #ls-performance-lab-v5 .lslab-coach-grid > div {
      overflow: visible;
    }

    #ls-performance-lab-v5 .lslab-tip-bubble.is-positioned-fixed {
      position: fixed;
      z-index: 2147483000;
      left: auto;
      right: auto;
    }

    #ls-performance-lab-v5 .lslab-premium-coach .lslab-label-row {
      flex-wrap: nowrap;
      gap: 6px;
    }

    #ls-performance-lab-v5 .lslab-premium-card .lslab-tip-bubble {
      z-index: 30;
    }

    #ls-performance-lab-v5 .lslab-premium--locked .lslab-premium-blur .lslab-tip-wrap {
      pointer-events: auto;
      position: relative;
      z-index: 2;
    }

    #ls-performance-lab-v5 .lslab-tier .lslab-label-row {
      margin-bottom: 4px;
    }

    #ls-performance-lab-v5 .lslab-tier .lslab-label-row h4 {
      margin: 0;
      flex: 1;
    }

    #ls-performance-lab-v5 .lslab-premium-card strong {
      display: block;
      font-family: var(--font-display);
      font-size: 9px;
      text-transform: uppercase;
      letter-spacing: .1em;
      color: var(--ink);
      margin-bottom: 6px;
    }

    #ls-performance-lab-v5 .lslab-premium-card ul {
      margin: 8px 0 0;
      padding-left: 16px;
      font-size: 11px;
    }

    #ls-performance-lab-v5 .lslab-premium-phase {
      margin-top: 8px;
      padding: 10px;
      border-radius: 0;
      background: var(--canvas);
      border-left: 2px solid var(--ink);
    }

    #ls-performance-lab-v5 .lslab-premium-phase strong {
      font-family: var(--font-display);
      font-size: 10px;
      font-weight: 700;
      letter-spacing: .06em;
      text-transform: uppercase;
      color: var(--ink);
    }

    #ls-performance-lab-v5 .lslab-premium-card--signal {
      border-width: 1px;
      border-left-width: 3px;
    }

    #ls-performance-lab-v5 .lslab-premium-coach .lslab-coach-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 8px;
      margin: 8px 0;
    }

    #ls-performance-lab-v5 .lslab-coach-grid span {
      display: block;
      font-family: var(--font-display);
      font-size: 8px;
      text-transform: uppercase;
      letter-spacing: .1em;
      color: var(--stone);
    }

    #ls-performance-lab-v5 .lslab-coach-grid strong {
      font-family: var(--font-display);
      font-size: 12px;
      font-weight: 700;
      color: var(--ink);
      text-transform: none;
      letter-spacing: 0;
      margin: 2px 0 0;
    }

    #ls-performance-lab-v5 .lslab-premium--locked .lslab-premium-blur {
      filter: blur(5px);
      pointer-events: none;
      user-select: none;
      opacity: .45;
    }

    #ls-performance-lab-v5 .lslab-premium-lock {
      position: absolute;
      inset: 48px 12px 12px;
      display: grid;
      place-content: center;
      text-align: center;
      padding: 20px;
      border-radius: 0;
      background: rgba(255,255,255,.94);
      border: 1px solid var(--ink);
    }

    #ls-performance-lab-v5 .lslab-premium-lock strong {
      display: block;
      font-family: var(--font-display);
      font-size: 11px;
      font-weight: 700;
      letter-spacing: .1em;
      text-transform: uppercase;
      color: var(--ink);
      margin-bottom: 6px;
    }


    #ls-performance-lab-v5 .lslab-label-row {
      display: flex;
      align-items: center;
      gap: 8px;
      margin-bottom: 6px;
    }

    #ls-performance-lab-v5 .lslab-label-row > label {
      margin-bottom: 0;
      flex: 1;
    }

    #ls-performance-lab-v5 .lslab-tip {
      flex: 0 0 auto;
      width: 20px;
      height: 20px;
      padding: 0;
      border: 1px solid var(--line-strong);
      border-radius: 50%;
      background: var(--canvas);
      color: var(--ink);
      font-family: var(--font-display);
      font-size: 11px;
      font-weight: 700;
      line-height: 1;
      cursor: pointer;
      min-height: 0;
      letter-spacing: 0;
      text-transform: none;
    }

    #ls-performance-lab-v5 .lslab-tip:hover,
    #ls-performance-lab-v5 .lslab-tip:focus,
    #ls-performance-lab-v5 .lslab-tip.is-open {
      background: var(--ink);
      color: #fff;
      border-color: var(--ink);
      outline: none;
    }

    #ls-performance-lab-v5 .lslab-tip-wrap {
      position: relative;
      display: inline-flex;
    }

    #ls-performance-lab-v5 .lslab-tip-bubble {
      display: none !important;
      visibility: hidden;
      pointer-events: none;
      position: absolute;
      left: 0;
      top: calc(100% + 6px);
      z-index: 20;
      min-width: 200px;
      max-width: 280px;
      padding: 10px 12px;
      border: 1px solid var(--ink);
      background: var(--paper);
      color: var(--text);
      font-family: var(--font-body);
      font-size: 12px;
      font-weight: 400;
      line-height: 1.5;
      text-transform: none;
      letter-spacing: 0;
      box-shadow: 0 8px 24px rgba(0,0,0,.12);
    }

    #ls-performance-lab-v5 .lslab-tip-bubble[hidden] {
      display: none !important;
      visibility: hidden !important;
    }

    #ls-performance-lab-v5 .lslab-tip-bubble.is-visible {
      display: block !important;
      visibility: visible;
      pointer-events: auto;
    }

    .lslab-tip-bubble.lslab-tip-bubble--floated {
      position: fixed !important;
      z-index: 2147483000 !important;
      min-width: 200px;
      max-width: 280px;
      padding: 10px 12px;
      border: 1px solid #000000;
      background: #ffffff;
      color: #1a1a1a;
      font-family: Roboto, Arial, sans-serif;
      font-size: 12px;
      line-height: 1.5;
      box-shadow: 0 8px 24px rgba(0,0,0,.12);
      display: none !important;
      visibility: hidden;
      pointer-events: none;
      white-space: normal;
    }

    .lslab-tip-bubble.lslab-tip-bubble--floated.is-visible {
      display: block !important;
      visibility: visible;
      pointer-events: auto;
    }

    #ls-performance-lab-v5.lslab-tip-open {
      overflow-x: visible;
    }

    #ls-performance-lab-v5 .lslab-check-row {
      display: flex;
      align-items: flex-start;
      gap: 10px;
      padding: 12px 14px;
      border: 1px solid var(--line);
      background: var(--canvas);
      cursor: pointer;
      font-family: var(--font-body);
      font-size: 13px;
      color: var(--text);
      margin-bottom: 0;
      text-transform: none;
      letter-spacing: 0;
      font-weight: 400;
    }

    #ls-performance-lab-v5 .lslab-check-row input {
      width: auto;
      height: auto;
      margin-top: 3px;
      flex: 0 0 auto;
      accent-color: var(--ink);
    }

    #ls-performance-lab-v5 .lslab-check-row span {
      flex: 1;
      font-family: var(--font-display);
      font-size: 11px;
      font-weight: 700;
      letter-spacing: .06em;
      text-transform: uppercase;
      color: var(--ink);
    }


    #ls-performance-lab-v5 .lslab-optional-header {
      display: flex;
      align-items: flex-start;
      gap: 8px;
    }

    #ls-performance-lab-v5 .lslab-optional-header .lslab-check-row {
      flex: 1;
    }

    #ls-performance-lab-v5 .lslab-optional-header .lslab-tip-wrap {
      margin-top: 10px;
      flex: 0 0 auto;
    }

    #ls-performance-lab-v5 .lslab-heading-row {
      display: flex;
      align-items: center;
      gap: 8px;
      flex-wrap: wrap;
    }

    #ls-performance-lab-v5 .lslab-heading-row h3,
    #ls-performance-lab-v5 .lslab-heading-row h4,
    #ls-performance-lab-v5 .lslab-heading-row strong {
      margin: 0;
      flex: 1;
    }

    #ls-performance-lab-v5 .lslab-step {
      display: flex;
      align-items: center;
      gap: 8px;
      flex-wrap: wrap;
    }

    #ls-performance-lab-v5 .lslab-step .lslab-tip-wrap {
      margin-left: auto;
    }

    #ls-performance-lab-v5 .lslab-badge-line {
      display: inline-flex;
      align-items: center;
      gap: 6px;
    }

    #ls-performance-lab-v5 .lslab-optional-wrap {
      margin-bottom: 4px;
    }

    #ls-performance-lab-v5 .lslab-optional-panel {
      margin-top: 8px;
      padding: 12px 14px 4px;
      border: 1px solid var(--line);
      border-top: 0;
      background: var(--paper);
    }

    #ls-performance-lab-v5 .lslab-optional-panel[hidden] {
      display: none !important;
    }

    #ls-performance-lab-v5 .lslab-grid--nested {
      gap: 12px 14px;
    }

    #ls-performance-lab-v5 #lslabRoleWrap.is-visible {
      display: block;
    }

    #ls-performance-lab-v5 .lslab-boot-err {
      margin: 0;
      padding: 14px 18px;
      background: #fff5f5;
      border-bottom: 2px solid var(--red);
      color: var(--red);
      font-family: var(--font-display);
      font-size: 12px;
      font-weight: 700;
      letter-spacing: .04em;
      text-transform: uppercase;
    }

    @media (max-width: 980px) {
      #ls-performance-lab-v5 .lslab-body {
        grid-template-columns: 1fr;
      }

      #ls-performance-lab-v5 .lslab-card {
        border-right: 0;
      }

      #ls-performance-lab-v5 .lslab-result {
        position: static;
      }
    }

    @media (max-width: 900px) {
      #ls-performance-lab-v5 .lslab-tiers,
      #ls-performance-lab-v5 .lslab-premium-grid,
      #ls-performance-lab-v5 .lslab-premium-coach .lslab-coach-grid {
        grid-template-columns: 1fr;
      }

      #ls-performance-lab-v5 .lslab-tier {
        border-right: 0;
        border-bottom: 1px solid var(--line);
      }

      #ls-performance-lab-v5 .lslab-tier:last-child {
        border-bottom: 0;
      }
    }

    @media (max-width: 768px) {
      #ls-performance-lab-v5 {
        border-radius: 0;
        margin: 0;
        box-shadow: none;
      }

      #ls-performance-lab-v5 .lslab-hero {
        padding: 24px 16px 28px;
      }

      #ls-performance-lab-v5 .lslab-title {
        font-size: clamp(26px, 7vw, 36px);
      }

      #ls-performance-lab-v5 .lslab-subtitle {
        font-size: 14px;
      }

      #ls-performance-lab-v5 .lslab-body {
        gap: 0;
        padding: 0;
      }

      #ls-performance-lab-v5 .lslab-card {
        padding: 18px 16px;
      }

      #ls-performance-lab-v5 .lslab-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
      }

      #ls-performance-lab-v5 .lslab-actions .lslab-primary,
      #ls-performance-lab-v5 .lslab-actions .lslab-cloud {
        grid-column: 1 / -1;
      }

      #ls-performance-lab-v5 .lslab-actions button {
        width: 100%;
      }

      #ls-performance-lab-v5 input,
      #ls-performance-lab-v5 select {
        height: 48px;
        font-size: 16px;
      }

      #ls-performance-lab-v5 .lslab-score-circle {
        width: min(148px, 42vw);
        max-width: 148px;
      }

      #ls-performance-lab-v5 .lslab-score-number {
        font-size: 40px;
      }

      #ls-performance-lab-v5 .lslab-chart-wrap {
        height: 190px;
      }

      #ls-performance-lab-v5 .lslab-toast {
        left: 16px;
        right: 16px;
        bottom: max(16px, env(safe-area-inset-bottom));
        transform: none;
        width: auto;
        text-align: center;
      }

      #ls-performance-lab-v5 .lslab-toast.show {
        transform: translateY(-4px);
      }
    }

    @media (max-width: 620px) {
      #ls-performance-lab-v5 .lslab-grid,
      #ls-performance-lab-v5 .lslab-score-row {
        grid-template-columns: 1fr;
      }

      #ls-performance-lab-v5 .lslab-score-circle {
        margin: 0 auto;
      }

      #ls-performance-lab-v5 .lslab-score-row > div:last-child {
        text-align: center;
      }

      #ls-performance-lab-v5 .lslab-badges {
        justify-content: center;
      }

      #ls-performance-lab-v5 .lslab-scroll-hint {
        display: block;
      }
    }



    #ls-performance-lab-v5 .lslab-journey {
      position: sticky;
      top: 0;
      z-index: 40;
      background: var(--paper);
      border-bottom: 1px solid var(--line-strong);
      padding: 10px max(12px, env(safe-area-inset-right)) 10px max(12px, env(safe-area-inset-left));
    }

    #ls-performance-lab-v5 .lslab-journey-track {
      display: flex;
      align-items: stretch;
      gap: 0;
      margin: 0;
      padding: 0;
      list-style: none;
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none;
    }

    #ls-performance-lab-v5 .lslab-journey-track::-webkit-scrollbar {
      display: none;
    }

    #ls-performance-lab-v5 .lslab-journey-track > li {
      flex: 1 0 auto;
      min-width: 88px;
      position: relative;
    }

    #ls-performance-lab-v5 .lslab-journey-track > li:not(:last-child)::after {
      content: "";
      position: absolute;
      top: 18px;
      right: -8px;
      width: 16px;
      height: 1px;
      background: var(--line-strong);
      pointer-events: none;
    }

    #ls-performance-lab-v5 .lslab-journey-node {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 6px;
      padding: 6px 10px 4px;
      text-decoration: none;
      color: var(--muted);
      border: 0;
      background: transparent;
      cursor: pointer;
      width: 100%;
      font-family: var(--font-body);
      -webkit-tap-highlight-color: transparent;
    }

    #ls-performance-lab-v5 .lslab-journey-ix {
      display: grid;
      place-items: center;
      width: 32px;
      height: 32px;
      border: 1px solid var(--line-strong);
      border-radius: 50%;
      font-family: var(--font-display);
      font-size: 12px;
      font-weight: 700;
      color: var(--stone);
      background: var(--canvas);
      transition: background .2s, color .2s, border-color .2s;
    }

    #ls-performance-lab-v5 .lslab-journey-txt {
      font-family: var(--font-display);
      font-size: 9px;
      font-weight: 700;
      letter-spacing: .06em;
      text-transform: uppercase;
      text-align: center;
      line-height: 1.25;
      max-width: 92px;
    }

    #ls-performance-lab-v5 .lslab-journey-node.is-active .lslab-journey-ix,
    #ls-performance-lab-v5 .lslab-journey-node.is-done .lslab-journey-ix {
      background: var(--ink);
      border-color: var(--ink);
      color: #fff;
    }

    #ls-performance-lab-v5 .lslab-journey-node.is-active {
      color: var(--ink);
    }

    #ls-performance-lab-v5 .lslab-journey-node.is-active .lslab-journey-txt {
      color: var(--ink);
    }

    #ls-performance-lab-v5 .lslab-grid + .lslab-journey-marker {
      margin-top: 32px;
    }

    #ls-performance-lab-v5 #lslabJourneyStep3 {
      margin-top: 44px;
    }

    #ls-performance-lab-v5 .lslab-date-field {
      margin-top: 2px;
    }

    #ls-performance-lab-v5 .lslab-journey-marker {
      display: flex;
      align-items: flex-start;
      gap: 14px;
      margin: 0 0 18px;
      padding: 14px 16px;
      border: 1px solid var(--line);
      border-left: 3px solid var(--ink);
      background: var(--canvas);
      scroll-margin-top: 72px;
    }

    #ls-performance-lab-v5 .lslab-journey-marker-ix {
      flex: 0 0 auto;
      display: grid;
      place-items: center;
      width: 36px;
      height: 36px;
      border: 1px solid var(--ink);
      font-family: var(--font-display);
      font-size: 14px;
      font-weight: 700;
      color: #fff;
      background: var(--ink);
    }

    #ls-performance-lab-v5 .lslab-journey-marker-body {
      flex: 1;
      min-width: 0;
    }

    #ls-performance-lab-v5 .lslab-journey-marker-kicker {
      display: block;
      font-family: var(--font-display);
      font-size: 10px;
      font-weight: 700;
      letter-spacing: .12em;
      text-transform: uppercase;
      color: var(--stone);
      margin-bottom: 4px;
    }

    #ls-performance-lab-v5 .lslab-journey-marker-title {
      display: block;
      font-family: var(--font-display);
      font-size: clamp(15px, 3.5vw, 18px);
      font-weight: 700;
      letter-spacing: -.02em;
      text-transform: uppercase;
      color: var(--ink);
      line-height: 1.2;
    }

    #ls-performance-lab-v5 .lslab-journey-marker--report .lslab-journey-marker-title {
      text-transform: none;
      font-size: clamp(16px, 4vw, 20px);
      letter-spacing: -.01em;
    }

    @media (max-width: 768px) {
      #ls-performance-lab-v5 .lslab-journey-track > li {
        min-width: 76px;
      }

      #ls-performance-lab-v5 .lslab-journey-txt {
        font-size: 8px;
        max-width: 72px;
      }

      #ls-performance-lab-v5 .lslab-journey-marker {
        padding: 12px 14px;
        scroll-margin-top: 64px;
      }
    }

    /* === Mobil · optimizări tactile & layout === */
    #ls-performance-lab-v5 {
      overflow-x: clip;
      -webkit-text-size-adjust: 100%;
    }

    @media (max-width: 980px) {
      #ls-performance-lab-v5 .lslab-result {
        position: static;
        top: auto;
      }
    }

    @media (max-width: 768px) {
      #ls-performance-lab-v5 .lslab-commercial.lslab-full {
        padding: 18px 16px;
      }

      #ls-performance-lab-v5 .lslab-hero-perk {
        flex: 1 1 calc(50% - 4px);
        text-align: center;
        font-size: 10px;
      }

      #ls-performance-lab-v5 .lslab-step {
        flex-wrap: wrap;
        align-items: flex-start;
      }

      #ls-performance-lab-v5 .lslab-step span {
        font-size: 15px;
        line-height: 1.25;
      }

      #ls-performance-lab-v5 .lslab-step .lslab-tip-wrap {
        margin-left: 0;
      }

      #ls-performance-lab-v5 .lslab-optional-header {
        flex-direction: column;
        align-items: stretch;
      }

      #ls-performance-lab-v5 .lslab-optional-header .lslab-tip-wrap {
        margin-top: 0;
        align-self: flex-end;
      }

      #ls-performance-lab-v5 .lslab-grid--nested {
        grid-template-columns: 1fr;
      }

      #ls-performance-lab-v5 .lslab-club-grid {
        grid-template-columns: 1fr;
      }

      #ls-performance-lab-v5 .lslab-history-head {
        flex-direction: column;
        align-items: stretch;
      }

      #ls-performance-lab-v5 .lslab-history-delete {
        width: 100%;
        min-height: 48px;
      }

      #ls-performance-lab-v5 .lslab-bar-clickable {
        padding: 14px 10px;
        margin: 0;
        min-height: 48px;
      }

      #ls-performance-lab-v5 .lslab-bar-top {
        font-size: 12px;
      }

      #ls-performance-lab-v5 .lslab-insight {
        padding: 14px;
      }

      #ls-performance-lab-v5 .lslab-insight-head {
        flex-wrap: wrap;
        gap: 8px;
      }

      #ls-performance-lab-v5 .lslab-big-level {
        font-size: 17px;
        line-height: 1.2;
      }

      #ls-performance-lab-v5 .lslab-badge-line {
        max-width: 100%;
      }

      #ls-performance-lab-v5 .lslab-badges {
        gap: 8px;
      }

      #ls-performance-lab-v5 .lslab-badge {
        font-size: 9px;
        padding: 8px 10px;
      }

      #ls-performance-lab-v5 .lslab-actions {
        grid-template-columns: 1fr;
        gap: 10px;
        position: sticky;
        bottom: 0;
        z-index: 10;
        margin: 24px -16px -18px;
        padding: 14px 16px max(14px, env(safe-area-inset-bottom));
        background: linear-gradient(180deg, rgba(255,255,255,0) 0%, var(--paper) 18%);
        border-top: 1px solid var(--line);
      }

      #ls-performance-lab-v5 .lslab-actions .lslab-primary,
      #ls-performance-lab-v5 .lslab-actions .lslab-secondary,
      #ls-performance-lab-v5 .lslab-actions .lslab-btn-tip,
      #ls-performance-lab-v5 .lslab-actions .lslab-cloud {
        grid-column: 1 / -1;
        width: 100%;
      }

      #ls-performance-lab-v5 .lslab-actions .lslab-btn-tip {
        display: flex;
        align-items: center;
        gap: 8px;
      }

      #ls-performance-lab-v5 .lslab-actions .lslab-btn-tip button {
        flex: 1;
      }

      #ls-performance-lab-v5 .lslab-actions button {
        min-height: 48px;
        font-size: 11px;
        padding: 12px 16px;
      }

      #ls-performance-lab-v5 .lslab-tip {
        width: 28px;
        height: 28px;
        font-size: 12px;
        flex-shrink: 0;
      }

      #ls-performance-lab-v5 .lslab-tip-bubble.is-mobile-fixed {
        position: fixed;
        left: max(12px, env(safe-area-inset-left));
        right: max(12px, env(safe-area-inset-right));
        bottom: max(12px, env(safe-area-inset-bottom));
        top: auto;
        max-width: none;
        min-width: 0;
        z-index: 1100;
        box-shadow: 0 12px 40px rgba(0,0,0,.22);
      }

      #ls-performance-lab-v5 .lslab-modal {
        padding: max(8px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));
        align-items: flex-end;
      }

      #ls-performance-lab-v5 .lslab-modal-box {
        width: 100%;
        max-height: min(88vh, 640px);
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        padding: 18px 16px max(18px, env(safe-area-inset-bottom));
      }

      #ls-performance-lab-v5 .lslab-modal-actions {
        flex-direction: column;
      }

      #ls-performance-lab-v5 .lslab-modal-actions button {
        width: 100%;
        min-height: 48px;
      }

      #ls-performance-lab-v5 .lslab-delete-confirm-input {
        min-height: 48px;
        font-size: 16px;
      }

      #ls-performance-lab-v5 .lslab-radar-wrap {
        padding: 8px;
      }

      #ls-performance-lab-v5 .lslab-radar-wrap canvas {
        width: 100% !important;
        height: auto !important;
        max-width: 280px;
      }

      #ls-performance-lab-v5 .lslab-tier-lock {
        padding: 16px;
      }

      #ls-performance-lab-v5 .lslab-premium-lock {
        inset: 24px 10px 10px;
        padding: 12px;
      }

      #ls-performance-lab-v5 .lslab-club-actions {
        flex-direction: column;
      }

      #ls-performance-lab-v5 .lslab-club-actions button {
        width: 100%;
        min-height: 48px;
      }

      #ls-performance-lab-v5 input,
      #ls-performance-lab-v5 select,
      #ls-performance-lab-v5 textarea {
        scroll-margin-bottom: 120px;
      }

      #ls-performance-lab-v5 .lslab-check-row {
        min-height: 48px;
        padding: 14px;
      }

      #ls-performance-lab-v5 .lslab-check-row input {
        width: 20px;
        height: 20px;
        margin-top: 2px;
      }
    }

    @media (max-width: 520px) {
      #ls-performance-lab-v5 .lslab-hero-perk {
        flex: 1 1 100%;
      }

      #ls-performance-lab-v5 .lslab-title {
        font-size: clamp(22px, 8vw, 30px);
        letter-spacing: -.03em;
      }

      #ls-performance-lab-v5 .lslab-card h3 {
        font-size: 12px;
      }

      #ls-performance-lab-v5 .lslab-score-number {
        font-size: 34px;
      }

      #ls-performance-lab-v5 .lslab-chart-wrap {
        height: 200px;
        padding: 8px;
      }

      #ls-performance-lab-v5 .lslab-table-wrap {
        overflow-x: visible;
      }

      #ls-performance-lab-v5 .lslab-label-row {
        flex-wrap: wrap;
      }

      #ls-performance-lab-v5 .lslab-heading-row {
        align-items: flex-start;
      }
    }

    @media (pointer: coarse) {
      #ls-performance-lab-v5 .lslab-bar-clickable:active {
        border-color: var(--ink);
        background: var(--canvas);
      }

      #ls-performance-lab-v5 button:active {
        opacity: .92;
      }
    }

    @media (max-width: 520px) {
      #ls-performance-lab-v5 .lslab-grid {
        grid-template-columns: 1fr;
      }

      #ls-performance-lab-v5 table {
        min-width: 0;
      }

      #ls-performance-lab-v5 table thead {
        display: none;
      }

      #ls-performance-lab-v5 table tbody tr {
        display: block;
        margin-bottom: 8px;
        padding: 12px;
        border: 1px solid var(--line-strong);
        border-radius: 0;
        background: var(--paper);
      }

      #ls-performance-lab-v5 table tbody td {
        display: flex;
        justify-content: space-between;
        gap: 12px;
        padding: 6px 0;
        border-bottom: 0;
        text-align: right;
      }

      #ls-performance-lab-v5 table tbody td::before {
        content: attr(data-label);
        color: var(--stone);
        font-family: var(--font-display);
        font-size: 9px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: .08em;
        text-align: left;
      }

      #ls-performance-lab-v5 table tbody td:first-child {
        padding-top: 0;
      }

      #ls-performance-lab-v5 table tbody td:last-child {
        padding-bottom: 0;
      }
    }

    /* === Wizard: un pas vizibil odată === */
    #ls-performance-lab-v5 .lslab-wizard-pane {
      display: none;
    }

    #ls-performance-lab-v5[data-wizard-step="plan"] .lslab-wizard-pane[data-wizard="plan"],
    #ls-performance-lab-v5[data-wizard-step="step1"] .lslab-wizard-pane[data-wizard="step1"],
    #ls-performance-lab-v5[data-wizard-step="step2"] .lslab-wizard-pane[data-wizard="step2"],
    #ls-performance-lab-v5[data-wizard-step="step3"] .lslab-wizard-pane[data-wizard="step3"] {
      display: block;
    }


    #ls-performance-lab-v5[data-wizard-step="plan"] .lslab-form-card {
      display: none !important;
    }

    #ls-performance-lab-v5:not([data-wizard-step="report"]) .lslab-report-actions {
      display: none !important;
    }

    #ls-performance-lab-v5[data-wizard-step="report"] .lslab-report-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-top: 20px;
      padding-top: 20px;
      border-top: 1px solid var(--line);
    }

    #ls-performance-lab-v5[data-wizard-step="plan"] .lslab-body {
      display: none !important;
    }

    #ls-performance-lab-v5[data-wizard-step="step1"] .lslab-body,
    #ls-performance-lab-v5[data-wizard-step="step2"] .lslab-body,
    #ls-performance-lab-v5[data-wizard-step="step3"] .lslab-body {
      display: grid !important;
      grid-template-columns: 1fr;
    }

    #ls-performance-lab-v5:not([data-wizard-step="report"]) .lslab-result,
    #ls-performance-lab-v5:not([data-wizard-step="report"]) .lslab-body > .lslab-full {
      display: none !important;
    }

    #ls-performance-lab-v5:not([data-wizard-step="plan"]) #lslabJourneyPlan {
      display: none !important;
    }

    #ls-performance-lab-v5[data-wizard-step="report"] .lslab-form-card,
    #ls-performance-lab-v5[data-wizard-step="report"] #lslabJourneyPlan {
      display: none !important;
    }

    #ls-performance-lab-v5[data-wizard-step="report"] .lslab-body {
      display: grid !important;
      grid-template-columns: 1fr;
    }

    #ls-performance-lab-v5[data-wizard-step="report"] .lslab-result,
    #ls-performance-lab-v5[data-wizard-step="report"] .lslab-body > .lslab-full {
      display: block !important;
    }

    #ls-performance-lab-v5[data-wizard-step="report"] .lslab-result {
      position: static;
      border-right: 0;
    }

    #ls-performance-lab-v5:not([data-wizard-step="step3"]):not([data-wizard-step="report"]) .lslab-actions {
      display: none !important;
    }

    #ls-performance-lab-v5[data-wizard-step="step3"] .lslab-actions .lslab-secondary,
    #ls-performance-lab-v5[data-wizard-step="step3"] .lslab-actions .lslab-club-only {
      display: none !important;
    }

    #ls-performance-lab-v5[data-wizard-step="report"] .lslab-wizard-nav {
      display: none !important;
    }

    #ls-performance-lab-v5 .lslab-wizard-nav {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      justify-content: space-between;
      margin-top: 24px;
      padding-top: 20px;
      border-top: 1px solid var(--line);
    }

    #ls-performance-lab-v5 .lslab-wizard-nav .lslab-wizard-spacer {
      flex: 1;
    }

    #ls-performance-lab-v5 .lslab-form-card,
    #ls-performance-lab-v5 .lslab-result,
    #ls-performance-lab-v5 .lslab-card {
      overflow: visible;
    }

    /* Baloane: nu ies sub borderul din dreapta */
    #ls-performance-lab-v5 .lslab-tip-bubble {
      z-index: 120;
    }

    #ls-performance-lab-v5 .lslab-tip-bubble.is-left {
      left: auto;
      right: 0;
    }

    #ls-performance-lab-v5 .lslab-tip-bubble.is-above {
      top: auto;
      bottom: calc(100% + 6px);
    }

    #ls-performance-lab-v5 .lslab-result .lslab-tip-bubble.is-visible:not(.is-positioned-fixed),
    #ls-performance-lab-v5 .lslab-heading-row .lslab-tip-bubble.is-visible:not(.is-positioned-fixed),
    #ls-performance-lab-v5 .lslab-premium-card .lslab-tip-bubble.is-visible:not(.is-positioned-fixed) {
      left: auto;
      right: 0;
    }

    @media (max-width: 520px) {
      #ls-performance-lab-v5 .lslab-tip-bubble:not(.is-mobile-fixed) {
        left: auto;
        right: 0;
        max-width: min(280px, calc(100vw - 24px));
      }
    }


    #ls-performance-lab-v5 .lslab-tier[data-lslab-tier] {
      cursor: pointer;
      transition: background 0.15s ease;
    }

    #ls-performance-lab-v5 .lslab-tier[data-lslab-tier]:hover {
      background: var(--canvas);
    }

    #ls-performance-lab-v5 .lslab-tier[data-lslab-tier]:focus-visible {
      outline: 2px solid var(--ink);
      outline-offset: -2px;
    }

    #ls-performance-lab-v5 .lslab-tiers.lslab-tier-loading {
      opacity: 0.55;
      pointer-events: none;
    }


    #ls-performance-lab-v5 .lslab-tier-current--pending {
      color: var(--muted);
    }
    #ls-performance-lab-v5 .lslab-required {
      color: var(--ink);
      font-weight: 700;
    }


    #ls-performance-lab-v5 .lslab-tier.lslab-tier--active {
      outline: 3px solid var(--ink);
      outline-offset: -3px;
      background: var(--paper) !important;
      box-shadow: inset 0 -4px 0 var(--ink);
      z-index: 1;
    }

    #ls-performance-lab-v5 .lslab-tier.lslab-tier--active::before {
      content: "SELECTAT";
      position: absolute;
      top: 10px;
      right: 10px;
      padding: 4px 8px;
      font-family: var(--font-display);
      font-size: 9px;
      font-weight: 700;
      letter-spacing: .14em;
      background: var(--ink);
      color: var(--paper);
    }

    #ls-performance-lab-v5 .lslab-journey-node.is-active .lslab-journey-txt {
      color: var(--ink);
      font-weight: 700;
    }

    #ls-performance-lab-v5 .lslab-plan-chip {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      margin-top: 12px;
      padding: 8px 12px;
      border: 1px solid var(--ink);
      background: var(--paper);
      font-family: var(--font-display);
      font-size: 10px;
      font-weight: 700;
      letter-spacing: .1em;
      text-transform: uppercase;
    }


    #ls-performance-lab-v5 .lslab-multi-report {
      display: grid;
      gap: 8px;
    }

    #ls-performance-lab-v5 .lslab-multi-head,
    #ls-performance-lab-v5 .lslab-multi-row {
      display: grid;
      grid-template-columns: 1.2fr 0.8fr 0.9fr 0.7fr;
      gap: 10px;
      align-items: center;
      padding: 8px 0;
      border-bottom: 1px solid var(--line);
      font-size: 13px;
    }

    #ls-performance-lab-v5 .lslab-multi-head {
      font-size: 10px;
      font-weight: 700;
      letter-spacing: .08em;
      text-transform: uppercase;
      color: var(--stone);
    }

    #ls-performance-lab-v5 .lslab-multi-delta--up { color: var(--green); font-weight: 700; }
    #ls-performance-lab-v5 .lslab-multi-delta--down { color: var(--red); font-weight: 700; }

    #ls-performance-lab-v5 .lslab-multi-pillars {
      margin-top: 12px;
      padding: 12px 14px;
      border: 1px solid var(--line);
      background: var(--paper);
    }

    #ls-performance-lab-v5 .lslab-multi-pillars strong {
      display: block;
      margin-bottom: 8px;
      font-size: 11px;
      text-transform: uppercase;
      letter-spacing: .08em;
    }

    #ls-performance-lab-v5 .lslab-plan-chip[hidden] {
      display: none !important;
    }


    #ls-performance-lab-v5.lslab-header-compact .lslab-hero { display: none !important; }
    #ls-performance-lab-v5.lslab-header-compact .lslab-journey { padding: 6px 10px; margin-bottom: 10px; }
    #ls-performance-lab-v5.lslab-header-compact .lslab-journey-track > li:not(:last-child)::after { top: 11px; }
    #ls-performance-lab-v5.lslab-header-compact .lslab-journey-ix { width: 22px; height: 22px; font-size: 10px; }
    #ls-performance-lab-v5.lslab-header-compact .lslab-journey-txt { font-size: 9px; letter-spacing: .06em; }
    #ls-performance-lab-v5.lslab-header-compact .lslab-journey-node { padding: 4px 2px; min-width: 52px; }
    #ls-performance-lab-v5 .lslab-wizard-nav--bottom {
      position: sticky; bottom: 0; z-index: 60; margin: 0; padding: 14px 16px;
      background: var(--paper); border-top: 1px solid var(--line-strong);
      box-shadow: 0 -4px 20px rgba(0,0,0,.06);
    }
    #ls-performance-lab-v5[data-wizard-step="report"] .lslab-wizard-nav--bottom { display: none !important; }
    #ls-performance-lab-v5 .lslab-footer { margin-top: 0; padding: 24px 20px 28px; border-top: 1px solid var(--line-strong); background: var(--canvas); }
    #ls-performance-lab-v5 .lslab-footer-brand { display: flex; flex-direction: column; gap: 4px; margin-bottom: 14px; font-family: var(--font-display); text-transform: uppercase; letter-spacing: .08em; }
    #ls-performance-lab-v5 .lslab-footer-brand strong { font-size: 13px; color: var(--ink); }
    #ls-performance-lab-v5 .lslab-footer-brand span { font-size: 10px; color: var(--muted); }
    #ls-performance-lab-v5 .lslab-footer-nav { display: flex; flex-wrap: wrap; gap: 8px 14px; margin-bottom: 14px; }
    #ls-performance-lab-v5 .lslab-footer-nav a, #ls-performance-lab-v5 .lslab-footer-link {
      font-size: 12px; color: var(--ink); text-decoration: underline; text-underline-offset: 2px;
      background: none; border: 0; padding: 0; cursor: pointer; font-family: inherit;
    }
    #ls-performance-lab-v5 .lslab-footer-copy { margin: 0; font-size: 11px; color: var(--muted); line-height: 1.5; }
    #ls-performance-lab-v5 .lslab-footer-top { display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; margin-bottom: 18px; }
    #ls-performance-lab-v5 .lslab-footer-top .lslab-footer-brand { margin-bottom: 0; }
    #ls-performance-lab-v5 .lslab-footer-cols { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px 24px; margin-bottom: 18px; }
    #ls-performance-lab-v5 .lslab-footer-group { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
    #ls-performance-lab-v5 .lslab-footer-title { font-family: var(--font-display); font-size: 10px; text-transform: uppercase; letter-spacing: .1em; color: var(--muted); margin-bottom: 2px; }
    #ls-performance-lab-v5 .lslab-footer-group a,
    #ls-performance-lab-v5 .lslab-footer-group .lslab-footer-link {
      font-size: 12px; color: var(--ink); text-decoration: underline; text-underline-offset: 2px;
      background: none; border: 0; padding: 0; cursor: pointer; font-family: inherit; text-align: left;
    }
    #ls-performance-lab-v5 .lslab-footer-note { font-size: 11px; color: var(--muted); }
    #ls-performance-lab-v5 .lslab-install-btn { display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border: 0; border-radius: var(--radius); background: var(--ink); color: #fff; font-family: var(--font-display); font-size: 12px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; cursor: pointer; transition: opacity .15s ease; }
    #ls-performance-lab-v5 .lslab-install-btn:hover { opacity: .85; }
    #ls-performance-lab-v5 .lslab-install-btn:focus-visible { outline: 2px solid var(--ink); outline-offset: 2px; }
    #ls-performance-lab-v5 .lslab-install-ico { font-size: 15px; line-height: 1; }
    #ls-performance-lab-v5 .lslab-install-steps { font-size: 13px; line-height: 1.6; color: var(--text); }
    #ls-performance-lab-v5 .lslab-install-steps p { margin: 0 0 6px; }
    #ls-performance-lab-v5 .lslab-install-list { margin: 8px 0 0; padding-left: 18px; }
    #ls-performance-lab-v5 .lslab-install-list li { margin-bottom: 6px; }
    @media (max-width: 560px) {
      #ls-performance-lab-v5 .lslab-footer-cols { grid-template-columns: 1fr; }
      #ls-performance-lab-v5 .lslab-footer-top { align-items: flex-start; }
    }
    #ls-performance-lab-v5 .lslab-legal-box { max-width: min(720px, 96vw); max-height: min(82vh, 900px); overflow: hidden; display: flex; flex-direction: column; }
    #ls-performance-lab-v5 .lslab-legal-body { overflow-y: auto; flex: 1; font-size: 13px; line-height: 1.6; color: var(--text); padding-right: 4px; }
    #ls-performance-lab-v5 .lslab-legal-body h5 { margin: 18px 0 8px; font-family: var(--font-display); font-size: 12px; text-transform: uppercase; letter-spacing: .08em; }
    #ls-performance-lab-v5 .lslab-legal-body p, #ls-performance-lab-v5 .lslab-legal-body ul { margin: 0 0 10px; }
    #ls-performance-lab-v5 .lslab-legal-body ul { padding-left: 18px; }
#ls-performance-lab-v5 .lslab-result--loading .lslab-score-circle,
    #ls-performance-lab-v5 .lslab-result--loading .lslab-bars,
    #ls-performance-lab-v5 .lslab-result--loading .lslab-insight {
      position: relative;
      pointer-events: none;
    }

    #ls-performance-lab-v5 .lslab-result--loading .lslab-score-circle::after,
    #ls-performance-lab-v5 .lslab-result--loading .lslab-bars::after,
    #ls-performance-lab-v5 .lslab-result--loading .lslab-insight::after {
      content: "";
      position: absolute;
      inset: 0;
      border-radius: var(--radius);
      background: linear-gradient(90deg, var(--soft) 0%, #e8e8e8 45%, var(--soft) 90%);
      background-size: 200% 100%;
      animation: lslab-shimmer 1s ease-in-out infinite;
      z-index: 2;
    }

    @keyframes lslab-shimmer {
      0% { background-position: 100% 0; }
      100% { background-position: -100% 0; }
    }

    #ls-performance-lab-v5.lslab-busy .lslab-primary[disabled] {
      opacity: 0.72;
      cursor: wait;
    }

    #ls-performance-lab-v5 .lslab-multi-spark {
      margin: 0 0 14px;
      padding: 10px 12px;
      border: 1px solid var(--line);
      background: var(--soft);
    }

    #ls-performance-lab-v5 .lslab-multi-spark svg {
      display: block;
      width: 100%;
      max-width: 300px;
      height: auto;
    }

    #ls-performance-lab-v5 .lslab-multi-spark-label {
      display: block;
      margin-top: 6px;
      font-size: 11px;
      color: var(--muted);
      font-family: var(--font-body);
    }
