
    *,
    *::before,
    *::after {
      margin: 0;
      padding: 0;
      box-sizing: border-box
    }

    :root {
      --brand: #4F5BD5;
      --brand2: #5B6BE6;
      --brand3: #8EA0FF;
      --brand-12: rgba(79, 91, 213, 0.12);
      --brand-08: rgba(79, 91, 213, 0.08);
      --brand-06: rgba(79, 91, 213, 0.06);
      --ink: #1A1F36;
      --ink2: #353C57;
      --ink3: #59627F;
      --ink4: #737C97;
      --line: #E7E6F5;
      --bg: #F5F5FB;
      --card: #FFFFFF;
      --g: #16A34A;
      --gbg: #DCFCE7;
      --r: #DC2626;
      --rbg: #FEE2E2;
      --amber: #F59E0B;
      --ambg: #FEF3C7
    }

    html,
    body {
      width: 100%;
      max-width: 100%;
      overflow-x: hidden
    }

    body {
      font-family: 'DM Sans', sans-serif;
      color: var(--ink);
      background: var(--bg);
      -webkit-font-smoothing: antialiased;
      line-height: 1.5
    }

    a {
      text-decoration: none;
      color: inherit
    }

    /* NAV */
    nav {
      background: linear-gradient(135deg, #4F5BD5, #5B6BE6);
      padding: 0 40px;
      height: 60px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      position: sticky;
      top: 0;
      z-index: 100;
      box-shadow: 0 2px 20px rgba(79, 91, 213, 0.25)
    }

    .logo {
      color: #fff;
      font-size: 20px;
      font-weight: 700;
      display: flex;
      align-items: center;
      gap: 8px
    }

    .logo svg {
      width: 28px;
      height: 28px
    }

    .nv {
      display: flex;
      gap: 28px;
      align-items: center
    }

    .nv>a {
      color: rgba(255, 255, 255, 0.82);
      font-size: 14px;
      font-weight: 500;
      transition: .15s;
      padding: 4px 0
    }

    .nv>a:hover {
      color: #fff
    }

    .nv>a.on {
      color: #fff;
      border-bottom: 2px solid #fff;
      padding-bottom: 2px
    }

    .ham {
      display: none;
      background: none;
      border: none;
      color: #fff;
      cursor: pointer;
      padding: 4px
    }

    .ham svg {
      width: 24px;
      height: 24px
    }

    /* DROPDOWN */
    .dd {
      position: relative
    }

    .dd-toggle {
      color: rgba(255, 255, 255, 0.82);
      font-size: 14px;
      font-weight: 500;
      cursor: pointer;
      display: flex;
      align-items: center;
      gap: 5px;
      padding: 4px 0;
      transition: .15s;
      background: none;
      border: none;
      font-family: inherit
    }

    .dd-toggle:hover,
    .dd.open .dd-toggle {
      color: #fff
    }

    .dd-toggle.on {
      color: #fff;
      border-bottom: 2px solid #fff;
      padding-bottom: 2px
    }

    .dd-toggle svg {
      width: 12px;
      height: 12px;
      transition: .2s
    }

    .dd.open .dd-toggle svg {
      transform: rotate(180deg)
    }

    .dd-menu {
      position: absolute;
      top: calc(100% + 12px);
      left: 50%;
      transform: translateX(-50%);
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 12px;
      box-shadow: 0 8px 32px rgba(26, 31, 54, 0.12);
      min-width: 240px;
      padding: 8px 0;
      opacity: 0;
      visibility: hidden;
      transition: .2s;
      z-index: 200
    }

    .dd.open .dd-menu {
      opacity: 1;
      visibility: visible
    }

    .dd-menu::before {
      content: '';
      position: absolute;
      top: -6px;
      left: 50%;
      transform: translateX(-50%) rotate(45deg);
      width: 12px;
      height: 12px;
      background: var(--card);
      border-top: 1px solid var(--line);
      border-left: 1px solid var(--line)
    }

    .dd-menu a {
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 9px 18px;
      font-size: 13.5px;
      font-weight: 500;
      color: var(--ink);
      transition: .12s
    }

    .dd-menu a:hover {
      background: var(--brand-06);
      color: var(--brand)
    }

    .dm-i {
      width: 28px;
      height: 28px;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      color: var(--ink3)
    }

    .dm-i svg {
      width: 18px;
      height: 18px
    }

    .dd-menu a:hover .dm-i {
      color: var(--brand)
    }

    .dd-menu a .dm-label {
      display: flex;
      flex-direction: column
    }

    .dd-menu a .dm-sub {
      font-size: 11px;
      color: var(--ink4);
      font-weight: 400;
      margin-top: 1px
    }

    .dd-sep {
      height: 1px;
      background: var(--line);
      margin: 6px 0
    }

    /* NAV RIGHT */
    .nv-right {
      display: flex;
      align-items: center;
      gap: 8px
    }

    .theme-btn {
      width: 36px;
      height: 36px;
      border-radius: 8px;
      background: rgba(255, 255, 255, 0.1);
      border: none;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      color: rgba(255, 255, 255, 0.7);
      transition: .15s
    }

    .theme-btn:hover {
      background: rgba(255, 255, 255, 0.2);
      color: #fff
    }

    .theme-btn svg {
      width: 18px;
      height: 18px
    }

    .nav-util-link {
      width: 36px;
      height: 36px;
      border-radius: 8px;
      background: rgba(255, 255, 255, 0.1);
      display: flex;
      align-items: center;
      justify-content: center;
      color: rgba(255, 255, 255, 0.7);
      transition: .15s
    }

    .nav-util-link:hover {
      background: rgba(255, 255, 255, 0.2);
      color: #fff
    }

    .nav-util-link svg {
      width: 18px;
      height: 18px
    }

    .icon-moon {
      display: none
    }

    [data-theme="dark"] .icon-sun {
      display: none
    }

    [data-theme="dark"] .icon-moon {
      display: block
    }

    .lang-btn {
      background: rgba(255, 255, 255, 0.1);
      border: 1px solid rgba(255, 255, 255, 0.15);
      border-radius: 8px;
      padding: 6px 10px;
      color: rgba(255, 255, 255, 0.85);
      font-size: 12.5px;
      font-weight: 600;
      font-family: inherit;
      cursor: pointer;
      display: flex;
      align-items: center;
      gap: 4px;
      transition: .15s
    }

    .lang-btn:hover {
      background: rgba(255, 255, 255, 0.2);
      color: #fff
    }

    .lang-btn svg {
      width: 10px;
      height: 10px
    }

    .prof-btn {
      background: none;
      border: none;
      cursor: pointer;
      padding: 0;
      display: flex;
      align-items: center
    }

    .prof-avatar {
      width: 34px;
      height: 34px;
      border-radius: 50%;
      background: rgba(255, 255, 255, 0.15);
      border: 2px solid rgba(255, 255, 255, 0.3);
      display: flex;
      align-items: center;
      justify-content: center;
      color: rgba(255, 255, 255, 0.8);
      transition: .15s
    }

    .prof-avatar svg {
      width: 18px;
      height: 18px
    }

    .prof-btn:hover .prof-avatar {
      background: rgba(255, 255, 255, 0.25);
      border-color: rgba(255, 255, 255, 0.5)
    }

    nav .nv-right .bc-auth-inline-actions,
    nav .nv-right [data-bc-auth-inline="1"] {
      display: none !important
    }

    .dd-menu-sm {
      min-width: 160px
    }

    .dd-menu-sm a {
      padding: 8px 18px;
      font-size: 13px
    }

    .dd-right {
      left: auto;
      right: 0;
      transform: none
    }

    .dd-right::before {
      left: auto;
      right: 16px;
      transform: rotate(45deg)
    }

    .lang-active {
      color: var(--brand) !important;
      font-weight: 600 !important
    }

    .prof-cta-row {
      justify-content: center;
      font-weight: 600 !important
    }

    .prof-cta-row span {
      padding: 6px 24px;
      border-radius: 8px;
      border: 1.5px solid var(--brand);
      color: var(--brand);
      transition: .15s;
      font-size: 12.5px
    }

    .prof-signup span {
      background: var(--brand);
      color: #fff !important;
      border-color: var(--brand)
    }

    .prof-cta-row:hover span {
      opacity: .85
    }

    /* MAIN */
    main {
      max-width: 1500px;
      width: 100%;
      margin: 0 auto;
      padding: 36px 24px 64px
    }

    .bread {
      font-size: 14px;
      color: var(--ink3);
      margin-bottom: 20px
    }

    .bread a {
      color: var(--brand);
      font-weight: 500
    }

    .bread span {
      margin: 0 6px;
      opacity: .5
    }

    /* HERO — Light */
    .hero {
      position: relative;
      text-align: center;
      margin-bottom: 40px;
      padding: 44px 24px 38px;
      border-radius: 24px;
      overflow: hidden;
      color: var(--ink);
      background:
        radial-gradient(820px 300px at 50% -34%, rgba(79, 91, 213, 0.13), transparent 70%),
        linear-gradient(180deg, #FBFBFE, var(--card));
      border: 1px solid var(--line)
    }

    .hero-badge {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      font-size: 13px;
      font-weight: 600;
      color: var(--brand);
      background: var(--brand-12);
      border: 1px solid rgba(79, 91, 213, 0.2);
      padding: 7px 14px;
      border-radius: 999px;
      margin-bottom: 18px
    }

    .hero-badge-dot {
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: var(--g);
      box-shadow: 0 0 0 0 rgba(22, 163, 74, 0.5);
      animation: heroPulse 2s infinite
    }

    @keyframes heroPulse {
      0% { box-shadow: 0 0 0 0 rgba(22, 163, 74, 0.5) }
      70% { box-shadow: 0 0 0 7px rgba(22, 163, 74, 0) }
      100% { box-shadow: 0 0 0 0 rgba(22, 163, 74, 0) }
    }

    .hero h1 {
      font-size: 42px;
      font-weight: 700;
      line-height: 1.16;
      margin-bottom: 16px;
      letter-spacing: -.025em;
      color: var(--ink)
    }

    .hero h1 span {
      background: linear-gradient(120deg, var(--brand), var(--brand2) 55%, var(--brand3));
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text
    }

    .hero p {
      font-size: 17px;
      color: var(--ink3);
      max-width: 700px;
      margin: 0 auto 30px;
      line-height: 1.6
    }

    .hero-stats {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 14px;
      max-width: 800px;
      margin: 40px auto 4px
    }

    .hero-heat {
      display: grid;
      grid-template-columns: repeat(6, 1fr);
      gap: 8px;
      margin: 26px auto 0;
      max-width: 1120px;
      padding-top: 22px;
      border-top: 1px solid var(--line)
    }

    .ht {
      border-radius: 11px;
      padding: 12px 13px;
      text-decoration: none;
      display: block;
      border: 1px solid transparent;
      transition: .15s
    }

    .ht:hover { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(26, 31, 54, 0.08) }
    .ht.up { background: #E7F8EE; border-color: #BBE7CD }
    .ht.dn { background: #FCE9E9; border-color: #F3C9C9 }
    .ht .hs { display: block; font-size: 12px; font-weight: 700; font-family: 'JetBrains Mono', monospace; color: var(--ink) }
    .ht .hp { display: block; font-size: 15px; font-weight: 700; font-family: 'JetBrains Mono', monospace; margin-top: 5px; color: var(--ink) }
    .ht .hc { display: block; font-size: 12px; font-weight: 600; font-family: 'JetBrains Mono', monospace; margin-top: 2px }
    .ht .hc.u { color: var(--g) }
    .ht .hc.d { color: var(--r) }

    @media(min-width:861px) and (max-width:1100px) { .hero-heat { grid-template-columns: repeat(4, 1fr) } }
    @media(max-width:860px) { .hero-heat { grid-template-columns: repeat(2, 1fr) } }

    .hstat {
      display: flex;
      align-items: center;
      gap: 11px;
      text-align: left;
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 14px;
      padding: 15px 14px;
      overflow: hidden;
      transition: .2s
    }

    .hstat:hover {
      border-color: var(--brand);
      box-shadow: 0 8px 24px rgba(79, 91, 213, 0.1);
      transform: translateY(-2px)
    }

    .hstat-ic {
      flex: none;
      width: 40px;
      height: 40px;
      border-radius: 11px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--brand);
      background: var(--brand-12)
    }

    .hstat-ic svg {
      width: 21px;
      height: 21px
    }

    .hstat-txt {
      display: flex;
      flex-direction: column;
      line-height: 1.1;
      flex: 1 1 auto;
      min-width: 0
    }

    .hstat-val {
      font-size: 23px;
      font-weight: 700;
      color: var(--ink);
      font-family: 'JetBrains Mono', monospace;
      letter-spacing: -.02em
    }

    .hstat-lbl {
      font-size: 12.5px;
      color: var(--ink3);
      font-weight: 500;
      margin-top: 3px;
      line-height: 1.2;
      overflow-wrap: anywhere;
      hyphens: auto
    }

    /* HERO SEARCH (centerpiece) */
    .hero-search {
      display: flex;
      align-items: center;
      gap: 8px;
      max-width: 560px;
      margin: 4px auto 14px;
      position: relative;
      background: var(--card);
      border: 2px solid var(--line);
      border-radius: 14px;
      padding: 6px 6px 6px 46px;
      box-shadow: 0 6px 22px rgba(79, 91, 213, .07);
      transition: .2s
    }

    .hero-search:focus-within {
      border-color: var(--brand);
      box-shadow: 0 0 0 4px var(--brand-12)
    }

    .hero-search > svg {
      position: absolute;
      left: 16px;
      top: 50%;
      transform: translateY(-50%);
      width: 20px;
      height: 20px;
      color: var(--ink4)
    }

    .hero-search input {
      flex: 1 1 auto;
      min-width: 0;
      border: 0;
      outline: 0;
      background: transparent;
      font: inherit;
      font-size: 16px;
      color: var(--ink);
      padding: 10px 4px
    }

    .hero-search input::placeholder { color: var(--ink4) }

    .hero-search button {
      flex: none;
      border: 0;
      cursor: pointer;
      font: inherit;
      font-weight: 700;
      font-size: 14px;
      color: #fff;
      background: var(--brand);
      padding: 11px 18px;
      border-radius: 10px;
      transition: .15s
    }

    .hero-search button:hover { background: #4452C8 }

    .hero-chips {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 8px;
      margin: 0 auto 24px
    }

    .hero-chip {
      font-size: 13px;
      font-weight: 600;
      color: var(--ink3);
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 999px;
      padding: 6px 13px;
      cursor: pointer;
      text-decoration: none;
      transition: .15s
    }

    .hero-chip:hover {
      color: var(--brand);
      border-color: var(--brand3);
      background: var(--brand-06);
      transform: translateY(-1px)
    }

    /* HERO EXPERTS — E-E-A-T trust strip */
    .hero-experts {
      display: inline-flex;
      align-items: center;
      gap: 14px;
      margin: 2px auto 30px;
      padding: 10px 20px 10px 14px;
      max-width: 100%;
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 999px;
      box-shadow: 0 8px 26px rgba(26, 31, 54, .07)
    }

    .he-avatars { display: flex; flex: none }

    .he-av {
      position: relative;
      width: 44px;
      height: 44px;
      margin-left: -13px
    }

    .he-av:first-child { margin-left: 0 }

    .he-av img,
    .he-av .avfb {
      width: 44px;
      height: 44px;
      border-radius: 50%;
      border: 2px solid #fff;
      box-shadow: 0 0 0 1px var(--line);
      object-fit: cover;
      display: block
    }

    .he-av .avfb {
      display: none;
      align-items: center;
      justify-content: center;
      background: linear-gradient(135deg, var(--brand), var(--brand2));
      color: #fff;
      font-weight: 700;
      font-size: 15px;
      font-family: 'JetBrains Mono', monospace
    }

    .he-text { text-align: start; line-height: 1.3 }

    .he-line {
      font-size: 13.5px;
      font-weight: 600;
      color: var(--ink);
      display: flex;
      align-items: center;
      gap: 6px;
      flex-wrap: wrap
    }

    .he-line .nm { color: var(--brand); font-weight: 700 }
    .he-check { width: 15px; height: 15px; color: var(--g); flex: none }

    .he-sub { font-size: 12px; color: var(--ink3); margin-top: 2px }
    .he-sub a { color: var(--brand); font-weight: 600; text-decoration: none }
    .he-sub a:hover { text-decoration: underline }

    /* hover credential popover per avatar */
    .he-pop {
      position: absolute;
      bottom: calc(100% + 11px);
      left: 50%;
      transform: translateX(-50%) translateY(5px);
      width: 218px;
      background: var(--ink);
      color: #fff;
      border-radius: 13px;
      padding: 12px 14px;
      opacity: 0;
      visibility: hidden;
      transition: .18s;
      z-index: 30;
      text-align: start;
      box-shadow: 0 14px 34px rgba(26, 31, 54, .3)
    }

    .he-pop::after {
      content: '';
      position: absolute;
      top: 100%;
      left: 50%;
      transform: translateX(-50%);
      border: 6px solid transparent;
      border-top-color: var(--ink)
    }

    .he-av:hover .he-pop {
      opacity: 1;
      visibility: visible;
      transform: translateX(-50%) translateY(0)
    }

    .he-pop .pn { font-weight: 700; font-size: 13px }
    .he-pop .pr {
      font-size: 11px;
      color: var(--brand3);
      margin: 3px 0 7px;
      font-family: 'JetBrains Mono', monospace
    }
    .he-pop .pc { font-size: 11.5px; color: #D7D9E6; line-height: 1.45 }
    .he-pop .pl {
      display: inline-block;
      margin-top: 8px;
      font-size: 11px;
      font-weight: 600;
      color: #fff;
      text-decoration: none
    }
    .he-pop .pl:hover { text-decoration: underline }

    @media(max-width:560px) {
      .hero-experts { border-radius: 18px; padding: 12px 16px; gap: 12px }
      .hero-search button { padding: 11px 14px }
    }

    /* HERO SPLIT GRID — copy left, analyst portraits right */
    .hero-grid {
      display: grid;
      grid-template-columns: 1.08fr 0.92fr;
      gap: 34px;
      align-items: center;
      max-width: 1120px;
      margin: 0 auto
    }

    .hero-main { text-align: start }
    .hero-main h1 { text-align: start }
    .hero-main p { margin-left: 0; margin-right: 0; max-width: 560px; text-align: start }
    .hero-grid .hero-search { margin-left: 0; margin-right: 0 }
    .hero-grid .hero-chips { justify-content: flex-start }
    .hero-grid .hero-cta { justify-content: flex-start; margin-bottom: 0 }

    .hero-analysts {
      background: linear-gradient(180deg, #FBFAFF, var(--card));
      border: 1px solid var(--line);
      border-radius: 20px;
      padding: 18px;
      box-shadow: 0 16px 44px rgba(79, 91, 213, .12);
      text-align: start
    }

    .ha-head { font-size: 14px; font-weight: 700; color: var(--ink); display: flex; align-items: center; gap: 7px }
    .ha-head .he-check { color: var(--g) }
    .ha-sub { font-size: 12px; color: var(--ink3); margin: 3px 0 14px }

    .ha-tiles { display: grid; grid-template-columns: 1fr 1fr; gap: 12px }
    .ha-tile {
      position: relative;
      display: block;
      aspect-ratio: 1 / 1;
      border-radius: 14px;
      overflow: hidden;
      background: #ECEAF7;
      border: 1px solid var(--line);
      text-decoration: none;
      transition: .18s
    }
    .ha-tile:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(26, 31, 54, .16) }
    .ha-tile img { width: 100%; height: 100%; object-fit: cover; display: block }
    .ha-fb {
      position: absolute; inset: 0; display: none;
      align-items: center; justify-content: center;
      font-family: 'JetBrains Mono', monospace; font-weight: 700; font-size: 36px; color: #fff;
      background: linear-gradient(135deg, var(--brand), var(--brand2))
    }
    .ha-ov {
      position: absolute; left: 0; right: 0; bottom: 0;
      padding: 30px 12px 11px;
      background: linear-gradient(180deg, transparent, rgba(18, 14, 38, .9));
      color: #fff
    }
    .ha-nm { font-size: 13.5px; font-weight: 700; line-height: 1.15 }
    .ha-rl { font-size: 10px; font-weight: 700; color: var(--brand3); text-transform: uppercase; letter-spacing: .05em; margin-top: 3px }
    .ha-cr { font-size: 10.5px; color: #E6E4F4; margin-top: 5px; line-height: 1.3; font-family: 'JetBrains Mono', monospace }
    .ha-li { display: inline-flex; align-items: center; gap: 4px; margin-top: 8px; font-size: 11px; font-weight: 600; color: #fff; text-decoration: none }
    .ha-li:hover { text-decoration: underline }
    .ha-foot { margin-top: 13px; text-align: center }
    .ha-foot a { font-size: 12px; font-weight: 600; color: var(--brand); text-decoration: none }
    .ha-foot a:hover { text-decoration: underline }

    /* V6 — endorsement quotes */
    .fc-q { display: flex; gap: 13px; padding: 13px 0 }
    .fc-q + .fc-q { border-top: 1px solid var(--line) }
    .fc-av { position: relative; width: 56px; height: 56px; flex: none }
    .fc-av img, .fc-av .avfb {
      width: 56px; height: 56px; border-radius: 50%;
      object-fit: cover; display: block;
      border: 2px solid #fff; box-shadow: 0 0 0 1px var(--line)
    }
    .fc-av .avfb {
      display: none; align-items: center; justify-content: center;
      background: linear-gradient(135deg, var(--brand), var(--brand2));
      color: #fff; font-weight: 700; font-size: 17px; font-family: 'JetBrains Mono', monospace
    }
    .fc-qt { font-size: 13px; color: var(--ink); font-style: italic; line-height: 1.45 }
    .fc-by { font-size: 11.5px; color: var(--ink3); margin-top: 5px }
    .fc-by b { color: var(--brand); font-style: normal; font-weight: 700 }
    .fc-role { color: var(--ink2); font-weight: 600 }
    .fc-cta { margin-top: 15px; padding-top: 16px; border-top: 1px solid var(--line) }
    .fc-cta .hero-btn { display: flex; width: 100% }

    /* HERO V10 — elegant editorial on white */
    .hero.hv10 { text-align: center; padding: 54px 40px 46px }
    .hv-kick { font-size: 15px; letter-spacing: .24em; text-transform: uppercase; color: var(--brand); font-weight: 700; margin: 0 0 16px }
    .hv-title { font-family: 'Playfair Display', Georgia, serif; font-weight: 600; font-size: 47px; line-height: 1.1; letter-spacing: -.01em; color: var(--ink); margin: 0 auto 18px; max-width: 840px }
    .hv-sub { font-size: 16px; color: var(--ink3); max-width: 600px; margin: 0 auto 28px; line-height: 1.6 }
    .hv-cta { display: flex; justify-content: center }
    .hv-rule { width: 64px; height: 1px; background: var(--line); margin: 34px auto }
    .hv-fchead { font-size: 15px; color: var(--ink3); margin-bottom: 20px; display: inline-flex; align-items: center; gap: 8px; flex-wrap: wrap; justify-content: center }
    .hv-fchead .he-check { width: 15px; height: 15px; color: var(--g); flex: none }
    .hv-fchead b { color: var(--ink); font-weight: 700 }
    .hv-rev { display: flex; justify-content: center; gap: 50px; flex-wrap: wrap; max-width: 980px; margin: 0 auto }
    .hv-q { display: flex; gap: 13px; align-items: center; max-width: 440px; text-align: start }
    .hv-q img { width: 54px; height: 54px; border-radius: 50%; object-fit: cover; flex: none; border: 2px solid #fff; box-shadow: 0 0 0 1px var(--line) }
    .hv-qt { font-family: 'Playfair Display', Georgia, serif; font-style: italic; font-size: 15px; color: var(--ink); line-height: 1.4 }
    .hv-qt::before { content: '\201C' } .hv-qt::after { content: '\201D' }
    .hv-qby { font-size: 15px; color: var(--ink3); margin-top: 5px }
    .hv-qby b { color: var(--brand); font-weight: 700 }
    .hv-qby .r { color: var(--ink2); font-weight: 600 }
    .hv-author-link { color: var(--brand); text-decoration: none; font-weight: 700 }
    .hv-author-link:hover { text-decoration: underline }
    .hv-stats { display: flex; justify-content: center; gap: 52px; flex-wrap: wrap; margin-top: 36px }
    .hv-st b { font-family: 'Playfair Display', Georgia, serif; font-size: 29px; font-weight: 600; color: var(--ink); display: block; line-height: 1 }
    .hv-st i { font-style: normal; font-size: 15px; color: var(--ink3); margin-top: 6px; display: block }
    @media(max-width:700px) { .hero.hv10 { padding: 40px 22px } .hv-title { font-size: 33px } .hv-rev { gap: 22px } .hv-stats { gap: 26px } }

    @media(max-width:860px) {
      .hero-grid { grid-template-columns: 1fr; gap: 26px }
      .hero-main, .hero-main h1, .hero-main p { text-align: center }
      .hero-main p { margin-left: auto; margin-right: auto }
      .hero-grid .hero-search { margin-left: auto; margin-right: auto }
      .hero-grid .hero-chips, .hero-grid .hero-cta { justify-content: center }
      .hero-analysts { max-width: 460px; margin: 0 auto }
    }

    /* SEARCH */
    .search-wrap {
      max-width: 520px;
      margin: 0 auto 16px;
      position: relative
    }

    .search-wrap input {
      width: 100%;
      padding: 14px 20px 14px 46px;
      border: 2px solid var(--line);
      border-radius: 12px;
      font-size: 16px;
      font-family: inherit;
      background: var(--card);
      color: var(--ink);
      outline: none;
      transition: .2s
    }

    .search-wrap input:focus {
      border-color: var(--brand);
      box-shadow: 0 0 0 4px var(--brand-12)
    }

    .search-wrap input::placeholder {
      color: var(--ink4)
    }

    .search-wrap svg {
      position: absolute;
      left: 16px;
      top: 50%;
      transform: translateY(-50%);
      width: 20px;
      height: 20px;
      color: var(--ink4)
    }

    /* TRUST BADGES */
    .trust {
      display: flex;
      justify-content: center;
      gap: 24px;
      margin-bottom: 40px;
      flex-wrap: wrap
    }

    .trust-item {
      display: flex;
      align-items: center;
      gap: 6px;
      font-size: 14px;
      font-weight: 500;
      color: var(--ink3)
    }

    .trust-item svg {
      width: 16px;
      height: 16px;
      color: var(--brand)
    }

    /* TRENDING MARQUEE */
    .marquee-wrap {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 12px;
      padding: 12px 0;
      margin-bottom: 40px;
      overflow: hidden;
      position: relative
    }

    .marquee-label {
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      width: 100px;
      display: flex;
      align-items: center;
      justify-content: center;
      background: linear-gradient(90deg, var(--card) 70%, transparent);
      z-index: 2;
      font-size: 14px;
      font-weight: 700;
      color: var(--brand);
      text-transform: uppercase;
      letter-spacing: .06em
    }

    .marquee-track {
      display: flex;
      gap: 32px;
      animation: marquee 30s linear infinite;
      padding-left: 110px
    }

    .marquee-track:hover {
      animation-play-state: paused
    }

    @keyframes marquee {
      0% {
        transform: translateX(0)
      }

      100% {
        transform: translateX(-50%)
      }
    }

    .mq-item {
      display: flex;
      align-items: center;
      gap: 8px;
      white-space: nowrap;
      font-size: 14px;
      font-weight: 500
    }

    .mq-icon {
      width: 24px;
      height: 24px;
      border-radius: 6px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 14px;
      font-weight: 700;
      flex-shrink: 0
    }

    .mq-pct {
      font-family: 'JetBrains Mono', monospace;
      font-size: 14px;
      font-weight: 600;
      padding: 2px 8px;
      border-radius: 5px
    }

    .mq-pct.u {
      color: var(--g);
      background: var(--gbg)
    }

    .mq-pct.d {
      color: var(--r);
      background: var(--rbg)
    }

    /* STATS */
    .stats {
      display: flex;
      justify-content: center;
      gap: 40px;
      margin-bottom: 44px;
      flex-wrap: wrap
    }

    .stat {
      text-align: center
    }

    .stat-val {
      font-size: 28px;
      font-weight: 700;
      color: var(--brand);
      font-family: 'JetBrains Mono', monospace
    }

    .stat-label {
      font-size: 14px;
      color: var(--ink3);
      margin-top: 2px;
      font-weight: 500
    }

    /* CATEGORY CARDS */
    .cats {
      display: grid;
      grid-template-columns: repeat(6, 1fr);
      gap: 20px;
      margin-bottom: 56px
    }

    .cat-card {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 16px;
      padding: 28px 24px;
      transition: .25s;
      position: relative;
      overflow: hidden;
      cursor: pointer;
      display: block
    }

    .cat-card:hover {
      border-color: var(--brand);
      box-shadow: 0 8px 32px rgba(79, 91, 213, 0.1);
      transform: translateY(-3px)
    }

    .cat-head {
      display: flex;
      align-items: center;
      gap: 14px;
      margin-bottom: 16px
    }

    .cat-icon {
      width: 48px;
      height: 48px;
      border-radius: 12px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 22px;
      flex-shrink: 0;
      background: var(--brand-12) !important;
      color: var(--brand)
    }

    .cat-icon svg {
      width: 24px;
      height: 24px;
      stroke: var(--brand);
      fill: none;
      stroke-width: 1.8;
      stroke-linecap: round;
      stroke-linejoin: round
    }

    .cat-title {
      font-size: 18px;
      font-weight: 700
    }

    .cat-count {
      font-size: 14px;
      color: var(--ink4);
      font-weight: 500;
      margin-top: 1px
    }

    .cat-desc {
      font-size: 14px;
      color: var(--ink3);
      line-height: 1.55;
      margin-bottom: 16px
    }

    .cat-assets {
      display: flex;
      flex-wrap: wrap;
      gap: 6px;
      margin-bottom: 18px
    }

    .cat-tag {
      font-size: 14px;
      font-weight: 600;
      padding: 4px 10px;
      border-radius: 6px;
      background: var(--bg);
      color: var(--ink2);
      font-family: 'JetBrains Mono', monospace
    }

    .cat-arrow {
      display: flex;
      align-items: center;
      gap: 6px;
      font-size: 14px;
      font-weight: 600;
      color: var(--brand)
    }

    .cat-arrow svg {
      width: 16px;
      height: 16px;
      transition: .15s
    }

    .cat-card:hover .cat-arrow svg {
      transform: translateX(4px)
    }

    /* QUICK JUMP */
    .preview {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 16px;
      padding: 28px;
      margin-bottom: 56px
    }

    .preview h2 {
      font-size: 20px;
      font-weight: 700;
      margin-bottom: 6px
    }

    .preview .sub {
      font-size: 14px;
      color: var(--ink3);
      margin-bottom: 20px
    }

    .prev-grid {
      display: grid;
      grid-template-columns: repeat(7, 1fr);
      gap: 10px
    }

    .prev-item {
      border: 1px solid var(--line);
      border-radius: 10px;
      padding: 14px 12px;
      text-align: center;
      transition: .2s;
      cursor: pointer;
      display: block
    }

    .prev-item:hover {
      border-color: var(--brand);
      background: var(--brand-06)
    }

    .prev-icon {
      font-size: 20px;
      margin-bottom: 6px
    }

    .prev-label {
      font-size: 14px;
      font-weight: 600;
      color: var(--ink);
      margin-bottom: 2px
    }

    .prev-count {
      font-size: 14px;
      color: var(--ink4)
    }

    /* MARKET-BY-MARKET SUMMARY */
    .mkt-wrap {
      margin-bottom: 56px
    }

    .mkt-head {
      margin-bottom: 16px
    }

    .mkt-head h2 {
      font-size: 22px;
      font-weight: 700
    }

    .mkt-head .sub {
      font-size: 14px;
      color: var(--ink3);
      margin-top: 2px
    }

    .mkt-scroll {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 16px;
      overflow-x: auto
    }

    .mkt-table {
      width: 100%;
      border-collapse: collapse;
      min-width: 720px
    }

    .mkt-table th {
      text-align: left;
      font-size: 12px;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: .04em;
      color: var(--ink4);
      padding: 14px 18px;
      border-bottom: 1px solid var(--line);
      white-space: nowrap
    }

    .mkt-table th.r,
    .mkt-table td.r {
      text-align: right
    }

    .mkt-table td {
      padding: 14px 18px;
      font-size: 14px;
      color: var(--ink2);
      border-bottom: 1px solid var(--line);
      vertical-align: middle
    }

    .mkt-table tbody tr:last-child td {
      border-bottom: 0
    }

    .mkt-table tbody tr:hover {
      background: var(--brand-06)
    }

    .mkt-table td strong {
      color: var(--ink);
      font-weight: 700
    }

    .mkt-table td.mono {
      font-family: 'JetBrains Mono', monospace;
      color: var(--ink)
    }

    .mkt-table a {
      color: var(--brand);
      font-weight: 600;
      white-space: nowrap
    }

    .mkt-table a:hover {
      text-decoration: underline
    }

    /* FORECAST HUB MAIN TABLE */
    .fh-main-table-section {
      margin: 20px 0 56px
    }

    .fh-mode-switch {
      display: flex;
      justify-content: center;
      margin: 0 0 14px
    }

    .fh-mode-tabs {
      display: inline-flex;
      overflow: hidden;
      background: #fff;
      border: 1px solid var(--line);
      border-radius: 14px;
      box-shadow: 0 2px 8px rgba(26, 31, 54, 0.03)
    }

    .fh-mode-tab {
      min-width: 132px;
      height: 44px;
      border: 0;
      background: transparent;
      color: var(--ink3);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      font: inherit;
      font-size: 14px;
      font-weight: 700
    }

    .fh-mode-tab.on {
      background: var(--brand);
      color: #fff
    }

    .fh-mode-tab svg {
      width: 16px;
      height: 16px;
      flex: none
    }

    .fh-table-card {
      max-width: 100%;
      background: #fff;
      border: 1px solid var(--line);
      border-radius: 16px;
      overflow: hidden;
      box-shadow: 0 1px 0 rgba(26, 31, 54, 0.02)
    }

    .fh-table-controls {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 18px;
      padding: 22px 24px 18px
    }

    .fh-pills {
      display: flex;
      align-items: center;
      gap: 10px;
      flex-wrap: wrap
    }

    .fh-pill {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 36px;
      padding: 0 16px;
      border: 1px solid var(--line);
      border-radius: 999px;
      background: #fff;
      color: var(--ink3);
      font-size: 13px;
      font-weight: 700;
      white-space: nowrap
    }

    .fh-pill.on {
      background: var(--brand);
      color: #fff;
      border-color: var(--brand)
    }

    .fh-table-actions {
      display: flex;
      align-items: center;
      gap: 10px;
      flex: none
    }

    .fh-table-search {
      width: 320px;
      max-width: 34vw;
      height: 38px;
      border: 1px solid var(--line);
      border-radius: 999px;
      padding: 0 16px;
      font: inherit;
      color: var(--ink2);
      outline: none
    }

    .fh-table-search::placeholder {
      color: #60708F
    }

    .fh-icon-btn {
      width: 38px;
      height: 38px;
      border: 1px solid var(--line);
      border-radius: 12px;
      background: #fff;
      color: var(--brand);
      display: inline-flex;
      align-items: center;
      justify-content: center
    }

    .fh-icon-btn svg {
      width: 17px;
      height: 17px
    }

    .fh-table-scroll {
      overflow-x: auto
    }

    .fh-main-table {
      width: 100%;
      min-width: 1180px;
      border-collapse: collapse
    }

    .fh-main-table th,
    .fh-main-table td {
      text-align: left;
      border-bottom: 1px solid #EBEEF7
    }

    .fh-main-table th {
      padding: 20px 12px;
      background: #FBFCFF;
      color: #626B83;
      font-size: 12px;
      font-weight: 800;
      text-transform: uppercase;
      white-space: nowrap
    }

    .fh-main-table th:first-child,
    .fh-main-table td:first-child {
      padding-left: 24px
    }

    .fh-main-table th:last-child,
    .fh-main-table td:last-child {
      padding-right: 24px
    }

    .fh-main-table td {
      padding: 18px 12px;
      color: #171A3C;
      vertical-align: middle;
      font-size: 14px
    }

    .fh-main-table tbody tr:last-child td {
      border-bottom: 0
    }

    .fh-main-table tbody tr:hover {
      background: rgba(79, 91, 213, 0.035)
    }

    .fh-asset-cell {
      display: flex;
      align-items: center;
      gap: 11px;
      min-width: 190px
    }

    .fh-asset-logo {
      width: 32px;
      height: 32px;
      border-radius: 50%;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      flex: none;
      font-weight: 800;
      font-size: 12px
    }

    .fh-logo-nv { background: #050706; color: #7CFC39; box-shadow: inset 0 0 0 2px #7CFC39 }
    .fh-logo-btc { background: #F7931A; color: #fff; font-family: 'JetBrains Mono', monospace; font-size: 18px }
    .fh-logo-eur { background: linear-gradient(90deg, #2563EB 0 50%, #EF4444 50%); color: #fff; font-size: 10px }
    .fh-logo-spy { background: #fff; color: #111827; border: 1px solid #DDE4F2; font-size: 12px }
    .fh-logo-spx { background: linear-gradient(135deg, #2563EB, #7BA3FF); color: #fff; font-size: 10px }
    .fh-logo-au { background: linear-gradient(135deg, #FDE68A, #EAB308); color: #7A4B00 }
    .fh-logo-yield { background: linear-gradient(135deg, #8EA0FF, #5B6BE6); color: #fff; font-size: 10px }
    .fh-logo-googl { background: #fff; color: #4285F4; border: 1px solid #DDE4F2; font-size: 18px }

    .fh-asset-name {
      font-weight: 800;
      line-height: 1.2;
      color: #171A3C
    }

    .fh-asset-symbol {
      color: #67708A;
      font-size: 12px;
      margin-top: 4px;
      font-family: 'JetBrains Mono', monospace
    }

    .fh-cat {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border-radius: 999px;
      padding: 2px 7px;
      font-size: 12px;
      font-weight: 800;
      line-height: 1.35;
      white-space: nowrap
    }

    .fh-cat-stocks { background: #DDF8E7; color: #238147 }
    .fh-cat-crypto { background: #E8DEFF; color: #7C4DFF }
    .fh-cat-forex { background: #DCE9FF; color: #315FD5 }
    .fh-cat-etf { background: #CEF5EF; color: #167D72 }
    .fh-cat-indices { background: #FCE1F1; color: #D8407E }
    .fh-cat-commodities { background: #FFE7D6; color: #D64A12 }
    .fh-cat-bonds { background: #E8EDF4; color: #536174 }

    .fh-price {
      font-family: 'JetBrains Mono', monospace;
      white-space: nowrap
    }

    .fh-forecast {
      display: grid;
      gap: 4px;
      font-family: 'JetBrains Mono', monospace;
      white-space: nowrap
    }

    .fh-change {
      display: inline-flex;
      width: fit-content;
      border-radius: 6px;
      padding: 1px 5px;
      font-family: 'DM Sans', sans-serif;
      font-size: 12px;
      font-weight: 800;
      line-height: 1.35
    }

    .fh-change.up {
      background: var(--gbg);
      color: #247648
    }

    .fh-change.down {
      background: var(--rbg);
      color: #B83A32
    }

    @media(max-width:980px) {
      .fh-table-controls {
        align-items: flex-start;
        flex-direction: column
      }

      .fh-table-actions {
        width: 100%;
        flex-wrap: wrap
      }

      .fh-table-search {
        width: min(100%, 420px);
        max-width: none;
        flex: 1
      }
    }

    @media(max-width:640px) {
      .fh-main-table-section { margin-top: 8px }
      .fh-mode-tab { min-width: 124px; font-size: 13px }
      .fh-table-controls { padding: 18px }
      .fh-pill { min-height: 34px; padding: 0 13px }
    }

    /* Legacy marker styles kept harmless in case old markup is cached elsewhere. */
    .live-table-slot {
      border: 2px dashed var(--line);
      border-radius: 16px;
      background: repeating-linear-gradient(45deg, #FBFCFE, #FBFCFE 12px, #F3F5FB 12px, #F3F5FB 24px);
      padding: 40px 24px;
      margin-bottom: 56px;
      text-align: center
    }

    .lts-note {
      font-size: 14px;
      font-weight: 600;
      color: var(--ink4);
      max-width: 640px;
      margin: 0 auto
    }

    /* HERO CTA */
    .hero-cta {
      display: flex;
      gap: 12px;
      flex-wrap: wrap;
      justify-content: center;
      margin: 22px 0 28px
    }

    .hero-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-size: 15px;
      font-weight: 700;
      padding: 12px 22px;
      border-radius: 12px;
      text-decoration: none;
      transition: .15s
    }

    .hero-btn.primary {
      background: var(--brand);
      color: #fff;
      box-shadow: 0 6px 18px rgba(79, 91, 213, .28)
    }

    .hero-btn.primary:hover { background: #4452C8; transform: translateY(-1px) }

    .hero-btn.ghost {
      background: var(--card);
      color: var(--brand);
      border: 1.5px solid var(--line)
    }

    .hero-btn.ghost:hover { border-color: var(--brand); background: var(--brand-06) }

    /* FREEMIUM GATING (app sets the flag; see deploy notes) */
    .fh-gated { position: relative }

    .fh-gated .mv-row:nth-child(n+4),
    .fh-gated .ob-card:nth-child(n+4) {
      filter: blur(4.5px);
      opacity: .5;
      pointer-events: none;
      user-select: none
    }

    .fh-paywall {
      position: absolute;
      left: 50%;
      bottom: 22px;
      transform: translateX(-50%);
      width: min(420px, 90%);
      display: flex;
      flex-direction: column;
      align-items: center;
      text-align: center;
      gap: 9px;
      padding: 22px 24px;
      border: 1px solid var(--brand-12);
      border-radius: 18px;
      background: rgba(255, 255, 255, .97);
      backdrop-filter: blur(3px);
      box-shadow: 0 18px 44px rgba(26, 31, 54, .18);
      z-index: 6
    }

    .fh-pw-ic {
      flex: none;
      width: 44px;
      height: 44px;
      border-radius: 12px;
      background: var(--brand-12);
      color: var(--brand);
      display: flex;
      align-items: center;
      justify-content: center
    }

    .fh-pw-tx b { display: block; font-size: 16px; color: var(--ink); margin-bottom: 4px }
    .fh-pw-tx span { font-size: 13px; color: var(--ink3); line-height: 1.5 }

    .fh-pw-btn {
      margin-top: 4px;
      background: var(--brand);
      color: #fff;
      font-size: 14.5px;
      font-weight: 700;
      padding: 12px 26px;
      border-radius: 11px;
      text-decoration: none;
      box-shadow: 0 6px 16px rgba(79, 91, 213, .26);
      transition: .15s
    }

    .fh-pw-btn:hover { transform: translateY(-1px); background: #4452C8 }

    @media (max-width:560px) {
      .hero-btn { width: 100%; }
      .fh-paywall { width: 92%; padding: 18px }
    }

    /* TODAY'S MARKET OUTLOOK */
    .outlook-wrap {
      max-width: 1200px;
      margin: 0 auto 56px;
      padding: 0 24px
    }

    .outlook-inner {
      background:
        radial-gradient(120% 140% at 0% 0%, var(--brand-06), transparent 55%),
        var(--card);
      border: 1px solid var(--line);
      border-radius: 20px;
      padding: 26px 28px 22px
    }

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

    .outlook-head h2 {
      font-size: 22px;
      font-weight: 800;
      letter-spacing: -.01em
    }

    .outlook-sub {
      font-size: 13.5px;
      color: var(--ink3);
      margin-top: 4px
    }

    .outlook-sub span {
      color: var(--ink2);
      font-weight: 600
    }

    .outlook-badge {
      display: inline-flex;
      align-items: center;
      gap: 7px;
      font-size: 13px;
      font-weight: 700;
      padding: 7px 14px;
      border-radius: 999px;
      background: var(--brand-12);
      color: var(--brand);
      white-space: nowrap
    }

    .outlook-badge.bull { background: rgba(22, 163, 74, .12); color: var(--g) }
    .outlook-badge.bear { background: rgba(220, 38, 38, .10); color: var(--r) }

    .outlook-badge .ob-dot {
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: currentColor;
      box-shadow: 0 0 0 0 currentColor;
      animation: obpulse 2s infinite
    }

    @keyframes obpulse {
      0% { box-shadow: 0 0 0 0 rgba(79, 91, 213, .35) }
      70% { box-shadow: 0 0 0 7px rgba(79, 91, 213, 0) }
      100% { box-shadow: 0 0 0 0 rgba(79, 91, 213, 0) }
    }

    .outlook-lead {
      font-size: 16px;
      line-height: 1.65;
      color: var(--ink2);
      max-width: 940px;
      margin-bottom: 20px
    }

    .outlook-lead b { color: var(--ink); font-weight: 700 }
    .outlook-lead .u { color: var(--g) }
    .outlook-lead .d { color: var(--r) }

    .outlook-grid {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 14px;
      margin-bottom: 18px
    }

    .ob-card,
    .ob-card-placeholder {
      display: block;
      flex: 1 1 calc(25% - 14px);
      max-width: calc(25% - 11px);
      min-width: 220px;
      background: var(--bg);
      border: 1px solid var(--line);
      border-radius: 14px;
      padding: 15px 16px;
      transition: .15s;
      border-left: 3px solid var(--line)
    }

    .ob-card-placeholder {
      color: var(--ink3);
      pointer-events: none;
      opacity: .82
    }

    a.ob-card:hover { background: var(--brand-06); transform: translateY(-1px) }
    .ob-card.bull { border-left-color: var(--g) }
    .ob-card.bear { border-left-color: var(--r) }
    .ob-card.mixed { border-left-color: var(--ink4) }
    .ob-card-placeholder.mixed { border-left-color: var(--ink4) }

    @media (max-width: 980px) {
      .outlook-grid .ob-card,
      .outlook-grid .ob-card-placeholder {
        flex-basis: calc(50% - 14px);
        max-width: calc(50% - 7px)
      }
    }

    @media (max-width: 640px) {
      .outlook-grid .ob-card,
      .outlook-grid .ob-card-placeholder {
        flex-basis: 100%;
        max-width: 100%
      }
    }

    .ob-top {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 8px;
      margin-bottom: 8px
    }

    .ob-name {
      font-size: 14px;
      font-weight: 700;
      color: var(--ink)
    }

    .ob-chip {
      font-size: 11px;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: .03em;
      padding: 3px 8px;
      border-radius: 6px
    }

    .ob-chip.bull { background: rgba(22, 163, 74, .12); color: var(--g) }
    .ob-chip.bear { background: rgba(220, 38, 38, .10); color: var(--r) }
    .ob-chip.mixed { background: var(--line); color: var(--ink3) }
    .ob-card-placeholder .ob-chip { background: var(--line); color: var(--ink3) }

    .ob-bar {
      height: 10px;
      border-radius: 6px;
      overflow: hidden;
      display: flex;
      background: var(--line);
      margin: 11px 0 8px
    }

    .ob-bar i { display: block; height: 100% }
    .ob-bar .up { background: var(--g) }
    .ob-bar .down { background: var(--r) }

    .ob-fig {
      display: block;
      font-size: 12px;
      font-family: 'JetBrains Mono', monospace;
      color: var(--ink3);
      margin-bottom: 9px
    }

    .ob-fig b.u { color: var(--g) }
    .ob-fig b.d { color: var(--r) }

    .ob-text {
      display: block;
      font-size: 12.5px;
      line-height: 1.5;
      color: var(--ink3);
      padding-top: 9px;
      border-top: 1px solid var(--line)
    }

    .ob-text b { color: var(--ink2); font-weight: 700 }
    .ob-text .u { color: var(--g); font-weight: 700 }
    .ob-text .d { color: var(--r); font-weight: 700 }

    .outlook-toggle { margin-bottom: 16px }

    .outlook-tiles {
      display: flex;
      gap: 12px;
      flex-wrap: wrap;
      margin-bottom: 18px
    }

    .ob-tile {
      flex: 1;
      min-width: 150px;
      background: var(--bg);
      border: 1px solid var(--line);
      border-radius: 14px;
      padding: 15px 16px;
      text-align: center
    }

    .ob-tile .tl {
      font-size: 11px;
      color: var(--ink4);
      text-transform: uppercase;
      letter-spacing: .04em;
      margin-bottom: 6px
    }

    .ob-tile .tv {
      font-size: 18px;
      font-weight: 800;
      color: var(--ink)
    }

    .ob-tile .tv .u { color: var(--g) }
    .ob-tile .tv .d { color: var(--r) }

    .outlook-foot {
      font-size: 12.5px;
      line-height: 1.6;
      color: var(--ink4);
      border-top: 1px dashed var(--line);
      padding-top: 14px;
      margin: 0
    }

    @media (max-width:640px) {
      .outlook-inner { padding: 20px 18px 18px }
      .outlook-lead { font-size: 15px }
    }

    /* INSIGHT MODULES (movers / sentiment / snapshot / news) */
    .ins-wrap {
      margin-bottom: 56px
    }

    .ins-head {
      display: flex;
      align-items: flex-end;
      justify-content: space-between;
      gap: 16px;
      flex-wrap: wrap;
      margin-bottom: 16px
    }

    .ins-head h2 {
      font-size: 22px;
      font-weight: 700
    }

    .ins-head .sub {
      font-size: 14px;
      color: var(--ink3);
      margin-top: 3px;
      max-width: 640px
    }

    .ins-toggle {
      display: inline-flex;
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 10px;
      padding: 3px
    }

    .ins-tg {
      border: 0;
      background: transparent;
      font: inherit;
      font-size: 13px;
      font-weight: 600;
      color: var(--ink3);
      padding: 7px 13px;
      border-radius: 7px;
      cursor: pointer;
      transition: .15s
    }

    .ins-tg.on {
      background: var(--brand);
      color: #fff
    }

    .ins-empty {
      padding: 22px;
      text-align: center;
      color: var(--ink4);
      font-size: 14px
    }

    /* movers */
    .movers-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 18px
    }

    .movers-col {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 16px;
      overflow: hidden
    }

    .movers-col-h {
      font-size: 13px;
      font-weight: 700;
      padding: 14px 18px;
      border-bottom: 1px solid var(--line)
    }

    .movers-col-h.up { color: var(--g) }
    .movers-col-h.down { color: var(--r) }

    .mv-row {
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 12px 18px;
      border-bottom: 1px solid var(--line);
      transition: .15s
    }

    .mv-row:last-child { border-bottom: 0 }
    .mv-row:hover { background: var(--brand-06) }

    .mv-ic {
      flex: none;
      width: 34px;
      height: 34px;
      border-radius: 8px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 11px;
      font-weight: 700;
      color: #fff;
      font-family: 'JetBrains Mono', monospace
    }

    .mv-meta { flex: none; width: 150px; min-width: 0 }

    .mv-spark {
      flex: 1;
      min-width: 0;
      height: 36px;
      padding: 0 10px;
      align-self: center
    }

    .mv-spark svg { width: 100%; height: 100%; display: block }

    @media(max-width:560px) { .mv-spark { display: none } }

    .mv-name {
      display: block;
      font-size: 14px;
      font-weight: 600;
      color: var(--ink);
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis
    }

    .mv-sub {
      display: block;
      margin-top: 1px;
      font-size: 11px;
      color: var(--ink4);
      text-transform: uppercase;
      letter-spacing: .03em;
      font-weight: 600
    }

    .mv-right { text-align: right; flex: none }

    .mv-price {
      display: block;
      font-size: 13px;
      color: var(--ink);
      font-weight: 600;
      font-family: 'JetBrains Mono', monospace
    }

    .mv-fc {
      display: block;
      margin-top: 1px;
      font-size: 11px;
      color: var(--ink4);
      font-family: 'JetBrains Mono', monospace
    }

    .mv-pct {
      display: block;
      margin-top: 2px;
      font-size: 13px;
      font-weight: 700;
      font-family: 'JetBrains Mono', monospace
    }

    .mv-pct.u { color: var(--g) }
    .mv-pct.d { color: var(--r) }

    /* sentiment */
    .sent-list {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 16px;
      padding: 8px 18px
    }

    .sent-row {
      display: grid;
      grid-template-columns: 110px 1fr 132px;
      align-items: center;
      gap: 14px;
      padding: 13px 0;
      border-bottom: 1px solid var(--line)
    }

    .sent-row:last-child { border-bottom: 0 }

    .sent-name {
      font-size: 14px;
      font-weight: 600;
      color: var(--ink)
    }

    .sent-bar {
      height: 12px;
      border-radius: 6px;
      overflow: hidden;
      display: flex;
      background: var(--line)
    }

    .sent-bar i { display: block; height: 100% }
    .sent-bar .up { background: var(--g) }
    .sent-bar .down { background: var(--r) }

    .sent-fig {
      font-size: 12px;
      font-family: 'JetBrains Mono', monospace;
      color: var(--ink3);
      text-align: right;
      white-space: nowrap
    }

    .sent-fig b.u { color: var(--g) }
    .sent-fig b.d { color: var(--r) }

    /* snapshot */
    .snap-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 12px
    }

    .snap-card {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 14px;
      padding: 14px 16px;
      transition: .18s
    }

    .snap-card:hover {
      border-color: var(--brand);
      box-shadow: 0 8px 22px rgba(79, 91, 213, 0.09);
      transform: translateY(-2px)
    }

    .snap-top {
      display: flex;
      align-items: baseline;
      justify-content: space-between;
      gap: 8px
    }

    .snap-sym {
      font-size: 13px;
      font-weight: 700;
      color: var(--ink);
      font-family: 'JetBrains Mono', monospace
    }

    .snap-cat {
      font-size: 10px;
      text-transform: uppercase;
      letter-spacing: .04em;
      color: var(--ink4);
      font-weight: 600
    }

    .snap-price {
      font-size: 19px;
      font-weight: 700;
      color: var(--ink);
      font-family: 'JetBrains Mono', monospace;
      margin: 8px 0 4px
    }

    .snap-fc {
      font-size: 12px;
      color: var(--ink3)
    }

    .snap-fc b {
      font-family: 'JetBrains Mono', monospace
    }

    .snap-fc b.u { color: var(--g) }
    .snap-fc b.d { color: var(--r) }

    /* news */
    .news-all {
      font-size: 14px;
      font-weight: 600;
      color: var(--brand);
      white-space: nowrap
    }

    .news-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 18px
    }

    .news-card {
      display: flex;
      flex-direction: column;
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 16px;
      overflow: hidden;
      color: inherit;
      text-decoration: none;
      transition: .18s
    }

    .news-card:hover {
      border-color: var(--brand);
      box-shadow: 0 10px 28px rgba(26, 31, 54, 0.08);
      transform: translateY(-2px)
    }

    .news-thumb {
      aspect-ratio: 16 / 9;
      background: var(--brand-06) center/cover no-repeat;
      border-bottom: 1px solid var(--line)
    }

    .news-body {
      padding: 16px 18px 18px;
      display: flex;
      flex-direction: column;
      gap: 8px;
      flex: 1
    }

    .news-title {
      font-size: 15px;
      font-weight: 700;
      color: var(--ink);
      line-height: 1.35
    }

    .news-ex {
      font-size: 13px;
      color: var(--ink3);
      line-height: 1.5;
      flex: 1
    }

    .news-meta {
      font-size: 12px;
      color: var(--ink4);
      font-weight: 500
    }

    .news-cat {
      font-size: 11px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: .04em;
      color: var(--brand)
    }

    .news-thumb { position: relative }

    .news-thumb svg {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%
    }

    .t-gold, .t-eq, .t-btc, .t-oil, .t-fx, .t-bond { background: #FBFCFE }

    @media(max-width:820px) {
      .movers-grid { grid-template-columns: 1fr }
      .snap-grid { grid-template-columns: repeat(2, 1fr) }
      .news-grid { grid-template-columns: 1fr }
      .sent-row { grid-template-columns: 84px 1fr 96px; gap: 10px }
      .sent-name { font-size: 13px }
    }

    /* ALL ASSETS TABLE */
    .all-wrap {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 16px;
      overflow-x: auto;
      overflow-y: hidden;
      margin-bottom: 56px
    }

    .all-head {
      padding: 24px 24px 0;
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 16px
    }

    .all-head h2 {
      font-size: 20px;
      font-weight: 700
    }

    .all-head .sub {
      font-size: 14px;
      color: var(--ink3)
    }

    .filter-row {
      display: flex;
      gap: 8px;
      padding: 0 24px 16px;
      flex-wrap: wrap
    }

    .filter-btn {
      padding: 6px 16px;
      border-radius: 8px;
      font-size: 14px;
      font-weight: 600;
      cursor: pointer;
      border: 1px solid var(--line);
      background: var(--card);
      color: var(--ink2);
      transition: .15s
    }

    .filter-btn:hover {
      border-color: var(--brand);
      color: var(--brand)
    }

    .filter-btn.on {
      background: var(--brand);
      color: #fff;
      border-color: var(--brand)
    }

    .all-table {
      width: 100%;
      min-width: 2520px;
      border-collapse: collapse
    }

    .all-table thead th {
      padding: 12px 16px;
      font-size: 14px;
      font-weight: 600;
      color: var(--ink3);
      text-align: left;
      border-bottom: 1px solid var(--line);
      border-top: 1px solid var(--line);
      background: #FAFBFE;
      letter-spacing: .03em;
      text-transform: uppercase
    }

    .all-table thead th.r {
      text-align: right
    }

    .all-table tbody tr {
      border-bottom: 1px solid var(--line);
      transition: .12s;
      cursor: pointer
    }

    .all-table tbody tr:last-child {
      border-bottom: none
    }

    .all-table tbody tr:hover {
      background: var(--brand-06)
    }

    .all-table td {
      padding: 12px 16px;
      font-size: 14px;
      vertical-align: middle
    }

    .asset-cell {
      display: flex;
      align-items: center;
      gap: 11px
    }

    .asset-icon {
      width: 34px;
      height: 34px;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 13px;
      font-weight: 700;
      color: #fff;
      flex-shrink: 0;
      position: relative;
      overflow: hidden;
      background: #fff;
      border: 1px solid var(--line);
      box-shadow: 0 2px 8px rgba(0, 0, 0, .08)
    }

    .asset-icon img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block
    }

    .asset-icon.asset-icon-logo img {
      object-fit: contain;
      padding: 4px;
      box-sizing: border-box;
      background: #fff
    }

    .asset-icon .asset-fallback-label {
      display: none;
      width: 100%;
      height: 100%;
      align-items: center;
      justify-content: center;
      color: #fff;
      font-size: .62rem;
      font-weight: 700;
      letter-spacing: .01em
    }

    .asset-icon.asset-icon-logo .asset-fallback-label {
      color: #1A1F36
    }

    .asset-icon.is-fallback .asset-fallback-label {
      display: flex
    }

    .asset-icon.asset-icon-flags {
      width: 40px;
      height: 24px;
      border-radius: 0;
      overflow: visible;
      background: transparent !important;
      border: 0 !important;
      box-shadow: none !important;
      display: block
    }

    .asset-icon.asset-icon-flags img {
      width: 22px;
      height: 22px;
      border-radius: 50%;
      border: 1px solid #fff;
      box-shadow: 0 1px 3px rgba(0, 0, 0, .25);
      position: absolute;
      top: 1px;
      object-fit: cover;
      transform: none !important
    }

    .asset-icon.asset-icon-flags img.flag-left {
      left: 0
    }

    .asset-icon.asset-icon-flags img.flag-right {
      right: 0
    }

    .asset-name {
      font-weight: 600;
      font-size: 14px
    }

    .asset-code {
      font-size: 14px;
      color: var(--ink4);
      font-family: 'JetBrains Mono', monospace
    }

    .asset-cat {
      font-size: 14px;
      padding: 3px 8px;
      border-radius: 5px;
      font-weight: 600
    }

    .asset-cat.crypto {
      background: #EDE7F6;
      color: #7C4DFF
    }

    .asset-cat.forex {
      background: #E3F2FD;
      color: #1976D2
    }

    .asset-cat.stocks {
      background: #E8F5E9;
      color: #388E3C
    }

    .asset-cat.commodity {
      background: #FFF3E0;
      color: #E65100
    }

    .asset-cat.indices {
      background: #FCE4EC;
      color: #C2185B
    }

    .asset-cat.etf {
      background: #E0F7FA;
      color: #00838F
    }

    .asset-cat.bonds {
      background: #ECEFF1;
      color: #455A64
    }

    .mono {
      font-family: 'JetBrains Mono', monospace;
      font-size: 14px;
      text-align: right
    }

    .pct {
      font-size: 14px;
      font-weight: 600;
      padding: 2px 7px;
      border-radius: 5px
    }

    .pct.u {
      color: var(--g);
      background: var(--gbg)
    }

    .pct.d {
      color: var(--r);
      background: var(--rbg)
    }

    .pct.n {
      color: var(--ink3);
      background: #EDF1F7
    }

    .forecast-cell {
      white-space: nowrap
    }

    .forecast-cell .forecast-price {
      display: block;
      margin-bottom: 6px;
      line-height: 1.2
    }

    .forecast-cell .pct {
      display: inline-flex;
      align-items: center;
      justify-content: flex-end
    }

    .metric-stack {
      display: flex;
      flex-direction: column;
      align-items: flex-end;
      gap: 5px
    }

    .metric-chip {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 5px 10px;
      border-radius: 999px;
      font-size: 12px;
      font-weight: 700;
      line-height: 1.1;
      white-space: nowrap
    }

    .metric-chip.up {
      background: #DCFCE7;
      color: #15803D
    }

    .metric-chip.down {
      background: #FEE2E2;
      color: #DC2626
    }

    .metric-chip.gold {
      background: #FEF3C7;
      color: #B45309
    }

    .metric-chip.death {
      background: #FCE7F3;
      color: #BE185D
    }

    .metric-chip.bullish {
      background: #DBEAFE;
      color: #1D4ED8
    }

    .metric-chip.bearish {
      background: #FEE2E2;
      color: #DC2626
    }

    .metric-chip.low {
      background: #DCFCE7;
      color: #15803D
    }

    .metric-chip.medium {
      background: #FEF3C7;
      color: #B45309
    }

    .metric-chip.high {
      background: #FEE2E2;
      color: #DC2626
    }

    .metric-chip.neutral {
      background: #EEF2FF;
      color: #4F46E5
    }

    .metric-note {
      font-size: 12px;
      color: var(--ink4);
      font-family: 'JetBrains Mono', monospace;
      white-space: nowrap
    }

    .row-go {
      color: var(--ink4);
      font-size: 14px;
      text-align: center
    }

    .all-table tbody tr:hover .row-go {
      color: var(--brand)
    }

    .all-table tbody tr[data-href] {
      cursor: pointer
    }

    .hub-asset-link {
      color: inherit;
      text-decoration: none
    }

    .hub-asset-link:hover {
      text-decoration: underline;
      text-underline-offset: 2px
    }

    .all-table tbody tr.is-loading td,
    .all-table tbody tr.is-empty td {
      color: var(--ink3);
      text-align: center;
      font-weight: 500
    }

    .all-pagination {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      flex-wrap: wrap;
      padding: 14px 16px 18px;
      border-top: 1px solid var(--line)
    }

    .all-table-disclaimer {
      margin: 0 14px 14px;
      padding: 10px 12px;
      border: 1px solid var(--line);
      border-radius: 10px;
      background: #fff;
      color: var(--ink3);
      font-size: 14px;
      line-height: 1.55;
      white-space: nowrap;
      overflow-x: auto;
      -webkit-overflow-scrolling: touch
    }

    .all-table-disclaimer strong {
      color: var(--ink)
    }

    @media(max-width:900px){.all-table-disclaimer{white-space:normal;overflow:visible}}

	    #fh-table {
	      width: min(calc(100vw - 112px), 1900px);
	      max-width: none;
	      margin: 20px 0 56px 50%;
	      transform: translateX(-50%);
	      box-sizing: border-box
	    }

	    #fh-table,
	    #fh-table * {
	      box-sizing: border-box
	    }

	    #fh-table .template-becoin-forecast-hub-html,
	    #fh-table .bc-unified-forecast-main {
	      width: 100%
	    }

	    #fh-table .mode-switcher-section {
	      display: flex;
	      justify-content: center;
	      margin: 0 0 18px;
	      padding: 0
	    }

	    #fh-table .mode-switcher-wrap {
	      display: flex;
	      justify-content: center;
	      width: 100%
	    }

	    #fh-table .mode-switcher {
	      display: inline-flex;
	      justify-content: center;
	      align-items: center;
	      overflow: hidden;
	      background: #fff;
	      border: 1px solid var(--line);
	      border-radius: 14px;
	      padding: 3px;
	      margin: 0;
	      box-shadow: 0 2px 8px rgba(26, 31, 54, .03)
	    }

	    #fh-table .mode-switcher-inner {
	      display: inline-flex;
      overflow: hidden;
      background: #fff;
      border: 1px solid var(--line);
      border-radius: 14px;
      box-shadow: 0 2px 8px rgba(26, 31, 54, .03)
    }

    #fh-table .mode-sw-btn {
      min-width: 132px;
      height: 44px;
      border: 0;
      background: transparent;
      color: var(--ink3);
      display: inline-flex;
      align-items: center;
	      justify-content: center;
	      gap: 8px;
	      font: inherit;
	      font-size: 15px;
	      font-weight: 700;
	      line-height: 1;
	      cursor: pointer;
	      appearance: none
	    }

    #fh-table .mode-sw-btn.active {
      background: var(--brand);
      color: #fff
    }

    #fh-table .mode-sw-btn svg {
      width: 16px;
      height: 16px;
      flex: none
    }

	    #fh-table .all-wrap {
	      overflow: hidden;
	      margin-bottom: 0
	    }

	    #fh-table .filters-section {
	      max-width: none;
	      margin: 0 0 18px;
	      padding: 0
	    }

	    #fh-table .filters-row {
	      display: grid;
	      grid-template-columns: minmax(180px, .9fr) minmax(180px, .9fr) minmax(180px, .9fr) minmax(300px, 1.35fr);
	      gap: 18px;
	      align-items: end;
	      margin: 0
	    }

	    #fh-table .filter-group {
	      display: block;
	      min-width: 0
	    }

	    #fh-table .filter-group label {
	      display: block;
	      color: var(--ink);
	      font-size: 14px;
	      font-weight: 700;
	      line-height: 1.2;
	      margin: 0 0 8px
	    }

	    #fh-table .filter-group select,
	    #fh-table .filter-group input {
	      width: 100%;
	      height: 48px;
	      border: 1px solid var(--line);
	      border-radius: 12px;
	      background-color: #fff;
	      color: var(--ink2);
	      font: inherit;
	      font-size: 15px;
	      outline: none;
	      transition: border-color .15s, box-shadow .15s
	    }

	    #fh-table .filter-group select {
	      appearance: none;
	      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2359627F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
	      background-position: right 14px center;
	      background-repeat: no-repeat;
	      padding: 0 40px 0 14px
	    }

	    #fh-table .filter-group input {
	      padding: 0 16px
	    }

	    #fh-table .filter-group select:focus,
	    #fh-table .filter-group input:focus {
	      border-color: var(--brand);
	      box-shadow: 0 0 0 3px var(--brand-12)
	    }

	    #fh-table .search-wrap {
	      position: relative;
	      width: 100%;
	      max-width: none;
	      margin: 0;
	      justify-self: stretch
	    }

	    #fh-table .search-control-row {
	      display: flex;
	      align-items: center;
	      gap: 10px;
	      width: 100%
	    }

	    #fh-table .search-dd {
	      position: absolute;
	      top: calc(100% + 8px);
	      left: 0;
	      right: 0;
	      z-index: 80;
	      display: none;
	      max-height: 320px;
	      overflow-y: auto;
	      background: #fff;
	      border: 1px solid var(--line);
	      border-radius: 12px;
	      box-shadow: 0 18px 44px rgba(26, 31, 54, .16)
	    }

	    #fh-table .search-dd.open,
	    #fh-table .search-dd.bc-floating-search-menu {
	      display: block
	    }

	    #fh-table .table-section {
	      margin: 0;
	      padding: 0
	    }

	    #fh-table .table-card {
	      width: 100%;
	      max-width: none;
	      margin: 0;
	      position: relative;
	      overflow: hidden;
	      background: #fff;
	      border: 1px solid var(--line);
	      border-radius: 16px;
	      box-shadow: 0 1px 0 rgba(26, 31, 54, .02)
	    }

	    #fh-table .invest-category-bar {
	      display: flex;
	      align-items: center;
	      justify-content: space-between;
	      gap: 14px;
	      padding: 16px 18px 14px;
	      background: #fff;
	      border-bottom: 1px solid var(--line)
	    }

	    #fh-table .invest-category-pills {
	      display: flex;
	      align-items: center;
	      flex-wrap: wrap;
	      gap: 8px;
	      min-width: 0
	    }

	    #fh-table .invest-category-tail-pills:empty,
	    #fh-table .table-search-slot:empty,
	    #fh-table .search-settings-slot:empty {
	      display: none
	    }

	    #fh-table .invest-cat-pill {
	      display: inline-flex;
	      align-items: center;
	      justify-content: center;
	      min-height: 34px;
	      padding: 0 13px;
	      border: 1px solid var(--line);
	      border-radius: 999px;
	      background: #fff;
	      color: var(--ink3);
	      font-size: 14px;
	      font-weight: 700;
	      line-height: 1;
	      text-decoration: none;
	      white-space: nowrap;
	      transition: .15s
	    }

	    #fh-table .invest-cat-pill:hover {
	      border-color: var(--brand);
	      color: var(--brand)
	    }

	    #fh-table .invest-cat-pill.active {
	      background: var(--brand);
	      border-color: var(--brand);
	      color: #fff
	    }

	    #fh-table .invest-head-actions,
	    #fh-table .table-toolbar-actions,
	    #fh-table .table-scroll-controls,
	    #fh-table .page-numbers {
	      display: flex;
	      align-items: center;
	      gap: 8px
	    }

	    #fh-table .invest-head-actions {
	      margin-left: auto;
	      flex: none
	    }

	    #fh-table .invest-settings-btn,
	    #fh-table .table-scroll-control {
	      width: 38px;
	      height: 38px;
	      border: 1px solid var(--line);
	      border-radius: 12px;
	      background: #fff;
	      color: var(--brand);
	      display: inline-flex;
	      align-items: center;
	      justify-content: center;
	      cursor: pointer;
	      appearance: none
	    }

	    #fh-table .invest-settings-btn svg,
	    #fh-table .table-scroll-control svg {
	      width: 17px;
	      height: 17px;
	      flex: none
	    }

	    #fh-table .table-scroll-cues,
	    #fh-table .table-scroll-hint {
	      display: none
	    }

	    #fh-table .table-scroll-cues[data-visible="true"],
	    #fh-table .table-scroll-hint[data-visible="true"] {
	      display: flex
	    }

	    #fh-table .filter-row {
	      align-items: center;
	      gap: 10px;
      padding: 24px 24px 18px
    }

    #fh-table .filter-btn {
      min-height: 36px;
      border-radius: 999px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-size: 15px;
      line-height: 1;
      text-decoration: none
    }

    #fh-table .table-topbar {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 18px
    }

	    #fh-table .table-topbar .filter-group {
	      display: flex;
	      align-items: center;
	      gap: 10px;
      flex-wrap: wrap
    }

    #fh-table .table-search-slot {
      display: flex;
      align-items: center;
      gap: 10px;
      flex: none
    }

    #fh-table .table-search {
      width: 320px;
      max-width: 34vw;
      height: 38px;
      border: 1px solid var(--line);
      border-radius: 999px;
      padding: 0 16px;
      font: inherit;
      font-size: 15px;
      color: var(--ink2);
      outline: none;
      background: #fff
    }

    #fh-table .table-search::placeholder {
      color: #60708F
    }

    #fh-table .table-icon-btn {
      width: 38px;
      height: 38px;
      border: 1px solid var(--line);
      border-radius: 12px;
      background: #fff;
      color: var(--brand);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      cursor: pointer
    }

    #fh-table .table-icon-btn svg {
      width: 17px;
      height: 17px
    }

	    #fh-table .table-scroll-shell {
	      overflow-x: auto;
	      overflow-y: visible;
	      -webkit-overflow-scrolling: touch
	    }

	    #fh-table .asset-name-t {
	      color: var(--ink);
	      font-size: 15px;
	      font-weight: 700;
	      line-height: 1.28
	    }

	    #fh-table .asset-ticker {
	      color: var(--ink3);
	      font-family: 'JetBrains Mono', monospace;
	      font-size: 13px;
	      line-height: 1.28;
	      margin-top: 3px
	    }

	    #fh-table .asset-cat-badge {
	      display: inline-flex;
	      align-items: center;
	      justify-content: center;
	      padding: 4px 10px;
	      border-radius: 999px;
	      font-size: 12px;
	      font-weight: 800;
	      line-height: 1
	    }

	    #fh-table .asset-cat-badge.crypto { background: #EDE7F6; color: #7C4DFF }
	    #fh-table .asset-cat-badge.forex { background: #E3F2FD; color: #1976D2 }
	    #fh-table .asset-cat-badge.stocks { background: #E8F5E9; color: #388E3C }
	    #fh-table .asset-cat-badge.commodity { background: #FFF3E0; color: #E65100 }
	    #fh-table .asset-cat-badge.indices { background: #FCE4EC; color: #C2185B }
	    #fh-table .asset-cat-badge.etf { background: #E0F7FA; color: #00838F }
	    #fh-table .asset-cat-badge.bonds { background: #ECEFF1; color: #455A64 }

	    #fh-table .long-cell {
	      display: flex;
	      flex-direction: column;
	      align-items: flex-end;
	      gap: 4px;
	      white-space: nowrap
	    }

	    #fh-table .long-price {
	      color: var(--ink);
	      font-family: 'JetBrains Mono', monospace;
	      font-size: 14px;
	      line-height: 1.2
	    }

	    #fh-table .long-pct {
	      display: inline-flex;
	      align-items: center;
	      justify-content: center;
	      width: fit-content;
	      padding: 2px 7px;
	      border-radius: 6px;
	      font-size: 12px;
	      font-weight: 800;
	      line-height: 1.25
	    }

	    #fh-table .long-pct.up {
	      background: var(--gbg);
	      color: var(--g)
	    }

	    #fh-table .long-pct.down {
	      background: var(--rbg);
	      color: var(--r)
	    }

    .bc-invest-chip {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 5px 10px;
      border-radius: 999px;
      font-size: 11.52px;
      line-height: 13.5936px;
      font-weight: 800;
      white-space: nowrap
    }

    .bc-invest-stack {
      display: inline-flex;
      flex-direction: column;
      align-items: flex-end;
      gap: 6px;
      white-space: nowrap
    }

    .bc-invest-stack .bc-invest-chip {
      display: flex
    }

    .bc-invest-note {
      display: block;
      color: #64748b;
      font-size: 11.52px;
      line-height: 13.5936px;
      font-weight: 400;
      white-space: nowrap
    }

    .bc-invest-chip.bullish,
    .bc-invest-chip.gold,
    .bc-invest-chip.up,
    .bc-invest-chip.low {
      background: #dcfce7;
      color: #166534
    }

    .bc-invest-chip.bearish,
    .bc-invest-chip.death,
    .bc-invest-chip.down,
    .bc-invest-chip.high {
      background: #fee2e2;
      color: #991b1b
    }

    .bc-invest-chip.medium,
    .bc-invest-chip.neutral {
      background: #e2e8f0;
      color: #475569
    }

    #fh-table .all-table {
      min-width: 2480px
    }

    #fh-table .all-table thead th {
      font-size: 13px
    }

	    #fh-table .table-toolbar {
	      display: flex;
	      justify-content: space-between;
      align-items: center;
      gap: 12px;
      padding: 14px 16px;
	      border-top: 1px solid var(--line);
	      background: #fff
	    }

	    #fh-table .table-toolbar-actions {
	      flex-wrap: wrap;
	      justify-content: flex-end
	    }

	    #fh-table .table-page-size,
	    #fh-table .table-pager {
      display: flex;
      align-items: center;
      gap: 10px;
      color: var(--ink3);
	      font-size: 14px
	    }

	    #fh-table .table-pager {
	      flex-wrap: wrap;
	      justify-content: flex-end
	    }

    #fh-table .rows-select {
      height: 32px;
      min-width: 74px;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: #fff;
      color: var(--ink);
      padding: 0 8px;
      font-family: 'JetBrains Mono', monospace;
      font-size: 13px
    }

    #fh-table .page-btn {
      height: 32px;
      min-width: 72px;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: #fff;
      color: var(--ink);
      font-family: inherit;
      font-size: 13px;
      font-weight: 600;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      text-decoration: none
    }

    #fh-table .page-btn[aria-disabled="true"] {
      opacity: .45;
      cursor: default;
      pointer-events: none
    }

	    #fh-table .page-label {
	      color: var(--ink3);
	      font-size: 14px;
	      white-space: nowrap
	    }

	    #fh-table .page-number-btn,
	    #fh-table .page-ellipsis {
	      min-width: 32px;
	      height: 32px;
	      border-radius: 8px;
	      display: inline-flex;
	      align-items: center;
	      justify-content: center;
	      color: var(--ink3);
	      font-size: 13px;
	      font-weight: 700;
	      text-decoration: none
	    }

	    #fh-table .page-number-btn {
	      border: 1px solid var(--line);
	      background: #fff
	    }

	    #fh-table .page-number-btn.active {
	      background: var(--brand);
	      border-color: var(--brand);
	      color: #fff
	    }

    #fh-table .table-disclaimer {
      margin: 0 16px 16px;
      padding: 10px 12px;
      border: 1px solid var(--line);
      border-radius: 10px;
      background: #fff;
      color: var(--ink3);
      font-size: 15px;
      line-height: 1.55;
      white-space: normal;
      overflow: visible;
      overflow-wrap: anywhere
    }

    #fh-table .table-disclaimer strong {
      color: var(--ink)
    }

    #fh-table .prediction-badge {
      display: inline-flex;
      align-items: center;
      gap: 5px;
      padding: 5px 12px;
      border-radius: 6px;
      font-size: 14px;
      font-weight: 700
    }

    #fh-table .prediction-badge.up {
      background: var(--gbg);
      color: var(--g)
    }

    #fh-table .prediction-badge.down {
      background: var(--rbg);
      color: var(--r)
    }

	    #fh-table .stars {
	      color: var(--brand2);
	      letter-spacing: 2px;
	      white-space: nowrap
	    }

	    #fh-table .invest-settings-overlay {
	      position: fixed;
	      inset: 0;
	      z-index: 150;
	      display: none;
	      background: rgba(15, 23, 42, .45)
	    }

	    #fh-table .invest-settings-modal {
	      position: fixed;
	      top: 50%;
	      left: 50%;
	      z-index: 151;
	      display: none;
	      width: min(480px, calc(100vw - 32px));
	      max-height: min(720px, calc(100vh - 40px));
	      overflow: hidden;
	      transform: translate(-50%, -50%);
	      background: #fff;
	      border: 1px solid var(--line);
	      border-radius: 16px;
	      box-shadow: 0 24px 70px rgba(26, 31, 54, .22)
	    }

	    #fh-table .invest-settings-overlay[aria-hidden="false"],
	    #fh-table .invest-settings-overlay.open,
	    #fh-table .invest-settings-overlay.is-open,
	    #fh-table .invest-settings-modal[aria-hidden="false"],
	    #fh-table .invest-settings-modal.open,
	    #fh-table .invest-settings-modal.is-open {
	      display: block
	    }

	    #fh-table .invest-settings-head,
	    #fh-table .invest-settings-footer {
	      display: flex;
	      align-items: center;
	      justify-content: space-between;
	      gap: 12px;
	      padding: 16px 18px;
	      border-bottom: 1px solid var(--line)
	    }

	    #fh-table .invest-settings-head h4 {
	      color: var(--ink);
	      font-size: 17px;
	      font-weight: 800
	    }

	    #fh-table .invest-settings-close {
	      width: 34px;
	      height: 34px;
	      border: 1px solid var(--line);
	      border-radius: 10px;
	      background: #fff;
	      color: var(--ink3);
	      font-size: 22px;
	      line-height: 1;
	      cursor: pointer
	    }

	    #fh-table .invest-settings-body {
	      max-height: 440px;
	      overflow-y: auto;
	      padding: 12px 18px
	    }

	    #fh-table .invest-settings-body:empty {
	      display: none
	    }

	    #fh-table .invest-settings-footer {
	      justify-content: flex-end;
	      border-top: 1px solid var(--line);
	      border-bottom: 0
	    }

	    #fh-table .invest-settings-reset,
	    #fh-table .invest-settings-done {
	      min-height: 38px;
	      border-radius: 10px;
	      border: 1px solid var(--line);
	      padding: 0 14px;
	      font: inherit;
	      font-size: 14px;
	      font-weight: 700;
	      cursor: pointer
	    }

	    #fh-table .invest-settings-reset {
	      background: #fff;
	      color: var(--ink3)
	    }

	    #fh-table .invest-settings-done {
	      background: var(--brand);
	      border-color: var(--brand);
	      color: #fff
	    }

    .fh-legacy-table-section {
      display: none !important
    }

	    @media(max-width:980px) {
	      #fh-table {
	        width: calc(100vw - 32px);
	        margin-top: 8px
	      }

	      #fh-table .filters-row {
	        grid-template-columns: 1fr 1fr
	      }

	      #fh-table .invest-category-bar {
	        align-items: flex-start;
	        flex-direction: column
	      }

	      #fh-table .table-topbar {
	        align-items: flex-start;
        flex-direction: column
      }

      #fh-table .table-search-slot {
        width: 100%;
        flex-wrap: wrap
      }

      #fh-table .table-search {
        width: min(100%, 420px);
        max-width: none;
        flex: 1
      }
    }

    @media(max-width:640px) {
      #fh-table .mode-sw-btn {
        min-width: 124px;
        font-size: 13px
      }

      #fh-table .filter-row {
        padding: 18px
      }

      #fh-table .filter-btn {
        min-height: 34px;
        padding: 0 13px
      }

	      #fh-table .table-toolbar {
	        flex-direction: column;
	        align-items: stretch
	      }

	      #fh-table .filters-row {
	        grid-template-columns: 1fr
	      }
	    }

    .all-page-link {
      min-width: 36px;
      height: 36px;
      border-radius: 10px;
      border: 1px solid var(--line);
      background: var(--card);
      color: var(--ink);
      font-size: 14px;
      font-weight: 600;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0 10px;
      text-decoration: none;
      transition: .15s
    }

    .all-page-link:hover {
      border-color: var(--brand);
      color: var(--brand)
    }

    .all-page-link.on {
      border-color: var(--brand);
      background: var(--brand);
      color: #fff
    }

    .all-page-link.disabled {
      opacity: .45;
      pointer-events: none
    }

    .all-page-meta {
      font-size: 14px;
      color: var(--ink3);
      margin-left: 2px
    }

    /* HOW IT WORKS */
    .how {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 16px;
      margin-bottom: 56px
    }

    .how-card {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 14px;
      padding: 24px 20px;
      text-align: center
    }

    .how-num {
      width: 36px;
      height: 36px;
      border-radius: 50%;
      background: var(--brand);
      color: #fff;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-size: 15px;
      font-weight: 700;
      margin-bottom: 10px
    }

    .how-card h3 {
      font-size: 15px;
      font-weight: 700;
      margin-bottom: 4px
    }

    .how-card p {
      font-size: 14px;
      color: var(--ink3);
      line-height: 1.5
    }

    /* AEO BLOCK */
    .aeo {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 16px;
      padding: 32px 28px;
      margin-bottom: 56px
    }

    .aeo h2 {
      font-size: 20px;
      font-weight: 700;
      margin-bottom: 24px
    }

    .aeo-item {
      margin-bottom: 20px
    }

    .aeo-item:last-child {
      margin-bottom: 0
    }

    .aeo-item h3 {
      font-size: 15px;
      font-weight: 600;
      color: var(--brand);
      margin-bottom: 6px
    }

    .aeo-item p {
      font-size: 14px;
      color: var(--ink2);
      line-height: 1.6
    }

    /* FAQ */
    .faq-wrap {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 14px;
      padding: 24px 28px;
      margin-bottom: 56px
    }

    .faq-wrap h3 {
      font-size: 17px;
      font-weight: 700;
      margin-bottom: 16px
    }

    .faq-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 0 32px
    }

    .fi {
      border-bottom: 1px solid var(--line)
    }

    .fq {
      padding: 11px 0;
      font-size: 14px;
      font-weight: 600;
      cursor: pointer;
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 10px;
      transition: .12s
    }

    .fq:hover {
      color: var(--brand)
    }

    .fq::after {
      content: '+';
      font-size: 16px;
      color: var(--brand);
      font-weight: 400;
      flex-shrink: 0;
      width: 20px;
      text-align: center
    }

    .fq.open::after {
      content: '−'
    }

    .fa {
      padding: 0 0 11px;
      font-size: 14px;
      line-height: 1.55;
      color: var(--ink3);
      display: none
    }

    .fa.open {
      display: block
    }

    /* CTA */
    .cta {
      background: linear-gradient(135deg, var(--brand), #5B6BE6);
      border-radius: 16px;
      padding: 44px;
      text-align: center;
      position: relative;
      overflow: hidden
    }

    .cta::before {
      content: '';
      position: absolute;
      top: -40%;
      right: -10%;
      width: 300px;
      height: 300px;
      border-radius: 50%;
      background: rgba(255, 255, 255, 0.06)
    }

    .cta::after {
      content: '';
      position: absolute;
      bottom: -30%;
      left: -5%;
      width: 200px;
      height: 200px;
      border-radius: 50%;
      background: rgba(255, 255, 255, 0.04)
    }

    .cta h2 {
      font-size: 24px;
      font-weight: 700;
      color: #fff;
      margin-bottom: 6px;
      position: relative
    }

    .cta p {
      font-size: 15px;
      color: rgba(255, 255, 255, 0.86);
      margin-bottom: 22px;
      position: relative
    }

    .cta a {
      display: inline-block;
      background: #fff;
      color: var(--brand);
      padding: 13px 36px;
      border-radius: 10px;
      font-size: 15px;
      font-weight: 700;
      transition: .2s;
      position: relative
    }

    .cta a:hover {
      transform: translateY(-1px);
      box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15)
    }

    /* FOOTER */
    footer {
      background: #4F5BD5;
      color: rgba(255, 255, 255, 0.7);
      margin-top: 0
    }

    .ft-inner {
      max-width: 1200px;
      margin: 0 auto;
      padding: 40px 24px 28px
    }

    .ft-disc {
      font-size: 14px;
      line-height: 1.65;
      color: rgba(255, 255, 255, 0.62);
      max-width: 900px
    }

    .ft-sep {
      height: 1px;
      background: rgba(255, 255, 255, 0.1);
      margin: 24px 0
    }

    .ft-links {
      display: flex;
      flex-wrap: wrap;
      gap: 8px 24px;
      margin-bottom: 14px
    }

    .ft-links a {
      font-size: 14px;
      font-weight: 500;
      color: rgba(255, 255, 255, 0.78);
      transition: .15s
    }

    .ft-links a:hover {
      color: #fff
    }

    .ft-bottom {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-top: 20px;
      padding-top: 18px;
      border-top: 1px solid rgba(255, 255, 255, 0.1)
    }

    .ft-copy {
      font-size: 14px;
      color: rgba(255, 255, 255, 0.52)
    }

    .ft-social {
      display: flex;
      align-items: center;
      gap: 14px
    }

    .ft-social span {
      font-size: 14px;
      color: rgba(255, 255, 255, 0.58);
      font-weight: 500
    }

    .ft-social a {
      width: 32px;
      height: 32px;
      border-radius: 8px;
      background: rgba(255, 255, 255, 0.08);
      display: flex;
      align-items: center;
      justify-content: center;
      color: rgba(255, 255, 255, 0.5);
      transition: .15s
    }

    .ft-social a:hover {
      background: rgba(255, 255, 255, 0.15);
      color: #fff
    }

    /* PAYWALL */
    .pw-toggle {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 10px;
      padding: 6px 8px;
      display: flex;
      align-items: center;
      gap: 6px;
      position: fixed;
      bottom: 20px;
      right: 20px;
      z-index: 999;
      box-shadow: 0 4px 20px rgba(0, 0, 0, 0.12);
      font-size: 12px;
      font-weight: 600
    }

    .pw-toggle span {
      color: var(--ink3);
      padding: 0 4px
    }

    .pw-btn {
      padding: 6px 14px;
      border-radius: 7px;
      cursor: pointer;
      border: none;
      font-family: inherit;
      font-size: 12px;
      font-weight: 600;
      transition: .15s
    }

    .pw-btn.free {
      background: var(--rbg);
      color: var(--r)
    }

    .pw-btn.pro {
      background: var(--gbg);
      color: var(--g)
    }

    .pw-btn.on {
      box-shadow: 0 0 0 2px var(--brand)
    }

    [data-plan="free"] .pw-blur {
      filter: blur(6px);
      -webkit-user-select: none;
      user-select: none;
      pointer-events: none
    }

    /* TICKER (home-page style) */
    .ticker-wrap {
      position: relative;
      z-index: 95;
      width: 100%;
      max-width: 100%;
      background: var(--card);
      border-bottom: 1px solid var(--line);
      overflow: hidden;
      contain: paint
    }

    .ticker-inner {
      display: flex;
      animation: tickerScroll 240s linear infinite;
      width: max-content
    }

    @keyframes tickerScroll {
      0% {
        transform: translateX(0)
      }

      100% {
        transform: translateX(-50%)
      }
    }

    .ticker-item {
      display: flex;
      align-items: center;
      gap: 8px;
      padding: 13px 28px;
      white-space: nowrap;
      border-right: 1px solid var(--line)
    }

    .ticker-item .t-name {
      font-family: 'JetBrains Mono', monospace;
      font-size: .82rem;
      font-weight: 700;
      color: var(--ink)
    }

    .ticker-item .t-price {
      font-family: 'JetBrains Mono', monospace;
      font-size: .82rem;
      color: var(--ink3)
    }

    .ticker-item .t-chg {
      font-family: 'JetBrains Mono', monospace;
      font-size: .78rem;
      font-weight: 600;
      padding: 2px 8px;
      border-radius: 4px
    }

    .t-up {
      color: var(--g);
      background: var(--gbg)
    }

    .t-dn {
      color: var(--r);
      background: var(--rbg)
    }

    /* SEARCH DROPDOWN */
    .search-dd {
      position: absolute;
      top: calc(100% + 4px);
      left: 0;
      right: 0;
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 12px;
      box-shadow: 0 8px 24px rgba(0, 0, 0, .1);
      max-height: 280px;
      overflow-y: auto;
      z-index: 50;
      display: none
    }

    .search-dd.open {
      display: block
    }

    body > .search-dd.bc-floating-search-menu {
      position: fixed !important;
      right: auto !important;
      z-index: 2147483000 !important;
      max-height: min(360px, calc(100vh - 24px));
      overscroll-behavior: contain
    }

    .search-dd .sd-group {
      padding: 6px 0
    }

    .search-dd .sd-item {
      display: flex;
      align-items: center;
      gap: 10px;
      width: 100%;
      border: 0;
      background: transparent;
      text-align: left;
      padding: 8px 14px;
      font-size: .88rem;
      color: var(--ink);
      cursor: pointer;
      transition: .1s;
      font-family: inherit
    }

    .search-dd .sd-item:hover {
      background: var(--brand-06)
    }

    .search-dd .sd-ticker {
      font-family: 'JetBrains Mono', monospace;
      font-size: .8rem;
      font-weight: 700;
      min-width: 56px
    }

    .search-dd .sd-sym {
      width: 28px;
      height: 28px;
      border-radius: 6px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: .72rem;
      font-weight: 700;
      color: #fff;
      flex-shrink: 0;
      position: relative;
      overflow: hidden;
      background: #fff;
      border: 1px solid var(--line)
    }

    .search-dd .sd-sym img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block
    }

    .search-dd .sd-sym .asset-fallback-label {
      display: none;
      width: 100%;
      height: 100%;
      align-items: center;
      justify-content: center;
      color: #fff;
      font-size: .62rem;
      font-weight: 700;
      letter-spacing: .01em
    }

    .search-dd .sd-sym.is-fallback .asset-fallback-label {
      display: flex
    }

    .search-dd .sd-sym.sd-sym-flags {
      width: 30px;
      height: 20px;
      border-radius: 0;
      overflow: visible;
      background: transparent !important;
      border: 0 !important;
      box-shadow: none !important;
      display: block
    }

    .search-dd .sd-sym.sd-sym-flags img {
      width: 18px;
      height: 18px;
      border-radius: 50%;
      border: 1px solid #fff;
      box-shadow: 0 1px 3px rgba(0, 0, 0, .22);
      position: absolute;
      top: 1px;
      object-fit: cover;
      transform: none !important
    }

    .search-dd .sd-sym.sd-sym-flags img.flag-left {
      left: 0
    }

    .search-dd .sd-sym.sd-sym-flags img.flag-right {
      right: 0
    }

    .search-dd .sd-name {
      color: var(--ink3);
      font-size: .82rem
    }

    .search-dd .sd-none {
      padding: 16px 14px;
      text-align: center;
      font-size: .85rem;
      color: var(--ink3)
    }

    /* AEO REDESIGN */
    .seo-blocks {
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      gap: 20px;
      margin-bottom: 56px
    }

    .seo-card {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 16px;
      padding: 28px 24px;
      position: relative;
      overflow: hidden
    }

    .seo-card::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 4px;
      border-radius: 16px 16px 0 0
    }

    .seo-card:nth-child(1)::before {
      background: linear-gradient(90deg, var(--brand), #5B6BE6)
    }

    .seo-card:nth-child(2)::before {
      background: linear-gradient(90deg, #16A34A, #22C55E)
    }

    .seo-card:nth-child(3)::before {
      background: linear-gradient(90deg, #F59E0B, #EAB308)
    }

    .seo-icon {
      width: 44px;
      height: 44px;
      border-radius: 12px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 20px;
      margin-bottom: 14px
    }

    .seo-card:nth-child(1) .seo-icon {
      background: var(--brand-12)
    }

    .seo-card:nth-child(2) .seo-icon {
      background: var(--gbg)
    }

    .seo-card:nth-child(3) .seo-icon {
      background: var(--ambg)
    }

    .seo-card h3 {
      font-size: 16px;
      font-weight: 700;
      margin-bottom: 10px;
      line-height: 1.3
    }

    .seo-card p {
      font-size: 13.5px;
      color: var(--ink2);
      line-height: 1.65
    }

    [data-plan="free"] .pw-cta {
      display: flex !important
    }

    [data-plan="pro"] .pw-blur {
      filter: none;
      -webkit-user-select: auto;
      user-select: auto;
      pointer-events: auto
    }

    [data-plan="pro"] .pw-cta {
      display: none !important
    }

    .pw-cta {
      display: none;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      padding: 36px 24px;
      background: linear-gradient(180deg, rgba(245, 246, 251, 0) 0%, var(--bg) 20%);
      margin: -80px 0 0;
      position: relative;
      z-index: 20;
      text-align: center;
      gap: 12px;
      border-radius: 0 0 14px 14px
    }

    .pw-cta-inner {
      background: var(--card);
      border: 2px dashed var(--brand-12);
      border-radius: 14px;
      padding: 32px 24px;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 12px;
      max-width: 500px;
      width: 100%
    }

    .pw-cta-icon {
      width: 48px;
      height: 48px;
      border-radius: 12px;
      background: var(--brand-12);
      display: flex;
      align-items: center;
      justify-content: center
    }

    .pw-cta-icon svg {
      width: 24px;
      height: 24px;
      color: var(--brand)
    }

    .pw-cta h3 {
      font-size: 17px;
      font-weight: 700;
      margin: 0
    }

    .pw-cta h3 em {
      color: var(--brand);
      font-style: normal
    }

    .pw-cta p {
      font-size: 13px;
      color: var(--ink3);
      max-width: 420px;
      margin: 0;
      line-height: 1.55;
      white-space: nowrap;
      overflow-x: auto;
      -webkit-overflow-scrolling: touch
    }

    .pw-cta-btn {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 13px 36px;
      background: var(--brand);
      color: #fff;
      border-radius: 10px;
      font-size: 14px;
      font-weight: 700;
      transition: .2s
    }

    .pw-cta-btn:hover {
      background: #2D3BB5;
      transform: translateY(-1px);
      box-shadow: 0 4px 16px rgba(79, 91, 213, 0.3)
    }

    .pw-cta-sub {
      font-size: 11px;
      color: var(--ink4)
    }

    /* DARK */
    [data-theme="dark"] {
      --ink: #E7E6F5;
      --ink2: #C5CBDD;
      --ink3: #AAB2C9;
      --ink4: #8A93AF;
      --line: #2D3348;
      --bg: #13162B;
      --card: #1A1F36;
      --gbg: rgba(22, 163, 74, 0.15);
      --rbg: rgba(220, 38, 38, 0.15);
      --ambg: rgba(245, 158, 11, 0.15)
    }

    [data-theme="dark"] thead th {
      background: #1E2340
    }

    [data-theme="dark"] .cat-tag {
      background: #2D3348
    }

    [data-theme="dark"] .filter-btn {
      background: var(--card);
      border-color: var(--line);
      color: var(--ink3)
    }

    [data-theme="dark"] .pw-cta {
      background: linear-gradient(180deg, rgba(19, 22, 43, 0) 0%, var(--bg) 20%)
    }

    [data-theme="dark"] .marquee-label {
      background: linear-gradient(90deg, var(--card) 70%, transparent)
    }

    [data-theme="dark"] .hero h1 span {
      -webkit-text-fill-color: unset;
      background: none;
      color: #7B8CFF
    }

    /* MOBILE */
    @media(max-width:768px) {
      nav {
        padding: 0 16px
      }

      .nv {
        display: none;
        position: absolute;
        top: 60px;
        left: 0;
        right: 0;
        background: linear-gradient(135deg, #4F5BD5, #5B6BE6);
        flex-direction: column;
        padding: 16px;
        gap: 4px;
        box-shadow: 0 8px 32px rgba(79, 91, 213, 0.3)
      }

      .nv.open {
        display: flex
      }

      .nv>a,
      .dd-toggle {
        font-size: 14px;
        padding: 10px 0
      }

      .ham {
        display: flex
      }

      .dd-menu {
        position: static;
        transform: none;
        box-shadow: none;
        border: none;
        background: rgba(255, 255, 255, 0.1);
        border-radius: 8px;
        margin-top: 4px
      }

      .dd-menu::before {
        display: none
      }

      .dd-menu a {
        color: rgba(255, 255, 255, 0.8)
      }

      .dd-menu a:hover {
        background: rgba(255, 255, 255, 0.1);
        color: #fff
      }

      main {
        padding: 24px 16px 40px
      }

      .hero {
        padding: 28px 16px 24px;
        border-radius: 18px;
        margin-bottom: 32px
      }

      .hero h1 {
        font-size: 27px
      }

      .hero p {
        font-size: 15px
      }

      .hero-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px
      }

      .hstat {
        padding: 13px 14px;
        gap: 10px
      }

      .hstat-ic {
        width: 34px;
        height: 34px;
        border-radius: 9px
      }

      .hstat-ic svg {
        width: 18px;
        height: 18px
      }

      .hstat-val {
        font-size: 20px
      }

      .trust {
        gap: 12px
      }

      .trust-item {
        font-size: 14px
      }

      .stats {
        gap: 20px
      }

      .stat-val {
        font-size: 22px
      }

      .cats {
        grid-template-columns: 1fr
      }

      .cats .cat-card {
        grid-column: span 1 !important
      }

      .cats .cat-card[style] {
        grid-column: span 1 !important
      }

      .prev-grid {
        grid-template-columns: repeat(3, 1fr)
      }

      .all-wrap {
        overflow-x: auto
      }

      .all-table {
        min-width: 900px
      }

      .how {
        grid-template-columns: 1fr
      }

      .seo-blocks {
        grid-template-columns: 1fr
      }

      .filter-row {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px;
        overflow: visible
      }

      .filter-btn {
        text-align: center
      }

      .all-head {
        padding: 20px 16px 0
      }

      .all-head h2 {
        font-size: 18px
      }

      .faq-grid {
        grid-template-columns: 1fr
      }

      .aeo {
        padding: 24px 20px
      }

      .marquee-label {
        width: 70px;
        font-size: 10px
      }

      .marquee-track {
        padding-left: 80px
      }
    }

    /* forecast-hub-staging-mobile-parity-v751 */
    .template-becoin-forecast-hub-html > main,
    body > main {
      display: flex !important;
      flex-direction: column !important;
      width: 100% !important;
      max-width: 100% !important;
      overflow-x: hidden !important;
    }

    .template-becoin-forecast-hub-html > main > .hero.hv10,
    body > main > .hero.hv10 { order: -30 !important; }

    .template-becoin-forecast-hub-html > main > .bc-unified-forecast-main,
    body > main > .bc-unified-forecast-main { order: -20 !important; }

    .template-becoin-forecast-hub-html > main > .ins-wrap[aria-labelledby="movers-heading"],
    body > main > .ins-wrap[aria-labelledby="movers-heading"] { order: 3 !important; }

    .template-becoin-forecast-hub-html > main > .news-wrap,
    body > main > .news-wrap { order: 4 !important; }

    .template-becoin-forecast-hub-html > main > .outlook-wrap,
    body > main > .outlook-wrap { order: 5 !important; }

    .template-becoin-forecast-hub-html > main > .fh-market-links-intro,
    body > main > .fh-market-links-intro,
    .template-becoin-forecast-hub-html > main > .cats,
    body > main > .cats { order: 6 !important; }

    .template-becoin-forecast-hub-html > main > .faq-wrap,
    body > main > .faq-wrap { order: 7 !important; }

    .template-becoin-forecast-hub-html > main > .cta,
    body > main > .cta { order: 8 !important; }

    .template-becoin-forecast-hub-html .bc-unified-forecast-main,
    .template-becoin-forecast-hub-html .mode-switcher-section,
    .template-becoin-forecast-hub-html .filters-section,
    .template-becoin-forecast-hub-html .table-section,
    .template-becoin-forecast-hub-html .table-card,
    .template-becoin-forecast-hub-html .ins-wrap,
    .template-becoin-forecast-hub-html .news-wrap,
    .template-becoin-forecast-hub-html .outlook-wrap {
      box-sizing: border-box !important;
      max-width: 100% !important;
    }

    .template-becoin-forecast-hub-html .table-card,
    .template-becoin-forecast-hub-html .signals-table,
    .template-becoin-forecast-hub-html .invest-category-bar,
    .template-becoin-forecast-hub-html .movers-grid,
    .template-becoin-forecast-hub-html .news-grid,
    .template-becoin-forecast-hub-html .outlook-tiles,
    .template-becoin-forecast-hub-html .outlook-grid {
      transition: none !important;
    }

    @media (max-width: 900px) {
      .template-becoin-forecast-hub-html nav .ham#hamBtn,
      body > nav .ham#hamBtn {
        display: none !important;
      }
    }

    @media (max-width: 700px) {
      .template-becoin-forecast-hub-html > main,
      body > main {
        padding-left: 12px !important;
        padding-right: 12px !important;
      }

      .template-becoin-forecast-hub-html .hero.hv10,
      body .hero.hv10 {
        width: 100% !important;
        margin: 22px auto 28px !important;
        padding: 28px 18px 26px !important;
      }

      .template-becoin-forecast-hub-html .hero.hv10 .hv-rev,
      .template-becoin-forecast-hub-html .hero.hv10 .hv-quotes,
      body .hero.hv10 .hv-rev,
      body .hero.hv10 .hv-quotes {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 20px !important;
        text-align: left !important;
      }

      .template-becoin-forecast-hub-html .hero.hv10 .hv-q,
      body .hero.hv10 .hv-q {
        display: grid !important;
        grid-template-columns: 70px minmax(0, 1fr) !important;
        align-items: center !important;
        max-width: 100% !important;
      }

      .template-becoin-forecast-hub-html .hero.hv10 .hv-stats,
      body .hero.hv10 .hv-stats,
      .template-becoin-forecast-hub-html .stats,
      body .stats {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 14px 16px !important;
        width: 100% !important;
      }

      .template-becoin-forecast-hub-html .bc-unified-forecast-main,
      body .bc-unified-forecast-main {
        width: 100% !important;
        margin: 0 auto !important;
        padding: 0 !important;
      }

      .template-becoin-forecast-hub-html .mode-switcher-section,
      body .mode-switcher-section {
        width: 100% !important;
        margin: 0 auto 18px !important;
        padding: 0 !important;
      }

      .template-becoin-forecast-hub-html .mode-switcher-wrap,
      body .mode-switcher-wrap,
      .template-becoin-forecast-hub-html .mode-switcher,
      body .mode-switcher {
        width: 100% !important;
        max-width: 100% !important;
      }

      .template-becoin-forecast-hub-html .table-section,
      body .table-section {
        width: 100% !important;
        margin: 0 auto 30px !important;
        padding: 0 !important;
      }

      .template-becoin-forecast-hub-html .table-card,
      body .table-card {
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
        border-radius: 16px !important;
      }

      .template-becoin-forecast-hub-html .invest-category-bar,
      body .invest-category-bar {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 12px !important;
        padding: 16px 14px !important;
      }

      .template-becoin-forecast-hub-html .invest-category-pills,
      body .invest-category-pills {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        gap: 8px !important;
        max-width: 100% !important;
        overflow-x: auto !important;
        padding-bottom: 4px !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: none !important;
      }

      .template-becoin-forecast-hub-html .invest-category-pills::-webkit-scrollbar,
      body .invest-category-pills::-webkit-scrollbar {
        display: none !important;
      }

      .template-becoin-forecast-hub-html .invest-cat-pill,
      body .invest-cat-pill {
        flex: 0 0 auto !important;
        min-height: 42px !important;
        white-space: nowrap !important;
      }

      .template-becoin-forecast-hub-html .invest-head-actions,
      body .invest-head-actions {
        display: grid !important;
        grid-template-columns: 1fr auto auto !important;
        align-items: center !important;
        gap: 10px !important;
        width: 100% !important;
      }

      .template-becoin-forecast-hub-html .invest-search-wrap,
      .template-becoin-forecast-hub-html .search-wrap,
      body .invest-search-wrap,
      body .search-wrap {
        min-width: 0 !important;
        width: 100% !important;
      }

      .template-becoin-forecast-hub-html .table-scroll-shell,
      body .table-scroll-shell {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch !important;
      }

      .template-becoin-forecast-hub-html .signals-table,
      body .signals-table {
        width: max-content !important;
        min-width: 1120px !important;
        table-layout: fixed !important;
      }

      .template-becoin-forecast-hub-html .signals-table th,
      .template-becoin-forecast-hub-html .signals-table td,
      body .signals-table th,
      body .signals-table td {
        width: 145px !important;
        min-width: 145px !important;
        white-space: nowrap !important;
      }

      .template-becoin-forecast-hub-html .signals-table th:first-child,
      .template-becoin-forecast-hub-html .signals-table td:first-child,
      body .signals-table th:first-child,
      body .signals-table td:first-child {
        width: 220px !important;
        min-width: 220px !important;
      }

      .template-becoin-forecast-hub-html .signals-table [data-col="priceYield"],
      body .signals-table [data-col="priceYield"] {
        width: 150px !important;
        min-width: 150px !important;
      }

      .template-becoin-forecast-hub-html .movers-grid,
      body .movers-grid,
      .template-becoin-forecast-hub-html .news-grid,
      body .news-grid,
      .template-becoin-forecast-hub-html .outlook-grid,
      body .outlook-grid {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 14px !important;
      }

      .template-becoin-forecast-hub-html .movers-col,
      .template-becoin-forecast-hub-html .news-card,
      .template-becoin-forecast-hub-html .ob-card,
      .template-becoin-forecast-hub-html .ob-card-placeholder,
      body .movers-col,
      body .news-card,
      body .ob-card,
      body .ob-card-placeholder {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
      }

      .template-becoin-forecast-hub-html .outlook-tiles,
      body .outlook-tiles {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 10px !important;
      }

      .template-becoin-forecast-hub-html .ob-tile,
      body .ob-tile {
        width: 100% !important;
        min-width: 0 !important;
      }

      .template-becoin-forecast-hub-html .ins-head,
      body .ins-head,
      .template-becoin-forecast-hub-html .outlook-head,
      body .outlook-head {
        align-items: stretch !important;
      }

      .template-becoin-forecast-hub-html .ins-toggle,
      .template-becoin-forecast-hub-html .outlook-toggle,
      body .ins-toggle,
      body .outlook-toggle {
        width: 100% !important;
        overflow-x: auto !important;
      }
    }
  